Сеть на базе протокола SIP. Сигнализация на основе протокола SIP
SIP представляет собой текстово-ориентированный протокол, который является частью глобальной архитектуры мультимедиа, разработанной комитетом IETF. Подход SIP к построению сетей IP-телефонии намного проще в реализации, чем Н.323, но меньше подходит для организации взаимодействия с телефонными сетями. В основном это связано с тем, что протокол сигнализации SIP, базирующийся на протоколе HTTP (протокол передачи гипертекста), плохо согласуется с системами сигнализации, используемыми в ТфОП. Идейно SIP основан на том же подходе, что HTTP: запрос – ответ (request – reply). Все сообщения SIP текстовые, и их можно читать глазами, а коды возврата такие же, как в HTTP, поэтому некоторые из них покажутся хорошо знакомыми не только сетевым администраторам, но и многим "продвинутым" пользователям интернета (404 - абонент не найден, 200 - OK). Поэтому протокол SIP более подходит поставщикам услуг Интернет для предоставления услуги IP-телефонии, причем эта услуга будет являться всего лишь частью пакета услуг.
Протокол SIP поддерживает услуги интеллектуальной сети, такие как преобразование имён, переадресация и маршрутизация, что существенно для использования SIP в качестве протокола сигнализации в сети общего пользования, где приоритетной задачей оператора является предоставление широкого спектра телефонных услуг. Другой важной особенностью протокола SIP является поддержка мобильности пользователя. Это свойство SIP не уникально, и, например, протокол Н.323 тоже в значительной степени поддерживает такую возможность.
Протокол SIP разработан группой MMUSIC (Multiparty Multimedia Session Control) комитета IETF, а спецификации протокола представлены в документе RFC 2543. В основу протокола рабочая группа MMUSIC заложила следующие принципы.
Персональная мобильность пользователей. Пользователю присваивается уникальный идентификатор, а сеть предоставляет ему услуги связи вне зависимости от того, где он находится. Для этого пользователь с помощью специального сообщения – REGISTER – информирует о своих перемещениях сервер определения местоположения.
Масштабируемость сети. Она характеризуется, в первую очередь, возможностью увеличения количества элементов сети при её расширении. Серверная структура сети, построенной на базе протокола SIP, в полной мере отвечает этому требованию.
Расширяемость протокола. Она характеризуется возможностью дополнения протокола новыми функциями при введении новых услуг и его адаптации к работе с различными приложениями.
Интеграция в стек существующих протоколов Интернет, разработанных IETF. Протокол SIP является частью глобальной архитектуры мультимедиа. Эта архитектура включает в себя также протокол резервирования ресурсов RSVP, транспортный протокол реального времени RTP, протокол передачи потоковой информации в реальном времени RTSP, протокол описания параметров связи SDP. Однако функции протокола SIP не зависят ни от одного из этих протоколов.
Протокол SIP может быть использован совместно с протоколом Н.323. Возможно также взаимодействие протокола SIP с системами сигнализации ТфОП – DSS1 и ОКС7. Для упрощения такого взаимодействия сигнальные сообщения протокола SIP могут переносить не только специфический SIP-адрес, но и телефонный номер формата Е.164 или любого другого формата. Кроме того, протокол SIP, наравне с протоколами Н.323 и ISUP/IP, может применяться для синхронизации работы устройств управления шлюзами.
Одной из важнейших особенностей протокола SIP является его независимость от транспортных технологий. В качестве транспорта могут использоваться протоколы Х.25, Frame Relay, AAL5/ATM, IPX и др. Структура сообщений SIP не зависит от выбранной транспортной технологии. Но, в то же время, предпочтение отдается технологии маршрутизации пакетов IP и протоколу UDP. При этом, правда, необходимо создать дополнительные механизмы для надежной доставки сигнальной информации. К таким механизмам относятся повторная передача информации при ее потере, подтверждение приема и др.
В протоколе SIP не реализованы механизмы управления потоками информации и предоставления гарантированного качества обслуживания. Кроме того, протокол SIP не предназначен для передачи пользовательской информации, в его сообщениях может переноситься информация лишь ограниченного объема. При переносе через сеть слишком большого сообщения SIP не исключена его фрагментация на уровне IP, что может повлиять на качество передачи информации.
Протокол SIP предусматривает организацию конференций трех видов:
– в режиме многоадресной рассылки (multicasting), когда информация передается на один multicast-адрес, а затем доставляется сетью конечным адресатам;
– при помощи устройства управления конференции (MCU), к которому участники конференции передают информацию в режиме точка – точка, а оно, в свою очередь, обрабатывает ее (т. е. смешивает или коммутирует) и рассылает участникам конференции;
– путем соединения каждого пользователя с каждым в режиме точка-точка.
Протокол SIP дает возможность присоединения новых участников к уже существующему сеансу связи, т. е. двусторонний сеанс может перейти в конференцию.
Для организации взаимодействия с существующими приложениями IP-сетей и для обеспечения мобильности пользователей протокол SIP использует адрес, подобный адресу электронной почты. SIP-адреса бывают четырех типов:
– имя@домен;
– имя@хост,
– имя@IР-адрес;
– № телефона@шлюз.
Таким образом, адрес состоит из двух частей. Первая часть – это имя пользователя, зарегистрированного в домене или на рабочей станции. Если вторая часть адреса идентифицирует какой-либо шлюз, то в первой указывается телефонный номер абонента.
Во второй части адреса указывается имя домена, рабочей станции или шлюза. Для определения IP-адреса устройства необходимо обратиться к службе доменных имен – Domain Name Service (DNS). Если же во второй части SIP-адреса размещается IP-адрес, то с рабочей станцией можно связаться напрямую.
В начале SIP-адреса ставится слово, указывающее, что это именно SIP-адрес, т. к. бывают и другие. Ниже приводятся примеры SIP-адресов:
– sip: als@rts.loniis.ru;
– sip: user1@192.168.100.152;
– sip: 294-75-47@gateway.ru.
Функции, поддерживаемые протоколом SIP:
– положение пользователя;
– возможности пользователя. Протокол SIP позволяет выяснять возможности передающей среды и устройств, которые участвуют в сеансе;
– доступность пользователя;
– установка сеансов. Установка параметров сеанса для сторон, участвующих в нем;
– обработка сеанса. Протокол SIP позволяет модифицировать, передавать и завершать активный сеанс.
Сеть SIP содержит основные элементы трех видов: агенты пользователя, прокси-серверы и серверы переадресации (рисунок 7.1).
Рисунок 7.1 – Пример сети на базе протокола SIP
Агенты пользователя (User Agent или SIP client) являются приложениями терминального оборудования и включают в себя две составляющие: агент пользователя – клиент (User Agent Client – UAC) и агент пользователя – сервер (User Agent Server – UAS), иначе известные как клиент и сервер соответ- ственно. Клиент UAC инициирует SIP-запросы, т. е. выступает в качестве вызывающей стороны. Сервер UAS принимает запросы и возвращает ответы, т.е. выступает в качестве вызываемой стороны. Агент пользователя обладает фиксацией состояния, т. е. способен хранить состояние сеанса или диалога.
Прокси-сервер – промежуточный объект в сети SIP, который отвечает за перенаправление запросов SIP целевому агенту UAS или другому прокси-серверу от имени агента UAC. Но в первую очередь прокси-сервер осуществляет маршрутизация в сети SIP.
Сигнализация на основе протокола SIP. SIP является протоколом прикладного уровня и предназначается для организации, модификации и завершения сеансов связи: мультимедийных конференций, телефонных соединений и распределения мультимедийной информации. Пользователи могут принимать участие в существующих сеансах связи, приглашать других пользователей и быть приглашенными ими к новому сеансу связи. Приглашения могут быть адресованы определенному пользователю, группе пользователей или всем пользователям.
Здесь же следует отметить то, что сигнальные сообщения могут переноситься не только протоколом транспортного уровня UDP, но и протоколом TCP. Протокол UDP позволяет быстрее, чем TCP, доставлять сигнальную информацию (даже с учетом повторной передачи неподтвержденных сообщений), а также вести параллельный поиск местоположения пользователей и передавать приглашения к участию в сеансе связи в режиме многоадресной рассылки. В свою очередь, протокол TCP упрощает работу с межсетевыми экранами (firewall), а также гарантирует надежную доставку данных. При использовании протокола TCP разные сообщения, относящиеся к одному вызову, либо могут передаваться по одному TCP-соединению, либо для каждого запроса и ответа на него может открываться отдельное TCP-соединение.
Одним из обязательных условий организации связи при помощи протокола SIP является обмен между сторонами данными об их функциональных возможностях. Для этой цели чаще всего используется протокол описания сеансов связи – SDP (Session Description Protocol).
Структурная схема организации услуг SIP-сервера представлена на рисунке 7.2.
Рисунок 7.2 – Структурная схема организации услуг SIP-сервера
Модуль управления услугами отвечает за предоставление услуг и за общее управление сервером. Принятые сервером запросы и ответы поступают в модуль управления услугами и обрабатываются им, на основании чего определяется реакция на полученные сообщения. Интерфейс человек-машина позволяет гибко менять настройки сервера и вести мониторинг сети.
Сообщения протокола SIP. Структура сообщений.
Согласно архитектуре «клиент – сервер» все сообщения делятся на запросы, передаваемые от клиента к серверу, и на ответы сервера клиенту.
Все сообщения протокола SIP (запросы и ответы), представляют собой последовательности текстовых строк, закодированных в соответствии с документом RFC 2279. Структура и синтаксис сообщений SIP идентичны используемым в протоколе HTTP. На рисунке 7.3 представлена структура сообщений протокола SIP.
Стартовая строка |
Заголовки |
Пустая строка |
Тело сообщения |
Рисунок 7.3 – Структура сообщений протокола SIP
Стартовая строка представляет собой начальную строку любого SIP-сообщения. Если сообщение является запросом, в этой строке указываются тип запроса, адресат и номер версии протокола. Если сообщение является ответом на запрос, в стартовой строке указываются номер версии протокола, тип ответа и его короткая расшифровка, предназначенная только для пользователя.
Заголовки сообщений содержат сведения об отправителе, адресате, пути следования и др., в общем, переносят информацию, необходимую для обслуживания данного сообщения. О типе заголовка можно узнать по его имени. Оно не зависит от регистра (т. е. буквы могут быть прописные и строчные), но обычно имя пишут с большой буквы, за которой идут строчные.
Пустая строка означает конец полей заголовка.
Сообщения протокола SIP могут содержать так называемое тело сообщения. В запросах АСК, INVITE и OPTIONS тело сообщения содержит описание сеансов связи. Любые ответы могут содержать тело сообщения, но содержимое тела в них бывает разным.
Дадим краткую характеристику самого протокола SIP. Следует заметить, что сообщения SIP могут переноситься как протоколом TCP, так и протоколом UDP. Протокол SIP предусматривает 6 запросов и ответов на них. Сигнализация SIP дает возможность пользовательским агентам и сетевым серверам определять местоположение, выдавать запросы и управлять соединениями.
INVITE – запрос привлекает пользователя или услугу к участию в сеансе связи и содержит описание параметров этой связи. С помощью этого запроса пользователь может определить функциональные возможности терминала своего партнера по связи и начать сеанс связи, используя ограниченное число сообщений и подтверждений их приема.
АСК – запрос подтверждает прием от вызываемой стороны ответа на команду INVITE и завершает транзакцию.
OPTIONS – запрос позволяет получить информацию о функциональных возможностях пользовательских агентов и сетевых серверов. Однако этот запрос не используется для организации сеансов связи.
BYE – запрос используется вызывающей и вызываемой сторонами для разрушения соединения. Перед тем как разрушить соединение, пользовательские агенты отправляют этот запрос к серверу, сообщая о намерении прекратить сеанс связи.
CANCEL – запрос позволяет пользовательским агентам и сетевым серверам отменить любой ранее переданный запрос, если ответ на нее еще не был получен.
REGISTER – запрос применяется клиентами для регистрации информации о местоположении с использованием серверов SIP.
<== предыдущая лекция | | | следующая лекция ==> |
Программирование в Mathcad | | | Испарение и испаряемость |
Дата добавления: 2017-09-19; просмотров: 3042;