Hi All,

SBC has a call for the our phone, which is behind a NAT with the
pinhole kept open by fast registers.

SBC sends out an INVITE
my phone replies with a 180, with 100rel required and an RSeq: 81
SBC send back a PRACK to which the phone sends  200 OK.

20 seconds later I still hasn’t picked up. According to RFC 3581 which
handles NATs

“the binding may expire before a final response is received. To keep
the binding fresh, the client SHOULD retransmit its INVITE every 20
seconds or so. These retransmissions will need to take place even
after receiving a provisional response.”

So SBC retransmit the original INVITE. This is where things start to go awry.

SBC retransmits original INVITE
My Phone replies with a 180, with 100rel required and the exact same Rseq: 81
The SBC discards this message as the Rseq has not been incremented.

This is from RFC 3262

“The value of the RSeq in each subsequent reliable provisional
response for the same request MUST be greater by exactly one.”

But since this is not truly a new request we have received, we are not
sending an increased RSeq. I believe we are correct in this behaviour
but how can we elicit a response from the SBC. Do we expect a new
PRACK..?

RFC 3262 also says that

a UAC SHOULD NOT retransmit the PRACK request when it receives a
retransmission of the provisional response"

Also I want to tell you that our phone does not support RFC 3581. Is
phone behavior justified? What should phone need to do here?

Thanks,
Isshed.

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

Reply via email to