Архив рубрики: Help

Помощь. Справка. Справочная информация. Дополнительная информация. Теория

SIP: Записки о протоколе

Заголовки INVITE

 

Method and RURI (Request URI) — назначение запроса, используется прокси-серверами для роутинга запроса.

Via: сообщает, куда слать ответы на данный запрос, каждый прокси-сервер добавляет свой заголовок Via. Параметр branch идентифицирует транзакцию.

To: не используется для роутинга, содержит display name и SIP URI.

From: содержит display name и SIP URI, которые идентифицируют звонящего (Caller ID). Параметр Tag добавляется телефоном.

Call-ID: глобальный уникальный идентификатор вызова

Call-ID + To Tag + From Tag: вместе идентифицируют SIP диалог — Dialog ID (tags используются in parallel forking)

CSeq: command sequence инкременрируется при каждом запросе в текущем диалоге.

Contact: прямой маршрут для связи с userA (как сконтактировать с клиентом напрямую).

 

Разница между Via и Contact

 

  • Via: говорит, куда слать ответы
  • Contact: говорит, куда слать будущие запросы

 

Описанием медиа, кодеков и т.д. занимается протокол SDP. Описание вкладывается в тело SIP запроса. Описание SDP используется при установлении RTP сессии.

Если Record Routing не вовлечен, ACK посылается напрямую пользователю, минуя прокси-сервера (я так понимаю, это Stateless режим работы прокси-сервера).

Но зачастую используются Stateful режим и прокси-сервера таки добавляют заголовок Record Route в сообщения, чтобы заставить «пользователей» слать все запросы через себя. Это дает возможность мониторить состояние сессий.

ACK — метод, не требующий ответа. ACK отсылается только на INVITE, на BYE — нет (BYE—>, <—OK, все, сессия завершена)

Конечные пользователи изучают друг друга через Contact.

 

INVITE/200 OK/ ACK  называют SIP three-way handshake.

 

Разница между SIP-транзакцией и SIP-диалогом

 

  • SIP-транзакция: запрос — промежуточные ответы (если есть) — окончательный ответ.

ACK на положительный ответ — новая транзакция.
ACK — на отрицательный ответ — принадлежит существующей INVITE-транзакции, новая транзакция не создается.

  • SIP-диалог: все общение от начала до конца, идентифицируется Dialog ID (Call-ID+From Tag+To Tag)

 

Разница между SIP-Proxy и B2BUA (PBX)

 

  • SIP-Proxy:

Маршрутизирует запросы (1 leg)
Как быстро опознать? Один и тот же Call-ID

  • B2BUA (back-to-back user agent):

Отвечает на входящий вызов (a-leg)
Инициирует исходящий вызов (b-leg)
Bridge 2 legs — соединяет 2 ноги
Как быстро опознать? Call-ID разные

Call-ID сохраняется при прохождении через прокси-сервер, но при прохождении через B2BUA у вызова 2 ноги, Call-ID у двух ног разные

 

Remote-Party-ID (RPID)  -не стандартизирован, но популярен, используется для определения CallerID.

Стандарный путь для определения CallerID, это заголовки:

P-Asserted-Identity
P-Prefered-Identity
Privacy headers

 

Режимы работы Proxy-серверов

 

  • Stateful
  • Stateless

 

Initial and Sequential Requests

 

Initial and Sequential Requests — почему важно различать? — по разному роутятся

  • Initial — отсутствует To Tag (например, запрос INVITE)
  • Sequential (In-Dialog)— есть To Tag; Same Call-ID, From Tag , To Tag (например BYE, ACK, RE-INVITE)

 

SDP Negotiation

 

  • Normal Negotiation:

INVITE with SDP offer —>
<— 200 OK with SDP answer
ACK without SDP —>

-последнее слово в согласовании за UAS

  • Late Negotiation:

INVITE without SDP —>
<— 200 OK with SDP offer
ACK with SDP answer —>

-последнее слово в согласовании за UAC

 

DTMF

 

  • inband DTMF
  • named events (RFC 2833)
  • SIP INFO

 

Телефонный план нумерации Украины

Международный телефонный код Украины — 380.
Чтобы позвонить извне в Украину, набираем 380-yy-xxx-xx-xx

