
- •Лабораторная работа №6.1 SipTester: Основы протокола sip
- •Лабораторная работа №6.2 Изучение кодеков телефонии
- •Дайте определение каждому показателю в таблице.
- •Лабораторная работа №6.3 Изучение протоколов udp и tcp
- •Лабораторная работа №6.4 Тестирование протоколов ip-телефонии
- •Лабораторная работа №6.5 Безопасность ip-телефонии
МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,
СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ
УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»
(СПбГУТ)
Факультет Инфокоммуникационных сетей и систем
Кафедра Защищенных систем связи
Дисциплина Безопасность IP-телефонии
ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №6
Направление/специальность подготовки
10.03.01 Информационная безопасность
(код и наименование направления/специальности)
Выполнили:
Травкина Е.А., ИКБ-14 ___________
(Ф.И.О., № группы) (подпись)
Федченко А.С., ИКБ-14 ___________
(Ф.И.О., № группы) (подпись)
Ящук А.А., ИКБ-14 ___________
(Ф.И.О., № группы) (подпись)
Преподаватель:
Ст. преп. Поляничева А.В.
(должность, Ф.И.О.) (подпись)
Лабораторная работа №6.1 SipTester: Основы протокола sip
Цель работы: изучение основных характеристик протокола Session Initiation Protocol (SIP).
Задачи:
Изучить процедуру регистрации клиентов SIP.
Изучить структуру запросов протокола SIP.
Изучить сценарий установления сеанса связи.
Программное обеспечение: StarTrinity SIP Tester
Ход работы:
Создайте аккаунт клиента агента пользователя (см. Рис. 1).
Для этого необходимо заполнить поля user name, auth. User name, password, registrar host, registar port, transport. В качестве имени и пароля использовать «10019», где 19 – номер студента по журналу. В поле хост ввести локальный адрес компьютера. Чтобы узнать адрес необходимо в поле «Пуск» ввести «cmd», затем выбрать «Командная строка» и в открывшемся поле ввести команду «ipconfig/all». Скриншоты с адресом показать в отчете (см. Рис. 2).
В поле порт номер используемого порта (можно посмотреть в настройках брандмауэра для данного приложения). Для студентов, с четным порядковым номером по журналу выбрать транспортный протокол UDP, с нечетным – TCP. Для второго клиента использовать номер 10019+1.
Рис. 1. Создание клиента
Рис. 2. Ipconfig компьютера
Убедитесь, что автоматически создался сервер, на котором зарегистрированы клиенты (В окне Reg.(UAS ) должны появится строки с данными зарегистрированных пользователей) (см. Рис. 3).
Рис. 3. Создание сервера
Просмотрите и изучите трейс регистрации клиента на сервере (Reg.(UAC)
таблица данных клиентов 5-й столбец «trace») (см. Рис. 4).
Рис. 4. Трейс регистрации клиента 10019
Какие заголовки содержат сообщения SIP?
REGISTER. Когда клиент хочет зарегистрироваться на сервере, он отправляет запрос REGISTER, который содержит информацию о его идентификации (например, SIP URI) и параметрах регистрации (например, время жизни регистрации).
OK. После получения запроса REGISTER сервер обрабатывает его и возвращает ответ OK, если регистрация прошла успешно. Этот ответ также содержит информацию, такую как время жизни регистрации и дополнительные параметры, которые сервер может отправить клиенту.
Перейдите в окно настройки входящих вызовов. Замените значение в поле порт согласно исходным данным (см. Рис. 5). После этого потребуется перезагрузить приложение.
Рис. 5. Изменение значения порта входящих вызовов
Перейдите в окно настройки исходящих вызовов. Введите необходимые параметры VoIP (см. Рис. 6):
Фиксированный интервал между звонками - 300 мс.
Лимит входящих и исходящих одновременных вызовов – 2.
Для совершения звонков использовать настройки регистрации UAC.
Используемые кодеки - G.711, G.729, G.723.
Выбор тайм-аута перед тайм-аутом перед и после ответа – 30мс.
Рис. 6. Параметры VoIP
Совершите тестовые звонки, нажатием кнопки create singl call. В поле СDR должны отобразиться основные данные о звонках (см. рис. 7).
Рис. 7. Тестовые звонки
Перейдите в окно настройки исходящих вызовов. Введите необходимые параметры VoIP (см. Рис. 8):
Задержка – 3мс.
Вероятность отклонения вызова – 0,5.
Используемые кодеки - G.711, G.729, G.723.
Рис. 8. Настройка входящих звонков
Сгенерируйте поток вызовов с помощью кнопки start. Через некоторое время остановите генерацию. В окне CDR будут отображаться звонки (см. Рис. 9).
Рис. 9. Поток вызовов
В поле статус разъединения вызова отображены разные сообщения sip. Рассмотрите трейсы для каждого сообщения окончания вызова и проанализируйте их (см. Рис. 10, 11, 12, 13, 14).
Рис. 10. SIP для OK 200
Рис. 11. SIP для Busy Here
Рис. 12. SIP для Service Unavailable
Рис. 13. SIP для No Response
Рис. 14. SIP для Request Terminated
Какие заголовки содержат сообщения SIP?
INVITE. Этот заголовок присутствует в SIP-запросах типа INVITE и указывает на метод запроса.
Busy Here (486 Busy Here). Этот код состояния указывает, что вызываемый абонент занят и не может принять вызов. Это может быть возвращено в ответ на запрос INVITE.
Service Unavailable (503 Service Unavailable). Этот код состояния указывает, что сервер не может обработать запрос из-за временной недоступности или из-за перегрузки. Это может быть возвращено в ответ на запрос INVITE.
No Response (408 Request Timeout). Этот код состояния указывает, что вызываемый абонент не ответил в течение определенного времени. Это может быть возвращено в ответ на запрос INVITE.
Request Terminated (487 Request Terminated). Этот код состояния указывает, что запрос был отменен до его завершения. Это может произойти, например, если вызывающий абонент прекратил вызов до того, как вызываемый абонент ответил.
Рассмотрите структуру сообщения INVITE (см. Рис. 15).
Рис. 15. Сообщение INVITE
Назовите поля сообщения.
Via. Идентифицирует маршрут, по которому SIP-сообщение было отправлено. Может содержать информацию о протоколе, IP-адресе и порте отправителя.
From. Идентифицирует отправителя SIP-сообщения. Обычно содержит SIP URI отправителя, а также возможно его отображаемое имя.
To. Идентифицирует получателя SIP-сообщения. Также содержит SIP URI получателя и отображаемое имя.
Call-ID. Уникальный идентификатор сеанса связи, который используется для связывания различных запросов и ответов в рамках одного сеанса.
CSeq. Последовательный номер запроса в рамках сеанса связи. Он указывает на порядок запросов и ответов внутри сеанса.
Contact. Информация о местонахождении отправителя SIP-сообщения. Это может быть SIP URI, IP-адрес и порт, по которым можно связаться с отправителем.
Max-Forwards. Определяет максимальное количество промежуточных узлов, которые могут переслать SIP-сообщение. Значение уменьшается с каждым пересылкой.
Content-Type. Тип содержимого SIP-сообщения, например, application/sdp для SDP (Session Description Protocol).
Content-Length. Длина содержимого SIP-сообщения в байтах. Это поле используется для указания размера тела сообщения.
Рассмотрите структуру других сообщений SIP (см. Рис. 16).
Рис. 16. Сообщение BYE
У некоторых сообщений отсутствует некоторая часть. Что это за часть? У каких сообщений и запросов она отсутствует? Почему?
Некоторые поля в SIP сообщениях являются необязательными в зависимости от контекста или сценария использования. В некоторых случаях определенные поля могут быть опущены, если они не несут информации, которая была бы полезна или необходима для конкретного запроса или ответа. Настройки сервера или клиента могут быть сконфигурированы таким образом, чтобы определять, какие поля включать или исключать из SIP сообщений. В некоторых случаях определенные поля могут быть опущены из соображений безопасности или конфиденциальности.
Изучите полный сценарий установления сеанса связи SIP (см. Рис. 17).
Рис. 17. Сценарий сеанса вызова
К какому варианту установления соединения относится вызов? Какие способы установления сеанса связи вы знаете?
1. Инициирование вызова (Call Initiation). Этот способ предполагает, что одна сторона инициирует установление связи, отправляя запрос на соединение другой стороне.
2. Прием вызова (Call Acceptance). В этом случае одна сторона инициирует соединение, а другая сторона принимает вызов, отвечая на него.
3. Запрос на установление сеанса (Session Establishment Request). Этот способ предполагает, что одна сторона отправляет запрос на установление сеанса связи другой стороне, но сама не инициирует соединение.
4. Автоматическое установление сеанса (Automatic Session Establishment). Этот способ предполагает автоматическое установление связи без явного взаимодействия пользователя.
Контрольные вопросы:
1. Что такое SIP и как он используется в IP-сетях?
SIP (Session Initiation Protocol) - это протокол установки и управления сеансами связи в IP-сетях. Он используется для инициирования, изменения и завершения голосовых, видео- и мультимедийных сеансов связи через Интернет. SIP позволяет абонентам устанавливать и поддерживать связь независимо от типа устройства или сети, в которой они находятся.
2. Как SIP управляет установкой и завершением сеансов связи?
SIP управляет установкой и завершением сеансов связи путем обмена SIP-сообщениями между клиентскими и серверными устройствами. Для установления сеанса связи клиент отправляет запрос INVITE на сервер, который затем передает запрос вызываемому абоненту. После этого абонент может принять вызов, отправив ответ 200 OK, или отклонить вызов, отправив другой код состояния. Завершение сеанса связи происходит путем отправки сообщения BYE или после истечения времени сеанса.
3. Какие типы сообщений используются в протоколе SIP?
В протоколе SIP используются различные типы сообщений, включая INVITE (запрос на установление сеанса связи), ACK (подтверждение получения INVITE), BYE (завершение сеанса связи), OPTIONS (запрос на определение возможностей сервера) и т. д.
4. Какова структура сообщения SIP?
Структура SIP-сообщения состоит из трех основных элементов: стартовой строки, заголовков и необязательного тела сообщения. Стартовая строка содержит метод запроса или код состояния, URI и версию протокола. Заголовки содержат дополнительную информацию о сеансе связи, такую как SIP URI отправителя и получателя, Call-ID, CSeq и другие параметры. Тело сообщения, если присутствует, содержит данные, связанные с сеансом связи, например, SDP для описания параметров сеанса.
5. Какова процедура регистрации клиентов в случае сценария установления соединения с участием сервера регистрации?
В сценарии установления соединения с участием сервера регистрации клиент отправляет запрос REGISTER на сервер регистрации, содержащий SIP URI клиента и дополнительные параметры. Сервер регистрации сохраняет информацию о клиенте и его местоположении. При последующих запросах сервер использует эту информацию для перенаправления вызовов на клиента.
6. Какие протоколы установления сеанса связи вы знаете? В чем состоит преимущество протокола SIP?
Кроме SIP, существуют и другие протоколы установления сеанса связи, такие как H.323, MGCP и WebRTC. Преимущество SIP заключается в его гибкости, расширяемости и возможности работы в различных сетевых средах. SIP также обеспечивает простоту в реализации и интеграции с другими технологиями, что делает его популярным протоколом для VoIP и мультимедийных коммуникаций.