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

From: Christer Holmberg <[email-masked]>
Date: Sun, 25 Feb 2018 12:59:59 +0000

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

---

From: "Black, David" <[email-masked]>
Date: Mon, 26 Feb 2018 14:13:55 +0000

> 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.

Thanks, --David

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,

Regards,

Christer

---

From: Christer Holmberg <[email-masked]>
Date: Mon, 26 Feb 2018 14:22:16 +0000

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]<mailto:[email-masked]>; [email-masked]<mailto:[email-masked]>; [email-masked]<mailto:[email-masked]>
Cc: Black, David <[email-masked]<mailto:[email-masked]>>; [email-masked]<mailto:[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”:

      “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

---

From: "Black, David" <[email-masked]>
Date: Mon, 26 Feb 2018 14:53:32 +0000

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,

>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

Fair enough. But, should we then point out that Ti isn't used with ICE?

Regards,

Christer

Hi,

Regards,

Christer

---

From: Christer Holmberg <[email-masked]>
Date: Mon, 26 Feb 2018 15:48:24 +0000

Hi,

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."

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

From: Christer Holmberg [mailto:[email-masked]]
Sent: Monday, February 26, 2018 9:22 AM
To: Black, David <[email-masked]<mailto:[email-masked]>>; [email-masked]<mailto:[email-masked]>; [email-masked]<mailto:[email-masked]>; [email-masked]<mailto:[email-masked]>
Cc: [email-masked]<mailto:[email-masked]>
Subject: Re: 5245bis: STUN/TURN transaction timeout timer

Hi,

Regards,

Christer

Hi,

Regards,

Christer

---

From: Nils Ohlmeier <[email-masked]>
Date: Mon, 26 Feb 2018 15:10:55 -0800

> On Feb 26, 2018, at 07:48, Christer Holmberg <[email-masked]> wrote:
> 
>   “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

>   <>
> From: Christer Holmberg [mailto:[email-masked] <mailto:[email-masked]>]
> To: Black, David <[email-masked] <mailto:[email-masked]>>; [email-masked] <mailto:[email-masked]>; [email-masked] <mailto:[email-masked]>; [email-masked] <mailto:[email-masked]>
> Cc: [email-masked] <mailto:[email-masked]>
> From: Christer Holmberg [mailto:[email-masked] <mailto:[email-masked]>]
> To: [email-masked] <mailto:[email-masked]>; [email-masked] <mailto:[email-masked]>; [email-masked] <mailto:[email-masked]>
> Cc: Black, David <[email-masked] <mailto:[email-masked]>>; [email-masked] <mailto:[email-masked]>
> https://www.ietf.org/mail-archive/web/ice/current/msg00378.html <https://www.ietf.org/mail-archive/web/ice/current/msg00378.html>
> 
> _______________________________________________
> Ice mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/ice

---

From: "Black, David" <[email-masked]>
Date: Mon, 26 Feb 2018 23:15:33 +0000

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]<mailto:[email-masked]>> wrote:

Best
  Nils Ohlmeier

Regards,

Christer

From: Black, David [mailto:[email-masked]]
Sent: 26 February 2018 16:54
To: Christer Holmberg <[email-masked]<mailto:[email-masked]>>; [email-masked]<mailto:[email-masked]>; [email-masked]<mailto:[email-masked]>; [email-masked]<mailto:[email-masked]>
Cc: [email-masked]<mailto:[email-masked]>; Black, David <[email-masked]<mailto:[email-masked]>>
Subject: RE: 5245bis: STUN/TURN transaction timeout timer

Hi,

Regards,

Christer

Hi,

Regards,

Christer
_______________________________________________
Ice mailing list
[email-masked]<mailto:[email-masked]>
https://www.ietf.org/mailman/listinfo/ice

---

From: Nils Ohlmeier <[email-masked]>
Date: Mon, 26 Feb 2018 16:25:13 -0800

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
> 
> On Feb 26, 2018, at 07:48, Christer Holmberg <[email-masked] <mailto:[email-masked]>> wrote:
> 
> From: Black, David [mailto:[email-masked] <mailto:[email-masked]>]
> To: Christer Holmberg <[email-masked] <mailto:[email-masked]>>;[email-masked] <mailto:[email-masked]>; [email-masked] <mailto:[email-masked]>; [email-masked] <mailto:[email-masked]>
> Cc: [email-masked] <mailto:[email-masked]>; Black, David <[email-masked] <mailto:[email-masked]>>
> [email-masked] <mailto:[email-masked]>
> https://www.ietf.org/mailman/listinfo/ice <https://www.ietf.org/mailman/listinfo/ice>

---

From: Ari Keränen <[email-masked]>
Date: Thu, 1 Mar 2018 07:47:31 +0000

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:
> 
>> To: Christer Holmberg <[email-masked]>;[email-masked]; [email-masked]; [email-masked]