Для пакетной передачи голоса может использоваться отнюдь не только IP. Более того, в техническом отношении IP — самый неудачный выбор из всех возможных вариантов.

Создатели IP вряд ли рассчитывали, что когда-нибудь их детище будет служить для транспортировки речевого трафика. Свою задачу они видели в обеспечении более удобного средства обмена данными между приложениями по локальной сети, а не в повышении эффективности использования пропускной способности и реализации схемы приоритетов. Неудивительно, что IP, особенно в своем первоначальном виде, не оставлял операторам и администраторам корпоративных сетей никаких шансов хотя бы частично удовлетворить запросы, которые пользователи привыкли предъявлять к системам передачи голоса.

По большому счету, переход на системы пакетной телефонии возможен при условии, что качество сервиса для абонентов окажется на том же уровне, какой предоставляют традиционные системы с коммутацией каналов, а имеющиеся различия не будут заметны.

Несмотря на внешнюю простоту, решить такую задачу чрезвычайно трудно. Сервис ТфОП характеризуется значительной долей успешных дозвонов (не менее 95% от общего числа попыток), крайне низкой частотой обрыва установленных соединений, высоким качеством воспроизведения голоса, малыми задержками передачи. При переходе на системы пакетной телефонии дело осложняется тем, что достоинства сервиса ТфОП должны не только воспроизводиться, но и сохраняться при наличии интенсивного трафика данных.

К сожалению, внедрение пакетной передачи влечет за собой целый шлейф новых явлений, каждое из которых не способствует поддержанию высокого качества услуг. Это задержки передачи, их нестабильность, потери пакетов, наличие эха и необходимость применения алгоритмов сжатия.

МЕДЛЕННО, НО ВЕРНО

Под величиной задержки понимают время, необходимое для доставки голосового пакета от источника до адресата. В сетях с коммутацией каналов задержка крайне мала (около 25 мс), поскольку конкуренция за сетевые ресурсы практически отсутствует. При пакетной передаче такая конкуренция имеет место, к тому же голосовой трафик подвергается дополнительным преобразованиям, из-за которых суммарное время транспортировки пакетов по сети заметно увеличивается.

В суммарную задержку передачи пакета вносят вклад процессы на передающем конце, собственно в сети и на принимающем конце (см. Рисунок 1). Задержка на передающем конце складывается из задержки аккумуляции (на формирование «выборки» из голосового сигнала и ее кодирование), задержки пакетизации (на разбиение «выборки» на IP-пакеты, кадры frame relay или ячейки ATM) и задержки буферизации (на постановку в исходящую очередь, время нахождения в которой зависит от текущей загруженности канала и состояния самой очереди).

Суммарная задержка возрастает и за счет комплементарных процессов на принимающем конце соединения, которые необходимы для восстановления голосового сигнала из пакетной формы. Роль буферизации в этом случае заключается в сглаживании неравномерностей поступления голосовых пакетов из сети. Кроме того, следует учесть задержку транспортировки, которая определяется параметрами среды передачи и обработкой пакетов на промежуточных сетевых узлах.

На суммарную задержку передачи можно взглянуть и под другим углом, выделив в ней постоянный и переменный компоненты. Постоянная составляющая одинакова для любого голосового пакета и слагается из операций формирования «выборки», кодирования (сжатия) и последующего декодирования голосового трафика, процедур обработки на голосовом шлюзе, транспортировки пакетов по каналу связи и буферизации на принимающем конце. Переменная часть зависит от текущей загрузки сети и характера передаваемого по ней трафика. Она определяется нахождением отправляемых пакетов в выходной очереди и затратами на обработку пакетов в промежуточных коммутаторах и маршрутизаторах. В магистральных сетях вклад второго фактора пренебрежимо мал, но в средах IP, где голосовым потокам приходится жестко конкурировать с трафиком других приложений, он может оказаться весьма существенным. Некоторое представление о величинах задержек, вносимых различными типами сетевого оборудования, можно составить по Таблице 1.

