23425

Сообщения SIP

Лабораторная работа

Информатика, кибернетика и программирование

Реферат Протокол SIP разрабатывался с расчетом на возможность использования любых транспортов но тем не менее наиболее предпочтительным является использование UDPпакетов это позволяет повысить производительность по сравнению с использованием протокола TCP но требует использования дополнительных механизмов проверки доставки сигнальных сообщений. Так как телефония с использованием протокола SIP позволяет использовать большое количество разнообразных сервисов помимо передачи голоса возможна...

Русский

2013-08-03

27.68 KB

3 чел.

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное  бюджетное образовательное учреждение высшего профессионального образования

МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ

(национальный исследовательский университет)

Кафедра 609

Отчёт по лабораторной работе

                                               Сообщения SIP

 

Выполнил: ст. гр. 06-521     Обухов А.В.

=== Москва 2009 ===

Москва, 2013

                                     

Лабораторная  работа.

                                               

Реферат

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

Так как телефония с использованием протокола SIP позволяет использовать большое количество разнообразных сервисов (помимо передачи голоса, возможна передача видео, текстовых сообщений, факсов и др.), необходим механизм обмена информацией о том, какие сервисы может использовать вызываемая\вызывающая стороны. Для этой цели используется протокол SDP (Session Description Protocol) — протокол описания сессии. Данный протокол позволяет определить какие звуковые (видео и другие) кодеки и иные возможности может использовать удаленная сторона.

Собственно сама передача голоса осуществляется благодаря использованию протокола RTP (Real-time Transport Protocol, протокол транспортировки в реальном времени). Сам протокол SIP непосредственного участия в передаче голосовых, видео и других данных не принимает, он отвечает только за установление связи (по протоколам SDP, RTP и др.), поэтому под SIP-телефонией понимается не передача голоса по протоколу SIP, а передача голоса с использованием протокола SIP. Использование протокола SIP предоставляет новые возможности установления соединений (а также возможность беспроблемного расширения данных возможностей), а не непосредственной передачи голосового и других видов трафика.[3]

Формат адресов используемых протоколом SIP напоминает формат E-Mail-адреса: имя@идентификатор_хоста. В начале адреса ствится приставка "sip:" (пример: sip:user@host.com). В качестве идентификатора хоста может служить его IP-адрес, домен или имя хоста (IP-адрес определяется с использованием DNS, так что в итоге все равно получается обращение по адресу sip: имя@IP-адрес).

Сообщения SIP-протокола имеют следующую структуру[3]:

  1.  Стартовая строка (start-line)
  2.  Заголовки сообщения (*message-header)
  3.  Пустая строка (CRLF)
  4.  Тело сообщения

Заголовки сообщений содержат информацию, необходимую для обработки сообщения (информация об отправителе, адресате, пути следования и пр.)

Заголовки сообщений служат для передачи информация об отправителе, адресате, пути следования и других сведений, т.е. переносят необходимую для обслуживания данного сообщения информацию. О типе заголовка можно узнать из его имени. За исключением различий в наборе символов, многие SIP-сообщения и синтаксис полей заголовков схожи с используемыми в HTTP/1.1, хотя SIP и не является расширением[2]

Задание : пояснить назначение основных заголовков сообщений.

О типе заголовка и содержащейся в нем информации можно узнать по его имени. Оно всегда начинается с большой буквы, за которой следуют строчные. Некоторые заголовки используются во всех сообщениях, а некоторые – только в определенных случаях.

    Имеются заголовки четырех видов:

􀂉 Общие заголовки; они есть и в запросах и ответах;

􀂉 Заголовки содержания; они начинаются со слова ‘Content’ и несут информацию о размере тела сообщения или об источнике, передавшем сообщение;

􀂉 Заголовки запросов, несущие дополнительную информацию о запросе;

􀂉 Заголовки ответов, несущие дополнительную информацию об ответе.

Поля заголовков SIP-сообщений похожи на поля заголовков HTTP-сообщений по синтаксису и семантике. В частности, SIP поля заголовков соответствуют описаниям синтаксиса HTTP/1.1 для заголовков сообщений и правилам для расширения полей заголовков на несколько строк.

Каждое поле заголовка состоит из имени поля, символа «двоеточие» и значения поля:

Имя поля: значение поля

Рассмотрим примеры и смысл наиболее часто встречаемых заголовков:

  1.  Сall-ID

Заголовок Call-ID – уникальный идентификатор сеанса связи или всех регистраций отдельного клиента. Значение идентификатору присваивает сторона, которая инициирует вызов. Возможна и такая ситуация: к одной мультимедийной конференции относятся несколько соединений – все они будут иметь разные индентификаторы Call-ID.

