Re: [Ice] Trickle ICE review

Peter Saint-Andre <stpeter@stpeter.im> Sun, 09 April 2017 22:05 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 0E73C128CDB for <ice@ietfa.amsl.com>; Sun, 9 Apr 2017 15:05:11 -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=juygyzmd; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=QhXAOBDD
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 L24wxpuakw2S for <ice@ietfa.amsl.com>; Sun, 9 Apr 2017 15:05:09 -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 9FA1B126C7B for <ice@ietf.org>; Sun, 9 Apr 2017 15:05:09 -0700 (PDT)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id E7AC520AAB; Sun, 9 Apr 2017 18:05:08 -0400 (EDT)
Received: from frontend1 ([10.202.2.160]) by compute2.internal (MEProxy); Sun, 09 Apr 2017 18:05:08 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=stpeter.im; h=cc :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=WkuTWsZKmWNIDX7AOa UT5BQKtjukcUsjA2ebvQfsEEs=; b=juygyzmdWy8NS9mYszPJRLj9HjQC1i1Vdl haLWAy/WXlm5W7sfsAGlqG3QadMS7tqv6akSvAdk8Ow0WZTBfu2RnQXSrc4UOih1 EMbh8w4J5t8Uzub6CpouOA5SBysI1GLe41g4xO/B6RIhRiP6KFAqxiaoY0MA3xaw Ery+sbanqTr35o62Oi6aTMvPjnINxoE80Zq/1MF27vQYrBYY1UNhiovd6J8UzdFC ofSUClX01VngmQP1yhzjWgnbBPuyH/IWgZ8yXM9zSmRr9oImhHdv5uuwLByr1fAI 0MDClHxu9mp0eNzshIAmEqm1E7chw+7+FR53P911ur9DTBjQAN/A==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc: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=WkuTWsZKmWNIDX7AOaUT5BQKtjukcUsjA2ebvQfsEEs=; b=QhXAOBDD Zh0xbn8IlkdoUa0PUtL7SfCQ94g3Qc27XEuACTzgaa/m2ZYNAbJGyritzTwSnMqL mpLsc5tEVKZ4h+a0GSYJ+qFrnnMSWVfjo1bYgobpHNICetibLgmFI2riXDgvv37R TpPnJQwjGm2C0CYqdCHEXqItS/RofkdzvtsiRQCg7DFxJto0fu+natnVvtMXR1t4 YymVFrFrmkz2TzNNTW90lR1xMU7av+27USvUvyyNlDPk1BuiQGil7KvY5jKXBdzh RMgniRd8x5b7ZLjICqPxv8h7tsdjeDhTdYMC/SHCP74Sgn0G5rnsVz+cReU0sidA Dv11HaD2to7Dhg==
X-ME-Sender: <xms:FLDqWEzVyQ36HlkPsA7pmIdRfjuxoEb-9DlwpNCXOuCn-vxXZmBnXQ>
X-Sasl-enc: wCP8J8U/cUjzzC087sQ1DUCav8oRa3jaax4CTy/pCUK6 1491775508
Received: from aither.local (unknown [76.25.4.24]) by mail.messagingengine.com (Postfix) with ESMTPA id 68DDF7E2B1; Sun, 9 Apr 2017 18:05:08 -0400 (EDT)
To: Taylor Brandstetter <deadbeef@google.com>
References: <CAJrXDUHzNT3v5oMPBQu5_OsXwonY7cogDQgTt5QPxN0=6DWQkQ@mail.gmail.com> <7ebb3254-a882-6e05-3159-0ec56614831b@stpeter.im> <CAJrXDUEi0n7P5mDuuLGj285AmQqr9HDFUPGLtLnU+BuJpws6Tw@mail.gmail.com> <7e9e8188-2add-0497-e94f-14ee41afe02d@stpeter.im> <BFB0CDEF-4572-41D5-A5D2-A5D210A1E175@ericsson.com> <7594FB04B1934943A5C02806D1A2204B4CB330A0@ESESSMB109.ericsson.se> <CAJrXDUGy2VUKe33vLm-QOrQ+OSV+nFCKTsHXPt_VZ8sqrdpX0Q@mail.gmail.com> <7594FB04B1934943A5C02806D1A2204B4CB378CD@ESESSMB109.ericsson.se> <CAJrXDUFBO9Q4aHMjMr-0L505BMWPNSPkZ+sPGSNGu-JAXz2qww@mail.gmail.com> <0308af65-2cc9-c793-946d-6157d71db069@stpeter.im> <7594FB04B1934943A5C02806D1A2204B4CB38EBB@ESESSMB109.ericsson.se> <CAK35n0ZXaq0vj0xC0fS0fTKLFq+bogfwpr9-nwtXvztW+g7jYQ@mail.gmail.com>
Cc: "ice@ietf.org" <ice@ietf.org>
From: Peter Saint-Andre <stpeter@stpeter.im>
Message-ID: <ca9a2dff-e2ca-ea15-45c8-acca3e4837ec@stpeter.im>
Date: Sun, 09 Apr 2017 16:05:01 -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: <CAK35n0ZXaq0vj0xC0fS0fTKLFq+bogfwpr9-nwtXvztW+g7jYQ@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/ice/syV3fCWsRWCNki0lzNS817Yt8Ac>
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, 09 Apr 2017 22:05:11 -0000

On 3/30/17 9:45 PM, Taylor Brandstetter wrote:
>     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?
> 
> 
> Sorry I'm late at responding to this, but I assumed the main intention
> here was that candidates are paired in the same order that they're
> trickled, because that was necessary for the unfreezing logic to work.
> For example: suppose an endpoint already has remote candidates, and then
> gathers RTP and RTCP candidates. It pairs them in the order "RTCP, RTP"
> (maybe the STUN response for the RTCP candidate came back first),
> resulting in an RTCP pair being unfrozen first, but they're trickled in
> the order "RTP, RTCP" (as a result of the restrictions of section 16),
> resulting in the remote endpoint unfreezing the RTP pair first.
> 
> Before, this would have resulted in things failing (as I recall). But
> this isn't as much of a problem now; I'm looking at the current section
> 8.1.1, and it would result in the local endpoint just unfreezing
> /both/ pairs, so things would be able to proceed.
> 
> But it still could result in extra pairs being unfrozen; is that
> acceptable? If not, I'd suggest moving this note to section 16, and
> making it more clear what the intention is. For example: "Candidates
> MUST be paired, following the procedures in section 8.1.1, in the same
> order that they're trickled."

WFM.

> An important related question: There used to be a line that said "When
> trickle updates are sent, each candidate MUST be delivered to the
> receiving Trickle ICE implementation ... in the same order that they
> were sent." But the "in the same order that they were sent" part has
> been removed. Do we no longer require that the signaling mechanism
> preserves ordering? If so, Section 16 doesn't make sense any more; it
> requires a specific order of candidate trickling, but that can't be
> guaranteed if the signaling mechanism doesn't preserve ordering. All my
> ramblings above would be moot as well.

This was changed between -04 (September 206) and -05 (January 2017). We
received quite a bit of feedback in that time period (e.g., Bernard
Aboba did a thorough review) and I would need to look at the specifics
more carefully to determine why we removed the clause "and in the same
order that they were sent". However, I think it's a reasonable
requirement to place on a signaling protocol, so I'd be fine with
re-adding in Section 8 ("Discovering and Sending Additional Local
Candidates") and mentioning it in Section 15 ("Requirements for
Signaling Protocols").

Peter