Задержка буферизации на выходе определяется не только загрузкой канала, но и размером отправляемых пакетов. Когда нет перегрузки, время доставки зависит от размера пакетов и наличия эффекта так называемого «замораживания/размораживания» канала. Он возникает, например, если голосовые пакеты от двух абонентских устройств транспортируются по одному и тому же каналу. Очевидно, что перед отправкой очередного пакета одно из них должно дождаться освобождения канала, занятого другим. Зависимость задержки «размораживания» от пропускной способности в сетях ATM, frame relay и IP показана на Рисунке 2.

Как видно из рисунка, малый размер ячеек ATM приводит к тому, что уже при пропускной способности в несколько сотен килобит в секунду величина задержки «размораживания» не превышает 25 мс (уровень традиционной телефонии). В сетях frame relay этот показатель даже в лабораторных условиях не опускается ниже 90 мс, еще больше он в среде IP.

Надо заметить, что при передаче данных задержки не создают каких-либо проблем. Работая с браузером или приложением СУБД, мы не замечаем задержек, измеряемых секундами или долями секунды. Другое дело — голос. Как показывают результаты многочисленных тестов, пороговое значение суммарной задержки циклического обращения пакета (round-trip delay) составляет 250 мс. При ее превышении ни один из абонентов не получает своевременного ответа противоположной стороны, и в итоге оба они очень скоро обнаруживают, что говорят одновременно, по сути дела каждый сам с собой. Вот почему в рекомендациях G.114 Международного союза электросвязи (МСЭ) предельная величина задержки при однонаправленной передаче выбрана равной 150 мс.

Типичные значения фиксированных задержек для сетей frame relay приведены в Таблице 2. Временные затраты на сжатие сигнала могут изменяться вдвое в зависимости от применяемого алгоритма, зато обратная операция декодирования к нему практически индифферентна. Еще больший разброс наблюдается в задержках транспортировки: значение 0,25 мс соответствует каналам T1/E1, а 7 мс — соединениям с пропускной способностью 56 Кбит/с. Отдельно выделены сетевые задержки, величина которых зависит от суммарной пропускной способности и особенностей топологии конкретной сети; они могут оказаться особенно велики для спутниковых каналов и наземных линий значительной протяженности. Задержка буферизации на принимающем конце задается администратором и нередко доходит до 80 мс. Однако и без учета буферизации суммарная постоянная задержка оказывается в пределах 70—130 мс, а значит, при наихудшем сценарии на переменную составляющую остается не более 120 мс.

ВЕЧНОЕ НЕПОСТОЯНСТВО

Проблема больших задержек в сетях пакетной передачи усугубляется их нестабильностью (jitter). Кроме исходящей буферизации и загруженности сети она обусловливается различием путей следования отдельных пакетов от источника к приемнику. Для борьбы с флуктуациями задержки применяются входные буферы, где принимаемые голосовые пакеты накапливаются и затем выдаются на декодер с требуемой периодичностью.

На флуктуации задержки в сетях frame relay и IP оказывает влияние переменная длина пакетов: задержка буферизации на передающем конце зависит от длины предыдущего (обрабатываемого) пакета. Для сглаживания этой зависимости крупные пакеты данных разбиваются на пакеты меньшего размера.

Независимость перемещения пакетов по сети нередко приводит к нарушению порядка их следования при приеме. К тому же пакеты, пришедшие слишком поздно, отбрасываются, пополняя список потерянных.

При транспортировке данных эта проблема решается с помощью механизмов повторной передачи, например средствами протокола TCP, применение которых позволяет восстановить исходную последовательность с любого требуемого места. Для приложений реального времени эта схема непригодна, а восстановить корректный порядок следования пакетов по номерам протокола RTP (Real Time Protocol) позволяет все тот же входной буфер.

Очевидно, что его размер должен быть согласован с максимальной прогнозируемой задержкой однонаправленной передачи в конкретной сетевой среде. Слишком маленький буфер не позволяет в должной мере компенсировать флуктуации задержки и ошибки передачи, а излишняя буферизация сама ведет к увеличению суммарной задержки.

ЧТО С ВОЗУ УПАЛО...

Пакет считается потерянным, если, например, он не поступил на принимающий узел в течение определенного времени после прихода предыдущего пакета. Подобные события в сети передачи данных происходят сплошь да рядом. Так, даже в сетях крупных провайдеров Internet доля потерянных пакетов в периоды пиковых нагрузок может превышать 20%. Причинами потери пакета являются перегрузка канала связи, избыточное число коллизий в сетях с разделяемым доступом, ошибки передачи, флуктуации задержки и т. д.

