Re: [MMUSIC] Faster ICE by role reversal?

Emil Ivov <emcho@jitsi.org> Sun, 09 November 2014 14:13 UTC

Return-Path: <emcho@sip-communicator.org>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4D2251A1AC2 for <mmusic@ietfa.amsl.com>; Sun, 9 Nov 2014 06:13:02 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.601
X-Spam-Level:
X-Spam-Status: No, score=-2.601 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham
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 UFgIW4jt8hzm for <mmusic@ietfa.amsl.com>; Sun, 9 Nov 2014 06:13:00 -0800 (PST)
Received: from mail-wg0-f53.google.com (mail-wg0-f53.google.com [74.125.82.53]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BEF421A1ABE for <mmusic@ietf.org>; Sun, 9 Nov 2014 06:12:59 -0800 (PST)
Received: by mail-wg0-f53.google.com with SMTP id b13so6963230wgh.12 for <mmusic@ietf.org>; Sun, 09 Nov 2014 06:12:58 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :cc:subject:references:in-reply-to:content-type :content-transfer-encoding; bh=nabnKaExpwAL5GpQyONGBmn6KLa9Moi9+lpgdxv+6Ho=; b=GDhOVgjLdHpmDATLBCcalEp15v5iJsR9weqZs02OOIqA6Pv2ko0QkEVxgNMWsmTE7v YfhVz00aOveKUmm8Ze4w+gciYn2sNtvd3heMzlIJPbqCcXNNOobT2PGSTBMteiNbxR89 U+U4mlteHecvYHf3Rq7y1Bfsthn/hW9wVyS/p6xJzDmOb4UfVI4VE7XX6hVR+xmPjrS/ +eX+IqqcaHGlTLMSFUsor10n7TLWyQDOAz7Vmg7RgQNewfLk4tc1gP+GtYw+ULufwdUE hjVJ7fIbjKcKX9FwwPN33MjoGgipbjG2qN+CN8yxKp4VH9risGf9Uc27bGRrlcIjYxAh Z7yg==
X-Gm-Message-State: ALoCoQlkjo8J4IFQDA78hPSYmss20LFl39XrZYq0jnnOX3XltWd+hAdydL30XKrwd62ETUVtS4az
X-Received: by 10.180.100.129 with SMTP id ey1mr22858328wib.28.1415542378364; Sun, 09 Nov 2014 06:12:58 -0800 (PST)
Received: from [192.168.1.21] (9.6.69.91.rev.sfr.net. [91.69.6.9]) by mx.google.com with ESMTPSA id jw2sm9534656wid.3.2014.11.09.06.12.56 for <multiple recipients> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sun, 09 Nov 2014 06:12:57 -0800 (PST)
Message-ID: <545F7667.9000700@jitsi.org>
Date: Sun, 09 Nov 2014 15:12:55 +0100
From: Emil Ivov <emcho@jitsi.org>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:24.0) Gecko/20100101 Thunderbird/24.6.0
MIME-Version: 1.0
To: Justin Uberti <juberti@google.com>
References: <CABkgnnVrXKz-7M_Qn7pSZBxCJTdQYPDOcEzrEbbv6eYrQs1Dhg@mail.gmail.com> <CABkgnnV+ARP5xC-z=3AshUObUX_m3uisLY6NcsgEZVq-1drU8Q@mail.gmail.com> <DD8DA86E-3C6A-44A7-B4E1-92CC0742369D@vidyo.com> <CAOJ7v-1OpbtEujbp4rZOnmOxXB2hoTfjtn5U_kR5wML5sXD_4Q@mail.gmail.com> <545911E9.3070300@ericsson.com> <CAOJ7v-2ikhh+2Y5avJOjR=86UikOfSo169k3jSvFsU=52o3+zw@mail.gmail.com> <CAOJ7v-1oS999xAd52ANcWfW98Dq7nPJV0=1Z5o9fPigFaT7+1w@mail.gmail.com> <CABkgnnVCpRJUdKn34jsds1Dwe8nOA8uoJw4T35ogQ-LTtyb4Rg@mail.gmail.com> <CAPvvaaKeozeL=M1MvmveR-jkptEcheVewBoV04jS5aN6ghb76A@mail.gmail.com> <CABkgnnURgnkU+CWkCRzo2oKbV-pQnP0eLRZMouSNTWuk8TJ8+w@mail.gmail.com> <CAPvvaa+FKe+9FoegxCByAHj0d9aL2nLz10AK6HjX5Ao9PsgYMw@mail.gmail.com> <CABkgnnXUazQA6TWFDY=DPn6neoPbh5+=oUBW4cYjj_0dV0FaaA@mail.gmail.com> <CAOJ7v-13fyrkhyJQJvuGuWjHRFm9KO=-tQ7KLrFt0DW4U1K=RA@mail.gmail.com> <545EC85E.8000208@jitsi.org> <CAOJ7v-0q3=NMgKz3Shbzra1-Vd91i_JcqSu40Daq02quKzZzHg@mail.gmail.com>
In-Reply-To: <CAOJ7v-0q3=NMgKz3Shbzra1-Vd91i_JcqSu40Daq02quKzZzHg@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
Archived-At: http://mailarchive.ietf.org/arch/msg/mmusic/f56GTtGmyC0ubmqoCGnDjjpE3UE
Cc: Jonathan Lennox <jonathan@vidyo.com>, Ari Keränen <ari.keranen@ericsson.com>, mmusic <mmusic@ietf.org>, Dan Wing <dwing@cisco.com>
Subject: Re: [MMUSIC] Faster ICE by role reversal?
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mmusic/>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 09 Nov 2014 14:13:02 -0000


