Передача голоса по протоколу IP

Как уже отмечалось, передача голоса по протоколу IP (voice over IP — VoIP) является решением скорее 3-го уровня OSI, а не 2-го уровня. Данная функция позволяет VoIP работать автономно в сетях Frame Relay и ATM. Но, что наиболее важно, VoIP работает в обычных локальных сетях, вплоть до настольных ПК. В этом смысле VoIP является скорее приложением, чем службой и это учитывалось в процессе эволюции протоколов VoIP.

Все протоколы VoIP делятся на две категории: централизованные и распределенные. Централизованные модели придерживаются архитектуры клиент/сервер, а распределенные основаны на взаимодействии узлов одноранговой сети. Все технологии VoIP используют обшую среду для передачи голоса в виде пакетов RTP по протоколу IP, а также поддерживают множество кодеков для сжатия данных. Разница заключается в способе передачи сигналов и месте обслуживания логики и режима вызова: в конечных точках или на центральном сервере. У обеих архитектур есть свои достоинства и недостатки. Распределенные модели хорошо масштабируются и являются более гибкими (надежными), так как у них отсутствует центральный узел, который может выйти из строя. И наоборот, централизованные модели управления вызовами отличаются более простым управлением и поддержкой традиционных дополнительных услуг (таких как конференции), но могут иметь ограничения по масштабируемости, определяемые мощностью центрального сервера. В настоящее время разрабатываются гибридные и межсетевые модели, где реализуются преимущества этих подходов.

Самая старая архитектура, Н.323, и самая новая — протокол инициирования сеанса (Session Initiation Protocol — SIP), принадлежат к распределенным схемам управления вызовами VoIP. К методам централизованного управления вызовами относится протокол управления шлюзами среды передачи (Media Gateway Control Protocol — MGCP) и фирменные протоколы, такие как Skinny Station Protocol, разработанный Cisco Systems. Краткое описание каждого из этих протоколов приводится ниже.

Обзор голосовых кодеков

Технология голосовых кодеров/декодеров (кодеков) за последние несколько лет значительно продвинулась вперед благодаря достижениям в области архитектуры построения цифровых систем обработки сигналов (Digital Signal Processor — DSP), а также исследованиям в области распознавания человеческой речи. Новые кодеки не просто выполняют аналого-цифровое преобразование. В них применяются сложные прогнозирующие модели для анализа входного голосового сигнала и последующей передачи голоса с использованием минимальной полосы пропускания. В этом разделе будет приведено несколько примеров голосовых кодеков и используемой ими полосы пропускания. Во всех случаях речь передается RTP-пакетами по протоколу IP.

Простая импульсно-кодовая модуляция голоса (Pulse Code Modulated — PCM) описывается стандартом ITU-T G.711. Он допускает две основные разновидности РСМ со скоростью 64 Кбит/сек: по mu-закону и по А-закону. В обоих этих методах для достижения 12-13-битового линейного качества РСМ на 8 битах используется логарифмическое сжатие. Однако они отличаются менее значительными особенностями сжатия (mu-закон имеет небольшое преимущество при низкоуровневом соотношении "сигнал-шум"). Исторически сложилось так, что использование указанных методов соответствовало географическим границам: в Северной Америке используют модуляцию по mu-закону, а в Европе — по А-закону. Преобразование mu-закона сжатия в А-закон выполняет страна, использующая модуляцию по mu-закону. При поиске неисправностей в системах РСМ несовпадение видов модуляции приводит к неестественно звучащей, но, тем не менее, внятной речи.

Другим часто применяемым методом сжатия является адаптивная дифференциальная импульсно-кодовая модуляция (Adaptive Differential Pulse Code Modulation — ADPCM). Типичным случаем использования ADPCM является кодирование по стандарту ITU-T G.726 с использованием 4-битовых квантов, обеспечивающих скорость передачи 32 Кбит/сек. В отличие от РСМ, 4 бита кодируют не амплитуду речи, а только разницу в амплитуде и скорость изменения амплитуды, используя довольно примитивное линейное прогнозирование.

РСМ и ADPCM являются примерами кодеков по форме сигнала, в методах сжатия которых применяются избыточные характеристики формы сигнала. В новых способах сжатия, разработанных за последние 10-15 лет, используется, кроме того, знание исходных особенностей формирования речи. В таких методах применяются способы обработки сигналов, которые сжимают речь, посылая только упрощенную параметрическую информацию об исходной форме звукового сигнала и голосового тракта. Для передачи этой информации требуется меньшая полоса пропускания. Эти способы могут быть объединены в общую группу кодеков по источнику. В нее входят такие разновидности, как линейное прогнозируемое кодирование (Linear Predictive Coding — LPC), линейный прогноз, возбуждаемый кодовым словом (Code Excited Linear Prediction — CELP) и многоимпульсное многоуровневое квантование (Multipulse, Multilevel Quantization — MP-MLQ).

