Re: [alto] Inter-ALTO

Sebastian Kiesel <ietf-alto@skiesel.de> Wed, 25 March 2015 15:32 UTC

Return-Path: <sebi@gw01.ehlo.wurstkaes.de>
X-Original-To: alto@ietfa.amsl.com
Delivered-To: alto@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0BC8A1B2A2E for <alto@ietfa.amsl.com>; Wed, 25 Mar 2015 08:32:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.56
X-Spam-Level:
X-Spam-Status: No, score=-1.56 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_DE=0.35, T_RP_MATCHES_RCVD=-0.01] autolearn=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 9G-1ThDB_jTM for <alto@ietfa.amsl.com>; Wed, 25 Mar 2015 08:32:03 -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 B24671B2A26 for <alto@ietf.org>; Wed, 25 Mar 2015 08:31:59 -0700 (PDT)
Received: from sebi by gw01.ehlo.wurstkaes.de with local (Exim 4.80) (envelope-from <sebi@gw01.ehlo.wurstkaes.de>) id 1YanHd-0001YT-PA; Wed, 25 Mar 2015 16:31:53 +0100
Date: Wed, 25 Mar 2015 16:31:53 +0100
From: Sebastian Kiesel <ietf-alto@skiesel.de>
To: Wendy Roome <wendy@wdroome.com>
Message-ID: <20150325153153.GC5141@gw01.ehlo.wurstkaes.de>
References: <20B55DE3-5F93-4D5E-B693-684AF4A372A9@wdroome.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20B55DE3-5F93-4D5E-B693-684AF4A372A9@wdroome.com>
Accept-Languages: en, de
Organization: my personal mail account
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/alto/CZHgkl_a9_P0glxhtDS8MaKeSto>
Cc: "alto@ietf.org" <alto@ietf.org>, Piotr Wydrych <piotr.wydrych@agh.edu.pl>
Subject: Re: [alto] Inter-ALTO
X-BeenThere: alto@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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: Wed, 25 Mar 2015 15:32:06 -0000

Hi Wendy,

2.1 and 2.2 are similar because both would require some kind of mesh
between ALTO servers for exchanging authority information.

2.3 and 2.4 are also similar, because the authority information is
collected, stored, and used for (re)direction on logical entities that
are not ALTO servers (of course they could be co-located on the same box).

2.3 would use some kind of web search engine technology. I did not
register my web site at google or bing but they can be found there.
Maybe somthing like that would also work for ALTO servers.  I'm just
wondering what would be the incentive to operate such an engine - banner
ads or sponsored links probably won't make sense here.

2.4 requires an explicit registration of the ALTO server in a database.
This could be either a new database (alto4alto) with its own
administrative organization (who is willing to run that office?) 
or it could re-use an existing service such as DNS (xdom-disc).

My preference is the last option because it allows for gradual
deployment and the "owners" (ISPs, large companies, universities) of
IP prefixes can announce which ALTO server (either their own or one
operated by a third party) has authoritative information about costs
for traffic from/to that prefix, without the need to talk to anyone
(assuming that DNS configuration is already in place).

Thanks
Sebastian


p.s.  partitioned knowledge and the fact that every ALTO server may
define its own set of PIDs are indeed problematic. So exchange of
authority information (approaches 2.1 and 2.2) should be based on IP
prefixes only, or on a common network map. The other approaches would
require re-mapping of PIDs in order to assemble the map snippets
received from other ALTO servers into a virtual full map - this can be
done server-side (1.2), search engine side (2.3) or client-side (2.4).



