artem
12.11.2018
6016

Wireshark — анализ RTP трафика. Тишина в RTP канале.

Wireshark — анализ RTP трафика. Тишина в RTP канале.

Пожалуй, нет более мощного средства для дебага проблем с RTP-трафиком, чем Wireshark. Если вы когда-либо сталкивались с проблемами типа: односторонняя слышимость, сетевые потери и так далее, то Вам будет полезна данная статья. В данной статье будет подробно рассмотрена одна из возможных проблемных ситуаций.

Содержание:

1.Тишина в RTP-канале.

2.Краткий бриф.

3.Анализ дампа.

4.Подведение итогов.

1.Тишина в RTP-канале.

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

2.Краткий бриф.

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

3.Анализ дампа.

1.Открываем дамп.

Дамп в раскрытом виде.

Если Вас интересует как отлавливать трафик в Wireshark в реальном времени, ознакомьтесь со статьёй на нашем сайте.

2.Идём в Telephony -> VoIP Calls.

Переход Telephony -> VoIP Calls.

После перехода мы увидим все вызовы, которые сохранены в данном дампе:

Просмотр пула звонков в дампе – VoIP Calls.

 
Если Вам необходимо получить конкретный вызов или же их пул, ознакомьтесь со статьёй на нашем сайте.

Как Вы уже заметили, в данном дампе всего 1 вызов, но нам больше и не нужно, почему – поймёте дальше. С виду, звонок выглядит корректно, но информации недостаточно, чтобы произвести оценку ситуации, мы, ведь, знаем, что проблема точно есть, посему будем копать глубже.

Снизу в центре необходимо нажать кнопку Flow Sequence (секвенция потока).

Начало анализа. Переход к проверке потоковой последовательности.

После перехода мы увидим следующую картину:

Анализ потоковой последовательности.

Судя по данной Call-Flow диаграмме, вызов так же выглядит корректным, потому что от начала до конца секвенции, мы наблюдаем всё то же самое, что и при любом другом корректном вызове: инвайт от провайдера, подтверждение со стороны нашего сервера (200 ОК), 2 потока RTP (к нам и от нас), завершение вызова (BYE) с нашей стороны (ведь, это оператор Call-центра трубку положил), ответ от оператора связи (200 ОК). Всё замечательно, но где же тогда проблема? Давайте копнём глубже.

Закроем Call-Flow. Ткнув на кнопку Play Streams, перейдём к прослушиванию потоков.
Переход к проигрыванию потоков.

 
Может возникнуть не очень приятная ситуация, если RTP зашифрован. В такой ситуации рекомендую ознакомиться со статьёй на нашем сайте.

Перейдя к окну прослушивания, увидим следующее:
Окно “Play Streams”.

Кажется, что всё сразу стало понятным, правда? Но не будем делать поспешных выводов и прослушаем вызов от начала и до конца. Для этого необходимо нажать Play на панели проигрывания, а так же выбрать устройство вывода звука (Output Device).

Меню проигрывания.

После прослушивания дампа становится понятно, что в канале клиента есть RTP пакеты, несущие в себе тишину. Теперь мы знаем, что проблема в голосовом потоке со стороны оператора связи, а не нашего сервера. Давайте в этом убедимся:

Отдельно выделенный клиентский поток.

Не путайте это понятие с не установленным соединением. Если бы клиентский поток не был бы установлен, то линия клиента бы вовсе не отобразилась. Т.е. тишина не является отсутствием RTP-пакетов.

Давайте проведём дополнительный сбор информации для вынесения окончательного вердикта. Продолжать сбор информации мы будем во вкладке Telephony -> RTP -> RTP Streams.

Переход в RTP Streams.

После перехода мы увидим следующее окно:

Окно RTP Streams.

Данное окно предназначено для вывода более детальной информации о голосовых потоках открытого дампа.

Теперь нам необходимо сравнить 2 потока как Forward и Reverse. Для этого выделяем вначале первый поток, затем второй, нажимаем Analyze.

Переход к глубокому анализу RTP-потоков.

Увидим следующий вывод:

Окно цепочек потоков RTP.

Здесь нас интересует конкретный блок вывода, в котором мы производим сравнение двух потоков:

Блок сравнения двух RTP-потоков.

Здесь и подтверждается наше предположение. Мы видим, что RTP пакеты присутствуют с обеих сторон. RTP Packets – количество RTP-пакетов. Expected – ожидаемое количество пакетов. Lost – потери пакетов в процентном и количественном соотношении. Фактически, потеря 0,12% пакетов со стороны оператора не могла повлиять на то, что в канале клиента не осталось ничего, кроме тишины.

4.Подведение итогов.

Таким образом, мы получаем, что тишина образовалась в канале клиента из-за проблем на стороне оператора связи. Для выяснения данного вопроса необходимо направить этот дамп оператору связи, что я и сделал. Надеюсь, данная статья поможет Вам быть ближе к пониманию процесса траблшутинга на своей виртуальной IP-АТС.

avatar
  Подписаться  
Уведомление о

Остались вопросы?

Я - Виталий Шелест, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование

ближайшие курсы

ближайшие Вебинары

ONLINE

10 доводов в пользу Asterisk

Распространяется бесплатно.

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

Безопасен в использовании.

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

Надежен в эксплуатации.

Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.

Гибкий в настройке.

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

Имеет огромный функционал.

Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.

Интегрируется с любыми системами.

То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.

Позволяет телефонизировать офис за считанные часы.

В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.

Отличная масштабируемость.

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

Повышает управляемость бизнеса.

Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.

Снижает расходы на связь.

Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.