Читаем Asterisk™: будущее телефонии Второе издание полностью

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

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

Протоколы VoIP

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

IAX (протокол Inter-Asterisk eXchange)

Чтобы проверить человека, который заявляет, что является знатоком Asterisk, попросите его прочитать название этого протокола. Казалось бы, оно должно звучать, как «ай-эй-экс», но так можно и язык сломать[85]. К счастью, правильно он произносится «иикс»[86]. IAX - это открытый протокол, то есть кто угодно может загружать его и вести его разработку, но он пока что не является стандартом[87]. Ожидается, что IAX2 вскоре станет IETF-протоколом. В настоящее время IAX2 находится в IETF в статусе проекта и ожидается, что он станет официальным протоколом в течение нескольких лет. В Asterisk поддержку IAX обеспечивает модуль chan_iax2.so.

История

Протокол IAX был разработан компанией Digium для обмена информацией с другими серверами Asterisk (отсюда и название: протокол Inter- Asterisk eXchange). Крайне важно отметить, что IAX не ограничен применением только в Asterisk. Этот стандарт открыт для использования и поддерживается многими телекоммуникационными проектами с открытым исходным кодом, а также несколькими производителями оборудования. IAX - это транспортный протокол (подобно SIP), который использует один порт UDP (4569) и для обмена сигналами по каналам, и для медиа-потоков. Как объясняется ниже в данной главе, это упрощает обслуживание при использовании межсетевых экранов, поддерживающих NAT.

IAX также обладает уникальной способностью объединять несколько сеансов в один поток данных, что может обеспечивать громадный выигрыш по пропускной способности при отправке множества одновременных каналов на удаленный сервер. Объединение позволяет представлять множество медиа-потоков под одним заголовком датаграммы (datagram), что сокращает издержки на отправку каждого отдельно взятого канала. Таким образом снижаются задержки и сокращаются требования к вычислительной мощности и пропускной способности, что обеспечивает возможность масштабирования протокола для поддержания большого числа активных каналов между конечными точками. Если требуется передавать большое количество IP-вызовов между двумя конечными точками, следует обратить особое внимание на способность IAX объединять каналы связи.

Будущее

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

Вопросы безопасности

IAX включает возможность аутентификации тремя способами: открытый текст, хеширование MD5 и обмен ключами RSA. Конечно, это никак не касается шифрования медиа-потоков или заголовков при передаче между конечными точками. Многие решения включают использование устройства или программного обеспечения виртуальной частной сети (Virtual Private Network, VPN) для шифрования потока на другом уровне технологии, при котором от конечных точек требуется заранее установить правила, по которым будут конфигурироваться и работать эти каналы. Однако сейчас IAX также может шифровать потоки между конечными точками с использованием динамического обмена ключами при установлении соединения (за счет применения конфигурационной опции encryption=aes128), что обеспечивает возможность использования автоматического выбора ключей.

IAX и NAT

Перейти на страницу:

Похожие книги

Основы программирования в Linux
Основы программирования в Linux

В четвертом издании популярного руководства даны основы программирования в операционной системе Linux. Рассмотрены: использование библиотек C/C++ и стан­дартных средств разработки, организация системных вызовов, файловый ввод/вывод, взаимодействие процессов, программирование средствами командной оболочки, создание графических пользовательских интерфейсов с помощью инструментальных средств GTK+ или Qt, применение сокетов и др. Описана компиляция программ, их компоновка c библиотеками и работа с терминальным вводом/выводом. Даны приемы написания приложений в средах GNOME® и KDE®, хранения данных с использованием СУБД MySQL® и отладки программ. Книга хорошо структурирована, что делает обучение легким и быстрым. Для начинающих Linux-программистов

Нейл Мэтью , Ричард Стоунс , Татьяна Коротяева

ОС и Сети / Программирование / Книги по IT
1001 совет по обустройству компьютера
1001 совет по обустройству компьютера

В книге собраны и обобщены советы по решению различных проблем, которые рано или поздно возникают при эксплуатации как экономичных нетбуков, так и современных настольных моделей. Все приведенные рецепты опробованы на практике и разбиты по темам: аппаратные средства персональных компьютеров, компьютерные сети и подключение к Интернету, установка, настройка и ремонт ОС Windows, работа в Интернете, защита от вирусов. Рассмотрены не только готовые решения внезапно возникающих проблем, но и ответы на многие вопросы, которые возникают еще до покупки компьютера. Приведен необходимый минимум технических сведений, позволяющий принять осознанное решение.Компакт-диск прилагается только к печатному изданию книги.

Юрий Всеволодович Ревич

Программирование, программы, базы данных / Интернет / Компьютерное «железо» / ОС и Сети / Программное обеспечение / Книги по IT