What are the different SER timers and how do they relate to RFC3261 timers?

Keywords: tm

The timers of the tm module can be confusing and normally you don¨t have to (or should) tweak timers except the fr_inv_timer (controlling "how long to ring").  The below table is an overview of the timers that can be changed from seri.cfg, how they correspond to the timer names in RFC3261 and how/why you would want to change it.

PLEASE NOTE that in 0.10.x the timers were completely rewritten. 0.10.x timers are documented here.

Enjoy!

SERi Timer 

RFC Name  Default Description How can it be changed? 
 fr_timer B + F 30 secHits if no final reply for an INVITE request or ACK for a negative INVITE reply arrives (F in seconds).  Intention of RFC is having this value equal to the time required to send seven requests.

 This timer can be changed per transactioni (INVITE) by changing the attribute defined by fr_timer_avp.

Default:
modparam("tm", "fr_timer_avp", "callee_fr_timer");

restart_fr_on_each_reply controls whether the fr_timer is restarted every time a provisonal reply is received, default: 1 (yes)

 fr_inv_timer  120 sec  Timer which hits if no final reply for an INVITE arrives after a provisional message was received (in seconds). This means that this timer controls how long time a phone will ring before a 408 timeout is generated in failure_route. See also the FAQ item on changing this timer.

 This timer can be changed per transaction (INVITE) by changing the attribute defined by fr_inv_timer_avp.

Default:
modparam("tm", "fr_inv_timer_avp", "callee_fr_inv_timer");

 wt_timer T4 5 sec  Time for which a transaction stays in memory to absorb delayed messages after it completed; also, when this timer hits, retransmissioni of local cancels is stopped. Within this time, retransmissionsi will be absorbed. After this time, the transaction is cleared and late retransmissions not recognized. Increase if there is an extreme problem with late retransmissions.
 retr_timer1p1 T1 1 sec RFC timer A is initially set to this value. Used for both INVITE and non-INVITE transactionsi If you have a network with very long roundtrip time (above 1 sec), you may increase this value (but change retr_timer2 and fr_timer as well)
 retr_timer1p2 - 2 * retr_timer1p1 Used for INVITE and non-INVITE transactions.
On the first retransmit of INVITEs, timer A is set to this value. For each subsequent retransmit, the timer value is doubled until fr_timer hits (RFC: B).
 No need to change. RFC mandated.
 retr_timer1p3 - 4 * retr_timer1p1 Used for non-INVITE transactions. 
Timer is set to MIN(retr_timer1p3, retr_timer2) until fr_timer hits (RFC: F).
 No need to change. RFC mandated.
 retr_timer2 T2 4 sec Used for non-INVITE transactions.
The maximum length between two retransmits.
 No need to change. RFC mandated.
Home |  Recent changes |  Search |  Glossary |  Sitemap |  Login