Zum Inhalt springen

Session Description Protocol

aus Wikipedia, der freien Enzyklopädie
SDP (Session Description Protocol)
Familie: Internetprotokollfamilie
Einsatzgebiet: Beschreibung von Multimedia-Sitzungen im Rahmen der Aushandlung von Medienformaten
SDP im TCP/IP-Protokollstapel:
Anwendung SDP
Transport TCP
Internet IP (IPv4, IPv6)
Netzzugang Ethernet Token
Bus
Token
Ring
FDDI
Standards: RFC 8866 (2021)[1]

Mit dem Session Description Protocol (SDP, RFC 8866;[1] deutsch: „Sitzungsbeschreibungsprotokoll“) werden Eigenschaften von Multimediadatenströmen beschrieben. Es dient dazu, Kommunikationssitzungen zu verwalten und wird z. B. zusammen mit SIP in der IP-Telefonie eingesetzt bei der Aushandlung von Codecs, Transportprotokollen und -adressen sowie zur Übertragung von Metadaten. SDP selbst bietet keinen eigenen Aushandlungsmechanismus, sondern nur eine Beschreibung der Datenströme (streams). Datensätze im SDP-Format können mit verschiedenen Transportprotokollen übertragen werden, z. B. auch mit dem Session Announcement Protocol (SAP, RFC 2974[2]).

SDP wurde als Standardprotokoll für die Medienaushandlung beim Aufbau von SIP-Verbindungen definiert.[3]

SDP-Inhalte bestehen aus mehreren Parametern, die in einfacher Syntax (<Parametertyp>=<Parameterwert>) untereinander stehend angegeben werden.[4]

Sitzungsbeschreibung

[Bearbeiten | Quelltext bearbeiten]
  • v = Protokollversion (aktuelle Versionsnummer ist "0"[4])
  • o = Ersteller der Session und Session-Identifizierung
  • s = Name der Session
ab hier optional:
  • i = zusätzliche Session-Informationen
  • u = URI, der auf zusätzliche Informationen zur Session verweist
  • e = E-Mail-Adresse
  • p = Telefonnummer
  • c = Verbindungsinformation (wird nicht benötigt, wenn bei allen Medien angegeben)
  • b = Information über die Datenübertragungsrate
  • eine oder mehrere Zeitbeschreibungen (s. u., verpflichtend)
  • z = Zeitzonenanpassungen
  • k = Verschlüsselungsschlüssel (encryption key)
  • a = Session-Attribute
  • keine, eine oder mehrere Medienbeschreibungen (s. u.)

Zeitbeschreibungen

[Bearbeiten | Quelltext bearbeiten]
  • t = Zeit, in der die Session aktiv ist
  • r = keine oder mehr Wiederholungen (optional)

Medienbeschreibung

[Bearbeiten | Quelltext bearbeiten]
  • m = Medientyp, Port und Protokoll für den Medientransport sowie die Medienformate
ab hier optional:
  • i = Titel des Mediums
  • c = Verbindungsinformationen, wenn diese nicht in der Session definiert sind (s. o.)
  • b = Informationen zur Datenübertragungsrate
  • k = Verschlüsselungsschlüssel (encryption key)
  • a = Medienattribute.

Anhand eines beispielhaften SDP-Teils einer SIP-Verbindungsnachricht werden die wesentlichen SDP-Parameter erläutert:

v=0
o=Alice 1234 1234 IN IP4 host.provider1.com
s=Video von 987654
c=IN IP4 host.provider2.com
t=0 0
m=audio 20000 RTP/AVP 97
a=rtpmap:97 iLBC/8000
a=fmtp:97 mode=30
m=video 20002 RTP/AVP 31
a=rtpmap:31 H261/90000

Sitzungsinitiator "Alice" bietet dem Empfänger von "host.provider2.com" ausgehend die Sitzungsnummer 1234 an (erste Zahl); die zweite Zahl (auch 1234) ist die Sitzungsversionsnummer, die sich bei jeder Änderung während der Sitzung erhöht. Die Sitzung soll zwei Datenströme (m=) übertragen, die beide mit dem Transportprotokoll RTP versendet werden:

  • der eine Datenstrom ist ein Audiostrom im Format iLBC (97) an Port 20000
  • der andere ein Videodatenstrom im Format H.261 (31) an Port 20002.

Die Attribute (a=) der jeweiligen Datenströme beschreiben Formatparameter, der mit der Nummer 97 hat den Namen iLBC und eine Abtastrate von 8 kHz.

RFC 4317 enthält mehrere ausführliche Beispiele, wie eine Medienaushandlung mittels SDP aussehen könnte.[5]

  • Ulrich Trick, Frank Weber: SIP, TCP/IP und Telekommunikationsnetze. 2. Auflage. Oldenbourg, 2005, ISBN 3-486-57796-4.

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. a b RFC: 8866 – SDP: Session Description Protocol. Januar 2021 (löst RFC 4566 ab, englisch).
  2. RFC: 2974 – Session Announcement Protocol. Oktober 2000 (englisch).
  3. RFC: 3261 – SIP: Session Initiation Protocol. Juni 2002, Abschnitt 2 (englisch).
  4. a b M. Handley, V. Jacobson, C. Perkins: RFC: 4566 – SDP: Session Description Protocol. Juli 2006 (englisch).
  5. RFC: 4317 – Session Description Protocol (SDP) Offer/Answer Examples. Dezember 2005 (englisch).