Эталонная модель протоколов АТМ.
Место ATM в семиуровневой модели ISO - где-то в районе уровня передачи данных. Правда, установить точное соответствие нельзя, поскольку ATM сама занимается взаимодействием узлов, контролем прохождения и маршрутизацией, причем осуществляется это на уровне подготовки и передачи пакетов ATM.
Рис. 1 Различие модели ATM от модели OSI.
Модель протоколов АТМ как и многоуровневая модель протоколов OSI, описывает взаимодействие двух компьютеров в сети, процедуры связи двух оконечных систем посредством АТМ - коммутаторов. Ключевыми уровнями в данной модели являются физический уровень (PL - Physical Layer), уровень АТМ (ATM Layer) и уровень адаптации АТМ (AAL - ATM Adaptation Layer).
Та часть многоуровневой архитектуры АТМ, которая используется для передачи данных между двумя оконечными системами или двумя пользователями, называется слой пользователя (User Plane).
Слой контроля (Control Plane) определяет протоколы более высокого уровня, обеспечивающие передачу сигнала АТМ, а слой управления (Management Plane) обеспечивает управление АТМ - узлом и состоит из двух частей:
модуля управления слоями (Plane Management);
модуля управления уровнями (Layer Management).
Модуль управления слоями управляет всеми остальными слоями, а модуль управления уровнями отвечает за управление всеми уровнями модели АТМ.
Рис. 2 Модель протоколов АТМ.
Хотя физический уровень и не является частью спецификации ATM, он учитывается многими стандартизующими комитетами. В основном, в качестве физического уровня рассматривается спецификация SONET (Synchronous Optical Network) -американский стандарт на высокоскоростную передачу данных. Определены четыре типа стандартных скоростей обмена: 51, 155, 622 и 2400 Мбит/сек, соответствующих международной иерархии цифровой синхронной передачи (SDH - Synchronous Digital Hierarchy).
SDH специфицирует, каким образом данные фрагментируются и передаются синхронно по оптоволоконным каналам, не требуя при этом синхронизации каналов и тактовых частот всех узлов, участвующих в процессе передачи и восстановления данных.
Как в модели ATM, так и в модели OSI стандарты для физического уровня устанавливают, каким образом биты должны проходить через среду передачи. Точнее говоря, стандарты ATM для физического уровня определяют, как получать биты из среды передачи, преобразовывать их в ячейки и посылать эти ячейки уровню ATM.
Стандарты ATM для физического уровня также описывают, какие кабельные системы должны использоваться в сетях ATM и с какими скоростями может работать ATM при каждом типе кабеля. Изначально ATM Forum установил скорость DS3 (45 Мбит/с) и более высокие. Однако реализация ATM со скоростью 45 Мбит/с применяется главным образом провайдерами услуг WAN. Другие же компании чаще всего используют ATM со скоростью 25 или 155 Мбит/с.
В модели OSI стандарты для канального уровня описывают, каким образом устройства могут совместно использовать среду передачи и гарантировать надежное физическое соединение. Стандарты для уровня ATM регламентируют передачу сигналов, управление трафиком и установление соединений в сети ATM. Функции передачи сигналов и управления трафиком уровня ATM подобны функциям канального уровня модели OSI, а функции установления соединения ближе всего к функциям маршрутизации, которые определены стандартами модели OSI для сетевого уровня.
Стандарты для уровня ATM описывают, как получать ячейку, сгенерированную на физическом уровне, добавлять 5-байтный заголовок и посылать ячейку уровню адаптации ATM. Эти стандарты также определяют, каким образом нужно устанавливать соединение с таким качеством сервиса (QoS), которое запрашивает ATM-устройство или конечная станция.
Стандарты установления соединения для уровня ATM определяют виртуальные каналы и виртуальные пути. После того как соединение установлено, коммутаторы между конечными станциями получают адресные таблицы, содержащие сведения о том, куда необходимо направлять ячейки. В них используется следующая информация: адрес порта, из которого приходят ячейки; специальные значения в заголовках ячейки, которые называются идентификаторами виртуального канала (VCI - Virtual Circuit Identifier) и идентификаторами виртуального пути (VPI - Virtual Path Identifier). Адресные таблицы также определяют, какие VCI и VPI коммутатор должен включить в заголовки ячеек перед тем как их передать.
Пакет ATM, определенный специальным подкомитетом ANSI, должен содержать 53 байта: 5 байтов занято заголовком, остальные 48 - содержательная часть пакета.
Рис. 3 Строение ячейки АТМ.
На рисунке 4 показаны поля заголовка АТМ - ячеек, имеющих интерфейс пользователя с сетью (UNI - User-to-Network Interface) и интерфейс между сетями (NNI - Network-to-Node Interface или Network-to-Network Interface).
Поле общего управления потоком (GFC - Generic Flow Control) состоит из 4 бит и используется только в UNI для управления трафиком и предотвращения перегрузки. Для NNI это поле не определено, а его биты используются для расширения поля идентификатора виртуальных путей.
Рис. 4 Типы заголовков пакета данных в АТМ.
Поле VPI используется для обозначения виртуальных путей и состоит из: 8 битов в UNI и 12 битов в NNI. Это поле еще не определено ни C 1992г.ITU-T, ни организацией ATM Forum.
Поле идентификатора виртуального канала состоит из 16 битов. Значения полей VPI и VCI устанавливаются конечными устройствами при запрашивании соединения.
Поле идентификатора полезной нагрузки (PTI - Payload Type Identification) состоит из 3 битов и используется для обозначения типа полезной нагрузки ячейки, а также для обозначения управляющих процедур. В спецификациях, находящихся в стадии разработки, ATM Forum собирается выделить первый бит для обозначения перегрузки, второй бит для управления сетью, а третий - для индикации ошибки.
Признак потери приоритета ячейки (CLP - Cell Loss Priority) - это 1 бит, который определяет возможность потери ячейкой своего приоритета. Если ячейку можно отбросить из-за перегрузки, этот бит устанавливается в 1; если на коммутаторе возникает перегрузка, он выбрасывает все ячейки, у которых этот бит установлен. В результате при перегрузке сети приоритет отдается определенным типам ячеек, переносящим, например, видеоинформацию.
Контрольная сумма заголовка (HEC - Header Error Check) - это восьмиразрядный циклический избыточный код, который вычисляется по всем полям АТМ - заголовка. Такой метод контроля ошибок позволяет выявить все одноразрядные ошибки и часть много разрядных. Контроль ошибок в работе АТМ имеет очень большое значение, поскольку ошибка в VPI/VCI может вызвать искажение данных в других виртуальных каналах.
Виртуальный канал ATM - это соединение между двумя конечными станциями ATM, которое устанавливается на время их взаимодействия. Виртуальный канал является двунаправленным; это означает, что после установления соединения каждая конечная станция может как посылать пакеты другой станции, так и получать их от нее.
Имеются три типа виртуальных каналов:
постоянные виртуальные каналы (PVC - Permanent Virtual Circuits);
коммутируемые виртуальные каналы (SVC - Switched Virtual Circuits);
интеллектуальные постоянные виртуальные каналы (SPVC - Smart Permanent Virtual Circuits).
PVC - это постоянное соединение между двумя конечными станциями, которое устанавливается вручную в процессе конфигурирования сети. Пользователь сообщает провайдеру ATM-услуг или сетевому администратору, какие конечные станции должны быть соединены, и он устанавливает PVC между этими конечными станциями.
PVC включает в себя конечные станции, среду передачи и все коммутаторы, расположенные между конечными станциями. После установки PVC для него резервируется определенная часть полосы пропускания, и двум конечным станциям не требуется устанавливать или сбрасывать соединение.
SVC устанавливается по мере необходимости - всякий раз, когда конечная станция пытается передать данные другой конечной станции. Когда отправляющая станция запрашивает соединение, сеть ATM распространяет адресные таблицы и сообщает этой станции, какие VCI и VPI должны быть включены в заголовки ячеек. Через произвольный промежуток времени SVC сбрасывается.
SVC устанавливается динамически, а не вручную. Для него стандарты передачи сигналов уровня ATM определяют, как конечная станция должна устанавливать, поддерживать и сбрасывать соединение. Эти стандарты также регламентируют использование конечной станцией при установлении соединения параметров QoS из уровня адаптации ATM.
Кроме того, стандарты передачи сигналов описывают способ управления трафиком и предотвращения "заторов": соединение устанавливается только в том случае, если сеть в состоянии поддерживать это соединение. Процесс определения, может ли быть установлено соединение, называется управлением признанием соединения (CAC - Connection Admission Control).
SPVC - это гибрид PVC и SVC. Подобно PVC, SPVC устанавливается вручную на этапе конфигурирования сети. Однако провайдер ATM-услуг или сетевой администратор задает только конечные станции. Для каждой передачи сеть определяет, через какие коммутаторы будут передаваться ячейки.
Большая часть раннего оборудования ATM поддерживала только PVC. Поддержка SVC и SPVC начинает реализовываться только сейчас.
PVC имеют два преимущества над SVC. Сеть, в которой используются SVC, должна тратить время на установление соединений, а PVC устанавливаются предварительно, поэтому могут обеспечить более высокую производительность. Кроме того, PVC обеспечивают лучший контроль над сетью, так как провайдер ATM-услуг или сетевой администратор может выбирать путь, по которому будут передаваться ячейки.
Однако и SVC имеют ряд преимуществ перед PVC. Поскольку SVC устанавливается и сбрасывается легче, чем PVC, то сети, использующие SVC, могут имитировать сети без установления соединений. Эта возможность оказывается полезной в том случае, если вы используете приложение, которое не может работать в сети с установлением соединений. Кроме того, SVC используют полосу пропускания, только когда это необходимо, а PVC должны постоянно ее резервировать на тот случай, если она понадобится. SVC также требуют меньшей административной работы, поскольку устанавливаются автоматически, а не вручную. И наконец, SVC обеспечивают отказоустойчивость: когда выходит из строя коммутатор, находящийся на пути соединения, другие коммутаторы выбирают альтернативный путь.
В некотором смысле SPVC обладает лучшими свойствами этих двух видов виртуальных каналов. Как и в случае с PVC, SPVC позволяет заранее задать конечные станции, поэтому им не приходится тратить время на установление соединения каждый раз, когда одна из них должна передать ячейки. Подобно SVC, SPVC обеспечивает отказоустойчивость. Однако и SPVC имеет свои недостатки: как и PVC, SPVC устанавливается вручную, и для него необходимо резервировать часть полосы пропускания - даже если он не используется.
Стандарты установления соединения для уровня ATM также определяют виртуальные пути (Virtual Path). В то время как виртуальный канал - это соединение, установленное между двумя конечными станциями на время их взаимодействия, виртуальный путь - это путь между двумя коммутаторами, который существует постоянно, независимо от того, установлено ли соединение. Другими словами, виртуальный путь - это "запомненный" путь, по которому проходит весь трафик от одного коммутатора к другому.
Когда пользователь запрашивает виртуальный канал, коммутаторы определяют, какой виртуальный путь использовать для достижения конечных станций. По одному и тому же виртуальному пути в одно и то же время может передаваться трафик более чем для одного виртуального канала. Например, виртуальный путь с полосой пропускания 120 Мбит/с может быть разделен на четыре одновременных соединения по 30 Мбит/с каждый.