- •1 Назначение и принципы протокола SIP
- •Назначение и принципы протокола SIP
- •Согласно принципам семиуровневой модели Взаимодействия открытых систем OSI (Open Systems Interconnection) особенностью протокола
- •В основу протокола положены следующие принципы:
- •Масштабируемость сети
- •Персональная мобильность пользователей.
- •Расширяемость протокола
- •Интеграция в стек существующих протоколов Интернет
- •Взаимодействие с другими протоколами сигнализации
- •Протокол SDP
- •Знаком «*» обозначены необязательные поля. Поля, используемые в протоколе:
- •Описание параметров времени
- •ЗАПРОС
- •Терминал
- •Сервер
- •Прокси-сервер
- •Предусмотрено два типа прокси-серверов - с
- •Сервер переадресации
- •Сервер определения местоположения пользователей
- •ЗАПРОС
- •Request-URI
- •Существует 6 основных видов запросов:
- •3 Запрос CANCEL отменяет обработку ранее переданных запросов с теми же, что и
- •После испытаний протокола SIP в реальных сетях
- •ОТВЕТ
- •Reason-Phrase даёт краткое описание кода ответа и предназначена для визуального восприятия пользователем.
- •Определено шесть классов ответов. Все ответы делятся на два типа: информационные и окончательные.
- •Информационные или предварительные ответы (1xx)
- •Ответы успешной обработки запроса (2xx)
- •SIP-Ответы успешной обработки запроса.
- •Ответы перенаправления вызова (3xx)
- •SIP-ответы перенаправления вызова.
- •302 Moved Temporarily. Вызываемый пользователь временно изменил свое
- •Ответы ошибки в запросе (4xx)
- •Ответы отказа сервера (5xx)
- •SIP-ответы отказа сервера.
- •Ответы полной невозможности установления соединения (6xx)
- •Адресация в сетях SIP
- •Заголовки сообщений
- •Заголовок Call-ID - уникальный идентификатор сеанса связи
- •Реализация услуг телефонии на базе протокола SIP
- •Процедура управления соединением
- •Эти заголовки обязательны для всех SIP-запросов. Они являются основными частями SIP-сообщения, поскольку обеспечивают
- •Если запрос принимается , должны быть произведены любые связанные с ним изменения состояния
- •5 Обработка заголовка Require.Поле этого заголовка используется UAC, чтобы сообщить UAS о расширениях,
- •Установление соединения с участием прокси-сервера
- •1 INVITE Anton Прокси-сервер1
- •INVITE sip:vladimir@protei.ru SIP/2.0
- •Max-Forwards: 70
- •Call-ID: 3848276298220188511@niits.ru
- •Порядковый
- •Content-Type: application/sdp
- •Content-Length: 151
- •SIP/2.0 407 Proxy Authorization Required
- •Call-ID: 3848276298220188511@niits.ru
- •Запрос ACK должен содержать значения заголовков Call-ID, From, и поля Request-URI, идентичные тем,
- •Proxy1 выполняя следующие шаги: 1Создаёт копию полученного запроса.
- •Proxy2 добавляет в сообщение свой заголовок Via:
- •Местоположение вызываемого пользователя определено. Вызываемый пользователь получает сигнал о входящем вызове от своего
- •11 180 (Ringing)
- •Демонстрационная часть
- •К IP-сети подключены два абонента с sip- адресами:
- •Вызываемый пользователь временно изменил свое местоположение и может быть найден по адресу, указанному
- •INVITE
- •На этом изучение теоретического материала заканчивается.
Call-ID: 3848276298220188511@niits.ru
Данный заголовок является универсальным идентификатором, объединяющим группу сообщений. Он должен быть одинаковым для всех запросов и ответов, передаваемых одним из двух UA в процессе диалога.
Назад
Порядковый
номер.
CSeq: 1 INVITE
Данное |
поле |
заголовка |
|
Тип запроса. |
|
||||
служит |
|
средством |
|
|
идентификации |
и |
|
|
|
|
упорядочения транзакций.
Назад
Contact: <sip:anton@serv1.niits.ru;transport=tcp>
Содержит SIP или SIPS URI, которые могут быть использованы для связи с пользователем, передающем сообщение.
Текущий адрес пользователя, на который он может принимать входящие сообщения.
Назад
Content-Type: application/sdp
Определяет |
тип |
тела |
т.е. приложение по |
сообщения, |
переданного |
протоколу SDP. |
|
получателю. |
|
|
|
Назад
Content-Length: 151
|
|
Тело |
Указывает отраженный в |
|
сообщения |
десятичном виде размер |
|
имеет длину |
(в байтах) тела сообщения, |
|
151 байт. |
переданного получателю. |
|
|
|
|
Назад
|
|
|
|
|
|
Тело сообщения |
||
v=0 |
|
Версия |
|
|||||
|
|
|||||||
|
|
|
|
|
протокола. |
|
||
|
|
|
|
|
||||
|
|
|
|
|
||||
o=anton |
2890844526 2890844526 IN IP4 serv1.niits.ru |
|||||||
|
|
|
|
|
|
|
||
s=- |
|
|
|
Идентификаторы владельца сессии. Параметр ‘o’ имеет вид:о |
||||
|
|
|
||||||
|
|
|
пользователя><идентификатор сессии><время><тип |
|||||
|
|
|
|
|||||
c=IN IP4 |
Имя сессии(без |
><тип адреса><адрес>. |
||||||
названия) |
||||||||
|
||||||||
|
|
|
||||||
|
|
|||||||
|
|
|
|
|
|
Данные связи. Параметр имеет вид:<тип |
||
|
|
|
|
|
|
Время активности сеанса. Параметр имеет вид:<время начала><время остановки>. Если время начала и остановки равно «0», то сессия расценивается как
m=audio 49172 RTP/AVP 0постоянная.
|
|
|
|
|
Название медиаданных и адрес их |
|
|
|
|
|
|
||
|
|
|
|
|
||
a=rtpmap:0 PCMU/8000 |
|
|
передачи. Параметр имеет вид:<тип |
|||
|
|
медиаданных><порт><транспортный |
||||
|
|
|
|
|
||
|
|
|
|
|
||
|
|
|
|
|
протокол><тип кодека>. |
|
|
|
|
|
|
|
|
|
|
Описание мультимедийных атрибутов. |
|
|||
|
|
Параметр имеет вид:а = <признак:значение>. |
Назад |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m=audio 49172 RTP/AVP 0
Название медиаданных и адрес их передачи. Параметр имеет вид:<тип медиаданных><порт><транспортный протокол><тип кодека>.
В настоящее время в rfc2327 определены следующие типы медиаданных: "audio", "video", "application", "data“, "control".
<порт> - транспортный порт на который будет передаваться медиапоток. Значение данного поля зависит от типа сети, определенного в параметре «с» и транспортного протокола. Для UDP это значение должно лежать в диапазоне 1024-65535.
<транспортный протокол>- зависит от типа адреса, определенного в параметре «с».Для типа адреса IP4 предполагается, что медиапоток будет переноситься как RTP по UDP. RTP/AVP- транспортный протокол реального времени, разработанный IETF.
<тип кодека>- значение «0» предполагает импульсно кодовую модуляцию по м-правилу.
Назад
2 407 Прокси-сервер1 -> Anton
SIP/2.0 407 Proxy Authorization Required
Via: SIP/2.0/TCP serv1.niits.ru:5060; branch=z9hG4bK74b43;received=192.0.2.101
From: “Anton” <sip:anton@niits.ru>;tag=9fxced76sl To: “Vladimir” <sip:vladimir@protei.ru>;tag=3flal12sf Call-ID: 3848276298220188511@niits.ru
CSeq: 1 INVITE
Proxy-Authenticate: Digest realm="niits.ru", qop="auth", nonce="f84f1cec41e6cbe5aea9c8e88d359",
opaque="", stale=FALSE, algorithm=MD5 Content-Length: 0
Заголовок
сообщения
Рисунок
SIP/2.0 407 Proxy Authorization Required
Версия
протокола.
Status-Code Reason-Phrase. 407-Proxy Authentication Required. Перед
вызовом вам требуется аутентифицировать себя прокси-серверу.
Назад
Via: SIP/2.0/TCP serv1.niits.ru:5060; branch=z9hG4bK74b43;received=192.0.2.101
Параметр ‘branch’ имеет такое же значение как и в сообщении INVUTE, чтобы терминал понял, что это ответ на сообщение 1.
Назад