RTCP (RTP Control Protocol) ist das Steuerprotokoll, das zusammen mit dem Echtzeit-Transportprotokoll RTP in RFC 3550 definiert ist. Während RTP die eigentlichen Medienpakete überträgt, liefert RTCP periodisch Kontrollinformationen über die Qualität der Übertragung — quasi der Beifahrer, der während der Fahrt die Instrumente abliest.
Aufgaben von RTCP
- Qualitätsrückmeldung: Sender- und Empfängerberichte (Sender Reports SR, Receiver Reports RR) enthalten Paketverlust, Jitter und Laufzeit-Informationen — die Grundlage, um Latenz- und Qualitätsprobleme zu erkennen.
- Synchronisation: RTCP-Zeitstempel verknüpfen Audio- und Videospur über eine gemeinsame Uhr (Lip-Sync).
- Teilnehmeridentifikation: SDES-Pakete übertragen Name, E-Mail oder Quelle (CNAME) der Teilnehmer.
- Sitzungskontrolle: BYE-Pakete melden das Verlassen einer Sitzung, APP-Pakete transportieren anwendungsspezifische Daten.
Bandbreiten-Disziplin
RTCP darf nur einen kleinen Teil der Sitzungsbandbreite nutzen — typischerweise rund 5 Prozent. Dazu passen die Teilnehmer ihre Berichtsintervalle dynamisch an: Je mehr Teilnehmer eine Sitzung hat, desto seltener sendet jeder Einzelne seinen Bericht. Bei sehr großen Empfängergruppen gibt es die reduzierte Variante RTCP-Reduced-Size, die fast nur noch Empfängerberichte sendet.
Praxis
- Ports: RTCP läuft typischerweise auf dem nächsthöheren Port als RTP (z. B. RTP 5004, RTCP 5005).
- Sicherheit: Die verschlüsselte Variante heißt SRTCP und wird mit SRTP zusammen verwendet.
- Rolle in WebRTC: Auch WebRTC-Verbindungen nutzen RTCP — die Browser-API macht die Statistiken über
getStats()zugänglich, etwa um Paketverlust zu messen.