rfc-6809

Mechanism to Indicate Support of Features and Capabilities in the Session Initiation Protocol (SIP)

C. Holmberg, I. Sedlacek, H. Kaplan
date2012-11 streamIETF areaart wgsipcore statusPROPOSED STANDARD pages19 canonicalhttps://www.rfc-editor.org/rfc/rfc6809 doi10.17487/RFC6809
This specification defines a new SIP header field, Feature-Caps. The Feature-Caps header field conveys feature-capability indicators that are used to indicate support of features and capabilities for SIP entities that are not represented by the Uniform Resource Identifier (URI) of the Contact header field. SIP entities that are represented by the URI of the SIP Contact header field can convey media feature tags in the Contact header field to indicate support of features and capabilities. This specification also defines feature-capability indicators and creates a new IANA registry, "Proxy-Feature Feature-Capability Indicator Trees", for registering feature-capability indicators. [STANDARDS-TRACK]

Extracted elements (25)

design-rationale §1

Feature-capability indicators were introduced because media feature tags (RFC 3840) can only be conveyed in the Contact header field, which is tied to the URI of the SIP entity. Proxies, registrars, and B2BUAs whose Contact URI represents another entity have no existing mechanism to signal their own capabilities.

sip

design-rationale §4.2.1

The Feature-Caps header field does not convey the address of the SIP entity that inserted it. If address information about the inserting entity is needed, the individual feature-capability indicator definition must specify a way to include that address as an indicator value.

sip

design-rationale §1

Unlike media feature tags, feature-capability indicators are intended to be used only with SIP, not as general-purpose media feature tags. This distinction is deliberate to keep the two mechanisms separate in scope and registry.

sip

interoperability-note §4.3.2

Because 2xx responses to SIP SUBSCRIBE may not reach the UAC due to forking, entities need to indicate supported features and capabilities in the SIP NOTIFY request that will be sent for each created subscription dialog.

sip

interoperability-note §4.3.3

If SIP outbound (RFC 5626) is used, feature-capability support only applies to the specific registration flow on which support has been explicitly indicated, not to all flows associated with the registration.

sip

normative-requirement §5.3.1 MUST

A feature-capability indicator specification MUST address overall description, values, usage restrictions, interoperability considerations, and security considerations. It MUST NOT modify the Feature-Caps header field rules defined in RFC 6809, and MUST NOT weaken any SHOULD or MUST behaviors in this specification.

sip

normative-requirement §4.2.1 SHOULD NOT

A SIP entity SHOULD NOT re-order the Feature-Caps header fields within a SIP message. Entities MAY remove a Feature-Caps header field or individual feature-capability indicators from a message based on features and policies.

sip

normative-requirement §4.3.3 MUST NOT

Feature-capability indicators in a REGISTER request or response apply only for the duration of the registration of the contact explicitly conveyed in that REGISTER request. SIP entities MUST NOT insert a Feature-Caps header field in pure registration binding fetching messages (REGISTER without a Contact header field).

sip

normative-requirement §4.3.2 MUST

For a given dialog, a SIP entity MUST insert the same feature-capability indicators in all 18x and 2xx responses associated with a given transaction.

sip

normative-requirement §4.2.1 MUST NOT

If the URI in a Contact header field of a request or response represents a SIP entity, that entity MUST NOT indicate supported features and capabilities using a Feature-Caps header field within that request or response.

sip

normative-requirement §5.3.3 MUST

The feature-capability indicator specification MUST define the syntax and semantics of any values for the indicator in accordance with the ABNF in Section 6.3.2, and MUST define whether the indicator has a default value. It is strongly RECOMMENDED to not re-use values already defined for another indicator unless the semantics are identical.

sip

normative-requirement §4.2.1 MUST

When a SIP entity adds a Feature-Caps header field to a SIP message, it MUST place the header field before any existing Feature-Caps header field so that the added header field becomes the top-most one, ensuring that the nearest entity's capabilities appear first.

sip

protocol-element §4.2.2

A B2BUA referenced by a Record-Route header field (not a Contact URI) inserts Feature-Caps in outgoing requests to signal capabilities toward downstream entities, and in responses toward upstream entities. It MAY also copy received Feature-Caps from an incoming request/response to the outgoing message before inserting its own.

sip

protocol-element §4.2.4

A SIP proxy inserts a Feature-Caps header field in a forwarded SIP request to signal capabilities toward downstream entities, and in a forwarded response to signal capabilities toward upstream entities.

sip

protocol-element §4.2.3

A SIP registrar that wants to indicate support of features and capabilities toward upstream SIP entities inserts a Feature-Caps header field in a REGISTER response (200 OK).

sip

protocol-element §5.2

Feature-capability indicators use a registration tree hierarchy distinguished by a leading facet prefix (e.g., 'g.' for the global tree, 'sip.' for the SIP tree). A dot-separated naming scheme allows sub-feature hierarchies (e.g., 'tree.feature.subfeature'). No leading '+' is used in IANA registrations.

sip, registry

protocol-element §4.1

The Feature-Caps header field is a new SIP header field that conveys feature-capability indicators indicating support of features and capabilities for SIP entities not represented by the URI of the Contact header field, such as proxies, registrars, and B2BUAs.

sip

registry §7.3.2

The 'Global Feature-Capability Indicator Registration Tree' (leading facet 'g.') is created within the Proxy-Feature registry. Registration requires 'Specification Required' per RFC 5226 and designated expert review. No initial values are registered.

sip, registry

registry §7.3.3

The 'SIP Feature-Capability Indicator Registration Tree' (leading facet 'sip.') is created within the Proxy-Feature registry. Registration requires 'IETF Review' per RFC 5226 and submission of an Internet-Draft to the IESG. No initial values are registered.

sip, registry

registry §7.3.1

This specification creates the IANA 'Proxy-Feature Feature-Capability Indicator Trees' sub-registry under 'Session Initiation Protocol (SIP) Parameters'. Feature-capability indicators are organized by leading facet into trees. New trees require 'Standards Action' per RFC 5226.

sip, registry

registry §7.1

This specification registers the 'Feature-Caps' header field in the IANA 'Header Fields' registry and adds it to the 'Header Field Parameters and Parameter Values' registry, where valid feature-capability indicator names conforming to the fcap-name syntax are registered as parameters.

sip, registry

security-consideration §9

Feature-capability indicators can reveal application deployment details or identify elements with exploitable implementation weaknesses. Unlike media feature tags (RFC 3840), they do not expose end-user equipment capabilities, but they may expose sensitive SIP infrastructure information.

sip, security

security-consideration §9 MUST

If feature-capability indicators require data integrity or origin authentication, such mechanisms MUST be provided. If confidentiality is required, the specification MUST call for TLS at all hops. Specifications SHOULD NOT define indicators needing confidentiality beyond what hop-by-hop TLS provides, as no satisfactory middle-to-end SIP confidentiality mechanism exists.

sip, security, tls

wire-format §6.3.2

The feature-capability indicator ABNF: `feature-cap = "+" fcap-name [EQUAL LDQUOT (fcap-value-list / fcap-string-value) RDQUOT]`. The leading '+' sign is mandatory for feature-capability indicators, distinguishing them from media feature tags.

sip

wire-format §6.2.1

The Feature-Caps header field ABNF: `Feature-Caps = "Feature-Caps" HCOLON fc-value *(COMMA fc-value)` and `fc-value = "*" *(SEMI feature-cap)`. The '*' wildcard value is present to follow RFC 4485 guidelines and maintain consistency with RFCs 3840/3841.

sip