[alto] Fwd: ALTO at IETF-108: Finishing the current milestones and discussion on re-chartering the WG

Danny Alex Lachos Perez <dlachosper@gmail.com> Tue, 14 July 2020 15:28 UTC

Return-Path: <dlachosper@gmail.com>
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 BF9BC3A0891 for <alto@ietfa.amsl.com>; Tue, 14 Jul 2020 08:28:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 fIm3o1lPBZej for <alto@ietfa.amsl.com>; Tue, 14 Jul 2020 08:28:50 -0700 (PDT)
Received: from mail-vs1-xe2b.google.com (mail-vs1-xe2b.google.com [IPv6:2607:f8b0:4864:20::e2b]) (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 258FF3A088A for <alto@ietf.org>; Tue, 14 Jul 2020 08:28:50 -0700 (PDT)
Received: by mail-vs1-xe2b.google.com with SMTP id p25so8701679vsg.4 for <alto@ietf.org>; Tue, 14 Jul 2020 08:28:50 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=fb0aq3uNwd99dXYS+xo8ITxYFYQeFMVk/CPP0zl4oxs=; b=VW4NJVVr5yD39p1/TyI6A7HbMouQArDN3774iUVA92VgBDUBsBmWTNWXCN9sr0x/Pp ND+3uuAuWexLgj0qq/UAg/cZGq+w9dSFF6g1G19dpQNXcAgGrZkQ5UaCcIY+maaKnBXh LagE/hbc1JNkRG+pGVUam76pQ6CSL3fiMq5DMiQC3KyYvytT9qpib3Cb9n0NeQoGFo5s +O30yE8mIx8W6U4LLDfGRIOvz8zVZS3eHJbkj9eJf+kEdwxi/Gw5muIxeombkhWxvEbW WfUfAvE9ZRCYo7LHeWOjObpdXDQbzVGaCfi/m74S0N3IK/z8QX/iaE6MGTGha8yZlITk A8bw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=fb0aq3uNwd99dXYS+xo8ITxYFYQeFMVk/CPP0zl4oxs=; b=hN2VCNk8mpggDdQsBajlb660CEyhbogutM8CobrgECI14lvxydHAapgyhEjA++Bjsz XGLcOC49rKQJHrIxWAqHjQYC/LtiRgdgHWKG3AjBEzH1Y5v7aSwk82MKja89bGZasjv2 1CW2C/IXIkB5j3JHlpihpCj+cQLBkfw0fD1cmpFkXvYdzvB0jow/A0/oDgTG5mA90mTL ue5lFGpq8DPUL4vjMXhIHux9PtY5mOwjw9///9Vw/VfD5bTaUq0MPyUTnXtNa6Zy7Wgj RAq/NPnA+43fJK9Z3oQUAftnZMHsAx+79dfmUxljeZrZ5Fxed/MV6B+0OJXsod7r6ijw M3sQ==
X-Gm-Message-State: AOAM531BQHGAvW9CZscot3WOy+SKYZebddQSWckmlhWAEx45uTTwivFj VETZEjep15dvxVfIj4Y5m6Wzh/f8cd4JrlCB0jzC7bN1UNs=
X-Google-Smtp-Source: ABdhPJyZ4A/1pxBM/87kuiVulpbic8FD7wblyFICqh2peeQYtv0ET6jdMl2CXD3d49DqrNKF2OEJ5LCLdP8oRMQsJws=
X-Received: by 2002:a05:6102:193:: with SMTP id r19mr3436862vsq.171.1594740528696; Tue, 14 Jul 2020 08:28:48 -0700 (PDT)
MIME-Version: 1.0
References: <CAEDarXJFCrGJv=uSXXvW2bsX-boDjzxYO=c6MBMqixQVx7wgjA@mail.gmail.com> <20200714095648.GA1089@l1.wurstkaes.de> <3b36b7cc-7c7a-0735-77ed-08a36048637c@benocs.com>
In-Reply-To: <3b36b7cc-7c7a-0735-77ed-08a36048637c@benocs.com>
From: Danny Alex Lachos Perez <dlachosper@gmail.com>
Date: Tue, 14 Jul 2020 12:28:36 -0300
Message-ID: <CAEDarXKoRKxSru4=0rVKTiZvNcepx-tMxVog+LBzLF=XZeVhwA@mail.gmail.com>
To: IETF ALTO <alto@ietf.org>
Cc: Sebastian Kiesel <ietf-alto@skiesel.de>, Ingmar Poese <ipoese@benocs.com>, "Y. Richard Yang" <yry@cs.yale.edu>
Content-Type: multipart/alternative; boundary="000000000000b8d24305aa68765c"
Archived-At: <https://mailarchive.ietf.org/arch/msg/alto/GJRamqDWvLfCpZnL1xy4RAcXaQA>
Subject: [alto] Fwd: ALTO at IETF-108: Finishing the current milestones and discussion on re-chartering the WG
X-BeenThere: alto@ietf.org
X-Mailman-Version: 2.1.29
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: Tue, 14 Jul 2020 15:28:54 -0000

Dear all,

Following the suggestion of the AD (Martin Duke) and the WG chairs (Jan and
VIjay) [0], many of us started excellent discussions on ALTO recharter.
In particular, this thread discusses the multi-domain aspects of ALTO
(please, take a look below).
We are moving the thread to the WG mailing list for more open discussions.

Any thoughts/comments/suggestions are greatly appreciated,

Thank you so much!

Best regards,

Danny Lachos

[0] https://mailarchive.ietf.org/arch/msg/alto/bPUxI6xmbms7i6_eoPiOy9Bpxro/

---------- Forwarded message ---------
From: Ingmar Poese <ipoese@benocs.com>
Date: Tue, Jul 14, 2020 at 8:33 AM
Subject: Re: [alto] ALTO at IETF-108: Finishing the current milestones and
discussion on re-chartering the WG
To: Sebastian Kiesel <ietf-alto@skiesel.de>, Danny Alex Lachos Perez <
dlachosper@gmail.com>
Cc: Y. Richard Yang <yry@cs.yale.edu>


Hi all,

please see inline.

Ingmar

Am 14.07.20 um 11:56 schrieb Sebastian Kiesel:
> Hi Danny, all,
>
> On Mon, Jun 29, 2020 at 08:18:04AM -0300, Danny Alex Lachos Perez wrote:
>> Hello Sebastian,
>>
>> Thanks a lot for your comments
>> Please, see inline:
>>
>> Even the very first ALTO use case was multi-domain in some sense:
>>> the bittorrent clients in the access networks of Comcast and Sprint,
>>> the pirate bay tracker in Sweden, that could be seen as three domains.
>>> The examples in the drafts you have listed are obviously different and
>>> more complex, but I am still struggling to tell what exactly is new and
>>> needs to be done.
>>
>> Yes, I remember your question. I will try to clarify our multi-domain
>> approach.
>>  From your P2P example, we have the next figure:
>> [image: multi-domain-ALTO.jpg]
>> An ALTO server in each domain will provide only local information to ALTO
>> clients. In the example, the tracker (ALTO client) receives
>> topology-/policy-related information of a single domain (AS1 or AS2).
Let's
>> call it "single-domain information exposure".
>
> While your observation is probably true in most deployments we have seen
> so far, I do not completely agree on an architectural level.
>
> We have designed the ALTO protocol such that an ALTO client may ask one
> ALTO server *any* question, e.g., "give me network map and cost map for
> the whole Internet address space" or ECS(IP1, IP2) where IP1 and IP2
> are arbitrary IP addresses in whatever domain.
> The idea that there might be more than one ALTO server, and that one
> ALTO server might give better answers to some specific questions while
> another ALTO server might give better answers to other questions,
> was in our mind when we worked on the protocol, but it did not result
> in any specific feature of the base protocol that would deal with that
> situation.
I would actually like to go a little further on this point. At the early
stages, if i remember correctly, there was the discussion on "my view on
the Internet". I would like to point this out again and the fact that
"The Internet" looks different from different vantage points. Depending
on where you are, decisions are different. Furthermore, a client is not
capable of deciding which information to use from what ALTO server - and
it if get multiple answers, which one is "more" correct.

If the ALTO Server now only has information about the local network, or
only gives out information about the local network, matching this to
interAS client (or even clients in the same confederation) almost
impossible - and this gets worse if not all Networks offer an ALTO service.
I think an ALTO server should always give an indication on the entire
Internet from it's point of view, even if much of it is aggregated. This
reduces the problems to "what ALTO server to ask" for the client and can
be much easier deployed and maintained on a large scale.

>
> This is different for the discovery mechansims: there we had the idea
> that an ALTO server that is "near" to the endpoint of the data
> transmissions to be optimized, typically announced by the operator of
> the access network, will probably give good answers.
> If the "peer selection" (or any other routing decision in the overlay)
> is done in the endpoint of the data transmission itself, use RFC 7286;
> if it is done at a remote entity such as a tracker, use RFC 8686 to find
> ALTO server that is nearby the actual endpoint.
>
>
>> On the other hand, if we want an ALTO client to receive merged
information
>> from multiple domains, ALTO servers need to be able to exchange
>> information. In the example, the tracker will receive AS1’s and AS2’s
>> merged information. Let's call it "multi-domain information exposure".
>> As we identified [0], different use cases could benefit from multi-domain
>> information exposure using ALTO. However, it also places requirements
that
>> the current ALTO design do not satisfy [1].
>
> There is definitively room for extensions. We have so many architectural
> options (side note: what is now just the "ALTO protocol" has been called
> in RFC 5693 and 6708 the "ALTO client protocol", in anticipation that
> there might be an ALTO server-to-server protocol in the future).
>
>
> First area of questions: Data model.  If every ALTO server defines the
> network map on its own and uses the default smaller-value-is-better
> routingcost metric, which does not have a well-defined base unit, it
> will be hard to impossible to merge information from different servers.
> Deprecate them?  Replace with what? Or go for an architectural option
> (see below) that does not require information merging on the ALTO
> protocol side.
This is an interesting problem that i would like to go into further. But
then, i have a very narrow Agenda on our use case, so maybe i am
overshooting here.

>
> Second area of questions: placement of entities and protocols between
> them. This is also not completely new, see Sec. 2.2.3 of RFC 7971
>
> Ideas:
>
> 1. Define a new server discovery mechanism.  An ALTO client would
> discover several ALTO servers from different domains, ask each of them,
> and then aggregate the information on the client-side.
>
> 2. Mesh-style ALTO server-to-server communication.  Do we need a new
> s2s protocol?  Is a small extension to the ALTO protocol sufficient?
>
> 3. Hierarchical structure with backend information sources and frontend
> servers towards the ALTO clients. Aggregation of the information from
> different backends takes place in the frontends. How to ensure
> consistency? Do we need a new protocol for backend to frontend
> communication? Is a small extension to the ALTO protocol sufficient?
>
>
>  From an academic perspective, I'd love to investigate and specify each
> of these options and many more.  But from an IETF perspective: who is
> willing to deploy anything on a scale that requires and justifies the
> effort for standardization?  If there is one: what is their preference
> which way to go?  Is your group planning a deployment?
We (BENOCS) have had that on our ToDo list for about a year now, but we
have not come around to implementing it so far. The deployment would
encase about 100 million subscribers towards a few Hypergiants across
Europe.

I have a fairly good plan on how to do it - although we were not going
to use ALTO for cross domain ALTO (we call it cascading internally), but
rather implement something ourselves that fits our use case of
Hypergiant<->end-user mapping (we do not do P2P).

I would be open to discussing this in a broader sense to standardize the
approach.

---------- Forwarded message ---------
From: Sebastian Kiesel <ietf-alto@skiesel.de>
Date: Tue, Jul 14, 2020 at 6:56 AM
Subject: Re: [alto] ALTO at IETF-108: Finishing the current milestones and
discussion on re-chartering the WG
To: Danny Alex Lachos Perez <dlachosper@gmail.com>
Cc: Ingmar Poese <ipoese@benocs.com>, Y. Richard Yang <yry@cs.yale.edu>


Hi Danny, all,

On Mon, Jun 29, 2020 at 08:18:04AM -0300, Danny Alex Lachos Perez wrote:
> Hello Sebastian,
>
> Thanks a lot for your comments
> Please, see inline:
>
> Even the very first ALTO use case was multi-domain in some sense:
> > the bittorrent clients in the access networks of Comcast and Sprint,
> > the pirate bay tracker in Sweden, that could be seen as three domains.
> > The examples in the drafts you have listed are obviously different and
> > more complex, but I am still struggling to tell what exactly is new and
> > needs to be done.
>
> Yes, I remember your question. I will try to clarify our multi-domain
> approach.
> From your P2P example, we have the next figure:
> [image: multi-domain-ALTO.jpg]
> An ALTO server in each domain will provide only local information to ALTO
> clients. In the example, the tracker (ALTO client) receives
> topology-/policy-related information of a single domain (AS1 or AS2).
Let's
> call it "single-domain information exposure".

While your observation is probably true in most deployments we have seen
so far, I do not completely agree on an architectural level.

We have designed the ALTO protocol such that an ALTO client may ask one
ALTO server *any* question, e.g., "give me network map and cost map for
the whole Internet address space" or ECS(IP1, IP2) where IP1 and IP2
are arbitrary IP addresses in whatever domain.
The idea that there might be more than one ALTO server, and that one
ALTO server might give better answers to some specific questions while
another ALTO server might give better answers to other questions,
was in our mind when we worked on the protocol, but it did not result
in any specific feature of the base protocol that would deal with that
situation.

This is different for the discovery mechansims: there we had the idea
that an ALTO server that is "near" to the endpoint of the data
transmissions to be optimized, typically announced by the operator of
the access network, will probably give good answers.
If the "peer selection" (or any other routing decision in the overlay)
is done in the endpoint of the data transmission itself, use RFC 7286;
if it is done at a remote entity such as a tracker, use RFC 8686 to find
ALTO server that is nearby the actual endpoint.


> On the other hand, if we want an ALTO client to receive merged information
> from multiple domains, ALTO servers need to be able to exchange
> information. In the example, the tracker will receive AS1’s and AS2’s
> merged information. Let's call it "multi-domain information exposure".
> As we identified [0], different use cases could benefit from multi-domain
> information exposure using ALTO. However, it also places requirements that
> the current ALTO design do not satisfy [1].

There is definitively room for extensions. We have so many architectural
options (side note: what is now just the "ALTO protocol" has been called
in RFC 5693 and 6708 the "ALTO client protocol", in anticipation that
there might be an ALTO server-to-server protocol in the future).


First area of questions: Data model.  If every ALTO server defines the
network map on its own and uses the default smaller-value-is-better
routingcost metric, which does not have a well-defined base unit, it
will be hard to impossible to merge information from different servers.
Deprecate them?  Replace with what? Or go for an architectural option
(see below) that does not require information merging on the ALTO
protocol side.


Second area of questions: placement of entities and protocols between
them. This is also not completely new, see Sec. 2.2.3 of RFC 7971

Ideas:

1. Define a new server discovery mechanism.  An ALTO client would
discover several ALTO servers from different domains, ask each of them,
and then aggregate the information on the client-side.

2. Mesh-style ALTO server-to-server communication.  Do we need a new
s2s protocol?  Is a small extension to the ALTO protocol sufficient?

3. Hierarchical structure with backend information sources and frontend
servers towards the ALTO clients. Aggregation of the information from
different backends takes place in the frontends. How to ensure
consistency? Do we need a new protocol for backend to frontend
communication? Is a small extension to the ALTO protocol sufficient?


>From an academic perspective, I'd love to investigate and specify each
of these options and many more.  But from an IETF perspective: who is
willing to deploy anything on a scale that requires and justifies the
effort for standardization?  If there is one: what is their preference
which way to go?  Is your group planning a deployment?

---------- Forwarded message ---------
From: Danny Alex Lachos Perez <dlachosper@gmail.com>
Date: Mon, Jun 29, 2020 at 8:18 AM
Subject: Re: [alto] ALTO at IETF-108: Finishing the current milestones and
discussion on re-chartering the WG
To: Sebastian Kiesel <ietf-alto@skiesel.de>
Cc: Ingmar Poese <ipoese@benocs.com>, Y. Richard Yang <yry@cs.yale.edu>


Hello Sebastian,

Thanks a lot for your comments
Please, see inline:

Even the very first ALTO use case was multi-domain in some sense:
> the bittorrent clients in the access networks of Comcast and Sprint,
> the pirate bay tracker in Sweden, that could be seen as three domains.
> The examples in the drafts you have listed are obviously different and
> more complex, but I am still struggling to tell what exactly is new and
> needs to be done.

Yes, I remember your question. I will try to clarify our multi-domain
approach.
>From your P2P example, we have the next figure:
https://drive.google.com/file/d/1GjoxeliHJjw7rp9eXpGxHB5m98EXl2Vc/view

An ALTO server in each domain will provide only local information to ALTO
clients. In the example, the tracker (ALTO client) receives
topology-/policy-related information of a single domain (AS1 or AS2). Let's
call it "single-domain information exposure".
On the other hand, if we want an ALTO client to receive merged information
from multiple domains, ALTO servers need to be able to exchange
information. In the example, the tracker will receive AS1’s and AS2’s
merged information. Let's call it "multi-domain information exposure".
As we identified [0], different use cases could benefit from multi-domain
information exposure using ALTO. However, it also places requirements that
the current ALTO design do not satisfy [1].

A second thought of mine is: how much extensions (and added complexity)
> do we need in the ALTO protocol?

We have identified an initial set of requirements/extensions such as (i)
conceptual query interfaces and data representation (e.g., unified resource
representation, resource query language), (ii) communication mechanisms
(e.g., ALTO servers communication, multi-domain connectivity discovery,
multi-domain ALTO server discovery), (iii) and computation model (e.g.,
computation complexity optimization, security & privacy) [1].

Would it make sense to start
> standardizing the "provisioning protocol" (see RFC 5693, Fig. 1) for
> multi-domain scenarios and put some (or all) of the additional
> complexity there?

Very interesting your point on the provision protocol for multi-domain
scenarios. RFC7285 also mentions an external interface for populating the
ALTO server and the possibility to exchange information with other ALTO
servers. This would make sense with the multi-ALTO server communication
requirement to allow exchanging network information from multiple
domains either using a hierarchical or mesh architectural design.

Best regards,

Danny Lachos

[0] ANRW19: https://dl.acm.org/doi/10.1145/3340301.3341126 (slides:
https://irtf.org/anrw/2019/slides-anrw19-final28.pdf)
[1] slides:
https://datatracker.ietf.org/meeting/interim-2020-alto-01/materials/slides-interim-2020-alto-01-sessa-supporting-multi-domain-use-cases-with-alto


---------- Forwarded message ---------
From: Sebastian Kiesel <ietf-alto@skiesel.de>
Date: Fri, Jun 26, 2020 at 1:59 PM
Subject: Re: [alto] ALTO at IETF-108: Finishing the current milestones and
discussion on re-chartering the WG
To: Danny Alex Lachos Perez <dlachosper@gmail.com>
Cc: Ingmar Poese <ipoese@benocs.com>, Y. Richard Yang <yry@cs.yale.edu>


Hi Danny,

Thank you for the heads up!

My first question would be: what are the domains in multi-domain?

Even the very first ALTO use case was multi-domain in some sense:
the bittorrent clients in the access networks of Comcast and Sprint,
the pirate bay tracker in Sweden, that could be seen as three domains.
The examples in the drafts you have listed are obviously different and
more complex, but I am still struggling to tell what exactly is new and
needs to be done.


A second thought of mine is: how much extensions (and added complexity)
do we need in the ALTO protocol?  Would it make sense to start
standardizing the "provisioning protocol" (see RFC 5693, Fig. 1) for
multi-domain scenarios and put some (or all) of the additional
complexity there?


Thanks
Sebastian


---------- Forwarded message ---------
From: Danny Alex Lachos Perez <dlachosper@gmail.com>
Date: Fri, Jun 26, 2020 at 12:17 PM
Subject: Re: [alto] ALTO at IETF-108: Finishing the current milestones and
discussion on re-chartering the WG
To: Ingmar Poese <ipoese@benocs.com>, Sebastian Kiesel <ietf-alto@skiesel.de
>
Cc: Y. Richard Yang <yry@cs.yale.edu>


Dear Ingmar and Sebastian,

In the last ALTO virtual meeting (Apr, 21), we had a very brief discussion
about our on-going work on multi-domain.
Since multi-domain is to be considered as a major re-charter item, I am
using this thread to resume the discussion and engage key experts like you
two.

Here are some points to start our discussion:

   - Potential initial drafts to consider could be those that show how the
   use cases in multi-domain need a solution that currently is not enough in
   the ALTO design. The main idea in those documents should be to provide
   study cases and design requirements that are more in the scope of
   informational drafts (Use cases/Problem statement/Design requirements).
   - For a long time, we have had different personal
   drafts/papers/presentations associated with multi-domain [0-6]. Therefore,
   one action point could be to collect such pieces and write an initial draft
   regarding multi-domain use cases and ALTO design issues.
   - On the other hand, while we also have an initial scope on some
   potential solutions, I think, such solutions need more interactions and
   probably we should consider them as proposed standard drafts.

Please, any feedback/comment/suggestion on the above points are really
welcome.

I hope to start a fruitful discussion,
Thanks in advance and extend this thread to others if you think it could be
convenient

@Richard: Please, feel free to complement my initial thoughts

Best regards,

Danny Lachos
[0] ANRW19: https://dl.acm.org/doi/10.1145/3340301.3341126 (slides:
https://irtf.org/anrw/2019/slides-anrw19-final28.pdf)
[1] slides:
https://datatracker.ietf.org/meeting/interim-2020-alto-01/materials/slides-interim-2020-alto-01-sessa-supporting-multi-domain-use-cases-with-alto

[2]
https://datatracker.ietf.org/doc/draft-lachos-alto-multi-domain-use-cases/
[3]
https://datatracker.ietf.org/doc/draft-xiang-alto-unified-representation/
[4] https://datatracker.ietf.org/doc/draft-xiang-alto-multidomain-analytics/
[5] https://datatracker.ietf.org/doc/draft-lachosrothenberg-alto-md-e2e-ns/
[6] https://datatracker.ietf.org/doc/draft-lachosrothenberg-alto-brokermdo/