On 9.11.14, 6:53, Justin Uberti wrote:
>
>
> On Sat, Nov 8, 2014 at 5:50 PM, Emil Ivov <emcho@jitsi.org
> <mailto:emcho@jitsi.org>> wrote:
>
>
>
>     On 8.11.14, 7:08, Justin Uberti wrote:
>
>         Yeah, I'm of the same opinion. If you are going to allow
>         tricking of new
>         candidates, you only have two choices:
>         a) ICE never ends, or
>         b) ICE restart
>
>         But ICE restart invalidates existing candidates,
>
>
>     Existing candidates can very well be part of the new ICE negotiation
>     and if they are confirmed as "still working", no invalidation needs
>     to occur.
>
>     5245 even already mentions this:
>         Consequently, the set of candidates MAY include some,
>         none, or all of the previous candidates for that stream and MAY
>         include a totally new set of candidates gathered as described in
>         Section 4.1.1.
>
>
>
>         which is a serious issue.
>
>         Therefore I think continuous nomination is the simplest solution
>         to this
>         problem.
>
>
>     Continuous nomination has at least two serious problems:
>
>     a) we lose the possibility to clearly detect failures and we need to
>     resort to magic timers
>
>
> It's timers one way or another (e.g. how do you know when to give up on
> retransmitting ICE checks?).

If you don't define a clear end of trickling, then continuous nomination 
would require an extra layer of timers, that would actually need to be 
very dependent on usage scenarios. This is unnecessary.

So, yes, while there will always be timers somewhere in the stack this 
is in no way an excuse to keep piling them up.

> I don't think this is a salient point.
>
>     b) it is no longer clear when unused candidates (srflx and relay)
>     can be released.
>
> This is explicitly discussed in my proposal.

I don't think it is. Your proposal talks about pruning pairs you no 
longer wish to use. That's a strategy decision that mostly belongs to 
the implementation and in that way having the option is certainly useful.

However, your proposal says nothing about the connectivity decision: 
when can I release the ports on the interfaces that I am not using? When 
can I stop refreshing server-reflexive candidates? When do I drop relay 
candidates that haven't been used?

I assume the answer would be: when timer X fires ...

... and obviously you should reallocate all of these again later, when 
your peer enters a Wi-Fi network and starts trickling the new 
candidates. You would need to go over all the interfaces and relays that 
you released and claim them again.

So the irony is, that at the end of the day, even with continuous 
nomination you would still need two modes of operation: one where you 
are actively looking for possible routes/paths and another where you are 
operating and using a set of pairs/paths that have been validated.

In other words you would have ICE restarts in all but name.

Emil

>     We could obivously work on resolving the above issues by preserving
>     the end-of-candidates indication and then allowing new candidates to
>     still arrive after it. We could also work on clearing out a few
>     other points, like for example, how receiving a trickled candidate
>     means one needs to potentially re-gather and re-trickle and re-check
>     local candidates.
>
>     While this is certainly a possibility ... it is likely to simply
>     take us to something very similar to ICE restarts. Potentially even
>     the exact same thing, only triggered with something other and a
>     ufrag/pwd update. :)
>
>     So, it might be more productive to just rename "ICE restarts" to
>     something that scares us less and see if and how we need to address
>     any actual issues there.
>
>     Emil
>
>
>     --
>     https://jitsi.org
>
>

-- 
https://jitsi.org