[Devel] TM : retransmission timers

Daniel-Constantin Mierla daniel at voice-system.ro
Mon Nov 20 11:58:30 CET 2006


there are two issues when comes to timer update:
- timer interval - which is now 1sec because of sleep and can be easily 
changed to lower value by using select/poll functions
- resynchronization and timer callbacks management - this is a bit more 
complex where we are working on. The solution is to implement 
hierarchical timer lists so to avoid checking if timer fires for all 
registered callbacks

Solutions are there, check high resolutions timers in kernel or posix 
timers which have similar approach.


On 11/20/06 12:50, Christian Schlatter wrote:
> Quoting Jean-François SMIGIELSKI <jf-smig at ibelgique.com>:
>> Hello, list!
>> 10 days ago, I have posted a mail to users at openser.org to know more 
>> about the
>> retransmission timers in OpenSER. Enven if the conversation felt on a 
>> huge
>> hidden troll, it seems that there still remain "well known bugs" in 
>> OpenSER.
>> First, there is the impossibility for OpenSER to set "subsecond" timers.
>> Then, it seems there is an invalid handling of INVITE requests that 
>> are handled
>> as non-INVITE requests, (about the retransmission timers). The first 
>> problem
>> lead to an other bug: if I register a 1 second timer, it will fire 
>> with the just
>> next timer that my be much closer than 1 second.
>> In my case, I need at least a solution for the first problem, and I 
>> am volunteer
>> to bring this solution if you agree. But I wouldn't work if the 
>> result is
>> quickly dropped for some reason. So I need come comments on the 
>> changes I plan.
>> Please accept all my apologies if you already gave the solutions. I 
>> don't have many
>> time to play with cvs snapshots of OpenSER and I currently only run 
>> the version 1.1.0
>> stable release.
> The iptel guys have recently added subsecond timer functionality to 
> iptel SER. You may want to have a look at their code before starting 
> to code. I've read that their new timer.c is backwards compatible, so 
> porting their timer.c to openser should be rather straight forward. Of 
> course the TM module also has to be adopted to use the new timers 
> which is probably not that easy.
> iptel ser timer.c diff including new timer functionality:
> http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/timer.c.diff?r1=1.12&r2=1.13 
> Christian
> _______________________________________________
> Devel mailing list
> Devel at openser.org
> http://openser.org/cgi-bin/mailman/listinfo/devel

More information about the Devel mailing list