Для приложений, работающих с данными, потери пакетов практически всегда приобретают критичное значение (отсюда и введение механизмов повторной передачи), а при голосовой связи они могут оставаться практически незамеченными. — правда, до поры до времени. Если количество потерянных пакетов начинает превышать некую пороговую долю от общего их числа (на уровне 3—5%) либо «потерянным» оказался непрерывный фрагмент последовательности пакетов, то ухудшение качества связи оказывается ощутимым.

За неимением лучшего в качестве выхода из положения был выбран алгоритм замещения. Декодирующее оборудование заменяет пропущенный пакет полноценным, в простейшем варианте используя копию предшествовавшего ему принятого пакета, в более сложном — строя интерполяцию на основе нескольких предыдущих и последующих пакетов, хранящихся во входном буфере.

Впрочем, при массовых потерях пакетов (более 10%) эта схема малоэффективна. Поэтому в некоторых системах принимающему устройству передается избыточная информация, которую оно может использовать для восстановления потерянных пакетов. Однако такая схема ведет к увеличению требований к пропускной способности.

ТИХО САМ С СОБОЮ

Сигнал эхо — еще один бич пакетной телефонии. Голосовой сигнал возвращается передающей стороне, отражаясь от мест состыковки двухпроводного абонентского шлейфа с четырехпроводным каналом или от любой иной точки голосового тракта, в которой не согласованы импедансы входного и выходного участков. Абонент начинает слышать собственное эхо уже при сравнительно малых задержках (20—30 мс). В этом случае без специальных средств подавления эха не обойтись. Поскольку алгоритмы сжатия G.729 и G.723 сами по себе вносят фиксированную задержку, составляющую 25 и 30 мс соответственно, применение таких средств требуется в сетях пакетной передачи любого типа. Обычно они реализуются в пограничном оборудовании и действуют по принципу линейного моделирования передаваемого речевого сигнала. Результат моделирования вычитается из сигнала, поступающего с противоположного конца соединения.

Следует иметь в виду, что средства подавления эха, как правило, вносят помехи в передачу неголосового трафика, так что они должны автоматически отключаться, например при транспортировке данных.

КОДЫ-КОДИКИ

В сетях ИКМ на каждый голосовой канал отводится пропускная способность 64 Кбит/с (DS0). Сохранение этого значения при пакетной передаче — неоправданная роскошь, вот почему с самого начала применения систем передачи голоса в пакетах в них активно используются различные алгоритмы сжатия.

Практически все они являются производными от одной из двух схем — ADPCM или CELP. Алгоритм адаптивной дифференциальной импульсно-кодовой модуляции (Adaptive Differen-tial Pulse-Code Modulation, ADPCM) сжимает голосовые пакеты вдвое практически без потери в качестве, сохраняя задержку на том же уровне, что и в обычных каналах ИКМ (см. Таблицу 3). Метод кодирования на основе линейного прогнозирования (Code Excited Linear Prediction, CELP) сжимает речевой трафик уже в восемь раз, опять-таки при сохранении высокого качества воспроизведения речи.

Анализ различных алгоритмов кодирования показывает, что пока нет идеального метода, пригодного на все случаи жизни. Каждый из них предлагает определенный компромисс между степенью сжатия, качеством голоса, вносимой задержкой и нагрузкой на процессор цифровой обработки сигналов (Digital Signal Processor, DSP). Выбор конкретного варианта зависит от того, минимизация каких параметров передачи имеет первостепенное значение. Некоторые алгоритмы закреплены за определенными технологиями передачи голоса отраслевыми стандартами. Так Frame Relay Forum для систем VoFR выбрал алгоритмы CS-ACELP (G.729) и MP-MLQ (G.723.1), а в приложениях VoIP семейством стандартов H.323 предусмотрено применение MP-MLQ.

