Re: [Ice] active / frozen check lists
Taylor Brandstetter <deadbeef@google.com> Mon, 24 July 2017 23:19 UTC
Return-Path: <deadbeef@google.com>
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 9B7DD124E15 for <ice@ietfa.amsl.com>; Mon, 24 Jul 2017 16:19:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.com
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 gGEwj0meqMnh for <ice@ietfa.amsl.com>; Mon, 24 Jul 2017 16:19:05 -0700 (PDT)
Received: from mail-qt0-x233.google.com (mail-qt0-x233.google.com [IPv6:2607:f8b0:400d:c0d::233]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 28D38124C27 for <ice@ietf.org>; Mon, 24 Jul 2017 16:19:05 -0700 (PDT)
Received: by mail-qt0-x233.google.com with SMTP id a18so1667753qta.0 for <ice@ietf.org>; Mon, 24 Jul 2017 16:19:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=tPIFm/kGBHQXxByfIsaoI3FC00uddJHM+6uCT0gmr3w=; b=M2JiFikzAOI8BJL655ZOACWIGSnzDBpDgwS0uTAX26VzQWvVv7jaj9VJEyidEk+TO3 k4FAP3MSp1198J0ECW/YrigGaMd6guQZthdY42gQDntgh5F6U8zUGyH+hIG9Qf88uW0G pAGxTcO0T/gq2w+Yauhz3N6rsYoG37ta+53zpSP825z1qVs89ve95f0/9M9OYTly1LaH 3zz3NSI7LgZokSY4VSZBDijVeFtSM/ZMc2o1ibIknhcDmm26kYlN8xDa1Y2thW01DBgP 51T1LF8SdOW/3zY7esUa8sUV2ttEiXAV3vb0CzuQcD1UqAnev5oWKXRzMNZ6FK8YTEOW cIEA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=tPIFm/kGBHQXxByfIsaoI3FC00uddJHM+6uCT0gmr3w=; b=KkcudLiLyBjkq5li9mBAor+YeRnsJatCUrc/OfDBzogbMFt0XBWD577Zj+aw48t/2I LeAvEl0GJZQrMsof9FUgpqfofwj4sDExmb1f48lroHDD6FCjMie+bkVzw6zUp2SVWyyY 7mFR1qq/VjQ5S+v+6P+9sE7l3QDWB0I1n9gII5HNkolDLYYpDy1AR21wpCPMO71KaAeS WiNOrJFu169OmkY00iNc3Y2ytbkiWOr94NginO3ObG+pa216KAC+ZN1KjKj3hqtwE8pN Y92ZCK3e8c8qdthZFdXDjALpFOK1p8Cj8eHMNv2T9WFNzBsWTM5Apq3bJRfQkAfQiA7K Z15g==
X-Gm-Message-State: AIVw110bABipeRZqBl+VubNHvz4Tx7CvNrtO4dptqaD6PqT3Ym62navH Lh5zn5/VjbEOhMkr/6AML6pO/NqkeByS
X-Received: by 10.237.53.44 with SMTP id a41mr12313514qte.231.1500938344177; Mon, 24 Jul 2017 16:19:04 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.12.163.5 with HTTP; Mon, 24 Jul 2017 16:19:03 -0700 (PDT)
In-Reply-To: <f2b3b001-2e2a-54e0-3eb8-dccc2d1d80bb@stpeter.im>
References: <703694f1-6058-b2b7-9b7b-4df57d63ae4f@stpeter.im> <7594FB04B1934943A5C02806D1A2204B4CC97EC6@ESESSMB109.ericsson.se> <f2b3b001-2e2a-54e0-3eb8-dccc2d1d80bb@stpeter.im>
From: Taylor Brandstetter <deadbeef@google.com>
Date: Mon, 24 Jul 2017 16:19:03 -0700
Message-ID: <CAK35n0ZxNNikneaJ5jPmgp-7dy-0SP+QFp8-Z=Mc=2rXfTNwpg@mail.gmail.com>
To: Peter Saint-Andre <stpeter@stpeter.im>
Cc: Christer Holmberg <christer.holmberg@ericsson.com>, "ice@ietf.org" <ice@ietf.org>
Content-Type: multipart/alternative; boundary="001a11c00fd8d620e30555187088"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ice/b-fUHyhYNCk8KQM-gj3q6To9_j0>
Subject: Re: [Ice] active / frozen check lists
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: Mon, 24 Jul 2017 23:19:07 -0000
Trickle ICE doesn't need to use the "active"/"frozen" state any more. I brought this up in my review of draft-08: https://mailarchive.ietf.org/arch/msg/ice/eiAyekLr4aTvFoDzUGhK3gyIsmY Also, the reference to section 5.1.4 is just slightly outdated; section 5.1.4 previously referred to the "active" state, and now it doesn't. So I don't think we have a problem. I agree with Christer's points. On Mon, Jul 24, 2017 at 9:27 AM, Peter Saint-Andre <stpeter@stpeter.im> wrote: > On 7/24/17 9:11 AM, Christer Holmberg wrote: > > Hi Peter, > > > > Thanks for your input! Please see inline. > > > >> Apparently it was decided at IETF 99 to remove the terms "active > >> check list" and "frozen check list" from the core spec. These terms > >> are used in the trickle spec. For example: > >> > >> ### > >> > >> A Trickle ICE agent initially considers all check lists to be > >> frozen. It then inspects the first check list and attempts to > >> unfreeze all candidate pairs it has received so far that belong to > >> the first component on the first media stream (i.e., the first > >> media stream that was reported to the ICE implementation from the > >> using application). If that first component of the first media > >> stream does not contain candidates for one or more of the currently > >> known pair foundations, and if candidate pairs already exist for > >> that foundation in one of the following components or media > >> streams, then the agent unfreezes the first of those candidate > >> pairs. > > > > How would this change if we removed "frozen check list"? > > We'd probably need to create a circumlocation such as "considers all > candidate pairs in all check lists to be frozen". > > > We obviously would have to remove the term also from trickle, but > > would it affect the procedures? > > I don't think so, just the terminology and text. > > > ### > > > >> The ICE specification [rfc5245bis], Section 5.1.4, requires that an > >> agent will terminate the timer for a triggered check in relation to > >> an active check list once the agent has exhausted all frozen pairs > >> in the check list. This will not work with Trickle ICE, because > >> more pairs will be added to the check list incrementally. > > > > Do you refer to bullet 4) in section 5.1.4.2? > > > > It is true that the non-trickle agent will eventually cease checking > > the check lists, but what does that have to do with the > > "active/frozen check list" terms? > > Not much, I think. Later this week I will look at the text in detail. > > > ### > > > >> When a check list is set to Failed as described above, regular ICE > >> requires the agent to update all other check lists, placing one > >> pair from each check list into the Waiting >state - effectively > >> unfreezing all remaining check lists. However, under Trickle ICE > >> other check lists might still be empty at this point (because > >> candidates have not yet been >received), and following only the > >> rules from regular ICE would prevent the agent from unfreezing > >> those check lists (because the state of a check list depends on the > >> state of >the candidate pairs in that check list, but there are > >> none yet). Therefore a Trickle ICE agent needs to monitor whether a > >> check list is active or frozen independently of the >state of the > >> candidate pairs in the check list (since there might not be any > >> pairs yet). With regard to empty check lists, by default a Trickle > >> ICE agent MAY consider an empty >check list to be either active or > >> frozen. When a Trickle ICE agent considers an empty check list to > >> be frozen, during the candidate checking process it SHOULD change > >> the >check list to active if checking of another check list is > >> completely finished (i.e., if every pair in the other check list is > >> either Successful or Failed), if another check list has a >valid > >> candidate pair for all components, or if it adds a candidate pair > >> to the check list (because, in accordance with Section 8.1.1, when > >> inserting a new candidate pair into an >empty check list, the agent > >> sets the pair to a state of Waiting). > > > > Why would an agent need to consider an empty list active or frozen? > > Can't the agent simply put the list in RUNNING state, even if it's > > empty, and whenever Ta triggers for that list the agent will check > > whether there are any candidates, and process them accordingly. > > I will look at this later this week, as well. > > > ### > > > >> If we decide to continue with this approach, we'll need to look > >> more closely at the text in the trickle spec and make the necessary > >> wording changes. > > > > Absolutely. But, based on your input, I don't identity any technical > > changes. Or have I missed them? > > Agreed. > > Peter > > _______________________________________________ > Ice mailing list > Ice@ietf.org > https://www.ietf.org/mailman/listinfo/ice >
- [Ice] active / frozen check lists Peter Saint-Andre
- Re: [Ice] active / frozen check lists Christer Holmberg
- Re: [Ice] active / frozen check lists Peter Saint-Andre
- Re: [Ice] active / frozen check lists Taylor Brandstetter
- Re: [Ice] active / frozen check lists Christer Holmberg