Re: [MMUSIC] Generalizing the aggressive nomination bugfix

Justin Uberti <juberti@google.com> Thu, 13 March 2014 05:12 UTC

Return-Path: <juberti@google.com>
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 518C01A08BF for <mmusic@ietfa.amsl.com>; Wed, 12 Mar 2014 22:12:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.925
X-Spam-Level:
X-Spam-Status: No, score=-1.925 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-0.547, 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 aDzDOQo6NrAN for <mmusic@ietfa.amsl.com>; Wed, 12 Mar 2014 22:12:26 -0700 (PDT)
Received: from mail-vc0-x230.google.com (mail-vc0-x230.google.com [IPv6:2607:f8b0:400c:c03::230]) by ietfa.amsl.com (Postfix) with ESMTP id 07F1F1A08BA for <mmusic@ietf.org>; Wed, 12 Mar 2014 22:12:25 -0700 (PDT)
Received: by mail-vc0-f176.google.com with SMTP id lc6so535031vcb.21 for <mmusic@ietf.org>; Wed, 12 Mar 2014 22:12:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=HeL4LXUqx4rVlp3j/FFInWl/XBlhlAXJ8AVX4Ya4Qco=; b=H4eusNUxkCkerC3HYBaoL8HAaBMw41in0sdvaCXwxccS/zi+v9YgSUE/iR/v41Yf22 8RS9s4Dq/483WnlJLEtsbY9Q/5l/KPxQlZxqOfwyLlrLcw4zAhcmOQJzPWYeSCH5NrV1 gplwWgUUj5WRXoicsNZhIkohwzlefYyyfdo3Xj9Fc3wcFKW8uKcKzDH+GcZG49hlfRI/ 5MmvIAKDn2JV/xaPkG2dA7S6nxHZRYcyi6QHxPfbLqzaZc+Rv03PnPK7Uk32nGeHqM4W guWx9uF/dU1ACTdhEv6nok3hw0EjhKrs6k7i7dYAlmomi0lXWl1MEWAeksZZ1hRrgHsw dPIQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type; bh=HeL4LXUqx4rVlp3j/FFInWl/XBlhlAXJ8AVX4Ya4Qco=; b=cPlTd9h1kC1tHxT6kPE56gJdEn6MedNlgRlwwnakHU8r/Gg1LU1/yurnrMF8wf07fd Xpx5Eyp+jfHwaCTgqHGEch1IOgkHJdCnTBMYLJ8PimWCqEQZstd7q6cepL8B6HIKALu+ 3nt+VtIOgXleCtqPQAushlGdvgIkeI87UwnyUdURWIhSKSjH5aKsIsoESG9qdXTvAhAI FSIyImXM3aKyuwTXfPNvZdlECpnoBcud1SUFF3rA/xOlDG5A7fVVnrnJlMPoUP2N7dyP iv6ATeTYxKkeE7nu7aocmnV1lQhohAWI5zBGfcGJ2Jr23b+UldaqoAe+/8+TqxyMKVj/ 2NJQ==
X-Gm-Message-State: ALoCoQkLKVcn6N7FcWhSpuB0yODM2W/l1tMrweMvulexvL/1XIX9NMjICcY2sJ9EW3WYQ+Ao40DU/G1jcHJovkMPJnQkEw6X3cC7+K9CadFzPuG5uA/7KOlrK5TIpcGD/uLJ2BY3W6sIcQ1W1Jy9DCXHb5z2jejR9hTzRfC1LgL5E+S6mgZzGrcfA9ob43fwfGX+Roij4zSV
X-Received: by 10.52.83.229 with SMTP id t5mr75740vdy.91.1394687539311; Wed, 12 Mar 2014 22:12:19 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.52.26.43 with HTTP; Wed, 12 Mar 2014 22:11:59 -0700 (PDT)
In-Reply-To: <9450C3A0-9509-4D1E-8C6C-54B884086B38@cisco.com>
References: <CAOJ7v-3oi-Qtsk6qiPVsAUfzEQsvgt4h6RhgfKDNUv_-47wpOA@mail.gmail.com> <BFFAE2A7-089D-452F-867E-BEF622BEFB77@cisco.com> <CAOJ7v-0d1bng-LHkdZ+J3Swdoic+zOF73JVfK464N0n4fY9=fw@mail.gmail.com> <9450C3A0-9509-4D1E-8C6C-54B884086B38@cisco.com>
From: Justin Uberti <juberti@google.com>
Date: Wed, 12 Mar 2014 22:11:59 -0700
Message-ID: <CAOJ7v-3Z=x=1kDuB3LCu3g1gZ6M4BytrwbJ3FJnjOpAy-um6PQ@mail.gmail.com>
To: Dan Wing <dwing@cisco.com>
Content-Type: multipart/alternative; boundary="001a1136b1145ad20f04f475ffd6"
Archived-At: http://mailarchive.ietf.org/arch/msg/mmusic/Ar0PpP871Nb1KoRYvWVSP84nKGM
Cc: "mmusic@ietf.org" <mmusic@ietf.org>
Subject: Re: [MMUSIC] Generalizing the aggressive nomination bugfix
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: Thu, 13 Mar 2014 05:12:29 -0000

