Subject: Re: [sipcore] SIP Timer H and Timer B must have the same value ???

From: <[email-masked]>
Date: Tue, 25 Jan 2011 13:39:36 +0100

> Hi all, 
> 
> I have a probleme understanding the following sentence RFC 3261 regarding H and B Timers in section 17.2.1.
> 
"Timer H determines when the server transaction abandons retransmitting the response.  Its value is chosen to equal Timer B, the amount of time a client transaction will continue to retry sending a request." 

> Is this means that Timer H (in the server) and Timer B (in the client) must have the same value at both sides of a SIP hop ? 
> 
> If yes, why is this necessary and what are the impacts of not respecting this rule ?  In fact, in some times this rule could not be satisfied: timers H and B are multiple of Timer T1 and this later may different at both sides of the SIP hop which is possible as the SIP hop node may have different types of connections at both sides (e.g. radio / Fiber). See figure below.
> 
> 				P-CSCF			       S-CSCF
>                      (T1= 2s)            (T1= 500ms)
>                          |                     |
>                          |       INVITE        |
>                      > ↑>    |-------------------->|
>                      |   |                     |
>                      |   |                     |
>              Timer B |   |                     |
>            64*T1=128s|   |              1xx          |
>                      |   |              <-------------| > ↑> 
>                      |   |                     | |
>                      |   |                     | |
>                      |   |                     | |    Timer H
>                      |   |                     | |   64*T1=32s    
>                      |                           > ↓> 
>                      |
>                      |
>                      |
>                                                         > ↓> 				         
> 
> The Timer B controls transaction timeouts in INVITE Transaction.
> 
> The Timer H determines when the server transaction abandons retransmitting the response 200 OK.
> 
> 
> 
>

---

From: Adam Roach <[email-masked]>
Date: Tue, 25 Jan 2011 08:15:06 -0600

[as participant]

On 1/25/11 06:39, Jan 25, [email-masked] wrote:
>
> I have a probleme understanding the following sentence RFC 3261
> regarding H and B Timers in section 17.2.1.
>
> "/Timer H determines when the server transaction abandons
> retransmitting the response. //Its value is chosen to equal Timer B,
> the amount of time a client transaction will continue to retry sending
> a request./"//
>
> Is this means that Timer H (in the server) and Timer B (in the client)
> must have the same value at both sides of a SIP hop ?
>
> If yes, why is this necessary and what are the impacts of not
> respecting this rule ? In fact, in some times this rule could not be
> satisfied: timers H and B are multiple of Timer T1 and this later may
> different at both sides of the SIP hop which is possible as the SIP
> hop node may have different types of connections at both sides (e.g.
> radio / Fiber). See figure below.
>

Actually, it's never a good idea to have differing values for T1 between
a client and a server. Robert Sparks has put together a good writeup of
the related issues here:

http://blog.tekelec.com/blog/bid/13564/Changing-SIP-s-Transaction-Timers-Part-1-of-2
http://blog.tekelec.com/blog/bid/13566/Changing-SIP-s-Transaction-Timers-Part-2-of-2

[as chair]

In the future, please address this kind of question to the
sip-implementors mailing list. See
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

/a