"JC" <jc.hu...@tom.com> writes:
> There is one SIP call scenario that one SIP UA sends one reliable 183 to one
> SIP device, and the UA receives the PRACK, then, it sends 200OK of PRACK and
> one new reliable 180 immediately. All the messages are sent over UDP, due to
> the network issue, the SIP device  receives the 2nd reliable 180 ahead of
> PRACK's 200OK. Now, I find the SIP device can't handle the case, and I have
> to prove that current case should be handled by it well.
>
> I looked through RFC3262 and not find it clarify the case clearly. So, is
> there any other RFC or SPEC which describe it?

Section 4 of RFC 3262 is clear:  The UAC receives the "2nd reliable 180"
and processes it normally.  There is no rule that permits the UAC to
wait to receive the 200 for the PRACK before it will process the 180.

The reason for this is that the UAS is not permitted to have sent the
180 before receiving the PRACK for the 183.  Section 3 RFC 3262:

   After the first reliable provisional response for a request has been
   acknowledged, the UAS MAY send additional reliable provisional
   responses.  The UAS MUST NOT send a second reliable provisional
   response until the first is acknowledged.

So when the UAC receives the 180, it knows that the UAS has received the
PRACK for the 183.  (Of course, the UAS is required to resend the PRACK
if it doesn't receive the 200 for the PRACK, but that does not affect
offer/answer processing.)

Dale
_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to