Коммутатор телекоммуникационных систем, содержащий программируемые сетевые протоколы, способ функционирования этого коммутатора и способ разработки программируемых сетевых протоколов

Реферат

 

Устройство относится к телекоммуникационным и в особенности к программируемым коммутаторам телекоммуникационных систем и управляемым внешним компьютерам, поддерживающим различные телекоммуникационные приложения. Технический результат - обеспечение динамического изменения протокола сигнализации, возможность легкой разработки и внедрения индивидуальных протоколов сигнализации для приложений. Сущность изобретения заключается в том, что программируемый коммутатор телекоммуникационных систем создает среду для разработки протоколов передачи сигналов, позволяющую пользователю обрабатывать отдельный автомат с конечным числом состояний для каждого порта. Могут быть разработаны протоколы для различных телекоммуникационных приложений и различных уровней программного обеспечения. 3 с. и 18 з.п. ф-лы, 10 ил.

Настоящее изобретение относится главным образом к телекоммуникациям и в особенности к программируемым коммутаторам телекоммуникационных систем и управляемым внешним компьютерам, поддерживающим различные телекоммуникационные приложения.

Уровень техники Программируемые коммутаторы телекоммуникационных систем используются в широком ряду приложений, например при передаче голосовых сообщений, в службе "телемаркет" и т.п. Программируемый коммутатор обычно работает под управлением хост-устройства, в качестве которого обычно используется компьютер с работающей программой телекоммуникационного приложения. Пользователь программируемого коммутатора может либо приобрести программу-приложение, совместимую с аппаратной частью хост-устройства и коммутатора, либо может создать свою собственную программу.

В большинстве приложений программируемый коммутатор соединен с телефонной сетью общего назначения с помощью одной или большего количества аналоговых шин или участков для передачи цифровых данных (например, участок Т1 линии связи), которые оканчиваются у коммутатора. Коммутатором могут также оканчиваться одна или большее количество "линий", соединенных с устройствами, такими как телефонные аппараты. Передача данных с помощью любого из указанных средств, таких как шина, участок цифровых данных или линия, выполняется в соответствии с назначенным протоколом сигнализации.

В мире используется определенное количество "стандартных" протоколов сигнализации. Некоторые протоколы, широко используемые в настоящее время, такие как Е& М winkstart, loopstart, groundstart и международный протокол принудительной сигнализации R2, использующий двухтоновую мультичастотную маршрутизацию (DTMF-Dual Tone Multi-frequency Forwarding) MFR1 или адресную сигнализацию MFR2.

Из патента США N 4527012, 1991 г., известны программируемый коммутатор телекоммуникационной системы и способ функционирования этого коммутатора, содержащего управляемые средства коммутации и хост-устройство. В этом коммутаторе, который является наиболее близким аналогом коммутатора по настоящему изобретению, как и в других обычных программируемых коммутаторах, выбор используемого протокола сигнализации в соответствии с типом шины, участка цифровых данных или линии делается главным образом до того, как оборудование поставляется заказчику. То есть, изготовитель коммутатора задает его конфигурацию, которая может содержать аспекты аппаратной части или программы, помещенной в постоянное запоминающее устройство (ПЗУ), или и того и другого обычно таким образом, что указанная конфигурация не может быть легко или быстро изменена (т.е. через микропрограммное обеспечение, записанное в программируемое ПЗУ). В установленной изготовителем конфигурации для каждой шины, участка цифровых данных или линии назначаются определенные протоколы сигнализации.

Однако при работе с такой обычной конфигурацией возникают несколько проблем. Во-первых, имеет место недостаточная гибкость для пользователя при конфигурировании коммутатора для работы с определенными приложениями. Это конфигурирование особенно проблематично, когда возникает необходимость настройки, пусть даже и не часто, определенных протоколов после первоначальной установки коммутатора.

