rfc-4574

The Session Description Protocol (SDP) Label Attribute

O. Levin, G. Camarillo
date2006-08 streamIETF areaart wgmmusic statusPROPOSED STANDARD pages8 canonicalhttps://www.rfc-editor.org/rfc/rfc4574 doi10.17487/RFC4574
This document defines a new Session Description Protocol (SDP) media-level attribute: "label". The "label" attribute carries a pointer to a media stream in the context of an arbitrary network application that uses SDP. The sender of the SDP document can attach the "label" attribute to a particular media stream or streams. The application can then use the provided pointer to refer to each particular media stream in its context. [STANDARDS-TRACK]

Extracted elements (9)

design-rationale §3

Referencing a media stream by its 'm' line order in an SDP session description is insufficient because static external documents may need to reference a media stream that will only be negotiated and created in the future, before the SDP description exists.

realtime, rtp

design-rationale §3

The existing 'i' attribute was unsuitable because it is intended for human users rather than automata. The 'mid' attribute was unsuitable because its scope is limited to a single SDP session and cannot identify streams across multiple SDP sessions in a broader application context.

realtime, rtp

interoperability-note §5

The 'label' attribute is informative only at the offer/answer model level. The presence or absence of 'label' in an offer does not constrain whether the answer must include or omit label attributes. No discovery mechanism is defined for whether a peer understands 'label'.

realtime, sip, rtp

normative-requirement §5 MUST

Applications that use 'label' as a pointer to media streams MUST specify its usage constraints, such as whether support for 'label' is mandatory and how negotiation of 'label' attribute support is handled.

realtime, rtp, sip

normative-requirement §7 RECOMMENDED

It is strongly RECOMMENDED that integrity protection be applied to SDP session descriptions to prevent attackers from adding, modifying, or removing 'label' attributes. For SIP, S/MIME is the recommended mechanism.

security, realtime, sip

protocol-element §4

The 'label' attribute is a new SDP media-level value attribute that carries a token pointer to identify a media stream. It is defined as 'a=label:<pointer>' where pointer is a token composed of allowed token-char characters.

realtime, rtp, sip

registry §8

IANA has registered a new SDP attribute named 'label'. It is a media-level attribute, not subject to charset, whose value is a token. It associates a media stream with a label for reference by external documents.

registry, realtime

security-consideration §7

An attacker may attempt to add, modify, or remove 'label' attributes from a session description, causing the application to behave in a non-desirable way. Integrity protection (e.g., S/MIME for SIP-carried SDP) is strongly recommended to counter this threat.

security, realtime, sip

wire-format §4

The label attribute syntax is: label-attribute = "a=label:" pointer; pointer = token; token = 1*(token-char); token-char = %x21 / %x23-27 / %x2A-2B / %x2D-2E / %x30-39 / %x41-5A / %x5E-7E. The token is application-defined and case-sensitive.

realtime, rtp