Перечисленные выше виды кодеков можно разделить на подкатегории. Например, к методам CELP можно отнести версию с малой задержкой, называемую LD-CELP (low delay CELP), а также более сложные методы моделирования голосового тракта с алгебраическими преобразованиями сопряженных структур. Такие кодеки обозначаются как CSA-CELP (conjugate structure algebraic CELP). Данный список можно продолжать до бесконечности, но сетевым разработчикам важно знать только области применения этих подходов в сетях и приложениях.

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

Союз ITU стандартизировал наиболее распространенные методы в телефонии кодирования и пакетирования речи, приняв приведенные ниже стандарты.

•          G.711. Кратко описанный ранее РСМ-метод голосового кодирования со скоростью передачи 64 Кбит/сек. Кодирование голоса по стандарту G.711 всегда обеспечивает правильный формат для передачи голоса в цифровом виде по открытой телефонной сети или через мини-АТС.

•          G.726. Метод кодирования ADPCM со скоростями передачи 40, 32, 24 и 16 Кбит/сек. Речь, кодированная методом ADPCM, также может передаваться между сетями с пакетной передачей речи, открытыми телефонными сетями и сетями на основе мини-АТС при условии, что последние поддерживают ADPCM.

•          G.728. Разновидность CELP-сжатия голоса с малой задержкой и скоростью передачи 16 Кбит/сек. Речь, кодированная методом CELP, должна преобразовываться в формат открытых телефонных сетей для передачи по ним.

•          G.729. Метод CELP-сжатия, позволяющий кодировать речь в потоки со скоростью передачи 8 Кбит/сек. Две разновидности этого стандарта (G.729 и G.729 Annex А) значительно различаются по сложности вычислений, но оба обеспечивают примерно такое же хорошее качество речи, как и метод ADPCM со скоростью 32 Кбит/сек.

•          G.723.1. Метод, который может быть использован для сжатия голоса и других аудиокомпонентов мультимедийных сообщений с очень низкой битовой скоростью передачи. Являясь частью общего семейства стандартов Н.324, этот кодер имеет две битовые скорости передачи: 5,3 и 6,3 Кбит/сек. Более высокая скорость основана на технологии MP-MLQ и обеспечивает более высокое качество; более низкая основана на методе CELP и обеспечивает хорошее качество, а также предоставляет системным разработчикам дополнительную гибкость.

Поскольку кодеки все больше полагаются на субъективно настраиваемые методики сжатия, стандартные объективные показатели качества, такие как суммарное искажение гармоник и отношение сигнал/шум, имеют меньшее отношение к качественным показателям кодека. Распространенным тестом для определения эффективности голосовых кодеков является средняя экспертная оценка (Mean Opinion Score — MOS). Из- за того, что качество голоса и звука обычно оценивается субъективно и зависит от слушателя, в этом методе важен широкий диапазон слушателей и образцов речи. Тесты MOS проводятся на группе слушателей, которые дают голосовым образцам оценки от 1 (плохо) до 5 (отлично). Затем оценки усредняются и получается средняя экспертная оценка. MOS-тестирование также применяется для сравнения качества работы одного и того же кодека в различных условиях, таких как уровни фоновых шумов, способы кодирования и декодирования и т.п. Впоследствии эти данные могут использоваться для сравнения с другими кодеками.

В табл. 19.1 приведены оценки по методу MOS для нескольких кодеков ITU-T, а также показана связь между несколькими низкоскоростными кодеками и стандартом РСМ.

1 Для Texas Instruments DSP 54х.

В этой таблице приведена информация, полезная для сравнения различных реализаций распространенных голосовых кодеков. Относительная полоса пропускания и сложность обработки, выраженная в миллионах операций в секунду (Millions of Instructions Per Second — MIPS) определяют области применения различных кодеков. В целом, высшая средняя экспертная оценка соответствует более сложным кодекам или большей полосе пропускания.

Литература:

Руководство по технологиям объединенных сетей, 4-е издание. : Пер. с англ. — М.: Издательский дом «Вильяме», 2005. — 1040 с.: ил. – Парал. тит. англ.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100