xxx-xx-xx — 7 цифр — звонки по фиксированной связи в пределах города
0-yy-xxx-xx-xx — 10 цифр — звонки в пределах Украины
00-код страны-код города-абонентский номер — звонки с Украины зарубеж

00 — выход на международные линии
0 — выход на междугородние линии или на мобильного оператора
yy — код мобильного оператора, или города, или области
xxx-xx-xx — 7-значный номер абонента

  • 010 — коды альтернативного выбора междугородней/международной фиксированной телефонной связи
  • 0100 — dial-up
  • 031, 032, 033, 034, 035, 036, 037, 038, 041, 043, 044, 045, 046, 047, 048, 051, 052, 053, 054, 055, 056, 057, 061, 062, 064, 065, 069 — список телефонных кодов областей Украины
  • 050, 063, 066, 067, 068, 073, 091, 092, 093, 094, 095, 096, 097, 098, 099 — список кодов мобильных операторов Украины
  • 0700 — код услуги персонального номера
  • 0800 — «бесплатные» горячие линии — платит получатель вызова
  • 089 — SIP-телефония Украины
  • 0900 — платные линии

 

Телефонные коды областей Украины
КодОбласть
31-xxx-xx-xxЗакарпатская область
32-xxx-xx-xxЛьвовская область
33-xxx-xx-xxВолынская область
34-xxx-xx-xxИвано-Франковская область
35-xxx-xx-xxТернопольская область
36-xxx-xx-xxРовенская область
37-xxx-xx-xxЧерновицкая область
38-xxx-xx-xxХмельницкая область
41-xxx-xx-xxЖитомирская область
43-xxx-xx-xxВинницкая область
44-xxx-xx-xxКиев город
45-xxx-xx-xxКиевская область
46-xxx-xx-xxЧерниговская область
47-xxx-xx-xxЧеркасская область
48-xxx-xx-xxОдесская область
51-xxx-xx-xxНиколаевская область
52-xxx-xx-xxКировоградская область
53-xxx-xx-xxПолтавская область
54-xxx-xx-xxСумская область
55-xxx-xx-xxХерсонская область
56-xxx-xx-xxДнепропетровская область
57-xxx-xx-xxХарьковская область
61-xxx-xx-xxЗапорожская область
62-xxx-xx-xxДонецкая область
64-xxx-xx-xxЛуганская область
65-xxx-xx-xxКрым АР - отключено 2015 г.
69-xxx-xx-xxСевастополь город - отключено 2015 г.

 

Телефонные коды мобильных операторов Украины
КодМобильный оператор
39-xxx-xx-xxGolden Telecom
50-xxx-xx-xxМТС Украина
63-xxx-xx-xxАстелит (он же Life:))
66-xxx-xx-xxМТС Украина
67-xxx-xx-xxКиевстар
68-xxx-xx-xxКиевстар (бывший Beeline)
73-xxx-xx-xxАстелит (он же Life:))
91-xxx-xx-xxТримоб (ТМ от Укртелеком)
92-xxx-xx-xxТЕЛЕСИСТЕМЫ УКРАИНЫ (они же PEOPLEnet)
93-xxx-xx-xxАстелит (он же Life:))
94-xxx-xx-xxИнтернациональные телекоммуникации (он же Интертелеком)
95-xxx-xx-xxМТС Украина
96-xxx-xx-xxКиевстар
97-xxx-xx-xxКиевстар
98-xxx-xx-xxКиевстар
99-xxx-xx-xxМТС Украина

 

SIP телефонные коды Украины
Код услугиНомерОператор
89SIP
89089-0xx-xx-xx--- не распределено
89189-1xx-xx-xxДатагруп
89289-2xx-xx-xxУкртелеком
89389-3xx-xx-xxТ.Р.Комьюникейшн
89489-4xx-xx-xxАтлантис Телеком
89589-5xx-xx-xxЛинком 3000
89689-6xx-xx-xx--- не распределено
89789-7xx-xx-xxКиевстар
89889-8xx-xx-xx--- не распределено
89989-9xx-xx-xxВелтон.Телеком

 