Необходимую голосовым пакетам пропускную способность можно уменьшить и посредством подавления речевых пауз, или цифровой интерполяции речи (Digital Speech Interpolation, DSI). По оценкам сотрудников Bell Laboratories, на долю пауз порой приходится до 60% общей продолжительности разговора. В это время освободившаяся часть суммарной пропускной способности может использоваться для передачи данных или трафика другого типа.

Чтобы абоненты не ощущали неприятных акустических помех вследствие передачи пакетов данных, специальные алгоритмы обеспечивают заполнение пауз шумом, который воспринимается как фоновый для телефонной связи. В продуктах некоторых производителей предусмотрена возможность отключения функции DSI. Она оказывается полезной для воспроизведения естественного звукового фона (особенно когда один из собеседников находится в месте с высоким или сильно меняющимся уровнем шума), правда, ценой снижения эффективности использования пропускной способности.

В сетях frame relay алгоритмы сжатия семейства Algebraic CELP (ACELP) за счет подавления речевых пауз позволяют уменьшить требуемую пропускную способность, необходимую для одного голосового потока, более чем на поря-док — до 6 Кбит/с. В сетях ATM из-за большего удельного веса заголовков ячеек ATM (5 из 53 байт) выигрыш оказывается восьмикратным. Применение методов ADPCM дает заметно худшие результаты: даже после подавления речевых пауз степень сжатия не поднимается выше 4:1.

Рассмотрев факторы, влияющие на качество пакетной передачи голоса, перейдем к анализу особенностей технологий, используемых для такой передачи. На сегодняшний день это ATM, frame relay и IP.

В ТРЕХ СОСНАХ

VoATM. С технической точки зрения ATM — идеальный кандидат на роль транспортной среды для передачи голоса. Разработчиками с самого начала были предусмотрены средства для предоставления приоритета разным типам трафика, обеспечения QoS, повышения надежности связи, эффективного использования пропускной способности и сетевых ресурсов. Режим асинхронной передачи активно применяется во многих магистральных сетях и может стать основой для предоставления услуг ATM-телефонии конечным пользователям. Среди преимуществ ATM перед альтернативными технологиями следует назвать постоянство длины ячеек ATM, что упрощает настройку буферов и гарантирует меньшую вариацию сетевой задержки. А формирование в сетях ATM виртуальных каналов снимает с повестки дня проблемы безопасности и управления адресами.

К общим недостаткам ATM стоит причислить медленность процесса стандартизации, слабую конкуренцию на рынке услуг и высокую стоимость оборудования. Эта технология нечасто рассматривается в качестве самодостаточного решения для передачи голоса между оконечным оборудованием. По мнению многих аналитиков, несмотря на технологическое превосходство сети ATM упустили свой шанс. Впрочем, иногда можно встретить и противоположное мнение: активное внедрение средств VoFR — лишь промежуточный шаг на пути к VoATM.

Отсчет процессу стандартизации VoATM стоит вести с 1997 г., когда ATM Forum утвердил вторую версию спецификации сервиса эмуляции каналов (Circuit Emulation Service, CES) для поддержки передачи голоса и вариант CES с динамическим распределением полосы (Dynamic Bandwidth CES, DB-CES). В том же году увидел свет стандарт на технологию ATM-телефонии (VToA) на базе CES и протокола ATM Adaptation Layer 1 (AAL1).

Фактически это была первая законченная архитектура, которая включала в себя протоколы сигнализации и позволяла организовать взаимодействие сетей TDM и ATM. Правда, спецификации VToA не описывали методы передачи трафика с переменной скоростью (Variable Bit Rate, VBR), необходимые для поддержки QoS в приложениях реального времени. Данный пробел был устранен после появления в иерархической модели ATM протокола AAL2. Выпущенные в ноябре прошлого года рекомендации МСЭ I.363.2 определили протокол AAL2 Common Part Sublayer (CPS), а также способы сжатия пакетов AAL2, их преобразования в поток ячеек ATM и подавления речевых пауз. Гибкая инфраструктура AAL2 позволяла манипулировать и короткими пакетами, и пакетами переменной длины, следующими по сети с невысокой скоростью.

