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 [1].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 [2].
Enjoy!
SERi [3] Timer | RFC Name | Default | Description | How can it be changed? |
| fr_timer | B + F | 30 sec | Hits 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 [4] (INVITE) by changing the attribute defined by fr_timer_avp. Default: 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 [5]. | This timer can be changed per transaction (INVITE) by changing the attribute defined by fr_inv_timer_avp. Default: | |
| 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 [6] of local cancels is stopped. | Within this time, retransmissionsi [7] 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 [8] | 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. |