Subject: [Ice] I-D Action: draft-ietf-ice-trickle-06.txt

From: [email-masked]
Date: Wed, 22 Feb 2017 13:05:43 -0800

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Interactive Connectivity Establishment of the IETF.

        Title           : Trickle ICE: Incremental Provisioning of Candidates for the Interactive Connectivity Establishment (ICE) Protocol
        Authors         : Emil Ivov
                          Eric Rescorla
                          Justin Uberti
                          Peter Saint-Andre
	Filename        : draft-ietf-ice-trickle-06.txt
	Pages           : 28
	Date            : 2017-02-22

Abstract:
   This document describes "Trickle ICE", an extension to the
   Interactive Connectivity Establishment (ICE) protocol that enables
   ICE agents to send and receive candidates incrementally rather than
   exchanging complete lists.  With such incremental provisioning, ICE
   agents can begin connectivity checks while they are still gathering
   candidates and considerably shorten the time necessary for ICE
   processing to complete.

The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-ice-trickle/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-ice-trickle-06

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-ice-trickle-06

Please note that it may take a couple of minutes from the time of submission
until the htmlized version and diff are available at tools.ietf.org.

Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/

---

From: Thomas Stach <[email-masked]>
Date: Mon, 27 Feb 2017 10:13:08 +0100

Hi,

I'm a bit confused about the definition of an ICE Generation and how it 
is used in Section 14

    Generation:  The complete set of candidates sent within an ICE
       negotiation session.

Section 14 and the definition of Half/Full Trickle then uses terms like
"first generation"
"complete generation",
"the responder can respond with an incomplete generation of candidates",
"full generation"

This seems to imply that the generation is not necessarily the complete set of candidates,
but could grow during aICE Negotiation Session until end-of-candidates is signalled.
So the generation rather seems to be the extensible set of currently known/exchanged candidates.

It is also not clear to me if the candidates sent by the ICE initiator and the ICE responder
belong to  different generations or if the generation is the union of both candidate sets.

Could you please clarify?

Regards
Thomas

On 2017-02-22 22:05, [email-masked] wrote:
> _______________________________________________
> Ice mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/ice
>

---

From: Peter Saint-Andre <[email-masked]>
Date: Mon, 27 Feb 2017 14:53:33 -0700

> I'm a bit confused about the definition of an ICE Generation and how it

To be clear for folks on the list, this is in reference to the trickle
draft.

> Section 14 and the definition of Half/Full Trickle then uses terms like

For half trickle purposes, I think it would be best to use the phrase
"full generation" or even "complete set of candidates". That is: under
half trickle, in the initial ICE description the initiator sends all the
candidates it might possibly send.

> This seems to imply that the generation is not necessarily the complete

The generation is as defined above: the complete set of candidates sent
within an ICE negotiation session. It would be better here to use the
phrase "incomplete set of candidates".

> known/exchanged candidates.

No, the generation is everything sent before an ICE restart (if any). In
trickle the set can grow over time, whereas in regular ICE it can't.

> belong to  different generations or if the generation is the union of

It is the union.

Peter

---

From: Taylor Brandstetter <[email-masked]>
Date: Mon, 27 Feb 2017 13:55:52 -0800

Another way of looking at it is that a given generation is identified by a
local/remote ufrag pair, which will change on ICE restart.

---

From: Peter Saint-Andre <[email-masked]>
Date: Mon, 27 Feb 2017 14:57:55 -0700

Exactly. Would it help to describe it that way or at least note the
connection?

On 2/27/17 2:55 PM, Taylor Brandstetter wrote:
> Another way of looking at it is that a given generation is identified by
> a local/remote ufrag pair, which will change on ICE restart.
> 
> On Mon, Feb 27, 2017 at 1:53 PM, Peter Saint-Andre <[email-masked]
> <mailto:[email-masked]>> wrote:
> 
>     [email-masked] <mailto:[email-masked]>
>     <https://www.ietf.org/mailman/listinfo/ice>
> 
>

