RTPBreak es una aplicación que detecta, reconstruye y analiza cualquier trama RTP.

La principal ventaja de esta aplicación es que no requiere de la presencia de paquetes RTCP y es totalmente independiente del protocolo de señalización utilizado (SIP, H.323, SCCP, …). La entrada es una secuencia de paquetes, la salida es un conjunto de archivos que puedes utilizar como entrada para otras aplicaciones como Wireshark, sox, grep, awk, cut, sed, etc.

Un ejemplo de esta aplicación:

xenion@gollum:~/dev/rtpbreak-1.3$ sudo src/rtpbreak -i wifi0 \
-g -m -d logz

+ rtpbreak v1.3 running here!
+ pid: 3580, date/time: 19/02/2008#09:49:21
+ Configuration

+ INPUT
Packet source: iface 'wifi0'
Force datalink header length: disabled

+ OUTPUT
Output directory: 'logz'
RTP raw dumps: enabled
RTP pcap dumps: enabled
Fill gaps: enabled
Dump noise: disabled
Logfile: 'logz/rtp.0.txt'
Logging to stdout: enabled
Logging to syslog: disabled
Be verbose: disabled

+ SELECT
Sniff packets in promisc mode: enabled
Add pcap filter: disabled
Expecting even destination UDP port: disabled
Expecting unprivileged source/destination UDP ports: disabled
Expecting RTP payload type: any
Expecting RTP payload length: any
Packet timeout: 10.00 seconds
Pattern timeout: 0.25 seconds
Pattern packets: 5

+ EXECUTION
Running as user/group: root/root
Running daemonized: disabled
* You can dump stats sending me a SIGUSR2 signal
* Reading packets...
! [rtp0] detected: pt=0(g711U) 192.168.0.30:2072 => 192.168.0.20:2074
! [rtp1] detected: pt=0(g711U) 192.168.0.20:2074 => 192.168.0.30:2072
* [rtp1] probable reverse RTP stream: [rtp0]
+ Status
Alive RTP Sessions: 2
Closed RTP Sessions: 0
Detected RTP Sessions: 2
Flushed RTP packets: 3358
Lost RTP packets: 122 (3.51%)
Noise (false positive) packets: 0
+ [rtp1] stats: packets inbuffer=262 flushed=1673 lost=61(3.52%),

call_length=1m2s
+ [rtp0] stats: packets inbuffer=270 flushed=1685 lost=61(3.49%),

call_length=1m2s
* [rtp1] closed: packets inbuffer=0 flushed=2800 lost=115(3.95%),

call_length=1m28s
* [rtp0] closed: packets inbuffer=0 flushed=2819 lost=106(3.62%),

call_length=1m28s
--
Caught SIGINT signal (2), cleaning up...
--

+ Status
Alive RTP Sessions: 0
Closed RTP Sessions: 2
Detected RTP Sessions: 2
Flushed RTP packets: 5619
Lost RTP packets: 221 (3.78%)
Noise (false positive) packets: 0
+ No active RTP streamxenion@gollum:~/dev/rtpbreak-1.3$

Como podeis comprobar, es una herramienta muy potente y muy interesante para monitorización y sobre todo para ayudar a localizar quién o qué está ocasionando problemas. 🙂

Enlace: http://xenion.antifork.org/rtpbreak/doc/rtpbreak_en.html

Archivos

© 2014 Sinologic, inc. All rights reserved.

Menú

Redes sociales