Другая проблема, связанная с работой обычных программируемых коммутаторов, относится к невозможности динамического изменения протокола сигнализации, определенного для конкретной шины, участка цифровых данных или линии. Эта проблема может достаточно часто возникать в Европе, где в различных странах используются различные протоколы принудительной сигнализации R2, или в любой стране, где международные вызовы проходят через промежуточный узел. Нежелательный результат состоит в том, что коммутатор, вероятно, будет не в состоянии обработать поступивший вызов должным образом.

Другой серьезный недостаток обычных программируемых коммутаторов заключается в том, что они не предлагают пользователю никаких возможностей для легкой разработки и внедрения индивидуализированных протоколов сигнализации для приложений. Индивидуализированные протоколы сигнализации могут быть желательны и даже необходимы в приложениях, где коммутатор соединен между телефонной сетью общего назначения и другими устройствами (например, в системе передачи голосовых сообщений). Поскольку такие устройства могут выполнять специальные функции и они не предназначены для соединения непосредственно с телефонной сетью общего назначения, они обычно не работают со стандартными протоколами сигнализации. Таким образом, существует потребность для пользователя иметь возможность управления программируемым коммутатором таким образом, чтобы сохранялась должная связь как с телефонными сетями общего назначения, так и с другими устройствами, соединенными с коммутатором.

Еще один недостаток обычных программируемых коммутаторов состоит в том, что они требуют чрезмерно частого вмешательства хост-устройства для обеспечения связи при вызове. Например, в обычном коммутаторе вмешательство хост-устройства (т. е. обмен сообщениями между коммутатором и хост-устройством) обычно требуется как при передаче, так и при приеме цифровых сигналов. Это необходимо, так как от хост-устройства к коммутатору должна направляться инструкция о необходимости привлечения соответствующих имеющихся ресурсов для выполнения текущей задачи. В этом примере хост-устройство может направлять инструкцию коммутатору о соединении имеющегося тонового генератора с конкретным каналом для передачи цифровых данных или о соединении приемника тоновых сигналов для приема цифровых данных. В этом контексте в приложениях, где коммутатор обрабатывает от сотен до десятков тысяч вызовов в час, количество сообщений, которое должно проходить между хост-устройством и коммутатором, становится достаточно большим, что часто приводит в результате к снижению производительности в работе хост-устройства и коммутатора.

Известны также различные способы разработки одного или большего количества протоколов коммуникации, например, из патентов США N 4980906, 1990 г., и N 5007080, 1991 г. Однако эти известные способы разработки либо непригодны для разработки протоколов, используемых в многофункциональных телекоммуникационных системах, либо не обеспечивают возможности легкой разработки и внедрения индивидуализированных протоколов сигнализации самим пользователем системы.

Наиболее близкий способ разработки протоколов в распределенных системах передачи данных описан в европейском патенте ЕР 0555997. Однако этот способ предназначен для создания протоколов, применяемых в устройствах передачи данных, которые не являются коммутаторами телекоммуникационных систем и не выполняют функции обработки вызовов, включая соединение и разъединение линий между различными каналами из их множества. Кроме того, протоколы передачи данных между двумя устройствами, разработанные согласно известному способу, не определяют внутренние операции коммутатора и не управляют ими для определения протокола сигнализации для каждого канала коммутатора системы телекоммуникаций для выполнения функций обработки вызовов.

Сущность изобретения Основная задача, на решение которой направлено настоящее изобретение, заключается в предоставлении пользователю программируемого коммутатора системы телекоммуникаций возможности определять и назначать индивидуально для каждого порта желаемый протокол сигнализации, как "стандартный", так и специальный, для обработки входящих и выходящих вызовов. При этом должна быть обеспечена возможность резидентно хранить в памяти коммутатора одновременно множество протоколов, и назначение протокола данного порта может быть динамически изменено в режиме реального времени.

Вторая задача, решаемая настоящим изобретением, состоит в создании среды для разработки протоколов, позволяющей пользователю создавать отдельное автоматическое устройство с конечным числом состояний (конечный автомат) для каждого порта, обслуживаемого коммутатором. Каждый конечный автомат может быть независимо определен серией элементарных операций, так называемых элементарных функций, в примитивы, которые в свою очередь сочетаются с состояниями и событиями для образования желаемого конечного автомата. Такие конечные автоматы могут содержать состояния ожидания, предпочтительно используемые для снижения степени участия хост-устройства в обработке вызовов. Состояния ожидания могут представлять программируемые периоды времени, обеспечивающие возможность наступления ожидаемых действий или событий, до того как коммутатор выполнит следующую операцию.