Заголовок состоит из буквенно-числового значения и имени рабочей станции, которая присвоила этому идентификатору. Между ними должен стоять символ «@». [1]

Значения Call-ID регистрозависимы и могут сравниваться побайтно. Примеры:

Call-ID: f81d4fae-7dec-11d0-a765-00a0c91e6bf6@loniis.ru

i:f81d4fae-7dec-11d0-a765-00a0c91e6bf6@192.0.2.4

  1.  То

Заголовок To определяет логического адресата запроса. В случае присутствия отображаемого имени, оно должно быть с помощью пользовательского интерфейса предоставлено вызываемому пользователю. Параметр «tag» является неотъемлемой частью механизма идентификации диалога.[1]

Процедура сравнения заголовков To аналогична процедуре с заголовками From

Примеры:

To: The Operator <sip:operator@server10.protei.ru>;tag=287447

  1.  From

Заголовок From содержит URI отправителя запроса. Заметим, что адрес отправителя запроса может не совпадать с адресом инициатора диалога. Адрес из заголовка From запроса копируется в одноимённый заголовок ответа. Отображаемое имя должно информировать пользователя об инициаторе запроса. В лучае если не удаётся установить личность вызывающего пользователя, в качестве display name (отображаемого имени) фигурирует «Anonymous». В случае, если URI содержит запятую, точку с запятой или вопросительный знак, он заключается в угловые скобки, даже если отображаемое имя отсутствует.[1]

Два заголовка From считаются эквивалентными, когда совпадают их URI и параметры. При сравнении параметры расширения, присутствующие лишь в одном из двух заголовков , во внимание не берутся. Это означает, что отображаемое имя и наличие либо отсутствие угловых скобок не влияют на результат сравнения.

Примеры:

From: "Vladimir" <sip:vladimir@protei.ru> ;tag=a48s

From: sip:+79213434329@gateway.protei.ru;tag=887s

  1.  Cseg

Заголовок Cseg – уникальный идентификатор запроса, относящегося к одному соединению. Он служит для корреляции запроса с ответом на него, а также для различия первоначальных запросов с переадресованными. Заголовок состоит из двух частей: натурального числа из диапазона чисел от 1 до 232 и типа запроса. Часть типа запроса является регистрозависимой. Сервер должен проверять начение величины CSeq в каждом принимаемом запросе, и считает его новым, если начение больше предыдущего. Этот заголовок копируется иззапроса в ответ.[2]

Пример: CSeq: 4711 INVITE

  1.  Content-Length

Основное назначение заголовка Content-Language – определить и изменить содержимое тела сообщения в соответствии с предпочтительным языком пользователя (имеется в виду национальный язык). Если тело сообщения содержит информацию на конкретном языке, то это будет указано в заголовке. В случае отсутствия заголовка Соntent-Language в сообщении подразумевается, что содержимое предназначено для пользователей любых языковых групп.[2] 

Заголовок Content-Language может применяться не только к текстовым телам, но и к телам других типов.

Пример:

Content-Language: fr

  1.  Content-Length

Заголовок Content-Length указывает отображённый в десятичном виде размер тела сообщения, посланного получателю, в байтах. Приложения должны помещать в длинное поле размер тела сообщения, подлежащего отправке, не взирая на тип тела сообщения. Если в качестве транспорта выступает потоко-ориентированный протокол (такой как TCP), заголовок Content-Length должен использоваться обязательно.

Размер тела сообщения не учитывает пустой строки, отделяющей заголовки от тела сообщения. Разрешёнными значениями для Content-Length является любое число, большее или равное нулю. Когда в передаваемом сообщении тело отсутствует, в поле заголовка Content-Length выставляется ноль.

Возможность не включать заголовок Content-Length в сообщение упрощает создание cgi-подобных сценариев, которые динамически генерируют ответы [1]

Пример:

Content-Length: 349

  1.  Via

Поле заголовка Via содержит список элементов сети SIP, через которые запрос прошёл на данный момент. Список нужен для того, чтобы избежать ситуаций, в которых запрос пойдёт по замкнутому пути, а также для тех случаев, когда необходимо, чтобы запросы и ответы обязательно проходили по одному и тому же пути. В результате заголовок отображается весь путь, пройденный запросом: каждый прокси-сервер добавляет поле со своим адресом. Параметр «branch» в поле заголовка Via выполняет функцию идентификатора транзакции и используется прокси-серверами для обнаружения петель.

