Subject: Re: [Ice] 5245bis: STUN/TURN transaction timeout timer

From: Christer Holmberg <[email-masked]>
Date: Thu, 1 Mar 2018 08:49:38 +0000

Hi,

When re-reading section 14.2, I actually don¹t think that ICE agents use
the HTO timer.

The important text is the following:

 "Regardless of the Ta value chosen for each agent, the combination of
 all transactions from all agents (if a given implementation runs
 several concurrent agents) MUST NOT be sent more often than once
 every 5ms (as though there were one global Ta value for pacing all
 agents).²

The rest of the text in the section is then a justification/background for
the statement above, and in that justification/background HTO is used as
one parameter.

But, again, ICE agents never implement and use HTO for anything - ICE
agents just make sure that the global Ta value is not smaller than 5ms.

Regards,

Christer

On 01/03/18 09:47, "Ari Keränen" <[email-masked]> wrote:

>Hi,
>
>I had a look at the Ti timer in 5389
>(https://tools.ietf.org/search/rfc5389#section-7.2.2) and it seems that
>it is defined to be in line with the time it takes for (UDP) STUN
>transaction that includes all re-transmissions to timeout:
>>    Reliability of STUN over TCP and TLS-over-TCP is handled by TCP
>>    itself, and there are no retransmissions at the STUN protocol level.
>>    However, for a request/response transaction, if the client has not
>>    received a response by Ti seconds after it sent the SYN to establish
>>    the connection, it considers the transaction to have timed out.
>
>
>However the HTO timer is for transaction pacing and is roughly what one
>successful connectivity check should take (2*RTT).
>
>Therefore these are two different things and I don't think it make sense
>to mention Ti here at all. I suggest we remove the note completely.
>
>
>Cheers,
>Ari (hat off)
>
>> On 27 Feb 2018, at 2.25, Nils Ohlmeier <[email-masked]> wrote:
>> 
>> Yes you are right. Somehow I managed to read Christer¹s Note the
>>opposite way of what I now think he intends to point out.
>> 
>> Sorry for the confusion.
>> 
>>   Nils
>> 
>> 
>>> On Feb 26, 2018, at 15:15, Black, David <[email-masked]> wrote:
>>> 
>>> Isn¹t it the other way around  ICE HTO is much shorter than STUN or
>>>TURN Ti?
>>>  
>>> Thanks, --David
>>>  
>>> From: Nils Ohlmeier [mailto:[email-masked]]
>>> Sent: Monday, February 26, 2018 6:11 PM
>>> To: Christer Holmberg <[email-masked]>
>>> Cc: Black, David <[email-masked]>; [email-masked];
>>>[email-masked]; [email-masked]; [email-masked]
>>> Subject: Re: [Ice] 5245bis: STUN/TURN transaction timeout timer
>>>  
>>>  
>>> On Feb 26, 2018, at 07:48, Christer Holmberg
>>><[email-masked]> wrote:
>>>  
>>> Maybe adding the following note to the existing Timer HTO definition:
>>>  
>>> Timer HTO:  The timeout timer for a given STUN or TURN transaction.
>>>  
>>>   ³NOTE: When STUN and TURN are used with ICE, timer HTO is used
>>>instead of timer Ti [RFC5389] as transaction timeout timer.²
>>>  
>>> My initial thought was: yes sounds good.
>>>  
>>> But one of the side effects know from real world deployments is that
>>>results in the end-of-candidates indication coming in after a long time
>>>if one of the STUN or TURN servers is not reachable.
>>> I don¹t want to make this a last minute change, but your indication
>>>that Ti explicitly got made shorter made me wonder if everyone in WG is
>>>aware of this usage of the long HTO value.
>>>  
>>> Best
>>>   Nils Ohlmeier
>>> 
>>> 
>>>  
>>> Regards,
>>>  
>>> Christer
>>>  
>>> From: Black, David [mailto:[email-masked]]
>>> Sent: 26 February 2018 16:54
>>> To: Christer Holmberg <[email-masked]>;[email-masked];
>>>[email-masked]; [email-masked]
>>> Cc: [email-masked]; Black, David <[email-masked]>
>>> Subject: RE: 5245bis: STUN/TURN transaction timeout timer
>>>  
>>> That would be a fine thing to do, Thanks, --David
>>>  
>>> From: Christer Holmberg [mailto:[email-masked]]
>>> Sent: Monday, February 26, 2018 9:22 AM
>>> To: Black, David <[email-masked]>; [email-masked];
>>>[email-masked]; [email-masked]
>>> Cc: [email-masked]
>>> Subject: Re: 5245bis: STUN/TURN transaction timeout timer
>>>  
>>> Hi,
>>>  
>>> >> But, still, is there a reason we couldn¹t use ŒTi¹ also in 5245bis,
>>>and point out the big value difference when used with ICE?
>>> > 
>>> >Given the nearly 2-orders-of-magnitude difference in the time
>>>periods, I¹d be concerned that using the same name risks leaving an
>>>incorrect impression on an implementer who
>>> >is familiar with one protocol, but new to the other.   Different
>>>names may also improve clarity in other documents that describe how
>>>STUN and ICE work together.
>>>  
>>> Fair enough. But, should we then point out that Ti isn¹t used with ICE?
>>>  
>>> Regards,
>>>  
>>> Christer
>>>  
>>>  
>>>  
>>> From: Christer Holmberg [mailto:[email-masked]]
>>> Sent: Sunday, February 25, 2018 8:00 AM
>>> To: [email-masked]; [email-masked];
>>>[email-masked]
>>> Cc: Black, David <[email-masked]>; [email-masked]
>>> Subject: 5245bis: STUN/TURN transaction timeout timer
>>>  
>>> Hi,
>>>  
>>> In draft-5245bis, the name of the STUN/TURN transaction timeout timer
>>>is ŒHTO¹.
>>>  
>>> As part of the IESG review, I have been asked what the ŒH¹ stands for.
>>>After some digging in the mail archives (2016-09-14), I figured out it
>>>stands for ³handshake²:
>>>  
>>> https://www.ietf.org/mail-archive/web/ice/current/msg00378.html
>>>  
>>>       ³2.  A timeout for request packets, call it handshake timeout or
>>>HTO which SHOULD be 2*RTT if the RTT is known and 500ms otherwise.²
>>>  
>>> Now, in RFC 5389, the transaction timeout timer is called ŒTi¹.
>>>However, the default value for that SHOULD be 39,5 seconds  which is
>>>quite different from 500ms.
>>>  
>>> But, still, is there a reason we couldn¹t use ŒTi¹ also in 5245bis,
>>>and point out the big value difference when used with ICE?
>>>  
>>> Regards,
>>>  
>>> Christer
>>> _______________________________________________
>>> Ice mailing list
>>> [email-masked]
>>> https://www.ietf.org/mailman/listinfo/ice
>> 
>

---

From: Christer Holmberg <[email-masked]>
Date: Thu, 1 Mar 2018 08:52:10 +0000

…so, my suggestion would be to move the text about HTO etc to Appendix
B.2, and only keep the 3 first paragraphs in Section 14.2.

Regards,

Christer

On 01/03/18 10:49, "Christer Holmberg" <[email-masked]>
wrote:

>>>> >> But, still, is there a reason we couldn¹t use Ti¹ also in 5245bis,
>>>>is HTO¹.
>>>> As part of the IESG review, I have been asked what the H¹ stands for.
>>>> Now, in RFC 5389, the transaction timeout timer is called Ti¹.
>>>> But, still, is there a reason we couldn¹t use Ti¹ also in 5245bis,

---

From: Christer Holmberg <[email-masked]>
Date: Fri, 2 Mar 2018 13:12:34 +0000

Hi,

I have created a pull request that moves the
thinking-behind-global-pacing-value-of-5ms text to Appendix B.

https://github.com/ice-wg/rfc5245bis/pull/63

Regards,

Christer