В дополнение, программируемый коммутатор в соответствии с настоящим изобретением должен быть пригоден служить инструментом для разработки телекоммуникационных приложений, таких как служба персональных коммуникаций (PCS), служба "800/900", отправка/прием голосовых сообщений, служба "телемаркет", а также для других функций. Настоящее изобретение может быть также использовано для контроля и текущего управления широким спектром услуг связи, предоставляемых программируемым коммутатором, включая работу в режиме конференции, воспроизведение записанных голосовых объявлений, тоновое преобразование сигнала, прием тонового сигнала, анализ прохождения сигнала вызова, распознавание по голосу, сжатие голосовых сообщений и кодирование/декодирование факсимильных сообщений.

Для решения перечисленных задач предлагается программируемый коммутатор системы телекоммуникаций, включающий хост-устройство и управляемые средства коммутации, которые выполнены с возможностью динамического соединения и разъединения линий связи между различными каналами или портами в качестве реакции на одно или большее количество сообщений, генерируемых хост-устройством. Средства коммутации включают средство для чередования интервалов времени для коммутации множества интервалов времени, соответствующих указанным каналам или портам, и средства для обработки указанных сообщений, а также одно или большее количество средств, соединенных, с возможностью коммуникации, с указанными средствами коммутации для окончания аналоговых или цифровых линий или магистралей. По меньшей мере некоторые из указанных линий или магистралей представляют некоторые из указанных каналов или портов, а средства коммутации содержат также средства для размещения в памяти коммутатора или хост-устройства одного или большего количества протоколов, причем каждый из указанных протоколов предназначен для обработки сигналов в ответ на одно или большее количество событий, средства для обнаружения наступления одного или большего количества заранее определенных событий и средства, реагирующие в зависимости от указанных средств обнаружения для динамического выбора альтернативных протоколов из числа указанных размещенных в памяти протоколов, причем указанный выбранный протокол в состоянии обработать указанное наступающее событие.

Событием для коммутатора по настоящему изобретению являются входящие или выходящие вызовы, а указанные средства для обнаружения выявляют входящие вызовы или начало выходящих вызовов на любом из указанных каналов или портов и определяют, в состоянии ли протоколы, назначенные каналам или портам, в котором происходят указанные вызовы, обработать указанные вызовы, при этом средства, реагирующие в зависимости от указанных средств обнаружения, динамически выбирают альтернативные протоколы из числа указанных размещенных в памяти протоколов, которые в состоянии обработать указанные вызовы в случае, когда указанные назначенные протоколы не в состоянии обработать такие вызовы.

В предпочтительном варианте каждый из указанных протоколов представлен в виде автомата с конечным числом состояний. При этом один или большее количество протоколов являются протоколами, определенными пользователями и переданными по линиям связи в указанный коммутатор для размещения в его памяти. Каждый из указанных автоматов с конечным числом состояний предпочтительно содержит одну или большее количество библиотек и имеет соответствующую конфигурацию для приведения в действие с помощью одного или большего количества процессоров конечного автомата, работающих в соответствии с одной или большим количеством библиотек заранее определенных функций.

Согласно предпочтительному варианту осуществления изобретения каждый из указанных автоматов с конечным числом состояний определен таблицей "состояние/событие" вместе с таблицей примитивов, причем таблица "состояние/событие" задает множество заранее определенных логических состояний и по меньшей мере одно заранее определенное событие, связанное с каждым из таких состояний, а таблица примитивов задает один или большее количество примитивов, каждый из которых содержит заранее определенную серию заранее определенных функций, в результате чего при наступлении одного или большего количества заранее определенных событий в работу включается заранее определенный примитив, связанный с наступлением заранее определенного события. Каждый из автоматов с конечным числом состояний предпочтительно имеет также связанный с ним блок данных, содержащий указатель на активную таблицу "состояние/событие", указатель на активную таблицу примитивов и указатель на назначенную таблицу примитивов.

