Handley Request for Comments: V. Please refer to the current edition of the "Internet Official Protocol Standards" STD 1 for the standardization state and status of this protocol. Distribution of this memo is unlimited. All Rights Reserved.
|Published (Last):||19 April 2007|
|PDF File Size:||3.55 Mb|
|ePub File Size:||3.14 Mb|
|Price:||Free* [*Free Regsitration Required]|
Handley Request for Comments: V. Please refer to the current edition of the "Internet Official Protocol Standards" STD 1 for the standardization state and status of this protocol.
Distribution of this memo is unlimited. All Rights Reserved. SDP is intended for describing multimedia sessions for the purposes of session announcement, session invitation, and other forms of multimedia session initiation.
Introduction On the Internet multicast backbone Mbone , a session directory tool is used to advertise multimedia conferences and communicate the conference addresses and conference tool-specific information necessary for participation. This document defines a session description protocol for this purpose, and for general real-time multimedia session description purposes. This memo does not describe multicast address allocation or the distribution of SDP messages in detail.
These are described in accompanying memos. SDP is not intended for negotiation of media encodings. Background The Mbone is the part of the internet that supports IP multicast, and thus permits efficient many-to-many communication.
It is used extensively for multimedia conferencing. Session directories assist the advertisement of conference sessions and communicate the relevant conference setup information to prospective participants. SDP is designed to convey such information to recipients. SDP is purely a format for session description - it does not incorporate a transport protocol, and is intended to use different transport protocols as appropriate including the Session Announcement Protocol [ 4 ], Session Initiation Protocol [ 11 ], Real- Time Streaming Protocol [ 12 ], electronic mail using the MIME extensions, and the Hypertext Transport Protocol.
SDP is intended to be general purpose so that it can be used for a wider range of network environments and applications than just multicast session directories.
However, it is not intended to support negotiation of session content or media encodings - this is viewed as outside the scope of session description.
Glossary of Terms The following terms are used in this document, and have specific meaning within the context of this document. Conference A multimedia conference is a set of two or more communicating users along with the software they are using to communicate. Session A multimedia session is a set of multimedia senders and receivers and the data streams flowing from senders to receivers.
A multimedia conference is an example of a multimedia session. Session Advertisement See session announcement. Session Announcement A session announcement is a mechanism by which a session description is conveyed to users in a proactive fashion, i. SDP Usage 4. Multicast Announcements SDP is a session description protocol for multimedia sessions. A common mode of usage is for a client to announce a conference session by periodically multicasting an announcement packet to a well known multicast address and port using the Session Announcement Protocol SAP.
SAP is described in more detail in a companion memo [ 4 ] The text payload is an SDP session description, as described in this memo.
The text payload should be no greater than 1 Kbyte in length. If announced by SAP, only one session announcement is permitted in a single packet. This enables the automatic launching of applications for participation in the session from the WWW client or mail reader in a standard manner. SAP announcements do not suffer from this mismatch. Requirements and Recommendations The purpose of SDP is to convey information about media streams in multimedia sessions to allow the recipients of a session description to participate in the session.
SDP is primarily intended for use in an internetwork, although it is sufficiently general that it can describe conferences in other network environments. A multimedia session, for these purposes, is defined as a set of media streams that exist for some duration of time.
Media streams can be many-to-many. The times during which the session is active need not be continuous. Thus far, multicast based sessions on the Internet have differed from many other forms of conferencing in that anyone receiving the traffic can join the session unless the session traffic is encrypted. In such an environment, SDP serves two primary purposes.
It is a means to communicate the existence of a session, and is a means to convey sufficient information to enable joining and participating in the session. In a unicast environment, only the latter purpose is likely to be relevant.
For an IP unicast session, the following are conveyed: o Remote address for media o Transport port for contact address The semantics of this address and port depend on the media and transport protocol defined. By default, this is the remote address and remote port to which data is sent, and the remote address and local port on which to receive data. However, some media may define to use these to establish a control channel for the actual media flow.
Timing Information Sessions may either be bounded or unbounded in time. Whether or not they are bounded, they may be only active at specific times. Private Sessions It is possible to create both public sessions and private sessions.
Private sessions will typically be conveyed by encrypting the session description to distribute it. The details of how encryption is performed are dependent on the mechanism used to convey SDP - see [ 4 ] for how this is done for session announcements.
If a session announcement is private it is possible to use that private announcement to convey encryption keys necessary to decode each of the media in a conference, including enough information to know which encryption scheme is used for each media. Obtaining Further Information about a Session A session description should convey enough information to decide whether or not to participate in a session.
Categorisation When many session descriptions are being distributed by SAP or any other advertisement mechanism, it may be desirable to filter announcements that are of interest from those that are not. SDP supports a categorisation mechanism for sessions that is capable of being automated. However, to assist in compact representations, SDP also allows other character sets such as ISO to be used when desired.
Internationalization only applies to free-text fields session name and background information , and not to SDP as a whole. However, since the total bandwidth allocated to all SAP announcements is strictly limited, the encoding is deliberately compact.
Also, since announcements may be transported via very unreliable means e. This also allows rapid discarding of encrypted announcements for which a receiver does not have the correct key. It also will be case-significant unless a specific field defines otherwise. A session description consists of a session-level description details that apply to the whole session and all media streams and optionally several media-level descriptions details that apply onto to a single media stream.
An announcement consists of a session-level section followed by zero or more media-level sections. In general, session-level values are the default for all media unless overridden by an equivalent media-level value. Some lines in each description are required and some are optional but all must appear in exactly the order given here the fixed order greatly enhances error detection and allows for a simple parser.
Some attributes the ones listed in this document have a defined meaning but others may be added on an application-, media- or session-specific basis. The sequence CRLF 0x0d0a is used to end a record, although parsers should be tolerant and also accept records terminated with a single newline character. There is no minor version number. It is needed for proxy announcements to detect which of several announcements for the same session is the most recent. Again, it is recommended but not mandatory that an NTP timestamp is used.
Initially "IN" is defined to have the meaning "Internet". Initially "IP4" and "IP6" are defined. For an address type of IP4, this is either the fully-qualified domain name of the machine, or the dotted-decimal representation of the IP version 4 address of the machine.
For an address type of IP6, this is either the fully-qualified domain name of the machine, or the compressed textual representation of the IP version 6 address of the machine. Although it may be omitted, this is discouraged for session announcements, and user interfaces for composing sessions should require text to be entered.
An example would be two different whiteboards, one for slides and one for feedback and questions. This is not necessarily the same person that created the conference announcement. Additional email and phone fields are allowed. There must be a space or a hyphen "-" between the country code and the rest of the phone number.
Spaces and hyphens may be used to split up a phone field to aid readability if desired. This should be enclosed in parenthesis if it is present. The first sub-field is the network type, which is a text string giving the type of network. The second sub-field is the address type. Currently only IP4 is defined. The third sub-field is the connection address. For IP4 addresses, the connection address is defined as follows: o Typically the connection address will be a class-D IP multicast group address.
If the session is not multicast, then the connection address contains the fully-qualified domain name or the unicast IP address of the expected data source or data relay or data sink as determined by additional attribute fields. In other cases, the use of an IP address to specify a particular interface on a multi-homed host might be required. Thus this specification leaves the decision as to which to use up to the individual application, but all applications MUST be able to cope with receiving both formats.
The TTL and the address together define the scope with which multicast packets sent in this conference will be sent. TTL values must be in the range The TTL for the session is appended to the address using a slash as a separator. The receiver can choose the desired quality and hence bandwidth by only subscribing to a subset of these layers. Such layered encodings are normally transmitted in multiple multicast groups to allow multicast pruning. This technique keeps unwanted traffic from sites only requiring certain levels of the hierarchy.
It is illegal for the slash notation described above to be used for IP unicast addresses. The primary purpose of this is to give an approximate idea as to whether two or more conferences can co-exist simultaneously. Note that CT gives a total bandwidth figure for all the media at all sites. AS gives a bandwidth figure for a single media at a single site, although there may be many sites sending simultaneously.
Modifiers should be alpha-numeric and, although no length limit is given, they are recommended to be short. To convert these values to UNIX time, subtract decimal If the start-time is also zero, the session is regarded as permanent.
References to rfc2327
Google Network Working Group M. Handley Request for Comments: V. Please refer to the current edition of the "Internet Official Protocol Standards" STD 1 for the standardization state and status of this protocol. Distribution of this memo is unlimited. All Rights Reserved. SDP is intended for describing multimedia sessions for the purposes of session announcement, session invitation, and other forms of multimedia session initiation.
IETF RFC 2327 PDF
Zulukinos Thus an hour meeting from 10am UTC on 1 with a single repeat time a week later at the same time can be represented as:. SDP does not deliver any media by itself but is used between endpoints for negotiation of media type, format, and all associated properties. Negotiating a Voice Call 6. Relationship with other existing or emerging documents: Note the inclusion of SHIM headers and extended addresses. All RFCs always remain available on-line. Adam Dave Rdc wrote: Justification for the specific reference:.