Re: [Ice] Trickle ICE review

Peter Saint-Andre <stpeter@stpeter.im> Sun, 26 March 2017 18:48 UTC

Return-Path: <stpeter@stpeter.im>
X-Original-To: ice@ietfa.amsl.com
Delivered-To: ice@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A9D89129408 for <ice@ietfa.amsl.com>; Sun, 26 Mar 2017 11:48:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.721
X-Spam-Level:
X-Spam-Status: No, score=-2.721 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=stpeter.im header.b=SMhKZppp; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=Yrp63sL0
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TWoqwFcjUQbY for <ice@ietfa.amsl.com>; Sun, 26 Mar 2017 11:48:50 -0700 (PDT)
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A0745129440 for <ice@ietf.org>; Sun, 26 Mar 2017 11:48:48 -0700 (PDT)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id 1A24920ABD; Sun, 26 Mar 2017 14:48:48 -0400 (EDT)
Received: from frontend2 ([10.202.2.161]) by compute2.internal (MEProxy); Sun, 26 Mar 2017 14:48:48 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=stpeter.im; h= content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-sender :x-me-sender:x-sasl-enc:x-sasl-enc; s=fm1; bh=+faaOoYPXNUtdoslb1 aZ4zdpmGCfOWEew9y6ySYBERQ=; b=SMhKZppp2zahBCIwifBe3nqLG9nHa49GrE fHocC8ynTy7arHtllt/MRyn0CjdtbVLOACf05mcI3jKC0HqNiTMi8qjxfEt2jaQL sT67UGB6XUpCS5EUNKjF+CAoCrggUmfPUhShf6YDAFvTWoI/zkQFkv+XbyWPH/iz qTtVaQm5WjwQ04IObRCPxgch7Now5HvsnRRgX1GmCHkvWi4d0RCx43NOTgqlX2/t RSmaP3dUSFlqhfdb2EeVdu6Dukem3B76rrDARqDc4qEDVySR2dwImVflY09jEpor I7QsMvuOmBk5ylJ1wIAwL1AJGHKOn1CwfHCAtanDfzBzNPz4LG5Q==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-sender:x-me-sender:x-sasl-enc:x-sasl-enc; s= fm1; bh=+faaOoYPXNUtdoslb1aZ4zdpmGCfOWEew9y6ySYBERQ=; b=Yrp63sL0 yqsmtXKmyjUjMDfJVsy+NUCj8SkqF1nlm2153fbsCpwrHlCBUv/l2JmmhMjSTalX 6NJEuaKl824fojxBbnNFZCrdRgqEVWjpuUuk65tw5GyqJsVfiEwj1BRGG6lKbNMQ UABFhI8Zi6/5CmvOVvNAN8b1xFAn4z9NdJfqvLxbr4UNgNm6JC4rFz5dwonOxGxj w+uY2szTz6QtfXayL9Km1X1NkAtB6CVy7LtAACiFBBGrRDZ0NO+wNzF+tBIUQAPr 0DMTWh+qjGyPDvQeIm/7BYVVoNIp+YyqjbYqVirJ0uu0Qn6Ww8H+ZxDJ1ThBsrgw YVOsM0QFmu68/Q==
X-ME-Sender: <xms:EA3YWAqfwSsj6xESCyzLpeLW_6u8kHXcYUGeQmD1_lp2cTO590-baw>
X-Sasl-enc: K6ZaRCF+wp2RUdtihZqyv6hTfga3aznb7ounsG25kAHY 1490554127
Received: from aither.local (unknown [76.25.4.24]) by mail.messagingengine.com (Postfix) with ESMTPA id 9493B24614; Sun, 26 Mar 2017 14:48:47 -0400 (EDT)
To: Peter Thatcher <pthatcher@google.com>, "ice@ietf.org" <ice@ietf.org>
References: <CAJrXDUHzNT3v5oMPBQu5_OsXwonY7cogDQgTt5QPxN0=6DWQkQ@mail.gmail.com>
From: Peter Saint-Andre <stpeter@stpeter.im>
Message-ID: <7ebb3254-a882-6e05-3159-0ec56614831b@stpeter.im>
Date: Sun, 26 Mar 2017 12:48:46 -0600
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.8.0
MIME-Version: 1.0
In-Reply-To: <CAJrXDUHzNT3v5oMPBQu5_OsXwonY7cogDQgTt5QPxN0=6DWQkQ@mail.gmail.com>
Content-Type: text/plain; charset="windows-1252"
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/ice/zhhVYun3u_4ZNDIfNXtmB5dkkAA>
Subject: Re: [Ice] Trickle ICE review
X-BeenThere: ice@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "Interactive Connectivity Establishment \(ICE\)" <ice.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ice>, <mailto:ice-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ice/>
List-Post: <mailto:ice@ietf.org>
List-Help: <mailto:ice-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ice>, <mailto:ice-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 26 Mar 2017 18:48:52 -0000