Преимущества VoATM на базе протокола AAL2 перед первоначальным вариантом VToA этим не исчерпываются. Возможность обработки потоков с изменяющимися интервалами между моментами прибытия последовательных пакетов обеспечили поддержку трафика, поступающего сразу от нескольких источников. Границы самих пакетов могут не совпадать с границами ячеек ATM, а чтобы минимизировать флуктуации задержки и добиться гарантированного времени отклика, ячейки ATM было разрешено заполнять лишь частично. Кроме того, за счет мультиплексирования по одному постоянному виртуальному каналу (Permanent Virtual Circuit, PVC) можно передавать несколько голосовых потоков. Наконец, рекомендация МСЭ I.366.2 наделила виртуальный канал AAL2 функциональностью обычной линии ТфОП (включая поддержку сигналов тональной частоты, кодов набранных на тастатуре цифр и сообщений сигнализации), а документ I.366.1 определил методы передачи значительных объемов данных и внешней сигнализации по каналам AAL2.

VoFR. Протокол frame relay первоначально был предложен в качестве механизма пакетной передачи данных по D-каналу ISDN, но впоследствии стал восприниматься как средство взаимодействия локальных сетей через магистральные линии. По сути дела он поддерживал обслуживание по мере возможности и не предлагал каких-либо средств приоритезации трафика или борьбы с перегрузками. Однако последующие расширения этой технологии, предложенные компаниями ACT Net-works, Motorola, Micom, StrataCom и др., выпустившими на рубеже 1995-1996 гг. первые устройства FRAD с поддержкой телефонии, изменили положение к лучшему, хотя по возможностям управланияу задержками передачи и потерями пакетов frame relay по-прежнему уступает ATM. Мощный толчок развитию систем VoFR дало принятие консорциумом Frame Relay Forum в 1997 г. документов FRF.11 Voice over Frame Relay Imple-mentation Agreement и FRF.12 Frame Relay Fragmentation Implementation Agreement, позволивших говорить о достижении совместимости оборудования разных производителей.

Несомненным достоинством сетей frame relay с точки зрения голосовых приложений является возможность динамического перераспределения пропускной способности (Dynamic Band-width Allocation, DBA) между различными пользователями и разными виртуальными каналами, по которым передаются голос и данные. Технология VoFR базируется на восьмикратном сжатии трафика по алгоритму CS-ACELP (хотя предусмотрено и использование MP-MLQ). С учетом дополнительных заголовков при рациональном выборе длины пакетов требуемая пропускная способность не превысит 9,6 Кбит/с и даже будет еще меньше при применении метода избыточности (oversubscription) и подавлении речевых пауз. Эффективность использования пропускной способности повышается также благодаря логическому мультиплексированию каналов (кадры с речью и данными передаются по одному и тому же PVC) и субканальному мультиплексированию (фрагменты нескольких речевых потоков упаковываются в один кадр).

Кроме того, в сетях frame relay имеются механизмы контроля перегрузки в реальном времени путем присвоения «лишним» пакетам специального бита перегрузки (BECN). Совместно со схемами приоритезации они заметно снижают задержки передачи и потери пакетов.

Среди недостатков технологии VoFR можно назвать отсутствие стандартизованного механизма приоритезации трафика в коммутаторах FR и значительную (к тому же переменную) длину пакетов, которая увеличивает задержки передачи и их флуктуации.

VoIP. Как и в случае сетей frame relay, размер пакетов IP оказывает существенное влияние на параметры передачи. Приведем простой пример. В результате применения кодека G.729 требуемая пропускная способность для пакетного голосового трафика может быть снижена с 64 до 8 Кбит/с. Это означает, что при отправке пакетов с интервалом в 20 мс размер их полезной части составит 20 байт. Истинная же длина пакетов из-за «накладных расходов» окажется существенно больше. Для передачи пакета по протоколу RTP к указанным 20 байт придется добавить 14 байт заголовка Ethernet, 24 байт заголовка IP, 8 байт заголовка UDP и еще 12 байт самого RTP. В результате доля «накладных расходов» в общей длине пакета RTP достигнет 58/78, или почти 75% (!). Другими словами, вместо ожидаемых 8 Кбит/с для пакетной передачи одного голосового потока потребуется более 30 Кбит/с.

