|
| ||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||
|
2007 г.
Принципы организации IP-телефонии на базе решений Cisco SystemsИван ЯрцевИнформационный бюллетень JET INFO Передача голоса через IP-сетьИнкапсуляция голосовых данных и расчет пропускной способности каналаГолос для передачи по сети сначала попадает на вход цифрового сигнального процессора DSP (Digital Signal Processor), где он порциями кодируется определенным кодеком. Выход с DSP инкапсулируется в PDU (единица данных протокола — фреймы, пакеты) и передается по сети. При доставке данных реального времени, таких как голос, метод определения PDU, несущих голос, является необходимым. Если обнаруживается такой PDU, можно применить механизмы ускорения его передачи. Технология VoFR (Voice over Frame Relay — передача голоса по каналам Frame Relay) использует специальный заголовок FRF.11 (Рис. 1). Этот заголовок занимает, как минимум, три байта и служит для определения типа данных, которые содержатся во фрейме. Устройства VoATM (Voice over ATM — передача голоса по каналам ATM) используют такой же заголовок. Рис. 1. Поля, отвечающие за пометку приоритета Пропускная способность канала, занимаемого одним голосовым звонком, зависит от следующих компонентов:
Различные кодеки (сокращение от "кодер-декодер" — компонент системы, обеспечивающий сжатие и распаковку определенных данных) требуют разную полосу пропускания:
Занимаемую полосу пропускания можно вычислить, основываясь на битрейте (число битов потока, передаваемых за секунду; основная характеристика видео- или аудиопотока при сжатии) кодека, издержке пакетизации и размере полезной нагрузки в пакете. Размер полезной нагрузки зависит от размера голосового сэмпла (звукового файла), который является величиной конфигурируемой и непосредственно влияет на требуемую полосу пропускания. Голосовой сэмпл — это выход с процессора DSP, инкапсулирующийся в PDU. Cisco использует DSP, обрабатывающие по 10 мс голоса. Оборудование Cisco по умолчанию инкапсулирует в PDU 20 мс голоса вне зависимости от используемого кодека. Это значение можно изменить, но при его увеличении требуемая полоса пропускания уменьшается, что может привести к увеличению переменных задержек (так называемых джиттеров — jitter) и появлению ощутимых разрывов в звучании, если пакет не дойдет до пункта назначения. Размер сэмпла в байтах рассчитывается по формуле:
где
Для вычисления полосы пропускания канала, занимаемой одним звонком, используется следующая формула: Total_bandwidth=(Layer2_overhead+IP_UDP_overhead+Sample_size) / Sample_size*Codec_speed, где
Приведем примеры полосы пропускания, занимаемой одним звонком, при использовании кодеков G.711 и G.729 и различных размерах сэмплов. В качестве протоколов канального уровня возьмем Frame Relay и Ethernet II. Размер служебной информации при использовании Ethernet II составляет 18 байт (6 байт — адрес назначения, 6 байт — адрес источника, 2 байта — тип, 4 — контрольная сумма); при использовании Frame Relay — 6 байт (2 байта — DLCI, 2 — FRF.12, 2 — контрольная сумма). Заголовки IP, UDP и RTP без компрессии занимают 40 байт (20 IP, 8 UDP, 12 RTP). Таким образом получаем распределение, представленное в Таб. 1. Проблемы использования сети передачи данных для передачи голосаВ традиционной телефонии голос имеет гарантированную фиксированную задержку при передаче и гарантированную полосу пропускания для каждого звонка. В сети передачи данных для передачи голоса требуется низкая задержка, минимальные джиттеры и потери пакетов. Проблемы качества передачи голоса включают:
Технологии магистралиДля обеспечения передачи различных типов трафика в магистральных каналах связи используются различные технологии:
Все эти технологии должны обеспечить различным видам трафика соответствующий уровень обслуживания и необходимое качество голосовых соединений. Механизмы обеспечения качества передачи голосовых данныхПриложения реального времени, такие как голосовые, отличаются своими характеристиками от традиционных приложений. Голосовые приложения допускают минимальный джиттер. Потери пакетов и джиттеры ухудшают качество передаваемого голоса. При замене традиционных голосовых технологий IP-телефонией пользователи должны получать то же качество голоса, как и при обычной телефонии. Для эффективной передачи голоса через IP-сеть нужен механизм надежной доставки с маленькой задержкой. VoIP гарантирует передачу голоса высокого качества только в том случае, если аудио- и сигнальные пакеты имеют приоритет перед любыми другими пакетами в сети. Для выполнения этого требования используется механизм QoS (Quality of Service). QoS — это методика обеспечения качества передачи определенных данных, основанная на разделении трафика по приоритетам для соответствующей его обработки. QoS обеспечивает лучший, более предсказуемый, сервис сети, выполняя следующие функции:
Программное обеспечение Cisco IOS (операционная система активного сетевого оборудования фирмы Cisco Systems) включает в себя полный набор средств обеспечения QoS в сети. Перечислим некоторые из них.
Классификация и маркировка трафикаКлассификация позволяет выделить из трафика определенный поток и затем применить к нему политики и действия различного характера. Классификация используется для маркировки, приоритизации, буферизации и т.д. Для определения принадлежности трафика к тому или иному классу, что необходимо для принятия решения о способе его обработки, могут проверяться различные характеристики:
Классификация применяется для входящего и/или исходящего из маршрутизатора трафика. Для маркирования пакета может быть использован заголовок второго уровня (802.1Q/p, FR DE bits) и/или поле TOS IP-заголовка (IP Precedence или DSCP). Маркированный трафик упрощает применение единых правил приоритизации/обработки трафика для всех устройств в сети передачи данных, в том числе и для устройств провайдера услуг. Маркировка трафика и перемаркировка рекомендована на входящем интерфейсе, как можно ближе к источнику трафика. Механизмы очередей или устранения перегрузок на интерфейсахДля регулирования возможных перегрузок на исходящем интерфейсе в ПО маршрутизатора (IOS) существует уровневая система буферизации пакетов. Подсистема L3 оперирует IP-пакетами, L2-буфер сильно зависит от канального протокола и L1-буфер (Tx Ring) работает на драйвере устройства. Существует несколько алгоритмов регулировки очередей для подсистемы L3. При наличии в сети VoIP-трафика компанией Cisco рекомендовано использовать LLQ (Low-Latency Queuing). Алгоритм основан на классификации потоков:
Механизм сжатия заголовков RTP пакетов (cRTP)На маршрутизаторах можно задействовать механизм сжатия заголовков RTP пакетов. В этом случае, вместо того чтобы передавать друг другу RTP-пакеты с заголовком в 40 байт (IP+UDP+RTP), они передают пакеты с заголовком в 2-5 байт. Передающий маршрутизатор заменяет исходный заголовок, а принимающий при приеме его восстанавливает. Механизм не влияет на задержку VoIP-трафика. Уменьшает полосу канала, занимаемую голосовым трафиком. Механизм cRTP имеет следующие характеристики:
Фрагментация пакетов (LFI)Механизм поддерживает выполнение рекомендации ITU G.114 — устройство не должно обрабатывать голосовой пакет больше 20 мс. Механизм не изменяет занимаемую полосу канала. Уменьшает возможную задержку пакета и вариацию задержки (jitter) потока. Механизм LFI имеет следующие характеристики:
Неэффективно использовать данный механизм на каналах более 1 Mbps. Ошибки проектирования IP-телефонииОтличительные черты неправильного проектирования:
Краткий обзор протоколов VoIPВ технологии VoIP используются следующие протоколы:
Соответствие протоколов VoIP уровням модели OSI:
Принципы установления соединенияАбонентские устройства (Dial Peers)Абонентское устройство (Dial Peer) — это адресуемая точка дозвона. Такие точки устанавливают логические соединения, называемые этапами дозвона (Call Legs), для завершения установления звонка. Маршрутизаторы Cisco, поддерживающие голосовые функции, поддерживают два типа абонентских устройств: POTS Dial Peer и VoIP Dial Peer. POTS (Plane old telephone service) Dial Peer подключаются к традиционным телефонным сетям или традиционным телефонным аппаратам. Такие устройства выполняют функции по предоставлению адреса (телефонного номера или диапазона телефонных номеров) для конечного устройства (сети) и также указывают на конкретный голосовой порт, к которому конечное устройство (сеть) подключено. VoIP Dial Peer подключаются через сеть передачи данных и предоставляют адрес назначения (телефонный номер или диапазон номеров) для конечного устройства в сети и ассоциируют адрес назначения со следующим маршрутизатором, на который звонок должен передаться. Когда происходит вызов, устройство генерирует цифры номера дозвона как способ указания устройства, на котором звонок должен завершиться, то есть устройства, на которое совершается звонок. Когда эти цифры попадают на голосовой порт маршрутизатора, маршрутизатор должен иметь способ решить, куда вызов должен быть маршрутизирован. Маршрутизатор находит это решение, просматривая список абонентских устройств. Адрес абонентского устройства, называемый шаблоном назначения (destination pattern), сконфигурирован на каждом абонентском устройстве. Шаблон назначения может соответствовать как одному телефонному номеру, так и диапазону телефонных номеров. Маршрутизатор использует абонентские устройства для установления логических соединений (Call Legs) как в исходящем, так и во входящем направлениях. Когда к маршрутизатору Cisco Systems с голосовыми функциями подключается традиционное телефонное устройство (вариант POTS Dial Peer), в конфигурации маршрутизатора указывается телефонный номер этого устройства и порт, к которому оно подключено. Таким образом, маршрутизатор "знает", куда направлять входящий звонок на этот номер. В случае VoIP Dial Peer конфигурация маршрутизатора включает телефонный номер назначения (диапазон номеров) и сетевой адрес следующего маршрутизатора. Этапы соединенияЭтапы установления соединения (Call Legs) — это логические соединения между любыми двумя телефонными устройствами, такими как шлюзы, маршрутизаторы, приложения Cisco CallManager или оконечные телефонные устройства. Когда поступает входящий вызов, он обрабатывается отдельно, пока не будет определен пункт назначения. После этого устанавливается исходящее соединение, и входящий вызов коммутируется с исходящим портом. Сквозной звонок состоит из четырех этапов соединения: два с точки зрения маршрутизатора, на котором звонок возникает, и два с точки зрения маршрутизатора, на котором телефонное соединение завершается. Входящий этап соединения возникает, когда вызов входит в маршрутизатор или шлюз, исходящий — когда вызов совершается маршрутизатором или шлюзом. Процесс установления телефонного соединения можно описать следующими шагами (Рис. 3): Рис. 3. Этапы соединения с точки зрения маршрутизаторов.
В качестве иллюстрации процесса в главе "Примеры конфигураций" приведен пример конфигурации абонентских устройств и описаны методы конфигурирования диапазонов телефонных номеров. |
|
CITForum © 1997–2025