Структура сообщений |
|
SIP является текстовым протоколом, использующим набор символов ISO 10646 в кодировке UTF-8. Сообщение протокола SIP представляет собой либо запрос от клиента серверу, либо ответ сервера клиенту. Запросы и ответы используют одинаковый базовый формат сообщения и различаются наборами символов и синтаксисом. Сообщение того и другого типа состоит из:
Стартовая строка, каждая строка поля заголовка и пустая строка должны быть завершены символами возврата каретки CRLF. Пустая строка должна существовать независимо оттого, присутствует тело сообщения или нет. Стартовая строка представляет собой начальную строку любого SIP-сообщения. Если сообщение является запросом, в этой строке указывается тип запроса, адресат и номер версии протокола. Если сообщение является ответом на запрос, в стартовой строке указывается номер версии протокола, тип ответа и его короткая расшифровка, предназначенная только для пользователя. Заголовки сообщений служат для передачи информации об отправителе, адресате, пути следования и других сведений, т.е. переносят необходимую для обслуживания данного сообщения информацию. О типе заголовка можно узнать из его имени. За исключением различий в наборе символов, многие SIP-сообщения и синтаксис полей заголовков схожи с используемыми в НТТР/1.1, хотя SIP и не является расширением HTTP. Сообщения протокола SIP могут содержать так называемое тело сообщения. В запросах АСК, INVITE и OPTIONS тело сообщения содержит описание сеансов связи, например, в формате протокола SDP, а запрос BYE, например, тело сообщения не предусматривает. |

