outbound сервер что это

Взаимодействие клиентов SIP. Часть 2

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

В предыдущей статье мы рассмотрели простое взаимодействие клиентов SIP без использования Proxy-сервера. Такое взаимодействие на практике встречается чрезвычайно редко, но отлично подходит для того, чтобы понять основы SIP.

Выбор транспортного протокола и поиск Proxy

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

Первый способ предполагает явное указание транспорта в SIP URI (кроме TLS). Выглядит это вот так:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Итак, мы выяснили, параметры Proxy-сервера Ивана. Теперь предлагаю рассмотреть использование Proxy в рамках SIP-диалога.

Ремарка для тех, кто не знает, что такое NAPTR. Я узнал, что есть такой тип DNS-записи только, когда писал эту статью, так что не отчаивайтесь. Чуть подробнее про NAPTR здесь.

Взаимодействие с использованием Proxy

Для чего же нам необходим SIP Proxy? Как я уже сказал, в примере из 1-ой части статьи клиенты знали IP-адреса друг друга и могли общаться напрямую. В реальной жизни клиенты чаще всего получают адреса динамически, поэтому нет смысла «запоминать» тот или иной IP. Первое, что приходит на ум в данной ситуации – использовать A-записи DNS и определить реальный действующий адрес. Однако тут кроется следующая проблема: IP-адрес идентифицирует конкретное устройство, а не пользователя на нем. Особенностью взаимодействия SIP является то, что обмен сообщения происходит не на уровне устройство-устройство, а на пользователь-пользователь. При этом один пользователь может одновременно использовать несколько SIP-клиентов: на мобильном телефоне, на рабочем компьютере, на домашнем компьютере и на SIP-телефоне. Как же быть?

Протокол SIP предлагает следующее решение: создается SIP Proxy и каждый пользователь регистрирует свои устройства на этом Proxy (точнее пользователи регистрируются на сервере регистрации, а Proxy имеет доступ к базе регистрации, но для простоты будем считать, что это один и тот же сервер). Как это делается, я покажу ниже. Пока просто запомните, что Proxy знает, как именно найти тот или иной клиент пользователя.

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Для тех, кто изучил первую часть статьи, все выглядит довольно знакомо; добавился только промежуточный Proxy-сервер. Соответственно и обмен сообщениями изменился незначительно.

Прежде, чем преступим к детальному рассмотрению, маленькая ремарка. В рамках SIP разделяют два типа URI. Первый из них – ползовательский URI, также известный как address of recorf (AOR). Запрос, отправленный на этот адрес предполагает поиск в базе данных Proxy и отправку запроса одному или несольким устройствам. Второй – URI устройства (а точнее – пользователя на устроястве). URI устройства обычно называется контакт и содержится, соответственно, в поле Contact SIP-сообщения. AOR содердится в полях From и To.

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Начало разговора

Итак, Петр посылает INVITE для Ивана на Proxy-сервер:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это
Proxy-сервер перенаправляет запрос всем SIP-клиентам Ивана. Для простоты предположим, что Иван использует только одно устройство. Чтобы SIP-клиент понимал, что запрос был перенаправлен через Proxy, сервер добавляет свое заголовочное поле via:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

SIP-клиент Ивана шлет ответ 180 Ringing (Иван слышит звонок). При этом он добавляет tag в поле To и указывает свой контакт в поле Contact. Кроме того, в первом поле via добавился параметр received этот параметр показывает, с какого адреса клиент Ивана получил запрос (т.е. адрес Proxy-сервера, как его видит Иван). Это бывает полезно знать для решения возникающих проблем:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Proxy, соответственно, перенаправляет запрос клиенту Петра. При этом он убирает свой via:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

После отправки 180 Ringing, как только Иван снимет трубку, клиент Ивана отправляет на Prxoy ответ 200 OK:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Proxy передает этот ответ Петру, убирая при этом via:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Теперь самое интересное. Клиент Петра отправляет сообщение АСК непосредственно клиенту Ивана в обход Proxy. Причем, если бы Иван одновременно использовал несколько клиентов SIP, ответ пришел именно на тот, который нужно. Благодаря чему это возможно?