Другие телефонные коды Украины
Код услугиНомерОператор
10Коды альтернативного выбора сети междугородней фиксированной телефонной связи
10-23x-xx-xxДатагруп
10-93x-xx-xxАстелит (он же Life:))
10Коды альтернативного выбора сети международной фиксированной телефонной связи
10-23x-xx-xxДатагруп
10-33x-xx-xxФарлеп-Инвест
10-50x-xx-xxУкртелеком
10-93x-xx-xxАстелит (он же Life:))
100Код услуги выхода с сети ТФОП в сеть Интернет (dial-up)
100-50-xx-xxУкртелеком (dial-up)
700Код услуги персональных номеров
700-90-xx-xxИнтернациональные Телекоммуникации
800Бесплатные горячие линии.
Коды глобальной услуги "Вызов за счет абонента, который вызывают"
800-10-xx-xxВелтон.Телеком
800-20-xx-xxАстелит (он же Life:))
800-21-xx-xxДатагруп
800-30-xx-xxКиевстар
800-40-xx-xxМТС Украина
800-50-xx-xxУкртелеком
800-60-xx-xxФарлеп-Инвест
800-75-xx-xxИнтернациональные Телекоммуникации
800-80-xx-xxТ.Р.Комьюникейшн
900Платные линии. Коды глобальной услуги "С распределением прибыли"
900-23-xx-xxАудиотекс
900-25-xx-xxТ.Р. Комьюникейшн
900-26-xx-xxЕвроинформ
900-30-xx-xxУкртелеком
900-31-xx-xxДатагруп
900-32-xx-xxЕвро-Информ
900-33-xx-xxФарлеп-Инвест
900-90-xx-xxМикроком

 

Коды разъединения Q931

helpQ931 — протокол третьего уровня в цифровых сетях ISDN, управляющий соединениями. Коды разъединения q931 описывают причину завершения связи. Коды и их краткое описание приведены ниже в таблице.

