Протокол ATM занимает з отеке протокЬлоа ATM р^имерно.то ж^мест^, что ц протокол iр в стеке ТСРДРили протокол 1АР~Рв стеке прот околов технологии Frame Relay. Протокол АШ передает ячейки через коммутаторы при установленном vi настроенном виртуальном соединении* то есть **а основании готовых таблиц коммутации портов;; * > ' -
Протокол ATM выполняет коммутацию по номеру виртуального соединения,
который в технологии ATM разбит на две части:
□ идентификатор виртуального пути (Virtual Path Identifier, VPI);
□ идентификатор виртуального канала (Virtual Channel Identifier, VCI).
Помимо решения этой основной задачи протокол ATM выполняет ряд функций по контролю за соблюдением трафик-контракта со стороны пользователя сети, маркировке ячеек-нарушителей, отбрасыванию ячеек-нарушителей при перегрузке сети, а также управлению потоком ячеек для повышения производительности сети (естественно, при соблюдении условий трафик-контракта для всех виртуальных соединений).
Формат ячеек протокола ATM представлен на рис. 21.11.
|
|
Биты
8 7 6 5 4 3 2 1
|
Рис. 21.11. Формат АТМ-ячейки |
Поле обобщенного управления потоком (Generic Flow Control, GFC) используется только при взаимодействии конечного узла и первого коммутатора сети. В настоящее время его точные функции не определены.
Поля идентификатора виртуального пути (VPI) и идентификатора виртуального канала (VCI) занимают соответственно 1 и 2 байта. Эти поля задают номер виртуального соединения, разделенный на старшую (VPI) и младшую (VCI) части.
Поле идентификатора типа данных (Payload Type Identifier, PTI) состоит из 3 бит и задает тип данных, переносимых ячейкой, — пользовательские или управляющие (например, управляющие установлением виртуального соединения). Кроме того, один бит этого поля используется для указания о перегрузке в сети. Это бит EFCI (Explicit Forward Congestion Identifier — прямой явный идентификатор перегрузки), который играет ту же роль, что и бит FECN в технологии Frame Relay, то есть передает информацию о перегрузке по направлению потока данных.
Поле приоритета потери кадра (Cell Loss Priority, CLP) играет в данной технологии ту же роль, что и поле DE в технологии Frame Relay — в нем коммутаторы ATM отмечают ячейки, которые нарушают соглашения о параметрах качества обслуживания, чтобы удалить их при перегрузках сети. Таким образом, ячейки с полем CLP в 0 являются для сети высокоприоритетными, а ячейки с полем CLP e 1 — низкоприоритетными.
|
|
Поле управления ошибками в заголовке (Header Error Control, НЕС) содержит контрольную сумму, вычисленную для заголовка ячейки. Контрольная сумма вычисляется с помощью техники корректирующих кодов Хэмминга, поэтому она позволяет не только обнаруживать ошибки, но и исправлять все одиночные ошибки, а также некоторые двойные. Кроме того, поле НЕС обеспечивает не только обнаружение и исправление ошибок в заголовке, но и нахождение границы начала кадра в потоке байтов кадров SDH, которые являются предпочтительным физическим уровнем технологии ATM, или же в потоке битов физического уровня, основанного на ячейках. Указателей, позволяющих в поле данных кадра STS-n (STM-n) технологии SONET/SDH обнаруживать границы ячеек ATM (подобных тем указателям, которые используются для определения, например, границ виртуальных контейнеров подканалов Т1/Е1), не существует. Поэтому коммутатор ATM вычисляет контрольную сумму для последовательности из пяти байтов, находящихся в поле данных кадра STM-n, и, если вычисленная контрольная сумма говорит о корректности заголовка ячейки ATM, первый байт становится границей ячейки. Если же это не так, то происходит сдвиг на один байт и операция продолжается. Таким образом, технология ATM выделяет асинхронный поток ячеек ATM в синхронных кадрах SDH или потоке битов физического уровня, основанного на ячейках.
Рассмотрим методы коммутации ячеек ATM на основе пары чисел VPI/VCI. Коммутаторы ATM могут работать в двух режимах.
□ Коммутация виртуального пути. В этом режиме коммутатор выполняет продвижение ячейки только на основании значения поля VPI, а значение поля VCI он игнорирует. Обычно так работают магистральные коммутаторы территориальных сетей. Они доставляют ячейки из одной пользовательской сети в другую на основании только старшей части номера виртуального канала, что соответствует идее агрегирования адресов. В результате один виртуальный путь соответствует целому набору виртуальных каналов, коммутируемых как единое целое.
□ Коммутация виртуального канала. После доставки ячейки в локальную сеть ATM ее коммутаторы начинают коммутировать ячейки с учетом как поля VPI, так и поля VCI, но при этом им хватает для коммутации только младшей части номера виртуального соединения, так что фактически они работают с VCI, оставляя VPI без изменения. Этот режим и называется режимом коммутации виртуального канала.
Для создания коммутируемого виртуального канала в технологии ATM используются протоколы, не показанные на рис. 20.11. Подход здесь аналогичен подходу в сети ISDN — для установления соединения разработан отдельный протокол Q.2931, который весьма условно можно отнести к сетевому уровню. Этот протокол во многом похож на протоколы Q.931 и Q.933 (даже номером), но в него внесены, естественно, изменения, связанные с наличием нескольких классов трафика и дополнительных параметров качества обслуживания. Протокол Q.2931 опирается на достаточно сложный протокол канального уровня SSCOP, который обеспечивает надежную передачу пакетов Q.2931 в своих кадрах. В свою очередь, протокол SSCOP работает поверх протокола AAL5, который необходим для разбиения кадров SSCOP на ATM-ячейки и сборки этих ячеек в кадры при доставке кадра SSCOP в коммутатор назначения.
ПРИМЕЧАНИЕ ----------------------------------------------------------------------------------------------------
Протокол Q.2931 появился в стеке протоколов технологии ATM после принятия версии интерфейса UNI 3.1, а до этого в версии UNI 3.0 вместо него использовался протокол Q.93B. Из-за несовместимости протоколов Q.2931 и Q.93B версии пользовательского интерфейса UNI 3.0 и UNI 3.1 также несовместимы. Версия UNI 4.0 обратно совместима с UNI 3.1, так Как основана на тех же служебных протоколах, что и версия UNI 3.1.
|
|
Виртуальные соединения, образованные с помощью протокола Q.2931, бывают симплексными (однонаправленными) и дуплексными.
Протокол Q.2931 позволяет также устанавливать двухточечные виртуальные соединения и виртуальные соединения с одним отправителем и несколькими получателями. Первый случай поддерживается во всех технологиях, основанных на виртуальных каналах, а второй характерен для технологии ATM и является аналогом групповой рассылки с одним ведущим (передающим) узлом. При установлении соединения с одним отправителем и несколькими получателями ведущим считается узел, который является инициатором этого соединения. Сначала этот узел устанавливает виртуальное соединение всего с одним узлом, а затем путем специального вызова добавляет к соединению по одному новому члену. Ведущий узел становится вершиной дерева соединения, а остальные узлы — листьями этого дерева. Сообщения, которые посылает ведущий узел, принимают все листья соединения, но сообщения, которые посылает какой-либо лист (если соединение дуплексное), принимает только ведущий узел.
Пакеты протокола Q.2931, предназначенные для установления коммутируемого виртуального канала, имеют те же названия и то же назначение, что и пакеты протокола Q.933, рассмотренные при изучении технологии Frame Relay, но структура их полей, естественно, другая.
Адрес конечного узла в коммутаторах ATM 20-байтный.
□ При работе в публичных сетях используется адрес стандарта Е.164. Адрес имеет гибкий формат и может делиться на части для обеспечения иерархической маршрутизации между сетями и подсетями. Он поддерживает больше уровней иерархии, чем 1Ру4-адрес, и похож в этом отношении на 1Ру6-адрес.
□ Последние 6 байт адреса занимает поле идентификатора конечной системы (End System Identifier, ESI), которое имеет смысл МАС-адреса узла ATM, причем формат его также соответствует формату МАС-адреса.
ESI-адрес присваивается конечному узлу на предприятии-изготовителе в соответствии с правилами IEEE, то есть три первых байта содержат код предприятия, а остальные три — порядковый номер, за уникальность которого отвечает данное предприятие.
|
|
При работе в частных сетях ATM обычно применяются адреса близкого к Е.164 формата с небольшим изменениями.
Конечный узел при подключении к коммутатору ATM выполняет так называемую процедуру регистрации. При этом конечный узел сообщает коммутатору свой ESI-адрес, а коммутатор сообщает конечному узлу старшую часть адреса, то есть номер сети, в которой работает узел.
Кроме адресной части пакет CALL SETUP протокола Q.2931, с помощью которого конечный узел запрашивает установление виртуального соединения, включает также части, описывающие параметры трафика и требования QoS. При поступлении такого пакета коммутатор должен проанализировать эти параметры и решить, достаточно ли у него свободных ресурсов для обслуживания нового виртуального соединения. Если да, то новое виртуальное соединение принимается, и коммутатор передает пакет CALL SETUP дальше в соответствии с адресом назначения и таблицей маршрутизации, а если нет, запрос отвергается.