Настоящее изобретение предусматривает также способ функционирования указанного программируемого коммутатора системы телекоммуникации, включающий операцию определения одного или большего количества протоколов, связанных с входящими или выходящими вызовами. Данный способ включает в себя операцию обнаружения наступления события на одном из множества портов или каналов, операцию динамического выбора одного из указанных одного или большего количества связанных с вызовами протоколов для обработки указанного наступающего события и выполнение указанного выбранного протокола для обработки указанного наступающего события.

Согласно предпочтительному варианту данного способа перед операцией обнаружения наступления события на одном из множества портов или каналов осуществляют первоначальное назначение по меньшей мере одного из указанных одного или большего количества протоколов каждому из указанных портов или каналов.

При этом операция обнаружения наступления события на одном из множества портов или каналов включает обнаружение входящего вызова или начала выходящего вызова на одном из каналов или портов и способ дополнительно включает операцию определения способности протокола, назначенного в текущий момент одному из каналов или портов, к обработке входящего или выходящего вызова, операцию динамического выбора другого протокола, способного обработать указанный входной или выходной вызов, выполняемую в случае неспособности назначенного протокола обработать входящий или выходящий вызов, и операцию использования выбранного протокола для обработки указанного входного или выходного вызова.

Желательно, чтобы один или большее количество из связанных с вызовами протоколов являлись протоколами, определенными пользователями и переданными по линиям связи для сохранения в хост-устройстве или резидентными в памяти хост-устройства. Эти же протоколы могут, в качестве альтернативы, храниться в программируемом коммутаторе.

Согласно изобретению предлагается также способ разработки связанных с вызовами протоколов, относящихся к динамическому соединению и разъединению линий связи между различными каналами или портами в программируемом коммутаторе в качестве реакции на одно или большее количество сообщений, генерируемых хост-устройством. Данный способ характеризуется тем, что он включает операцию создания одной или большего количества указанных таблиц "состояние/событие", операцию создания одной или большего количества указанных таблиц примитивов и операцию создания одного или большего количества указанных протоколов, причем каждый из указанных протоколов предназначен для обработки входящих и выходящих вызовов.

В своем предпочтительном варианте данный способ включает дополнительно операции размещения одного или большего количества протоколов в памяти программируемого коммутатора систем телекоммуникации или в памяти указанного хост-устройства и назначения по меньшей мере одного из этих протоколов каждому из каналов или портов.

При обнаружении входящего или начала выходящего вызова на одном из каналов или портов и определении способности протокола, назначенного в текущий момент одному из указанных каналов или портов, к обработке входного или выходного вызова динамически выбирают другой из указанных протоколов, способных обработать входной или выходной вызов, в случае, когда назначенный в текущий момент протокол не в состоянии обработать указанный входящий или выходящий вызов.

Способ может также дополнительно включать операции размещения одного или большего количества протоколов в памяти программируемого коммутатора и выполнения одного или большего количества протоколов этим коммутатором. Дополнительно может также выполняться операция назначения каждому из указанных каналов или портов соответствующего вышеописанного блока данных.

