6.2. Однокаскадная коммутационная матрица
6.1. Принцип коммутации в АТМ
Коммутация в АТМ – это основа любой сети с асинхронным режимом передачи. В процессе установления соединения, коммутатор строит специальную таблицу ассоциаций-взаимосвязей, которую называют таблицей коммутации или маршрутизации. Эта таблица указывает, как коммутатор должен передавать трафик с определенными идентификаторами VPI/VCI. При получении ячейки идентификаторы VPI/VCI проверяются коммутатором и сравниваются с содержимым таблицы.
По результатам сравнения определяются выходные значения идентификаторов, которые должны быть занесены в заголовок ячейки. Также определяются выходной порт, через который она должна быть отправлена. После определения коммутатором направления пересылки ячейки, он изменяет содержимое полей VPI/VCI в ее заголовке и передает ее через выходной порт. Рассмотренный принцип коммутации демонстрируется на рисунке 6.1.
Рисунок 6.1. Принцип АТМ коммутации
Коммутаторы имеют определенное число входных и выходных портов. На основе примера можно отметить размерность . При этом возможно. Случайно поступающие на входы ячейки могут одновременно претендовать на одни и те же выходы, что может приводить к конфликтом. Поэтому для обслуживания потока ячеек могут применяться буферы памяти, в которых организуются очереди на обслуживание. Это исключает или уменьшает вероятность конфликтов ячеек и их потери.
Все выполняемые коммутаторами АТМ функции можно свести к следующим основным:
- внутренняя коммутация ячеек;
- мультиплексирование и демультиплексирование потока ячеек.
Коммутация в АТМ имеет аппаратную и программную реализации.
Аппаратная реализация предполагает наличие двух компонентов (рисунок 6.2):
- коммутационной сердцевины (основы);
- коммутационных интерфейсов.
Рисунок 6.2. Структура коммутатора АТМ
Программная реализация коммутации ATM содержит:
- функции управления трафиком;
- функции управления обслуживанием;
- управления системными функциями;
- функции управления соединением (сигнализацией);
- функции управления конфигурацией (оборудования и сети);
- функции управления повреждением;
- функции управления безопасностью.
Рассмотрим подробнее аппаратную реализацию коммутации ATM.
Коммутационный интерфейс выполняет функции адаптера в каждом случае, когда необходимо установить связь между сердцевиной ATM коммутатора и устройствами ввода.
Функции коммутационных интерфейсов возложены на контроллеры ввода-вывода. Эти контроллеры адаптируют скорость и формат ячеек ATM к коммутационной сердцевине на входе и к среде передачи на выходе. Обработка ячеек в коммутационном интерфейсе сводится к следующим функциям: введения и выведения; идентификация VP и VC; общее информирование по маршрутизации ячеек и выделение для блокировки негодных ячеек; синхронизация ячеек.
Коммутационная сердцевина содержит три функциональные компоненты: концентратор, мультиплексор, коммутационную матрицу. Вспомогательным устройством коммутационной сердцевины является управляющий элемент. Концентратор обеспечивает объединение низкоскоростных потоков с переменными скоростями в высокоскоростной поток таким образом, чтобы согласовать скорости интерфейса и коммутатора.
Мультиплексор используется в коммутационной сердцевине для высокоскоростных потоков. В нем происходит процесс поочередного мультиплексирования ячеек от разных входов.
Коммутации в мультиплексоре и концентраторе нет. Коммутационным узлом является только коммутационное устройство. Существует несколько типов коммутационных устройств (рисунок 6.3).
Каждый из типов коммутаторов отвечает основным требованиям: минимальной потере ячеек и сохранение порядка следования при ограниченных возможностях по скорости и числу входов/выходов.
Рисунок 6.3. Типы коммутационных устройств
Рисунок 6.4. Коммутатор с общей шиной
Требование минимальной потери ячеек (одна на 1012, то есть 1-2 ячейки в час) и требование очередности налагают на схему коммутатора жесткие ограничения: в сложности, в быстродействии, в буферной памяти, во внутренней маршрутизации и т.д.
Первый тип коммутационного устройства имеет память, общую для входных и выходных ячеек. В таком коммутаторе все управляется централизованно. Для реализации различных вариантов входных очередей общая память может динамически разбиваться на сегменты.
Второй тип коммутатора имеет высокоскоростную внутреннюю шину, причем пропускная способность ее равна общей пропускной способности входных/выходных линий (рисунок 6.4).
Рисунок 6.5. Типы коммутационных матриц
Рисунок 6.6. Однокаскадная коммутационная матрица
Механизм управления потоком определяет по идентификаторам принадлежность каждой ячейки и демультиплексирует общий поток через адресные шины (фильтры). Управление коммутатором централизованное.
Коммутатор с пространственным разделением сразу устанавливает несколько соединений от входных портов к выходным. Управление такими коммутаторами осуществляется по портам. В пространственных коммутаторах возможны внутренние блокировки. Для преодоления блокировок предложены несколько вариантов коммутаторов этого типа (рисунок 6.5).
6.2. Однокаскадная коммутационная матрица
Однокаскадные коммутационные матрицы имеют в узлах переключатели, которые могут находиться в двух состояниях: сквозном (транзит) и перекрестном (кросс) (рисунок 6.6). У коммутатора может быть буферная память, располагаемая в узлах матрицы или на входах.
Схема буферной памяти в узлах (элементах коммутации) позволяет избежать столкновения ячеек, направляемых на один выходной порт. Буферы могут обслуживаться по очереди. Размещение буферов на входе коммутатора позволяет разделить функции буферизации и коммутации.
6.3. Многокаскадные коммутаторы
Однокаскадные коммутационные матрицы не могут полностью устранить проблемы конфликтов при одновременном поступлении ячеек к одному выходу. Такие матрицы непригодны для обработки напряженного трафика. В связи с этим широкое применение находят многокаскадные коммутационные матрицы, в которых существует один или несколько путей, называемых еще маршрутами, между заданной парой вход/выход. Примером матрицы с одним маршрутом может служить баньяновидная матрица, изображенная на рисунке 6.7 (Баньян – тропическое дерево, у которого от каждой почки растет корень и ветвь).
Рисунок 6.7. Баньяновидная матрица-коммутатор
На основе баньяновидной матрицы может быть построена схема коммутаторов с одним маршрутом между парой вход/выход.
На рисунке 6.8 приведена схема коммутатора, состоящая их трех каскадов, на 8 входов и 8 выходов (8x8).
Процесс маршрутизации ячеек в таком коммутаторе состоит в следующем. В заголовке каждой ячейки находится специальное маршрутное поле, представляющее собой последовательность двоичных символов, число которых совпадает с числом каскадов. В каждом каскаде декодируется разряд маршрута. Если он равен «1», то КЭ реализует операцию «Кросс». Если он равен «0», то КЭ реализует операцию «Транзит».
Для приведенного на рисунке 6.8 примера число каскадов и число входов/выходов связаны соотношением:
n = lg2N, где n = 3, N = 8.
Рисунок 6.8. Трехкаскадный коммутатор
Одномаршрутный коммутатор баньяна может создать состояние, когда ячейка ATM не может быть принята коммутационным элементом следующего каскада из-за одновременного поступления запроса от другого каскада. Это называется внутренней блокировкой (конфликтом или коллизией).
Частично решить проблему конфликтов можно созданием буфера при каждом коммутационном элементе. Известны четыре способа построения буферов у коммутационных элементов: КЭ с входными очередями; КЭ с выходными очередями; КЭ с центральными очередями и смешанные. Примеры указанных структур приведены на рисунках 6.9, 6.10, 6.11. Принцип обслуживания очередей FIFO (First In First Out) – пришел первый, ушел первый.
Возможные размеры требуемых буферов очереди при вероятности потери ячейки 10–9 (пределы 10–8...10–n) отмечены в таблице 6.1.
Рисунок 6.9. КЭ с входной очередью
Рисунок 6.10. КЭ с выходной очередью
Рисунок 6.11. КЭ с центральной очередью
Полностью устранить конфликты ячеек при маршрутизации даже с буферами невозможно из-за случайности трафика и возникающих переполнений буферов. Кроме того, буферы создают значительные задержки, которые далеко не всегда допустимы, например, для телефонного трафика или видеосвязи. Снизить количество конфликтов и потерь ячеек можно при использовании коммутационных матриц со многими маршрутами. Примерами коммутаторов со многими маршрутами могут служить:
- схема Бенеша (рисунок 6.12), в которой имеются две ступени каскадов: выбора маршрута и основные каскады;
- схема Бетчера (рисунок 6.13), в которой не применяются буферы и отсутствуют конфликты ячеек и схема пригодна для реализации коммутатора на оптических коммутационных элементах (2x2).
В схеме Бенеша каскады выбора маршрута обеспечивают организацию маршрутов. При этом число каскадов в ступени выбора маршрута определяется необходимым числом возможных маршрутов. Например, при одном каскаде – 2 маршрута, при 2-х каскадах – 4 маршрута, при 3-х каскадах – 8 маршрутов и так далее.
Таблица 6.1. Размеры буферов очередей
Тип буфера | Размер буфера для матриц (вход/выход) | |
16x16 | 32x32 | |
Центральная очередь | 113 | 199 |
Входная очередь | 320 | 640 |
Выходная очередь | 896 | 1824 |
Рисунок 6.12. Схема Бенеша
Рисунок 6.13. Коммутационная матрица Бетчер-Баньян
В схеме Бетчера, при подаче на оба входа КЭ «Сортировщика» 2-х ячеек, производится сравнение разрядов маршрутных полей этих двух ячеек. Если сравниваемые разряды имеют разные значения («0» и «1»), то ячейки с разрядами «0» направляются по стрелке. Другие ячейки передаются на второй выход. Если сравниваемые разряды имеют одинаковое значение («0» и «0» или «1» и «1»), тогда производится последовательное сравнение других следующих разрядов маршрута, включая разряды информационных полей ячеек до обнаружения различия.
При этом, если на один из входов КЭ не поступают ячейки, то считается, что на вход поступает пассивная ячейка с разрядами «0» во всех ее частях.
Число каскадов в схеме Бетчера для реализации полной сортировки равно ,
где N – число входов.
6.4. Принципы маршрутизации
Известны два типа маршрутизации ячеек в коммутаторе ATM:
- самомаршрутизации;
- таблично-контроллерная маршрутизация.
Принцип самомаршрутизации отражен на рисунке 6.14.
В ячейках входящего потока в коммутатор при маршрутизации обновляется адрес (А заменяется на В) согласно маршрутной таблице. При этом для внутренней маршрутизации применяется коммутационный идентификатор, назначающий маршрут внутри матрицы (m, n). Прохождение ячейкой каждой ступени коммутации сопровождается удалением части идентификатора.
Идентификатор устанавливает единственный маршрут внутри матрицы. Пример одномаршрутной схемы, приведен на рисунке 6.15.
Рисунок 6.14. Принцип самомаршрутизации
Рисунок 6.15. Пример маршрутизации
Принцип таблично-контроллерной маршрутизации отображен на рисунке 6.16.
При таблично-контроллерной маршрутизации каждым коммутационным элементом обновляется заголовок. Прохождения ячеек определяются таблицей возможных маршрутов. При этом их число не ограничено.
При реализации многомаршрутной коммутации возможны два варианта прохождения ячеек:
- ячейки, передаваемые по одному виртуальному каналу, передаются через коммутатор по любому внутреннему пути независимо друг от друга; при этом предусматривается механизм сборки ячеек в порядке следования;
- ячейки, относящиеся к одному виртуальному каналу, передаются по маршруту, определенному в фазе установления соединения; при этом достоинство многомаршрутной структуры используется на стадии установления соединения.
Рисунок 6.16. принцип таблично-контроллерной маршрутизации
В заключении раздела необходимо отметить, что коммутаторы ATM позволяют устанавливать соединение типа «точка – много точек», то есть один вход – много выходов. Кроме того, для быстрой коммутации ячеек могут применяться не только матрицы. На относительно невысоких скоростях передачи ячеек используются: общая память, общая шина, коммутация в кольце и другие виды [1, 3, 20].
Перспективным считается создание оптических коммутаторов АТМ, которые будут превосходить по скорости электронные коммутаторы на несколько порядков, что достигается, в частности, в оптическом конверторе путём «пересадки» ячейки с одного направления на другое через изменение длины волны оптической несущей [51].
Контрольные вопросы
1. В чем заключается принцип коммутации в АТМ?
2. Что представляет собой структура коммутатора АТМ?
3. Какие функции выполняет АТМ-коммутатор?
4. С какой целью в коммутаторе АТМ выполняется мультиплексирование?
5. Какие типы коммутационных устройств применяются в АТМ?
6. Что характерно для однокаскадной коммутации?
7. Что характерно для многокаскадной коммутации?
8. Что отражает принцип FIFO?
9. С какой целью в коммутаторах создаются буферы?
10. В чем заключается принцип самомаршрутизации?
11. Почему коммутатор Бетчер-Баньян считается бесконфликтным?
12. Какие причины ограничивают быстродействие электронных коммутаторов?
13. Почему актуально использование оптической коммутации АТМ?