rfc-9366

Multiple SIP Reason Header Field Values

R. Sparks
date2023-03 streamIETF areaart wgsipcore statusPROPOSED STANDARD pages4 canonicalhttps://www.rfc-editor.org/rfc/rfc9366 doi10.17487/RFC9366
The SIP Reason header field as defined in RFC 3326 allows only one Reason value per protocol value. Experience with more recently defined protocols shows it is useful to allow multiple values with the same protocol value. This document updates RFC 3326 to allow multiple values for an indicated registered protocol when that protocol defines what the presence of multiple values means.

updates

Extracted elements (6)

design-rationale §1

Experience with more recently defined protocols (notably STIR, per draft-ietf-stir-identity-header-errors-handling) shows it is useful to allow multiple Reason values with the same protocol value. RFC 3326 restricted this to one value per protocol, which proved unnecessarily limiting.

sip

interoperability-note §1

The update to RFC 3326 does not change the restriction to one value per protocol for protocols that do not define what multiple values mean. Only protocols that explicitly specify the semantics of multiple values may include more than one value for that protocol.

sip

normative-requirement §3 MAY

A SIP message MAY contain more than one Reason value. If the registered protocol for the Reason value specifies what it means for multiple values to occur in one message, more than one value for that protocol MAY be present.

sip

normative-requirement §3 OPTIONAL

An implementation is free to ignore Reason values that it does not understand. This permissive handling is preserved from RFC 3326.

sip

normative-requirement §3 MUST

If a registered protocol does not define what multiple Reason values mean, there MUST be only one value per protocol in a SIP message (e.g., one SIP and another Q.850).

sip

security-consideration §4

This document adds no new security considerations to the use of SIP. Implementers should consult the security considerations in RFC 3326 and in any registered protocols used in Reason header field values.

sip, security