On Wed, Mar 25, 2015 at 09:02:02AM -0500, Wendy Roome wrote:
> After reviewing the 2.* alternatives more carefully, I think 2.1 & 2.2 are not practical. First, they only work for Endpoint Cost queries; since the pid maps vary from server to sever, 2.1 & 2.2 won't work for anything else. Second, the analogy with DNS breaks down. With DNS, everyone has the same address for a name; you just have to find the first server that has it. With alto, every server has a cost. You need to decide which is most accurate. Right now there is no way to determine that.
> 
> That leaves 2.3, which pushes the problem to the client. That requires a central alto server registry, plus a way for a server to declare its area of cost expertise.
> 
> As for incentives for an alto provider to register their server with some central repository, I don't see that as a problem. If an ISP offers alto, they want people to use it. So they will want to promote their alto server. Just like someone with a public web site wants google to know about it.
> 
> The more important question is, what are the incentives for an ISP to offer an alto server in the first place? :-)
> 
>      - Wendy
> 
> > On Mar 25, 2015, at 6:23, Sebastian Kiesel <ietf-alto@skiesel.de> wrote:
> > 
> > Hi Wendy,
> > 
> >> On Tue, Mar 24, 2015 at 05:22:55PM -0500, Wendy Roome wrote:
> >> 2.4 is fine when the client wants costs to or from the client. But it
> >> will not work well for a p2p tracker, which wants costs between
> >> arbitrary endpoints, even if they are all on the other side of the
> >> planet.
> > 
> > Why do you think that this will not work well?  The tracker will have
> > to contact a large number of ALTO servers and assemble a virtual map
> > based on the snippets it can get from these ALTO servers.
> > This is basically shifting the aggregation problem from server side
> > to client side.
> > 
> > approach 2.4 is analyzed in more detail in
> > https://tools.ietf.org/html/draft-kiesel-alto-xdom-disc-00
> > 
> > In addition to issues like overhead and caching efficiency, another
> > aspect might be legal liability.  Being an access network operator in
> > Europe, I am a bit reluctant to publish costs from, say, an access
> > network in Japan to an access network in the US through my ALTO server.
> > This is not only a question of map size and processing load on my
> > server. What happens if I wreck some other network operator's traffic
> > engineering or business model by giving wrong cost information or by
> > redirecting to the wrong ALTO server? That's why I would prefer
> > approaches 2.3 or 2.4.  (This paragraph is about an "open Internet" use
> > case).
> > 
> >> For that, you want 2.2 or 2.3. The problem with those is how do you know which alto server to use?
> > 
> > 2.1 and 2.2 is basically the same problem.  All ALTO servers need to
> > know which other ALTO servers are authoritative for which parts of the
> > map.  They need a protocol to exchange this authority information.
> > Whether they fetch the data from there on behalf of the client,
> > or whether they tell the client "go fetch it from there on your own"
> > is mostly a question of caching efficiency.
> > 
> > 2.3 is "why not just use your favorite web search engine to find the
> > right ALTO server?" - although I have some doubts regarding the incentives
> > for the operators of such search engines for indexing ALTO servers.
> > 
> >> One possibility is to attach an "I have authoritative vista for this
> >> set of endpoints" attribute to network maps. Then (given a master list
> >> of alto servers) a tracker can select the alto server that is best for
> >> the tracker's client.
> > 
> > This sounds similar to draft-kiesel-alto-alto4alto.
> > The question is: how would the operator of a network with his ALTO
> > server join the authority map? We would have to establish an
> > administration office where the can register (possibly IANA?).
> > In contrast, the xdom-disc draft tries to re-use DNS as an already
> > established rendez-vous point, so no new administration would have
> > to be created.
> > 
> > 
> > Sebastian
> > 
> >>> On Mar 24, 2015, at 2:39, Sebastian Kiesel <ietf-alto@skiesel.de> wrote:
> >>> 
> >>> Hi Piotr,
> >>> Hi Richard,
> >>> all,
> >>> 
> >>> first of all do you have any specific multi-domain ("partitioned") use
> >>> case in mind? Our original P2P use case certainly was, but it has become
> >>> quiet around it. For the newer use cases such as CDN or VPN optimization
> >>> or stuff related to SDN im am not so sure whether we need that.
> >>> 
> >>> I remember that many years ago we had detailed discussions how the
> >>> partitioned-knowledge-problem could be solved. We had several approaches:
> >>> 
> >>> 
> >>> 1. all ALTO servers have the same knowledge
> >>> 
> >>>   1.1. ensure synchronization in the provisioning protocol (cf. 
> >>>       RFC 5693, Fig 1), which is currently not standardized
> >>> 
> >>>   1.2. standardize an inter-ALTO-server data replication protocol
> >>> 
> >>> 
> >>> 2. different ALTO servers operated by different organizations (e.g.
> >>>   ISPs) do NOT have the same (global) knowledge
> >>> 
> >>>   2.1 ALTO clients can connect to any server and that first server
> >>>       will fetch the data (similar to an iterative DNS query) on behalf
> >>>       of the client, based on some kind of inter-ALTO-server
> >>>       request forwarding protocol
> >>> 
> >>>   2.2 ALTO clients can connect to any server and that first server
> >>>       will redirect the client to the "right" ALTO server that has the
> >>>       desired information, based on some kind of inter-ALTO-server
> >>>       authority information exchange protocol
> >>> 
> >>>   2.3 ALTO clients need to use some kind of "search engine" that
> >>>       indexes ALTO servers and redirects and/or gives cached results
> >>> 
> >>>   2.4 ALTO clients need to use an external discovery mechanism (e.g.
> >>>       based on a DHT or on DNS) to discover the ALTO server that has
> >>>       the desired information
> >>> 
> >>> 
> >>> 
> >>> My opinion is that for a small scenario with only a rather limited
> >>> number of federated domains, approach 1.1 should be sufficient. No
> >>> need to standardize anything here.
> >>> For a true Internet-scale scenario (e.g., the P2P use case), I do not
> >>> like the 1.? approaches, and I think that 2.4 is more realistic, for
> >>> reasons that I already outlined in this post:
> >>> http://www.ietf.org/mail-archive/web/alto/current/msg02547.html
> >>> 
> >>> One possible solution that follows the 2.4 approach is the xdom-disc
> >>> draft (currently expired, I'm working on a new version).
> >>> 
> >>> Thanks
> >>> Sebastian
> >>> 
> >>> _______________________________________________
> >>> alto mailing list
> >>> alto@ietf.org
> >>> https://www.ietf.org/mailman/listinfo/alto