Реальное качество воспроизводимой речи в случае IP-телефонии зависит от
множества факторов и может варьироваться в значительных пределах в зависимости
от клиентского программного и аппаратного обеспечения, шлюзового оборудования,
пропускной способности и загруженности IP-сети. Все это сказывается на таких
технических характеристиках передачи, как задержка, вариация задержки, доля
потерянных пакетов.
Общая задержка складывается из задержки на обработку на шлюзе и задержки при
передаче по сети. Первую составляющую задержки мы уже частично рассмотрели при
знакомстве с вокодерами. Кроме того, дополнительный вклад в нее вносят задержки
на передачу информации между подсистемами шлюза, на размещение сжатых данных в
пакетах и т. д.
Однако в целом задержка на шлюзе относительно невелика по сравнению с
характерными задержками в сети, к тому же последние гораздо менее предсказуемы и
зависят от конфигурации сети, ее загруженности в каждый конкретный момент, числа
транзитных маршрутизаторов, максимально допустимого размера пакетов и других
факторов. В частности, каждый промежуточный маршрутизатор обычно вносит задержку
около 10 мс, а если он перегружен, то и больше. Между тем, как известно,
качество речи имеет приемлемый уровень при общей задержке не более 200-300
мс.
Те же причины, по которым задержка в сетях IP оказывается непредсказуемой,
приводят к вариации задержки, т. е. к поступлению пакетов со сжатой речью через
нерегулярные промежутки времени. Кроме того, из-за различий в маршрутах пакеты
могут поступать не в том порядке, в каком они были отправлены.
Передача голоса по сети осуществляется в протокольных блоках данных UDP. Это
связано, в частности, с тем, что повторная передача потерянных или испорченных
пакетов, как то предусматривается TCP, привела бы к еще большим задержкам и
оказалась бы в итоге бесполезной. Однако в результате ничто не гарантирует от
потерь пакетов. Как следствие, при перегруженности сети или низком качестве
линий связи значительный процент пакетов может оказаться утерян или испорчен.
При потерях свыше 5% речь становится неразборчивой.
Кроме того, одна проблема может усугубить другую. Например, в целях
компенсации переменной задержки шлюз на дальнем конце может отложить
воспроизведение речи для повышения качества ее звучания на время, равное
величине типичной вариации задержки. При этом данные помещаются в так называемый
буфер синхронизации (jitter buffer). Чем больше вариация задержки в сети, тем
вместительнее должен быть буфер - и тем больше будет общая задержка!
КОМПЕНСАЦИЯ НЕДОСТАТКОВ
Как правило, управляемые сети IP способны обеспечить более-менее сносное
качество голосовой связи. Чем же они отличаются от неуправляемых сетей? Прежде
всего тем, что их операторы приняли те или иные меры для обеспечения качества
обслуживания, в частности за счет введения приоритетов трафика. Как правило, это
корпоративные сети, где администратор может контролировать все составляющие сеть
устройства.
Обеспечить приоритет голосовых потоков над информационными можно, например,
посредством настройки маршрутизатора на первоочередное обслуживание пакетов с
определенным номером порта UDP. В результате голосовые пакеты будут пропускаться
маршрутизатором вне очереди.
Другой способ состоит в использовании протокола резервирования ресурсов
(Resource ReserVation Protocol, RSVP). Этот протокол позволяет резервировать
необходимые ресурсы, в том числе пропускную способность, и фиксирует маршрут
прохождения голосовых пакетов от отправителя к получателю. Фактически, если
воспользоваться терминологией из мира связи, он выполняет функции
каналообразующего протокола в сетях передачи пакетов.
Кроме того, задержку (и ее вариацию) можно сократить за счет ограничения
максимально допустимого размера пакета. В этом случае чересчур длинные
информационные пакеты не будут задерживать отправку маршрутизатором голосовых
пакетов. Этого можно достичь посредством конфигурации маршрутизаторов на
сегментацию всех исходящих пакетов при превышении их длины заданной величины.
Как рекомендуют специалисты компании Micom (подразделение Nortel Networks),
максимальный размер пакета не должен превышать 256 байт в случае канала со
скоростью 64 Кбит/с, 512 байт - при 128 Кбит/с, 2048 байт - при 512 Кбит/с и
6144 байт - для линии T-1.
СЖАТИЕ РЕЧИ
Передача речи в несжатом виде занимала бы слишком большую пропускную
способность сети и, кроме того, не давала бы никаких непосредственных
преимуществ по сравнению с телефонными сетями, поэтому шлюзы имеют в своем
составе так называемый вокодер или кодировщик речи. Вокодер осуществляет
компрессию речи перед передачей в сеть IP и ее декомпрессию на принимающей
стороне.
Однако, чтобы произвести сжатие, вокодеру требуется на какое-то время
поместить данные в буфер для анализа речи. Он как бы заглядывает вперед в целях
оптимизации производимого сжатия. Даже в лучших вокодерах подобная задержка
составляет 15-45 мс. Часто она называется алгоритмической задержкой.
Кроме того, вокодер вносит дополнительную задержку при выполнении реальных
расчетов по сжатию речи - так называемую задержку на сжатие. В этом случае
величина задержки зависит от того, какой обычный или сигнальный процессор
используется, т. е. насколько он быстр. Как правило, чем ниже скорость передачи,
т. е. чем плотнее сжатие, тем больше задержка на вычисления.
Однако при сжатии речи ее первоначальное звучание (аналоговая форма сигнала)
может быть воспроизведено лишь приблизительно, поэтому при сильном сжатии
качество речи (о чем мы поговорим в следующем разделе) будет заведомо ниже,
независимо от других факторов.
Качество вокодеров измерялось во многих независимых тестах. Как правило,
такая оценка является субъективной и определяется на основе мнения принимающих
участие в тестировании. При пятибалльной шкале вокодер G.711 со сжатием 64
Кбит/с получил оценку 4,4, а, например, вокодер G.729a со сжатием 8 Кбит/с -
4,0; при этом время оцифровки составляет 0,75 мс и 10 мс соответственно.
Основной задачей при управлении потоком речевой информации по сети
Интернет становится обеспечение небольшой и постоянной задержки.
Восприятие речи человеком очень чувствительно к задержкам, причем как к
ее величине, так и колебаниям. Для телефонной связи задержка не должна
превышать 150 мс при работе по наземным линиям связи и 250 мс при
использовании спутниковых каналов.
В телефонной сети, где используются физические соединения, это
требование обеспечивается относительно легко за счет систем передачи.
В сетях передачи данных выполнить эти требования несколько сложнее,
поскольку параметры задержки должны обеспечиваться коммутаторами или
маршрутизаторами. Для этого при обработке очередей пакетов каждый
коммутатор или маршрутизатор для каждого пакета должен знать приоритет и
допустимое время нахождения его в очереди.
В сетях с коммутацией пакетов, где используются виртуальные соединения,
известны параметры соединения, включая сведения о маршруте и числе
транзитных узлов. Поэтому каждый узел имеет возможность определить
динамический приоритет пакета и допустимое время на его обработку.
В сетях с маршрутизацией, к числу которых принадлежит сеть Интернет,
транзитный узел (маршрутизатор), как правило, не знает через какое
количество транзитных узлов предстоит пройти пакету, пока он не достигнет
адресата. Поэтому у транзитного узла отсутствуют данные, необходимые для
определения допустимого времени обработки пакета. Кроме того,
маршрутизация пакетов требует более продолжительного времени обработки
пакета на узле. Это время не является постоянным и носит случайный
характер.
Также имеет значение и дейтаграммный режим, применяемый в Интернет,
когда маршрут передачи последующего пакета может отличаться от маршрута,
по которому был передан предыдущий пакет. Это может приводить к нарушению
порядка следования пакетов и необходимости их сортировки на принимающей
стороне, что также оказывает влияние на увеличение задержки.
Если добавить общую проблему перегруженности транспортных узлов сети
Интернет, то картина станет вовсе печальной.
Рассмотрим каким образом в настоящее время выходят из положения, чтобы
обеспечить приемлемое качество передачи речевой информации.
Существует два подхода.
Реализация первого подхода предусматривает резервирование части
пропускной способности сети для передачи пакетов с речевой информацией.
Для того, чтобы более эффективно использовать зарезервированную полосу
пропускания, на оконечном или шлюзовом оборудовании должна осуществляться
предварительная концентрация речевой информации. При этом пакеты IP должны
формироваться не по мере поступления речевых сигналов, а с некоторой
задержкой, достаточной для сборки информационного блока бoльших размеров.
Передача речи в больших информационных блоках упрощает процедуру
управления очередями на транзитных узлах, что очень существенно в связи с
неразвитой системой приоритетов существующего протокола IP. Однако
реализация этого подхода приводит к появлению дополнительной задержки.
Для резервирования полосы пропускания в сети IP может использоваться
метод WFQ (Weighted Fair Queuing) или протокол RSVP (Resource Reservation
Protocol), разрабатываемый группой перспективных разработок Интернет IETF (Internet Engineering Task Force).
Метод WFQ позволяет для каждого вида трафика выделять определенную
часть полосы пропускания. Оператор через систему административного
управления может задать количество очередей (до 10 очередей для передачи
данных и одну очередь для системных сообщений). В случае, если одна
очередь не использует полностью выделенную ей полосу пропускания, то
свободный резерв полосы пропускания может задействоваться для передачи
информации из следующей очереди. Этот метод позволяет гибко использовать
ресурсы сети. Например, если для очереди с речевой информацией
зарезервировано 50% пропускной способности, а используется только 30%, то
следующая очередь получит в свое распоряжение дополнительно 20% до тех
пор, пока эта пропускная способность снова не потребуются очереди с
речевой информацией. Метод WFQ реализован в оборудовании фирмы Cisco.
Протокол RSVP предназначен только для резервирования части пропускной
способности.
Используя RSVP, отправитель периодически информирует получателя о
свободном количестве ресурсов сообщением RSVP Path (рис.
6).
Транзитные маршрутизаторы по мере прохождения этого сообщения также
анализируют имеющееся у них количество свободных ресурсов и подтверждают
его соответствующим сообщением RSVP Resv, передаваемым в обратном
направлении. Если ресурсов достаточно, то отправитель начинает передачу.
Если ресурсов не достаточно, получатель должен снизить требования или
прекратить передачу информации.
Недостатком протокола RSVP является то, что полоса пропускания,
выделяемая источнику информации, при снижении активности источника не
может быть использована для передачи другой информации. Как альтернатива
этому способу может использоваться алгоритм управления потоками на основе
системы приоритетов, однако в существующей версии IP этот механизм развит
недостаточно.
Рис. 6. Применение протокола RSVP
Механизм управления приоритетами должен быть реализован в следующей
шестой версии IP, где предусматривается введение до 16 приоритетов, а
также возможность организации нескольких логических потоков в рамках
одного физического соединения. Однако в настоящее время аппаратура,
реализующая IP версии 6, только начала появляться на рынке.
Другой подход предусматривает построение магистральной транспортной
сети Интернет на основе технологии Frame Relay или АТМ (рис.
7). В этом
случае пограничные узлы IP взаимодействуют друг с другом через виртуальные
соединения сети Frame Relay или ATM, для которых обеспечиваются параметры
трафика и качества обслуживания, такие как скорость передачи, время
задержки, время отклонения от задержки и т.д. Использование Frame Relay
или АТМ позволяет отказаться от применения транзитных маршрутизаторов IP.
При этом возможно более эффективное использование полосы пропускания за
счет установления соединения для каждого телефонного разговора.
Рис. 7. Использование в транспортной сети Интернет
технологий АТМ и Frame Relay
ПОДАВЛЕНИЕ ЭХА И ПАУЗ
Помимо пауз в разговоре задержка вызывает еще целый ряд проблем, в частности
эхо и наложение голосов. В случае, когда задержка составляет менее 10 мс,
звонящий абонент просто не различает эха. Однако, как мы видели, такая величина
задержки - недостижимый для IP-телефонии идеал. Поэтому производители шлюзов
вынуждены встраивать в DSP специальную схему для извлечения эхо-сигналов. Данная
схема - эхо-подавитель - сравнивает голосовые данные, полученные из пакетной
сети, с аналогичными данными, передаваемыми в пакетную сеть, и удаляет эхо с
помощью цифрового фильтра. Причиной эха является несовпадение импеданса
(сопротивления) при переходе с двух пар на четыре в телефонной сети.
Участники беседы говорят не непрерывно, а делают паузы между словами,
задумываются на какое-то время и т. д. Кроме того, обычно один человек слушает,
а другой говорит. Как результат, полнодуплексное соединение бывает занято только
около 40% времени. Таким образом, подавление пауз, т. е. прекращение передачи
IP-пакетов, когда никто ничего не произносит, позволяет сократить необходимую
пропускную способность на 60%.