200 ОК отправляется с клиента на котором Иван снял трубку. Более того, в поле Contact ответа 200 ОК содержится URI, соответствующий пользователю Иван на конкретном устройстве. Таким образом клиент Петра отправляет АСК именно на это устройство, после чего участие Proxy больше не требуется:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Все остальные сообщения, включая медиа-траффик идут в обход Proxy.

Конец разговора

В конце разговора клиент Ивана отправляет BYE напрямую клиенту Петра:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Петр в ответ шлет подтверждение:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это
Здесь все, как в первой части статьи.

Итак, мы рассмотрели взаимодействие SIP-клиентов с участием Proxу-сервера. Остался один единственный вопрос: откуда Proxy узнал адреса клиентов Ивана? С помощью процедуры регистрации. Как это происходит, я расскажу ниже.

SIP-регистрация

Регистрация выглядит следующим образом:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Давайте подробнее рассмотрим каждое из сообщений. Иван отправляет на сервер запрос Register (для простоты считаем, что роль сервера регистрации установлена на proxy.domain.ru). Самое важное в этом запросе – поле Contact. Это адрес Ивана на конкретном устройстве:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

В ответ сервер присылает 401 Unauthorized, то есть требование авторизации. Самое важное поле в ответе — WWW-Authenticate. Не сложно догадаться, что realm — это домен, а algorithm указывает, какой хеш-алгоритм мы будем использовать. Интерес вызывает поле nonce:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Nonce — это сокращение от «number used once». Nonce — это одноразовая случайная последовательность, которую клиент Ивана cкомбинирует со строкой пароля, после чего сгенерирует MD5-хеш от полученной строки и поместит результат в новый запрос в поле WWW-Authenticate (на самом деле все несколько сложнее, но для простоты будем считать, что все именно так). Для этого служит параметр response.

Зачем нужен nonce? Если бы клиент генерировал MD5 от пароля и не использовал nonce, то хеш каждый раз получался бы один и тот же. Злоумешленник мог бы перехватить такой хеш и использовать для авторизации. Это было бы столь же небезопасно, как передавать пароль в открытом виде.

Если использовать nonce, MD5 каждый раз берется от новой строки и получается разным. Поэтому даже перехватив хеш, злоумышленник скорее всего не сможет его использовать для авторизации.

Кстати, обратите внимание, что новый запрос на регистрацию имеет CSeq на единицу больше:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Сервер также комбинирует nonce с паролем Ивана и получает MD5-хеш. После этого он сравнивает свой хеш с хешем, полученным от Ивана. Если они совпадают, то сервер присылает 200 ОК. Обратите внимание на то, что в поле Contact добавился параметр expires. В данном случае регистрация будет храниться в базе сервера в течение 3600 секунд или одного часа:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Если Иван хочет продлить регистрацию, то он должен отправить еще один REGISTER в течение этого часа.

Что делать, если Иван использует сразу несколько устройств с поддержкой SIP? Все очень просто – необходимо отправить запрос на регистрацию с каждого из них.

После того, как в базе данного сервера регистрации появится соответствующая запись, Proxy-сервер сможет перенаправлять запросы на SIP-клиенты Ивана.

Bonus для тех, кому интересно

Вы могли заметить, что, в ответ на запрос регистрации, сервер присылает ответ, содержащий To-tag:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Понятно, что при установке диалога данный tag помогает избежать повторного получения одного и того же сообщения. Для этого существует правило: если сообщение не содержит To-tag и UAS уже получал сообщение с таким же CSeq, From-tag и Call-ID, то сообщение отбрасывается. Для чего же нужен To-tag, если мы не устанавливаем диалог с сервером регистрации. Лучший ответ, который я смог найти — в RFC 3261 написано, что ответ 200 ОК, приходящий на запрос без To-tag должен содержать To-tag. То есть, это ни для чего не нужно, но так принято.

Надеюсь, что работа протокола SIP, после прочтения статьи, стала для вас более понятной. Буду рад вашим комментариям.

Источник

База знаний

IP-телефон — Настройка Yealink T20

Настройка IP-телефона Yealink T20

В данной статье рассмотрим стартовую настройку IP-телефона Yealink T20 в системе Oktell.

В адресной строке браузера вводим IP-адрес телефона, после чего появляется окно авторизации:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