Чтобы избежать этого, можно просто увеличить длину полезной составляющей, однако такое увеличение неизбежно приводит к росту задержек, а значит, к ухудшению качества сервиса. Другой способ — «мультиплексирование» в пакеты IP-трафика нескольких голосовых каналов. Для получения ощутимого результата их должно быть не менее пяти. Еще одно решение — сжатие самих заголовков. Эта процедура (Compressed RTP) поддерживается оборудованием ряда компаний, предназначенным для медленных соединений PPP, frame relay, ISDN. Ее применение весьма эффективно в сетях frame relay, где пакеты передаются по логическому каналу с фиксированным значением DLCI, и поэтому заголовки содержат избыточную информацию.

В сети IP для достижения сопоставимого качества передачи голоса (прежде всего с точки зрения задержек) требуется большая пропускная способность, чем в сети ретрансляции кадров. В любом случае стабильных параметров удается достичь только в правильно спроектированных частных сетях IP.

Едва ли не единственное безусловное достоинство VoIP заключается в повсеместной распространенности IP. Между тем даже после появления протоколов MPLS, RSVP и DiffServ, а также дополнительных алгоритмов приоритезации трафика в IPv6 эффективность методов обеспечения гарантированного качества сервиса в сетях IP оставляет желать лучшего. Отсутствие ориентации на установление соединений вызывает серьезные проблемы при попытке зарезервировать часть пропускной способности для высокоприоритетного голосового трафика (VoIP), а реализация даже имеющихся механизмов QoS в этих сетях обычно ведет к снижению общей производительности. В результате до сих пор многие системы VoIP используют ATM в качестве транспорта на канальном уровне.

Ставка на технологию VoIP влечет за собой усложнение инфраструктуры: если в среде ATM для передачи голосовых ячеек с гарантированным QoS достаточно организовать еще один виртуальный канал (VC), то в сети IP операции разделения смешанного трафика и его приоритезации приходится выполнять маршрутизатору.

Реализация технологии VoIP регламентируется стандартами H.225, H.248 и H.323, принятыми МСЭ, а также RFC 1889 (протоколы RTP и RTCP) консорциума IETF. Стандарт H.248 совпадает со спецификацией управляющего протоколa Megaco для распределенных систем IP-телефонии, согласованной IETF и МСЭ в августе прошлого года. Кроме того, в качестве сигнального протокола для систем IP-телефонии все большее внимание привлекает Session Initiation Protocol (SIP), описанный в RFC 2543, RFC 2327 и некоторых других документах.

Сегодня VoATM, VoFR и VoIP нередко (и совершенно необоснованно) противопоставляются друг другу. Приверженцы IP, например, вообще настаивают на исключении транспорта ATM из систем IP-телефонии. Не касаясь подоплеки подобных требований, которые, возможно, удастся удовлетворить в сетях лямбда-коммутации с протоколом MultiProtocol Lambda Switching (MPlS), заметим только, что все три технологии еще долго будут сосуществовать. Методы эмуляции позволяют сопрячь сети ATM с сетями коммутации каналов, да и сервисы VoFR и VoIP могут использовать привлекательные возможности режима асинхронной передачи. В смешанной среде FR/ATM услуги VoFR удается реализовать на соединениях с постоянной (CBR) и переменной (VBR) скоростями. Прозрачное сопряжение сетей ATM и frame relay на уровне инкапсуляции протоколов и PVC либо путем преобразования протоколов давно уже регламентировано стандартами Frame Relay Forum (FRF.5 и FRF.8 соответственно). Наконец, при передаче пакетов IP, включая голосовые, не обойтись без протокола канального уровня, и здесь опять на сцену выходят frame relay и ATM.

Как показывает анализ сильных и слабых сторон технологий VoATM, VoFR и VoIP (см. Таблицу 4), ни одну из них сегодня нельзя назвать идеальным решением для пакетной передачи голоса. Несмотря на очевидные преимущества VoATM, эксперты не устают повторять, что целесообразность выбора того или иного варианта в значительной мере определяется параметрами и конфигурацией конкретной сети, уже реализованными сервисами и возможностями установленного оборудования, характером запускаемых приложений, а главное, текущими и будущими потребностями в голосовой связи.

Павел Иванов — научный редактор журнала «Сети». С ним можно связаться по адресу: psi@networld.ru.