Краткий перечень фигур Настоящее изобретение определено прилагаемой формулой изобретения. Вышеуказанные и другие преимущества настоящего изобретения будут более понятны из нижеследующего описания, рассматриваемого совместно с прилагаемыми чертежами, на которых фиг. 1 изображает блок-схему программируемого коммутатора систем телекоммуникаций, который может быть запрограммирован пользователем в соответствии с вариантом предпочтительного выполнения настоящего изобретения; фиг. 2 изображает блок-схему, показывающую уровни программного обеспечения, используемые для управления коммутатором, выполненным согласно схеме на фиг. 1; фиг. 3A и 3B изображают некоторые особенности и функции каждого из уровней 2 - 5 программного обеспечения, изображенных на фиг. 2, фиг. 4 изображает блок-схему среды для разработки конечного автомата, выполненного в соответствии с вариантом предпочтительного выполнения настоящего изобретения; фиг. 5 изображает блок-схему приложения уровня 3 (сетевой уровень), в котором конечные автоматы используются для назначения желаемых сетевых протоколов сигнализации различным портам программируемого коммутатора; фиг. 6A изображает диаграмму состояния конечного автомата для обеспечения управления с помощью тоновых сигналов в приложении уровня 2 (уровень связи); фиг. 6B изображает блок-схему конечного автомата, изображенного на фиг. 6A, в котором каждая серия из элементарных функций определена как примитив; фиг. 6C изображает группу таблиц, показывающих соответствие между элементарными функциями, примитивами и состояниями, показанными на фиг. 6B; фиг. 7A изображает блок-схему состояния конечного автомата для обработки начальной фазы установки параметров вызова с использованием международного протокола принудительной сигнализации R2 в приложении уровня 3 (сетевой уровень); фиг. 7B изображает блок-схему конечного автомата, показанного на фиг. 7A, в котором каждая серия элементарных функций определена как примитив; фиг. 7C изображает группу таблиц, показывающих соответствие между элементарными функциями, примитивами и состояниями, показанными на фиг. 7B; фиг. 8A изображает блок-схему состояния конечного автомата для обработки начальной фазы установки параметров вызова с использованием протокола сигнализации T1 E&M wink start в приложении уровня 3 (сетевой уровень); фиг. 8B изображает блок-схему конечного автомата, показанного на фиг. 8A, в котором каждая серия элементарных функций определена как примитив; фиг. 8C изображает группу таблиц, показывающих соответствие между элементарными функциями, примитивами и состояниями, показанными на фиг. 8B; фиг. 9A изображает блок-схему состояния конечного автомата для обеспечения интерактивного голосового ответа на все входящие вызовы в уровне 4 (уровень управления вызовами); фиг. 9B изображает блок-схему конечного автомата, показанного на фиг. 9A, в котором каждая серия элементарных функций определена как примитив; фиг. 9C изображает группу таблиц, показывающих соответствие между элементарными функциями, примитивами и состояниями, показанными на фиг. 9B; фиг. 10A изображает блок-схему состояния конечного автомата для уровня 5 входящих приложений, например для службы (800), позволяющей оплачивать междугородные звонки вызываемым абонентам; фиг. 10B изображает блок-схему конечного автомата, показанного на фиг. 10A, в котором каждая серия элементарных функций определена как примитив; фиг. 10C изображает группу таблиц, показывающих соответствие между элементарными функциями, примитивами и состояниями, показанными на фиг. 10B.

Сведения, подтверждающие возможность осуществления изобретения На фиг. 1 показан серийный персональный компьютер 2, содержащий центральный процессор 4 и жесткий диск 6, соединенные между собой с помощью шины 8 ввода/вывода и шины 9 питания. Компьютер 2 предпочтительно относится к типу РС-АТ производства IBM или к совместимому с ним типу. Также могут быть использованы и другие персональные компьютеры, имеющие больший размер памяти или более мощные центральные процессоры, чем имеющиеся у РС-АТ. Компьютер 2 предпочтительно работает под управлением ориентированной на работу с приложениями операционной системы, например, DOS или UNIX.

Компьютер 2 содержит шасси или корпус, в котором установлена материнская плата вместе с жестким диском 6 и другими опционными элементами, такими как дисководы для дискет, модемы и т.п. Центральный процессор 4 установлен на материнской плате, содержащей ряд соединительных элементов (слотов), в которых могут быть установлены другие карты и таким образом соединены с шинами ввода/вывода 8 и питания 9.

Программируемый коммутатор 10 системы телекоммуникаций установлен внутри компьютера 2. Карта 12 процессора/матрицы установлена в одном из слотов материнской платы и соединена таким образом с шинами 8 и 9. Карта 12 процессора/матрицы, которая используется в коммутаторе по настоящему изобретению в качестве управляемых средств коммутации, соединена, с возможностью коммуникации, с цифровой (Т1) линейной картой 14, цифровой (Е1) линейной картой 15, картой 16 обработки цифровых сигналов (DSP), картой 17 пакетного процессора, аналоговой (универсальной) линейной картой 18 и картой 19 завершения для четырех шин: шины 20 высокоуровневого протокола управления каналом передачи данных (HDLC) или интерпроцессора, шины 22 временного мультиплексирования (ТDМ), шины 24 статуса/контроля линейной карты и шины 26 синхронизации/контроля. Шина 28 подачи напряжения подает напряжение батареи (48 В постоянного тока) и напряжение вызова (109 В переменного тока) к аналоговой линейной карте 18. Цифровые линейные карты 14, 15 и аналоговая линейная карта 18 выполняют функции средств для окончания соответственно цифровых или аналоговых линий или магистралей. Карта 19 завершения служит для физического окончания шин 20, 22, 24, 26 и 28.

Все линейные карты 14, 15 и 18 и карта 16 обработки цифровых сигналов соединены с шиной питания 9, от которой они получают основное питание. Хотя здесь изображены только одна цифровая линейная (Т1) карта 14, одна цифровая линейная (Е1) карта 15 и одна аналоговая линейная карта 18, следует понимать, что могут быть добавлены дополнительные линейные карты любого типа в пределах двух физических ограничений: (1) максимальной емкости карты 12 процессора/матрицы коммутатора и (2) физического наличия свободного места на шасси компьютера 2.

Хост-устройство 30, которое может содержать отдельный внешний персональный компьютер, рабочую станцию или внешний компьютер другого типа с работающей программой телекоммуникационного приложения, может быть по желанию соединено через соединительный канал 32 с картой 12 процессора/матрицы. Карта 12 процессора/матрицы предпочтительно содержит обычный интерфейс, совместимый с RS-232, для соединения с каналом 32. Хост-устройство 30 предпочтительно работает под управлением операционной системы, ориентированной на работу с приложениями.

При необходимости коммутатор 10 может быть установлен на пассивной панели (без центрального процессора 4 или жесткого диска 6), откуда он получает питание и управляется внешним хост-устройством 30.

Внешний источник 31 напряжения соединен через канал 33 с картой 19 завершения. Источник 31 может содержать, например, обычный серийный источник питания. Подробные сведения о различных картах, показанных на фиг. 1 (за исключением цифровой линейной карты 15, карты 16 обработки цифровых сигналов (DSP) и карты 17 пакетного процессора), относящиеся к конструкции различных карт, приведены в патенте США N 5321744, который принадлежит заявителю настоящего изобретения и который включен в данное описание посредством ссылки на него. Цифровая (Е1) линейная карта 15 предпочтительно выполнена с использованием таких же элементов, как и цифровая (Т1) линейная карта 14, за исключением различий в обычных схемах, обеспечивающих в линейной карте 15 завершение участков Е1 (вместо участков Т1).

Подробное описание карты 16 обработки цифровых сигналов (DSP) и карты 17 пакетного процессора дано в патенте США N 5349579, который принадлежит заявителю настоящего изобретения и который включен в данное описание посредством ссылки на него.

На фиг. 2 показана структура уровней программного обеспечения, используемого для управления программируемым коммутатором 10, выполненным согласно фиг. 1. Левая колонка, показанная на фиг. 2, изображает семь уровней, определенных моделью ВОС (Взаимосвязь Открытых Сетей). Правая колонка, показанная на фиг. 2, изображает пять уровней, используемых для управления коммутатором 10 и их общим соответствием модели ВОС.

Как показано на фиг. 1 и 2, Прикладной Уровень 5, соответствующий в целом прикладному уровню модели ВОС, представляет программное обеспечение приложения, обычно работающее либо на центральном процессоре 4 компьютера, либо на внешнем хост-устройстве 30. Программное обеспечение Прикладного Уровня 5 может быть использовано для внедрения любой из ряда желаемых функций системы телекоммуникаций, например службы (800), позволяющей оплачивать междугородные звонки вызываемым абонентам, отправка/прием голосовых сообщений, автоматическое распределение вызовов и др.

