[SIPForum-discussion] Can 180 be sent with Require:100rel and RACKheader without SDP
Garron, James
jgarron at sonusnet.com
Thu May 27 17:40:40 UTC 2010
Yes a reliable 18x message can be sent without SDP if the initial INVITE
include SDP, if not then the 18x message MUST include SDP.
3.1.1. INVITE Request with SDP
When a UAC includes an SDP body in the INVITE request as an offer, it
expects the answer to be received with one of the reliable responses.
Other than that, no offer/answer exchanges can occur in the messages
within the INVITE transaction.
UAC UAS
| F1 INVITE (SDP) | <- The offer in the offer/answer model
|-------------------->|
| F2 1xx (SDP) | <- The offer/answer exchange is not
|<--------------------| closed yet, but UAC acts as if it
| | ^ receives the answer.
| F3 1xx-rel (no SDP) | |<- a 1xx-rel may be sent without answer
|<--------------------| | SDP.
| F4 PRACK (no SDP) | |
|-------------------->| | UAC must not send a new offer.
| F5 2xx PRA (no SDP) | |
|<--------------------| v
| |
| F6 1xx-rel (SDP) | <- The answer in the offer/ answer model
|<--------------------| -
| F7 PRACK | | UAC can send a new offer in a PRACK
|-------------------->| | request to acknowledge F6.
| F8 2xx PRA | | After F7 UAC and UAS can send a new
|<--------------------| v offer in an UPDATE request.
| |
| F9 1xx-rel | <- SDP should not be included in the
|<--------------------| subsequent 1xx-rel once offer/answer
| F10 PRACK | has been completed.
|-------------------->|
| F11 2xx PRA |
|<--------------------|
| |
| F12 2xx INV | <- SDP should not be included in the
|<--------------------| final response once offer/answer has
| F13 ACK | been completed.
|-------------------->|
Figure 1 Example of Offer/Answer with 100rel Extension (1)
For example, in Figure 1, only the SDP in F6 is the answer. The SDP
in the non-reliable response (F2) is the preview of the answer and
must be the same as the answer in F6. Receiving F2, the UAC should
act as if it receives the answer. However, offer/answer exchange is
not completed yet and the UAC must not send a new offer until it
receives the same SDP in the first reliable response, which is the
real answer. After sending the SDP in F6, the UAS must prepare to
receive a new offer from the UAC with an UPDATE request or a PRACK
request.
The UAS does not include SDP in responses F9 and F12. However, the
UAC should prepare to receive SDP bodies in F9 and/or F12, and just
ignore them, to handle a peer that does not conform to the
recommended implementation.
3.1.2. INVITE request without SDP
When a UAC does not include an SDP body in the INVITE request, it
expects the offer to be received with the first reliable response.
The UAC will send the answer in the request to acknowledge the
response, i.e. PRACK or ACK request of the reliable response. Other
than that, no offer/answer exchanges can occur in the messages within
the INVITE transaction.
NOTE: The UAS should not include SDP in the responses F6 and F9.
However, the UAC should prepare to receive SDP bodies in F6 and/or
F9, and just ignore them to handle a peer that does not conform to
the recommended implementation.
UAC UAS
| F1 INVITE (no SDP) |
|-------------------->|
| F2 1xx |
|<--------------------|
| |
| F3 1xx-rel (SDP) | <- The first 1xx-rel must contain SDP
|<--------------------| as the offer.
| F4 PRACK (SDP) | <- A PRACK request to the first 1xx-rel
|-------------------->| must contain SDP as the answer.
| F5 2xx PRA (no SDP) | -
|<--------------------| |
| | |
| F6 1xx-rel (no SDP) | <- The subsequent 1xx-rel should not
|<--------------------| | contain SDP.
| F7 PRACK | |
|-------------------->| | UAC can send a new offer in an UPDATE
| F8 2xx PRA | | request after F4.
|<--------------------| v
| |
| F9 2xx INV (no SDP) | <- The final response should not
|<--------------------| contain SDP.
| F10 ACK |
|-------------------->|
Figure 2 Example of Offer/Answer with 100rel Extension (2)
Note that in the case that the UAC needs to prompt the user to accept
or reject the offer, the reliable provisional response with SDP as an
offer (pattern 4) can result in the retransmission until the PRACK
request can be sent. The UAC should take care to avoid this
situation when it sends the INVITE request without SDP.
________________________________
From: discussion-bounces at sipforum.org
[mailto:discussion-bounces at sipforum.org] On Behalf Of Rambabu Achary
Sent: Tuesday, May 25, 2010 3:28 PM
To: discussion at sipforum.org
Subject: [SIPForum-discussion] Can 180 be sent with Require:100rel and
RACKheader without SDP
Can UAS send 180 with Require:100rel and RACK header without SDP if it
receivis INVITE with Supported header contains 100rel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://sipforum.org/pipermail/discussion/attachments/20100527/36baa079/attachment-0002.html>
More information about the discussion
mailing list