RTP y RTCP: Qué son, diferencias y configuración en Asterisk.
Las llamadas VoIP y las videollamadas que usamos a diario dependen de dos protocolos fundamentales: RTP (Real-time Transport Protocol) y RTCP (RTP Control Protocol). Ambos trabajan en conjunto para que la voz y el video lleguen a tiempo, con buena calidad y de forma confiable.
En este artículo descubrirás qué son, para qué sirven, cómo se diferencian y cómo configurarlos en Asterisk y FreeSWITCH.
¿Qué es RTP y para qué sirve?
RTP es el protocolo encargado de transportar datos en tiempo real como voz, video o música en streaming.
Sus funciones clave son:
- Transportar voz y video en llamadas VoIP y conferencias.
- Mantener el orden de los paquetes mediante un número de secuencia.
- Indicar el momento exacto de reproducción con un timestamp.
- Especificar el códec utilizado (G.711, Opus, H.264, etc.).
👉 Ejemplo: En una llamada de, cada 20 ms de tu voz se envía en paquetes RTP. Si un paquete se pierde, la app usa algoritmos de “reconstrucción de voz” para evitar silencios. A continuación tenemos el ejemplo de una traza RTP.

Real-time Transport Protocol
10.. .... = Versión: 2
..0. .... = Padding: False
...0 .... = Extension: False
.... 0000 = CSRC count: 0
Marker: 0
Payload type: PCMU (G.711 mu-law) (0)
Sequence number: 23541
Timestamp: 384000
Synchronization Source identifier (SSRC): 0x1234abcd
Payload: (160 bytes de audio codificado)
Ahora, expliquemos cada campo para poder tener un claro panorama del protocolo RTP. Te recomiendo analizarlos unos minutos para mejor comprensión.
- Versión (V) → Aquí es 2, que es la más usada actualmente.
- Padding (P) → 0 indica que no hay relleno.
- Extension (X) → 0, no hay cabecera extendida.
- CSRC Count (CC) → 0, no hay fuentes contribuyentes adicionales (llamada 1:1 típica).
- Marker (M) → 0, no hay evento especial (ejemplo: inicio de un tono DTMF).
- Payload Type (PT) → 0, lo que corresponde al códec G.711 μ-law (PCMU).
- Sequence Number → 23541, usado para detectar pérdidas y reordenar paquetes.
- Timestamp → 384000, usado para mantener el orden temporal de la reproducción de audio.
- SSRC (Synchronization Source) → 0x1234abcd, identificador único del flujo RTP en esta sesión.
- Payload → Contiene los datos de voz codificados (160 muestras de audio en este caso).
¿Qué es RTCP y cuál es su función?
RTCP no transporta la voz o video en sí, sino que se encarga de monitorear y controlar la calidad de la comunicación.
Algunas de sus funciones más importantes son:
- Identificación de participantes (CNAME).
- Reportes de calidad: pérdida de paquetes, jitter, retardo.
- Mensajes de salida (BYE) para indicar que un usuario dejó la sesión.
- RTCP XR (Extended Reports): métricas avanzadas para evaluar calidad VoIP (MOS, eco, ruido, jitter buffer).
👉 Ejemplo: En una videollamada, RTCP puede detectar alto jitter y enviar esa información al servidor para que ajuste el buffer y estabilice la comunicación. Este es el ejemplo de una traza RTCP.
Real-time Transport Control Protocol (Sender Report)
Version: 2
Padding: False
Reception report count: 1
Packet type: Sender Report (200)
Length: 52 bytes
SSRC: 0x1234abcd (Identificador de la fuente de sincronización)
Sender Report (SR):
NTP timestamp: 396459.1234 (sincronización con reloj de referencia)
RTP timestamp: 384160
Sender's packet count: 1280
Sender's octet count: 204800
Report Block:
SSRC del emisor reportado: 0x5678efgh
Fracción de pérdida de paquetes: 0.02 (2%)
Paquetes perdidos acumulados: 25
Último número de secuencia extendido: 23565
Jitter inter-arrival: 12 ms
Último SR recibido (LSR): 0x2345abcd
Retardo desde el último SR (DLSR): 40 ms
Diferencias entre RTP y RTCP
Ambos protocolos trabajan de la mano. A pesar de que tienen diferentes propósitos, deben trabajar en la misma sesión. La siguiente tabla simplemente para comprenderlos mejor.
Característica | RTP 📡 | RTCP 📊 |
---|---|---|
Función principal | Transportar voz y video en tiempo real | Monitorear la calidad de la sesión |
Qué transmite | Datos multimedia (payload) | Estadísticas y métricas |
Ejemplo en VoIP | Tu voz y video | Reporte de pérdida de paquetes y latencia |
Uso en conjunto | Obligatorio para llamadas y streaming de calidad | Complemento necesario de RTP |
Configuración RTP y RTCP en Asterisk
En Asterisk, RTP y RTCP se configuran en rtp.conf y sip.conf/pjsip.conf:
; /etc/asterisk/rtp.conf
[general]
rtpstart=10000
rtpend=20000
rtcpinterval=5000
Conclusión
- RTP es el protocolo que transporta tu voz y video en tiempo real.
- RTCP mide la calidad de esa transmisión y ayuda a mejorar la experiencia.
- Ambos son esenciales en VoIP, videollamadas y streaming.