Как отделить RTP-пакеты от остальных - PullRequest
4 голосов
/ 12 декабря 2011

Я получил файл pcap с VoIP-разговором, как я могу отделить RTP-пакеты от других пакетов?

Я могу получить sip-пакеты, но не могу отличить RTP-пакеты от остальных.

Ответы [ 4 ]

1 голос
/ 12 декабря 2011

Если вы хотите увидеть трафик RTP в Wireshark, то:

  1. Выберите Анализ-> Показать фильтры ...
  2. Выберите «UDP», OK
  3. Щелкните правой кнопкой мыши по любому пакету UDP и выберите «Декодировать как ...»
  4. Выберите «RTP» из списка, OK
  5. Теперь вы можете видеть все RTP-пакеты.

Надеюсь, это поможет. :)

p.s. отредактировано, чтобы отметить, что это для Wireshark. Спасибо комментатору за указание на это!

1 голос
/ 12 декабря 2011

Проверьте рекомендацию @macs о фильтре PCap.Если это не может удовлетворить ваши потребности (например, вам нужно отфильтровать RTP-пакеты определенного сеанса SIP), простого способа нет.Вам необходимо проанализировать SIP-сообщения, получить номера портов RTP, принять пакеты, идущие в / из этих портов в определенный период времени, и (необязательно) проверить, являются ли эти пакеты RTP, проверив их заголовки (magic number в заголовках)

1 голос
/ 12 декабря 2011

Поиск заголовков RTP, как определено в RFC3550 в вашем файле. Или лучше использовать pcap-фильтр, например, с this wiki (ищите «Q: Что такое хороший фильтр для простого захвата пакетов SIP и RTP?»).

0 голосов
/ 18 января 2012

Программное обеспечение с открытым исходным кодом, которое извлекает пакеты RTP / RTCP из файла pcap:

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

Я могу получить sip-пакеты, но не могу различить RTP-пакеты от остальных.

Если вы можете декодировать SIP, то вы можете найти (внутри сообщения INVITE) сообщение SDP. Если вы декодируете его, вы можете найти IP и ПОРТ RTP «потока» (и RTCP => порт + 1). С помощью этой информации вы можете однозначно идентифицировать пакеты RTP и RTCP. Имейте в виду, что часто существуют пакеты (с одним и тем же IP-портом) с протоколом STUN, которые должны быть отделены от RTP. Вы должны рассмотреть, где находится захват пакета (сетевой контекст и ограничения), вы можете принять во внимание NAT.

...