кодзначение
1Не назначенный (не присвоенный) номер. Необходимое назначение достоверно, но не может быть достигнуто.
2Нет маршрута к заданной транзитной сети.От посылающего оборудования требуется проведение сигнала через незнакомую транзитную сеть.
3Нет маршрута к адресату.Вызываемый пользователь не может быть достигнут, т.к. сеть не обслуживает место назначения.
4Передача специального сигнала оповещения.Указывает на то, что вызываемая сторона недоступна, вызывающей стороне будет отдан специальный сигнал оповещения.
5Неверный префикс канала.Указывает на ошибочное добавление префикса канала в номер вызываемой стороны.
6Канал неприемлем.Последний выбранный канал недоступен для посылаемого объекта.
7Вызов назначен и доставлен в установленный канал.Входящий сигнал соединен с каналом, который уже настроен на принятие идентичных по типу сигналов (например, виртуальные вызовы в пакетном режиме Х.25).
8Прерывание.Указывает на то, что вызов был прерван.
0Прерывание – Канал сохранен для повторного использования.Указывает на то, что звонок был сброшен по требованию одной из сторон. При необходимости можно повторить вызов.
16Нормальное завершение вызова.Вызов корректно завершен одним из вовлеченных пользователей.
17Пользователь занят.Вызываемый пользователь не может принять еще один вызов, хотя совместимость достигнута.
18Пользователь не отвечает.Применяется, когда пользователь не отвечает на вызов, содержащий сообщения, предупреждающие о готовности к работе или о соединении в течение отведенного времени.
19От пользователя нет ответа (пользователь предупрежден).Пользователь обеспечил индикацию готовности к работе, но не обеспечил индикацию соединения в течение отведенного времени.
20Пользователь отсутствует.Вызываемая сторона недоступна, установление связи невозможно или вызываемый абонент временно недоступен в сети.
21Вызов отклонен.Оборудование, посылающее значение, не принимает данный вызов, хотя оно свободно и совместимо.
22Номер изменен.Это означает, что вызываемой партии не присвоен номер.
26Разъединение невыбранного пользователя.Пользователь не предупрежден о входящем сигнале.
27Адресат не в порядке.Интерфейс пункта назначения не функционирует нормально.
28Неправильный формат номера.Номер вызываемой партии недействителен или не полон.
29Функциональная возможность отклонена.Сеть не может обеспечить требуемый канал связи.
30Ответ на ЗАПРОС СОСТОЯНИЯ (STATUS ENQUIRY).Причиной сообщения STATUS было предшествующее ему принятие сообщения ЗАПРОС СОСТОЯНИЯ.
31Нормальный, не специфицированный.Используется для сообщения о нормальных событиях только тогда, когда в нормальном классе не возникает никакого другого значения.
34Нет доступного маршрута/канала.Подходящий маршрут/канал для принятия вызова в данный момент недоступен.
38Сеть неисправна.Сеть не функционирует. Немедленный повторный набор номера не будет удачным
39Фреймовый режим постоянного соединения недоступен.Код включен в сообщение СТАТУСА(STATUS), чтобы указать, что фреймовый режим постоянного соединения недоступен.
40Фреймовый режим постоянного соединения в рабочем состоянии.Код включен в сообщение СТАТУСА(STATUS), указывает, что фреймовый режим постоянного соединения доступен для передачи пользовательской информации.
41Временная неисправность.Сеть не функционирует. Вероятно, немедленный повторный набор номера не будет удачным.
42Перегрузка коммутационного оборудования.Коммутационное оборудование, отдающее это значение, в данный момент перегружено.
43Информация доступа отвергается.Сеть не может передать выбранную информацию удаленному пользователю так, как это необходимо. Этому могут препятствовать: информация, поступающая от пользователя к пользователю, низкий уровень совместимости, высокий уровень совместимости или под адрес, как указано в диагностике. Конкретный тип отторгаемой выбранной информации дополнительно указывается в диагностике.
44Требуемый маршрут/канал недоступен.Данное значение передается, когда маршрут (или канал), указанный необходимым объектом, не может быть обеспечен другой стороной.
47Ресурсы недоступны, не предусмотрены.В данном случае о недоступном ресурсе сообщается только тогда, когда нет другого значения в классе недоступных ресурсов.
49Качество услуг не обеспечено.Задержка передачи информации не поддерживается, и качество обслуживания (как определено в Рекомендациях Х.213) не может быть обеспечено.
50Требуемый канал связи не подключается.Требуемые дополнительные услуги не могут быть обеспечены сетью, т.к. пользователь не выполнил необходимые административные формальности по отношению к поддерживаемым сетям.
53Исходящие вызовы запрещены внутри закрытой группы пользователей(CUG).Означает, что вызывающая сторона является членом группы, исходящие звонки не разрешены этому члену закрытой группы пользователей.
55Запрет на входящие вызовы внутри закрытой группы пользователей (CUG).Несмотря на то, что вызываемая сторона является членом группы, входящие вызовы запрещены этому члену закрытой группы пользователей (CUG).
57Возможности переноса не санкционированы.
58Возможности переноса в настоящее время недоступны.
62Ошибка в информации об уровне и категории пользователя.Показывает, что существует несоответствие в исходящей информации об уровне доступа и категории пользователя.
63Услуга или факультатив не доступны, не специфицированы.
65BCAP не определена.Оборудование, посылающее данное значение, не имеет требуемой ВСАР.
66Тип канала не обеспечивается.Оборудование, посылающее данное значение, не обеспечивает необходимые дополнительные услуги.
69Требуемый канал связи не обеспечивается.Оборудование, возвращающее данное значение, не обеспечивает необходимые дополнительные услуги.
70Доступна только ограниченная возможность переноса цифровой информации.Одно оборудование требует от носителя неограниченных услуг, но оборудование, посылающее данное значение, обеспечивает только ограниченную версию.
79Услуга или опция не установлены, не предусмотрены.Сообщение о непредусмотренной услуге или опции появляется только в том случае, если в классе непредусмотренных услуг (или опций) не возникает других значений.
81Недействительное значение опорного сигнала.Сообщение, содержащее опорный сигнал, который в данный момент не используется на интерфейсе пользователь-сеть было получено оборудованием, отсылающим данное значение.
82Идентификатор канала не существует.Оборудование, возвращающее данное значение, получило запрос об использовании канала, не активизированного на интерфейсе для вызова.
83Приостановленный вызов существует, но его идентификатора нет.Возобновляемый вызов был опробован с тождественным, который отличается от рабочего для всех текущих приостановленных сигналов.
84Идентичность вызова в использовании.Сеть получила приостановленный сигнал запроса. Этот запрос содержит тождественный вызов (включая нулевой тождественный вызов), который уже находится в действии для приостановленного вызова в пределах интерфейсов, на которых этот сигнал может быть возобновлен.
85Приостановленного вызова нет.Сеть получила возобновленный запрос, содержащий элемент информации тождественного вызова, который в свою очередь не указывает на наличие каких-либо приостановленных вызовов в рамках интерфейсов, на которых этот сигнал может быть возобновлен.
86Соединение, имеющее запрошенный идентификатор вызова, разъединено.Сеть получила возобновленный запрос, содержащий элемент информации тождественного вызова, который указывал на наличие приостановленного вызова, но во время этой остановки прерванный вызов был разъединен (либо из-за возникшего в сети тайм-аута, либо отдаленным пользователем).
87Пользователь не входит в закрытую группу пользователей (CUG).Вызываемый пользователь для входящих звонков ЗГП не является членом упомянутой группы или, что звонящий пользователь является обычным абонентом, вызывающим абонента, состоящего в ЗГП.
88Несовместимость с пунктом назначения.Оборудование, создающее это значение, получило запрос о принятии вызова, имеющего более низкий уровень совместимости, более высокий уровень совместимости или другие характеристики совместимости (например, частоту поступления информации), которые делают принятие вызова невозможным.
90Несуществующая группа пользователей (CUG).Показывает, что указанная группа не существует.
91Неправильный выбор транзитной сети.
95Неправильное или непредусмотренное сообщение.Появляется только тогда, когда в классе недействительных сообщений не возникает других значений.
96Отсутствует обязательный информационный элемент.Оборудование, создающее это значение, получило сообщение, не содержащее информационного элемента, который должен присутствовать в сообщении до того, как оно может быть подвергнуто обработке.
97Тип сообщения не существует или не реализован.Оборудование, создающее это значение, получило сообщение, тип которого ему не знаком, потому что это сообщение либо не расшифровано, либо расшифровано, но не введено в эксплуатацию на данном оборудовании.
98Сообщение несовместимо с состоянием вызова или его тип не существует или не введен в эксплуатацию.Оборудование, создающее это значение, получило сообщение, которое оно рассматривает как не допустимое в состоянии вызова; или же было получено сообщение STATUS, указывающее на несовместимое состояние вызова.
99Информационный элемент не существует или не реализован.Оборудование, создающее это значение, получило сообщение, включающее неопознанные информационные элементы, так как идентификатор информационного элемента не определен, а если определен, то не введен в эксплуатацию на инструменте, создающем новое значение. Однако информационный элемент не обязательно должен присутствовать в сообщении для того, чтобы дать возможность оборудованию, создающему данное значение, провести его обработку.
100Сообщение содержит некорректный информационный элемент.Оборудование, создающее данное значение, получило информационный элемент, который оно ввело в эксплуатацию. Однако оборудование было не в состоянии ввести в эксплуатацию код, так как одно или несколько полей были неправильно закодированы.
101Сообщение несовместимо с состоянием вызова.Полученное сообщение несовместимо с состоянием вызова.
102Восстановление по истечении тайм-аута.Время истекло и начата связанная с исправлением ошибок процедура Q.931 .
103Несуществующий или неописанный параметр.Оборудование, вернувшее этот код, получило сообщение, в котором содержались нераспознанные параметры. Нераспознанные потому что, они не определены или определены, но не используются на этом оборудовании.
110Сообщение с неизвестным параметром сброшено.Оборудование, вернувшее этот код, сбросило принятое сообщение, потому что оно содержало неизвестный параметр.
111Не специфицированная ошибка в протоколе.Сообщение о наличии ошибки появляется, только если в классе протокольных ошибок нет других значений.
127Не специфицированная ошибка межсетевого взаимодействия. Имела место организация межсетевого взаимодействия с сетью, которая не обеспечивает причинные коды операций. Поэтому точное значение отсылаемого сообщения неизвестно.

