Wat is SDP?

SDP is de afkorting van Session Description Protocol. Het Session Description Protocol definieert een standaard voor de definitie van de parameters voor de uitwisseling van media (meestal streaming media) tussen twee (doorgaans) eindpunten. Het SDP is gepubliceerd door het IETF als RFC 4566. Het SDP is meestal ingesloten of opgenomen in een ander protocol, meestal in toepassingen voor IP-telefonie. Simpel gezegd is het SDP een verklaring van een media-eindpunt van de specificaties en mogelijkheden voor ontvangst. Een dergelijke verklaring vertelt ons:

  • welk IP-adres de inkomende mediastream kan ontvangen

  • welk poortnummer luistert naar de inkomende mediastream

  • welk mediatype het eindpunt verwacht te ontvangen (meestal audio)

  • volgens welk protocol het eindpunt verwacht informatie uit te wisselen (meestal RTP)

  • welke compressiecodering het eindpunt kan decoderen (codec)

… en meer. In een normaal sessieconfiguratieproces, zien we twee eindpunten deelnemen aan een sessie. Elk van de eindpunten stuurt een SDP om het andere eindpunt op de hoogte te brengen van de specificaties en mogelijkheden. Het SDP zelf verzendt geen media, maar is beperkt tot het onderhandelen over een compatibele set parameters voor de uitwisseling van media; de mediastreams zelf worden door een ander kanaal en protocol verwerkt. Kijk eens naar het volgende eenvoudige voorbeeld:

v=0
o=MyStreamer 2398026505 2307593197 IN IP4 10.20.30.40
s=MyStreamer Audio Session
c=IN IP4 10.11.12.13
t=0 0
m=audio 15010 RTP/AVP 0 101
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=sendrecv

We zien dat het eindpunt aangeeft media te willen ontvangen:

  • op IP-adres 10.11.12.1 (de parameter “c=”)

  • op poortnummer 15010 (de parameter “m=”)

  • van het type audio (de parameter “m=”)

  • via protocol RTP, met twee mogelijke codecs genummerd 0 en 101, waarbij:

    • codec 0 is gedefinieerd als PCMU bij 8000 Hz
    • codec 101 is gedefinieerd als een “telefoniegebeurtenis” bij 8000 Hz (een telefoniegebeurtenis is in feite een DTMF-toon)
    • in bi-directionele modus (“a=sendrecv”, zenden en ontvangen)

Meer lezen