Session Description Protocol

Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 30. Juni 2015 um 09:29 Uhr durch 131.188.6.21 (Diskussion) (Felder). Sie kann sich erheblich von der aktuellen Version unterscheiden.
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 4566 (2006)

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

Beispiel

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 20001 RTP/AVP 31
a=rtpmap:31 H261/90000

Alice bietet dem Empfänger von host.provider2.com ausgehend die Sitzung Nr. 1234 an, beinhaltend 2 Nachrichtenströme (m=), die beide mit dem Transportprotokoll RTP versendet werden. Der eine ist ein Audiostrom im Format iLBC (97) an Port 20000, der andere ein Videodatenstrom im Format H.261 (31) an Port 20001. Die Attribute (a=) der jeweiligen Datenströme beschreiben Formatparameter, der mit der Nummer 97 hat den Namen iLBC und eine Samplerate von 8 kHz.

RFC 4317 enthält ausführliche Beispiele dafür, wie eine Protokollaushandlung mittels SDP dann aussehen könnte.

Felder

  • v = Protokoll-Version
  • o = Ersteller der Session und Session-Identifizierung
  • s = Name der Session
  • i = zusätzliche Session-Informationen (optional)
  • u = URI die auf zusätzliche Informationen zur Session verweist (optional)
  • e = E-Mail-Adresse (optional)
  • p = Telefon-Nummer (optional)
  • c = Verbindungs-Information (wird nicht benötigt, wenn bei allen Medien angegeben, optional)
  • b = Information über die Bandbreite (optional)
  • Eine oder mehrere Zeit-Beschreibungen (s. u.)
  • z = Zeitzonen-Anpassungen (optional)
  • k = Verschlüsselungs-Schlüssel (encryption key) (optional)
  • a = keine oder mehr Session-Attribute (optional)
  • Keine oder mehr Medien-Beschreibungen (s.u.)

Zeit-Beschreibungen:

  • t = Zeit, in der die Session aktiv ist
  • r = keine oder mehr Wiederholungen (optional)

Beschreibung der Medien:

  • m = Medientyp, Port und Protokoll für den Medientransport sowie die Medienformate
  • i = Titel des Mediums (optional)
  • c = Verbindungs-Informationen, optional wenn diese nicht in der Session definiert sind (s. o, optional)
  • b = keine oder mehr Bandbreiteninformationen (optional)
  • k = Verschlüsselungs-Schlüssel ("encryption key", optional)
  • a = keine oder mehr Media-Attribute (optional)

Quelle: IETF RFC 4566: SDP: Session Description Protocol (M. Handley, V. Jacobson, C. Perkins, Juli 2006)