Re: [Teas] A question about draft-ietf-teas-te-service-mapping-yang

"Ogaki, Kenichi" <ke-oogaki@kddi.com> Mon, 12 April 2021 08:24 UTC

Return-Path: <ke-oogaki@kddi.com>
X-Original-To: teas@ietfa.amsl.com
Delivered-To: teas@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8AF613A11D9; Mon, 12 Apr 2021 01:24:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level:
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=o365kddi.onmicrosoft.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 xXZzVTS8fL9Z; Mon, 12 Apr 2021 01:24:39 -0700 (PDT)
Received: from kddi.com (athena5.kddi.com [27.90.165.210]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CEBE73A11DB; Mon, 12 Apr 2021 01:24:38 -0700 (PDT)
Received: from kddi.com ([127.0.0.1]) by LTMC3101.kddi.com (mc MTA5 1.4) with ESMTP id 521041217243551400.22391 ; Mon, 12 Apr 2021 17:24:35 +0900
Received: from kddi.com ([10.206.2.120]) by LTMC3101.kddi.com (mc MTA4 1.4) with ESMTP id 421041217243461800.22360 ; Mon, 12 Apr 2021 17:24:34 +0900
Received: from kddi.com ([127.0.0.1]) by LTKC3122.kddi.com (mc MTA19 1.4) with ESMTP id j21041217243358000.05993 ; Mon, 12 Apr 2021 17:24:33 +0900
Received: from localhost ([10.206.20.239]) by LTKC3122.kddi.com (mc MTA16 1.4) with SMTP id g21041217243282800.05848 ; Mon, 12 Apr 2021 17:24:30 +0900
Received: from localhost ([10.206.20.239]) by LTKC3122.kddi.com (mc MTA11 1.4) with SMTP id b21041217243227800.05602 ; Mon, 12 Apr 2021 17:24:30 +0900
Received: from localhost ([10.206.20.239]) by LTKC3122.kddi.com (mc MTA8 1.4) with SMTP id 821041217243113700.05168 ; Mon, 12 Apr 2021 17:24:30 +0900
Received: from LTKC3133.kddi.com ([10.206.20.239]) by LTKC3122.kddi.com (mc MTA6 1.4) with ESMTP id 621041217243034300.04745 ; Mon, 12 Apr 2021 17:24:30 +0900
Received: from LTKC3133.kddi.com (localhost.localdomain [127.0.0.1]) by LTKC3133.kddi.com with ESMTP id 13C8OTaI022055; Mon, 12 Apr 2021 17:24:30 +0900
Received: from LTKC3133.kddi.com.mid_1353650 (localhost.localdomain [127.0.0.1]) by LTKC3133.kddi.com with ESMTP id 13C8EPg4016339; Mon, 12 Apr 2021 17:14:26 +0900
X-SA-MID: 1353650
Received: from LTKC3144.kddi.com ([10.206.20.232]) by LTKC3124.kddi.com (mc MTA 1.4) with ESMTP id 121041217142481000.07582 ; Mon, 12 Apr 2021 17:14:24 +0900
Received: from LTKC3144.kddi.com (localhost [127.0.0.1]) by localhost.kddi.com (Postfix) with ESMTP id AE2F213C008B; Mon, 12 Apr 2021 17:14:24 +0900 (JST)
Received: from kddi.com (LTMC3104 [10.206.2.56]) by LTKC3144.kddi.com (Postfix) with ESMTP id 9853713C0053; Mon, 12 Apr 2021 17:14:24 +0900 (JST)
Received: from APC01-SG2-obe.outbound.protection.outlook.com ([104.47.125.59/tls]) by LTMC3104.kddi.com (mc MTA 1.4) with ESMTP id 121041217142341400.06394 ; Mon, 12 Apr 2021 17:14:23 +0900
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WPqyiEC2YV2R9/fnqAcUSV6yTH+oub2kaRHsDRtgo7Q855F5CvRyLPConQsRxU/dOEh1ZlV7wRQ95ouIT9bmu6CLcEX4CwnmCdYnVM13dZJT5MjvF9E5Lb4trQ4Ga5OAQ1h8r9M+1n46dMnc+09FyzN3V6c805wq5FpX1f321Y8Wf30FTC0FfFk/5S+4ZzdGrLnDWW0IbEHPd0M622C6IKkcg2T9D3MHpApzlB4uDoTsqW+s5FZPWq7OXMVgbTDdQCSrP6mjm7mhrYq8qD+cm2cSs+yXNFPlFl6QTNzyEVm/s9Ph0V7ibricRS1UT4896APzb5psIIlqWKojgvbPtw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8VpZbJAL2LAXYnL1dpOTgNA+ZgBw6zfb2Cdqto1kw/A=; b=dzBemo/tMO+8LliLXHT1vzWXNT9UnHC7twCnZFwGmIwPL6dtAdVBIa9DQWbvwB4UhDkNe74OIxiVOitPrbm7Hb0tvsAQzl0ctFBqfMUOTgvmWzuWxrPOFHrd7LiXsepPqNSH33j85EGCjpyFSCpVdK3OrzGSoeLM9Wa2Jt1RLDeUHskQIEIOh35MmdC/7fyWgBhv6NPDvRGXvK8APQ6YahQ06JwTBubywcbkCsa3jWKRW96yR1e8w1BUAXCrQ+ZmZ1/s+tJp6nzaYIBtc2V3QNJgzcO3cahY72CBliqOziAyE/vmNX6d6bCbVCGSh5xh1y3T2T8zU16l6VcmcnSnwA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=kddi.com; dmarc=pass action=none header.from=kddi.com; dkim=pass header.d=kddi.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=o365kddi.onmicrosoft.com; s=selector2-o365kddi-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8VpZbJAL2LAXYnL1dpOTgNA+ZgBw6zfb2Cdqto1kw/A=; b=AOn8cjpEM+7uFR+JBd7D4SBUmYPDzTHiIgyMs8unzZBIakledOs2wPSubrmyDwmqyVCumoCQYlc6woj4FNJ8URFKD5tGc6C14hxJzsksgm7rDe2ApsKHgxx58hlRCM29Df7VJ2sucu9dWPAukR8Hptx3c2UciujNiRViOQou3ts=
Received: from TY2PR01MB3562.jpnprd01.prod.outlook.com (2603:1096:404:d5::14) by TY2PR01MB2683.jpnprd01.prod.outlook.com (2603:1096:404:71::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16; Mon, 12 Apr 2021 08:14:21 +0000
Received: from TY2PR01MB3562.jpnprd01.prod.outlook.com ([fe80::68f8:ea85:dc21:a4ba]) by TY2PR01MB3562.jpnprd01.prod.outlook.com ([fe80::68f8:ea85:dc21:a4ba%6]) with mapi id 15.20.3999.037; Mon, 12 Apr 2021 08:14:21 +0000
From: "Ogaki, Kenichi" <ke-oogaki@kddi.com>
To: "adrian@olddog.co.uk" <adrian@olddog.co.uk>, 'Oscar González de Dios' <oscar.gonzalezdedios@telefonica.com>, 'Dhruv Dhody' <dhruv.ietf@gmail.com>
CC: "draft-ietf-teas-te-service-mapping-yang@ietf.org" <draft-ietf-teas-te-service-mapping-yang@ietf.org>, 'TEAS WG' <teas@ietf.org>, "ta-miyasaka@kddi.com" <ta-miyasaka@kddi.com>, "ry-fukui@kddi.com" <ry-fukui@kddi.com>
Thread-Topic: [Teas] A question about draft-ietf-teas-te-service-mapping-yang
Thread-Index: AdcsvdezyQQF/L3zSuGnrgrzYkyiGwAS6+sAAAGUQiAAC+BMAACLTjjg
Date: Mon, 12 Apr 2021 08:14:21 +0000
Message-ID: <TY2PR01MB3562A0265D671FCFB905973D90709@TY2PR01MB3562.jpnprd01.prod.outlook.com>
References: <085201d72cbd$ff5ff9c0$fe1fed40$@olddog.co.uk> <CAB75xn7918o5CcJ8zaGUPw7B-f4HtbYDGf=4Hi3y==eUL38ydQ@mail.gmail.com> <PAXPR06MB787220F5CB9936C46C042A28FD739@PAXPR06MB7872.eurprd06.prod.outlook.com> <091701d72d3f$5ae2edd0$10a8c970$@olddog.co.uk>
In-Reply-To: <091701d72d3f$5ae2edd0$10a8c970$@olddog.co.uk>
Accept-Language: ja-JP, en-US
Content-Language: ja-JP
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: olddog.co.uk; dkim=none (message not signed) header.d=none;olddog.co.uk; dmarc=none action=none header.from=kddi.com;
x-originating-ip: [175.129.6.69]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 8885b50c-cdf8-4599-c0f5-08d8fd8afa02
x-ms-traffictypediagnostic: TY2PR01MB2683:
x-ld-processed: 040b5c43-0c27-49b3-b8e6-cdec886abcee,ExtFwd
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <TY2PR01MB26837F89B615FD1B8220080C90709@TY2PR01MB2683.jpnprd01.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:7219;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: uovis9GMDWNdbIFo56biCKay9Wm5xF/nRO8fA3g1MTzsOS0iFlvvbc6D4WsMHxQOgdH2vBrbXsfKb9Xbp4ipHl+Q6hlKpfIcDr588AxzMe1wPwUonZvcOLX4omDH3B1MGIcDiw62eO/ryq0svdpN8nfRq1Zd+Vv12AiT/YMzM8vZnKsCUjHRQpnXlzcciOACoOs93/IPOxjsxwB4TyZYnxuCPLd2ASV4h4hdiKaFmMPmSDsdiYObFDF9V2R8hvLDwxIpVZhmwWWSMvqTzLXuxkiDf39i9WsFdbr12ZZrDwg+NoRPkWmbqHaj3gC2IabckVmH7TdlETrHnkSzFlrB7kutIwdWybpVUgQtfcBDuJJVqrQNMCYl8aS8oMlwK8jPwWfOpmV7GhtM6EgEEqLmv2+Ez2w4T44H7gF58V1/PY1xKxiZvT6LbUQeCZxqQN4RwFtwgwq2SGCSDB0imp8f1NKttBHBbOMTj/WVan0bLBNLhnhJEuaqtuZ/7fbDN+juNYtJiIEK1wwmUM1ViyIhtv2V1BcUZmwMU4CsX64W5vH6bo7eJSfgRBHn6TfMyE6YgGI03/P8g9IS1bSpkI0kl/8NvmKw+j6qOMF02uDBbVRxQBKszNlSHcq5SVY81w+5XmgP0ax6gfUkReVAdxzEzlM/tSGlgIjfjVFfeN20OxabrSt1jppgIWyviqLT+wIE8Zuttu4hg/Pa08IQXk0IZ4qLdF33gNTTiAisGjD2i9A=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TY2PR01MB3562.jpnprd01.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(396003)(136003)(39860400002)(376002)(346002)(186003)(54906003)(8676002)(110136005)(55016002)(478600001)(6506007)(86362001)(2906002)(38100700002)(8936002)(966005)(85182001)(53546011)(26005)(30864003)(316002)(52536014)(66556008)(7696005)(64756008)(66476007)(83380400001)(66446008)(107886003)(5660300002)(66574015)(9686003)(76116006)(71200400001)(66946007)(33656002)(4326008)(21314003)(579004); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata: qkRD/TTiAG8cT8ltiJovxS9c1hHyi/hthnV+SWu6JZ5IAPH0xVX7SGhr+u3YlLQm7qQdzUqXLBGCeFb1JMfCK2RJwIly3Pg7EXgHPZYVq4nEgwSxlv09vTgnLMUYn4640C1CsBdxe+ihOq4t3f+X5E75pxIlQZYCqRLVl/9uWAl3DnUoHtiga9x8s5FSTNEXiC3ALF0Nt9oGgMNlL1EicJRzn4X4p2rsZpfVHH4WizFs1S6BmV3ZOt2GiN7cBEQB3SXsZGG0Bru+bN5xO/Clp+2+aJPHSg4xarTAFIumP/DE8/vQYIBwO/m2TyBozUz6t4vK+6KhR0z5deqoSV5hJF/cv7MsJP0BLaNzboe5I4WqaRrbjmsXzZmSxVV6Ql30JqgG0GjvPxrSto7ctcAXr+qpkcXeoqQGof6FAQuIiAK1Swqq0fmwg70KQfUNfVUcN0FayxdI7icBzf72X3GX1QLkeFiEQAMlTrrH0XCS30btiz6cFUKofewEiWHsrUG8gxOgL5ckSoD++xA0O2N/jknzsPqWxLnrCVwcqRHborM3u7eXBAR45kAfd8mxivlQpxxvWZszuSkZfPTu7Fhi5XEs6+r77hbZnqlJo+z06ZkllmdKxrno2LYJUc2T/CIk5e77L7WoOXvHUfG1uOaBo+Hq2rjt406vRLGXr0yjQxFe/n+7QX2g7YIFS+e0mvPuqb8IQiw7/l+8BS/4B0XtpC7Yrvxr+tLDXUfdiqJqSPTBKTxtMmcSWTEvoqDowB0indTlEliZHC7dOTbiudgiqjaRC4C0WfKdXEVXMQdDlwEpZVM0Pk7RL2cPg0kxmap5Jvj9b6/U9n6RpQOZdpgBbsGkpeqx3eb9s6S5RgaPzlkM5jTgv85zeD2MCnmPymYQd9rVjzSmSQTf8FtcY/229t900LegPMJ3ZzmGTfgfy2FdgtNImvRd7iErBAkGbkgD6otH+R4Uuroz0DvOlyIRrI90yZOO0ktKG1HIIcnOACG1eweEY2ot4VFuf2JG/9At6PDOyed3EX4+AWh+rd1lvvEwB4JOQBJldxz737CaLk/5gY4U8sdBIDftBZVmdxlYwFoAS7wHpCqjUKaiHd90YOnwN2rTHnGtvlNHsHnq9qthXkOULDdEp/Fc7JdECeZIqenbtd3oZThTlVTHwCVU1zdbNwjkKMzIxu45wlgzGnN1jH180AWOZb04KPr2LOV9UrGl/3w5ZKq3T2BSwsc/RsIFYKWzkS9ZPgium+w1EJ3ne+eJMh3dYFVPtBCpAcQcf3zrjazopmnHgtWJxnJzeyqJ/xqw5UXGQlDBgrohQ5c=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: kddi.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: TY2PR01MB3562.jpnprd01.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8885b50c-cdf8-4599-c0f5-08d8fd8afa02
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2021 08:14:21.4194 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 040b5c43-0c27-49b3-b8e6-cdec886abcee
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: wBpxR1MoYM/zbfS0tqDvend3NhaIAvtXzU1ebPIuOliamFL6aE4jpRo22tGoB28OjeNcJz0CPFP8bmM82sn7xQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TY2PR01MB2683
X-TM-AS-GCONF: 00
Archived-At: <https://mailarchive.ietf.org/arch/msg/teas/qmPGkVEchkaTDL7gquXcvBmvgHc>
Subject: Re: [Teas] A question about draft-ietf-teas-te-service-mapping-yang
X-BeenThere: teas@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Traffic Engineering Architecture and Signaling working group discussion list <teas.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/teas>, <mailto:teas-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/teas/>
List-Post: <mailto:teas@ietf.org>
List-Help: <mailto:teas-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/teas>, <mailto:teas-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 12 Apr 2021 08:24:45 -0000

Hi Alll,

As an operator, I almost agree with Oscar's objective/requirements/usecases.
However, as a contributor(requester) to te-service-mapping-yang, I have some comments about the discussions below

See four comments [KO] inline, please.

Thanks,
Kenichi

-----Original Message-----
From: Teas <teas-bounces@ietf.org> On Behalf Of Adrian Farrel
Sent: Friday, April 9, 2021 9:54 PM
To: 'Oscar González de Dios' <oscar.gonzalezdedios@telefonica.com>; 'Dhruv Dhody' <dhruv.ietf@gmail.com>
Cc: draft-ietf-teas-te-service-mapping-yang@ietf.org; 'TEAS WG' <teas@ietf.org>
Subject: Re: [Teas] A question about draft-ietf-teas-te-service-mapping-yang

Hi again.

Thanks for the comprehensive replies.

I summarise this as: Oscar pretty much agreeing with me, and Dhruv wanting to keep options open.

The thread is in danger of getting horribly nested, but I’ll try to convert to ASCII and reply in line.
Triple quote: me
Double quote: Dhruv
Single quote: Oscar

> Sorry if it is a “detour”, but let me first explain the “rationale” of 
> the use case and from there, the requirements, which apply at different levels of abstractions.

Not a detour at all! My question is very heavily vested in the use cases (with a touch of practical possibilities for implementation).

>  As mentioned, first, the use cases
>
> A) I want a VPN service with a given optimization criteria for all the VPN
>     A.1) For example, minimum latency
> B) I want a VPN service with two (or more) sets of optimization criteria for all the VPN
>     B.1) For example I want a set of minimum latency paths and a set of low loss paths.
> C) I want a VPN service with a given optimization criteria for some source-destination
>     pairs (PE to PE)
>     C.1) For example I want that from PE XX to PE YY a minimum latency 
> path
> D) In addition to an optimization criteria include:
>     D.1) A constraint. For example less latency than 20 ms.
>     D.2) A resilience property. For example, create 1+1 paths, create restorable paths, 
>             etc.
>     D.3) Exclude some area/node/link/srlg from the paths asigned to the VPN. Example,
>             enterprise VPN customers don’t want their traffic to cross certain countries or
>             certain trans-ocean links (yes… this happens, customers are picky).
> E) Instead of binding the paths to the whole VPN, explicitly indicate which traffic goes
>      to each type of path
>     E.1) The input can come from the user. E.g. the enterprise customer can tell, hey,
>             the traffic I sent marked with XX, from IP xxx, please go with delay less than YY.
>             These needs to be passed to the VPN creation. 

Up to this point, this looks and feels very much like “enhanced VPN as a service”. All well and good, and makes sense to augment the LxSM models. (Although note that the service requirements here are also ferociously similar to those for a network slice – maybe not such a coincidence.)

I have some unease about the term “path”. I think I know what you mean, but it is very easy to mistake your “path” as viewed from the customer’s point of view, for a TE tunnel which *might* be how the service provider realizes the service. It is sometimes helpful to talk about “demands” or “flows” when describing the service.

> F) Calendaring. We have received request from our business units to be able to
>     calendar certain paths for time periods only, and schedule them in advance.
>     E.g. enable a XX Gbps path between 3 am and 6 am.

And why not?
But, again, with my slight reservation about the service talking about “paths”.
RFC 8413 gives some hints about how to support that within the network.

> So, the requirements start high level from the customer and they are 
> “de-abstracted” and materialized into the network. Well… in some cases 
> you see the customer requirements are not so abstract, the “less than 
> X ms” is pretty clear. Or the “I want to avoid passing this country or this link”
> (This comes from real life examples of today’s requests that have had 
> to be solved with a lot of manual and careful planning).

> What tools do we have to express and create all this? When we started 
> the journey we had just the customer service models…

That’s fine and reasonable.

> The “general” idea that we had about the use of customer service 
> models is that the customer uses the service models, which don’t 
> provide details of the inside of the network. That was the reason to 
> create the Network models in between to decouple the service 
> orchestration part (which involved many steps and decisions before 
> jumping into instantiating the service in the network and involve business logic).

Right. That’s my understanding of the distinction between LxSM and LxNM.

> So, the first work of the network models, the one is in last call in 
> opswag, addresses precisely how an operator has chosen to create a VPN 
> service, in which network nodes to instantiate the VRFs (vpn_nodes in 
> the model), which interfaces are attached, which protocols are used 
> between PE-CEs, etc. The model allows to indicate an ordered 
> preference on  the underlay

A bit of dangerous passive voice here.
I think “The model allows the network orchestrator to indicate…” or “This model allows the network operator to indicator…”
That is, we’re talking about the network models and so it is not the customer making this indication.

> transport, that is, how the packets are sent from one PE to other PE. 
> So, for example, the operator has decided that the VPN service  is 
> implemented with a best effort underlay transport using LDP, then that 
> would be indicated in the model. Or, the operator can choose to prefer 
> Traffic Engineered tunnels, and if it is not possible, fall back to LDP.

OK

> But
> what was NOT included in the draft is any detail on a) how the network 
> is “traffic engineered” b) which charateristics must this traffic 
> engineering have and c) which traffic of the VPN goes into which 
> tunnel…. One of the main reasons to leave that out was to avoid the “boiling the ocean”
> problem and limit the scope to opsawg. TE… would be dealt of course in 
> TEAS ☺

OK, and those three objectives (a, b, c) are reasonable things to put into the network model. Just not, IMHO, into the customer service model.


[KO] As Adrian described below, when VN is a service and our customer uses the VN as a service, why is the VN put into the network model reasonable? Am I something misunderstanding?
 "In this case, in my opinion, the cooked topology delivered to the customer is in the form of a service already. It might be a VN or it might be a set of connectivity services (i.e., tunnels). In this case, the delivery of a service over a service is highly ambiguous and I don’t think it falls within the operator’s capabilities to achieve it. The cooked topology is for the customer to use as they see fit."


> So, we need to solve several problems
> 1) How to express the customer requirements in the service models

Agreed. But we need to be very careful that we only put the customer requirements in the service models, and don’t “accidentally” slip in stuff that a customer cannot know about or has no business dealing with.

> 2) Once the customer requirements are known by the service orchestration,
>     be able to express the operator’s choice to satisfy that requirements in
>     terms of traffic engineering:
>     a. Create a new set of tunnels
>     b. Reuse existing tunnels
>     c. Which technology to use in the tunnels (do I use RSVP-TE or I prefer to
>         use segment routing)

Yes to all that, which seems to belong in the network models.

> 3) Now that the operator’s preference is know, create the necessary tunnels
>      is needed

Right. And hence the need to link the network model into the tunnel models.

> 4) Explicitly associate those tunnels to the VPN service

Eeek!
I think that maybe this association is indirect. That is, the tunnels are associated to the VPN realization in the network model, and the network model is associated to the VPN service in the service model.

> 5) Create the necessary policies to drive the traffic into the tunnels (this
>      allows to cover the cases in which the customer traffic has different
>      requirements). 

Indeed. The “service mapping” (in the terminology of enhanced VPN and network slicing) is an important feature of flow filtering or packet classification that is part of the realization of the VPN service and so lives within the network model.

> With this in mind….. answering you questions inline I would say (from 
> my humble point of view)

>>> As the L3NM draft is going through last call in OPSAWG, now seemed 
>>> like a good time to give this document a bit of a review.
>>>
>>> I have a top-level question that is puzzling me quite a bit. It 
>>> concerns the purpose of the YANG model (and so the purpose of the 
>>> draft). The question is which of these cases applies:
>>>
>>> 1. The user of the LxSM models have the option to control which TE
>>>   tunnels are used to support the VPN service. The user can use the 
>>>   model at the service interface to write this information.
>
> [Oscar] If by TE tunnel you mean the real tunnels deployed in the 
> operator network, I would say that as a general rule NO. Precisely the 
> goal of the Service model is to provide an abstraction and capture the 
> requirements without needing the customer to know the internals of the 
> operator network.

So far so good.

> If by TE tunnel you mean an abstraction of a topology “cooked” and exposed
> to the customer, the answer is yes….   

OK. Here we have some disagreement.

In this case, in my opinion, the cooked topology delivered to the customer is in the form of a service already. It might be a VN or it might be a set of connectivity services (i.e., tunnels). In this case, the delivery of a service over a service is highly ambiguous and I don’t think it falls within the operator’s capabilities to achieve it. The cooked topology is for the customer to use as they see fit.

So how would this work? Well, the cooked topology has a cooked-topology-orchestrator that is able to control and provision services over the cooked topology using, for example, an LxNM to realise a VPN service over the cooked topology. In this case, the LxSM is unchanged, and the LxNM for the cooked topology refers to the tunnels etc. in the cooked topology.

[KO] When the cooked topology is VN, then MDSC should be a cooked-topology-orchestrator and the cooked-topology is provided by CMI. In my understanding, CMI is a kind of LxSM.


>>> 2. The user of the LxSM models have an interest in which TE tunnels are
>>>   used and the operator can report the relationship. The user can use
>>>   model at the service interface to read this information.
>
> [Oscar] Same as before, I see really unlikely to report the full 
> details. Said that, some cooked information is needed for some use 
> cases (remember the case where the customer wanted to know which 
> countries did his traffic go
> though..)

Weeeeeell, the cooked tunnels are also a service. The customer probably has no ability to know how they are routed through the underlay.

This user requirement (which I fully accept is a realistic customer request) is not one of those “measurable SLOs” described in the enhanced VPN and network slicing work. It is a contractual thing where the operator is taken on trust that they are delivering what they have promised, but it is notoriously hard to prove without exposing a lot of details about the operator’s network.

>>> 3. The information about the tunnels is not exposed at the service 
>>>   interface, but is important for service realisation. In this case the
>>>   model augments the LxNM models but not the LxSM models.

> [Oscar] Yes, this is the case where we are more interested. The 
> customer requirements are executed by resusing or creating a new set of tunnels.

Good. You and I are in agreement.

> This needs to be made super-clear in the Abstract and Introduction so 
> that the reader can understand the purpose of the work. The text in 
> the document is currently somewhat unclear about this, but as I worked 
> through the document (and especially once I reached the tree diagrams) 
> it seems clear that all three of these bullets are intended to be 
> supported.

>> I will work on adding this upfront. 

Excellent. Clarity of purpose Will help.
 
>>> Now, I wonder whether the document is conflating several objectives:
>>>
>>> a. Provide some additional service characteristics for the LxSM models 
>>>    in order to support the sort of service features that might be
>>>    included in a request for an enhanced VPN. I can see why this would
>>>    be done as an augmentation of the LxSM models, and it is a fine thing
>>>    to do.
>
> [Oscar] Fully agree. 
>
>>> b. Provide some additional service characteristics for the LxNM models
>>>    in order to assist with the realisation of the LxVPN services. Again,
>>>    I see why this would be done as an augmentation (in this case of the 
>>>    LxNM models), and it is also a fine thing to do.
>
> [Oscar] Here we have TWO use cases for the LXNM models. In one of 
> them, the explicit binding to tunnels is required. That is the “finer” 
> level of granularity. However, we can also use the network model one 
> step behind, in which the operator has just made the preference (use 
> tunnel, reuse
> tunnel) and passes this requirements via the network model and then a 
> PCE/Controller/whateverfancynameyouwanttocallit calculates the paths, 
> creates the tunnels, reserves the necessary resources, etc…

Perfect. The finer binding is case c., below. The presence of tunnel identifiers in the LxNM augmentation doesn’t mean they have to be used in all cases.

>>> c. Provide a mapping to assist in realisation of the LxVPN services by
>>>    identifying which TE tunnels are used (and how). To me, this feels 
>>>    like an augmentation of the LxNM models as it allows the operator's
>>>    management software to make the association for control purposes and
>>>    also allows the mapping to be visible to the operator for diagnostic
>>>    purposes. 
>
> [Oscar] Fully agree. That is one of the main needs.
>
>>> d. Provide a mapping so that the customer can control/see which TE 
>>>    tunnels are used to realise the LxVPN services. This would be an
>>>    augmentation of the LxSM models but I don't understand the required
>>>    function here. Surely the customer cannot control which TE tunnels
>>>    are used to operate an LxVPN service: the tunnels are the property of
>>>    the operator, and the customer can neither specify that the be used
>>>    nor control how they are used. It is true that the customer may want
>>>    certain service characteristics that will dictate how the provider
>>>    operates the TE tunnels, but these characteristics (see point a.) are
>>>    specified as service features not as implementation/deployment 
>>>    behaviors. I can also see that the customer may be interested to know
>>>    which tunnels are in use to support the service, but the chances are
>>>    that the customer would not know what these TE tunnels are.
>
> [Oscar] I would refer to my comment bellow. I would expose those 
> tunnels on a “cooked” topology for the customer. The customer sees a 
> “simplified” view focusing on their needs or concerns.

OK, I can’t see harm (but also can’t see value) in reporting the tunnels that have been used: the customer has no control over their use, and possibly has no understanding of what they are.

But I don’t think this is a priority. As above, I think the relationship with the cooked topology is through the LxNM that applies the VPN service to the cooked topology. That appears to be agreed in your comment about ACTN, below.

>>> There is one further comment about point d. It is quite possible 
>>> that the customer has requested that TE tunnels be set up as 
>>> services for the customer to use. But these would not be available 
>>> for support of the LxVPN service as they are already services in their own right.

That is my point about the cooked topology.

>>> Now, perhaps we should consider the ACTN use case where a VN has 
>>> been built for and delivered to the customer. In this case, the 
>>> question arises as to whether the LxVPN is supported over the VN or 
>>> supported over the provider's network using the resources of the VN. 
>>> In my view of this, the LxVPN is supported over the VN: it is the 
>>> VN's management system that realises the VPN using TE tunnels in the 
>>> VN, and the VN with it's management system and TE tunnels is treated 
>>> just like a real network.

[KO] I think this might be technically correct, but VN service and VN's management system have never commercially existed yet, and there are only LxVPN's management systems. Under this situation, operators should desire the existing LxVPN's management systems to utilize/map VN resources for the existing LxVPN service, when the VN service has emerged. Thus, I believe te-service-mapping-yang should exist.


> [Oscar] Precisely VN or an abstract topology fulfil this purpose.

Right, and that means it is an LxNM that maps to the VN.

>> Yes, at the high level, the mapping could be made to either (1) VN, 
>> or (2) TE topology abstract node (and its connectivity matrix), or 
>> (3) set of tunnels.
>>
>> The key idea here was to have full flexibility from the YANG point of 
>> view with the use of a 'choice'. As highlighted by you, in the case 
>> of LxSM model, (3) may not be common and in the case of LxNM, (1) 
>> would not be commonly used. There were some discussions on limiting 
>> the scope but it was seen as useful for the YANG to allow various 
>> mapping combinations. We could check if that has changed
>> and in which case we might limit the choice.     

We seem to be in general agreement, but you are saying that there might be people who don’t want to see the scope Limited.
>From your language, I take it that you are not in that group (elsewise 
>you would have said so). So we’re looking to hear specifically from 
>people who want (2) (or, funcitonally, those who want d.)

>>> And, on top of all this, now that ietf-vpn-common has been created, 
>>> I am wondering whether that is the sweet spot for augmentation, not 
>>> the LxS/NM models.
>>>
>>> This all leaves me thinking:
>>> A. You want an augmentation to LxSM for enabling enhanced VPN service
>>>    requests.
>>> B. You want an augmentation to LxNM for realising enhanced VPN service
>>>    requests.
>>> C. You want an augmentation to LxNM to show how TE tunnels are used to
>>>    realise the VPNs.
>
> [Oscar] Yes to all
>
>>> A. and B. can probably be done as a common augmentation of 
>>> ietf-vpn-common and should be in a separate document. C. is what 
>>> this document is about. And there is deliberately no D. because 
>>> exposing the TE tunnels in the LxSM is neither meaningful nor possible.
>> I am not sure I understand how a common augmentation of 
>> ietf-vpn-common can help.
>> ietf-vpn-common has a set of groupings that are meant to be used by 
>> LxNM (and future update of LxSM) model.
>>
>> Currently, the ietf-te-service-mapping-types model contains groupings 
>> and a container for configuration of the te-mapping-templates. Then 
>> ietf-lxsm- te-service-mapping augments LxSM and 
>> ietf-lxnm-te-service-mapping augments LxNM models using the common groupings.
>>
>> Even if we make the ietf-te-service-mapping-types to augment 
>> ietf-vpn-common, it would not automatically lead to augmentation of 
>> LxSM and LxNM models. Am I missing something regarding your point on common augmentation?
>
> [Oscar] I tend to agree with Dhruv. The vpn-common is just a bunch of 
> common types to be reused.
>
> So. What we need here is the “service-mapping” common to be reused 
> among models
>
>> … Now as you see is everything related to the service mapping in a 
>> single draft…

I should have raised this point in a separate thread. Sorry.
I was probably just observing that you have a number of identical augmentations of different models and that there might be a common way to achieve this.

>> We did discuss in TEAS and OPSAWG about the best home for LxNM 
>> augmentation, and at that time the preference was for this draft. We 
>> could check if that has changed.
>
> [Oscar] That was the discussion at that point. However, of course, a 
> guidance on which is the best way to organize the augments is really welcomed.

No strong feelings at all. Just noting that vpn-common didn’t exist when this work started.
If the authors are comfortable that this is the right way to handle the YANG, I’m happy.

>> I will work on updating the initial section to better describe the scope of the I-D. 

Excellent.

> [Oscar] Don’t forget the missing piece. We have focused on tunnels and 
> how they map to the service. BUT, we need to steer the traffic into 
> the tunnels. So, we still have the problem or where to indicate the 
> policies that tell
> - The customer traffic matching the charactericts A,B,C (a ToS field, 
> coming from a prefix or any kind of hint by the customer) goes into which tunnel.

Oh, this looks remarkably like the same problem we have for:
- MPLS LSPs (see also draft-ietf-pce-pcep-flowspec)
- BGP flows (see also RFC 8955)
- SFC classification (RFC 7665)
- Service mapping (per VPN+ and network slicing)

This looks like a generic problem that needs a YANG model that can be used at a number of layers to describe flows and provider a pointer to their disposition

[KO] We have had the same requirements and requested to te-service-mapping-yang, and then Dhruv already put them in the following thread.
https://mailarchive.ietf.org/arch/msg/teas/R6HH4w6pr2V205aPCScCGbw0Mjs/


Best,
Adrian

_______________________________________________
Teas mailing list
Teas@ietf.org
https://www.ietf.org/mailman/listinfo/teas