On Wed, Mar 12, 2014 at 9:35 AM, Dan Wing <dwing@cisco.com> wrote:

>
> On Mar 12, 2014, at 9:27 AM, Justin Uberti <juberti@google.com> wrote:
>
>
>
>
> On Tue, Mar 11, 2014 at 4:49 PM, Dan Wing <dwing@cisco.com> wrote:
>
>>
>> On Mar 10, 2014, at 6:21 AM, Justin Uberti <juberti@google.com> wrote:
>>
>> In the WG session on Monday, Ari mentioned that the aggressive nomination
>> bug of controller and controlled not agreeing on the candidate pair to use
>> could be rectified by having the controlled side switch its preferred
>> candidate pair to be the one that it received secure media on (or if not
>> using controlled media, when the controlling side’s ICE checks finally got
>> through).
>>
>> I think there is an opportunity here to improve the overall flexibility
>> of ICE. Currently, Regular Nomination allows the controller to have a fair
>> amount of discretion in choosing which candidate pair it wants to pick; it
>> could use metrics such as RTT, or perhaps one of the values mentioned in
>> DISCUSS to make its selection, instead of using the static PRIORITY value.
>> Aggressive Nomination, while faster in initially establishing media, does
>> not afford this same discretion; according to 5245, S 8.1.1.2, ICE uses the
>> highest PRIORITY candidate pair. So it would be great if there was a way to
>> allow the controller have the same discretion for choosing the selected
>> candidate pair, while also doing Aggressive Nomination.
>>
>> I think this can easily be done using Ari’s solution in a general way. In
>> short, any time secure media packets are received by the controlled side,
>> it should use that candidate pair to send its own media. (Secure media is
>> needed to prevent an attacker from tricking the controlled side into
>> sending media to an arbitrary address.) If secure media is not used, the
>> controller could include a new attribute, something like a new
>> PREFERRED-CANDIDATE attribute (or perhaps an updated PRIORITY attribute,
>> set to the max ICE priority), to tell the controlled side which candidate
>> pair should be used.
>>
>> That all sounds good.
>>
>> This would allow the controller to do periodic RTT checks, perhaps using
>> the ICE consent mechanism, and dynamically change the media path as needed.
>>
>> I think we need additional signaling to switch interfaces, because each
>> endpoint needs to participate in the decision (e.g.,
>> draft-wing-mmusic-ice-mobility).  For example, the controlling endpoint
>> might have unmetered Internet access, whereas the other endpoint has fast
>> metered Internet (e.g., LTE) and slower unmetered Internet (e.g., DSL) --
>> but if the controlling endpoint effectively ignores the ICE priorities in
>> favor of round trip time calculations, the controlled endpoint will use
>> LTE.  ICE priorities allows both ends to indicate their preferences.  We
>> might need something more than ICE priorities, too, or a way to strongly
>> say an interface is not preferred (because that interface is metered).
>>
>> 5245 seems to indicate that the controlling endpoint is in the driver's
> seat, as explained in S 2.6:
>
>
>    More fundamentally, however, the prioritization
>    defined by this specification may not yield "optimal" results.  As an
>    example, if the aim is to select low-latency media paths, usage of a
>    relay is a hint that latencies may be higher, but it is nothing more
>    than a hint.  An actual round-trip time (RTT) measurement could be
>    made, and it might demonstrate that a pair with lower priority is
>    actually better than one with higher priority.
>
>
>    Consequently, ICE assigns one of the agents in the role of the
>    CONTROLLING AGENT, and the other of the CONTROLLED AGENT.  The
>    controlling agent gets to nominate which candidate pairs will get
>    used for media amongst the ones that are valid.
>
>
> I agree it would be useful to allow the controlled side to give some hints to the controlling side though.
>
>
> I agree the controlling side is controlling.  But it needs to be
> influenced by the controlled side, or else users will have to manually
> toggle their interfaces on/off to avoid overage charges.  That toggling is
> a p.i.t.a.
>
>
Agreed. The ability to mark an interface as only-if-absolutely-necessary
seems like it would suffice. The controlling side would then only switch to
such a candidate if no other pair was viable, similar to the handling of
backup paths in 6824.