3.1.5.13 Extensions for reliable provisional response processing and related offer/answer models
[RFC3262] specifies a means for SIP entities to send reliable provisional response within an early or established dialog. The following sections define client behavior and considerations specific to reliable provisional response and early media.
When negotiating early offer/answer prior to the call being answered, SIP user agents SHOULD<24> use the procedures specified in [RFC3262], with the following exceptions:
A SIP user agent MUST NOT send any SIP request containing a Require header with the option tag of "100rel".
A SIP user agent SHOULD include Require:100rel in 183 responses. SIP user agents SHOULD use a reliable provisional 183 response containing an SDP answer to perform early connectivity checks or to negotiate early media.
Furthermore, SIP user agents SHOULD<25> use the procedures specified in [IETFDRAFT-OFFANS-08] when sending reliable provisional response with SDP, with the following exceptions:
A SIP user agent MUST NOT negotiate more than one offer/answer before the call is answered.
A SIP user agent MUST NOT include an SDP offer or SDP answer in a provisional response acknowledgement (PRACK, as defined in [RFC3262]) message or a 200 OK response to a PRACK message.
A SIP user agent MUST use a 1XX reliable response when responding to an INVITE with early media.
A SIP user agent MUST use a 2XX response when responding to an INVITE of an established dialog.
When dealing with forked endpoints and early media, SIP user agents SHOULD<26> also process 199 response code specified in [IETFDRAFT-RCITD-199-01] to clean up early media state, if any. Information regarding when a 199 is sent is specified in [MS-SIPRE].