
- •Глава 1 Конвергенция сетей связи 4
- •Глава 2. Сетевые аспекты ip-телефонии 34
- •Глава 3 Передача речи по ip-сетям 56
- •Глава 4 Протоколы сети Интернет 84
- •Глава 5 - Архитектура н.323 116
- •Глава 8 Протокол управления шлюзами mgcp 221
- •11 Принципы реализации
- •Глава 1 Конвергенция сетей связи
- •1.1 Пропорции в телекоммуникациях
- •А) Трафик в сша б) Трафик в Европе
- •1.2 Перспективы развития ТфОп и ip-сетей
- •1.3 Транспортные технологии пакетной коммутации
- •1.4 Уровни архитектуры ip-телефонии
- •1.5 Различные подходы к построению сетей ip-телефонии
- •1.5.1 Построение сети по рекомендации н.323
- •1.5.2 Сеть на базе протокола sip
- •1.5.3 Сеть на базе mgcp и megaco
- •1.5.4 Сравнение подходов к построению сети ip-телефонии
- •Глава 2. Сетевые аспекты ip-телефонии
- •2.1 Три основных сценария ip-телефонии
- •Вызов инициирован абонентом ТфОп
- •2.2 Проект tiphon
- •2.3 Установление телефонного соединения в ip-сети
- •Абонент а набирает телефонный номер вызываемого абонента б.
- •Шлюз консультируется с привратником о возможных способах маршрутизации вызова.
- •2.4 Эффективность ip-телефонии
- •Глава 3 Передача речи по ip-сетям
- •3.1 Особенности передачи речевой информации по ip - сетям
- •3.1.1 Задержки
- •3.1.3 Устройства ограничения эффектов эха
- •3.2 Принципы кодирования речи
- •3.2.1 Кодирование формы сигнала
- •3.2.2 Кодеры исходной информации (вокодеры) и гибридные алгоритмы
- •Генератор возбуждающего сигнала
- •3.2.3 Процессоры цифровой обработки сигналов для речевых кодеков
- •3.2.4 Основные алгоритмы кодирования речи, используемые в ip-телефонии
- •3.3 Кодеки, стандартизованные itu-t
- •Кодек g.711
- •Кодек g.723.1
- •Кодек g.726
- •Кодек g.728
- •3.3.5 Кодек g.729
- •3.4 Кодеки, стандартизованные etsi
- •3.5 Передача сигналов dtmf
- •3.6 Передача факсимильной информации
- •3.7 О реализации «стандартных» алгоритмов
- •Глава 4 Протоколы сети Интернет
- •4.1 Интернет ab ovo
- •4.2 Стандарты в сфере Интернет
- •4.3 Адресация
- •4.4 Уровни архитектуры Интернет
- •4.5 Протокол ip версии 4
- •4.6 Протокол ip версии 6
- •4.7 Протокол tcp
- •1 Потоки, стек протоколов, механизм портов и мультиплексирование
- •4.7.2 Установление tcp-соединения и передача данных
- •4.7.3 Механизмы обеспечения достоверности
- •4.7.4 Механизм управления потоком данных
- •4.7.5 Состав и назначение полей заголовка
- •4.8 Протокол udp
- •4.9 Требования к современным ip-сетям
- •4.10 Протоколы rtp и rtcp
- •4.11 Многоадресная рассылка
- •Глава 5 - Архитектура н.323
- •5.1 Стандарты мультимедийной связи
- •5.2 Архитектура систем видеотелефонии в узкополосных isdn
- •5.3 Мультимедийная связь в ip-сетях
- •5.4 Терминал н.323
- •5.5 Шлюз н.323
- •5.6 Привратник
- •5.7 Устройство управления конференциями
- •5.8 Реализация оборудования н.323
- •Глава 6 Сигнализация н.323
- •6.1 Семейство протоколов н.323
- •6.2 Протокол ras
- •6.2.1 Обнаружение привратника
- •6.2.2 Регистрация оконечного оборудования
- •6.2.3 Доступ к сетевым ресурсам
- •6.2.4 Определение местоположения оборудования в сети
- •6.2.5 Изменение полосы пропускания
- •6.2.7 Освобождение полосы пропускания
- •6.2.8 Метка доступа
- •6.3 Сигнальный канал н.225.0
- •Сигнальные сообщения h.225.0/q.931 Сообщения ras
- •6.4 Управляющий канал н.245
- •6.4.1 Определение ведущего и ведомого
- •6.4.2 Обмен данными о функциональных возможностях
- •6.4.3 Открытие и закрытие логических каналов
- •6.4.4 Выбор режима обработки информации
- •6.5 Алгоритмы установления, поддержания и разрушения соединения
- •6.5.1 Базовое соединение с участием привратника
- •6.5.2 Базовое соединение без участия привратника
- •Туннелирование управляющих сообщений
- •Процедура быстрого установления соединения
- •6.5.5 Установление соединения с участием шлюза
- •Глава 7 Протокол инициирования сеансов связи - sip
- •7.1 Принципы протокола sip
- •7.2 Интеграция протокола sip с ip-сетями
- •7.3 Адресация
- •7.4 Архитектура сети sip
- •Терминал
- •Прокси-сервер
- •7.4.3 Сервер переадресации
- •Сервер определения местоположения пользователей
- •Пример sip- сети
- •7.5 Сообщения протокола sip
- •7.5.1 Структура сообщений
- •7.5.2 Заголовки сообщений
- •7.5.3 Запросы
- •7.5.4 Ответы на запросы
- •7.6 Алгоритмы установления соединения
- •7.8 Сравнительный анализ протоколов н.323 и sip
- •Глава 8 Протокол управления шлюзами mgcp
- •8.1 Принцип декомпозиции шлюза
- •8.2 Классификация шлюзов
- •8.3 Модель организации связи
- •8.4 Команды протокола mgcp
- •1 (Телефонный ::: канал 2)
- •8.5 Структура команд
- •8.6 Структура ответов на команды
- •8.7 Описания сеансов связи
- •8.8 Установление, изменение и разрушение соединений
- •8.9 Реализация оборудования с поддержкой протокола mgcp
- •8.10 Возможности и перспективы протокола mgcp
- •Глава 9 Протокол megaco/h.248
- •9.1 История создания и особенности протокола megaco/h.248
- •9.3 Сравнительный анализ протоколов mgcp и megaco
- •9.4 Структура команд и ответов
- •9.5 Пример установления и разрушения соединения
- •Глава 10 Качество обслуживания в сетях ip-телефонии 10.1 Что понимается под QoS?
- •Качество обслуживания в сетях пакетной коммутации
- •Трафик реального времени в ip-сетях
- •10.4 Дифференцированное обслуживание разнотипного трафика - Diff-Serv
- •10.5 Интегрированное обслуживание IntServ
- •10.6.2 Процедура резервирования ресурсов
- •10.7 Технология mpls
- •10.8 Обслуживание очередей
- •10.8.1 Алгоритмы организации очереди
- •10.8.1.1 Алгоритм Tail Drop
- •10.8.1.2 Алгоритм Random Early Detection (red)
- •10.8.2 Алгоритмы обработки очередей
- •10.8.2.1 Стратегия fifo
- •10.8.2.2 Очередь с приоритетами
- •10.8.3 Алгоритмы сглаживания пульсации графика
- •10.8.3.1 Алгоритм Leaky Bucket
- •10.8.3.2 Алгоритм «Token Bucket»
- •Глава 11 Принципы реализации
- •11.1 Оборудование ip-телефонии
- •11.2 Особенности оборудования ip-телефонии для России
- •11.3 Шлюз ip-телефонии Протей-itg
- •11.4 Привратник Протей-gk и варианты организации связи
- •11.5 Экономические аспекты применения оборудования ip- телефонии
- •11.6 Виртуальная телефонная линия
- •Система сервисных телефонных карт
- •11.7 Центр обработки вызовов
- •11.8 Модуль ipu как средство интеграции цифровых атс с ip- сетями
- •11.9 Тестирование протоколов ip-телефонии
1.5.2 Сеть на базе протокола sip
Второй подход к построению сетей IP-телефонии, предложенный рабочей группой MMUSIC комитета IETF в документе RFC 2543 [54], основан на использовании протокола SIP - Session Initiation Protocol. SIP представляет собой текст - ориентированный протокол, который является частью глобальной архитектуры мультимедиа, разработанной комитетом Internet Engineering Task Force (IETF). Эта архитектура также включает в себя протокол резервирования ресурсов (Resource Reservation Protocol, RSVP, RFC 2205), транспортный протокол реального времени (Real-Time Transport Protocol, RTP, RFC 1889), протокол передачи потоков в реальном времени (Real-Time Streaming Protocol, RTSP, RFC 2326), протокол описания параметров связи (Session Description Protocol, SDP, RFC 2327), протокол уведомления о связи (Session Announcement Protocol, SAP). Однако функции протокола SIP не зависят от любого из этих протоколов.
Сразу следует отметить, что хотя на сегодня наиболее широкое распространение получил протокол Н.323, всё большее количество производителей старается предусмотреть в своих новых продуктах поддержку протокола SIP. Пока это - единичные явления и серьезной конкуренции протоколу Н.323 они составить не могут. Однако, учитывая темпы роста популярности протокола SIP, весьма вероятно, что в ближайшем будущем решения на его базе займут значительную нишу рынка IP-телефонии.
Подход SIP к построению сетей IP-телефонии намного проще в реализации, чем Н.323, но меньше подходит для организации взаимодействия с телефонными сетями. В основном это связано с тем, что протокол сигнализации SIP, базирующийся на протоколе HTTP, плохо согласуется с системами сигнализации, используемыми в ТфОП. Поэтому протокол SIP более подходит поставщикам услуг Интернет для предоставления услуги IP-телефонии, причем эта услуга будет являться всего лишь частью пакета услуг.
Тем не менее, протокол SIP поддерживает услуги интеллектуальной сети (IN), такие как преобразование (мэппинг) имён, переадресация и маршрутизация [8], что существенно для использования SIP в качестве протокола сигнализации в сети общего пользования, где приоритетной задачей оператора является предоставление широкого спектра телефонных услуг. Другой важной особенностью протокола SIP является поддержка мобильности пользователя, т.е. его способности получать доступ к заказанным услугам в любом месте и с любого терминала, а также способности сети идентифицировать и аутентифицировать пользователя при его перемещении из одного места в другое. Это свойство SIP не уникально, и, например, протокол Н.323 тоже в значительной степени поддерживает такую возможность. Сейчас настал момент, когда эта возможность станет главной привлекательной чертой сетей IP- телефонии нового поколения. Данный режим работы потребует дистанционной регистрации пользователей на сервере идентификации и аутентификации.
Перейдем непосредственно к архитектуре сетей, базирующихся на протоколе SIP (рис. 1.9).
Рис. 1.9 Пример сети на базе протокола
SIP
Сеть SIP содержит основные элементы трех видов: агенты пользователя, прокси-серверы и серверы переадресации.
Агенты пользователя (User Agent или SIP client) являются приложениями терминального оборудования и включают в себя две составляющие: агент пользователя - клиент (User Agent Client - UAC) и агент пользователя - сервер (User Agent Server - UAS), иначе известные как клиент и сервер соответственно. Клиент UAC инициирует SIP-запросы, т.е. выступает в качестве вызывающей стороны. Сервер UAS принимает запросы и возвращает ответы, т.е. выступает в качестве вызываемой стороны.
Кроме того, существует два типа сетевых серверов SIP: прокси- серверы (серверы-посредники) и серверы переадресации. Серверы SIP могут работать как в режиме с сохранением состояний текущих соединений (statefull), так и в режиме без сохранения состояний текущих соединений (stateless). Сервер SIP, функционирующий в режиме stateless, может обслужить сколь угодно большое количество пользователей, в отличие от привратника Н.323, который может одновременно работать с ограниченным количеством пользователей.
Прокси-сервер (Proxy-server) действует «от имени других клиентов» и содержит функции клиента (UAC) и сервера (UAS). Этот сервер интерпретирует и может перезаписывать заголовки запросов перед отправкой их к другим серверам (рис. 1.10). Ответные сообщения следуют по тому же пути обратно к прокси-серверу, а не к клиенту.
Рис. 1.10 Сеть SIP с
прокси-сервером
Ниже представлен алгоритм установления соединения с помощью протокола SIP при участии прокси-сервера:
Прокси-сервер принимает запрос соединения INVITE от оборудования вызывающего пользователя.
Прокси-сервер устанавливает местонахождение клиента с помощью сервера определения местоположения (location server).
Прокси-сервер передает запрос INVITE вызываемому пользователю.
Оборудование вызываемого пользователя уведомляет последнего о входящем вызове и возвращает прокси-серверу сообщение о том, что запрос INVITE обрабатывается (код 100). Прокси-сервер, в свою очередь, направляет эту информацию оборудованию вызывающего пользователя.
Когда вызываемый абонент принимает вызов, его оборудование извещает об этом прокси-сервер (код 200), который переправляет информацию о том, что вызов принят, к оборудованию вызывающего пользователя.
Вызывающая сторона подтверждает установление соединения передачей запроса АСК, которое прокси-сервер переправляет вызываемой стороне. Установление соединения закончено, абоненты могут обмениваться речевой информацией.
Сервер переадресации (Redirect server) определяет текущее местоположение вызываемого абонента и сообщает его вызывающему пользователю (рис. 1.11). Для определения текущего местоположения вызываемого абонента сервер переадресации обращается к серверу определения местоположения, принципы работы которого в документе RFC 2543 не специфицированы.
ДОМЕН 1
ДОМЕН 3
Рис. 1.11 Сеть SIP с сервером переадресации
Алгоритм установления соединения с использованием протокола SIP при участии сервера переадресации выглядит следующим образом:
Сервер переадресации принимает от вызывающей стороны запрос соединения INVITE и связывается с сервером определения местонахождения, который выдает текущий адрес вызываемого клиента.
Сервер переадресации передает этот адрес вызывающей стороне. В отличие от прокси-сервера, запрос INVITE к оборудованию вызываемого пользователя сервер переадресации не передает.
Оборудование вызывающего пользователя подтверждает завершение транзакции с сервером переадресации запросом аСк.
Далее оборудование вызывающего пользователя передает запрос INVITE на адрес, полученный от сервера переадресации.
Оборудование вызываемого пользователя уведомляет последнего о входящем вызове и возвращает вызывающему оборудованию сообщение о том, что запрос INVITE обрабатывается (код 100).
Когда вызываемый абонент принимает вызов, об этом извещается оборудование вызывающего пользователя (код 200).
Установление соединения закончено, абоненты могут обмениваться речевой информацией.
Существует также и бессерверный вариант соединения, когда один терминал может передать запрос другому терминалу непосредственно.
Дадим краткую характеристику самого протокола SIP. Следует заметить, что сообщения SIP могут переноситься как протоколом TCP, так и протоколом UDP.
Протокол SIP предусматривает 6 запросов и ответов на них. Сигнализация SIP дает возможность пользовательским агентам и сетевым серверам определять местоположение, выдавать запросы и управлять соединениями.
INVITE - запрос привлекает пользователя или услугу к участию в сеансе связи и содержит описание параметров этой связи. С помощью этого запроса пользователь может определить функциональные возможности терминала своего партнера по связи и начать сеанс связи, используя ограниченное число сообщений и подтверждений их приема.
АСК - запрос подтверждает прием от вызываемой стороны ответа на команду INVITE и завершает транзакцию.
OPTIONS - запрос позволяет получить информацию о функциональных возможностях пользовательских агентов и сетевых серверов. Однако этот запрос не используется для организации сеансов связи.
BYE - запрос используется вызывающей и вызываемой сторонами для разрушения соединения. Перед тем как разрушить соединение, пользовательские агенты отправляют этот запрос к серверу, сообщая о намерении прекратить сеанс связи.
CANCEL- запрос позволяет пользовательским агентам и сетевым серверам отменить любой ранее переданный запрос, если ответ на нее еще не был получен.
Оборудование вызывающего пользователя подтверждает завершение транзакции с сервером переадресации запросом аСк.
Далее оборудование вызывающего пользователя передает запрос INVITE на адрес, полученный от сервера переадресации.
Оборудование вызываемого пользователя уведомляет последнего о входящем вызове и возвращает вызывающему оборудованию сообщение о том, что запрос INVITE обрабатывается (код 100).
Когда вызываемый абонент принимает вызов, об этом извещается оборудование вызывающего пользователя (код 200). Установление соединения закончено, абоненты могут обмениваться речевой информацией.
Существует также и бессерверный вариант соединения, когда один терминал может передать запрос другому терминалу непосредственно.
Дадим краткую характеристику самого протокола SIP. Следует заметить, что сообщения SIP могут переноситься как протоколом TCP, так и протоколом UDP.
Протокол SIP предусматривает 6 запросов и ответов на них. Сигнализация SIP дает возможность пользовательским агентам и сетевым серверам определять местоположение, выдавать запросы и управлять соединениями.
INVITE - запрос привлекает пользователя или услугу к участию в сеансе связи и содержит описание параметров этой связи. С помощью этого запроса пользователь может определить функциональные возможности терминала своего партнера по связи и начать сеанс связи, используя ограниченное число сообщений и подтверждений их приема.
АСК - запрос подтверждает прием от вызываемой стороны ответа на команду INVITE и завершает транзакцию.
OPTIONS - запрос позволяет получить информацию о функциональных возможностях пользовательских агентов и сетевых серверов. Однако этот запрос не используется для организации сеансов связи.
BYE - запрос используется вызывающей и вызываемой сторонами для разрушения соединения. Перед тем как разрушить соединение, пользовательские агенты отправляют этот запрос к серверу, сообщая о намерении прекратить сеанс связи.
CANCEL- запрос позволяет пользовательским агентам и сетевым серверам отменить любой ранее переданный запрос, если ответ на нее еще не был получен.
REGISTER - запрос применяется клиентами для регистрации информации о местоположении с использованием серверов SIP.
Более подробная информация о протоколе SIP приведена в главе 7.