пара login/password как правило стандартная — admin/admin.
После успешной авторизации попадаем на главную страницу web-интерфеса телефона:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Следующим шагом переходим на вкладку Sip-аккаунт, где непосредственно будем производить настройки телефона в нашей системе. Настройки поделены на 3 логические группы:
1.Основные
2.Кодеки
3.Дополнительные.

Рассмотрим 1ю группу — Основные.

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Остальные настройки в данной группе оставляем по умолчанию.

Переходим к следующей группе — Кодеки.

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

В группе Кодеки можно увидеть 2 столбца, в которых группируются кодеки поддерживаемые телефоном.С помощью функциональных кнопок в виде направленных стрелок можно перетаскивать кодеки из разряда неиспользуемых в разряд используемых.Так же с помощью кнопок с изображением стрелок, направленных вверх и вниз, можно выбирать приоритет предпочитаемых кодеков.

Переходим к группе Дополнительно.

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

В данной группе оставляем все настройки по умолчанию, обратив внимание на параметр Период перерегистрации(секунды).Рекомендуется выставить значение не более 300 для данного параметра.

Следующим шагом переходим к нижней части web-страницы:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

И нажимаем кнопку «Подтвердить» для применения внесенных изменений системой.

Далее по необходимости переходим к профилю SIP 2 и настраиваем его по аналогии с профилем SIP 1

После этого базовую настройку телефона можно считать законченной.

Настройка IP-телефона Yealink T20, IP-телефон Yealink T20, Yealink T20, Настройка IP-телефона T20, IP-телефона T20, Настройка Yealink T20

Источник

Взаимодействие клиентов SIP. Часть 1

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Месяц назад я начал свое знакомство с IP-телефонией, а именно с Lync и Asterisk. И заметил следующую картину: в сети очень много интересных статей по практической стороне вопроса (как и что делать) и очень мало внимания уделено теории (в конце статьи приведены ссылки). Если Вы хотите разобраться с SIP, то извольте либо читать RFC 3261, либо одну из «этих толстых книг». Это, естественно, полезно, но многим хочется в начале изучить некую выжимку, а уж потом бросаться в омут с головой. Эта статья как раз для таких людей.

Чтобы не перегружать читателя, я решил разбить статью на две части. В первой части мы рассмотрим работы протокола SIP при взаимодействии двух клиентов.

Простое взаимодействие клиентов

Взаимодействие клиентов в рамках SIP чаще всего осуществляется в виде диалога.

Диалог – это равноправное взаимодействие двух User Agent (UA) в виде последовательности SIP-сообщений между ними. При этом, существуют запросы, не образующие диалогов. Однако обо всем по-порядку.

Ниже приведен пример простого взаимодействия между двумя устройствами с поддержкой SIP:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Петр хочет начать обмен сообщениями с Иваном, для этого он посылает INVITE-сообщение с данными о типе сессии (простая, мультимедиа и т.д.). Сообщения имеют следующий формат: стартовая строка, одно или несколько полей заголовка, пустая строка, обозначающая конец полей заголовка и необязательное тело сообщения.

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Стартовая строка содержит метод, Request-URI и версию SIP (актуальная – 2.0). Request-URI – это SIP-адрес ресурса, которому посылается запрос.

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Поля заголовков имеют следующий формат: :

Первая строка начинается с заголовка Via. Каждое SIP-устройство, создающее или пересылающее сообщение, добавляет свой адрес в поле Via (как это происходит, я планирую показать в следующей части статьи). Обычно адрес представляет собой имя хоста, которое может быть разрешено с помощью DNS-запроса. Поле Via содержит версию SIP, знак “/”, пробел, транспортный протокол (UDP, TCP, TLS, SCTP), двоеточие, номер порта и branch – идентификатор транзакции. Ответы на этот запрос будут содержать такой же номер транзакции.

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Чаще всего, значение branch начинается с “z9hG4bK”. Это значит, что запрос был сгенерирован клиентом, поддерживающим RFC 3261 и параметр уникален для каждой транзакции этого клиента.

Следующее поле, Max-Forwards, содержит относительно большое целое число. Каждый сервер SIP, который пересылает сообщение, уменьшает это число на единицу. Данное поле обеспечивает простой механизм обнаружение петель (loop).

