[asterisk-bugs] [Asterisk 0012544]: [patch] Congestion feature request

noreply at bugs.digium.com noreply at bugs.digium.com
Tue Jul 1 21:02:52 CDT 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=12544 
====================================================================== 
Reported By:                kactus
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   12544
Category:                   Channels/NewFeature
Reproducibility:            N/A
Severity:                   feature
Priority:                   normal
Status:                     ready for testing
Asterisk Version:           1.6.0-beta7.1 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             04-28-2008 21:45 CDT
Last Modified:              07-01-2008 21:02 CDT
====================================================================== 
Summary:                    [patch] Congestion feature request
Description: 
Hi

I've been looking at a few different ways to provide failover for clients
and was hoping that there was a way to set auto_congest timeout values for
non registered peers.

This would allow for dial plans such as

1,Answer()
2,Dial(Exten at peer1)
3,Dial(Exten at peer2)
etc

Autocongestion currently works if the peer returns an error but if the
remote host is down it waits the full 32 seconds before progressing to the
next priority. I'd like to set this so that if there is no response after 5
seconds that it goes to the next priority. (that way the cheaper but less
reliable trunks are used first)

It appears asterisk 1.6 no longer uses the qualify column to determine
maximum time before failover, and the timerb in sip.conf for example only
works on registered peers. Passing time in the dial only seems to work once
the other side receives it and setting timeout absolute = 5 redials the
same priority every 5 seconds.

If this configuration has been moved somewhere else already can you please
let me know as I was unable to find it in the documentation, online or
after greping the source code.

Thanks
====================================================================== 

---------------------------------------------------------------------- 
 kactus - 07-01-08 21:02  
---------------------------------------------------------------------- 
Hello Oej, 

sorry I was working on issues around 12508 once we got the new server up
and running. 

I ran the patch and as Corydon mentioned, added a timerb column to the sip
table. I played with a few settings and it did seem to work as desired with
null values defaulting to 32 seconds and it caught -ve values which is
always a plus. 

Only issue I can see is that the warning that is generated:
WARNING[18956]: chan_sip.c:19968 build_peer: Timer B has been set lower
than recommended. (RFC 3261, 17.1.1.2)
appears more often than it probably should. 

It appears 4 times before calling the testtrunk and 3 times after (during
the congestion). I imagine that a suppress warning flag can be added at a
future date but that really is not important since the autocongestion works
well now. The way it now also allows tuning different trunks with different
time out which is brilliant.

I also tested it without the patch (just 1.6 beta 9) and found that it
worked as Corydon had mentioned, so the patch only appears to add the
warnings.

All in all looks good - Thank you very much ^^ we'll be taking advantage
of this as we move forward.

All the best - Kactus 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
07-01-08 21:02  kactus         Note Added: 0089566                          
======================================================================




More information about the asterisk-bugs mailing list