Hi,

The 401 response must not create a dialog on your UAS.
Dialog can be created only through generation of non-failure final responses 
and 101 -199 provisional responses.

Section 14.2 is applicable only if the UAS has NOT YET sent the final response, 
which is not the case here.
UAS should treat the new INVITE as an independent transaction and not link it 
with the previous one.

Thanks,
Pranab

________________________________________
From: [email protected] 
[[email protected]] On Behalf Of neil corcoran 
[[email protected]]
Sent: Thursday, August 02, 2012 2:16 PM
To: [email protected]
Subject: [Sip-implementors] INVITE ACK race problem

Hi all,

We've come across a situation where we as the UAS challenge INVITE(A)
with a 401, and the
second INVITE(B) containing the credentials arrives before the ACK for
INVITE(A).
INVITE(B) has the same Call-Id and From Tag and the CSeq is +1.
This happens because even though the UAC sends ACK(A) followed by
INVITE(B) (on UDP), an proxy sends INVITE(B)
using TCP which occasionally wins the race to get to the UAS.

INVITE(A) <-------------- UDP
100           -------------->UDP
401           -------------->UDP
INVITE(B) <-------------- TCP
ACK(A)    <-------------- UDP

INVITE(B)'s transaction gets linked to INVITE(A)'s dialog which makes
it complicated to resolve when the re-transmissions arrive.

For me the best solution I think would be to respond to INVITE(B) with
500 and include a Retry-After header but I've
not been able to spot anything definitive in the RFCs other than this
which isn't quite the same.

>From RFC 3261

"14.2 UAS Behavior

   ...

   A UAS that receives a second INVITE before it sends the final
   response to a first INVITE with a lower CSeq sequence number on the
   same dialog MUST return a 500 (Server Internal Error) response to the
   second INVITE and MUST include a Retry-After header field with a
   randomly chosen value of between 0 and 10 seconds. "

Is this a reasonable action to take in this situation.

Neil
_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

SASKEN BUSINESS DISCLAIMER: This message may contain confidential, proprietary 
or legally privileged information. In case you are not the original intended 
Recipient of the message, you must not, directly or indirectly, use, disclose, 
distribute, print, or copy any part of this message and you are requested to 
delete it and inform the sender. Any views expressed in this message are those 
of the individual sender unless otherwise stated. Nothing contained in this 
message shall be construed as an offer or acceptance of any offer by Sasken 
Communication Technologies Limited ("Sasken") unless sent with that express 
intent and with due authority of Sasken. Sasken has taken enough precautions to 
prevent the spread of viruses. However the company accepts no liability for any 
damage caused by any virus transmitted by this email.
Read Disclaimer at http://www.sasken.com/extras/mail_disclaimer.html

_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to