Следом идут поля From и To, которые описывают отправителя и получателя запроса. Важно, что SIP-запросы маршрутизируются исходя из Request-URI, указанного в стартовой строке (см. выше). Это объясняется тем, что поля From и To могут быть изменены при пересылке. Если используется отображаемое имя (например, Ivan Ivanov), то SIP URI помещается внутрь пары угловых скобок. Параметр tag в поле From генерирует отправляющая сторона. В свою очередь принимающая сторона поместит свой tag в поле To.

Поле Call-ID – идентификатор вызова. Совокупность tag’ов из полей From и To и Call-ID однозначно идентифицируют данный диалог. Это необходимо, так как между клиентами может идти сразу несколько диалогов.

Следующее поле, Cseq, содержит порядковый номер запроса и название метода. В данном случае – INVTITE. Номер увеличивается с каждым новым запросом.

Поля Via, Max-Forwards, To, From, Call-ID и CSeq составляют минимальный необходимый набор полей заголовков SIP-сообщения.

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Для сообщения INVITE также необходимо поле заголовка Contact, в котором содержится SIP URI, относящийся к коммуникационному устройству отправляющей стороны. Это поле используется, чтобы из всех устройств, которыми одновременно может пользоваться Петр, ответ был отправлен именно на данное устройство. Обратите внимание на значения полей From и Contact. Первый раз я не заметил разницу:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

В сообщении присутствует опциональное поле Subject, то есть тема сообщения. Некоторые SIP-клиенты могут выводить значение этого поля на экран. Для маршрутизации и идентификации диалога поле не используется и может быть произвольным.

Поля Content-Type и Content-Length отвечают за описание тела сообщения. В данном случае будет использоваться Session Description Protocol (SDP). Размер сообщения вычисляется с учетом символов перевода строки:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Детальное описание работы протокола SDP заслуживает отдельной статьи, поэтому ниже приведена только краткая расшифровка:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

В ответ на INVITE SIP-клиент Ивана отправляет два сообщения: 180 Ringing и 200 OK. Первое сообщает, что на стороне Ивана SIP-клиент подает звуковой сигнал звонка, второе – подтверждает установку диалога. Разберемся с каждым из них.

Так будет выглядеть сообщение 180 Ringing:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Бледным выделен текст, который не изменился по сравнению с сообщением INVITE.

Обратите внимание на поля заголовков To и From. Несмотря на то, что данное сообщение идет со стороны Ивана, значения полей остаются такими же, как были в первоначальном запросе (от Петра к Ивану). Это объясняется тем, что данные поля определяют направление запроса, а не сообщения.

Строка Via также перекочевала из исходного запроса, в конце строки добавлен параметр received этот параметр содержит IP-адрес, с которого пришел запрос. Обычно это адрес, который может быть получен путем разрешения URI, содержащегося в Via.

Как я и обещал, в поле To добавился tag, идентифицирующий диалог. Все последующие сообщения в рамках диалога будут содержать неизменные значения tag.

Наконец, в поле Contact содержится актуальный адрес Ивана.

Так выглядит сообщение 200 ОК, которое отправил SIP-клиент Ивана:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Думаю, смысл всех полей, относящихся к протоколу SIP теперь ясен.

В ответ на 200 ОК клиент Петра отправляет подтверждение:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Данное сообщение подтверждает, что клиента Петра успешно получил ответ от клиента Ивана. Оба клиента договорились о параметрах меди-сессии, которая будет осуществляться по протоколу RTP.

Обратите внимание, что номер последовательности CSeq все еще равен единице, но в качестве метода уже стоит ACK. Параметр Branch в поле Via содержит новый идентификатор транзакции, так как ACK, отправляемый в ответ на 200 OK считает новой транзакцией.

Теперь давайте рассмотрим, как происходит завершение медиа-сессии. Клиент Петра посылает BYE-запрос для завершение сессии:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Получив запрос на завершение сессии, клиент Ивана посылает подтверждение:

outbound сервер что это. Смотреть фото outbound сервер что это. Смотреть картинку outbound сервер что это. Картинка про outbound сервер что это. Фото outbound сервер что это

Мы рассмотрели простой вариант работы протокола SIP. Обратите внимание, что в разные моменты времени клиенты Ивана и Петра выступали то в роли сервера, то в роли клиента, поэтому во всех SIP-клиентах должна функционировать как серверная (User Agent Server или UAS), так и клиентская часть (User Agent Client или UAC).