Уровень 4 Управления Вызовами, соответствующий, в основном, уровням Представления, Сеанса и Транспортному уровню модели ВОС, представляет программное обеспечение, работающее на карте 12 процессора/матрицы. Уровень 4 Управления Вызовами отвечает за выполнение централизованных функций обработки вызовов и обеспечение общего интерфейса сетевых протоколов сигнализации, которые могут быть использованы в коммутаторе 10. Обычно Уровень 4 Управления Вызовами выполняет функции, требующие последующей установки параметров вызова.

Сетевой Уровень 3 протокола сигнализации соответствует главным образом Сетевому уровню модели ВОС. Программное обеспечение, представленное Сетевым Уровнем 3 протокола сигнализации, работает как на карте 12 процессора/матрицы, так и на линейных картах, содержащих свои собственные микропроцессоры, например на линейных картах 14 или 15 или карте 17 пакетного процессора, и оно отвечает за контроль над сигнализацией в сети вне рабочей полосы, а также за контроль входящих и выходящих вызовов уровня сетевого протокола.

Уровень 2 Связи соответствует главным образом Уровню Звена Данных (Уровню Канала) модели ВОС. Программное обеспечение Уровня 2 Связи работает на карте 12 процессора/матрицы, линейных картах, содержащих свои собственные микропроцессоры, карте 16 обработки цифрового сигнала или карте 17 пакетного процессора (каждая из которых имеет свой собственный микропроцессор) и отвечает за выявление и физический перенос сетевой информации сигнализации по сети или через линейный интерфейс.

Наконец, Физический уровень 1 соответствует Физическому Уровню модели ВОС. Линейные карты 14, 15 и 18 обеспечивают физический Т1, Е1 и аналоговый электрический интерфейсы соответственно с коммутатором 10.

На фиг. 3А и 3B изображен табулированный листинг представительных отличительных черт и функций, обеспечиваемых каждым из уровней 2-5 программного обеспечения, показанных на фиг. 2. Настоящее изобретение может быть использовано в качестве инструмента для разработки подходящего программного обеспечения для выполнения любой из функций, показанных на фиг. 3А и 3B. Предпочтительный пример использования настоящего изобретения в контексте каждого из уровней 2-5 описан ниже и рассматривается вместе с чертежами 6A - 10C.

На фиг. 4 показана общая блок-схема среды для разработки конечного автомата, созданной в соответствии с вариантом предпочтительного выполнения настоящего изобретения, обеспечивающего заказчику или пользователю возможность создания и определения конечного автомата для выполнения желаемых телекоммуникационных функций. Прежде чем рассматривать этот чертеж подробно, необходимо дать определения некоторым терминам.

В рамках данного описания термин состояние (или логическое состояние) указывает на показатель, представляющий текущий "контекст" конкретного канала или порта. В предпочтительном варианте выполнения настоящего изобретения предусматривается три определенных типа состояний: нормальное, внутреннее и блокировка. Нормальными состояниями, которые определяются разработчиком телекоммуникационной системы, могут быть состояния ожидания (т.е. состояние SEIZE_ACK, условие, при котором дальнейшее действие не выполняется до наступления некоторого определенного события) или стабильные состояния (т.е. имеет место телефонный разговор). Внутренние состояния используются для проверки условий и эффективной работы в качестве принимающей решения магистрали. Нормальное или внутреннее логические состояния могут быть определены заказчиком или пользователем в соответствии с настоящим изобретением для определения конечного автомата для выполнения желаемой функции. Согласно настоящему изобретению логические состояния блокировки генерируются автоматически и используются применительно к индивидуальным каналам в связи с управлением внешними ресурсами.

Событие (или логическое событие) - это число, идентифицирующее условие, разрешенное конкретным состоянием. С событием могут быть ассоциированы данные.

Элементарная функция - это функция, выполняющая элементарную задачу, например установку таймера. Данные пользователя могут быть ассоциированы с элементарной функцией.

