Курс «Сети связи» РАЗДЕЛ 2 СОВРЕМЕННЫЕ СЕТИ СВЯЗИ ЛЕКЦИЯ 16 ПРОТОКОЛ SIP. Запросы и ответы. Алгоритмы соединений 07.05.2016 Лектор - проф. Росляков А.В. 1 ТИПЫ ЗАПРОСОВ SIP: 1) INVITE (Приглашение) приглашает пользователя принять участие в сеансе связи, с этого запроса всегда начинается очередной сеанс. INVITE sip: watson@boston.bell-tel.com SIP/2.0 Via: SIP/2.0/UDP kton.bell-tel.com From: A. Bell <a.g.bell@bell-tel.com> To: T. Watson <watson@bell-tel.com> Call-ID: 3298420296@kton.bell-tel.com Cseq: 1 INVITE Content-Type: application/sdp Content-Length: ... v=0 o=bell 53655765 2353687637 IN IР4 12&.3.4.5 C=IN IP4 kton.bell-tel.com m=audio 3456 RTP/AVP 0 3 4 9 07.05.2016 Лектор - проф. Росляков А.В. 2 ТИПЫ ЗАПРОСОВ SIP: 2) АСК (Подтверждение) подтверждает прием ответа на запрос INVITE. 3) CANCEL (Сброс) отменяет обработку ранее переданных запросов с теми же, что и в запросе CANCEL, значениями полей Call-ID, To, From и CSeq, но не влияет на те запросы, обработка которых уже завершена. 4) BYE (Завершение) оборудование вызываемого или вызывающего пользователя завершает соединение. 5) При помощи запроса типа REGISTER (Регистрация) пользователь сообщает свое текущее местоположение. 6) Запросом OPTIONS (Возможности) вызываемый пользователь запрашивает информацию о функциональных возможностях терминального оборудования вызываемого пользователя. 07.05.2016 Лектор - проф. Росляков А.В. 3 ТИПЫ ЗАПРОСОВ SIP: 7) PRACK — временное подтверждение (RFC 3262). 8) SUBSCRIBE (RFC 3265) — подписка на получение уведомлений о событии, используется для запроса информации о текущем состоянии и информации об обновленных состояниях удаленного ресурса. 9) NOTIFY (Извещение) (RFC 3265) уведомление подписчика о событии, передается в том же диалоге, который был создан ответом на запрос SUBSCRIBE. Рис. 16.1– Подписка и извещение о событии в протоколе SIP 07.05.2016 Лектор - проф. Росляков А.В. 4 ТИПЫ ЗАПРОСОВ SIP: 10) PUBLISH (Публикация) (RFC 3903) - публикация события на сервере, позволяет пользовательским агентам UA сообщать специальному серверу присутствия о состоянии их подписки. 11) INFO (Информация) (RFC 2976) — обеспечивает передачу информации управления соединением или другой информации во время сеанса связи, не изменяя состояние сессии. 12) REFER «Направлять» (RFC 3515) - запрос, посылаемый отправителем, предписывает получателю связаться с третьей стороной Рис. 16.2 - Пример использования запроса REFER 07.05.2016 Лектор - проф. Росляков А.В. 5 ТИПЫ ЗАПРОСОВ SIP: 13) MESSAGE (Сообщение) (RFC 3428) - передача мгновенных сообщений средствами SIP Рис. 16.3 – Передача мгновенных сообщений в сети SIP 07.05.2016 Лектор - проф. Росляков А.В. 6 ТИПЫ ЗАПРОСОВ SIP: 14) UPDATE — модификация состояния сессии без изменения состояния диалога (RFC 3311). 07.05.2016 Лектор - проф. Росляков А.В. 7 Ответы на запросы SIP 1ХХ — Информационные ответы (Informational) - показывают, что запрос находится в стадии обработки. 2ХХ — Успешно (Success) - финальные ответы, означающие, что запрос был успешно обработан. 3ХХ — Перенаправление (Redirection) - финальные ответы, информирующие оборудование вызывающего пользователя о новом местоположении вызываемого пользователя. 4ХХ — Отказ запроса (Request failure) - финальные ответы, информирующие об ошибке при обработке или выполнении запроса. 5ХХ — Отказ сервера (Server failure) - финальные ответы, информирующие о том, что запрос не может быть обработан из-за отказа сервера. 6ХХ — Глобальный отказ (Global Failure) - финальные ответы, информирующие о том, что соединение с вызываемым пользователем установить невозможно. 07.05.2016 Лектор - проф. Росляков А.В. 8 Пример ответа 200 ОК: SIP/2.0 200 OK Via: SIP/2.0/UDP server10.itep.com Via: SIP/2.0/UDP bgb3.site3.iae.com Via: SIP/2.0/UDP 12.26.17.91:5060 To: B <sip:bbb@itep.com;tag=a6c85cf From: A <sip:aaa@iae.com;tag=1928301774 Call-ID: a84b4c76e66710@12.26.17.91 CSeq: 314159 INVITE Contact: <sip:bbb@itep.com> Content-Type: application/sdp Content-Length: 131 07.05.2016 Лектор - проф. Росляков А.В. 9 1. Процесс регистрации пользователя в сети SIP 07.05.2016 Лектор - проф. Росляков А.В. 10 Рис. 16.5 Сценарий установления соединения через прокси-сервер 07.05.2016 Лектор - проф. Росляков А.В. 11 Рис. 16.6 - Алгоритм установления соединения через сервер переадресации 07.05.2016 Лектор - проф. Росляков А.В. 12 Вызывающий пользователь Вызываемый пользователь 1. INVITE 2. 180 Ringing 3. 200 Ok 4. ACK Разговорная фаза 5. BYE 6. 200 Ok Рис. 16. 7 - Алгоритм установления соединения непосредственно между пользователями 07.05.2016 Лектор - проф. Росляков А.В. 13