В следующей статье я планирую рассмотреть взаимодействие клиентов SIP с использованием Proxy-сервера и регистрацию клиентов на Proxy-сервере.

Источник

Протокол SIP: инфраструктура, механизм обмена сообщениями, дополнительные возможности

Протокол SIP — (Session Initiation Protocol) — протокол установления сеанса связи. Данный протокол является одним из основных, используемых в IP-телефонии. Он был разработан в 1996 году Марком Хэндли, Джонатаном Розенбергом и Хеннигом Шульцринном, в 1999 году была выпущена версия 1.0 (RFC 2543), затем протокол был доработан, и в 2002 году и принят в качестве протокола […]

Протокол SIP — (Session Initiation Protocol) — протокол установления сеанса связи. Данный протокол является одним из основных, используемых в IP-телефонии. Он был разработан в 1996 году Марком Хэндли, Джонатаном Розенбергом и Хеннигом Шульцринном, в 1999 году была выпущена версия 1.0 (RFC 2543), затем протокол был доработан, и в 2002 году и принят в качестве протокола сигнализации в мобильной телефонии (RFC 3261). SIP был изначально разработан только для работы с сеансами связи (установка/завершение/изменение), но не для передачи данных.Отметим некоторые особенности работы протокола SIP:

Инфраструктура сетевых агентов протокола SIP

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

Обмен сообщениями в протоколе SIP

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

Запросы генерируются терминалами-клиентами к серверам и инициализируют функциональность протокола. Отправка запроса подразумевает получение ответа о результате транзакции. Рассмотрим подробно возможные варианты запросов SIP клиентов:

Ответы разделяются на классы, определяемые их цифровым кодом. Рассмотрим подробно классы возможных ответов:

Дополнительные возможности SIP

SIP-сжатие

Являясь текстовым протоколом, SIP может создавать высокую нагрузку на используемый транспортный протокол. Возможны случаи превышения максимального MTU при использования в качестве транспорта протокола UDP. Для обхода подобных проблемных ситуаций SIP предусматривает сжатие заголовков сообщений и передачу их в компактной форме. Компактная форма может быть заменена на обычную в любое время передачи сообщения, без изменения его семантики.

Сигнализация SIP DTMF

Протокол SIP использует четыре метода для передачи цифровых сигналов между терминальными агентами:

SIP Perfomance Tester

SIP Perfomance Tester является инструментом для тестирования ПО, либо инфраструктуры сети под нагрузкой. Он позволяет определить максимальное количество вызовов, количество вызовов в секунду, так же количество одновременных вызовов. Данный продукт имитирует SIP- и RTP- трафик для того, чтобы определить будет ли стабильно работать ваша конфигурация сервера или сети под нагрузкой. SIP Perfomance Tester измеряет такие показатели, как задержка ответа, соотношение запросов и ответов, потеря пакетов, время задержки приема или передачи.

Security SIP разработан для обеспечения безопасной передачи информации путем шифрования данных, передаваемых по протоколу SIP. SIPS использует TLS для обеспечения защищенного канала связи между клиентом и сервером с использованием механизма рукопожатия. Данные же упаковываются по протоколу SRTP в шифрованные IP-пакеты и их передача начинается только после того, как устанавливается SSL-туннель между клиентом и сервером. Важной особенностью использования SSIP является необходимость его поддержки всеми используемыми устройствами в сети, если хотя бы один узел не поддерживает SRTP/TLS, то установить защищенное соединение будет невозможно.

SIP ALG

SIP ALG это механизм маршрутизации SIP-трафика, несколько похожий на SIP Proxy. ALG является программным шлюзом и используется в прослойке между устройствами SIP и сетью. SIP ALG анализирует поступающий трафик и может управлять им разрешая, запрещая, либо перенаправляя его другим узлам сети. Данный программный шлюз позволяет синхронизировать входящие потоки либо сессии между клиентами и серверами. Также в число его возможностей входит использование динамических портов транспортных протоколов для взаимодействия с устройствами NAT. Этот механизм позволяет SIP-трафику беспрепятственно транслировать адреса назначения и отправителя через таблицы NAT. При использовании данной технологии маскарадинг адресов происходит на уровне самого шлюза ALG.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *