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

Qin Wu <bill.wu@huawei.com> Sun, 21 August 2022 00:44 UTC

Return-Path: <bill.wu@huawei.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 C286AC1522BE for <alto@ietfa.amsl.com>; Sat, 20 Aug 2022 17:44:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.907
X-Spam-Level:
X-Spam-Status: No, score=-6.907 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-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
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 hq2wqGbcgDXp for <alto@ietfa.amsl.com>; Sat, 20 Aug 2022 17:44:35 -0700 (PDT)
Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C4C29C14CF08 for <alto@ietf.org>; Sat, 20 Aug 2022 17:44:34 -0700 (PDT)
Received: from fraeml706-chm.china.huawei.com (unknown [172.18.147.207]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4M9GrY0Mclz67n8d for <alto@ietf.org>; Sun, 21 Aug 2022 08:41:17 +0800 (CST)
Received: from canpemm100008.china.huawei.com (7.192.104.152) by fraeml706-chm.china.huawei.com (10.206.15.55) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2375.24; Sun, 21 Aug 2022 02:44:30 +0200
Received: from canpemm500005.china.huawei.com (7.192.104.229) by canpemm100008.china.huawei.com (7.192.104.152) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.24; Sun, 21 Aug 2022 08:44:29 +0800
Received: from canpemm500005.china.huawei.com ([7.192.104.229]) by canpemm500005.china.huawei.com ([7.192.104.229]) with mapi id 15.01.2375.024; Sun, 21 Aug 2022 08:44:29 +0800
From: Qin Wu <bill.wu@huawei.com>
To: Jensen Zhang <jingxuan.n.zhang@gmail.com>, IETF ALTO <alto@ietf.org>
Thread-Topic: [alto] Open discussions of ALTO O&M data model
Thread-Index: Adi09ZmYkGudOGOUSCW7Zq6pMN3Llg==
Date: Sun, 21 Aug 2022 00:44:29 +0000
Message-ID: <86f4a82bf14249d4b15aecada3235cbd@huawei.com>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.136.100.16]
Content-Type: multipart/alternative; boundary="_000_86f4a82bf14249d4b15aecada3235cbdhuaweicom_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/alto/SkInJ5GyxMX4FrUXfMZJOF5Hojk>
Subject: Re: [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: Sun, 21 Aug 2022 00:44:38 -0000

Hi, Jensen:
Thank for summarizing the discussion in last IETF meeting, please see my comments inline.

发件人: alto [mailto:alto-bounces@ietf.org] 代表 Jensen Zhang
发送时间: 2022年8月16日 21:04
收件人: IETF ALTO <alto@ietf.org>
主题: [alto] Open discussions of ALTO O&M data model

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.
[Qin Wu] If you chose to use identity data type, I think it is not necessary for you to use IANA maintained YANG module, IANA maintained YANG module allows you later on make update to the data type if needed.
If you don’t expect to have frequent changes to the data types, It looks identity is best option but not necessary to create IANA maintained module.
Otherwise, it seems overdesign to me.
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.
[Qin Wu] You might refer to multi-domain case in RFC7165, it did describe a few requirements and use cases for ALTO eastern-western bound API, but I think it leave the door open for the solution.
I think if you use other protocol than ALTO to define ALTO eastern-western bound API, it is apparent not in the scope of ALTO WG, it you use ALTO protocol to define server to server communication, I think it is in the scope ALTO OAM YANG.
Also don’t forget ALTO discovery mechanism, one is intra-domain discovery mechanism ,the other is inter domain discovery mechanism.
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.
[Qin Wu] We did discus this in Philadelphia meeting, ALTO focus on query interface, we did’t specify where the data come from and how to collect it. I don’t think
We should put too much constraints on how the data is collected and exported, stored and fed into ALTO server. Therefore based on our discussion in ALTO weekly meeting on Tuesday in this week, one suggestion to address this, factor out common data retrieval mechanism, move implementation specific or protocol specific parameters to the Appendix as an example.
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