Примитив - это заранее определенная последовательность элементарных функций, которая выполняется при наступлении определенного события. Пользователи могут создавать или определять примитивы с помощью библиотеки имеющихся в наличии (т.е. предусмотренных при разработке телекоммуникационной системы) элементарных функций. В предпочтительном варианте выполнения каждый примитив может содержать до 20 элементарных функций.

Таблица "состояние/событие" определяет действительные события для определенного состояния и примитив, который выполняется при каждом наступлении такого события. В варианте предпочтительного выполнения таблица "состояние/событие" может содержать до 100 состояний и до 40 событий на каждое состояние.

Таблица примитивов определяет примитивы, использующиеся таблицей "состояние/событие". В варианте предпочтительного выполнения таблица примитивов может содержать до 200 примитивов.

Протокол определяется как связь таблицы "состояние/событие" с таблицей примитивов и идентифицируется Идентификационным номером протокола.

Для каждого канала (порта) 0. ...n коммутатора назначен блок данных, например, обозначенный номерами позиций 40a, 40n. Каждый блок 40a, 40n данных содержит следующую информацию относительно своего соответствующего канала: текущее состояние канала; указатель на активную таблицу "состояние/событие"; указатель на активную таблицу примитивов; указатель на назначенную таблицу "состояние/событие" и указатель на назначенную таблицу примитивов.

Для канала 0 указатели активной таблицы "состояние/событие" и активной таблицы примитивов указывают, как показано пунктирными линиями, на таблицы, связанные с резидентным протоколом 0, обозначенным номером 42a. Назначенные указатели таблицы "состояние/событие" и таблицы примитивов для канала 0 указывают на таблицы, которые связаны с динамически загруженным, определенным заказчиком протоколом n+1, обозначенным номером 44a.

Другие протоколы, имеющиеся в наличии для использования, являются резидентными протоколами 1...n (42b, 42c) и полученными по линиям связи протоколами n+2. . . m (44b, 44c), определенными заказчиком. Резидентные протоколы 42a-42c представляют заранее запрограммированные или "стандартные" протоколы, которые обычно поставляются изготовителем вместе с коммутатором. В отличие от них определенные заказчиком протоколы 44a-44c созданы заказчиком или пользователем и могут быть полностью "индивидуализированными" или представлять интеллектуальную собственность пользователя. Таким образом, минимальное количество имеющихся протоколов соответствует единственному стандартному протоколу, тогда как их действительное количество практически не ограничено и определяется конкретными условиями использования телекоммуникационной системы и требованиями к ней со стороны пользователя. Очевидно, что общее количество имеющихся в коммутаторе протоколов может изменяться во времени (например, за счет разработки пользователем новых протоколов).

Зависящая от уровня библиотека 46 элементарных функций соединена для передачи информации с процессором 48 конечного автомата. Процессор 48 конечного автомата также получает активный указатель таблицы "состояние/событие" и активный указатель таблицы примитивов от каждого из блоков данных 40a-40n.

Кроме того, для поддержки зависящей от уровня среды имеются утилиты, обозначенные номером позиции 50.

Функция процессора 48 конечного автомата заключается в запуске в работу каждого канала в соответствии с назначенным протоколом, определенным назначенными таблицей "состояние/событие" и таблицей примитивов. При наступлении допустимого события для нормального состояния запускается в работу примитив в соответствии со входами в назначенную таблицу "состояние/ожидание". Процессор 48 конечного автомата использует библиотеку 46 элементарных функций для выполнения элементарных функций представленным работающим примитивом.

Процессор 48 конечного автомата будет управлять работой конечного автомата на протяжении всех необходимых внутренних состояний, до тех пор пока канал вновь не достигнет нормального состояния. В это время управление работой процессора 48 конечного автомата завершается до наступления другого допустимого события.

Каждому каналу изначально назначен один из определенных заказчиком протоколов или один из заранее запрограммированных протоколов. Это осуществляется с помощью передачи сообщения от Уровня 5 Приложения к Уровню 4 Управления Вызовами, который в свою очередь передает соответствующее сообщение к Уровню 3. Назначенный указатель таблицы "состояние/событие" и назначенный указатель таблицы примитивов указывают на протокол, который был наз