Summary:ASTERISK-00759: Calls fail if IP Phone responds too slowly (Circuit-busy / Auto-Congested)
Reporter:gcc (gcc)Labels:
Date Opened:2004-01-08 11:00:06.000-0600Date Closed:2011-06-07 14:10:06
Versions:Frequency of
Description:If a Qualify time is set in sip.conf for a phone, then Asterisk assumes that it should respond to an invite within twice that time (chan_sip.c:885), otherwise it must be down. Some phones take much longer than their ping time to respond (e.g. Cisco 7940 takes about 150 ms).


It's very difficult to spot when this is happening. I had some Cisco phones with a normal ping time of 50 ms, and a 100ms qualify time seemed reasonable.

The console and log messages gave no clue about what was causing the problem, so I had to spend hours trawling through the code.

How about improving the log message (not just "Auto-congesting" but "No response within %d ms, assuming phone is down") and writing it to the console as well as the system logs?

Perhaps there should also be some advice in the manual about the proper setting of the Qualify time, and what other implications it may have?
Comments:By: gcc (gcc) 2004-01-08 12:00:14.000-0600

Actually there was a clue, but it's very obscure. On the console:

 -- SIP/7801-a9c5 is circuit-busy
 == Everyone is busy at this time

and in /var/log/asterisk/messages:

 NOTICE[1142127920]: File chan_sip.c, Line 772 (auto_congest): Auto-congesting SIP/7801-a9c5

By: Brian West (bkw918) 2004-01-09 00:03:43.000-0600

So thats what causes this.. I have been trying to figure this one out.

By: Malcolm Davenport (mdavenport) 2004-01-09 01:00:06.000-0600

Modified to * 4 instead of * 2 in CVS.  If this is not enough, reopen.

By: gcc (gcc) 2004-01-09 05:45:28.000-0600

Thanks Malcolm, but 4 is still an arbitrary number :-)

Does the standard say anything about how long we should wait for a response to a SIP invite?

Perhaps we should have a parameter in sip.conf to specify an absolute time limit for INVITE responses (rather than a factor of the ping time qualify limit). Perhaps the default should be 1 second or so?

Also, why does Asterisk report to the caller that the phone is ringing when in fact it has not received a response to the invite?

By: Digium Subversion (svnbot) 2008-01-15 14:39:55.000-0600

Repository: asterisk
Revision: 1910

U   trunk/channels/chan_sip.c

r1910 | malcolmd | 2008-01-15 14:39:54 -0600 (Tue, 15 Jan 2008) | 2 lines

Bug ASTERISK-759: Modifying Auto-Congestion to p->maxtime * 4 instead of * 2