130
1 © 2005 Cisco Systems, Inc. All rights reserved. SIP Cisco Public Release the power of the network

Release the power of the network - Cisco · Дома, нарабочемместе (WLAN), впубличных HotSpot ... RFC 3842 MWI EVENT Package RFC 3891 REPLACES Header RFC

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • 1© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Release the power of the network

  • 2© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Session Initiation Protocol в деталях

    Сессия PS-SIPАлександр Фелижанко, CCIE, CSE+7 495 961 1410

    [email protected]

  • 3© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Содержание

    • Роль SIP в современном миреинфокоммуникаций

    • SIP в деталях

    • Cisco Call Session Control Platform и IMS

  • 4© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Роль SIP в современном миреинфокоммуникаций

  • 5© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Фундаментальные изменения воператорском мире

    ВремяВремя

    Конвергентныеуслуги,

    предлагаемыепакетом

    Конвергентныеуслуги,

    предлагаемыепакетом

    Конкурентнаяструктурауслуг

    Конкурентнаяструктурауслуг

    Потребитель-ские услугиПотребитель-ские услуги

    Полосапропускания исостав услуг

    Полосапропускания исостав услуг

    Постоянныйтариф

    (Flat Rate)

    Постоянныйтариф

    (Flat Rate)

    Источникдоходовоператора

    Источникдоходовоператора

    Конвергентныегибкие сети иэлементы

    Конвергентныегибкие сети иэлементы

    КонкурентноепреимуществоКонкурентноепреимущество

    Гетерогеннаясеть

    Гетерогеннаясеть

    Идентификация, учет предпочтений, присутствия иместоположения

    Идентификация, учет предпочтений, присутствия иместоположения

    Решения дляклиентовРешения дляклиентов ВиртуализацияВиртуализация

    Регулируе-мый наборуслуг

    Регулируе-мый наборуслуг

    Приложениядля

    конкретногодомена

    Приложениядля

    конкретногодомена

    Времяподключенияи расстояние

    Времяподключенияи расстояние

    Однотипнаясеть

    Однотипнаясеть

  • 6© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Рынок и индустрия быстроразвиваются

    • Уровень капитальных затрат операторов связии степень внимания инвестороввосстанавливаются после кризиса

    • Широкое принятие технологии WiFi

    Дома, на рабочем месте (WLAN), в публичных HotSpot

    • Развитие широкополосных услуг и принятиемобильной связи в мировом масштабе

    • Появление высокофункциональныхабонентских устройств, сочетающихширокополосный и беспроводной доступ подоступной цене

    • Стремление к предложению услуг Quad Play(Triple Play плюс Mobile Wireless)

  • 7© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Конвергенция онлайновой работы, развлечений и коммуникаций

    Один простой взгляд на призыв “Подключись!”Один простой взгляд на призыв “Подключись!”

    Один общий набор услугЕдинообразная работа с услугамиГолос, VideoPhone, IM/Chat (текст, аудио, видео) и UM

    Единообразная работа при использовании различныхустройств доступа

    Персонифицированные пользователем (тоны/КПВ, списки приятелей/каталоги)

    Unified Messaging – эл.почта, голос, видеопочта

  • 8© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Стандартизованная сервиснаяинфраструктура на основе SIP

    • Предоставление более сложных услуг требуетновых подходов

    Сети на основе IP – фундамент для сквозных сетей

    SIP де-факто является сервисной инфраструктурой дляразвивающихся сетей IP

    3GPP/IMS, ITU NGN/ETSI TISPAN и PacketCableобогащают работу друг друга и приходят к единойархитектуре

    • SIP позволяет операторам эффективносотрудничать в плане предоставления услуг ивзаимодействовать с другими сервис-провайдерами

  • 9© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Почему IP Multimedia Subsystem (IMS)?

    • Модульная архитектура сетей нового поколения (NGN) наоснове SIP

    • Благодаря стандартизованным интерфейсам, создаетпредпосылки для формирования экосистемыразработчиков приложений

    • Позволяет операторам проводить стратегию мульти-вендорности

    • Опирается на методологию кооперации между оконечнымоборудованием и сетью для предоставления передовыхуслуг

    • Максимально использует ключевой актив оператора: данные об абонентах

    • Включает поддержку новых мультимедийных технологий

  • 10© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Вклад Cisco в ключевые RFC по SIP/IMSАвторство и соавторство в стандартах

    RFC 3261 SIP

    RFC 2976 SIP INFO Method

    RFC 3262 PRACK

    RFC 3263 DNS SIP

    RFC 3264 Offer/Answer

    RFC 3311 UPDATE

    RFC 3312 QoS Reservation

    RFC 3428 Extension for IM

    RFC 3315 DHCP SIP

    RFC 3320 Signaling Compression

    RFC 3325 Asserted Identity

    RFC 3326 REASON

    RFC 3327 PATH Discovery

    RFC 3581 Symmetric Response Routing

    RFC 3608 Service Route Discovery

    RFC 3665 BCP for Basic Call Flows

    RFC 3666 BCP for SIP PSTN Call Flows

    RFC 3680 Registrations EVENT Package

    RFC 3725 BCP for 3PCC

    RFC 3824 E.164 Numbers

    RFC 3840 Indicating User Agent Capabilities

    RFC 3841 Caller Preferences

    RFC 3842 MWI EVENT Package

    RFC 3891 REPLACES Header

    RFC 4028 Session Timers

    RFC 4032 Preconditions – Update to RFC 3312

    RFC 4092 SDP Alternative NAT Semantics

    RFC 4168 SCTP as a Transport

    RFC 4235 Dialog EVENT Package

  • 11© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    SIP в деталях

  • 12© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    • Session Initiation Protocol (SIP) – это протоколсигнализации прикладного уровня для создания, модификации и завершения мультимедийных сессий содним или несколькими участниками

    • Впервые стандартизован в марте 1999 года в RFC 2543

    • В мае 2002 года исправленный и дополненныйстандарт опубликован в RFC 3261 вместе с

    34 RFC, описывающими расширения (Standards Track)

    15 драфтами рабочих групп IETF и

    свыше 50 индивидуальных документов, которыепока не включены в список документов рабочихгрупп IETF

    Основы SIP

  • 13© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Участники сессий SIP могут общаться:

    • Посредством

    одноадресной передачи (unicast)

    многоадресной передачи (multicast)

    в полносвязанной структуре одноадресных отношений

    комбинации перечисленного

    • В среде IPv4 и IPv6 с использованием

    UDP

    TCP

    SCTP или

    TLS через TCP

    Основы SIP (продолжение)

  • 14© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Сила SIP в преемственности

    • В SIP используется несколько существующихпротоколов IETF для обеспечения:

    Форматирования сообщений (HTTP 1.1) RFC 2616

    Описания параметров сессий (SDP) RFC 2327

    Передачи (RTP) RFC 3550 и (RTSP) RFC 2326

    Адресации (URL) RFC 1738 и (URI) RFC 2396

    Разрешения имен и мобильности (DHCP) RFC 2131 и

    (DNS) RFC 1034 и 1035

    Кодирования приложений (MIME) RFC 2045

    Безопасности (TLS) RFC 2246 и (IPsec) RFC 2401 и 2406

  • 15© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Основы SIP (продолжение)Компоненты SIP

    • Пользовательские агенты (User Agent – UA)

    User Agent Client (UAC) – инициатор установления сессии

    User Agent Server (UAS) – отвечает на запрос по установлению сессии

    User Agent = UAC + UAS

    • Шлюзы*

    Отвечают за трансляцию формата SIP в и из формата протокола, отличного от SIP, какправило – ТфОП (медиа и сигнализация)

    • Серверы регистрации (Registrar Server)*

    Ведут регистрацию агентов, обрабатывая сообщения REGISTER

    • Прокси серверы (Proxy Server)*

    Выполняют маршрутизацию сообщений SIP

    Могут добавлять, модифицировать и удалять заголовки сообщений SIP (например, Record Route или Via)

    • Серверы переадресации (Redirect Server)*

    Возвращают агенту новый адрес для прямой маршрутизации вызова по этому адресу

    * Опциональный компонент

  • 16© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Адресация в SIP

    • Fully-Qualified Domain Name (FQDN)

    sip:jdoe.cisco.com

    • Домен в стиле SMTP [RFC 2368]

    sip:[email protected]

    • Адреса в стиле E.164 [RFC 2806]

    sip:[email protected]; user=phone

    user=phone означает, что это шлюз

    (gateway.com это FQDN терминирующего шлюза)

    • Смешанные адреса

    sip:[email protected]; user=phone

    sip:[email protected]

  • 17© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Формат пакета SIP

    IHL Total Length

    Identification Flags Fragment Offset

    Header ChecksumProtocolTime to Live

    Source Address

    Destination Address

    PaddingOptions

    Version DSCP ECN

    Заголовок IPv4 – 20 байт, двоичный

    Source PortSource Port Destination PortDestination Port

    ChecksumChecksumLengthLength

    Заголовок UDP – 8 байт, двоичный(здесь может быть такжеTCP или SCTP)

    Заголовки SIP в кодировке US-ASCII(переменная длина)Заголовок SIP – текстовый

    переменной длины

    В сообщениях SIP *иногда* присутствует тело- В заголовке сообщения SIP указывается тип тела- Может быть текст, данные, аудио, видео иличто-то еще

    Тело сообщения SIP –переменной длины, присутствует не всегда(это зависит от типасообщения)

  • 18© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Заголовки SIP на примере

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

  • 19© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Заголовки SIP на примере

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

    Метод = Команда Request URI Версия протокола SIP

  • 20© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Заголовки SIP на примере

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

    Список всех устройств SIP на пути‘branch’ для идентификации

    Обязательный заголовок во всех запросах SIP

  • 21© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

    Максимальное кол-во серверов SIP, разрешенное на сигнальном пути

    Заголовки SIP на примере

    Обязательный заголовок во всех запросах SIPкроме INFO

  • 22© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

    Адрес назначения сообщения SIP

    Заголовки SIP на примере

    Обязательный заголовок во всех запросах SIP

  • 23© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

    Отправитель сообщения SIP Псевдо-случайное значение (для id)

    Заголовки SIP на примере

    Обязательный заголовок во всех запросах SIP

  • 24© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Jam

    es P

    olk

    200

    50

    50

    3

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

    Идентификатор вызова, глобально уникальный в рамках домена

    Заголовки SIP на примере

    Обязательный заголовок во всех запросах SIP

  • 25© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

    Последовательно увеличивающийся порядковый номер Методас этого UA

    Заголовки SIP на примере

    Обязательный заголовок во всех запросах SIP

  • 26© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Jam

    es P

    olk

    200

    50

    50

    3

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

    Прямой путь к отправителю сообщения – FQDN или IP-адрес

    Заголовки SIP на примере

  • 27© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

    Описание тела сообщения (когда оно присутствует)

    Заголовки SIP на примере

  • 28© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    - Ниже идет тело сообщения- Заголовки Content-Type и Content-Length указывают на это

    Длина содержимого тела сообщения в октетах

    Заголовки SIP на примере

  • 29© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Session Description Protocol (SDP)

    • SDP – это протокол описанияпараметров сессии длямультимедийных соединений

    • Представляет наборпараметров мультимедийнойсессии

    По функциональностипохож на H.245 в мире H.323

    • Разработан рабочей группойIETF MMUSIC

    • Простой и гибкий

    Текстовый

    Расширяемый

    • Лежит в основе модели SIPOffer/Answer (Предложение/ Ответ), описанной в RFC 3264

    “Строки” ниже в типичномпорядке

    • v = версия протокола

    • o = создатель сессии и ееидентификатор

    • s = имя сессии

    • c = информация о соединении

    • k = ключи шифрования

    • t = продолжительность сессии

    • m = описание медии итранспортный адрес

    • a = (ноль или больше) строкатрибутов медии

    RFC 2327

  • 30© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    • Тело сообщения SDP только для голоса

    Тело сообщения SIP длямультимедийной сессии

    - Видео- Порт UDP # 51172- Поддерживаемые кодеки: H.261, H.263

    v=0o=alice 2890844526 2890844526 IN IP4 atlanta.comc=IN IP4 10.1.3.33t=0 0m=audio 49172 RTP/AVP 0a=rtpmap:0 PCMU/8000m=video 51172 RTP/AVP 31 34a=rtpmap:31 H.261/90000a=rtpmap:34 H.263/90000

    - Аудио- Порт UDP # 49172 - Поддерживаемые кодеки: G.711

    v=0o=alice 2890844526 2890844526 IN IP4 atlanta.comc=IN IP4 10.1.3.33t=0 0m=audio 49172 RTP/AVP 0a=rtpmap:0 PCMU/8000

    - Аудио- Порт UDP # 49172 - Поддерживаемые кодеки: G.711

    • Тело сообщения SDP для голоса и видео

    RFC 2327

  • 31© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Методы SIP (они же Запросы) по RFC 3261

    • INVITE – абонент или услуга приглашаются научастие в мультимедийной сессии

    • ACK – подтверждает, что клиент получилфинальный ответ на запрос INVITE

    • BYE – завершает установленную сессию; можетбыть послан любым пользовательским агентом всессии с несколькими участниками

    • CANCEL – отменяет отправленный “ожидающий”запрос; не завершает установленные сессии

    • OPTIONS – запрашивает возможности серверов UAS

    • REGISTER – регистрирует пользовательского агентана сервере регистрации домена

  • 32© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    • INFO (RFC 2976)

    • PRACK (RFC 3262)

    • SUBSCRIBE и NOTIFY (RFC 3265)

    • UPDATE (RFC 3311)

    • MESSAGE (RFC 3428)

    • REFER (RFC 3515)

    • PUBLISH (RFC 3903)

    Дополнительные методы SIP

  • 33© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Описание Примеры

    1xx Информационные – Запрос получен, продолжаю его обрабатывать

    100 Trying 180 Ringing 181 Call is Being Forwarded 183 Session Progressing

    2xx Успех – Действие было успешно получено, понято и выполнено

    200 OK 202 Acceptable

    3xx Переадресация – для завершения выполнения запроса нужно обратиться к другому элементу SIP

    300 Multiple Choices 301 Moved Permanently 302 Moved Temporarily

    4xx Ошибка клиента – Запрос содержит ошибки (неверный синтаксис) или не может быть обслужен на этом сервере

    401 Unauthorized 406 Not Acceptable 407 Proxy Authentication Required 486 Busy Here 487 Request Terminated 488 Not Acceptable Here

    5xx Ошибка сервера – Сервер не смог обслужить правильно построенный запрос

    502 Bad Gateway 503 Service Unavailable

    6xx Глобальная ошибка – Запрос не может быть обслужен ни на одном сервере

    600 Busy Everywhere 603 Decline

    Ответы SIPRFC 3261

  • 34© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: INVITE, ACK и BYE

    Invite

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asdhds

    Max-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    (SDP Alice не показан)

    RFC 3261

  • 35© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite

    200 OK

    Alice Bob

    Методы SIP: INVITE, ACK и BYE

    SIP/2.0 200 OKVia: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bKnashds8 ;received=10.1.3.33To: Bob ;tag=a6c85cfFrom: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 131

    (SDP Bob не показан)

  • 36© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite

    200 OK

    Alice Bob

    Методы SIP: INVITE, ACK и BYE

    ACK

    ACK sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bKnashds8Max-Forwards: 70To: Bob ;tag=a6c85cfFrom: Alice ;tag=1928301774Call-ID: [email protected]: 314159 ACKContent-Length: 0

  • 37© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite

    200 OK

    Сессия установлена

    Alice Bob

    Методы SIP: INVITE, ACK и BYE

    ACK

  • 38© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite

    200 OK

    Сессия установлена

    Alice Bob

    Методы SIP: INVITE, ACK и BYE

    ACK

    BYE

    BYE sip:[email protected] SIP/2.0Via: SIP/2.0/TCP 10.1.3.33;branch=z9hG4bKnashds8Max-Forwards: 70From: Bob ;tag=a6c85cfTo: Alice ;tag=1928301774Call-ID: [email protected]: 231 BYEContent-Length: 0

    RFC 3261

  • 39© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite

    200 OK

    Session Established

    Alice Bob

    Методы SIP: INVITE, ACK и BYE

    ACK

    BYE

    200 OK

    SIP/2.0 200 OKVia: SIP/2.0/TCP 192.168.10.20From: Alice ;tag=1928301774To: Bob ;tag=a6c85cf Call-ID: [email protected]: 231 BYEContent-Length: 0

  • 40© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice BobSIP Proxy “server10.biloxi.com”

    Методы SIP: INVITE, ACK и BYE с прокси

    Invite

    INVITE sip:[email protected]/TCP SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asdhds ;received=10.1.3.33

    Max-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    (SDP Alice не показан)

    RFC 3261

  • 41© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite Invite

    Alice Bob

    Методы SIP: INVITE, ACK и BYE с прокси

    SIP Proxy “server10.biloxi.com”

    INVITE sip:[email protected]/TCP SIP/2.0Via: SIP/2.0/TCP server10.biloxi.com;branch=z9hG4bK4b43c2ff8.1 ;received=192.168.10.1

    Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asdhds ;received=10.1.3.33

    Max-Forwards: 69To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    (SDP Alice не показан)

    Заголовок Viaтелефона Alice

    Заголовок Viaпрокси-сервера

    Max-Forwardsуменьшаетсяна 1

  • 42© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Jam

    es P

    olk

    200

    50

    50

    3Invite Invite

    Alice Bob

    Методы SIP: INVITE, ACK и BYE с прокси

    SIP Proxy “server10.biloxi.com”

    200 OK

    SIP/2.0 200 OKVia: SIP/2.0/TCP server10.biloxi.com;branch=z9hG4bK4b43c2ff8.1 ;received=192.168.10.1

    Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bKnashds8 ;received=10.1.3.33

    To: Bob ;tag=a6c85cfFrom: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 131

    (SDP Bob не показан)

    Note: Обазаголов-ка Via

  • 43© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite Invite

    200 OK

    Alice Bob

    Методы SIP: INVITE, ACK и BYE с прокси

    SIP Proxy “server10.biloxi.com”

    200 OK

    SIP/2.0 200 OKVia: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bKnashds8 ;received=10.1.3.33

    To: Bob ;tag=a6c85cfFrom: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 131

    (SDP Bob не показан)

    Note: Одинзаго-ловокVia

  • 44© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite Invite

    200 OK200 OK

    Alice Bob

    Методы SIP: INVITE, ACK и BYE с прокси

    ACK

    ACK sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bKnashds8

    Max-Forwards: 70To: Bob ;tag=a6c85cfFrom: Alice ;tag=1928301774Call-ID: [email protected]: 314159 ACKContent-Length: 0

    SIP Proxy “server10.biloxi.com”

  • 45© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite Invite

    200 OK200 OK

    Сессия установлена

    Alice Bob

    Методы SIP: INVITE, ACK и BYE с прокси

    ACK

    SIP Proxy “server10.biloxi.com”

  • 46© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite Invite

    200 OK200 OK

    Сессия установлена

    Alice Bob

    Методы SIP: INVITE, ACK и BYE с прокси

    ACK

    SIP Proxy “server10.biloxi.com”

    BYE sip:[email protected] SIP/2.0Via: SIP/2.0/TCP 10.1.3.33;branch=z9hG4bKnashds8Max-Forwards: 70From: Bob ;tag=a6c85cfTo: Alice ;tag=1928301774Call-ID: [email protected]: 231 BYEContent-Length: 0

    BYE

    RFC 3261

  • 47© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite Invite

    200 OK200 OK

    Сессия установлена

    Alice Bob

    Методы SIP: INVITE, ACK и BYE с прокси

    ACK

    BYE

    SIP Proxy “server10.biloxi.com”

    200 OK

    SIP/2.0 200 OKVia: SIP/2.0/TCP 192.168.10.20From: Alice ;tag=1928301774To: Bob ;tag=a6c85cf Call-ID: [email protected]: 231 BYEContent-Length: 0

  • 48© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Различные типы прокси серверов

    Transaction Stateless

    Прокси серевер, котрый передает (проксирует) все сообщенияи ответы, не отслеживая никакого состояния

    Dialog Stateful

    Прокси сервер, который вставляет заголовок Record Route всамый первый запрос SIP для того, чтобы гарантировать, чтовсе остальные сообщения в рамках диалога проходили черезэтот сервер; это относится к каждому прокси серверу насигнальном пути между пользовательскими агентами

    Transaction Stateful

    Прокси сервер, который, получая запрос SIP, отслеживаетсостояние транзакции до получения финального ответа наэтот запрос (т.е. ответы 2XX, 3XX, 4XX, 5XX или 6XX). Этотпрокси ничего не знает о запросах UPDATE (обновление), REFER (перевод) и BYE (завершение) сессии

  • 49© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    SIP Redirect Server

    INVITE

    302 Moved Temporarily

    200 OK

    ACK

    ACK

    INVITE (с URI из заголовка Contact в ответе 302)

    Сессия установлена

    SIP Redirect Server SIP Call Flow с Redirect

    180 Trying

    Alice Bob

  • 50© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Сессия #1 установлена

    Alice Bob Carol

    Методы SIP: reINVITE дляудержания вызова (Call Hold)

    INVITE/200 OK/ACK

    reINVITE[hold]

    200 OK

    • Перевод на удержание существующейсессии выполняется отправкойудерживающим агентом сообщения INVITE стем же Call-ID, но с изменением режима с“sendrecv” на “sendonly”• В 200 OK будет соответственно “recvonly”

    ACK

    RFC 3261

  • 51© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Сессия #1 установлена

    200 OK (“sendrecv”)

    reINVITE [session #1 “sendrecv”]

    Alice Bob Carol

    Методы SIP: Трехсторонняя конференциячерез агента Bob

    INVITE/200 OK/ACK

    reINVITE[hold]

    200 OK/ACK

    Сессия #2 установлена

    ACK

    INVITE

    200 OK

    ACK

    Здесь медиа смешивается на агенте Bob, но он бы мог так желегко указать на выделенную для этого ферму DSP

    В этот момент обе сессии активны

  • 52© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: CANCEL

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/TCP 10.1.3.33;branch=z9hG4bK776asdhds

    Max-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Content-Type: application/sdpContent-Length: 142

    (Alice's SDP not shown)

    Invite

    CANCEL – отменяет запросы всостоянии ожидания ответа; не завершает установленныесессии

    RFC 3261

  • 53© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite

    Alice Bob

    Методы SIP: CANCEL

    CANCEL

    CANCEL sip:[email protected] SIP/2.0Via: SIP/2.0/TCP 10.1.3.33;branch=z9hG4bK776asdhds

    Max-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 10197 CANCELContact: Reason: SIP ;cause=486 ;text=“Busy Here”Content-Length: 0

    CANCEL – отменяет запросы всостоянии ожидания ответа; не завершает установленныесессии

    • Заголовок Reason укажетпричину отмены

    • В данном случае Aliceскорее всего решилаположить трубку до того, как ее вызов был принят

  • 54© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite

    Alice Bob

    Методы SIP: CANCEL

    CANCEL

    487 “Request Terminated”

    SIP/2.0 487 Request TerminatedVia: SIP/2.0/TCP 10.1.3.33From: Alice ;tag=1928301774To: Bob ;tag=a6c85cf Call-ID: [email protected]: 10197 CANCELContent-Length: 0

    CANCEL – отменяет запросы всостоянии ожидания ответа; не завершает установленныесессии

    • 487 “Request Terminatedэто правильный ответ наCANCEL “ожидающего”запроса INVITE

  • 55© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Invite

    Alice Bob

    Методы SIP: CANCEL

    CANCEL

    487 “Request Terminated”

    ACK sip:[email protected] SIP/2.0Via: SIP/2.0/TCP 10.1.3.33;branch=z9hG4bK776asdhds

    Max-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected] CSeq: 10197 ACKContent-Length: 0

    CANCEL – отменяет запросы всостоянии ожидания ответа; не завершает установленныесессии

    • Ответ 4XX всегдадолжен сопровождатьсяACK

    ACK

  • 56© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Методы SIP: CANCELCall Forking

    • Прокси “размножает” входящий INVITE на несколькопользовательских агентов

    • Fork может быть последовательным (например, CANCEL через 3 КПВ и INVITE следующему агенту) илипараллельным

    • Значения поля “Branch” в заголовках Via уникальны длякаждого исходящего INVITE

    • Сессия устанавливается с первым агентом, ответившим200 OK

    • Остальным агентам отправляется CANCEL

    • Прокси ДОЛЖЕН БЫТЬ как минимум “Transaction Stateful”, чтобы CANCEL были правильно сформированы

    • Если прокси еще и “Dialog Stateful”, через него будетпроходить BYE

  • 57© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Jam

    es P

    olk

    200

    50

    50

    3

    Пример Call Forking FlowПараллельный Call Forking

    Invite

    Invit

    e

    Alice

    OfficePhone

    OfficePhone

    Bob’s

    CellphoneCellphoneBob’s

    Invite

    Invite Invite

    Atlanta.com Biloxi.com 180

    Rin

    ging

    180 Ringing

    180 Ringing

    200 OK

    180 Ringing

    200 OK

    ACK 200 OK

    Session Established

    CANC

    EL

    CANCEL

    RFC 3261

    Mobile LaptopMobile LaptopBob’s

  • 58© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice

    Методы SIP: OPTIONS

    Bob

    OPTIONS – позволяет опроситьвозможности UAS

    • Дает возможностьвыяснить, поддерживаетли UAS и какие:

    – методы,

    – типы контента,

    – расширения,

    – кодеки,

    – и т.д.

    до отправки INVITE, т.е. еще до попыткиустановления диалога

    OPTIONS sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK77i832k9 ;received=10.1.3.33

    Max-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 22756 OPTIONSContact: Allow: INVITE, ACK, OPTIONS, BYE, CANCEL, REFER,

    SUBSCRIBE, NOTIFY, MESSAGE, UPDATEAccept: application/sdp, application/pidf-xmlContent-Length: 0

    OPTIONS

    RFC 3261

  • 59© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Jam

    es P

    olk

    200

    50

    50

    3

    Alice

    Методы SIP: OPTIONS

    Bob

    200 OKOPTIONS – позволяет опросить

    возможности UAS

    • В 200 OK передаются:– Известные контакты

    – Поддерживаемыеметоды

    – Поддерживаемые языки

    – Типы тел сообщений

    • Если сервер не готовпринять новый запрос, онотвечает 486 “Busy Here”

    SIP/2.0 200 OKVia: SIP/2.0/TCP sip:[email protected];branch=z9hG4bK77i832k9 ;received=10.1.3.33

    To: Bob ; tag=a6c85e3From: Alice ;tag=1928301774Call-ID: [email protected]: 22756 OPTIONSContact: Contact: Allow: INVITE, ACK, OPTIONS, BYE, CANCEL, REFER,

    NOTIFY, MESSAGEAccept: application/sdp, text/plain, image/jpegAccept-language: en, frContent-Type: application/sdpContent-Length: 274

    (в SDP - кодеки, которые поддерживает Bob)

    OPTIONS

    RFC 3261

    Note: более короткий списокметодов

  • 60© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice

    Методы SIP: REGISTER

    REGISTER – связывает SIP URI агента (называемый Address of Record – AOR) с контактом

    – Дает возможность агентамполучать сообщения SIP

    – Регистрации представляютдинамическуюсоставляющую состоянияабонентов в сети

    • Клиенты могут использоватьтри метода для поискасервера регистрации:

    – Конфигурация на клиенте

    – Address-of-Record своегодомена [sip:atlanta.com]

    – Multicast [224.0.1.75]

    REGISTER

    REGISTER sip:server19.atlanta.com SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bk2l55n1

    To: Alice From: Alice ;tag=283074Call-ID: [email protected]: 31862 REGISTERContact: Expires: 21600Content-Length: 0

    SIP Registrar Server “server19”

    RFC 3261

  • 61© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    REGISTER

    Alice

    Методы SIP: REGISTER

    SIP Registrar Server “server19”

    200 OK

    SIP/2.0 200 OKVia: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bk2l55n1; received=10.1.3.33

    To: Alice ; tag=a6c85e3From: Alice ;tag=283074Call-ID: [email protected]: 31862 REGISTERContact: Contact: Expires: 3600Contact-Length: 0

    REGISTER – связывает SIP URI агента (называемый Address of Record – AOR) с контактом

    – Ответ 200 OK с Registrar содержит список заколовковContact со всеми текущими“привязками”

    – Заголовок Expires информирует агента, черезсколько времени нужнообновлять регистрацию

    REGISTER как правило сопровождается аутентификацией

  • 62© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: PRACK

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asdhds ;received=10.1.3.33

    Max-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEContact: Requires: 100relContent-Type: application/sdpContent-Length: 142

    (SDP Alice не показан)

    INVITE PRACK – надежная доставкаответов 1XX (provisional response)

    • Для подтвержденияполучения ответов 1XX (например, 180 Ringing и 183 Session Progress с SDP илиКПВ)

    • Если UAC хочет надежнойдоставки ответов 1XX, он всвой INVITE помещает взаголовок Requires параметр100rel

    RFC 3262

  • 63© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: PRACK

    SIP/2.0 183 Session ProgressVia: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asdhds

    To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITERSeq: 813520Contact: Content-Type: application/sdpContent-Length: 235

    (SDP Bob не показан)

    PRACK – надежная доставкаответов 1XX (provisional response)

    • UAS включает в ответзаголовок RSeq, которыйявляется порядковымномером сообщения дляподтверждения его состороны клиента

    • Почему такой обменнеобходим?

    – Например, для гарантиидоставки SDP в ответах 1XX до ответа вызова (раннеепроключение медиа-ресурсов)

    INVITE

    183 Session Progress

  • 64© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: PRACK

    PRACK sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asi98JK ;received=10.1.3.33

    Max-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159RAck: 813520 314159 INVITEContact: Content-Length: 0

    INVITE

    183 Session Progress

    PRACK

    PRACK – надежная доставкаответов 1XX (provisional response)

    • Отправляется клиентом послеполучения ответа 1XX (отличного от 100 Trying) назапрос INVITE до финальногоответа (ACK), но только есликлиент запросил процедуру всвоем INVITE

    • Должен быть отправлен, еслиINVITE содержал заголовокRequires с параметром 100rel

    • Включает заголовок RAck с темже значением порядковогономера, что был в заголовкеRSeq сообщения 183, получениекоторого он таким образомподтверждает

  • 65© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: PRACK

    SIP/2.0 200 OK sip:[email protected]: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asi98JK ;received=10.1.3.33

    To: Bob ; tag=a6c85e3From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 PRACKContact: Content-Length: 0

    INVITE

    183 Session Progress

    200 OK [PRACK]

    PRACK

    PRACK – надежная доставкаответов 1XX (provisional response)

    • 200 OK на PRACK отправляетсясервером UAS

    • Обмен сообщениями непрекращается с получениемPRACK или 200 OK на него

  • 66© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Методы SIP: SUBSCRIBE & NOTIFY

    SUBSCRIBE – используется, чтобы запроситьасинхронное уведомление онаступлении события илигруппы событий

    • Метод используется, чтобызапросить текущее состояние иуведомления об измененияхсостояния на удаленном узле

    • В запросе СЛЕДУЕТприсутствовать заголовкуExpires

    • Запросы ДОЛЖНЫ иметь толькоодно значение в заголовке Event

    SIP RegistrarIM App Server

    SUBSCRIBE (Event: Reg)

    SUBSCRIBE sip:[email protected] SIP/2.0Via: SIP/2.0/TCP app_IM.atlanta.com;branch=z9hG4bKnashds7

    From: sip:app_IM.atlanta.com ;tag=123aa9To: sip:[email protected]: 9987@app_IM.atlanta.comCSeq: 9887 SUBSCRIBEContact: sip:app_IM.atlanta.comEvent: regMax-Forwards: 70Expires: 21600Accept: application/reginfo+xml

    RFC 3265 и 3680

  • 67© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Методы SIP: SUBSCRIBE & NOTIFY

    SUBSCRIBE (Event: Reg)

    200 OK

    SIP RegistrarIM App Server

    SIP/2.0 200 OKVia: SIP/2.0/TCP app_IM.atlanta.com;branch=z9hG4bKnashds7 ;received=10.1.3.2

    From: sip:app_IM.atlanta.com ;tag=123aa9To: sip:[email protected] ;tag=xyzyggCall-ID: 9987@app_IM.atlanta.comCSeq: 9887 SUBSCRIBEContact: sip:server19.atlanta.comExpires: 3600

    SUBSCRIBE – используется, чтобы запроситьасинхронное уведомлениео наступлении событияили группы событий

    • Заголовок Expires ДОЛЖЕНприсутствовать в ответе

    • Ответы 2XX показывают, чтоподписка принята и чтоNOTIFY будет отправленнемедленно при наступлениисобытия

  • 68© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Методы SIP: SUBSCRIBE & NOTIFY

    SUBSCRIBE (Event: Reg)

    200 OK

    NOTIFY (status: active)

    SIP RegistrarIM App Server

    NOTIFY sip:app_IM.atlanta.com SIP/2.0Via: SIP/2.0/TCP server1.atlanta.com ;branch=z9hG4bKnasaii

    From: sip:[email protected] ;tag=xyzyggTo: sip:app_IM.atlanta.com ;tag=123aa9Max-Forwards: 70Call-ID: 9987@app_IM.atlanta.comCSeq: 1288 NOTIFYContact: sip:server19.atlanta.comEvent: regSubscription-State: activeContent-Type: application/reginfo+xmlContent-Length: 223

    NOTIFY – используется, чтобыуведомить узел SIP онаступлении события, накоторое этот узелподписался с помощьюSUBSCRIBE

    • NOTIFY отправляется, чтобыуведомить подписчиков обизмениях в состоянии, накоторые те подписались

    • Заголовок Event долженсовпадать с Event из SUBSCRIBE

  • 69© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Методы SIP: SUBSCRIBE & NOTIFY

    SUBSCRIBE (Event: Reg)

    200 OK

    NOTIFY (status: init)

    200 OK

    SIP RegistrarIM App Server

    SIP/2.0 200 OKVia: SIP/2.0/TCP server19.atlanta.com;branch=z9hG4bKnasaii ;received=10.1.3.1

    From: sip:app_IM.atlanta.com ;tag=123aa9To: sip:[email protected] ;tag=xyzyggCall-ID: 9987@app_IM.atlanta.comCSeq: 1288 NOTIFYContact: sip:server1.atlanta.comContent-Length: 0

    NOTIFY – используется, чтобыуведомить узел SIP онаступлении события, накоторое этот узелподписался с помощьюSUBSCRIBE

    • Отправка NOTIFY на узел, который его не ожидает, является неправильнымповедением, отправляющий узелдолжен получить в ответ 481 "Subscription does not exist"

  • 70© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: MESSAGE

    MESSAGE – для передачисообщений междупользователями почти вреальном времени

    • Содержимое сообщения – втеле приложения MIME

    • MESSAGE не создает диалоги!

    • Сообщения явно не увязаныдруг с другом

    • Размер тела сообщения недолжен превышать 1300 байт

    MESSAGE sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asegma

    Max-Forwards: 70To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 22756 MESSAGEContent-Type: text/plainContent-Disposition: renderContent-Length: 37

    Скажи, Боб, это классная презентация?

    MESSAGE

    RFC 3428

  • 71© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: MESSAGE

    MESSAGE

    200 OK

    SIP/2.0 200 OKVia: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bKnashds7 ;received=10.1.3.33

    To: sip: sip:[email protected]>; tag=a6c85e3From: [email protected] ;tag=1928301774Call-ID: [email protected]: 22756 MESSAGEContent-Length: 0

    MESSAGE – для передачисообщений междупользователями почти вреальном времени

    • Ответ 200 OK не обязательноозначает, что пользовательпрочитал сообщение

    • Ответы 4xx или 5xx показывают, что сообщение небыло успешно доставлено

    • Ответ 6xx означает, чтосообщение было доставленоуспешно, но было отвергнуто

  • 72© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice

    Пример: Регистрация в системемгновенного обмена сообщениями

    REGISTER

    200 OK

    SUBSCRIBE (Event: Reg)

    200 OK

    NOTIFY (status: init)

    200 OK

    NOTIFY (status: active)

    200 OK

    SIP Registrar IM App Server

    RFC 3680

    MESSAGE

    Добро пожаловать в систему мгновенного обменасообщениями, обслуживающую CiscoExpo!

    200 OK

  • 73© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice SIP Proxy

    Методы SIP: INFO

    INFO – для передачиуправляющей информации, относящейся к сессии игенерируемой во времясессии

    • Тип содержимого Content-Type не определен ни в одном RFC, поэтому агентам необходимоего согласовать заранее

    INFO sip:Alice’[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com

    ;branch=z9hG4bK776asegmaMax-Forwards: 70To: Bank From: Alice ;tag=1928301774Call-ID: [email protected]: 22756 INFOContact: Content-Type: text/plainContent-Length: 16

    3 1 8 1 9 6 2

    INFO

    Сессия установлена

    Alice Банк Alice

    RFC 2976

  • 74© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice SIP Proxy

    Методы SIP: INFO

    • Передача информации об уровнесигнала в беспроводной сети дляподдержки приложений мобильности

    • Передача информации о состояниибаланса счета

    • Передача изображений или другой не-потоковой информации междуучастниками сессии

    • Ответ 487 “Request Terminated”отправляется, если INFO не можетбыть принят

    INFO

    200 OK

    Сессия установлена

    Alice

    INFO

    200 OK

    INFO – для передачиуправляющей информации, относящейся к сессии игенерируемой во времясессии

    • Примеры: Передача сигнальныхсообщений ТфОП между шлюзамив течение вызова

    • Передача тонового набора (цифрDTMF) во время сессии SIP

    Банк Alice

  • 75© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: UPDATE

    UPDATE – позволяет агенту обновлятьпараметры сессии

    • UAC должен включить в заголовок Allow индикацию о поддержке UPDATE

    INVITE (SDP 1)

    INVITE sip:[email protected]/TCP SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asdhds

    Max-Forwards: 70To: Bob From: Alice ;tag=1928Call-ID: [email protected]: UPDATECSeq: 22756 INVITEContact: Requires: 100relContent-Type: application/sdpContent-Length: 142

    (SDP Alice не показан)(но она просит кодек G.711)

    RFC 3311

  • 76© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: UPDATE

    INVITE (SDP 1)

    200 OK (PRACK)

    PRACK

    180 Ringing (SDP 1)

    SIP/2.0 180 RingingVia: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asdhds

    To: Bob From: Alice ;tag=1928Call-ID: [email protected]: UPDATECSeq: 22756 INVITERSeq: 813520Contact: Content-Type: application/sdpContent-Length: 142

    (SDP Bob не показан)(но он согласен на кодек G.711)

    UPDATE – позволяет агенту обновлятьпараметры сессии

    • UAC должен включить в заголовок Allow индикацию о поддержке UPDATE

  • 77© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice Bob

    Методы SIP: UPDATE

    UPDATE – позволяет агенту обновлятьпараметры сессии

    • UPDATE здесь для смены кодека с G.711 из первого SDP на G.729

    200 OK (UPDATE)

    INVITE (SDP 1)

    180 Ringing (SDP 1)

    200 OK (PRACK)

    PRACK

    200 OK (INVITE)

    Сессия установлена

    UPDATE (SDP 2)

    UPDATE sip:[email protected]/TCP SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asdhds

    Max-Forwards: 70To: Bob From: Alice ;tag=1928Call-ID: [email protected]: 10197 UPDATEContact: Content-Type: application/sdpContent-Length: 142

    (Новый SDP Alice не показан)(но она теперь просит кодек G.729)

    • UPDATE может быть использованпосле того, как принят INVITE, однако использование reINVITE более предпочтительно

    ACK

  • 78© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    REFER (Refer-to: Carol)

    Сессия #1 установлена

    Alice Bob Carol

    Методы SIP: REFERПеревод вызова

    INVITE/200 OK/ACK

    reINVITE[hold]

    200 OK/ACK

    REFER sip:[email protected] SIP/2.0Via: SIP/2.0/UDP swp34.biloxi.com

    ;branch=z9hG4bKna9Max-Forwards: 70To: ;tag=a6c85cfFrom: ;tag=1928301774Call-ID: [email protected]: 10187 REFERAllow: INVITE, ACK, CANCEL, OPTIONS,

    BYE, REFER, NOTIFY, UPDATESupported: replacesRefer-To: Contact: Content-Length: 0

    REFER – Запрос SIP от одного UA для приглашения (INVITE) всессию другого агента

    • REFER неявно устанавливаетподписку с другим UA

    – Поэтому после выполнениятребуется NOTIFY

    • В запросе REFER заголовок “Refer-to” является обязательным

    RFC 3515

  • 79© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    REFER (Refer-to: Carol)

    202 Accepted

    Сессия #1 установлена

    Alice Bob Carol

    Методы SIP: REFERПеревод вызова

    INVITE/200 OK/ACK

    reINVITE[hold]

    200 OK/ACK

    INVITE (по адресу из REFER от Боба)

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com ;branch=z9VHJ23J41Max-Forwards: 70To: From: ;tag=0616052ueCall-ID: [email protected]: 6187 INVITEContact: Content-Length: 147

    (SDP Alice не показан)

  • 80© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    REFER (Refer-to: Carol)

    202 Accepted

    Сессия #1 установлена

    INVITE (по адресу из REFER от Боба)

    NOTIFY

    200 OK

    200 OK

    BYE

    Сессия #2 установлена

    Alice Bob Carol

    Методы SIP: REFERПеревод вызова

    INVITE/200 OK/ACK

    reINVITE[hold]

    200 OK/ACK

    200 OK

    BYE

    200 OK/ACK

  • 81© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice “ESC1”

    Методы SIP: PUBLISH

    PUBLISH – запрос SIP насоздание, модификацию иудаление состояния ресурса, ассоциированного с AOR (Address-Of-Record)

    • Event State Compositor (ESC): сервер, которыйобрабатывает запросыPUBLISH, отвечает заформирование ипредставление композитногосостояния ресурса

    • На ESC конфигурируется, какие устройства могутиформировать его о своемсостоянии

    • Первичное сообщениеPUBLISH должно иметь тело всообщении

    • Заголовки Record-Route иContact здесь не имеютсмысла

    PUBLISH sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com

    ;branch=z9hG4bK776asegmaMax-Forwards: 70To: Alice From: Alice ;tag=1928301774Call-ID: [email protected]: 22756 PUBLISHEvent: presenceExpires: 21600Content-Type: application/pidf+xmlContent-Length: 126

    (Тело сообщения в формате XML не показано)

    PUBLISH

    RFC 3903

  • 82© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice

    Методы SIP: PUBLISH

    PUBLISH

    200 OK

    SIP/2.0 200 OKVia: SIP/2.0/TCP pc33.atlanta.com;branch=z9hG4bK776asegma ;received=10.1.3.33

    To: sip: sip:[email protected]>;tag=1928301774 From: [email protected]: [email protected]: 22756 PUBLISHSIP-ETag: hp169abcExpires: 1800

    “ESC1”

    PUBLISH – запрос SIP насоздание, модификацию иудаление состояния ресурса, ассоциированного с AOR (Address-Of-Record)

    • 404 (Not Found) – ошибка, когдаESC получает неизвестноесостояние

    • OPTIONS может бытьиспользован, чтобы понять, поддерживает ли UAS методPUBLISH

    • 4 опреации с методомPUBLISH:

    – Initial

    – Refresh

    – Modify

    – Remove

    RFC 3903

  • 83© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE

    200 OK

    ACK

    INVITE

    INVITE

    486 “Busy Here”

    200 OK

    Сессия установлена

    Пример SIP:Call Forward Busy и No Answer

    Alice Bob Bob’s VM

    ACK

    Боб говоритс Дейвом

    Biloxi.com Proxy

    181 Call Forwarded

    RFC 3261

    Нет 180 Ringing привызове на Voice Mail

  • 84© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE

    200 OK

    ACK

    INVITE

    INVITE

    487 “Request Terminated”

    180 Ringing

    200 OK

    Сессия установлена

    Пример SIP:Call Forward Busy и No Answer

    Alice Bob Bob’s VM

    CANCEL

    Боб неотвечает

    Biloxi.com Proxy

    RFC 3261

    180 Ringing

    ACK

  • 85© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Средства безопасности в SIP

    • Digest Authentication

    Для аутентификации отправителя сообщения

    • TLS/IPsec

    Конфиденциальность/Целостность сигнальныхсообщений на каждом участке или насквозь (e2e – end to end)

    • S/MIME

    Конфиденциальность тела сообщения e2e

    • Network Asserted Identity

    Сеть удостоверяет личность вызывающего абонента, тотли он за кого он себя выдает

    • SIP Privacy

    Сохранение приватности некоторых частей сообщений, отправляемых за пределы своего домена

  • 86© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice SIP Proxy Bigbox 10

    Digest Authentication

    Audrey

    INVITE

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com

    ;branch=z9hG4bK74b43Max-Forwards: 70From: Alice ;tag=9fxced76slTo: Audrey Call-ID: [email protected]: 31862 INVITEContact: Content-Type: application/sdpContent-Length: 151

    (SDP Alice не показан)

    Digest Authentication –Механизм аутентификациидля некоторых сообщений

    • Может быть как для одногозаголовка сообщения, так идля нескольких

    • НЕ работает для теласообщения

    RFC 3261

  • 87© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE

    Alice

    Digest Authentication

    407 Proxy Auth Req

    Audrey

    SIP/2.0 407 Proxy Authorization RequiredVia: SIP/2.0/TLS pc33.atlanta.com

    ;branch=z9hG4bK74b43 ;received=10.1.3.33From: Alice ;tag=9fxced76slTo: Audrey ;tag=3flal12sfCall-ID: [email protected]: 31862 INVITEProxy-Authenticate: Digest realm="atlanta.com", qop="auth", nonce="f84f1cec41e6cbe5aea9c8e88d359",opaque="", stale=FALSE, algorithm=MD5

    Content-Length: 0

    SIP Proxy Bigbox 10

    Digest Authentication –Механизм аутентификациидля некоторых сообщений

    • В ответ отправляется 407 “Proxy Authentication Required” с заголовком Proxy-Authenticate, содержащиминформацию для вычисленияцифровой подписи по томуили иному алгоритму

  • 88© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE

    Alice

    Digest Authentication

    407 Proxy Auth Req

    Invite с токеном

    Audrey

    INVITE sips:[email protected] SIP/2.0Via: SIP/2.0/TLS pc33.atlanta.com;branch=z9hG4bK776asdhds ;received=10.1.3.33

    Max-Forwards: 70Route: To: Audrey From: Alice ;tag=1928301774Call-ID: [email protected]: 31863 INVITEContact: Content-Type: application/sdpContent-Length: 151Authorization: Digest username=“audrey", realm="atlanta.com"

    nonce="ea9c8e88df84f1cec4341ae6cbe5a359", opaque="",uri="sips:[email protected]",response="dfe56131d1958046689d83306477ecc"

    (SDP Alice не показан)

    SIP Proxy Bigbox 10

    Digest Authentication –Механизм аутентификациидля некоторых сообщений

    • Вследствие отсутствиямеханизма защитыцелостности Digest используется TLS

  • 89© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE

    Alice

    Digest Authentication

    407 Proxy Auth Req

    Invite с токеном

    Audrey

    Invite с токеном

    INVITE sips:[email protected] SIP/2.0Via: SIP/2.0/TLS Bigbox10.atlanta.com;branch=z9hG4bKnashd92 ;received=10.1.3.1

    Via: SIP/2.0/TLS pc33.atlanta.com;branch=z9hG4bK776asdhds

    Max-Forwards: 69To: Audrey From: Alice ;tag=1928301774Call-ID: [email protected]: 31863 INVITEContact: Content-Type: application/sdpContent-Length: 151Authorization: Digest username=“audrey", realm="atlanta.com"

    nonce="ea9c8e88df84f1cec4341ae6cbe5a359", opaque="",uri="sips:[email protected]",response="dfe56131d1958046689d83306477ecc"

    (SDP Alice не показан)

    SIP Proxy Bigbox 10

    Digest Authentication –Механизм аутентификациидля некоторых сообщений

  • 90© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice BobProxy 1 (BigBox3)

    Цель – сквознаябезопасность, но...

    Proxy 2 (Server10)

    Например, зашифровано IPsec ESP

    • Если Alice шифрует до конечной точки (Bob), прокси-серверыне могут видеть/добавлять/модифицировать/удалятьзаголовки

    –Это проблема по многим причинам, таким как:

    • Alice нужно знать IP-адрес Боба

    • Ни одна сеть/домен по пути не может помочь, не можетуправлять сообщениями, не может их журналировать

    X X

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

    RFC 2246, 3546 и 3261

  • 91© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice BobProxy 1 (BigBox3)

    SIPS: Безопасность Hop-by-Hop

    Proxy 2 (Server10)

    Encrypted Encrypted Encrypted

    UNencrypted UNencrypted

    • От агента до сервера – SIP требует Transport Layer Security (TLS)– TLS работает поверх уровня IP

    – TLS применяется к тем устройствам, которые не установилидвусторонние доверительные отношения

    • Сигнализация между серверами может быть через TLS или IPsec (который считается опциональным – но более устойчивым)

    • Серверы SIP дешифруют каждое сообщение (требуетсяотдельный ключ на каждый hop) – таким образом они видят всезаголовки сообщений, что и дает возможность SIP работатьправильно

    RFC 2246, 3546 и 3261

  • 92© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    407 Auth Req (PS1)

    Сессия установлена

    Alice BobProxy 1 (BigBox3)

    INVITE

    Proxy 2 (Server10)

    INVITE (Auth PS1)INVITE (Auth PS1)

    407 Auth Req (PS2)

    INVITE (Auth PS1&2)

    ACK407 Auth Req (PS1&2)

    ACK

    ACK

    200 OK200 OK200 OK

    ACK ACKACK

    INVITE (Auth PS1&2)INVITE (Auth PS1&2)

    TLSTLS TLS или IPsec

    SIPS (TLS) – для обеспеченияцелостности

  • 93© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Безопасность SIP: Secure/Multipart Internet Mail Extension

    Alice Bob

    Content-type: application/sdp

    v=0o=alice 2890844526 2890844526 IN IP4 atlanta.comc=IN IP4 10.1.3.33t=0 0m=audio 49172 RTP/AVP 0 4 18a=rtpmap:0 PCMU/8000a=rtpmap:4 G723/8000 a=rtpmap:18 G729/8000

    INVITE с телом S/MIME

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com

    ;branch=z9hG4bKnashds8To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEMax-Forwards: 70Contact: Content-Type: application/pkcs7-mime;

    smime-type=enveloped-data; name=smime.p7mContent-Disposition: attachment;

    filename=smime.p7m handling=required

    • Тело S/MIME– Заголовок Content-Type указывает на использованиеsmime

    – Элементы SIP ДОЛЖНЫподдерживать SHA1 (аутентификация) и3DES (шифрование)

    • AES специфицированотдельно

    – Все тело должно бытьподписано целиком

    RFC 3261

  • 94© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Безопасность SIP: S/MIME

    Alice Bob

    INVITE с телом S/MIME

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com

    ;branch=z9hG4bKnashds8To: Bob From: Alice ;tag=1928301774Call-ID: [email protected]: 314159 INVITEMax-Forwards: 70Contact: Content-Type: application/pkcs7-mime;

    smime-type=enveloped-data; name=smime.p7mContent-Disposition: attachment;

    filename=smime.p7m handling=required

    Тело того же сооб-щения, шифрованоS/MIME

    Content-type: application/sdp

    v=0o=alice 2890844526 2890844526 IN IP4 atlanta.comc=IN IP4 10.1.3.33t=0 0m=audio 49172 RTP/AVP 0 4 18a=rtpmap:0 PCMU/8000

    JB23LB645V73V73MNB73KV7K4VLHV4T234T2T2JH5NG5CMGX5MYM5SMN5GYCWG5CYMWYMWHNHG5MC5YGWC5CW5WIU87W34TO8W7FLW5LWC5WC5C4L5CLWCTYWJHC54JHCW45HCWLJ5HCWL5CLWJH5CLJH4C5JHEWCLTJYH54CLWJ5CYWJ45CLYWJ5HFKGFD3K7GHD4KHG7DK4T5DLTYGCK6DUK4TDUK4GHCUK56CUY45TD6UK3TCKH45T8K3TH2DXL2HTXLKT8K2XK82XK83K5T8D3KGHICXH4D98D4D967763R9356T08726R85R6L2Y4F5L356D3Y5SD3754T73967RT35PI84FY7J3FD6D3LU6D6L37Y45F639456T2987R2RFL24YD2L6TDK3T7D3K75YU5D756RO837R3FLY

  • 95© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice SIP Proxy Bigbox 10 Audrey

    INVITE

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com

    ;branch=z9hG4bK74b43Max-Forwards: 70From: ;tag=9fxt6cTo: Audrey Call-ID: [email protected]: 31862 INVITEP-Preferred-Identity: Alice Privacy: noneContent-Type: application/sdpContent-Length: 151

    (SDP Alice не показан)

    Network Asserted Identity –Механизм идентификации врамках одного домена

    • Сервер аутентифицируетпользователя с помощью Digest Authentication

    • Поле заголовка From –

    • P-Preferred-Identity запрашиваетсяклиентом, но ожидается результатаутентификации сетью дляподтверждения личности

    • Значения в заголовке Privacy: “user” = приватность требуется, “none” = всеравно

    Network Asserted Identity/Privacy (Trusted)

    RFC 3325

  • 96© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE

    Alice

    407 Proxy Auth Req

    Audrey

    SIP/2.0 407 Proxy Authorization RequiredVia: SIP/2.0/TLS pc33.atlanta.com

    ;branch=z9hG4bK74b43From: ;tag=9fxt6cTo: Audrey ;tag=3flalCall-ID: [email protected]: 31862 INVITEProxy-Authenticate: ... Realm: atlanta.com

    (остаток не показан – см. слайд про Digest)Content-Length: 0

    SIP Proxy Bigbox 10

    Network Asserted Identity –Механизм идентификации врамках одного домена

    • 407 это Digest Challenge со строныпрокси-сервера

    • Для сохранения целостности прокси-сервер запрашивает TLS

    • Полный заголовок “Proxy-Authenticate” не показан дляэкономии места – см.пример сослайда про Digest Authentication

    Network Asserted Identity/Privacy (Trusted)

  • 97© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE

    Alice

    407 Proxy Auth Req

    INVITE с Preferred

    Audrey

    INVITE sips:[email protected] SIP/2.0Via: SIP/2.0/TLS pc33.atlanta.com;branch=z9hG4bK776asdhds

    Max-Forwards: 70Route: To: Audrey From: ;tag=19jtf0Call-ID: [email protected]: 31863 INVITEP-Preferred-Identity: Alice Privacy: idContent-Type: application/sdpContent-Length: 151Authorization: ... (не показан – см. слайды про Digest)

    (SDP Alice не показан)

    SIP Proxy Bigbox 10

    Network Asserted Identity –Механизм идентификации врамках одного домена

    • Теперь INVITE с SIPS URI

    – Означает, что используется TLS

    • Добавлены заголовки Authorization иRoute

    • Privacy=id – не доверяй другомудомену

    • Полный заголовок Authorization непоказан для экономии места – см.пример со слайда про DigestAuthentication

    Network Asserted Identity/Privacy (Trusted)

  • 98© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    INVITE

    Alice

    407 Proxy Auth Req

    INVITE c Preferred

    Audrey

    INVITE c Asserted

    INVITE sips:[email protected] SIP/2.0Via: SIP/2.0/TLS Bigbox10.atlanta.com;branch=z9hG4bKnashd92

    Via: SIP/2.0/TLS pc33.atlanta.com;branch=z9hG4bK776asdhds

    Max-Forwards: 69To: Audrey From: ;tag=19jtf0Call-ID: a84b4c76e66710CSeq: 31863 INVITEP-Asserted-Identity: Alice Privacy: idContent-Type: application/sdpContent-Length: 151Authorization: ... (не показан)(SDP Alice не показан)

    SIP Proxy Bigbox 10

    Network Asserted Identity –Механизм идентификации врамках одного домена

    • P-Asserted-Identity отправляетсяпрокси-сервером, поскольку Alice аутентифицирована и Audrey доверяем – в том же домене

    RFC 3325

    Network Asserted Identity/Privacy (Trusted)

  • 99© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Услугаприватности

    INVITE

    Alice

    407 Proxy Auth Req

    INVITE (с Preferred?)

    Bob

    INVITE от Anonymous

    INVITE sips:[email protected] SIP/2.0Via: SIP/2.0/TLS agent86.privacy-service.com;branch=z9hG4bKnashd93

    Max-Forwards: 69To: Bob From: ;tag=19jtf1Call-ID: a84b4c76e66711CSeq: 31863 INVITEContact: Content-Type: application/sdpContent-Length: 151Authorization: ... (не показан)

    (SDP Alice не показан)

    Proxy “Agent 86”

    Приватность SIP – вне доменадоверия

    • Заголовок Privacy и все другиеупоминания об Alice удалены илиизменены, включая заголовок Via

    • Заголовки с информацией о личностиотправителя: From, Contact, Reply-To, Via, Call-Info, User-Agent, Organization, Server, Subject, Call-ID, In-Reply-To, Record-Route и Warning

    RFC 3323

    Network Asserted Identity/Privacy (Untrusted)

  • 100© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Резервирование полосы с RSVP

    Alice

    SIP (QoS) Preconditions

    Bob

    INVITE

    183 Session Progress

    PRACK

    ACK

    200 OK (PRACK)

    UPDATE

    200 OK (UPDATE)

    180 Ringing

    PRACK

    200 OK (INVITE)

    200 OK (PRACK)

    Сессия установлена

    SIP Preconditions – Механизмгарантирования полосыпропускания для сессии спомощью RSVP

    • Использует стандартнуюмодель Offer/Answer дляустановления сессии

    • Позволяет производитьрезервирование полосы ДОтого, как зазвонитвызываемый телефон (нетзвонков “от призраков”)

    • Все остальные правила ивозможности SIP полностьюдоступны

    RFC 3312

  • 101© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Alice

    SIP (QoS) Preconditions

    INVITE

    INVITE sip:[email protected] SIP/2.0Via: SIP/2.0/TCP pc33.atlanta.com:5060

    ;branch=z9hG4bK74bf9Max-Forwards: 70From: Alice

    ;tag=9fxced76sl To: Bob Call-ID: [email protected]: 31862 INVITERequires: 100relContact: Content-Type: application/sdpContent-Length: 191

    v=0o=alice 2890844526 2890844526 IN IP4

    atlanta.comc=IN IP4 10.1.3.33t=0 0m=audio 49172 RTP/AVP 0 4 18a=rtpmap:0 PCMU/8000a=rtpmap:4 G723/8000 a=rtpmap:18 G729/8000a=curr:qos e2e nonea=des:qos mandatory e2e sendrecv

    Среди заголовков в INVITE нетничего особенного для работы SIPPreconditions, только заголовок“Requires: 100rel”, который просит, чтобы ответы 1XX доставлялисьнадежно и подтверждались PRACK

    Запросы и ответы на резервирова-ние полосы пропускания в callflow SIP Preconditions – именно вSDP

    Bob

    Строки “a” current и desired накаждый поток сообщений сессииДОЛЖНЫ быть сгенерированыдля Preconditions

  • 102© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Jam

    es P

    olk

    200

    50

    50

    3

    Резервирование полосы с RSVP

    Alice

    SIP (QoS) Preconditions

    INVITE

    183 Session Progress

    Bob

    v=0o=bob 2890844527 2890844527 IN IP4 biloxi.comc=IN IP4 172.16.1.36t=0 0m=audio 3456 RTP/AVP 0a=rtpmap:0 PCMU/8000a=curr:qos e2e nonea=des:qos mandatory e2e sendrecva=conf:qos e2e recv

    SIP/2.0 183 Session ProgressVia: SIP/2.0/TCP swc50.atlanta.com:5060

    ;branch=z9hG4bK74bf9 ;received=10.1.3.33From: Alice ;tag=9fxced76slTo: Bob ;tag=8321234356Call-ID: [email protected]: 31862 INVITERSeq: 813520 Contact: Content-Type: application/sdpContent-Length: 210

    Боб просит подтверждениерезервирования

    Текущая и желаемая строки “a”ДОЛЖНЫ быть сгенерированы

  • 103© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Резервирование полосы с RSVP

    Alice

    SIP (QoS) Preconditions

    INVITE

    183 Session Progress

    PRACK

    Bob

    PRACK sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK74bf9 ;received=10.1.3.33

    Max-Forwards: 70To: Bob From: Alice

    ;tag=8321234356Call-ID: [email protected]: 31862 RAck: 813520 31862 INVITEContact: Content-Length: 0

    Этот PRACK для подтверждениясообщения 183 – не зависит отвыполнения резервирования

  • 104© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Резервирование полосы с RSVP

    Alice

    SIP (QoS) Preconditions

    INVITE

    183 Session Progress

    PRACK

    200 OK (PRACK)

    Bob

    SIP/2.0 200 OK sip:[email protected]: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK74bf9 ;received=10.1.3.33

    To: Bob From: Alice

    ;tag=8321234356Call-ID: [email protected]: 31862 PRACKContact: Content-Length: 0

  • 105© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Резервирование полосы с RSVP

    Alice

    SIP (QoS) Preconditions

    Invite

    183 Session Progress

    Bob

    PATH от B

    RESV к B

    PATH от A

    RESV к A

    PATH от B PATH от BPATH от B

    RESV к BRESV к BRESV к B

    PATH от APATH от APATH от A

    RESV к A RESV к ARESV к A

    Router 1 Router 2.... Router N

    RFC 2205

  • 106© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Резервирование полосы с RSVP

    Alice

    SIP (QoS) Preconditions

    INVITE

    183 Session Progress

    PRACK

    200 OK (PRACK)

    Bob

    UPDATE

    UPDATE sip:[email protected] SIP/2.0From: Alice ;tag=9fxced76sl To: Bob Contact: Call-ID: [email protected]: 10197 UPDATEContent-Type: application/sdpContent-Length: 191

    v=0o=alice 2890844528 2890844528 IN IP4 atlanta.comc=IN IP4 10.1.3.33t=0 0m=audio 49172 RTP/AVP 0a=rtpmap:0 PCMU/8000a=curr:qos e2e senda=des:qos mandatory e2e sendrecv

    UPDATE отправляется дляподтверждения того, что оба UAпроизвели резервирование (send)

  • 107© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Резервирование полосы с RSVP

    Alice

    SIP (QoS) Preconditions

    INVITE

    183 Session Progress

    PRACK

    200 OK (PRACK)

    UPDATE

    200 OK (UPDATE)

    Bob

    SIP/2.0 200 OK sip:[email protected]: Alice ;tag=9fxced76sl To: Bob Contact: Call-ID: [email protected]: 10197 UPDATEContent-Type: application/sdpContent-Length: 195

    v=0o=alice 2890844529 2890844529 IN IP4 atlanta.comc=IN IP4 10.1.3.33t=0 0m=audio 49172 RTP/AVP 0a=rtpmap:0 PCMU/8000a=curr:qos e2e sendrecva=des:qos mandatory e2e sendrecv

    200 OK от Боба – это UPDATE суведомлением sendrecv орезервировании в обе сторонымежду UA

  • 108© 2005 Cisco Systems, Inc. All rights reserved.SIP Cisco Public

    Резервирование полосы с RSVP

    Alice

    SIP (QoS) Preconditions

    INVITE

    183 Session Progress

    PRACK

    ACK

    200 OK (PRACK)