idnits 2.17.1
draft-geng-teas-enhanced-vpn-scalable-vtn-yang-00.txt:
Checking boilerplate required by RFC 5378 and the IETF Trust (see
https://trustee.ietf.org/license-info):
----------------------------------------------------------------------------
No issues found here.
Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt:
----------------------------------------------------------------------------
No issues found here.
Checking nits according to https://www.ietf.org/id-info/checklist :
----------------------------------------------------------------------------
** The document seems to lack a Security Considerations section.
** There are 4 instances of too long lines in the document, the longest one
being 16 characters in excess of 72.
Miscellaneous warnings:
----------------------------------------------------------------------------
== The copyright year in the IETF Trust and authors Copyright Line does not
match the current year
== The document doesn't use any RFC 2119 keywords, yet seems to have RFC
2119 boilerplate text.
-- The document date (April 14, 2021) is 1107 days in the past. Is this
intentional?
Checking references for intended status: Experimental
----------------------------------------------------------------------------
== Unused Reference: 'InfRef' is defined on line 544, but no explicit
reference was found in the text
== Outdated reference: A later version (-06) exists of
draft-dong-6man-enhanced-vpn-vtn-id-02
== Outdated reference: A later version (-01) exists of
draft-dong-idr-sr-policy-vtn-00
== Outdated reference: A later version (-04) exists of
draft-dong-teas-enhanced-vpn-vtn-scalability-01
== Outdated reference: A later version (-26) exists of
draft-ietf-lsr-flex-algo-13
== Outdated reference: A later version (-07) exists of
draft-ietf-lsr-isis-sr-vtn-mt-00
== Outdated reference: A later version (-22) exists of
draft-ietf-spring-segment-routing-policy-09
== Outdated reference: A later version (-17) exists of
draft-ietf-teas-enhanced-vpn-06
== Outdated reference: A later version (-01) exists of
draft-ietf-teas-ietf-network-slice-definition-00
== Outdated reference: A later version (-07) exists of
draft-zhu-lsr-isis-sr-vtn-flexalgo-01
Summary: 2 errors (**), 0 flaws (~~), 12 warnings (==), 1 comment (--).
Run idnits with the --verbose option for more detailed information about
the items above.
--------------------------------------------------------------------------------
2 Network Working Group X. Geng
3 Internet-Draft Z. Hu
4 Intended status: Experimental Huawei
5 Expires: October 16, 2021 April 14, 2021
7 YANG Model for Scalable VTN
8 draft-geng-teas-enhanced-vpn-scalable-vtn-yang-00
10 Abstract
12 This document defines the Yang data model for scalable Virtual
13 Transport Network(VTN).
15 Requirements Language
17 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
18 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
19 document are to be interpreted as described in RFC 2119 [RFC2119].
21 Status of This Memo
23 This Internet-Draft is submitted in full conformance with the
24 provisions of BCP 78 and BCP 79.
26 Internet-Drafts are working documents of the Internet Engineering
27 Task Force (IETF). Note that other groups may also distribute
28 working documents as Internet-Drafts. The list of current Internet-
29 Drafts is at https://datatracker.ietf.org/drafts/current/.
31 Internet-Drafts are draft documents valid for a maximum of six months
32 and may be updated, replaced, or obsoleted by other documents at any
33 time. It is inappropriate to use Internet-Drafts as reference
34 material or to cite them other than as "work in progress."
36 This Internet-Draft will expire on October 16, 2021.
38 Copyright Notice
40 Copyright (c) 2021 IETF Trust and the persons identified as the
41 document authors. All rights reserved.
43 This document is subject to BCP 78 and the IETF Trust's Legal
44 Provisions Relating to IETF Documents
45 (https://trustee.ietf.org/license-info) in effect on the date of
46 publication of this document. Please review these documents
47 carefully, as they describe your rights and restrictions with respect
48 to this document. Code Components extracted from this document must
49 include Simplified BSD License text as described in Section 4.e of
50 the Trust Legal Provisions and are provided without warranty as
51 described in the Simplified BSD License.
53 Table of Contents
55 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
56 2. VTN Yang Module Requirement . . . . . . . . . . . . . . . . . 3
57 2.1. VTN Creation . . . . . . . . . . . . . . . . . . . . . . 3
58 2.2. VTN Initiation . . . . . . . . . . . . . . . . . . . . . 4
59 2.3. VTN Traffic Steering . . . . . . . . . . . . . . . . . . 4
60 3. VTN Yang Module Tree . . . . . . . . . . . . . . . . . . . . 5
61 4. VTN Yang Module . . . . . . . . . . . . . . . . . . . . . . . 6
62 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10
63 6. Contributor . . . . . . . . . . . . . . . . . . . . . . . . . 10
64 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 10
65 7.1. Normative References . . . . . . . . . . . . . . . . . . 11
66 7.2. Informative References . . . . . . . . . . . . . . . . . 12
67 Appendix A. An Appendix . . . . . . . . . . . . . . . . . . . . 12
68 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12
70 1. Introduction
72 [I-D.ietf-teas-ietf-network-slice-definition] defines IETF network
73 slices that provide connectivity coupled with network resources
74 commitment between a number of endpoints over a shared network
75 infrastructure.
77 Enhanced VPN (VPN+) aims to provide enhancements to existing VPN
78 services to support network slicing. VPN+ is composed of a VPN
79 overlay and an underlying Virtual Transport Network (VTN) which has a
80 customized network topology and a set of dedicated or shared
81 resources in the underlay network. VPN+ and VTN are defined in
82 [I-D.ietf-teas-enhanced-vpn].
84 [I-D.dong-teas-enhanced-vpn-vtn-scalability] describes the
85 scalability considerations in the control plane and data plane to
86 enable VPN+ services. In control plane, decoupling the topology and
87 resource attributes of VTN allows that multiple VTNs share the same
88 topology. In data plane, a global VTN-ID in the data packet is used
89 to determine the set of resources reserved for the corresponding VTN.
91 This document defines the configuration yang model for scalable VTN
92 solution.
94 2. VTN Yang Module Requirement
96 The general process of VTN configuration includes:
98 1. Creat VTN instance based on the network slice requirement
100 2. Configure the overlay network to initiate VTN in the network
102 3. Steer the traffic to the corresponding VTN to provide network
103 slice service
105 The corresponding requirement of VTN configuration data model during
106 the process is defined in this section.
108 2.1. VTN Creation
110 After collecting information about the underlying network topology
111 and available resources. Each VTN can have a customized topology and
112 a set of network resources allocated. Flexible combination is
113 allowed when multiple VTNs may shared the same topology, or multiple
114 VTNs may share the same set of network resources.
116 VTN is created with the following attributes:
118 o VTN Topology: Based on the existing work in IETF, topology
119 specification for VTN could be implemented by Multi-Topology
120 Routing (MTR) which defined in [RFC4915], [RFC5120], or Flex-algo
121 which is defined in [I-D.ietf-lsr-flex-algo]. Correspondingly,
122 the topology attribute of a VTN could be determined by MT-ID or
123 algorithm ID; Signaling extensions for VTN topology is defined in
124 [I-D.zhu-lsr-isis-sr-vtn-flexalgo] and
125 [I-D.ietf-lsr-isis-sr-vtn-mt] respectively.
127 o Network Resource: network resource is allocated for VTN based on
128 the requirement. For example, VTN could be bound with a layer 2
129 sub-interface with a subset of the link bandwidth.
131 o VTN Data Plane Identifier: VTN data plane identifier is uesed to
132 identify network resource that has been allocated for the VTN.
133 VTN data plane identifier depends on the encapsulation type of the
134 traffic, for example IPv6 defined in
135 [I-D.dong-6man-enhanced-vpn-vtn-id]. VTN data plane identifier is
136 not mandatory when there are other methods to distinguish VTN
137 instances.
139 2.2. VTN Initiation
141 VTN initiation in the network also includes two aspects: resource
142 allocation and traffic steering through VTN specified topology.
143 Resource allocation is defined in this section and traffic steering
144 is defined in the next section.
146 Several technologies could be used for resource allocation in the
147 network device, for example: TSN defined in IEEE 802.1 introduces the
148 concept of time aware shaping; FlexE provides the ability to
149 multiplex multiple channels over one or more Ethernet links; Existing
150 Diffserv scheduling/shaping allow the construction of virtual sub-
151 interfaces. All these technologies could be used to dedicated
152 resource in a shared physical interface.
154 The configuration of these technologies play the role of VTN
155 initiation when the allocated resource is bound with a specified VTN
156 instance.
158 2.3. VTN Traffic Steering
160 Just as color in SR policy defined in
161 [I-D.ietf-spring-segment-routing-policy], color is defined as an
162 attribute of VTN to steer the traffic.
164 With SR policy, traffic could be steered into a SR policy by :
166 o SR policy with color is provisioned to the headend;
168 o The route with some particular color matchs the SR policy with the
169 corresponding color, which could satisfy the requirement of the
170 route
172 o Traffic with the route is steered into the SR policy;
174 Similarly, traffic could be steered into VTN by:
176 o VTN is configured with the attribute of color;
178 o The route with some particular color matchs VTN with the
179 correponding color, which could satisfy the requirement of the
180 route
182 o Traffic with the route is steered to the VTN
184 SR policy could also be bound with VTN to provide resource
185 reservation in the network. BGP SR Policy extensions for VTN is
186 defined in [I-D.dong-idr-sr-policy-vtn] and similarly, YANG model
187 which is used to bound SR policy to a specified VTN is defined in
188 this document by:
190 o SR policy with color is provisioned to the headend; The preferred
191 candidate path is bound to VTN;
193 o The route with some particular color matchs the SR policy with the
194 corresponding color, which could satisfy the requirement of the
195 route
197 o Traffic with the route is steered into the SR policy; Packet is
198 encapsulated with the VTN data plane identifier.
200 3. VTN Yang Module Tree
202 module: ietf-vtn
203 +--rw vtn-instance
204 | +--rw vtn-instance* [vtn-id]
205 | +--rw vtn-id uint32
206 | +--rw vtn-topology
207 | | +--rw (vtn-topolgy-type)?
208 | | +--:(flex-algo)
209 | | | +--rw flex-algo
210 | | | +--rw flex-algo-id? uint32
211 | | +--:(multi-topology)
212 | | +--rw multi-topology-id? uint32
213 | +--rw vtn-data-plane-identifier? uint32
214 +--rw sr-policy-extension
215 +--rw vtn
216 +--rw vtn-id? uint32
218 augment /if:interfaces/if:interface:
219 +--rw interface-configuration-for-vtn
220 +--rw (vtn-interface-binding-type)?
221 +--:(layer-2-sub-interface)
222 | +--rw layer-2-sub-interface
223 | +--rw sub-interface-id? uint32
224 | +--rw vtn-id? uint32
225 | +--rw bandwidth? uint32
226 +--:(queue)
227 +--rw queue
228 +--rw queue-id? uint32
229 +--rw vtn-id? uint32
230 +--rw bandwidth? uint32
231 augment /ni:network-instances/ni:network-instance:
232 +--rw vtn-traffic-steering
233 +--rw color-index? uint32
234 +--rw vtn-id? uint32
236 4. VTN Yang Module
238 module ietf-vtn {
239 yang-version 1.1;
240 namespace "urn:ietf:params:xml:ns:yang:ietf-vtn";
241 prefix "ietf-vtn";
243 import ietf-inet-types {
244 prefix "inet";
245 }
247 import ietf-routing {
248 prefix "rt";
249 }
251 import ietf-routing-types {
252 prefix "rt-types";
253 }
255 import ietf-yang-types {
256 prefix "yang";
257 }
259 import ietf-interfaces {
260 prefix "if";
261 }
263 import ietf-network-instance {
264 prefix "ni";
265 }
267 organization "IETF TEAS Working Group";
269 contact
270 "
271 WG Web:
272 WG List:
274 Editor: Xuesong Geng
275
276 Editor: Zhibo Hu
277
278 ";
280 description
281 "This YANG module defines a data model for VTN(Virtual Transport Network)";
283 revision "2021-04-14" {
284 description
285 "This is the initial version of VTN yang module";
286 reference
287 "RFC XXX: YANG Data Model for VTN";
288 }
290 grouping vtn-instances{
291 description
292 "VTN instances";
293 list vtn-instance {
294 key "vtn-id";
295 description
296 "vtn instance list";
297 leaf vtn-id {
298 type uint32;
299 description
300 "vtn-id";
301 }
302 container vtn-topology {
303 description
304 "vtn topology is nt";
305 choice vtn-topolgy-type{
306 description
307 "customized topology of VTN";
308 case flex-algo {
309 container flex-algo {
310 description
311 "flex-algo could be used as topology specification for VTN";
312 leaf flex-algo-id {
313 type uint32;
314 description
315 "flex-algo-id for VTN";
316 }
317 }
318 }
319 case multi-topology {
320 description
321 "MT could be used as topology specification for VTN";
322 leaf multi-topology-id{
323 type uint32;
324 description
325 "MT-id for VTN";
326 }
327 }
328 }
329 }
330 leaf vtn-data-plane-identifier {
331 type uint32;
332 description
333 "VTN identifier of data plane for vtn distinguishment";
334 }
335 }
336 }
338 grouping interface-configuration-for-vtn{
339 description
340 "interface configuration for vtn";
341 container interface-configuration-for-vtn {
342 description
343 "interface configuration for vtn";
344 choice vtn-interface-binding-type{
345 description
346 "vtn interface binding type";
347 case layer-2-sub-interface {
348 description
349 "vtn is bound to a layer-2 sub-interface";
350 container layer-2-sub-interface {
351 description
352 "sub-interface configuration";
353 leaf sub-interface-id {
354 type uint32;
355 description
356 "sub-interface id";
357 }
358 leaf vtn-id {
359 type uint32;
360 description
361 "vtn-id";
362 }
363 leaf bandwidth {
364 type uint32;
365 description
366 "bandwidth allocation for the slice";
367 }
368 }
369 }
370 case queue {
371 description
372 "vtn is bound to a queue in the interface";
373 container queue {
374 description
375 "queue configuration";
376 leaf queue-id {
377 type uint32;
378 description
379 "queue id";
381 }
382 leaf vtn-id {
383 type uint32;
384 description
385 "queue id";
386 }
387 leaf bandwidth {
388 type uint32;
389 description
390 "bandwidth allocation for the slice";
391 }
392 }
393 }
394 }
395 }
396 }
398 grouping sr-policy-traffic-steering{
399 container vtn{
400 description
401 "candidata path is bound to VTN";
402 leaf vtn-id{
403 type uint32;
404 description
405 "vtn";
406 }
407 }
408 }
410 grouping vtn-traffic-steering{
411 container vtn-traffic-steering {
412 leaf color-index {
413 type uint32;
414 description
415 "color index";
416 }
417 leaf vtn-id {
418 type uint32;
419 description
420 "vtn id";
421 }
422 }
423 }
425 container vtn-instance {
426 description
427 "vtn instance configuraiton";
428 uses vtn-instances;
430 }
432 augment "/if:interfaces/if:interface" {
433 description
434 "interface model extension for vtn";
435 uses interface-configuration-for-vtn;
437 }
439 augment /ni:network-instances/ni:network-instance{
440 description
441 "network instance model extension for vtn";
442 uses vtn-traffic-steering;
443 }
445 container sr-policy-extension {
446 description
447 "sr policy extension for vtn";
448 uses sr-policy-traffic-steering;
449 }
451 }
453 5. IANA Considerations
455 This document makes no request of IANA.
457 Note to RFC Editor: this section may be removed on publication as an
458 RFC.
460 6. Contributor
462 Zhenbin Li
463 Huawei
465 Email: lizhenbin@huawei.com
467 Jie Dong
468 Huawei
470 Email: jie.dong@huawei.com
472 7. References
473 7.1. Normative References
475 [I-D.dong-6man-enhanced-vpn-vtn-id]
476 Dong, J., Li, Z., Xie, C., and C. Ma, "Carrying Virtual
477 Transport Network Identifier in IPv6 Extension Header",
478 draft-dong-6man-enhanced-vpn-vtn-id-02 (work in progress),
479 November 2020.
481 [I-D.dong-idr-sr-policy-vtn]
482 Dong, J., Hu, Z., and R. Pang, "BGP SR Policy Extensions
483 for Virtual Transport Network", draft-dong-idr-sr-policy-
484 vtn-00 (work in progress), October 2020.
486 [I-D.dong-teas-enhanced-vpn-vtn-scalability]
487 Dong, J., Li, Z., Qin, F., and G. Yang, "Scalability
488 Considerations for Enhanced VPN (VPN+)", draft-dong-teas-
489 enhanced-vpn-vtn-scalability-01 (work in progress),
490 November 2020.
492 [I-D.ietf-lsr-flex-algo]
493 Psenak, P., Hegde, S., Filsfils, C., Talaulikar, K., and
494 A. Gulko, "IGP Flexible Algorithm", draft-ietf-lsr-flex-
495 algo-13 (work in progress), October 2020.
497 [I-D.ietf-lsr-isis-sr-vtn-mt]
498 Xie, C., Ma, C., Dong, J., and Z. Li, "Using IS-IS Multi-
499 Topology (MT) for Segment Routing based Virtual Transport
500 Network", draft-ietf-lsr-isis-sr-vtn-mt-00 (work in
501 progress), March 2021.
503 [I-D.ietf-spring-segment-routing-policy]
504 Filsfils, C., Talaulikar, K., Voyer, D., Bogdanov, A., and
505 P. Mattes, "Segment Routing Policy Architecture", draft-
506 ietf-spring-segment-routing-policy-09 (work in progress),
507 November 2020.
509 [I-D.ietf-teas-enhanced-vpn]
510 Dong, J., Bryant, S., Li, Z., Miyasaka, T., and Y. Lee, "A
511 Framework for Enhanced Virtual Private Networks (VPN+)
512 Service", draft-ietf-teas-enhanced-vpn-06 (work in
513 progress), July 2020.
515 [I-D.ietf-teas-ietf-network-slice-definition]
516 Rokui, R., Homma, S., Makhijani, K., Contreras, L., and J.
517 Tantsura, "Definition of IETF Network Slices", draft-ietf-
518 teas-ietf-network-slice-definition-00 (work in progress),
519 January 2021.
521 [I-D.zhu-lsr-isis-sr-vtn-flexalgo]
522 Zhu, Y., Dong, J., and Z. Hu, "Using Flex-Algo for Segment
523 Routing based VTN", draft-zhu-lsr-isis-sr-vtn-flexalgo-01
524 (work in progress), September 2020.
526 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
527 Requirement Levels", BCP 14, RFC 2119,
528 DOI 10.17487/RFC2119, March 1997,
529 .
531 [RFC4915] Psenak, P., Mirtorabi, S., Roy, A., Nguyen, L., and P.
532 Pillay-Esnault, "Multi-Topology (MT) Routing in OSPF",
533 RFC 4915, DOI 10.17487/RFC4915, June 2007,
534 .
536 [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi
537 Topology (MT) Routing in Intermediate System to
538 Intermediate Systems (IS-ISs)", RFC 5120,
539 DOI 10.17487/RFC5120, February 2008,
540 .
542 7.2. Informative References
544 [InfRef] , 2004.
546 Appendix A. An Appendix
548 Authors' Addresses
550 Xuesong Geng
551 Huawei
553 Email: gengxuesong@huawei.com
555 Zhibo Hu
556 Huawei
558 Email: huzhibo@huawei.com