Wikipedia · einfach zusammengefasst · Stand
Real-Time Streaming Protocol
Das Real-Time Streaming Protocol (RTSP) ist ein Netzwerkprotokoll zur Steuerung der kontinuierlichen Übertragung von audiovisuellen Daten (Streams) oder …
Inhalt4 Abschnitte
Grundidee und Einordnung
Das Real-Time Streaming Protocol (RTSP) ist ein textbasiertes Netzwerkprotokoll zur Steuerung der kontinuierlichen Übertragung audiovisueller Datenströme (Streams) oder von Software über IP-basierte Netzwerke. Es steuert die Sitzung, auch Session genannt, zwischen Empfänger und Server. Sein Aufbau und Verhalten ähneln HTTP.
RTSP gehört zur Anwendungsschicht des TCP/IP-Protokollstapels. Die Kommunikation erfolgt standardmäßig über Port 554, alternativ auch über Port 8554. Als Transportprotokoll kann UDP oder TCP verwendet werden; darunter arbeitet IP in der Version IPv4 oder IPv6. Die Internet Engineering Task Force (IETF) entwickelte RTSP und standardisierte es 1998 im RFC 2326.
Steuerung und Datenübertragung
RTSP überträgt normalerweise nicht die eigentlichen Nutzdaten. Seine Hauptaufgabe besteht darin, Datenströme zu steuern, weshalb es gelegentlich als „Netzwerk-Fernbedienung“ bezeichnet wird. Zur Echtzeitübertragung der Daten wird in der Praxis meistens das Real-Time Transport Protocol (RTP, RFC 3550) eingesetzt; RTSP selbst ist jedoch nicht an ein bestimmtes Übertragungsprotokoll gebunden. Die Steuerung der Übertragung erfolgt durch das RealTime Control Protocol (RTCP).
Für multimediale Datenströme erfüllt RTSP eine ähnliche Aufgabe wie HTTP für HTML-Dokumente. Anders als HTTP arbeitet RTSP zustandsbehaftet: Das Protokoll berücksichtigt den Zustand einer laufenden Sitzung. Außerdem ist es bidirektional, sodass sowohl der Client als auch der Server Anfragen senden können. Wie bei HTTP werden Nachrichten in Request und Response aufgeteilt. Ein Request dient etwa dem Initialisieren einer Sitzung; eine Response beantwortet eine Anfrage durch eine Statusmeldung.
Typischerweise richtet SETUP den Mechanismus für einen kontinuierlichen Media-Stream ein. PLAY startet die Wiedergabe, RECORD eine Aufzeichnung und TEARDOWN beendet den Stream.
Multimediale Präsentationen und Anwendungen
Die Bestandteile einer multimedialen Präsentation werden mit der Markup-Sprache Synchronized Multimedia Integration Language (SMIL) definiert, zusammengeführt und zeitlich synchronisiert. SMIL 1.0 existiert seit 1997, SMIL 2.0 seit 2001.
Zu den RTSP-fähigen Streaming-Servern gehören der Helix Server und der seit 1999 verfügbare QuickTime Streaming Server. Freie Implementierungen sind der unter GPL oder LGPL verfügbare ffserver des FFmpeg-Projekts, dessen Weiterentwicklung innerhalb des Projekts eingestellt wurde, sowie LIVE555, das in VLC verwendet wird.
Microsoft nutzt RTSP seit der Übernahme von Softricity Inc. außerdem im Software-Verteilungssystem App-V, das früher SoftGrid hieß. Anwendungen werden dabei vom Server zum Client übertragen. Der Client kann die Software möglichst früh verwenden, obwohl sie noch nicht vollständig heruntergeladen wurde.
Zentrale Begriffe
• Aggregate Control: Gemeinsame Steuerung mehrerer Streams über eine Zeitachse des Media-Servers. Der Client kann beispielsweise einen einzigen Befehl für Audio- und Videosignale senden.
• Conference oder Konferenz: Eine Mehrplatz-Multimedia-Präsentation mit mindestens zwei Teilnehmern. Teilnehmer können auch IT-Systeme sein.
• Client: Empfängt kontinuierlich Informationen vom Server.
• Connection: Eine Netzwerkverbindung zum Austausch von Informationen.
• Container File: Eine Datei, die Informationen für Media-Streams bereitstellt.
• Continuous Media: Audio- und Videosignale, die beim Client in derselben zeitlichen Reihenfolge abgespielt werden müssen. Das ist bei Echtzeitübertragungen besonders kritisch und beim Abspielen von Aufnahmen weniger problematisch.
• Entity: Die Summe der Transportinformationen, die zwischen Clients und Servern übertragen werden.
• Media Initialization: Angaben, die der Client zur korrekten Wiedergabe eines Media-Streams benötigt. Dazu gehören der Datentyp beziehungsweise Codec, beispielsweise H.264, sowie etwa Zeitangaben oder Farbsignale wie FBAS.
• Media Server: Ein Server, der einen oder mehrere Media-Streams bereitstellt. Mehrere Streams können zu einer Präsentation zusammengefasst werden. Der Media-Server kann auf einem Webserver oder einem Backend-Server laufen.
• Media Server Indirection: Weiterleitung („Redirection“) eines Clients zu einem anderen Media-Server.
• Media Stream: Eine einzelne Ausprägung eines Datenstroms, beispielsweise ein Audio- oder Video-Stream. Auch virtuelle Zusammenarbeit über ein Whiteboard oder eine Anwendung kann einen Stream bilden.
• Message: Ein Befehl zum Aufbau einer Verbindung.
• Participant oder Teilnehmer: Beteiligter einer Konferenz. Auch ein IT-System wie ein Media Recorder oder Videoproxy kann Teilnehmer sein.