Перспективными технологиями передачи информации в вычислительных сетях являются технологии, обеспечивающие высокие скорости передачи разнородной информации (данных, речевых и видеосигналов) на значительные расстояния. Действительно, передача голосовой и видеоинформации обычно требуется в режиме реального времени, и, следовательно, задержки должны быть только малыми (так, для голосовой связи — около 6 мс).
К числу таких технологий, прежде всего, относится технология ATM (Asynchronous Transfer Mode).
Технология ATM кратко формулируется, как быстрая коммутация коротких пакетов фиксированной длины (53 байт), называемых ячейками. По этой причине и саму технологию ATM иногда называют коммутацией ячеек.
Сети ATM относят к сетям с установлением соединения. Соединения могут быть постоянными и коммутируемыми (динамическими). Первые устанавливаются и разрываются администратором сети, их действие продолжительно, для каждого нового обмена данными между абонентами постоянного соединения не нужно тратить время на его установление. Вторые устанавливаются и ликвидируются автоматически для каждого нового сеанса связи.
Каждое соединение получает свой идентификатор, который указывается в заголовке ячеек. При установлении соединения каждому коммутатору на выбранном пути следования данных передаются данные о соответствии идентификаторов и портов коммутаторов. Коммутатор, распознав идентификатор, направляет ячейку в нужный порт. Непосредственное указание в заголовке адресов получателя и отправителя не требуется, заголовок короткий — всего 5 байтов.
Высокие скорости в ATM обеспечиваются рядом технических решений.
Во-первых, физической основой для ATM служат высокоскоростные каналы передачи данных. Так, при применении технологии SONET в ATM предусматриваются каналы ОС-1, ОС-3, ОС-12 и ОС-48 на ВОЛС со скоростями соответственно 52, 155, 622 и 2488 Мбит/с.
Кроме того, большое число каналов с временным мультиплексированием (TDM) можно использовать для параллельной передачи частей одного и того же "объемного" сообщения, что соответствует понятию "статистическое мультиплексирование". В технологиях E1/E4 статистическое мультиплексирование затруднено, так как для него требуется адресация слотов. В ATM ячейки адресуются, цикл синхронизации состоит из отдельных участков, длины участка и ячейки совпадают. Под конкретное сообщение можно выделить интервалов, совокупность которых называют виртуальным каналом. Скорость передачи можно регулировать, изменяя .
Во-вторых, отрицательные квитанции при искажениях собственно сообщений (но не заголовков) возможны только от конечного пункта. Это исключает потери времени в промежуточных пунктах на ожидание подтверждений. Такой способ иногда называют коммутацией кадров (в отличие от коммутации пакетов). Контрольный код (четырехбайтный циклический) по информационной части сообщения имеется только в конце последнего пакета сообщения, что характерно для использования разновидности ATM, называемой AAL5. В других разновидностях ATM, ориентированных на передачу мультимедийного трафика, потери отдельных ячеек вообще некритичны. Для контроля правильности заголовков используется один байт в заголовке ячейки, в котором размещается контрольный код Хемминга для заголовка. Искаженные и не восстановленные по Хеммингу ячейки отбрасываются.
В-третьих, упрощена маршрутизация. Собственно установление соединения выполняется аналогично этой процедуре в TCP/IP. Однако далее номер рассчитанного маршрута помещается в заголовок каждого пакета, и для них не нужно заново определять маршрут по таблицам маршрутизаторов при прохождении через сеть. Другими словами, осуществляется передача с установлением соединения (в отличие, например, от IP). При этом клиент направляет серверу запрос в виде специального управляющего кадра. Кадр проходит через промежуточные маршрутизаторы и/или коммутаторы, в которых соединению (каналу) присваивается идентификаторы виртуальных пути и канала VPI/VCI. Если передача адресована нескольким узлам, то соответствующие идентификаторы в коммутаторах присваиваются нескольким каналам.
В-четвертых, фиксированная длина пакетов (кадров) упрощает алгоритмы управления и буферизации данных, исключает необходимость инкапсуляции или конвертирования пакетов при смене форматов в промежуточных сетях (если они соответствуют формату ячейки ATM).
Малый размер ячейки (53 байт) обусловлен требованиями передачи телефонного (голосового) трафика. Действительно, если допустить, наряду с передачей голоса, также традиционных цифровых данных, упакованных в длинные пакеты, то возможны задержки передачи "голосовых" ячеек на время, заметно превышающее несколько миллисекунд, что для телефонного разговора недопустимо. В то же время слишком короткие ячейки приводят к нерациональному использованию пропускной способности каналов из-за значительной доли длины заголовка в размере ячейки. Поэтому длина 53 байт при длине заголовка в 5 байт — компромиссное решение.
При этом задержки в передаче голоса, обусловленные размером ячейки, составляют 6 мс. Действительно, каждый из 48 байт является одним замером аналоговой величины при импульсно-кодовой модуляции, которые выполняются с интервалом в 125 мкс (при частоте замеров 8 кГц). Следовательно, между моментом первого замера и отправкой ячейки в сеть проходит время (время пакетизации), равное 0,125·48 = 6 мс.
В ATM введены три уровня протоколов (рис. 1).
Адаптационный уровень (AAL — ATM Adaptations Level) аналогичен транспортному уровню в ЭМВОС, на нем происходит разделение сообщения на пакеты с контрольной и управляющей информацией, которые, в свою очередь, делятся на 48-байтные ячейки. Происходит также преобразование битовых входных потоков в один поток с соблюдением пропорций между числом ячеек для данных, голосовой и видеоинформации. Программное обеспечение, реализующее функции AAL, требуется только в конечных узлах ATM-сети.
Рис. 1.  Уровни протокола ATM
Введено несколько разновидностей протокола AAL, ориентированных на разные классы трафика. Протокол AAL1 предназначен для обслуживания мультимедийного трафика, характеризующегося стабильной скоростью и синхронизацией голоса и видео, и телефонного трафика, чувствительного к временным задержкам. В то же время потеря отдельных ячеек несущественно сказывается на качестве принимаемой информации. Протокол AAL3/4 предназначен для передачи нестабильной (пульсирующей) нагрузки, присущей связям между локальными вычислительными сетями. Задержки здесь не критичны, но потери ячеек не допускаются. Протокол AAL5 приспособлен для передачи данных вычислительного характера.
На следующем уровне, называемом ATM, к каждой ячейке добавляется пятибайтовый заголовок с маршрутной информацией. Этот уровень служит также для установления соединений. В структуре пятибайтового заголовка ATM-ячейки имеются следующие поля (в скобках указано число битов):
Поля идентификаторов VPI (Virtual Path Identifier) и VCI (Virtual Channel Identifier) используются для указания маршрута движения ячеек. Очевидно, что в пределах всей сети при передаче ячеек использовать уникальные номера узлов нельзя, так как для этого потребовалась бы значительно большая длина заголовка, чем 5 байт. Поэтому идентификация маршрута выполняется с помощью сочетаний VPI/VCI. При установлении соединения назначаются VPI/VCI и в каждом маршрутизаторе для каждого соединения сочетание этих идентификаторов будет уникальное. В то же время в процессе установления соединения размеры запросов и ответов не ограничены столь существенно, здесь используются иерархические 20-байтные адреса, специальные таблицы маршрутизации и протокол PNNI. Идентификатор VPI можно рассматривать, как старшую часть указателя маршрута, этот идентификатор оказывается одинаковым для совокупности каналов, проходящих через одинаковые фрагменты сети.
Поле "тип данных" используется для указания типа пакета (запрос на установление соединения или передача) и индикации перегрузки сети. Бит "приоритет потери пакетов" служит для отметки тех пакетов, которые нарушают соглашение о качестве обслуживания.
Следует отметить, что для сборки сообщения из ячеек нужно нумеровать ячейки одного и того же сообщения. Этот номер относится к заголовку адаптационного уровня, занимающего один или два байта в поле данных (т.е. в 48-битном поле).
Поле "контроль заголовка" содержит код Хемминга и, помимо функций контроля и исправления ошибок в заголовке ячейки, служит для разграничения ячеек ATM при их выделении из потока данных, передаваемых по каналам SDH. Граница определяется по сравнению подсчитываемого кода Хемминга для каждой очередной последовательности из 5 байт с содержимым последнего из этих 5 байт (положительный результат сравнения означает, что эта последовательность и есть заголовок).
Поле "управление" предназначено для индикации перегрузок, отказов узлов, важности ячеек (маловажные могут отбрасываться при перегрузках). Сигналы управления обычно передаются в обратном направлении по тому же пути с определенными интервалами.
Скорости передачи, реализуемые системами АТМ , покрывают в настоящее время (2003 г.) диапазон от 64 Кбит/с до 40 Гбит/с и, как правило, соответствуют ряду n×64 Кбит/с: 1,5/2, 6/8, 13, 26, 32, 34/45, 52, 98, 100, 140, 155, 622 Мбит/с, 2,5, 10 и 40 Гбит/c.
Третий уровень — физический (physical) — служит для преобразования данных в электрические или оптические сигналы. Как отмечено выше, средой для ATM часто служат каналы технологий SDH или SONET, возможно использование технологий PDH. Если сеть не может обеспечить требуемую полосу, то происходит отказ от соединения. При перегрузках часть передаваемых ячеек отбрасывается с соответствующим уведомлением пользователя. Потеря ячеек вызывает необходимость повторной передачи всех ячеек сегмента (в AAL5), поскольку контроль правильности передачи ведется по отношению ко всему сообщению (в данном случае — сегменту). Существенно сократить число повторно передаваемых ячеек позволяет применение специальных алгоритмов.
Качество передачи характеризуется такими параметрами, как пропускная способность, процент потерянных ячеек, задержка передачи ячеек и ее вариации. Заказ услуг выполняется в процессе установления соединения. Для поддержания заказанного уровня услуг в сетях ATM имеются специальные службы, реализуемые в программном обеспечении коммутаторов. Наряду с соединениями, не требующими определенного качества передачи, используются соединения со следующими уровнями услуг:
Если сеть ATM оказывается перегруженной, то во избежание потери информации и в отличие от коммутации каналов возможна буферизация данных для выравнивания загрузки каналов. Регулирование загрузки (управление потоком) осуществляется периодическим включением (обычно через 32 кадра) RM-ячейки в информационный поток. В эту ячейку конечный узел и/или промежуточные коммутаторы могут вставлять значения управляющих битов, сигнализирующие о перегрузке или недогрузке канала. RM-ячейка от конечного узла передается в обратном направлении источнику сообщения, который может соответственно изменить режим передачи. В частности, применяется режим занятия всех свободных ресурсов при перегрузке. Таким образом, происходит динамическое перераспределение нагрузки.
В распространенных протоколах, таких, как TCP/IP или X.25, пакеты имеют иную структуру, чем в сетях ATM, что вызывает необходимость принятия специальных мер и средств для совместной работы разнотипных протоколов в корпоративных и территориальных сетях. Чаще всего сети ATM входят как составная часть либо в локальные сети Ethernet или в сети протокола IP.
Сопряжение локальных сетей с сетями ATM выполняется с помощью коммутаторов ЛВС, в которых дополнительно имеется порт ATM, имеющий ATM-адрес, и реализовано программное обеспечение для конвертирования MAC-адресов в ATM-адреса и обратно, соответствующее протоколу LANE (LAN Emulation). Коммутаторы при этом называются пограничными коммутаторами или ATM-LAN конверторами (рис. 2).
В программном обеспечении протокола LANE различают клиенты LEC (LAN Emulation Client) и серверы LES (LAN Emulation Server). В LEC имеется адресная таблица, в ней каждому MAC-адресу ЛВС сопоставлен номер порта коммутатора. Аналогичная таблица в LES содержит строки соответствия MAC-адресов станций всех ЛВС, подключенных к ATM сети через ATM-LAN конверторы, ATM-адресам ATM-LAN конверторов. Адресная таблица LES используется при пересылке пакетов из одной ЛВС в другую через сеть ATM. Для этого сначала ATM-LAN конвертор посылает запрос серверу LES и, получив ответ, устанавливает виртуальное соединение в ATM сети с последующей передачей пакета в виде последовательности ячеек ATM.
Рис. 2.  Связь ЛВС через промежуточную ATM-сеть
Проблемы совмещения технологий ATM и существующих сетей решаются организацией ATM Forum и рядом промышленных фирм. В частности, разрабатываются коммутаторы, обеспечивающие совместную работу ATM и TCP/IP сетей. Именно ATM Forum разработала спецификацию LANE для эмуляции локальных сетей, таких, как Ethernet, Fast Ethernet, FDDI с помощью ATM. Для передачи IP-дейтаграмм и пакетов, сформированных по другим протоколам, через ATM сети предложены спецификация IP-over-ATM и более современная MPOA (Multi-Protocol-Over-ATM), а также реализующие их средства.