On 3/25/17 9:09 PM, Peter Thatcher wrote:
> Ari and I reviewed the latest Trickle ICE draft in preparation for going
> to WGLC and found a few more things worth considering fixing:
> 
> - Some minor editorial issues that have separately been sent to the authors.

Received.

> - The name "ICE negotiation session" with definition of "A virtual
> session ..." is confusing.   I understand that we need a word for
> "period between restarts" and "period across restarts".  But what does
> "virtual" mean in this context?  And what does "negotiation" mean in
> "ICE negotiation session"?  Here's a possible suggestion: call it
> "single-exchange session".   A single-exchange session is the period
> from a single exchange of ICE description until the next exchange.  A
> "normal" ICE session is basically a multi-exchange session.

This might be clearer:

   ICE Session:  All of the ICE-related interactions between ICE agents
      up until an ICE restart (if any).

However, that definition probably belongs in 5245bis. The term as used
in the Trickle specification is not limited to interactions between
Trickle ICE agents.

> - In the phrase " A Trickle ICE agent MUST NOT pair a local candidate
> until it has been trickled to the remote agent.", what does "has been
> trickled" mean?  That it's been sent on the network?  When it's been
> acked by the remote side?  When it is in queue such that it will later
> be put on the network?  It seems really hard to pin down an appropriate
> time when something "has been trickled". 

In the interest of startup time, I'd say that a candidate has been
trickled when it has been sent. Waiting for acks might slow things down.

> And then in a WebRTC context,
> the app might never signal a candidate (in a client->server use case). 
> What then?  

I don't think we had considered that case.

> And it's not clear to me why this is even useful.   Can we
> just remove it?  Or is there something important here?

It doesn't seem critically important to me, but I might be missing
something.

> - The paragraph "Note: So that both agents will have the same view of
> candidate priorities, it is important to replacing existing pairs with
> seemingly equivalent higher-priority ones and to always update
> peer-reflexive candidates if equivalent alternatives are received
> through signaling." seems duplicate with other parts in the doc.  Do we
> even need this paragraph?

You're right, these guidelines are indeed mentioned elsewhere. Let's
remove them here.

> - "Either agent MAY generate a subsequent ICE description at any time
> allowed by RFC3264".  This causes ICE to be dependent on SDP, which we
> were trying to avoid.  Was this just one place where we missed removing
> a dependency on SDP?  I would suggest removing it or replacing it with
> the phrase "Either agent MAY generate subsequent ICE descriptions at any
> time", unless there is a clear time when an ICE agent cannot (and I
> can't think of one). 

This seems to be a stray mention of RFC 3264 that was not removed in
earlier editing. Perhaps "Either agent MAY generate a subsequent ICE
description at any time allowed by the signaling protocol in use" (we
don't want to override any other protocol's rules here).

> As soon as these are resolved, we believe we can go to WGLC.

Great. Thanks for the review.

Peter