draft-ietf-teas-actn-vn-yang-07.txt | draft-ietf-teas-actn-vn-yang-08.txt | |||
---|---|---|---|---|
TEAS Working Group Y. Lee, Ed. | TEAS Working Group Y. Lee, Ed. | |||
Internet-Draft SKKU | Internet-Draft Samsung Electronics | |||
Intended status: Standards Track D. Dhody, Ed. | Intended status: Standards Track D. Dhody, Ed. | |||
Expires: May 3, 2020 Huawei Technologies | Expires: September 9, 2020 Huawei Technologies | |||
D. Ceccarelli | D. Ceccarelli | |||
Ericsson | Ericsson | |||
I. Bryskin | I. Bryskin | |||
Futurewei | Individual | |||
B. Yoon | B. Yoon | |||
ETRI | ETRI | |||
October 31, 2019 | March 8, 2020 | |||
A Yang Data Model for VN Operation | A Yang Data Model for VN Operation | |||
draft-ietf-teas-actn-vn-yang-07 | draft-ietf-teas-actn-vn-yang-08 | |||
Abstract | Abstract | |||
This document provides a YANG data model generally applicable to any | This document provides a YANG data model generally applicable to any | |||
mode of Virtual Network (VN) operation. | mode of Virtual Network (VN) operation. | |||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
skipping to change at page 1, line 38 ¶ | skipping to change at page 1, line 38 ¶ | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on May 3, 2020. | This Internet-Draft will expire on September 9, 2020. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2019 IETF Trust and the persons identified as the | Copyright (c) 2020 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info) in effect on the date of | (https://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
skipping to change at page 2, line 32 ¶ | skipping to change at page 2, line 32 ¶ | |||
4. VN Model Usage . . . . . . . . . . . . . . . . . . . . . . . 12 | 4. VN Model Usage . . . . . . . . . . . . . . . . . . . . . . . 12 | |||
4.1. Customer view of VN . . . . . . . . . . . . . . . . . . . 12 | 4.1. Customer view of VN . . . . . . . . . . . . . . . . . . . 12 | |||
4.2. Auto-creation of VN by MDSC . . . . . . . . . . . . . . . 12 | 4.2. Auto-creation of VN by MDSC . . . . . . . . . . . . . . . 12 | |||
4.3. Innovative Services . . . . . . . . . . . . . . . . . . . 12 | 4.3. Innovative Services . . . . . . . . . . . . . . . . . . . 12 | |||
4.3.1. VN Compute . . . . . . . . . . . . . . . . . . . . . 12 | 4.3.1. VN Compute . . . . . . . . . . . . . . . . . . . . . 12 | |||
4.3.2. Multi-sources and Multi-destinations . . . . . . . . 12 | 4.3.2. Multi-sources and Multi-destinations . . . . . . . . 12 | |||
4.3.3. Others . . . . . . . . . . . . . . . . . . . . . . . 13 | 4.3.3. Others . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
4.3.4. Summary . . . . . . . . . . . . . . . . . . . . . . . 14 | 4.3.4. Summary . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
5. VN YANG Model (Tree Structure) . . . . . . . . . . . . . . . 14 | 5. VN YANG Model (Tree Structure) . . . . . . . . . . . . . . . 14 | |||
6. VN YANG Code . . . . . . . . . . . . . . . . . . . . . . . . 16 | 6. VN YANG Code . . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
7. JSON Example . . . . . . . . . . . . . . . . . . . . . . . . 25 | 7. JSON Example . . . . . . . . . . . . . . . . . . . . . . . . 26 | |||
7.1. VN JSON . . . . . . . . . . . . . . . . . . . . . . . . . 26 | 7.1. VN JSON . . . . . . . . . . . . . . . . . . . . . . . . . 26 | |||
7.2. TE-topology JSON . . . . . . . . . . . . . . . . . . . . 32 | 7.2. TE-topology JSON . . . . . . . . . . . . . . . . . . . . 32 | |||
8. Security Considerations . . . . . . . . . . . . . . . . . . . 48 | 8. Security Considerations . . . . . . . . . . . . . . . . . . . 48 | |||
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 49 | 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 50 | |||
10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 50 | 10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 50 | |||
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 50 | 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 50 | |||
11.1. Normative References . . . . . . . . . . . . . . . . . . 50 | 11.1. Normative References . . . . . . . . . . . . . . . . . . 51 | |||
11.2. Informative References . . . . . . . . . . . . . . . . . 51 | 11.2. Informative References . . . . . . . . . . . . . . . . . 52 | |||
Appendix A. Contributors Addresses . . . . . . . . . . . . . . . 52 | Appendix A. Contributors Addresses . . . . . . . . . . . . . . . 53 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 53 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 54 | |||
1. Introduction | 1. Introduction | |||
This document provides a YANG data model generally applicable to any | This document provides a YANG data model generally applicable to any | |||
mode of Virtual Network (VN) operation. | mode of Virtual Network (VN) operation. | |||
The VN model defined in this document is applicable in generic sense | The VN model defined in this document is applicable in generic sense | |||
as an independent model in and of itself. The VN model defined in | as an independent model in and of itself. The VN model defined in | |||
this document can also work together with other customer service | this document can also work together with other customer service | |||
models such as L3SM [RFC8299], L2SM [RFC8466] and L1CSM | models such as L3SM [RFC8299], L2SM [RFC8466] and L1CSM | |||
skipping to change at page 16, line 21 ¶ | skipping to change at page 16, line 21 ¶ | |||
| +--ro multi-dest? boolean {multi-src-dest}? | | +--ro multi-dest? boolean {multi-src-dest}? | |||
+--ro connectivity-matrix-id? leafref | +--ro connectivity-matrix-id? leafref | |||
+--ro if-selected? boolean | +--ro if-selected? boolean | |||
| {multi-src-dest}? | | {multi-src-dest}? | |||
+--ro compute-status? identityref | +--ro compute-status? identityref | |||
6. VN YANG Code | 6. VN YANG Code | |||
The YANG code is as follows: | The YANG code is as follows: | |||
<CODE BEGINS> file "ietf-vn@2019-10-31.yang" | <CODE BEGINS> file "ietf-vn@2020-03-08.yang" | |||
module ietf-vn { | module ietf-vn { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:ietf-vn"; | namespace "urn:ietf:params:xml:ns:yang:ietf-vn"; | |||
prefix vn; | prefix vn; | |||
/* Import network */ | /* Import network */ | |||
import ietf-network { | import ietf-network { | |||
prefix nw; | prefix nw; | |||
reference | reference | |||
skipping to change at page 17, line 25 ¶ | skipping to change at page 17, line 25 ¶ | |||
Working Group"; | Working Group"; | |||
contact | contact | |||
"WG Web: <https://tools.ietf.org/wg/teas/> | "WG Web: <https://tools.ietf.org/wg/teas/> | |||
WG List: <mailto:teas@ietf.org> | WG List: <mailto:teas@ietf.org> | |||
Editor: Young Lee <younglee.tx@gmail.com> | Editor: Young Lee <younglee.tx@gmail.com> | |||
: Dhruv Dhody <dhruv.ietf@gmail.com>"; | : Dhruv Dhody <dhruv.ietf@gmail.com>"; | |||
description | description | |||
"This module contains a YANG module for the VN. It describes a | "This module contains a YANG module for the VN. It describes a | |||
VN operation module that takes place in the context of the | VN operation module that takes place in the context of the | |||
CNC-MDSC Interface (CMI) of the ACTN architecture where the | CNC-MDSC Interface (CMI) of the ACTN architecture where the | |||
CNC is the actor of a VN Instantiation/modification/deletion."; | CNC is the actor of a VN Instantiation/modification/deletion. | |||
revision 2019-10-31 { | Copyright (c) 2020 IETF Trust and the persons identified as | |||
authors of the code. All rights reserved. | ||||
Redistribution and use in source and binary forms, with or | ||||
without modification, is permitted pursuant to, and subject to | ||||
the license terms contained in, the Simplified BSD License set | ||||
forth in Section 4.c of the IETF Trust's Legal Provisions | ||||
Relating to IETF Documents | ||||
(https://trustee.ietf.org/license-info). | ||||
This version of this YANG module is part of RFC XXXX; see the | ||||
RFC itself for full legal notices. | ||||
The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | ||||
NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | ||||
'MAY', and 'OPTIONAL' in this document are to be interpreted as | ||||
described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | ||||
they appear in all capitals, as shown here."; | ||||
revision 2020-03-08 { | ||||
description | description | |||
"initial version."; | "initial version."; | |||
reference | reference | |||
"RFC XXXX: A Yang Data Model for VN Operation"; | "RFC XXXX: A Yang Data Model for VN Operation"; | |||
} | } | |||
/* Features */ | /* Features */ | |||
feature multi-src-dest { | feature multi-src-dest { | |||
description | description | |||
"Support for selection of one src or destination | "Support for selection of one src or destination | |||
among multiple."; | among multiple."; | |||
} | } | |||
/* Identity VN State*/ | /* Identity VN State*/ | |||
skipping to change at page 20, line 19 ¶ | skipping to change at page 20, line 37 ¶ | |||
represent the VN"; | represent the VN"; | |||
} | } | |||
leaf ltp { | leaf ltp { | |||
type leafref { | type leafref { | |||
path "/nw:networks/nw:network/nw:node/" | path "/nw:networks/nw:network/nw:node/" | |||
+ "nt:termination-point/tet:te-tp-id"; | + "nt:termination-point/tet:te-tp-id"; | |||
} | } | |||
description | description | |||
"Reference LTP in the TE-topology"; | "Reference LTP in the TE-topology"; | |||
} | } | |||
}//vn-ap | } //vn-ap | |||
grouping access-point { | grouping access-point { | |||
description | description | |||
"AP related information"; | "AP related information"; | |||
leaf access-point-id { | leaf access-point-id { | |||
type uint32; | type uint32; | |||
description | description | |||
"unique identifier for the referred access point"; | "unique identifier for the referred access point"; | |||
} | } | |||
leaf access-point-name { | leaf access-point-name { | |||
skipping to change at page 21, line 13 ¶ | skipping to change at page 21, line 31 ¶ | |||
/*add details and any other properties of AP, | /*add details and any other properties of AP, | |||
not associated by a VN | not associated by a VN | |||
CE port, PE port etc. | CE port, PE port etc. | |||
*/ | */ | |||
list vn-ap { | list vn-ap { | |||
key "vn-ap-id"; | key "vn-ap-id"; | |||
uses vn-ap; | uses vn-ap; | |||
description | description | |||
"list of VNAP in this AP"; | "list of VNAP in this AP"; | |||
} | } | |||
}//access-point | } //access-point | |||
grouping vn-member { | grouping vn-member { | |||
description | description | |||
"vn-member is described by this container"; | "vn-member is described by this container"; | |||
leaf vn-member-id { | leaf vn-member-id { | |||
type uint32; | type uint32; | |||
description | description | |||
"vn-member identifier"; | "vn-member identifier"; | |||
} | } | |||
container src { | container src { | |||
skipping to change at page 22, line 34 ¶ | skipping to change at page 23, line 4 ¶ | |||
} | } | |||
leaf connectivity-matrix-id { | leaf connectivity-matrix-id { | |||
type leafref { | type leafref { | |||
path "/nw:networks/nw:network/nw:node/tet:te/" | path "/nw:networks/nw:network/nw:node/tet:te/" | |||
+ "tet:te-node-attributes/" | + "tet:te-node-attributes/" | |||
+ "tet:connectivity-matrices/" | + "tet:connectivity-matrices/" | |||
+ "tet:connectivity-matrix/tet:id"; | + "tet:connectivity-matrix/tet:id"; | |||
} | } | |||
description | description | |||
"reference to connectivity-matrix"; | "reference to connectivity-matrix"; | |||
} | } | |||
}//vn-member | } //vn-member | |||
grouping vn-policy { | grouping vn-policy { | |||
description | description | |||
"policy for VN-level diverisity"; | "policy for VN-level diverisity"; | |||
leaf vn-level-diversity { | leaf vn-level-diversity { | |||
type vn-disjointness; | type vn-disjointness; | |||
description | description | |||
"the type of disjointness on the VN level (i.e., across all | "the type of disjointness on the VN level (i.e., across all | |||
VN members)"; | VN members)"; | |||
} | } | |||
skipping to change at page 24, line 38 ¶ | skipping to change at page 25, line 8 ¶ | |||
} | } | |||
leaf oper-status { | leaf oper-status { | |||
type identityref { | type identityref { | |||
base vn-state-type; | base vn-state-type; | |||
} | } | |||
config false; | config false; | |||
description | description | |||
"VN operational state."; | "VN operational state."; | |||
} | } | |||
uses vn-policy; | uses vn-policy; | |||
}//vn-list | } //vn-list | |||
}//vn | } //vn | |||
/* RPC */ | /* RPC */ | |||
rpc vn-compute { | rpc vn-compute { | |||
description | description | |||
"The VN computation without actual instantiation"; | "The VN computation without actual instantiation"; | |||
input { | input { | |||
leaf abstract-node { | leaf abstract-node { | |||
type leafref { | type leafref { | |||
path "/nw:networks/nw:network/nw:node/tet:te-node-id"; | path "/nw:networks/nw:network/nw:node/tet:te-node-id"; | |||
skipping to change at page 25, line 34 ¶ | skipping to change at page 26, line 4 ¶ | |||
description | description | |||
"Is the vn-member is selected among the multi-src/dest | "Is the vn-member is selected among the multi-src/dest | |||
options"; | options"; | |||
} | } | |||
leaf compute-status { | leaf compute-status { | |||
type identityref { | type identityref { | |||
base vn-compute-state-type; | base vn-compute-state-type; | |||
} | } | |||
description | description | |||
"VN-member compute state."; | "VN-member compute state."; | |||
} | } | |||
} | } | |||
} | } | |||
}//vn-compute | } //vn-compute | |||
} | } | |||
<CODE ENDS> | <CODE ENDS> | |||
7. JSON Example | 7. JSON Example | |||
This section provides json implementation examples as to how VN YANG | This section provides json implementation examples as to how VN YANG | |||
model and TE topology model are used together to instantiate virtual | model and TE topology model are used together to instantiate virtual | |||
networks. | networks. | |||
The example in this section includes following VN | The example in this section includes following VN | |||
skipping to change at page 50, line 27 ¶ | skipping to change at page 51, line 4 ¶ | |||
prefix: vn | prefix: vn | |||
reference: RFC XXXX (TDB) | reference: RFC XXXX (TDB) | |||
-------------------------------------------------------------------- | -------------------------------------------------------------------- | |||
10. Acknowledgments | 10. Acknowledgments | |||
The authors would like to thank Xufeng Liu and Adrian Farrel for | The authors would like to thank Xufeng Liu and Adrian Farrel for | |||
their helpful comments and valuable suggestions. | their helpful comments and valuable suggestions. | |||
11. References | 11. References | |||
11.1. Normative References | 11.1. Normative References | |||
[I-D.ietf-teas-yang-te] | [I-D.ietf-teas-yang-te] | |||
Saad, T., Gandhi, R., Liu, X., Beeram, V., and I. Bryskin, | Saad, T., Gandhi, R., Liu, X., Beeram, V., and I. Bryskin, | |||
"A YANG Data Model for Traffic Engineering Tunnels and | "A YANG Data Model for Traffic Engineering Tunnels and | |||
Interfaces", draft-ietf-teas-yang-te-21 (work in | Interfaces", draft-ietf-teas-yang-te-22 (work in | |||
progress), April 2019. | progress), November 2019. | |||
[I-D.ietf-teas-yang-te-topo] | [I-D.ietf-teas-yang-te-topo] | |||
Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and | Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and | |||
O. Dios, "YANG Data Model for Traffic Engineering (TE) | O. Dios, "YANG Data Model for Traffic Engineering (TE) | |||
Topologies", draft-ietf-teas-yang-te-topo-22 (work in | Topologies", draft-ietf-teas-yang-te-topo-22 (work in | |||
progress), June 2019. | progress), June 2019. | |||
[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | |||
DOI 10.17487/RFC3688, January 2004, | DOI 10.17487/RFC3688, January 2004, | |||
<https://www.rfc-editor.org/info/rfc3688>. | <https://www.rfc-editor.org/info/rfc3688>. | |||
skipping to change at page 53, line 31 ¶ | skipping to change at page 54, line 8 ¶ | |||
Nokia | Nokia | |||
Email: sergio.belotti@nokia.com | Email: sergio.belotti@nokia.com | |||
Takuya Miyasaka | Takuya Miyasaka | |||
KDDI | KDDI | |||
Email: ta-miyasaka@kddi.com | Email: ta-miyasaka@kddi.com | |||
Authors' Addresses | Authors' Addresses | |||
Young Lee (editor) | Young Lee (editor) | |||
SKKU | Samsung Electronics | |||
Email: younglee.tx@gmail.com | Email: younglee.tx@gmail.com | |||
Dhruv Dhody (editor) | Dhruv Dhody (editor) | |||
Huawei Technologies | Huawei Technologies | |||
Divyashree Techno Park, Whitefield | Divyashree Techno Park, Whitefield | |||
Bangalore, Karnataka 560066 | Bangalore, Karnataka 560066 | |||
India | India | |||
Email: dhruv.ietf@gmail.com | Email: dhruv.ietf@gmail.com | |||
skipping to change at page 54, line 4 ¶ | skipping to change at page 54, line 26 ¶ | |||
India | India | |||
Email: dhruv.ietf@gmail.com | Email: dhruv.ietf@gmail.com | |||
Daniele Ceccarelli | Daniele Ceccarelli | |||
Ericsson | Ericsson | |||
Torshamnsgatan,48 | Torshamnsgatan,48 | |||
Stockholm, Sweden | Stockholm, Sweden | |||
Email: daniele.ceccarelli@ericsson.com | Email: daniele.ceccarelli@ericsson.com | |||
Igor Bryskin | Igor Bryskin | |||
Futurewei | Individual | |||
Email: i_bryskin@yahoo.com | Email: i_bryskin@yahoo.com | |||
Bin Yeong Yoon | Bin Yeong Yoon | |||
ETRI | ETRI | |||
Email: byyun@etri.re.kr | Email: byyun@etri.re.kr | |||
End of changes. 26 change blocks. | ||||
28 lines changed or deleted | 49 lines changed or added | |||
This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |