SDP - Session Description Protocol

Das Sitzungsbeschreibungsprotokoll SDP ist ein Beschreibungsprotokoll für bevorstehende Multimedia-Sitzungen. Das SDP geht unmittelbar einher mit dem SAP, das eine bevorstehende Sitzung ankündigt (für diese wirbt).

Allgemeine Verwendung von SDP und SAP für einen Anwender ist, eine bevorstehende Sitzung auszurufen, und die relevanten Setup-Informationen bekanntzumachen.Die Einladung selber erfolgt mit Hilfe des Session Initialization Protoclos (SIP). Das SAP sendet einen periodischen Multicast Rundruf, welcher die Ankündigung als Paket enthält (und in dessen Message-Body das SDP enthalten ist) und an eine bekannte Adresse (mit Port) gesendet wird.

Aufbau des SDP und SAP

SAP-Pakete sind UDP-Pakete (32bit lang) mit dem folgenden Format.

		0	       31
-----------------
| SAP-Header |
|---------------|
| |
| Text payload |
|/\/\/\/\/\/\/\/|

Die Ankündigungen werden per Email oder WWW ausgerufen.
Der MIME content type ist application/sdp. Der Empfänger einer Ankündigung muß die Sitzung nicht notwendigerweise empfangen können. (z.B. wenn er nicht über die bei der Sitzung ausgerufene Bandbreite verfügt oder die Sitzung privat ist.)

SDP bedient zwei primere Zwecke:

  • es stellt ein Mittel dar, mit dem die Existenz einer Sitzung bekannt gegeben wird
  • Es ermöglicht die Übermittlung relevanter Informationen an die (potentiellen) Teilnehmer einer Sitzung bekannt zu geben.


Die relevanten Informationen, die SDP übermittelt sind (u.a.):

  • Name und Zweck einer Sitzung
  • Zeitperiode, während der eine Sitzung abgehalten wird.
  • Das Medium, über das die Teilnahme ermöglicht wird (VIC, RAT.....MBone-Tools )
  • Informationen, wo das benötigte Medium zu erhalten ist (Adresse, Port, Format)
  • Informationen über die zu benutzende Bandbreite
  • Kontaktinformationen zu der für die Sitzung verantwortliche Person


Diese Informationen werden nach dem Schema = bekanntgegeben.

Sitzungs Beschreibung:

v= (Protokollversion)
o= (Eigentümer/Ersteller und Sitzungsidentifizierer).
s= (Sitzungsname)
i=* (Sitzungsinformation)
u=* (URI der Beschreibung)
e=* (email Adresse)
p=* (Telefonnummer)
c=* (connection information - nicht benötigt, wenn in allen Medien eingeschlossen)
b=* (Bandweite)

Eine oder mehr Zeitbeschreibungen (siehe unten)
z=* (Zeitzonenbeschreibung)
k=* (Krypto-Schlüssel für die Verschlüsselung)
a=* (Null oder mehr Zeilen für die Sitzungsbeschreibung)

Keine oder mehrere Medien-Beschreibungen

Zeitbeschreibung
t= (Zeit während der die Sitzung aktiv ist)
r=* (Keine oder mehrere Wiederholungszeiten)

Medienbeschreibung
m= (Medienname und Transportadresse)
i=* (Medientitel)
c=* (Verbindungsinformationen - optional, wenn im session-level beinhaltet)
b=* (Informationen zur Bandweite)
k=* (Kryptoschlüssel zur Verschlüsselung)
a=*(Keine oder mehrere Zeilen mit Medienattributen)

Beispiel:
v=0
o=MxSIP 0 89 IN IP4 195.69.183.122
s=SIP Call
c=IN IP4 195.69.183.122
t=0 0
m=audio 4864 RTP/AVP 18 8 0 101
a=rtpmap:18 G729/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000..
a=rtpmap:101 telephone-event/8000
a=fmtp:18 annexb=no
a=fmtp:101 0-15
a=sendrecv
m=image 4866 udptl t38
a=sendrecv

Da SDP kein Transportprotokoll darstellt, hängt es sich an SAP (genauer gesagt in den Body oder Text-payload) und wird mit SAP zusammen per UDP übertragen.

Alle drei hier besprochenen Protokolle befinden sich in der Anwendungsschicht (nach OSI) Die darunterliegenden unterstützten Protokolle sind UDP und RTP bei SAP und
UDP, TCP und RTP bei SIP, wobei jedoch meistens nur UDP verwandt wird.

Weiterhin enthält das SDP-Paket noch zeitliche Informationen:
SDP unterstützt zeitlich abhängige sowie zeitlich unabhängige Sitzungen
Beispiele:

  • jeden Mittwoch um 10:00 Uhr für eine Stunde (für die zeitlich gebundene Variante)
  • eine Dauersendung in die man sich einklinken kann (zeitlich ungebunden)


Die Zeitinformationen sind global gleich und nicht von der lokalen Zeit abhängig (GMT)

Die Sitzungen an sich können öffentlich oder privat abgehalten werden.
Bei privaten Sitzungen wird kryptographie verwandt, damit nur bestimmte Teilnehmer an der Sitzung partizipieren können. Private Sitzungen werden außerdem auch privat
verkündet, damit Informationen über die Art der Kryptoschlüssel informiert werden kann.

Weitere Möglichkeiten der Sitzungsbeschreibung:

  • Sortierung resp. Verkündigung nach Interessensgebiet
  • Änderung des normalerweise verwendeten ISO 10646 Zeichensatzes in den ISO 8859-1 Zeichensatz.
 
 
 
© SIPit, 2005-2013 - Alle Rechte vorbehalten