Session Description Protocol
|SDP (Session Description Protocol)|
|Family:||Internet protocol family|
|Operation area:||Description of multimedia sessions as part of the negotiation of media formats|
|Standards:||RFC 4566 ( 2006 )|
With the Session Description Protocol ( SDP , RFC 4566 ; German Session Description Protocol ) properties are described of multimedia data streams. It is used to manage communication sessions and is used, for example, together with SIP in IP telephony to negotiate codecs , transport protocols and addresses, and to transfer metadata. SDP itself does not offer its own negotiation mechanism, only a description of the data streams. Data records in SDP format can be transferred using various transport protocols, e.g. B. also with the Session Announcement Protocol (SAP, RFC 2974 ).
SDP was defined as the standard protocol for media negotiation when establishing SIP connections.
SDP contents consist of several parameters that
<Parametertyp>=<Parameterwert>are specified in simple syntax ( ) one below the other.
- v = protocol version (current version number is "0")
- o = Creator of the session and session identification
- s = name of the session
- i = additional session information (optional)
- u = URI that refers to additional information about the session (optional)
- e = email address (optional)
- p = phone number (optional)
- c = connection information (not required if specified for all media, optional)
- b = information about the data transfer rate (optional)
- One or more time descriptions (see below)
- z = time zone adjustments (optional)
- k = encryption key (encryption key) (optional)
- a = no or more session attributes (optional)
- No or more media descriptions (see below)
- t = time in which the session is active
- r = no or more repetitions (optional)
- m = media type, port and protocol for media transport and media formats
- i = title of the medium (optional)
- c = connection information, if this is not defined in the session (see above, optional)
- b = no or more information on the data transmission rate (optional)
- k = encryption key ("encryption key", optional)
- a = no or more media attributes (optional)
The essential SDP parameters are explained using an exemplary SDP part of a SIP connection message:
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
Session initiator "Alice" offers the recipient from "host.provider2.com" the session number 1234 (first number). The second number is the session version number, which increases with every change during the session. The session should transmit two data streams (m =), both of which are sent with the RTP transport protocol . One data stream is an audio stream in the iLBC format (97) at port 20000, the other a video data stream in the H.261 format (31) at port 20002. The attributes (a =) of the respective data streams describe format parameters with the number 97 the name iLBC and a sampling rate of 8 kHz.
RFC 4317 contains several detailed examples of what media negotiation using SDP could look like.
- RFC 3261 : SIP: Session Initiation Protocol . P. 9
- RFC 4566 : SDP: Session Description Protocol . July 2006, M. Handley, V. Jacobson, C. Perkins
- Ulrich Trick, Frank Weber: SIP, TCP / IP and telecommunications networks. 2nd edition, Oldenbourg, 2005, ISBN 978-3-486-57796-9 .