Re: [alto] Adopting draft-kiesel-alto-xdom-disc as WG item?

Sebastian Kiesel <ietf-alto@skiesel.de> Fri, 15 July 2016 15:14 UTC

Return-Path: <sebi@gw01.ehlo.wurstkaes.de>
X-Original-To: alto@ietfa.amsl.com
Delivered-To: alto@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CAF7212D0A8 for <alto@ietfa.amsl.com>; Fri, 15 Jul 2016 08:14:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.186
X-Spam-Level:
X-Spam-Status: No, score=-3.186 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RP_MATCHES_RCVD=-1.287] autolearn=ham autolearn_force=no
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 i-yArsgE7Q6M for <alto@ietfa.amsl.com>; Fri, 15 Jul 2016 08:14:55 -0700 (PDT)
Received: from gw01.ehlo.wurstkaes.de (gw01.ehlo.wurstkaes.de [IPv6:2a02:a00:e000:116::41]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BBBB612D09F for <alto@ietf.org>; Fri, 15 Jul 2016 08:14:54 -0700 (PDT)
Received: from sebi by gw01.ehlo.wurstkaes.de with local (Exim 4.80) (envelope-from <sebi@gw01.ehlo.wurstkaes.de>) id 1bO4pA-0007c6-Dr; Fri, 15 Jul 2016 17:14:44 +0200
Date: Fri, 15 Jul 2016 17:14:44 +0200
From: Sebastian Kiesel <ietf-alto@skiesel.de>
To: Gao Kai <gaok12@mails.tsinghua.edu.cn>
Message-ID: <20160715151444.GC3919@gw01.ehlo.wurstkaes.de>
References: <D3AAB578.7DF072%w.roome@alcatel-lucent.com> <20160712210913.GM3915@gw01.ehlo.wurstkaes.de> <57884A02.3000207@mails.tsinghua.edu.cn>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <57884A02.3000207@mails.tsinghua.edu.cn>
Accept-Languages: en, de
Organization: my personal mail account
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <https://mailarchive.ietf.org/arch/msg/alto/N0mQ9qe9BsByKF-V8h_iqrSYeDk>
Cc: Wendy Roome <wendy.roome@nokia-bell-labs.com>, IETF ALTO <alto@ietf.org>
Subject: Re: [alto] Adopting draft-kiesel-alto-xdom-disc as WG item?
X-BeenThere: alto@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: "Application-Layer Traffic Optimization \(alto\) WG mailing list" <alto.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/alto>, <mailto:alto-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/alto/>
List-Post: <mailto:alto@ietf.org>
List-Help: <mailto:alto-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/alto>, <mailto:alto-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 15 Jul 2016 15:14:58 -0000

Hi Kai and all,

On Fri, Jul 15, 2016 at 10:27:14AM +0800, Gao Kai wrote:
> On 13/07/16 05:09, Sebastian Kiesel wrote:
> > On Tue, Jul 12, 2016 at 02:55:52PM -0400, Wendy Roome wrote:
> >> My comments on draft-kiesel-alto-xdom-disc-02:
> >> Section 3.2:
> >>
> >> If a client wants the cost from X => Y, why just do cross-domain discovery
> >> on address X? Why not do it for Y instead? Or do it for both X & Y?
> > This is again to cope with the not so well-defined "routingcost" metric.
> >
> > Our assumtion is that XDOM-DISC(X) will discover one ALTO server,
> > which will be able to express costs (X,Y) and costs (X,Z) using a
> > (locally) consistent routingcost metric, i.e., with the meaning that
> > a lower value indicates a higher preference.
> >
> > If we used XDOM-DISC(Y) and XDOM-DISC(Z) we would probably discover
> > two servers, which could use completely incompatible definitions.
> >
> >
> > In other words, the example query given in sec. 11.5.1.7. of RFC 7285
> > should be sent to the server yielded from XDOM-DISC(192.0.2.2).
> >
> > If the "srcs" list contained more than one IP address, the query
> > should be split up in several queries, each containing only one
> > IP address in "srcs" (but keep all in "dsts"), and each of these
> > "sub-queries" would need its own call to XDOM-DISC.
>
> I had the same question as Wendy because for me, sources and
> destinations are somewhat symmetric 

if src/dst and the costs between are really symmetric, it doesn't
make a difference.

> so it is tempting to think there
> should be something like XDOM-DISC(X, Y), which might be overcomplicated
> though.

That would be too complicated indeed.


> I think whether to use the source/destination or to split up queries
> depends on the application.  If it is selecting a destination for a
> given source, it certainly can choose XDOM-DISC(SRC).  If the selection
> is about sources, probably XDOM-DISC(DST) is more reasonable. 

I agree.  So the idea is, that we call XDOM-DISC(X), in oder to find an
ALTO server that can answer both ECS queries, whether

routingcost(src=X, dst=Y) > routingcost(src=X, dst=Z).

and whether

routingcost(src=Y, dst=X) > routingcost(src=Z, dst=X).


In other words, we use the common address X that appears in all the
tuples we want to compare as parameter for the XDOM-DISC.

For the Endpoint Cost Service ECS, queries may have to be split in
a way that either the "srcs" or the "dsts" list in the query contains
only one IP address - and this address is used for XDOM-DISC.
What that means for the other ALTO services we still need to define.

> If the
> application wants to pick the best source-destination pair, maybe the
> queries should never be split up.

Not splitting the queries would be the best thing to do from an
optimization perspective.  It would be great if there were
a bunch of ALTO servers all with the same knowledge, so we could
just discvover any one of them (e.g. using RFC7286) and ask it
arbitrary questions or download a comprehensive NxN cost map.
But for various reasons I believe that this is not going to happen
on an Internet scale (and after all, we are the Internet Engineering
Task Force ;) ).  So we need to find a solution that works if knowledge
is partitioned.

Thanks
Sebastian