Real-time Transport Protocol (RTP)

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Was ist RTP?

  • Das Real-time Transport Protocol (RTP) ist ein Protokoll, das für die Übertragung von Echtzeitdaten, wie zum Beispiel Sprach- oder Videostreams, über IP-Netzwerke entwickelt wurde.
  • Es bietet Mechanismen zur Verpackung und Übertragung von Mediendaten in Form von Paketen.

RTP - Realtime Transport Protocol

  • RTP (Realtime Transport Protocol) ähnelt TCP und UDP und ist ebenfalls ein Transportprotokoll
  • Entwickelt von der IETF (Internet Engineering Task Force)
  • Sorgt für den kontinuierlichen Datenfluss in Echtzeit, hauptsächlich für Audio- und Video-Daten
  • Je nach Codec sind 1 bis 20% Paketverlust tolerierbar
  • RTP gewährleistet jedoch nicht die Qualität der Übertragung (Quality of Service - QoS)

UDP und RTP

  • UDP selbst hat keine Funktionen zum Erkennen von Paketverlusten
  • RTP hingegen, aufgebaut auf UDP, ermöglicht dem Empfänger zumindest das Erkennen von Paketverlusten
  • Im Kontext von RTP sind Paketverluste bis zu einem bestimmten Grad akzeptabel

TCP im Vergleich zu RTP

  • Im Gegensatz zu TCP, wo jedes verlorene Paket erneut gesendet werden muss, handhabt RTP Paketverluste flexibler

Hier sind einige wichtige Merkmale und Funktionen des RTP-Protokolls

Paketisierung

  • RTP zerlegt die Audiodatenströme in kleine Pakete. Jedes Paket enthält eine Sequenznummer, Zeitstempel und eine Payload mit den eigentlichen Mediendaten.
  • Die Paketisierung ermöglicht eine effiziente Übertragung und Verarbeitung der Mediendaten.

Sequenznummer

  • Jedes RTP-Paket enthält eine Sequenznummer, die die Reihenfolge der Pakete im Strom angibt.
  • Dies ermöglicht die korrekte Rekonstruktion des Audiosignals beim Empfänger und hilft bei der Behandlung von Paketverlusten oder -reihenfolgeproblemen.

Zeitstempel

  • RTP enthält einen Zeitstempel, der die zeitliche Position der Mediendaten im Verhältnis zum Anfang des Datenstroms angibt.
  • Der Zeitstempel ermöglicht die Synchronisation der Wiedergabe bei Empfängerseite, um ein verzögerungsfreies und konsistentes Audioerlebnis sicherzustellen.

Payload-Typ

  • RTP ermöglicht die Verwendung verschiedener Payload-Typen, um verschiedene Arten von Mediendaten zu kennzeichnen.
  • Je nach Anwendung können verschiedene Codecs oder Medienformate verwendet werden, und der Payload-Typ identifiziert den verwendeten Codec und dessen Parameter.

Verzögerungskompensation

  • RTP kann verwendet werden, um die Verzögerung zwischen Sender und Empfänger zu messen und zu kompensieren.
  • Dies ist wichtig, um die Echtzeitübertragung von Sprache oder anderen Echtzeitdaten zu gewährleisten, bei der Verzögerungen zu Beeinträchtigungen der Kommunikation führen können.

Abschliessend

  • RTP hat selbst keine Fehlerkorrektur- oder Flusskontrollmechanismen.
  • Diese Aufgaben werden in der Regel vom RTCP (RTP Control Protocol) übernommen, das zusammen mit RTP verwendet wird.
  • RTCP ermöglicht die Überwachung und Kontrolle des RTP-Datenstroms, einschließlich Statistiken, Qualitätssicherung und Feedback-Mechanismen.

Einsatz

  • RTP wird in einer Vielzahl von Anwendungen eingesetzt, darunter Voice-over-IP (VoIP), Video-Streaming, Echtzeitkommunikation und andere Multimedia-Anwendungen, bei denen eine zuverlässige Übertragung von Echtzeitdaten erforderlich ist.