[alto] Open discussions of ALTO O&M data model

Jensen Zhang <jingxuan.n.zhang@gmail.com> Tue, 16 August 2022 13:04 UTC

Return-Path: <jingxuan.n.zhang@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 D86A1C1522BF for <alto@ietfa.amsl.com>; Tue, 16 Aug 2022 06:04:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.105
X-Spam-Level:
X-Spam-Status: No, score=-2.105 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, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=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 ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id MfUFbSp_55Qy for <alto@ietfa.amsl.com>; Tue, 16 Aug 2022 06:04:15 -0700 (PDT)
Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 45DDBC1522A0 for <alto@ietf.org>; Tue, 16 Aug 2022 06:04:15 -0700 (PDT)
Received: by mail-wr1-x436.google.com with SMTP id j7so12563568wrh.3 for <alto@ietf.org>; Tue, 16 Aug 2022 06:04:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:subject:message-id:date:from:mime-version:from:to:cc; bh=8XuAeYCAxt6Zo0R8HYJKBWNWSt1SCUhSchtqgo9KWPo=; b=lRLyTqHkZuGck7aAJpg9s3OTYks5oG/hTTWAW94NdKGmsn1l+mv50IhRdF5sFU77+o sd+QuOEN7V0F0jdE32RQ93n9mJtvFSofn9z+6V2A8Ab3oZvM6r+75LS1a1SE1/GreEtB CiCbbxQ9rpowwbbs/U+QnDyUJ/wChxyRBVZFiEO4fiSHLEvvXRp1SEXIGcX8dK2wBkoM cgZwunOqJjKOQ9lWxjYc4b1u60LD4//TkDUQ0iZr2Qs7HD3q7ftG+aYLmw/J4/HH9ueo ghbfahuY0For0WHcK6pmZzS4qfWJYjCQ/c0ET4DLKT8RqLY+EirfjO13HouzZN2aQF1V KOaA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc; bh=8XuAeYCAxt6Zo0R8HYJKBWNWSt1SCUhSchtqgo9KWPo=; b=ePKXL8dNJDfEfN+pL4Eg8FtLksUkT0k9jDcawhz7cDFPjMcdbb1inDYD+DNxS2H7a3 ui0a/jgIOJvaOdiGbATB8PEV8D6axBQ6Pa6S4CTXz43qCplMwIPO9v226PFTCM+yiZjg QC7kqPNelvqwMr64tJ+cqO/a40fhTdf5T9rmh5gMUvEdj7D0pjTjncUKKohIlkvXKH9c Qi2G+RTNAmwjXlwno42mfXgf1lpIvsvS3yJ2cyJZyAl82iruz3BV/mNa2B7hSfRvF/sm zsYMH/BeJe8JykP0vWPleGDD4FUvoXjfYX2fiVZmB+zhSjMBpE+iU8cR77Q7bDLmMVXR qoYg==
X-Gm-Message-State: ACgBeo2AZRYQWwTcIi8elDQ9bR2MOFBbHhQEl3k1z23aOBaigQ5AlpiB Glg98j3QaK7HM10096fNa/n316NHQbHvjZyppKosny+IY6s=
X-Google-Smtp-Source: AA6agR7rIU+eS7Tw8whbDg9F/dZzhuw0pl7qVSUnyjGZ6xruVpvRPK8lGhQGmsqRaeDX6Xg8TEhFUllTe1oX7zylmxI=
X-Received: by 2002:a05:6000:1867:b0:21f:f2cf:74a8 with SMTP id d7-20020a056000186700b0021ff2cf74a8mr11796168wri.344.1660655053219; Tue, 16 Aug 2022 06:04:13 -0700 (PDT)
MIME-Version: 1.0
From: Jensen Zhang <jingxuan.n.zhang@gmail.com>
Date: Tue, 16 Aug 2022 21:04:01 +0800
Message-ID: <CAAbpuypWwGxykMv1n=KQ0U4vFE8oNfkrzj35WSZFjEujctL9kg@mail.gmail.com>
To: IETF ALTO <alto@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000008aabbc05e65b62b9"
Archived-At: <https://mailarchive.ietf.org/arch/msg/alto/CKMR7J-JllHyGcdyesLoueYAIJc>
Subject: [alto] Open discussions of ALTO O&M data model
X-BeenThere: alto@ietf.org
X-Mailman-Version: 2.1.39
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, 16 Aug 2022 13:04:18 -0000

Hi ALTOers,

>From the WG session in IETF 114, we had a lot of discussions about the open
issues for ALTO O&M. Authors appreciate all the comments and are working on
the next revision.

We quickly summarize the major debates and are willing to have more
discussions to move this work forward. To be more efficient, we may
separate the discussions to different threads later.

1. How to handle data types defined by IANA registries

There are actually two arguments:

1.a. Which statement is better used to define the IANA-related data types
(e.g., cost modes, cost metrics)? Two options: enumeration typedef or
identity

The main limitation of the enumeration is the extensibility. As ALTO may
have multiple ongoing extensions, it will be required to add new private
values for existing data types for experimenting purpose. Identity is
better choice to support this.

1.b. Whether put the data type definitions to an IANA-maintained YANG module

>From the guidelines provided by Med (
https://datatracker.ietf.org/doc/html/draft-boucadair-netmod-iana-registries-03),
IANA-maintained module is RECOMMENDED.

2. Whether and how to supply server-to-server communication for
multi-domain settings

There is no draft defining any standard for ALTO eastern-western bound API
(server-to-server communication). Defining data model for this may be too
early. But this problem is important in practice. We have several potential
choices:

2.a. Each ALTO server connects data sources for its own domain, and build
interdomain connections with each other (using eastern-western bound API)

2.b. A single ALTO server connects data sources from multiple domains. The
data sources provide interdomain information for ALTO server to build
global network view.

3. How to build connection between data sources and algorithm data model

Consider each algorithm data model defines an interface of an ALTO service
implementation. It declares types for a list of arguments. Those arguments
can be references to data collected from data sources.

In real practice, there are two cases using data to calculate ALTO
information resources:

3.a. ALTO service (algorithm plugin) directly reads data from data sources
to calculate ALTO information resources.
https://datatracker.ietf.org/doc/html/draft-hzx-alto-network-topo-00 can be
one of such examples

3.b. ALTO server preprocesses data collected from data sources and writes
to a data broker. Algorithm plugin reads data from data broker to calculate
ALTO information resources. FlowDirector (
https://dl.acm.org/doi/10.1145/3359989.3365430) can be such an example.

These two cases may coexist in the same ALTO server implementation.

Supporting 3.a in O&M data model is easy. Sec 7 of the draft provides such
an example. However, Consider the O&M data model MUST NOT assume the
schema/interface of the data broker is fixed, it will be hard to support 3.b

One potential solution is to allow the data model to define references to
data in the data broker, and dependencies between data in the data broker
and the data sources.

Looking forward to seeing feedback and further discussions.

Best regards,
Jensen