Настоящее изобретение относится к области телекоммуникаций и, более точно, к архитектуре соединения множества программируемых телекоммуникационных коммутаторов для создания расширяемой коммутационной системы и для обеспечения прямого доступа различных коммуникационных устройств.
Уровень техники
Для любой телекоммуникационной системы фундаментальное значение имеет коммутационная емкость. Для того чтобы найти решение, эффективное по стоимости как в настоящем, так и в будущем, коммутационная емкость должна быть проанализирована в свете текущего спроса и перспективного спроса. Например, предположим, что развивающаяся страна находится в процессе строительства базовой телекоммуникационной системы и имеет намерения обслуживать большинство населения, проживающего в ней в настоящий момент. Это население, скорее всего, географически распределено в небольших по площади районах с высокой плотностью населения (городах) и больших по площади районах с низкой плотностью населения (пригороды и сельская местность). В дополнение, население вероятно будет расти, но разными темпами в разных районах. Таким образом, задачей проектировщика телекоммуникационной системы является создание достаточной коммутационной емкости для поддержки удовлетворительного уровня обслуживания для большинства или всего населения, одновременно с предвидением вероятного роста в будущем и учетом возможности экономичного расширения.
Другой пример трудности обеспечения соответствующей коммутационной емкости связан с сетью беспроводных или персональных коммуникационных устройств. Эти типы устройств основаны на микросотовой архитектуре, требующей множества базовых станций, расположенных вблизи городских районов, с различными коммутационными емкостями, образующими вместе большую коммутационную емкость.
Вторым по важности фундаментальным фактором в разработке телекоммуникационной системы является возможность добавления новых функций или услуг в будущем. Телекоммуникационное оборудование и услуги продолжают быстро развиваться, главным образом вследствие прихода цифровой технологии. В будущем вероятно еще более быстрое движение вперед, особенно ввиду того, что отдельные отрасли индустрии, такие как кабельное телевидение и локальные телефонные компании, объединяют свои услуги. Таким образом, вновь ставится задача создания системы, экономично удовлетворяющей потребности сегодняшнего дня при одновременном обеспечении гибких и недорогих путей для внедрения в нее новых функций и услуг по мере их появления.
Известные подходы к решению двойной проблемы обеспечения адекватной коммутационной емкости одновременно с доступом к новым функциям и услугам в большинстве, если не всех случаях, страдают от одного из следующих основных недостатков: (1) недостаточная ширина полосы системы для того, чтобы оперировать с информацией, такой как видео и мультимедиа, в дополнение к голосовым сообщениям и данным (в контексты данного описания и формулы изобретения понятия "информация" и "данные" рассматриваются как эквивалентные и взаимозаменяемые), (2) нет прямого, готового доступа ко всей информации, идущей к системе или от системы, имея в виду, что нет способов для снятия всей информации и распределения ее по другим коммутационным системам или оборудованию, и (3) требуется увеличивающийся в размерах большой центральный коммутатор для обеспечения доступа к некоторым видам расширенных услуг.
Один из известных подходов может быть назван, например, подходом "расширение шины". Во многих известных телекоммуникационных коммутаторах имеется одна или большее количество внутренних шин для пересылки информации, включая голосовые сообщения, данные и контрольную информацию, между различными частями коммутатора. Шины хорошо подходят для пересылки такой информации, так как, по определению, с шинами могут стыковаться множество устройств (например, печатных плат или карт) и делить их в соответствии с определенным коммуникационным протоколом. В телекоммуникационном коммутаторе обычно имеется одна или большее количество шин, соединяющих между собой карты - физические оконечные устройства телефонных линий, с другими картами, осуществляющими коммутацию, управление или другие функции. Как следует из названия, идея, лежащая в основе подхода расширения шины, состоит просто в присоединении дополнительных карт, обеспечивающих дополнительную коммутационную емкость или другие функции, к существующей шине. В дополнение к двум главным недостаткам, указанным выше, этот подход содержит еще несколько других недостатков. Во-первых, имеются физические ограничения, такие как количество карт, которые могут быть физически соединены с шинами без снижения производительности системы. Во-вторых, для того чтобы обеспечить значительное расширение в будущем, шины и другие элементы системы должны быть сконструированы прежде всего так, чтобы обеспечивать намного больший трафик, чем это требуется перед любым расширением системы. Эти ограничения относятся к электрическим и механическим характеристикам шин (или может быть в особенности к одной из шин) и к их эффективным эксплуатационным скоростям. Попытки преодолеть эти ограничения (например, путем использования чрезвычайно большого количества соединений с шиной) приводят к увеличению стоимости и сложности "основы" нерасширенной системы, делая систему слишком дорогой для некоторых случаев применения. Имеется также ограничение, относящееся к мощности процессора, требуемой для фактического выполнения коммутационных функций, а также для управления трафиком на шинах.
В-третьих, конструкция шины во многих, если не в большинстве известных коммутационных систем в общем случае предназначена исключительно для выполнения базовой обработки вызовов и коммутационных функций и не обеспечивает готового прямого доступа к портам для внедрения новых функций и услуг.
В-четвертых, конструкция шины обычно не приспособлена к передаче коммутационных данных в виде пакетов или других типов информации.
Второй подход может быть назван для краткости "модульным". В модульном подходе идея заключается в создании коммутационной системы, сконструированной из ряда по существу идентичных модулей. Каждый модуль обеспечивает определенный объем коммутационной емкости, который может быть добавлен к существующей системе (один или большее количество одновременно) для увеличения общей коммутационной емкости системы.
В дополнение к указанным ранее недостаткам предыдущего подхода, модульный подход имеет и другие узкие места. Для обеспечения полной бесперебойной работы каждый модуль должен быть выполнен так, чтобы иметь возможность приема данных коммутации каналов от всех других модулей, вплоть до любого их максимального количества. С точки зрения аппаратной части это подразумевает, что каждый модуль должен быть выполнен с достаточно большим объемом запоминающего устройства для хранения максимального количества данных коммутации каналов, которое может быть получено в случае, если соединено вместе максимальное количество модулей. Например, если каждый модуль в состоянии коммутировать эквивалент 64 портов, а вместе могут быть соединены максимум восемь модулей, то каждый модуль должен обязательно содержать запоминающее устройство, способное хранить данные коммутации каналов для (8х64) = 512 портов. Таким образом, при модульном подходе именно максимальная коммутационная емкость системы при ее расширении до максимума определяет размер запоминающего устройства, которое должен иметь каждый модуль. Для систем большего размера (т.е. порядка нескольких тысяч портов или более) создание такого запоминающего устройства становится непрактичным из-за соответствующего количества физических интерфейсов сеть/линия, а также ввиду необходимости дополнительных цепей для управления запоминающим устройством.
Во-вторых, для того чтобы система оставалась действительно модульной, нельзя изменять коммутационную емкость отдельных модулей.
В-третьих, подобно подходу расширения шины, модульный подход ориентирован на выполнение базовых коммутационных операций и в общем случае не обеспечивает ни прямого доступа ко всем портам, ни возможности передачи данных коммутации пакетов или других типов информации.
В европейском патенте EPO 256526 описана известная пакетно-коммутируемая сетевая система, в которой множество узлов 1 соединены друг с другом с помощью кольца 2, с обслуживанием каждым узлом множества пользовательских терминалов 3. Более конкретно, предложенное в патенте устройство предназначено для назначения в режиме реального времени адресов пакетов для динамически поддерживаемой ширины полосы пропускания в блокирующей коммуникационной сети, то есть в системе, где количество адресов пакетов меньше, чем общее количество станций сети. Недостаток предложенного в этом патенте решения состоит в том, что блокирующая система требует динамического распределения адресов пакетов с помощью централизованного устройства, а также раздельной и последовательной передачи управляющих пакетов и пакетов сообщений для обеспечения связности. Использование центрального устройства блокирующей системы приводит к необходимости затрат значительных ресурсов процессора и связанной контрольной ширины полосы пропускания для управления и динамического назначения пакетных адресов. Кроме того, использование централизованного устройства требует внедрения схемы резервирования во избежание отказов в центральном адресе ячейки запоминающего устройства, выводящих систему из строя. Внедрение второго центрального адреса ячейки запоминающего устройства еще больше усложняет систему и занимает дополнительную ширину полосы пропускания в других устройствах.
Другая известная система описана в заявке на европейский патент EP-A-0119105. В этой заявке предложена телекоммуникационная система, в которой ряд узлов соединен вместе с помощью кольца. Узлы соединены друг с другом через кольцо путем передачи "композитных пакетов" вперемежку со свободными "временными корзинами" или частями кадра. Недостаток описываемой системы состоит в том, что узел должен вначале идентифицировать один или несколько свободных квантов времени для передачи информации, прежде чем предпринимать попытку передачи этой информации к другому узлу. Если на данном узле нет свободных квантов времени для пересылки информации, готовой для передачи, такая информация не может быть передана на адресуемый узел.
Сущность изобретения
В кратком изложении, настоящее изобретение предлагает открытую высокоскоростную широкополосную цифровую телекоммуникационную сеть для соединения множества программируемых телекоммуникационных средств (выполненных на основе телекоммуникационных коммутаторов) для образования неблокирующей коммутационной системы большой емкости. В системе имеются средства (представляющие собой межузловую сеть) для соединения друг с другом указанного множества телекоммуникационных коммутационных средств с возможностью обмена данными и с возможностью совместной работы с передающими и принимающими средствами для пересылки пакетированной информации между указанными телекоммуникационными коммутационными средствами, так что информация, включая данные коммутации каналов, отправленная из любого порта любых из указанных телекоммуникационных коммутационных средств, может передаваться, по существу непрерывно, к любому другому порту тех же или других телекоммуникационных коммутационных средств. В предпочтительном варианте выполнения сеть образована с использованием одного или большего количества колец, обеспечивающих среду для пересылки информации по сети, и множества программируемых коммутаторов, каждый из которых выступает в качестве узла сети и обслуживает группу портов. Для повышения коммутационной емкости системы по желанию в сеть могут быть добавлены дополнительные коммутаторы (т.е. коммутируемые узлы).
Каждый узел содержит программируемые телекоммуникационные коммутационные средства, включающие средства для временной коммутации информации, направляемой к указанным портам или от них, причем одно или большее количество указанных программируемых телекоммуникационных коммутационных средств содержат программируемый коммутатор, управляемый хост-устройством. Другими словами, хост-устройство соединено, с возможностью обмена данными, с одним из указанного множества программируемых телекоммуникационных коммутационных средств, а также с возможностью управления этим телекоммуникационным коммутационным средством и другими телекоммуникационными коммутационными средствами с помощью информации, передаваемой средствами для соединения друг телекоммуникационных коммутационных средств с другом.
Каждый узел содержит также средства (блоки) для передачи и приема пакетированной информации переменной длины по межузловой сети, обеспечивая тем самым возможность приема каждым узлом информации от всех остальных узлов и передачи информации ко всем остальным узлам. Сеть может переносить любой тип информации, имеющейся в системе, включая голосовые сообщения, данные, видео, мультимедиа, управляющие сигналы, сигналы конфигурации и обслуживания, и ширина полосы пропускания сети может быть разделена или поделена между различными типами информации.
В системе имеются также множество интерфейсов, т.е. средств, соединенных, с возможностью обмена данными, с указанными коммутационными средствами для образования интерфейса с одной или большим количеством общественных или частных сетей, представляющих порты, причем указанное соединение с возможностью обмена данными содержит шину для пересылки данных к указанным портам и от них. При этом множество телекоммуникационных коммутационных средств, входящих в межузловую сеть, способно работать синхронно по отношению к указанным общественным или частным сетям, тогда как указанные средства для соединения друг с другом телекоммуникационных коммутационных средств (т.е. межузловые сети) работают асинхронно по отношению к указанным общественным или частным сетям, а также по отношению к коммутаторам.
Система содержит также одно или большее количество средств управления коммутацией, предназначенных для динамического обеспечения передачи данных коммутации каналов одними и только одними из множества средств временной коммутации к шине. При этом каждое из указанных средств для временной коммутации имеет коммутационную емкость, соответствующую максимальному числу портов, которые физически могут быть связаны с указанными средствами.
В общем случае указанные средства для соединения друг с другом телекоммуникационных коммутационных средств содержат множество сред для переноса указанной пакетированной информации в форме оптического сигнала, предназначенных для повышения коммутационной емкости указанной системы, в частности первую и вторую среду, причем указанная вторая среда предназначена не только для повышения коммутационной емкости указанной системы, но и для обеспечения локализации отказа относительно указанного множества телекоммуникационных коммутационных средств. Соответствующая среда для пересылки указанной пакетированной информации в форме оптических сигналов обеспечивает один или большее количество каналов, каждый из которых может переносить всю указанную пакетированную информацию или какую-то ее часть. Возможность прямого доступа ко всем портам с возможностью пересылки информации в пакетной форме является полностью совместимой с работой в асинхронном режиме пересылки (АТМ) в сетях SONET (синхронная оптическая сеть).
При этом межузловая сеть может содержать локальную сеть, беспроводную коммуникационную сеть, синхронную оптическую сеть, сеть с асинхронным режимом передачи или часть общественной коммутационной телефонной сети.
В дополнение, в качестве узлов сети могут также работать иные устройства, чем программируемые коммутаторы, обеспечивая тем самым прямой доступ ко всей информации, проходящей по сети. Более конкретно, устройства обработки сообщений, например, системы голосовой почты, интерактивного голосового ответа, факс-почты, голосовых сообщений, или другие платформы с расширенным сервисом, например, услугами беспроводной связи или персональной связи, могут, функционируя в качестве сервисных узлов, которые являются, например, частью сети персональных коммуникаций PCN, и, стыкуясь с межузловой сетью, т. е. с указанными средствами соединения друг с другом телекоммуникационных коммутационных средств для передачи и приема информации в пакетированной форме, могут динамически обеспечить прямой доступ, т.е. предоставить телекоммуникационные услуги всем портам, обслуживаемым системой, без необходимости большого центрального коммутатора. Возможности устройства, предложенного в настоящем изобретении, по пересылке информации любого типа, в готовой к использованию форме, на высокой скорости по сети обеспечивает возможность предоставления любых услуг, функций или устройств обработки сообщений, существующих на данном узле, любому порту данного узла или любого другого узла.
Таким образом, данные коммутации каналов подвергаются коммутации на трех уровнях, причем первый уровень коммутации выполняется средствами временной коммутации, физически связанными с одним из указанных портов, из которых отправлены данные коммутации каналов. Второй уровень коммутации выполняется с помощью указанных средств передачи и приема совместно с указанными средствами соединения друг с другом телекоммуникационных коммутационных средств, а третий уровень коммутации выполняется с помощью средств временной коммутации, физически ассоциированных с одним из указанных портов, в который направляются указанные данные.
Настоящее изобретение также предлагает способы и пакетные структуры для коммуникационной информации, передаваемой по межузловой сети (т.е. сетевой информации или сетевых данных). Эти сетевые данные включают, в частности, данные коммутации пакетов, причем предусмотрены различные пакетные структуры для коммутации информации, коммутации каналов, информации обработки сообщений, например голосовых, данных или служебной информации. Однако все пакеты имеют контрольную головную часть, которая обычно содержит адрес, статус и другую контрольную информацию, и часть с полезной нагрузкой для пересылки данных. При этом данные коммутации каналов, пересылаемые с помощью межузловой сети, организованы в изначально заданном порядке внутри пакета, в результате чего указанный порядок представляет адресную информацию для определения портов, которым соответствуют данные коммутации каналов.
Альтернативные варианты способа пересылки информации между множеством узлов, соединенных с возможностью обмена данными межузловой сетью с образованием расширяемой телекоммуникационной системы, включают следующие операции.
а) Передачи по указанной межузловой сети от одного из указанных узлов пакета, который содержит информацию, идентифицирующую передающий узел (в частности, адрес источника), а также информацию, которую передающий узел намеревается переслать одному или большему количеству других узлов, или емкость для переноса информации, другими словами, полезную нагрузку для размещения или для несения указанной информации.
б) Приема указанного пакета узлом (или узлами), другим (и), чем передающий узел, причем этот принимающий узел выборочно считывает из пакета любую информацию, предназначенную этому принимающему узлу или же выборочно вставляет в пакет информацию, предназначенную этому передающему узлу, а затем обеспечивает продолжение следования указанного пакета по межузловой сети.
в) Повторения операции приема пакета в свою очередь у каждого из указанных одного или большего количества узлов, до тех пор пока указанный пакет не вернется на передающий узел.
Повторение операций а) - в) до тех пор, пока каждый из указанных узлов не получит пакета от каждого другого узла или же не отправит пакет и не получит вернувшийся пакет, содержащий информацию от других узлов.
Таким образом, в соответствии с одним из альтернативных способов пересылки информации между узлами, каждый узел использует сеть для передачи одного или большего количества пакетов, каждый из которых имеет "пустую" полезную нагрузку, и которые принимаются первыми соседним узлом. Соседний принимающий узел определяет источник полученного пакета и статус пакета благодаря информации, содержащейся в контрольной части пакета. Если этот соседний узел имеет информацию для передачи на узел источника, соседний узел вставляет такую информацию в полезную нагрузку пакета, затем обеспечивает прохождение пакета к следующему соседнему узлу сети. Если соседний узел не имеет информации для передачи узлу источника, пакет просто проходит к следующему соседнему узлу сети. Этот процесс повторяется на каждом узле до тех пор, пока пакет не пересечет всю сеть и не вернется с "полной" полезной нагрузкой в узел отправления (передающий узел). В этой точке информация, которая была помещена в пакет другими узлами, получается и извлекается передающим узлом, из которого пакет был отправлен. В свою очередь, каждый узел передает "пустой" пакет, пересекающий сеть и возвращающийся с информацией от других узлов. Таким образом, информация любого типа, отправленная из любого порта, обслуживаемого любым узлом, может быть переслана к любому другому порту того же или другого узла системы.
При осуществлении этого способа по настоящему изобретению перед выполнением операции передачи пакета передающий узел выборочно считывает данные коммутации каналов из запоминающего устройства локального передатчика и вставляет в полезную нагрузку указанные данные, которые отправлены из множества портов, физически связанных с указанным передающим узлом, и имеют пунктом назначения множество портов, физически связанных с указанным передающим узлом.
Данные коммутации каналов в этом случае организованы в изначально установленном порядке в полезной нагрузке, в результате чего принимающий узел может использовать указанный порядок для определения портов, из которых отправлены данные коммутации каналов.
Соответственно, во время операции приема пакета принимающий узел выборочно вставляет в полезную нагрузку данные коммутации каналов, предназначенные для одного или большего количества портов, физически связанных с указанным передающим узлом. В частности, принимающий узел определяет, готовы ли к отправке данные коммутации каналов, предназначенные для передающего узла, и если да, то вставляет указанные данные в полезную нагрузку.
Во время операции извлечения информации данные коммутации каналов, извлеченные из полезной нагрузки, записывают последовательно в запоминающее устройство локального приемника.
Кроме того, во время этой операции передающий узел может копировать данные коммутации пакетов, содержащиеся в указанной полезной нагрузке, в запоминающее устройство приемника пакетов.
В соответствии с другим альтернативным способом пересылки информации между узлами каждый узел использует сеть для передачи одного или большего количества пакетов, каждый из которых имеет "полную" полезную нагрузку, содержащую информацию, отправленную из этого узла. Каждый такой пакет первоначально получает соседний узел, который определяет, откуда пакет отправлен и содержится ли в нем информация, нужная этому соседнему узлу. Если да, то такая информация снимается из полезной нагрузки, прежде чем пакет будет отправлен к следующему соседнему узлу. Если никакая информация не нужна, пакет просто проходит к следующему соседнему узлу. Этот процесс повторяется вновь до тех пор, пока каждый узел сети не передаст один или большее количество пакетов с "полной" полезной нагрузкой и каждый такой пакет не пересечет всю сеть, обеспечивая тем самым каждому узлу доступ к информации, отправленной с каждого узла.
В этом варианте способа по настоящему изобретению во время операции передачи пакета указанный передающий узел последовательно считывает данные коммутации каналов из запоминающего устройства локального передатчика и вставляет в полезную нагрузку указанные последовательно считываемые данные, которые отправлены от одного или большего количества портов, физически связанных с указанным передающим узлом. Кроме того, указанный передающий узел может вставлять в указанный пакет адрес пункта назначения, идентифицирующий один из указанных узлов, как пункт назначения указанных данных коммутации пакетов.
При этом данные коммутации каналов также могут быть организованы в изначально установленном порядке в полезной нагрузке, в результате чего принимающий узел может использовать указанный порядок для определения портов, из которых отправлены указанные данные коммутации каналов.
Во время операции приема пакета принимающий узел выборочно записывает данные коммутации каналов из полезной нагрузки в запоминающее устройство локального приемника, причем указанные выборочно записанные данные предназначаются одному или большему количеству портов, физически связанных с указанным принимающим узлом. Во время этой же операции приема пакета указанный принимающий узел может проверять адрес пункта назначения полученного пакета и, если указанный пакет предназначен для принимающего узла, принимающий узел записывает данные коммутации пакетов, содержащиеся в полезной нагрузке, в запоминающее устройство локального приемника пакетов.
В случае работы в соответствии с каждым (или с обоими) способами пересылки информации, предложенными настоящим изобретением, емкость каждого узла для передачи информации по сети может быть определена независимо от других узлов. Кроме того, данному узлу нужно лишь иметь запоминающее устройство емкости достаточной для соответствия коммутационной емкости узла (или емкости обработки сообщений типа голосовых сообщений), но не всей емкости системы.
Перечень фигур чертежей
Отмеченные выше и другие преимущества настоящего изобретения станут более понятны из нижеследующего описания, рассматриваемого совместно с прилагаемыми чертежами, на которых:
Фиг. 1A и 1B изображают блок-схему расширяемой телекоммуникационной системы, использующей межузловую сеть кольцевого типа для пересылки информации между программируемыми коммутируемыми узлами, все из которых выполнены в соответствии с предпочтительным вариантом настоящего изобретения.
Фиг. 1C изображает различные типы пакетов, которые могут быть использованы для пересылки информации по сети, выполненной в соответствии с фиг. 1A-1B.
фиг. 2A изображает блок-схему первого типа программируемого коммутируемого узла, который может быть использован в системах, показанных на фиг. 1A-1B.
фиг. 3A, 3B, 3C, 3D и 3E изображают блок-схемы узлового коммутатора, показанного на фиг. 2A.
Фиг. 3F и 3G (7 изображают подробные съемы запоминающих устройств передатчика и приемника соответственно, показанных на фиг. 3B и 3C.
Фиг. 4A изображает блок-схему, иллюстрирующую функции приема и передачи, при использовании первого способа пересылки информации по межузловой сети, показанной на фиг. 1A-1B.
Фиг. 4B изображает блок-схему процесса, подробно иллюстрирующую операции при переносе данных коммутации каналов в соответствии со способом, проиллюстрированным на фиг. 4A.
Фиг. 4C и 4D изображают блок-схему, подробно показывающую операции при переносе как данных коммутации каналов, так и данных коммутации пакетов в соответствии со способом, проиллюстрированным на фиг. 4A.
Фиг. 4E изображает временную диаграмму, показывающую временные взаимоотношения между узлами при пересылке как данных коммутации каналов, так и данных коммутации пакетов.
Фиг. 5A изображает блок-схему, иллюстрирующую второй способ пересылки информации по межузловой сети, показанной на фиг. 1A-1B.
Фиг. 5B и 5C изображают блок-схему, показывающую подробные операции при пересылке как данных коммутации каналов, так и данных коммутации пакетов в соответствии со способом, проиллюстрированным на фиг. 5A.
Фиг. 6A и 6B изображают блок-схему расширяемой телекоммуникационной системы, показывающей, как может быть сохранена связь в случае отказа одного из программируемых коммутируемых узлов или части межузловой сети.
Сведения, подтверждающие возможность осуществления изобретения
На фиг. 1A и 1B показана расширяемая, полностью программируемая телекоммуникационная коммутационная система 2 большой емкости. Система 2 содержит хост-устройство 4 и множество программируемых коммутационных средств для динамического соединения или разъединения коммуникационных линий относительно различных портов. Эти программируемые коммутационные средства выполнены на основе программируемых узловых коммутаторов и образуют коммутируемые узлы 6a - 6h. Каждый из узлов 6a - 6h содержит интерфейс, в состав которого входит, в частности, хост-интерфейс, соединенный, с возможностью коммуникаций, с хост- устройством 4 с помощью локальной сети (LAN), например, Ethernet, или с помощью множества асинхронных соединений (RS-232) 8. Хотя показано только одно хост-устройство 4, использование LAN 8 для обеспечения коммуникаций хост-узел позволяет использовать множество хост-устройств для управления системой 2 (или ее частями) посредством конфигурирования каждого хост-устройства в качестве "клиента", а каждого узла в качестве "сервера". В целях лучшей ясности хост-интерфейсы узлов 6a и 6f-6h на чертежах не показаны.
Интерфейс каждого из узлов 6a-6h содержит также цифровые интерфейсы сеть/линия для соединения с общественной коммутационной телефонной сетью или с частной сетью 10. Термин "частная сеть" употребляется в широком смысле для обозначения любой сети или линии, или другого интерфейса, отличных от общественной коммутационной телефонной сети. Вновь, для лучшей ясности, интерфейсы сеть/линия узлов 6b-6e на чертежах не изображены. Как показано с помощью представительного узла 6g, интерфейсы сеть/линия данного узла могут включать подходящие интерфейсы для осуществления коммуникаций с использованием коммуникационных протоколов АТМ, Signalling System 7 (SS7), ISDN (цифровая сеть интегрального обслуживания), T1/robbed bit, E1/CAS или другие.
Узел 6g номинально обозначен как "мастер-узел A" (активный мастер-узел), а узел 6h номинально обозначен как "мастер-узел B" (мастер-узел в состоянии ожидания для резервирования). Линия синхронизации (1...n) проходит от активного мастер-узла 6g к каждому другому коммутируемому узлу, хотя некоторые такие линии для ясности не показаны. Как подробно описано ниже в связи с фиг. 3A - 3E, любой из узлов 6a-6h может быть сконфигурирован как активный мастер-узел. Однако в любой заданный момент времени может быть активен только один мастер-узел.
Узлы 6a-6h связаны посредством соответствующих средств для соединения узлов, представляющих собой межузловую сеть 12, обеспечивающую высокоскоростную широкополосную цифровую связь между узлами. Как показано на чертеже, межузловая сеть 12 может быть осуществлена с использованием кольца, делающего возможным обмен объединенной в пакеты информацией каждого из узлов 6a-6h с любым другим узлом, обслуживаемым сетью 12. Кольцо представляет собой среду для пересылки пакетированной информации в форме оптических сигналов, обеспечивающую один или большее количество каналов, каждый из которых может переносить всю указанную пакетированную информацию или какую-то ее часть. Межузловая сеть 12 может быть также осуществлена с помощью любого из множества других типов связей сетей, включая Ethernet или другие типы локальных сетей, сети беспроводной связи и общественные коммутационные телефонные сети (ATM/SONET). Использование общественной коммутационной телефонной сети в качестве межузловой сети 12 допускает разброс узлов по географически большой территории.
Общая структура пакета 14 для обмена информацией по межузловой сети 12 содержит контрольную часть 16, часть 18 с полезной нагрузкой и часть 19 статуса и контроля. Подробности различных структур пакетов для пересылки различных типов информации описаны ниже со ссылкой фиг. 1E.
Используя межузловую сеть 12, порт любого заданного узла может быть соединен с любым другим портом того же узла или с любым другим узлом на основе полностью неблокирующей системы. В этом предпочтительном варианте выполнения, со всеми восемью коммутируемыми узлами 6a - 6h, соединенными друг с другом с помощью межузловой сети 12, если вся ширина полосы пропускания межузловой сети 12 использована для пересылки данных коммутации каналов, система 2 в состоянии коммутировать (8 х 2048) = 16384 порта, что эквивалентно 8192 одновременным двухсторонним вызовам.
Следует понимать, что каждый узел 6a - 6h работает независимо относительно интерфейсов сеть/линии, оканчивающихся на нем. То есть, любой узел может быть удален или добавлен к межузловой сети 12 без ухудшения работы интерфейсов сеть/линия других узлов. Далее, коммутационная емкость каждого коммутируемого узла может установлена независимо от коммутационных емкостей других узлов (т.е. "маленькие" коммутаторы могут сочетаться с "большими" в той же межузловой сети 12). Таким образом, общая коммутационная емкость системы 2 может быть увеличена просто путем добавления дополнительных коммутируемых узлов к межузловой сети 12, при наличии очевидных ограничений, связанных со скоростью передачи данных в этой сети или в дополнительной межузловой сети 12, описанной ниже.
Общая работа системы 2 управляется хост-устройством 4, в качестве которого может быть в общем случае использован персональный компьютер, рабочая станция, компьютер высокой надежности или другой компьютер, на котором может работать программное обеспечение, соответствующее решению прикладных задач. Хост-устройство 4 и каждый из узлов 6a - 6h обмениваются сообщениями через соединения LAN/RS-232. Такие сообщения обычно используют для конфигурирования узлов, а также для функции прямой обработки вызовов, например, осуществление соединений и обеспечение коммуникационных услуг (т.е. обнаружение тонового сигнала, генерация тонового сигнала и работа в режиме конференций).
На фиг. 1C показаны предпочтительные варианты выполнения для нескольких пакетов, которые могут быть использованы для пересылки информации по межузловой сети 12. Пакет 3 данных коммутации каналов и пакет 5 обработки сообщений, в частности, голосовых, имеют похожую структуру, и каждый из них содержит контрольную часть, содержащую индикатор (B1) занятости, за которым следуют адрес и контрольная информация. Индикатор занятости может быть использован, как будет подробно описано ниже, для обозначения текущего статуса данного пакета, который может принимать значения "занят" (подразумевая что пакет не может быть использован узлом для передачи информации) или "свободен".
Адресная информация предпочтительно содержит адрес каждого узла - источника, откуда пакет отправлен, или узла назначения, которому этот пакет предназначается, или обоих указанных узлов. Каждый адрес (источника или пункта назначения) предпочтительно содержит "сетевой адрес", который уникально идентифицирует конкретную межузловую сеть. Такая идентификация необходима, потому что, как описано ниже, может быть использовано множество межузловых сетей для соединения тех же или других групп узлов. Каждый адрес (источника или пункта назначения) предпочтительно содержит также "узловой адрес", уникально идентифицирующий конкретный узел на конкретной межузловой сети. Дополнительная адресная информация может содержать явный "адрес порта" для уникальной идентификации конкретного порта или группы портов.
В общем случае пакеты 3 и 5, несущие данные коммутации каналов, требуют "адреса порта", так как такие данные подлежат распределению по множеству узлов и/или портов. В качестве альтернативы явному "адресу порта" (который в рамках большой коммутационной системы представлял бы собой тысячи байтов дополнительной информации, переносимой пакетом) может быть определен неявный "адрес порта" путем сохранения изначально заданного порядка данных коммутации каналов в полезной нагрузке. Например, пакеты 3 и 4 изображены имеющими достаточную емкость полезной нагрузки для пересылки общего объема в 2048 байт данных коммутации каналов. Когда эти байты помещены в полезной нагрузке, они предпочтительно расположены в порядке, точно соответствующем последовательности квантов времени на данном узле. Более конкретно, байт данных коммутации каналов, соответствующий "первому" кванту времени (квант времени (TS) 0) данного узла, помещен первым в полезную нагрузку, за которым следуют остальные байты в последовательном порядке. С помощью такой организации любой узел может загружать данные коммутации каналов или извлекать данные из полезной нагрузки и, посредством простого расчета положения конкретного байта относительно первого байта в полезной нагрузке, точно знать квант времени, соответствующий данному байту.
В отличие от этого, пакеты 7 и 9 в общем случае не требуют "адреса порта", так как информация, переносимая этими типами пакетов, не относится к данным коммутации каналов.
Дополнительная информация может содержаться в контрольной части 16 для указания типа пакета, длины пакета, номера последовательности пакета или другой информации.
Длина полезной нагрузки каждого типа пакета может варьироваться в зависимости от того, какой узел передает данный пакет. Например, емкость полезной нагрузки пакетов 3 и 5 может быть различной, так как они обеспечивают достаточную емкость для пересылки данных коммутации каналов до максимального количества портов, коммутируемых или обрабатываемых данным узлом. Таким образом, если конкретный узел в состоянии коммутировать или обрабатывать максимум 2048 портов, то узел предпочтительно передает пакеты 3 и 5 с полезной нагрузкой, имеющей объем до 2048 байт данных коммутации каналов. Аналогично, если другой узел в состоянии коммутировать только 512 портов, то этот узел предпочтительно передает пакеты 3 и 5 с полезной нагрузкой, имеющей объем до 512 байт данных коммутации каналов.
За частями полезной нагрузки всех типов пакетов предпочтительно следует информация статуса и управления (контроля), которая может содержать контрольную сумму или другую информацию для выявления ошибок и коррекции.
Пакет 7 данных коммутации пакетов и пакет обслуживания 9 похожи по структуре (их длина или объем полезной нагрузки являются переменными), за исключением того, что эти типы пакетов не переносят данных коммутации каналов, а предназначены, как описано ниже, для пересылки данных коммутации пакетов, отправленных из одной точки (источник) и предназначенных для пересылки в другую точку (пункт назначения) или к множеству отдельных точек ("рассылка"). Части статуса и контроля пакетов 7 и 9 могут содержать информацию, показывающую может ли узел - пункт назначения для данного пакета - принять пакет, или он занят в момент приема и принять пакет не в состоянии.
На фиг. 2A показаны основные функциональные компоненты варианта предпочтительного выполнения одного типа программируемого коммутируемого узла, который может быть использован в системах, показанных на фиг. 1A-1B. Цифровые или аналоговые интерфейсы сеть/линия оканчиваются рядом линейных карт 20 ввода/вывода. В предпочтительном варианте выполнения линейными картами 20 ввода/вывода могут оканчиваться интерфейсы сеть/линия, представляющие всего 2048 портов. При необходимости могут быть факультативно предусмотрены резервная карта 22 ввода/вывода и резервная шина 24 ввода/вывода для обеспечения непрерывной работы коммутируемого узла в случае отказа одной из линейных карт 20 ввода/вывода.
Средства, соединенные, с возможностью обмена данными, с коммутационными средствами 6 для образования интерфейса с одной или большим количеством общественных или частных сетей, включают ряд цифровых сетевых T1, E1, J1 или аналоговых канал/линия линейных карт 26, связанных с линейными картами 20 ввода/вывода через линии 28. Линейные карты 26 также взаимодействуют с резервными коммутационными шинами 30a и 30b. Вновь, если необходимо, факультативно может быть предусмотрена резервная линейная карта 32, связанная с 24 резервной линейной картой 22 ввода/вывода через резервные линии 34. Могут быть также предусмотрены другие типы интерфейсов сеть/линия, например, DS3, SONET или другие.
С помощью одной или большего количества многофункциональных карт 36 обработки цифровых сигналов (MFDSP-карт) обеспечиваются различные коммуникационные услуги, такие как обнаружение и генерация тонового сигнала, проведение конференций, подача записанных голосовых объявлений, анализ прохождения вызова, распознавание речи, адаптивная разностная импульсно-кодовая модуляция и многие другие. С помощью одной или большего количества карт 38 ISDN-24 обеспечивается сервис цифровой сети интегрального обслуживания. Могут быть также факультативно включены резервные многофункциональные MFDSP-карты 36 и резервные карты 38 ISDN-24. Подробности предпочтительной конструкции и работы карт 36 и 38, равно как и шин 30a и 30b для пересылки данных к портам и от них описаны в патенте США N 5349579, принадлежащем заявителю настоящего изобретения. Если конкретный узел снабжен одной или большим количеством карт 36 или 38, он может работать независимо от других узлов в смысле выполнения различных коммуникационных услуг.
Входящая в состав интерфейса кольцевая (сетевая) карта 40a ввода/вывода служит в качестве средства для передачи и приема сетевых данных между одной парой колец (обозначено: комплект A, Кольца 1 и 2), которые вместе обозначены как межузловая сеть 12a, и интерфейсом узлового коммутатора 44a, обозначенного как "локальная мастер-шина", значение которого будет описано ниже. Первый хост-интерфейс 42а обслуживает все коммуникации между хост- устройством 4 и узлом, показанным на фиг. 2A.
Вторая, резервная кольцевая (сетевая) карта 40b ввода/вывода служит аналогичным образом в качества средства для передачи и приема сетевых данных между резервной парой колец (обозначено: комплект B, кольца 3 и 4), которые вместе образуют вторую межузловую сеть 12b, и интерфейсом резервного узлового коммутатора 44b, который выполнен предпочтительно той же конструкции, что и узловой коммутатор 44a. Второй хост-интерфейс 42b обеспечивает соединение с хост-устройством 4. Для соединения между узловыми коммутаторами 44a и 44b предусмотрена связь 46. Связь 46 используется только для соединения узлового коммутатора, работающего в качестве локальной мастер-шины, с другим узловым коммутатором, работающим в качестве резервной локальной мастер-шины.
В предпочтительном варианте линейная карта 26 осуществляет функции обработки вызовов в режиме реального времени, требуемых интерфейсами сеть/линия, включая аналогово-цифровое преобразование, если это необходимо. Линейная карта 26 передает и принимает данные коммутации каналов с временным мультиплексированием по коммутационным шинам 30a и 30b. Каждый из узловых коммутаторов 44a и 44b, а также MFDSP-карты 36 и ISDN-24 карты 38 получают по шинам 30a и 30b данные коммутации каналов во все кванты времени от всех линейных карт 26. Каждый из узловых коммутаторов 44a и 44b, а также MFDSP -карты 36 и ISDN- 24 карты 38 могут под управлением локальной мастер-шины (т. е. узлового коммутатора 44a) передавать данные коммутации каналов к линейным картам 26 по шинам 30a и 30b во время предварительно определенных квантов времени. В дополнение, каждая из коммутационных шин 30a и 30b включает шину высокоуровневого протокола управления каналом, по которой процессоры узловых коммутаторов 44a и 44b и карты 36 и 38 обмениваются контрольными сообщениями.
Для удобства далее в описании термин "локальный порт" будет использоваться, применительно к данному узлу, относительно кванта времени, содержащего данные коммутации канала от линейной карты 26 ко всем узловым коммутаторам 44, картам 36 и 38 (если они имеются), или кванта времени, содержащего данные, переданные от любого узлового коммутатора 44, карт 36 или 38 к линейной карте 26. Термин "удаленный порт" будет использоваться, применительно к данному узлу, для обозначения локального порта другого узла.
В предпочтительном варианте выполнения каждый узел 6a-6h может осуществлять временную коммутацию до 2048 локальных портов. Таким образом, в этом варианте предпочтительного выполнения каждый из узловых коммутаторов 44а и 44b содержит временный коммутатор, способный коммутировать 2048 квантов времени. В соответствии с одним аспектом настоящего изобретения коммутационное запоминающее устройство каждого узлового коммутатора 44a и 44b должно быть достаточно большим только для соответствия максимальному количеству локальных портов, а не коммутационной емкости системы в целом. Значительное преимущество этого аспекта настоящего изобретения может быть оценено при повторном рассмотрении фиг. 1A и 1B. Как отмечено выше, предпочтительный вариант выполнения системы 2 в состоянии коммутировать всего 16384 порта. Однако коммутатор (узловой коммутатор 44a) в каждом из узлов 6a-6h должен содержать коммутационное запоминающее устройство, достаточное для коммутации 2048 локальных портов, а не 16384 портов системы в целом. Как описано более подробно ниже, это новая организация межузловой сети и ее возможность по пересылке данных коммутации каналов от одного узла к другому обеспечивает, как следствие, вторую ступень коммутации, создающую высокую общую емкость системы 2.
Конструкция выполнения узлового неблокирующего коммутатора 44a показана на фиг. 3A-3E. Он содержит средства для динамического соединения или разъединения коммуникационных линий относительно различных портов, представляющие собой центральный процессор 64. Процессор 64 вместе с запоминающим устройством произвольного доступа/постоянным запоминающим устройством (RAM/ROM) соединен с адресной шиной 114 процессора и шиной 116 данных центрального процессора. Центральный процессор 64 также соединен с шиной HDLC (высокоуровневый протокол управления каналом передачи данных), представляющей собой часть коммутационных шин 30a и 30b, и может, в зависимости от конфигурации узлового коммутатора 44a, который будет описан ниже, также быть соединенным с хост-устройством 4.
Система содержит также средства для временной коммутации информации, направляемой к портам или от них. В состав этих средств входят передатчик 66 и приемник 68 сетевых данных. Передатчик 66 сетевых данных связан с адресной шиной 114 и шиной 116 данных центрального процессора и с двумя блоками 78a и 78b обработки пакетов. Передатчик 66 сетевых данных также имеет связь для приема данных коммутации каналов для локальных портов по коммутационной шине 30a (резервная коммутационная шина 30b для ясности здесь не показана). Как будет объяснено ниже, в зависимости от режима работы передатчик 66 сетевых данных может принимать и осуществлять временную коммутацию данных, проходящих в направлении от линейной карты к коммутатору (LSDATA), или, наоборот, от коммутатора к линейной карте (SLDATA). Передатчик 66 содержит две адресные таблицы 96, 98, соответствующие кольцам 1 и 2 соответственно, локальный последовательный счетчик/массив 100 и запоминающее устройство 102 четырехпортового локального передатчика.
Приемник 68 сетевых данных связан с адресной шиной 114 и шиной 116 центрального процессора 64, а также с блоком 112 управления пространством коммутации, чей выходной сигнал передается по коммутационной шине 30a. Приемник 68 сетевых данных может совместно с блоком 112 управления пространством коммутации в зависимости от режима работы выводить данные коммутации канала, проходящие в направлениях SLDATA (пересылка данных от коммутатора к линейной карте) или LSDATA (пересылка данных от линейной карты к коммутатору), которые, например, противоположны направлению входных данных к передатчику 66. Приемник 68 содержит последовательный счетчик/массив 104, локальную таблицу 106 кванта времени, запоминающее устройство 108 трехпортового локального приемника, блок 110 перекодировки, запоминающее устройство 118 двухпортового локального приемника пакетов данных и последовательную таблицу 120.
В системе имеются также средства (70 - 84) для передачи и приема пакетированной информации. В их состав входит, в частности, высокоскоростной приемник 70a данных, который физически взаимодействует с кольцом 1 для приема информации в пакетной форме от этого кольца. В качестве приемника 70a предпочтительно используется микросхема-приемник HDMP-1014 производства компании Hewlett-Packard, которая является логической схемой с эмиттерной связью. Преобразующий блок 72a соединен с возможностью приема выходных сигналов приемника 70a и генерации выходных сигналов, совместимых с транзисторно-транзисторной логикой. Выходной сигнал преобразующего блока 72a подается на мультиплексор 74a, преобразующий 16-битовые данные, полученные от приемника 70a, в 32-битовый формат. Выходной сигнал от мультиплексора 74a направляется в запоминающее устройство 76a, обслуживающее сигналы "в порядке поступления", блок 92a управления пакетами и блок 94 выбора кольца. Блок 90a флага XF передачи соединен с блоком 92a управления. Выход запоминающего устройства 76a соединен с блоком 78a обработки пакетов. Блок 80a демультиплексора, преобразующий блок 82a и высокоскоростной передатчик 84a данных выполняют функции, являющиеся
дополнительными по отношению к функциям мультиплексора 74a, преобразующего блока 72a и приемника 70a данных соответственно. В качестве передатчика 84a предпочтительно используется микросхема передатчика HDMP-1012 производства компании Hewlett-Packard.
Отдельные, но идентичные схемы предусмотрены для образования интерфейса с кольцом 2 и передачи информации от кольца 2 и к кольцу 2. Для обозначения тех же элементов использованы те же номера позиций. Как описано ниже в связи с фиг. 6A и 6B, в течение отрезков времени, когда узловой коммутатор 44a работает в режиме "петли", выход передатчика 84b соединен со входом приемника 70a, как показано контуром с номером позиции 71а. Аналогично, вход приемника 70b соединен с выходом передатчика 84a, как показано номером позиции 71b.
Узловой коммутатор 44a содержит дополнительные компоненты для выполнения функций синхронизации, сгруппированных вместе как опции 65 мастер-узла и мастер-опции 71 локальной шины. Опции 65 мастер-узла (фиг. 3D) содержат межузловой блок 67 синхронизации и осциллятор 69 мастер-кольца. Блок 67 синхронизации создает опорные сигналы ref1...refn, каждый из которых подается на один другой коммутируемый узел (см. 1A-1B). Блок 67 синхронизации также генерирует сигнал синхронизации кадра узла и сигнал времени мастер-кольца, которые оба подаются к блокам 92a и 92b управления пакетами.
Мастер-опции 71 локальной шины (фиг. 3E) содержат управляющее устройство 73 локальной шины высокоуровневого протокола канала передачи данных и блок локальной синхронизации 75. Управляющее устройство 73 локальной шины высокоуровневого протокола канала передачи данных связано с адресной шиной 114 и шиной 116 данных центрального процессора и формирует ряд управляющих сигналов 1. . . n, которые подаются ко всем другим картам (т.е. к другим узловым коммутаторам, линейным картам, MFDSP-картам (многофункционального процессора обработки цифровых сигналов) и ISDN-24-картам (цифровой сети с комплексными услугами), связанным с данным узлом для управления доступом к шине высокоуровневого протокола передачи данных.
Блок 75 локальной синхронизации принимает два входных сигнала. Один входной сигнал является одним из опорных сигналов, обозначенных ref1...refn (если другой узловой коммутатор сконфигурирован как мастер-узел), или источником синхронизации контура (если узловой коммутатор, показанный на фиг 3A - 3D, сам сконфигурирован как мастер-узел). Сигнал синхронизации кадра к блоку 75 поступает или от межузловой сети (кольца) 12, или от одного из опорных сигналов ref1. ..refn (если другой узловой коммутатор сконфигурирован как мастер-узел). Блок 75 будет самостоятельно генерировать сигнал синхронизации кадра, если он сам сконфигурирован как мастер-узел.
Дальнейшие подробности конструкции запоминающего устройства 108 приемника и запоминающего устройства 102 передатчика показаны на фиг. 3F и 3G. Запоминающее устройство 102 передатчика организовано в виде двойных банков 122 и 126 данных коммутации каналов и двойных банков 124 и 128 постоянных областей. Аналогично, запоминающее устройство 108 приемника организовано в виде двойных банков 130 и 134 данных коммутации каналов и двойных банков 132 и 136 постоянных областей. Двойные банки данных коммутации каналов каждого запоминающего устройства работают совместно со своими соответствующими таблицами и счетчиками ко времени коммутации данных коммутации каналов. То есть, во время данного кванта времени байт данных коммутации каналов последовательно записывается в область запоминающего устройства одного из банков данных коммутации каналов, в то время как данные коммутации каналов, размещенные в другом банке данных коммутации каналов, читаются "выборочно". Термин "выборочно" используется в настоящем описании для обозначения процесса размещения адресов, переданных адресной таблицей. Во время чередующихся отрезков времени в 125 мкс роли банков данных коммутации каналов меняются местами, таким образом, меняя друг с другом кванты времени для осуществления временной коммутации.
Постоянные области каждого запоминающего устройства главным образом используются для размещения данных коммутации пакетов с помощью центрального процессора 64, хотя центральный процессор 64 имеет доступ ко всем областям каждого запоминающего устройства.
Конфигурация, синхронизация и инициализация
Прежде чем приступить к рассмотрению работы узлового коммутатора 44a, полезно понять, как каждый коммутатор может быть сконфигурирован для работы и каковы его функции в части синхронизации и инициализации системы. Следует понимать, что каждый программируемый коммутируемый узел 6a - 6h, как показано на фиг. 1A, 1B и 3A - 3E, должен содержать по меньшей мере один узловой коммутатор 44a, но может содержать и большее их количество. Следует также понимать, что в общем случае могут рассматриваться два типа синхронизации: межузловая сетевая синхронизация и синхронизация общественной коммутационной телефонной сети (или частной сети).
Каждый узловой коммутатор 44a предпочтительно выполнен с возможностью его конфигурирования с помощью программного обеспечения для его функционирования в качестве: (1) сочетания мастер-узла и мастер-локальной шины:
(2) только мастер-локальной шины; или
(3) ни в качестве мастер-узла, ни в качестве мастер-локальной шины, а просто в качестве "стандартного" коммутатора. Конфигурирование выполняют по следующим правилам. Для каждой межузловой сети 12, для любого заданного момента времени должен работать только один узловой коммутатор в качестве мастер-узла. Каков бы ни был узловой коммутатор, функционирующий в качестве мастер-узла, он может работать также в качестве мастер-локальной шины для этого узла. В пределах заданного узла для любого заданного момента времени должен работать только один узловой коммутатор в качестве мастер-локальной шины для этого узла.
Узловой коммутатор, работающий в качестве мастер-узла, выполняет следующие функции:
(1) обеспечение интерфейса между источником синхронизации контура и общественной коммутационной телефонной сетью (через блок 75) для битовой синхронизации цифровых сетей общественной коммутационной телефонной сети;
(2) генерация единых для всей системы пакетов обслуживания, которыми пользуются все другие узлы для кадровой синхронизации цифровых сетей общественной коммутационной телефонной сети (базирующейся на сигнале синхронизации кадра узла, сгенерированном блоком 67);
(3) генерация коммутационного опорного синхроимпульса (ref1...refn) для битовой синхронизации всех узлов, не являющихся мастер-узлами;
(4) факультативно: передача мастер-кадрового сигнала по ref1...refn;
(5) генерация мастер-синхроимпульса для межузловой сети (синхросигнал мастер-кольца);
(6) прерывание синхронизации сети (кольца): и
(7) поддержание целостности межузловой сети.
Узловой коммутатор, работающий в качестве мастер-локальной шины, выполняет следующие функции:
(1) обеспечение интерфейса для источника синхронизации или опорных сигналов ref1...refn контура общественной коммутационной телефонной сети от мастер-узла для битовой синхронизации цифровых сетей общественной коммутационной телефонной сети;
(2) обеспечение прохождения широких пакетов обслуживания системы, сгенерированных мастер-узлом для кадровой синхронизации цифровых сетей общественной коммутационной телефонной сети;
(3) соединение с хост-устройством;
(4) соединение со всеми другими картами в узле (другие узловые коммутаторы, линейные карты, карты многофункционального процессора цифровых сигналов, карты ISDN-24) по шине высокоуровневого протокола канала передачи данных (управляемого контрольными сигналами 1...n от управляющего устройства высокоуровневого протокола канала передачи данных); и
(5) генерация узлового синхроимпульса и кадра для всех других карт в узле (синхроимпульс локальной шины и кадровая синхронизация локальной шины от схемы 75).
Узловой коммутатор, работающий как стандартный коммутатор, выполняет следующие функции:
принятие синхроимпульса локальной шины и сигнала кадровой синхронизации от мастер-локальной шины.
Мастер-узел отвечает за инициализацию и конфигурацию системы, что включает проверку целостности и работоспособности межузловой сети 12 и, факультативно, назначение узлового адреса каждому узлу или опрос узлов для определения их предыдущих назначенных адресов. Как только узловой адрес назначен или определен, мастер-узел может опрашивать этот узел (с использованием пакетов обслуживания по межузловой сети 12) для получения информации о конфигурации, такой как тип узла, типы интерфейсов общественной коммутационной телефонной сети и/или протоколов, коммутационная емкость или другая информация. Мастер-узел может также выполнять функции обслуживания и административные функции. В дополнение, если для образования любой межузловой сети используется множество колец, мастер-узел может назначить каждому узловому коммутатору конкретное кольцо для передачи и приема пакетов. В некоторых вариантах выполнения коммутатор может дополнительно содержать одно или большее количество устройств обработки голосовых сообщений.
Обзор работы системы
Ниже, со ссылками на фиг. 1C, 1B и 3A - 3G, представлен обзор работы системы 17, т.е. различных вариантов способа пересылки информации между множеством узлов, соединенных с возможностью обмена данными межузловой сетью. Вначале будет дано объяснение, как происходит обработка данных коммутации каналов. Для целей этого обзора предполагается, что система 17 уже инициализирована.
LSDATA (или SLDATA), которые подаются на вход запоминающего устройства 102 передатчика (фиг. 3B), представляют байты данных коммутации каналов для локальных портов, обслуживаемых данным узлом. Эти байты записаны последовательно в банки 122 и 126 данных коммутации каналов (фиг. 3F). Соответственно, объемы этих банков данных эффективно определяют максимальное число квантов времени, которые могут быть коммутированы во времени узловым 20 коммутатором 44a. В целях этого обзора подразумевается, что каждый банк данных имеет емкость в 2048 байтов, имея в виду, что максимум 2048 локальных портов могут быть коммутированы во времени с помощью запоминающего устройства 102 передатчика.
Для того чтобы сделать эти "локальные" данные коммутации каналов (размещенные в запоминающем устройстве 102) доступными на каждом узле, обслуживаемом межузловой сетью 12, могут быть использованы различные способы.
В первом способе передатчик 66 и блок 78a обработки пакетов (подразумевается, что кольцо 1 - это кольцо, назначенное этому узлу для передачи пакетов) создают пакет с "пустой" полезной нагрузкой (т.е. полезная нагрузка не содержит данных коммутации каналов, за исключением данных от локальных портов, соединенных с другими локальными портами), но имеющий достаточную емкость для хранения 2048 байтов данных коммутации каналов. Передатчик 84a, таким образом, передает "пустой" пакет. Если мы предположим, например, что "пустой" пакет передается с помощью узла 6c (см. фиг. 1D), то узел 6d будет первым из оставшихся узлов, принимающим этот пакет (т.е. первый соседний узел в направлении потока данных по кольцу является первым узлом, принимающим "пустой" пакет).
В узле 6d "пустой" пакет принимается приемником 70a (фиг. 3A) и в конечном итоге проходит по блоку 78a обработки пакетов. Блок 78a обработки пакетов принимает данные коммутации каналов, избирательно считываемые из банков 122 и 126 данных коммутации каналов (см. фиг. 3A) в качестве реакции на адреса, поставляемые адресной таблицей 96 (кольцо 1). Иными словами, с помощью адресов и устройства управления, их поставляющего, адресная таблица 96 вызывает конкретные байты (возможно, все байты, или ни одного байта) "локальных" данных коммутации каналов, размещенных в банках 122 и 126, для того чтобы быть избирательно прочитанными из этих банков и направленными в блок 78a обработки пакетов. Аналогичный процесс происходит параллельно с адресной таблицей 98 (кольцо 2), запоминающим устройством 102 и блоком 78b обработки пакетов.
Блок 78a обработки пакетов вставляет (помещает) "локальные" данные коммутации каналов, которые он получает (если имеются), в область полезной нагрузки полученного "пустого" пакета, в то время как этот пакет проходит к передатчику 84a для передачи к следующему узлу на межузловой сети 12. Этот процесс повторяется таким образом, что каждый другой узел, подряд, имеет возможность помещения своих собственных данных коммутации каналов в область полезной нагрузки пакета, берущего начало на узле 6c. Если конкретный узел не имеет "локальных" данных коммутации каналов для помещения (вставки) в полезную нагрузку, принятый пакет проходит к следующему узлу в неизмененном виде. В конечном итоге, пакет, который был отправлен "пустым", проходит по всему кольцу пересылки и возвращается "полным" в узел, из которого он был отправлен. В этом узле (6c) данные коммутации каналов от полезной нагрузки "полного" пакета проходят через блок 94 выбора кольца, последовательно записанные в запоминающее устройство 108 приемника и затем скоммутированные по времени как LSDATA и SLDATA. Этот способ называют "пустой отправлен/заполненный вернулся", или ESFR для краткости.
Действия согласно способу ESFR повторяются на каждом следующем узле, который в свою очередь, передает "пустой" пакет и получает "заполненный" возвращенный пакет (на назначенном узлом кольце), тем самым делая возможным эффективную пересылку к любому другому порту этого же или другого узла "локальных" данных коммутации каналов, отправленных из любого порта узла. Все данные коммутации каналов предпочтительно передаются в течение менее чем 125 мкс для того, чтобы избежать потери дискретности. Как будет объяснено ниже, следует также понимать, что способ ESPR может быть использован для широкой рассылки или передачи информации, отправленной из одного порта к более чем одному другому порту.
Во втором способе идея состоит в том, что каждый узел, в свою очередь, отправляет (передает) пакет с "полной" полезной нагрузкой, который затем возвращается "пустым". Таким образом, сокращенное название этого способа - "Заполненный отправлен/пустой вернулся", или способ FSER. В способе FSER все "локальные" данные коммутации каналов, размещенные в банках 122 и 126 данных коммутации каналов запоминающего устройства 102 передатчика, последовательно считываются и передаются в блок 78a обработки пакетов. Создается "заполненный" пакет, чья полезная нагрузка содержит все "локальные" данные коммутации каналов для данного узла. "Заполненный" пакет передается с помощью передатчика 84a и принимается первым смежным узлом. Данные, содержащиеся в полезной нагрузке, выборочно извлекаются и проходят через блок выбора 94 кольца к приемнику 68. Эти данные затем выборочно записывают в банках 130 и 134 данных запоминающего устройства 108 приемника. Этот процесс повторяют до тех пор, пока каждым узлом не будет отправлен "заполненный" пакет, принимаемый каждым другим узлом, достигая тем самым того же общего результата, обеспечивая эффективную передачу "локальных" данных коммутации каналов, отправленных из любого порта на любом узле, к любому другому порту того же или другого узла. В дополнение к передаче данных коммутации каналов между узлами, межузловая сеть 12 может также быть использована для передачи данных коммутации пакетов. Примерами данных коммутации пакетов являются данные сохранения информации, нужной для управления самой коммутационной системой, пакетами Х.25, LAPB (процедура сбалансированного доступа к каналу) или LAPD. Данные коммутации пакетов появляются на выходе блока 94 выбора кольца, но они записываются в запоминающее устройство 118 приемника пакетов, а не в запоминающее устройство 108. Как только данные коммутации пакетов будут записаны в запоминающее устройство 118, они становятся доступными центральному процессору 64 через шину 116 данных центрального процессора.
Способ ESFR
Ниже описаны дополнительные подробности, связанные со способом ESFR, со ссылками на фиг. 3A - 3E, 4A и 4B. Следует понимать, что блок- схема процесса, показанного на фиг. 4B, представляет операции, которые выполняются параллельно на каждом узле с помощью блоков 92a и 92b управления пакетами, блоков 78a и 78b обработки пакетов и соответствующих схем. Следует иметь в виду, что когда используется способ ESFR, "пустые" пакеты передаются только на одном кольце и принимаются только на одном кольце (назначенном во время инициализации). Для этого примера предполагается, что узел 6i на фиг. 4A готов к передаче "пустого" пакета по межузловой сети 12 с целью сбора данных коммутации каналов от других узлов, включая узел 6j.
Процесс начинается стартом перезапуска (шаг 138 - см. фиг. 4C), который происходит в состоянии, в котором узел по существу ожидает прибытия кадра (содержащего пакет) по межузловой сети 12. На шаге 140 происходит определение того, выявлено ли начало кадра. Если начало кадра не выявлено, то процесс возвращается к точке 138 старта. Альтернативно, если начало кадра выявлено, т.е. пакет получен узлом 6i, то на шаге 142 содержание контрольной части пакета проверяется для определения того, "занят" ли пакет. Статус пакета "занят" или не занят ("свободен") отображается индикатором (BI) занятости в контрольной части пакета (фиг. 1E). Если пакет не занят, т.е. он "свободен" для использования узлом 6i, процесс проходит по шагу 144, на котором определяется, открыто ли окно данных коммутации каналов для узла 6i. "Окно данных коммутации каналов" относится к назначенному отрезку времени, организованному для всех узлов для передачи "пустых" пакетов данных коммутации каналов.
Если окно данных коммутации каналов не открыто, т.е. сейчас не подходящее время для передачи "пустого" пакета данных коммутации каналов узлом 6i, то процесс возвращается к точке старта 138. Если окно данных коммутации каналов открыто, то процесс переходит к шагу 146, в которой узел 6i начинает процесс передачи пакета путем передачи "занятого" контрольного слова по сети 12, для того чтобы получить контроль над пакетом. На следующем шаге 150 узел 6i продолжает процесс передачи "пустого" пакета по сети 12. Однако следует заметить, что на шаге 148 узел 6i должен поместить "локальные данные соединений" (если есть) в полезную нагрузку "пустого" пакета при одновременном продолжении передачи. Термин "локальные данные соединений" относится к данным коммутации каналов, которые одновременно отправляются из одного или большего количества локальных портов данного узла, и направляются в один или большее количество локальных портов данного узла, посылающего "пустой" пакет. Иными словами, локальные данные соединений являются данными коммутации каналов, подлежащими коммутации от одного локального порта к другому локальному порту того же самого узла по межузловой сети 12. Таким образом, в этом примере, если узел 6i имеет какие-либо локальные порты, соединенные друг с другом, данные коммутации каналов, относящиеся к этим портам, будут вставлены в полезную нагрузку "пустого" пакета на шаге 148. В результате, узел 6i (или любой другой узел) передает локальные данные соединений самому себе. Далее, на шаге 152, устанавливается флаг XF передачи в блоке 90a (фиг. 3A), чтобы служить в качестве напоминания узлу 6i о том, что он передал "пустой" пакет по сети 12, и что в будущем нужно получить "заполненный" пакет.
Затем процесс возвращается к точке 138 старта в ожидании получения другого кадра. Как только будет обнаружено начало другого кадра и будет обнаружено, что пакет в блоке данных "занят" (не свободен), процесс продолжается шагом 154, где определяется, установлен ли флаг передачи. Если флаг не установлен, т.е. только что полученный пакет отправлен из другого узла, то процесс протекает по шагу 162, где проверяется адресная информация, содержащаяся в контрольной части пакета, для определения узла - источника пакета. Таким образом, в этом примере, когда узел 6j фактически получает "пустой" пакет, передаваемый узлом 6i, процесс пойдет по шагу 162, так как флаг передачи узла 6j не установлен. В этой точке, узел 6j должен вставить соответствующие данные коммутации каналов в полезную нагрузку пакета. В этом примере соответствующие данные коммутации каналов являются данными, относящимися к любому из локальных портов узла 6j, которые уже соединены с любым из локальных портов узла 6i (или очень скоро будут соединены). Как показано на фиг. 4A, это осуществляется с помощью центрального процессора 64a в узле 6j, за счет того, что адрес и контрольные данные записываются в одну из адресных таблиц 96, 98, так что соответствующие данные коммутации каналов записываются выборочно в полезную нагрузку полученного пакета на шаге 164 (фиг. 4B). Этот шаг представляет начало второй ступени коммутации "узел к узлу", выполняемой системой 17. Информация о статусе ошибки размещается в части статуса и управления пакета на шаге 165.
Затем, при нормальном течении процесса, узлом 6i принимается "заполненный" вернувшийся назад пакет. Если это так, то процесс проходит по шагам 138, 140 и 142 к шагу 154, где вновь определяется (на этот раз в узле 6i) статус флага передачи. Так как узел 6i предварительно установил свой флаг передачи (на шаге 152, когда передавался "пустой" пакет), то узел определяет, что флаг действительно установлен. На шаге 156 индикатор занятости в контрольной части пакета изменен, так что пакет, проходя к следующему узлу, имеет статус "свободен" и может быть использован другим узлом. Данные коммутации каналов, содержащиеся в полезной нагрузке, состоящие из любых локальных данных соединений, вставленных на шаге 148 вместе со всеми данными коммутации каналов, вставленными каждым другим узлом (включая узел 6j), записываются затем последовательно в запоминающее устройство 108 приемника. Окончательно, флаг передачи снимается на шаге 160 и проверяется информация статуса ошибки на шаге 161, прежде чем процесс вернется к точке старта 138. Когда данные коммутации каналов в конечном итоге отключаются от запоминающего устройства 108, они обрабатываются блоком 110 перекодировки, работающим обычным образом с выполнением преобразований A-law в μ-law (или наоборот).
На фиг. 4C и 4D показан вариант выполнения способа ESFR, в котором между узлами могут передаваться как данные коммутации каналов, так и данные коммутации пакетов. Начальные шаги те же самые, как это было показано на фиг. 4B. Однако следует заметить, что на шаге 144, когда конкретный узел определяет, что окно данных коммутации каналов не открыто, т.е. его данные коммутации каналов уже переданы (в текущем кадре в 125 мкс), процесс переходит к шагу 155 вместо его немедленного возврата в точку старта 138. На шаге 155 происходит определение того, готов ли для передачи "пустой" пакет данных, который будет использован для сбора информации коммутации пакетов с других узлов, и готово ли запоминающее устройство приемника. Если "пустой" пакет данных не готов или запоминающее устройство приемника заполнено (не готово), процесс возвращается в точку старта 138. Во всех других случаях процесс переходит к шагу 157, где заменяется информация в части управления для обозначения того, что пакет "пустой". "Пустой" пакет затем передается на шаге 159, флаг передачи устанавливается на шаге 161, и процесс возвращается к точке старта 138.
Когда происходит получение следующего кадра, процесс проходит через шаги 138, 140 и 142. Если полученный пакет (внутри кадра) обозначен как "занятый", процесс проходит к шагу 154, где проверяется статус флага передачи. Если флаг передачи установлен, т.е. узел, принимающий этот пакет до этого отправил также "пустой" пакет для сбора данных коммутации каналов (на шагах 148-152), то процесс переходит к шагу 166, где происходит определение, какого типа пакет был сейчас получен, вновь путем проверки информации в контрольной части пакета. Тип пакета показывает, содержит ли полезная нагрузка пакета данные коммутации каналов, данные коммутации пакетов или, возможно, другие типы данных (например, данные обработки сообщений или служебные данные). Если пакет относится к тому типу, который несет данные коммутации пакетов, процесс переходит к шагу 168, где определяется, заполнен ли пакет. Если пакет не заполнен, это означает, что ни один другой узел не содержит никаких данных коммутации пакетов для передачи (по меньшей мере, в течение времени прохождения пакета по всей сети) узлу, который первоначально отправил (и сейчас получил) этот пакет. В этом случае, флаг передачи снимается на шаге 171 и процесс возвращается к точке 138 старта. С другой стороны, если было установлено, что пакет заполнен на шаге 168, то процесс переходит к шагу 170, где имеется накопительный счетчик буфера. Затем пакет копируется в запоминающее устройство 118 приемника пакетов данных (фиг. 3C), где он временно размещается в ожидании дальнейшей обработки. Флаг передачи затем снимается на шаге 174. Наконец, центральный процессор 64b получает информацию о прибытии данных коммутации пакетов при прерывании на шаге 176.
Рассматривая вновь шаг 154, если было определено, что флаг передачи не установлен, т. е. , что пакет, который только что был получен, отправлен из другого узла, то процесс переходит к шагу 182, где подобно шагу 166, происходит определение типа пакета. Если пакет относится к типу, несущему данные коммутации пакетов, то процесс переходит к шагу 188, где происходит определение того, является ли данный пакет "пустым". Если пакет не является "пустым", т.е. другой узел уже заполнил полезную нагрузку, пакет проходит к следующему узлу и процесс возвращается к точке 138 старта.
Альтернативно, если пакет "пустой", т. е. был изначально отправлен "пустой" пакет другим узлом с целью сбора данных коммутации пакетов и никакой другой узел не "заполнил" полезную нагрузку пакета, то процесс переходит к шагу 190, где получивший пакет узел определяет, содержит ли этот пакет данные коммутации пакетов для передачи к узлу-отправителю пакета. Если нет, "пустой" пакет проходит к следующему узлу и процесс возвращается к точке старта 138. Если да, пакет маркируется как "заполненный" на шаге 194 и "заполненный" пакет передается к следующему узлу на шаге 194.
На фиг. 4E показана временная диаграмма, показывающая вариант предпочтительного выполнения для распределения ширины полосы межузловой сети 12 для обеспечения передачи всеми узлами как данных коммутации каналов, так и данных коммутации пакетов. В этом варианте переносы данных по межузловой сети производятся в пределах окон кадровой синхронизации, каждое из которых имеет продолжительность в 125 мкс. Отрезок времени 125 мкс является предпочтительным, так как он соответствует частоте дискретизации (8 кГц) большинства широко используемых сетевых протоколов, имея в виду, что значения данных коммутации каналов могут меняться каждые 125 мкс. Следовательно, путем выполнения требования того, что все межузловые переносы данных коммутации каналов происходят за время, меньшее чем 125 мкс, межузловая сеть гарантирует, что все такие данные будут перенесены раньше, чем изменятся какие-либо значения. Это также позволяет межузловой сети 12 работать асинхронно относительно общественной коммутационной телефонной сети (или частной сети) 10.
В пределах каждого окна кадровой синхронизации примерно половина 20 имеющегося времени (т. е. 62,5 мс) распределена для всех узлов карусельным способом, для пересылки данных коммутации каналов к другим узлам. Такие переносы могут выполняться с использованием одного из способов - ESFR или FSER, или обоих одновременно, и могут работать с любыми типами пакетов, несущих данные коммутации пакетов (или даже данные коммутации каналов, используемые для других целей), включая пакеты 5, 7 и 9 на фиг 1E. Оставшееся время в пределах каждого окна кадровой синхронизации распределено для узлов для пересылки данных коммутации пакетов (если имеются) к другим узлам. Следует отметить, что "приоритет" имеют данные коммутации каналов, так как все такие данные со всех узлов пересылаются раньше, чем пересылаются любые данные коммутации пакетов.
Способ ESFR может также быть использован для "рассылки" данных коммутации каналов к множеству портов того же узла или по многим узлам. Например, если имеются "локальные" данные коммутации каналов, предназначенные для рассылки во множество локальных портов, множество копий этих данных просто вставляют в полезную нагрузку "пустого" пакета на шаге 148 (фиг. 4B и 4C). Иными словами, множество копий байтов данных, предназначенных для рассылки, выборочно размещаются в полезной нагрузке в местах, соответствующих локальным портам, которые предполагаются к приему сообщений рассылки. Аналогично, если данные коммутации каналов от удаленного порта предназначены для рассылки, множество копий этих данных вставляются на шаге 164 в места в полезной нагрузке (т.е. для каждого узла, в котором есть порт, предполагаемый к получению сообщения рассылки, нужен один пакет/полезная нагрузка) соответствующим портам назначения.
Итак, как показано на фиг. 4A, когда для пересылки данных используется способ ESFR, каждый узел карусельным образом передает "пустой" пакет с целью сбора данных от всех других узлов, обслуживаемых межузловой сетью 12. Получив "пустой" пакет, переданный другим узлом, каждый узел выборочно считывает данные из одного из своих блоков запоминающего устройства и помещает их в полезную нагрузку "пустого" пакета. Когда теперь "заполненный" пакет в конце концов вернется на узел, откуда он был отправлен, данные, содержащиеся в полезной нагрузке, последовательно будут записаны в одно из запоминающих устройств приемника узла. Этот шаг означает завершение второй ступени коммутации (в одном направлении от узла к узлу), выполненной системой.
Способ FSER и комбинированный способ ESFR/FSER
Дальнейшие подробности способа FSER будут описаны со ссылками на чертежи фиг. 5A-5C в контексте варианта предпочтительного выполнения "комбинированного" способа, в котором способ FSER использован для пересылки данных коммутации пакетов, а способ EFSR - для пересылки данных коммутации каналов. Для большей ясности, части чертежей фиг. 5B и 5C, представляющие способ FSER, показаны пунктирными линиями. Части фиг. 5B и 5C, представляющие способ EFSR, находятся снаружи пунктирных линий и идентичны шагам, представленным на фиг. 4C и 4D, обозначенными теми же номерами позиций.
На шаге 144 (фиг. 5B), если было определено, что окно данных коммутации каналов не открыто, т.е. не настало соответствующее время для сбора данных коммутации каналов с других узлов, процесс переходит к шагу 196, где происходит определение, готов ли "заполненный" пакет данных (содержащий данные коммутации пакетов) для передачи на другой узел. Если нет, процесс возвращается к точке старта 138 в ожидании прихода другого кадра. Если пакет данных готов, т. е. полезная нагрузка пакета содержит данные коммутации пакетов, а соответствующий (узловой) адрес пункта назначения размещен в контрольной части пакета, пакет маркируется как "заполненный" на шаге 198. "Заполненный" пакет данных затем передается на шаге 200. Затем, на шаге 202 устанавливается флаг передачи и процесс возвращается к точке 138 старта в ожидании прихода другого кадра.
Теперь рассмотрим, что происходит, когда "заполненный" пакет данных, переданный одним узлом, принимается другим узлом. Процесс проходит через шаги 138, 140 и 142 к шагу 154 (фиг. 5C), где происходит определение того, установлен ли на принимающем узле флаг передачи. Если флаг не установлен, т. е. пакет отправлен из другого узла, процесс переходит к шагу 182, где определяется, в этом примере, что пакет содержит данные коммутации пакетов, в противоположность к данным коммутации каналов. Затем, на шаге 214, проверяется узловой адрес пакета для определения того, является ли принимающий узел узлом-получателем пакета. Если нет, процесс возвращается к точке старта 138. Если да, принимающий узел проверяет, готово ли запоминающее устройство 118 приемника (фиг. 3A) к приему пакета на шаге 216. Если запоминающее устройство 118 не готово к приему (например, потому что запоминающее устройство в текущий момент заполнено), процесс переходит к шагу 220, где информация вставляется в часть статуса и контроля пакета для обозначения того, что узел был занят и был не в состоянии принять пакет. Затем процесс возвращается к точке старта 138.
Альтернативно, на шаге 216, если запоминающее устройство 118 готово к приему пакета, процесс переходит к шагу 218, где пакет копируется в указанное запоминающее устройство. Затем, на шаге 222 центральный процессор 64b при прерывании получает информацию о прибытии пакета данных коммутации пакетов.
Наконец, рассмотрим ситуацию, когда "заполненный" пакет данных возвращается в узел, который его отправлял. В этом случае процесс переходит от шага 138 к шагу 154, где определяется, что флаг передачи действительно установлен. На шаге 156, индикатор занятости пакета выключается (изменяется на "свободен"), затем следует определение на шаге 166, какого типа данные содержит пакет. В этом примере пакет содержит данные коммутации пакетов, поэтому процесс переходит к шагу 204, где флаг передачи удаляют. Затем, на шаге 206 происходит определение, основанное на информации, содержавшейся в части статуса и контроля пакета, занят ли узел, которому пакет адресован. Если да, т. е. пакет не был принят узлом - пунктом назначения, процесс возвращается к точке старта 138, с тем чтобы предпринять еще одну попытку доставки пакета к пункту назначения. Если нет, запоминающее устройство передатчика пакета (постоянные области 124 и 128 на фиг. 3F) маркируется как пустое. Затем на шаге 210 определяется, принимается ли пакет узлом, которому он адресован. Если да, процесс возвращается к точке старта 138. Если нет, прежде чем вернуться к точке старта 138, на шаге 212 регистрируется ошибка.
Следует ясно понимать, что способ FSER может быть использован для пересылки данных коммутации каналов, а также данных коммутации пакетов. Когда требуется выполнить пересылку данных коммутации каналов, каждый узел, в свою очередь, направляет "заполненный" пакет, чья полезная нагрузка заполнена данными коммутации каналов (для всех локальных портов), которые считываются последовательно из запоминающего устройства 102 передатчика (фиг. 5A). Так как данный узел получает, в свою очередь, "заполненный" пакет, переданный каждым другим узлом, данный узел берет соответствующие данные из полезной нагрузки каждого такого пакета и выборочно записывает данные в запоминающее устройство 108 приемника в ответ на адреса, поставляемые последовательным счетчиком/массивом 104. Следует отметить, что адреса, поставляемые последовательным счетчиком/массивом 104, являются "глобальными" адресами, (т.е. сочетанием неявных адресов портов и адресов узловых устройств), т.е. каждый из них может представлять любой порт любого узла в системе в целом. Поскольку данные коммутации каналов, соответствующие этим глобальным адресам, записаны в областях запоминающего устройства 108 (соответствующих локальным портам), должен быть произведен сдвиг адреса, для того чтобы в конечном итоге прочитать эти данные из запоминающего устройства 108 в правильном порядке. Блок 105 сдвига адресной таблицы получает в качестве входных данных адреса, поставляемые последовательным счетчиком/массивом 104 запоминающего устройства 108, где размещены данные. Адреса, поставляемые локальным блоком 107 адресной таблицы, используются для выбора постоянных областей в пределах запоминающего устройства 108 и значений символов из блока 110 перекодировки.
Подобно способу ESFR, способ FSER может быть использован для рассылки данных коммутации каналов к множеству портов. На данном одном узле это осуществляется путем создания множества копий данных, предназначенных для рассылки от нагрузки "полного" пакета и выборочной записи таких данных в одну или большее количество областей запоминающего устройства соответствующих приемников этих узлов, тем самым выполняя рассылку к множеству узлов.
Соединение вызовов между узлами
После представления различных альтернативных вариантов для пересылки информации по межузловой сети 12 теперь будет описан конкретный пример того, как при вызове происходит соединение между портами, которые физически ассоциированы с различными узлами. Следует иметь в виду, что, как показано на фиг. 1A, 1B, 2A и 3A-3E, каждый узел 6a-6h обязательно содержит, по меньшей мере, один узловой коммутатор 44a. Мы будем полагать, что вызывающая сторона, чья линия стыкуется с узлом 6h, снимает трубку и набирает номер, соответствующий вызываемой стороне, чья линия стыкуется с узлом 6e. Хост- устройство 4 получает сообщение "запрос на обслуживание" (которое может содержать цифры набранного номера) от центрального процессора 64 в узле 6h. Хост-устройство 4 определяет, что между узлами 6h и 6e должно быть установлено соединение и, в ответ, отправляет сообщение "соединения" (с информацией адреса порта) к обоим центральным процессорам 64 узлов для их соединения друг с другом.
Теперь рассмотрим, что происходит на узле 6h. Данные коммутации каналов от линии вызывающей стороны первоначально проходят, через шину 30a, от одной из линейных карт 20 к узловому коммутатору 44a. Для целей этого примера мы будем в дальнейшем полагать, что данные размещены в запоминающем устройстве 102 передатчика. Затем, если используется способ ESFR, когда "пустой" пакет, отправленный узлом 6e по межузловой сети 12, принимается узлом 6h, данные коммутации каналов от вызывающей стороны имеют временную коммутацию за пределами запоминающего устройства 102 и вставляются в полезную нагрузку этого пакета, который в конечном итоге возвратится на узел 6e. В этой точке существует одностороннее соединение коммутации каналов между вызывающей стороной (узел 6h) и узлом 6e, "временная" часть, выполняется с помощью запоминающего устройства 102 передатчика, и часть второй ступени выполняется с помощью межузловой сети 12. Затем приемник 68 узла 6e получает свой возвратившийся "заполненный" пакет, содержащий данные коммутации каналов от вызывающей стороны. Эти данные имеют временную коммутацию через запоминающее устройство 108 приемника и проходят через шину 30a к линейной карте 20, с которой стыкуется вызывающая сторона. В этой точке полное одностороннее соединение существует между вызывающей стороной (узел 6h) и вызываемой стороной (узел 6e). Точно такой же процесс повторяется, в обратном направлении, для установления другой половины желаемого двухстороннего соединения.
Альтернативно, может быть использован способ FSER для соединения того же вызова. В этом случае передатчик 102 в узле 6h осуществляет временную коммутацию данных коммутации каналов вызывающей стороны в "заполненный" пакет, который передается по межузловой сети 12. Узел 6e, получив "заполненный" пакет, извлекает данные коммутации каналов вызывающей стороны, размещает данные в запоминающем устройстве 108 приемника, и переключает данные на линейную карту, с которой стыкуется вызываемая сторона. Вновь, процесс выполняется в обратном направлении для установления второй половины двухстороннего соединения.
На фиг. 6A и 6B показана расширяемая телекоммуникационная система 17 (фиг. 1C и 1B), модифицированная для иллюстрации эффекта отказа программируемого коммутируемого узла или части межузловой сети 12. В этом примере узел 6f вышел из строя, или часть межузловой сети 12 вышла из строя (или, возможно, была обнаружена неисправность и узел был выведен из эксплуатации хост-устройством 4). Узлы 6e и 6g, являющиеся соседними, по отношению к вышедшему из строя узлу 6f, начинают работать в режиме "обратной петли". В режиме обратной петли схемы, которые в нормальном режиме используются для приема информации от одного кольца, соединяются со схемами, которые в нормальном режиме используются для приема информации от другого кольца, как показано номерами 71a и 71b на фиг. 3A, 6A и 6B. Таким образом, когда данный узел работает в режиме обратной петли, вся информация, принимаемая на одном кольце, немедленно передается на другое кольцо. Конкретный узел может получить инструкции от хост-устройства 4 для перехода работы в режим обратной петли или, альтернативно, такая работа может быть начата автоматически как реакция на истечение времени в "сторожевом" таймере.
С помощью режима обратной петли и того, что используются два кольца, вместо одного, для образования межузловой сети 12, ошибка, вызванная отказом узла 6f, эффективно изолируется от остальной части системы 17. То есть, вследствие отказа узла 6f от потери обслуживания страдают только локальные порты этого узла.
Приведенное описание ограничено конкретными вариантами выполнения настоящего изобретения. Очевидно, однако, что в изобретение могут быть внесены вариации и модификации с достижением некоторых или всех преимуществ изобретения. Все подобные вариации и модификации, соответствующие духу и в рамках изобретения, должны охватываться формулой изобретения.
название | год | авторы | номер документа |
---|---|---|---|
КОММУТАТОР ТЕЛЕКОММУНИКАЦИОННЫХ СИСТЕМ, СОДЕРЖАЩИЙ ПРОГРАММИРУЕМЫЕ СЕТЕВЫЕ ПРОТОКОЛЫ, СПОСОБ ФУНКЦИОНИРОВАНИЯ ЭТОГО КОММУТАТОРА И СПОСОБ РАЗРАБОТКИ ПРОГРАММИРУЕМЫХ СЕТЕВЫХ ПРОТОКОЛОВ | 1994 |
|
RU2150791C1 |
РАСПРЕДЕЛЕННАЯ СИСТЕМА СВЯЗИ С КОММУТАЦИЕЙ ПАКЕТОВ ДЛЯ СТАЦИОНАРНЫХ И ФИКСИРОВАННЫХ АБОНЕНТОВ | 2003 |
|
RU2255429C1 |
УСОВЕРШЕНСТВОВАННЫЙ СПОСОБ И УСТРОЙСТВО ДЛЯ ДИНАМИЧЕСКОГО СМЕЩЕНИЯ МЕЖДУ ПАКЕТАМИ МАРШРУТИЗАЦИИ И КОММУТАЦИИ В СЕТИ ПЕРЕДАЧИ ДАННЫХ | 1997 |
|
RU2189072C2 |
УСТОЙЧИВОЕ ПРИКРЕПЛЕНИЕ К СЕТЯМ, ПОДДЕРЖИВАЮЩИМ ТЕХНОЛОГИЮ МЕЖСЕТЕВОГО СОПРЯЖЕНИЯ ПО ПРОТОКОЛУ МАРШРУТИЗАЦИИ ПО СОСТОЯНИЮ КАНАЛА СВЯЗИ ПОСТАВЩИКА (PLSB) | 2009 |
|
RU2530312C2 |
АВТОМАТИЧЕСКОЕ УСТАНОВЛЕНИЕ ИЗБЫТОЧНЫХ ТРАКТОВ С ОСТОРОЖНЫМ ВОССТАНОВЛЕНИЕМ В СЕТИ ПАКЕТНОЙ КОММУТАЦИИ | 2014 |
|
RU2636689C2 |
СПОСОБ ПАКЕТНОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ В СЕТИ СВЯЗИ | 2003 |
|
RU2258318C2 |
СПОСОБ И УСТРОЙСТВО ГИБРИДНОЙ КОММУТАЦИИ РАСПРЕДЕЛЕННОЙ МНОГОУРОВНЕВОЙ ТЕЛЕКОММУНИКАЦИОННОЙ СИСТЕМЫ, БЛОК КОММУТАЦИИ И ГЕНЕРАТОР ИСКУССТВЕННОГО ТРАФИКА | 2014 |
|
RU2542906C1 |
Реконфигурируемый вычислительный модуль | 2018 |
|
RU2686017C1 |
МУЛЬТИСЕРВИСНЫЙ МАРШРУТИЗАТОР | 2019 |
|
RU2710980C1 |
МОБИЛЬНЫЙ УЗЕЛ ПОДВИЖНОЙ СВЯЗИ | 2005 |
|
RU2293442C1 |
Предложена открытая, высокоскоростная широкополосная цифровая коммуникационная сеть для соединения многих программируемых телекоммуникационных коммутаторов с образованием коммутационной системы большой емкости и не разбитой на блоки. Каждый сетевой коммутационный узел содержит схемные блоки для передачи и приема объединенной в пакеты переменной длины информации по сети, тем самым обеспечивая каждому узлу возможность получения информации от всех других узлов и отправки информации ко всем другим узлам. Сеть может нести любой тип информации, имеющейся в системе, включая голосовые сообщения, данные, видео-, мультимедиа, управляющие сообщения, служебные сообщения конфигурации и обслуживания, и ширина полосы сети может быть разделена или поделена между различными типами информации. Устройства, такие как устройства обработки голосовых сообщений, могут также взаимодействовать с данной сетью, тем самым получая прямой доступ ко всей информации, проходящей по сети. Предложены также способы и структуры пакетов для взаимообмена информацией по сети. Для получения еще большей коммутационной емкости или емкости обработки голосовых сообщении множество сетей могут быть соединены друг с другом. 4 с. и 48 з.п.ф-лы, 6 ил.
УСТРОЙСТВО для УПРАВЛЕНИЯ ШАРНИРАМИ КУЗОВА САМОСВАЛА | 0 |
|
SU256526A1 |
Система связи | 1982 |
|
SU1069185A1 |
Электронный коммутатор | 1988 |
|
SU1626444A1 |
Агрегат для изготовления хлопчатобумажных холстов для ватных фильтров | 1958 |
|
SU119105A1 |
US 4959356, 25.09.1990 | |||
US 5187740 A, 16.02.1993. |
Авторы
Даты
2000-08-10—Публикация
1995-03-06—Подача