Via содержит информацию о транспортном протоколе, посредством которого переносится сообщение, имя клиентского хоста или сетевой адрес и, возможно, номер порта, на который является предпочтительным для приёма ответов. Также в поле заголовка могут присутствовать параметры: «maddr», «ttl» «received» и «branch».

Возможно использование сл едующих транспортных протоколов: UDP, TCP, TLS и S TP (TLS означает TLS поверх TCP). Когда запрос отсылается на SIPS URI,

указывается прикладной протокол – SIP, а транспортный протокол – TLS.

Via: SIP/2.0/UDP serv1.niits.ru:5060;branch=z9hG4bK87asdks7

Via: SIP/2.0/UDP 192.0.2.1:5060 ;received=192.0.2.207

;branch=z9hG4bK77asjd

В этом примере сообщение сформировано на терминале (multi-homed host) с двумя сетевыми адресами 192.0.2.1 и 192.0.2.207. Отправитель не был уверен, какой сетевой интерфейс необходимо исполь зовать и указал первый. Получив сообщение, узел rv1.niits.ru обнаружил несоответствие и добавил параметр к значению заголовка Via, относящегося к предыдущей пересылке. Параметр содержит действитель ный адрес, с которого поступил пакет.

К сетевому или хост-адресу и номеру порта не предъявляется требований подчинения синтаксису SIP URI. А именно, пробел не запрещается по обеим сторонам «:» или «/», как показано ниже:

 Via: SIP / 2.0 / UDP serv3.niits.ru: 4000;ttl=16

;maddr=224.2.0.1 ;branch=z9hG4bKa7c6a8dlze.1

Два заголо вка Via считаются равными, если их значения: название прикладного про токола, версия протокола, используемый транспортный протокол, адрес и порт узла (например, в указанном выше римере это – SIP/2.0/UDP serv3.niits.ru:4000) - одинаковы, имеют один и тот же абор параметров, и значения параметров равны.[1]

Список литературы

Для  работы были использованы материалы с сайтов

  1.  http://informst.ucoz.ru
  2.  http://dvo.sut.ru
  3.  http://www.ixbt.com


 

А также другие работы, которые могут Вас заинтересовать

55991. Сценарій двомовного свята: «Лісова школа. Абетка» 53 KB
  Ні Лиско Петрівно, ці дітки особливі і вкрай талановиті. Я зараховую їх до нас в «Лісову школу». А за свою роботу та чудовий виступ пропоную нагородити їх подяками. По завершенню ведучі...
55992. Научно-исследовательская деятельность в школе 131.5 KB
  Сторонники исследовательского обучения отмечают учебный процесс в идеале должен моделировать процесс научного исследования поиска новых знаний Исследовательская деятельность учащихся является формой образовательного процесса...
55994. Ось і школа, ось і клас. Він давно чекає нас 272 KB
  Органайзер Добрий день діти Продзвенів і стих дзвінок. У ньому діти отримують знання навчаються писати читати рахувати. Гра Склади портфель Діти Мальвіна хоче перевірити чи зможете ви зібрати портфель до школи. Діти заучують правило.
55995. Реалізація проекту «Школа Віри в себе» 1.18 MB
  Вони дозволять вже у молодшому шкільному віці через комфортно побудоване навчання сформувати здібності особистості до самовдосконалення саморозвитку самопізнання. Педагоги отримають відповідь як зробити щоб кожна дитина вірила в свої сили викладалась на повну силу своїх інтелектуальних можливостей та виросла впевненою в собі людиною поступово за час навчання в Школі віри в себе набувала вміння вчитись вірячи у власні сили та впевнено набуваючи загальнолюдські уміння та навички. Реалізація проекту Школа Віри в себе...
55996. СУЧАСНА ШКОЛА – ТЕРИТОРІЯ ЗДОРОВ‘Я 529 KB
  Колектив школи намагається працювати за моделлю здоровязберігаючого середовища найбільш значимими компонентами якої є: створення комфортних умов навчання і виховання та використання оздоровчих методик які...
55997. Ми тепер не просто діти – ми тепер вже школярі! 99 KB
  Я - лінь Живу вже сотні поколінь Всі мене люблять всі чекають Коли прийду не проганяють І я вас діточки люблю За лінощі вас поважаю Сама нічого не роблю І вам усім того ж бажаю
55998. Ми тепер не просто діти, ми тепер вже школярі 84.5 KB
  А як називається казка в якій ви зі мною познайомилися хто скажеДіти відповідають. А ви діти хотіли б помандрувати до цієї країни Але що ж мені робити Як потрапити до країни Знань Заходить Карабас Карабас...