[OpenSER-Users] Error with parallel forking and TCP

Klaus Darilion klaus.mailinglists at pernau.at
Fri Jul 25 12:35:39 CEST 2008



Zappasodi Daniele schrieb:
> Hello,
> I have a problem with parallel forking and TCP when one connection isn't 
> available and the inv_timeout expires.
> I have two clients registered with the same username and transport=TCP.
> If I make a call to this number when one of them is not reachable, the 
> INVITE goes to the phone reachable, if the call timeout expires 
> (fr_inv_timer_avp) Openser sends the CANCEL, but doesn't send anything 
> to the caller.
> The failure_route doesn't hit.

Looks like a bug.
> 
> There is also a delay between the t_relay and the forwarding of the 
> packet TCP on the net (around 3 seconds). The TCP packet is forwarded to 
> the available connection only after Openser detects the failure for the 
> closed TCP connection (the INVITE goes on the net only after the message 
> ERROR:tm:t_forward_nonack: sending request failed).

I suspect the problem is synchronous blocking TCP operation. Openser 
tries to send to first contact, then to second contact. As sending to 
first contact fails (probably with a TCP timeout of 3 seconds - check 
core book documentation for setting TCP timeouts) it takes 3 seconds 
until it sends the request on the second connection.

regards
klaus




More information about the sr-users mailing list