Стандартные тональные сигналы линии

 

ОТВЕТ СТАНЦИИ — информирует абонента о готовности станции к приему набора номера или дополнительных видов услуг:

tone_ответ_станции_mini

Частота, Гц: 425 , непрерывный сигнал


ТОНАЛЬНЫЙ ВЫЗОВ — информирует абонента о поступлении к нему вызова:

tone_тональный_вызов_mini

Частота, Гц: 515, 425, 625; сигнал = 3 частоты подряд в заданой последовательности (каждая по 330 мс) = 1 с, пауза 4 с


КОНТРОЛЬ ПОСЫЛКИ ВЫЗОВА — информирует вызывающего абонента о посылке вызывного сигнала вызываемому абоненту:

tone_контроль_посылки_вызова_mini

Частота, Гц: 425 , сигнал — 1 с, пауза — 4 с;


ЗАНЯТО — информирует абонента о занятости вызываемого абонента после набора номера или об отбое другого абонента после разговора:

tone_занято_mini

Частота, Гц: 425 , сигнал — 400 мс, пауза — 400 мс;


ЗАНЯТО ПРИ ПЕРЕГРУЗКЕ — информирует вызывающего абонента об отказе в обслуживании из-за отсутствия свободных соединительных линий или станционных приборов:

tone_занято_при_перегрузке_mini