---

From: Taylor Brandstetter <[email-masked]>
Date: Mon, 27 Feb 2017 14:38:57 -0800

Noting the connection sounds good.

On Mon, Feb 27, 2017 at 1:57 PM, Peter Saint-Andre <[email-masked]>
wrote:

> >     > This seems to imply that the generation is not necessarily the
> complete
> >     > set of candidates,
> >
> >     > but could grow during aICE Negotiation Session until
> end-of-candidates
> >     > is signalled.
> >     > So the generation rather seems to be the extensible set of
> currently
> >     > known/exchanged candidates.
> >
> >     > It is also not clear to me if the candidates sent by the ICE
> initiator
> >     > and the ICE responder
> >     > belong to  different generations or if the generation is the union
> of
> >     > both candidate sets.
> >
> >     It is the union.
> >
> >     Peter
> >
> >

---

From: Peter Saint-Andre <[email-masked]>
Date: Mon, 27 Feb 2017 15:42:31 -0700

I'm going to quickly submit -07 with relevant adjustments.

On 2/27/17 3:38 PM, Taylor Brandstetter wrote:
> On Mon, Feb 27, 2017 at 1:57 PM, Peter Saint-Andre <[email-masked]
>     > On Mon, Feb 27, 2017 at 1:53 PM, Peter Saint-Andre <[email-masked] <mailto:[email-masked]>
>     > <mailto:[email-masked] <mailto:[email-masked]>>> wrote:
>     >
>     >     > This seems to imply that the generation is not necessarily
>     the complete
>     >     > set of candidates,
>     >
>     >     > belong to  different generations or if the generation is the
>     union of
>     >     > both candidate sets.
>     >
>     >     It is the union.
>     >
>     >     Peter
>     >
>     >
>     >     [email-masked] <mailto:[email-masked]> <mailto:[email-masked]
>     <mailto:[email-masked]>>
>     >     <https://www.ietf.org/mailman/listinfo/ice
>     <https://www.ietf.org/mailman/listinfo/ice>>
>     >
>     >
> 
>

---

From: Thomas Stach <[email-masked]>
Date: Tue, 28 Feb 2017 07:43:06 +0100

Peter,

thanks for the reply.
More inline

> candidates it might possibly send.
OK.
Since I learned from below that the generation is the union, the term 
"set of candidates" seems to be the better choice when it comes to 
describing what the initiator/responder sends.
> phrase "incomplete set of candidates".
Agree
> trickle the set can grow over time, whereas in regular ICE it can't.
Understood
>> belong to  different generations or if the generation is the union of
Thanks for clarifying.
Thomas

---

From: Thomas Stach <[email-masked]>
Date: Tue, 28 Feb 2017 07:43:30 +0100

+1

On 2017-02-27 23:38, Taylor Brandstetter wrote:
>     > On Mon, Feb 27, 2017 at 1:53 PM, Peter Saint-Andre
>     <[email-masked] <mailto:[email-masked]>
>     >     > It is also not clear to me if the candidates sent by the
>     ICE initiator
>     >     > and the ICE responder
>     >     > belong to  different generations or if the generation is
>     the union of
>     >     > both candidate sets.
>     >
>     >     It is the union.
>     >
>     >     Peter
>     >
>     >

---

From: Peter Saint-Andre <[email-masked]>
Date: Tue, 28 Feb 2017 13:58:23 -0700

Hi Thomas, please check the diff to see if I've addressed your concerns:

https://tools.ietf.org/rfcdiff?url2=draft-ietf-ice-trickle-07.txt

Thanks!

Peter

---

From: Thomas Stach <[email-masked]>
Date: Wed, 1 Mar 2017 08:01:57 +0100

Peter,

this addresses my comments.

"something less than a full generation" is probably not the most elegant 
term, but it does the job.

Thanks

Thomas