On 9/14/16 7:05 AM, Harrison, Jason, Vodafone UK wrote:
Hi,

I have an issue and I can't identify if the behaviour is wrong:

Here is a working call
Provider               Customer
SBC                        SBC
INVITE (SDP offer)-->
<--100 Trying
<--180 Ringing (SDP answer)
PRACK -->
<-- 200OK (PRACK)
<-- UPDATE
200OK UPDATE -->
<--200OK (INVITE)
ACK -->

And here is a failed call
Provider               Customer
SBC                        SBC
INVITE -->
<--100 Trying
<--180 Ringing (SDP)
PRACK -->
<-- 200OK (PRACK)
<-- UPDATE
<--200OK (INVITE)
200OK (UPDATE) -->
ACK -->
BYE -->
<--200OK (BYE)

In the failed call I am being told by the provider that their SBC sent a BYE 
because the 200OK for the INVITE was received before it managed to send the 
200OK for the UPDATE, I have checked the RFCs and can't find if the customer 
SBC is breaking any rules by sending an 200OK for the INVITE before it received 
a response for the UPDATE

I don't think the second flow should be considered an error. It is valid for the UPDATE to occur before the INVITE completes (as in the first flow), and it is also valid for the update to occur after the INVITE completes. Nor is there anything that the update will do that will have a different effect whether it is completed before or after the INVITE completes.

ISTM that by generating the error the implementation is indicating that it is coupling the state machine for the UPDATE with that for INVITE. That is dubious behavior.

        Thanks,
        Paul

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

Reply via email to