Частота, Гц: 425 , сигнал — 200 мс, пауза — 200 мс;


УКАЗАТЕЛЬНЫЙ СИГНАЛ — информирует абонента о невозможности установления соединения из-за устойчивой причины:

tone_указательный_сигнал_mini

Частота, Гц: 950, 1400, 1800; сигнал = 3 частоты подряд в заданой последовательности (каждая по 330 мс) = 1 с, пауза 1 с


СИГНАЛ ВМЕШАТЕЛЬСТВА — информирует абонентов, участвующих в разговоре, о подключении оператора или третьего абонента:

tone_сигнал_вмешательства_mini

Частота, Гц: 425 , 2 посылки сигнала: сигнал — 250 мс, пауза — 250 мс;


СИГНАЛ УВЕДОМЛЕНИЯ — информирует абонента, занятого в разговоре, о поступлении ему нового вызова:

tone_сигнал_уведомления_mini

Частота, Гц: 425 , сигнал — 200 мс, пауза — 5 с;


КОНТРОЛЬ ПОСЫЛКИ СИГНАЛА УВЕДОМЛЕНИЯ (ОЖИДАНИЕ) — информирует вызывающего абонента о посылке вызываемому абоненту сигнала уведомления:

tone_контроль_посылки_сигнала_уведомления_mini

Частота, Гц: 425 , сигнал — 200 мс, пауза — 5 с;


ПРЕДУПРЕДИТЕЛЬНЫЙ СИГНАЛ — информирует абонента об окончании оплаченого периода при связи с местного таксофона:

tone_предупредительный_сигнал_mini

Частота, Гц: 1400 , 2 посылки сигнала: сигнал — 1 с, пауза — 1 с;


СИГНАЛ ПРЕДУПРЕЖДЕНИЯ О ЗАПИСИ — информирует абонента о том, что разговор записывается:

tone_сигнал_предупреждения_о_записи_mini

Частота, Гц: 1400 , сигнал — 400 мс, пауза — 15 с;


СИГНАЛ НЕПОЛНОГО СБОРА — информирует абонентов, участвующих в конференц-связи, о неполном сборе:

tone_сигнал_неполного_сбора_mini

Частота, Гц: 425 , сигнал — 300 мс, одиночная посылка;


СИГНАЛ ОТКЛЮЧЕНИЯ УЧАСНИКА КОНФЕРЕНЦ-СВЯЗИ — информирует абонентов, участвующих в конференц-связи, об отключении одного из участников разговора:

tone_сигнал_отключения_участника_конференции_mini

Частота, Гц: 425 , сигнал — 300 мс, одиночная посылка;


Характеристики сигналов были подобраны согласно действующему стандарту на територии Украины — ГОСТ 28384-89.

Скачать  ГОСТ 28384-89