[asterisk-dev] Timers in pjsip

Joshua Colp jcolp at digium.com
Tue May 2 17:17:23 CDT 2017


On Tue, May 2, 2017, at 07:07 PM, Steve Murphy wrote:

<snip>

> 
> I notice that pjsip in asterisk seems to follow the same pattern of
> retries:
> first, a half-second wait, then a retry,  then a full second wait, then
> a retry, then a 2 second wait, and several 4-second waits until half a
> minute or so,
> and after 60 seconds, (61 seconds?) the cycle starts over.
> 
> I have spent hours looking for this algorithm first in the asterisk code,
> then in pjproject.
> The docs for pjproject say:
> 
> (section 8.1.2: Timers and Retransmissions)
> 
> ​    "Application can change the interval value of timers only on a
> global
> basis
>      (perhaps even only during compilation)."
> 
> ​Any hints as to where this code is located?

The code itself is in the transaction layer of PJSIP at
pjsip/src/pjsip/sip_transaction.c - specifically the
tsx_resched_retransmission function.

-- 
Joshua Colp
Digium, Inc. | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US
Check us out at: www.digium.com & www.asterisk.org



More information about the asterisk-dev mailing list