On 10/10/05 17:42, Klaus Darilion wrote:
Daniel-Constantin Mierla wrote:
[...]
TCP and NAT will not work in most of the cases,
and when there is no
nat, the UA has no excuse to behave wrongly during registration.
If I would implement a SIP client using TCP the client would:
- open the TCP connection
- send keep alive (CRLF)
- if the connection is terminated by the proxy or there is a delivery
failure the client would immediately reconnect to the proxy.
I am not sure if this
helps in any meaning, since most of the servers
will open a new connection when the call comes towards the tcp user.
Otherwise, the registrar must keep the tcp connection id in the usrloc
database which will not be valid upon a restart or close+re-connection.
Going through all tcp connection opened in the server to figure out if
it is one linking the user, may be more time consuming that opening a
new one. Since I have not tested tcp too much in my environment, I do
not know how specific nat situations can be dealt.
IMO a SIP proxy should be able to keep >thousand TCP sessions open
I agree, but
if they are no longer useful for the server, makes no much
sense to keep them, in my opinion.
Cheers,
Daniel
regards
klaus
Cheers,
Daniel
This can be avoided using the call-id as identifier.
regards
klaus