[asterisk-users] Calls hang up after 20 seconds
Alex Balashov
abalashov at evaristesys.com
Mon Oct 19 07:45:21 CDT 2009
SIP wrote:
> And yet, again, many clients send no ACKs at all. Asterisk assumes
> they're not connected, and disconnects them.
From a formal point of view, they're not. To positively establish the
dialog the three-way handshake:
INVITE ------------>
<--------------- 1xx
<--------------- 200
---------------> ACK
*is* required.
> Even after the conversation is going nicely.
The fact that media may be passed in the interim is a side effect that
has no bearing on the state machine or protocol mechanics surrounding
the issue of reliable transmission of final responses.
> ACK is required for INVITE requests (ONLY) that have
> route header fields.
What is your citation for this qualification? RFC 3261 does not seem to
me to say that, as in 13.1:
Because of the protracted amount of time it can take to receive final
responses to INVITE, the reliability mechanisms for INVITE
transactions differ from those of other requests (like OPTIONS).
Once it receives a final response, the UAC needs to send an ACK for
every final response it receives.
Or 13.2.2.4 ("2xx Responses"):
The UAC core MUST generate an ACK request for each 2xx received from
the transaction layer.
> Otherwise, you rely somewhat heavily on loose
> routing of the ACK messages, which can result in any manner of fun loops
> dependent on the proxies in the mix and what sort of routes they may be
> tacking on.
End-to-end ACKs are *never* loose-routed by proxies, even though they
contain a To tag; hop-by-hop ACKs are locally generated by proxies.
> ACK was intended as a reliable method of determining whether or not a
> conversation has been well and truly established. But in reality, it is
> one of the less reliable methods.
The scope of the underlying intent behind ACk was a bit broader than that.
--
Alex Balashov - Principal
Evariste Systems
Web : http://www.evaristesys.com/
Tel : (+1) (678) 954-0670
Direct : (+1) (678) 954-0671
More information about the asterisk-users
mailing list