draft-ietf-ccamp-l1csm-yang-07.txt   draft-ietf-ccamp-l1csm-yang-08.txt 
CCAMP Working Group G. Fioccola (Ed.) CCAMP Working Group G. Fioccola (Ed.)
Telecom Italia Telecom Italia
Internet Draft K. Lee Internet Draft K. Lee
Intended Status: Standard Track Korea Telecom Intended Status: Standard Track Korea Telecom
Expires: March 1, 2019 Y. Lee (Ed.) Expires: March 12, 2019 Y. Lee (Ed.)
D. Dhody D. Dhody
Huawei Huawei
O. Gonzalez de-Dios O. Gonzalez de-Dios
Telefonica Telefonica
D. Ceccarelli D. Ceccarelli
Ericsson Ericsson
August 30, 2018 September 12, 2018
A Yang Data Model for L1 Connectivity Service Model (L1CSM) A YANG Data Model for L1 Connectivity Service Model (L1CSM)
draft-ietf-ccamp-l1csm-yang-07 draft-ietf-ccamp-l1csm-yang-08
Abstract Abstract
This document provides a YANG data model for Layer 1 Connectivity This document provides a YANG data model for Layer 1 Connectivity
Service Model (L1CSM). This YANG model is NMDA-compliant. Service Model (L1CSM). The intent of this document is to provide a
transport service model exploiting YANG data model, which can be
utilized by a client network controller to initiate a service
request connectivity request as well as retrieving service states
toward a transport network controller communicating with the client
controller. This YANG model is NMDA-compliant.
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with This Internet-Draft is submitted to IETF in full conformance with
the provisions of BCP 78 and BCP 79. the provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
skipping to change at page 1, line 45 skipping to change at page 2, line 4
Internet-Drafts are draft documents valid for a maximum of six Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other documents months and may be updated, replaced, or obsoleted by other documents
at any time. It is inappropriate to use Internet-Drafts as at any time. It is inappropriate to use Internet-Drafts as
reference material or to cite them other than as "work in progress." reference material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html http://www.ietf.org/shadow.html
This Internet-Draft will expire on March 12 2019.
This Internet-Draft will expire on March 1 2019.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2018 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
(http://trustee.ietf.org/license-info) in effect on the date of (http://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 carefully, as they describe your rights and restrictions with
respect to this document. Code Components extracted from this respect to this document. Code Components extracted from this
document must include Simplified BSD License text as described in document must include Simplified BSD License text as described in
skipping to change at page 2, line 20 skipping to change at page 2, line 24
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 carefully, as they describe your rights and restrictions with
respect to this document. Code Components extracted from this respect to this document. Code Components extracted from this
document must include Simplified BSD License text as described in document must include Simplified BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Simplified BSD License. warranty as described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction...................................................2 1. Introduction...................................................2
1.1. Deployment Scenarios......................................3 1.1. Deployment Scenarios......................................4
1.2. Terminology...............................................6 1.2. Terminology...............................................6
1.3. Tree diagram..............................................6 1.3. Tree diagram..............................................7
1.4. Prefixes in Data Node Names...............................7 1.4. Prefixes in Data Node Names...............................7
2. Definitions....................................................7 2. Definitions....................................................7
3. L1SM YANG Model (Tree Structure)...............................7 3. L1SM YANG Model (Tree Structure)...............................8
4. L1SM YANG Code.................................................8 4. L1SM YANG Code.................................................8
5. JSON Example..................................................20 5. JSON Example..................................................21
6. Security Considerations.......................................21 6. Security Considerations.......................................22
7. IANA Considerations...........................................22 7. IANA Considerations...........................................23
8. Acknowledgments...............................................23 8. Acknowledgments...............................................24
9. References....................................................24 9. References....................................................25
9.1. Normative References.....................................24 9.1. Normative References.....................................25
9.2. Informative References...................................24 9.2. Informative References...................................25
10. Contributors.................................................25 10. Contributors.................................................26
Authors' Addresses...............................................25 Authors' Addresses...............................................26
1. Introduction 1. Introduction
This document provides a YANG data model for L1VPN Connectivity This document provides a YANG data model for L1VPN Connectivity
Service Model (L1CSM). The intent of this document is to provide a Service Model (L1CSM) which can be classified as Network Service
transport service model exploiting Yang data model, which can be YANG module per [RFC8199]. The intent of this document is to provide
a transport service model exploiting YANG data model, which can be
utilized by a client network controller to initiate a service utilized by a client network controller to initiate a service
request connectivity request as well as retrieving service states request connectivity request as well as retrieving service states
toward a transport network controller communicating with the client toward a transport network controller communicating with the client
controller via a NETCONF [RFC8341] or a RESTCONF [RFC8040] controller via a NETCONF [RFC8341] or a RESTCONF [RFC8040]
interface. interface.
[RFC4847] provides a framework and service level requirements for [RFC4847] provides a framework and service level requirements for
Layer 1 Virtual Private Networks (L1VPNs). It classifies service Layer 1 Virtual Private Networks (L1VPNs). It classifies service
models as management-based service model, signaling-based service models as management-based service model, signaling-based service
model (Basic Mode) and signaling and routing service model (Enhanced model (Basic Mode) and signaling and routing service model (Enhanced
skipping to change at page 4, line 5 skipping to change at page 4, line 11
L1CS]. The data model includes configuration and state data L1CS]. The data model includes configuration and state data
according to the new Network Management Datastore Architecture according to the new Network Management Datastore Architecture
[RFC8342]. [RFC8342].
1.1. Deployment Scenarios 1.1. Deployment Scenarios
Figure 1 depicts a deployment scenario of the L1VPN SDN control- Figure 1 depicts a deployment scenario of the L1VPN SDN control-
based service model for an external customer instantiating L1 point- based service model for an external customer instantiating L1 point-
to-point connectivity to the provider. to-point connectivity to the provider.
+------------+ +------------+
| Customer | | Customer |
| Service | | Service |
|Orchestrator| |Orchestrator|
+------------+ +------------+
| |
.. .. .. .. ..|.. .. .. .. .. .. .. .. .. .. .|.. .. .. .. .. ..
: | : : | :
: +--------------------+ : : +--------------------+ :
: | | : : | | :
: | +----------+ | : : | +----------+ | :
: | | Network | | : : | | Network | | :
: | | SDN | | : : | | SDN | | :
: | |Controller| | : : | |Controller| | :
: | |/NMS/EMS | | : : | |/NMS/EMS | | :
: | +----------+ | : : | +----------+ | :
: | | : : | | :
: | | : : | | :
skipping to change at page 5, line 48 skipping to change at page 6, line 26
+----+ +----+ +----+ +----+ +----+ +----+ +----+ +----+ +----+ +----+
| CE |--------| PE |----| P |----| PE |------| CE | | CE |--------| PE |----| P |----| PE |------| CE |
+----+ +----+ +----+ +----+ +----+ +----+ +----+ +----+ +----+ +----+
| | | | | | | |
| | | | | | | |
| +--------------------+ | | +--------------------+ |
| | | | | | | |
| |<------------------>| | | |<------------------>| |
| Provider Network | | Provider Network |
| For Layer 1 | | For Layer 1 |
|<------------------------------------------>| |<------------------------------------------>|
Provider Network for L2/3 Provider Network for L2/3
Figure 2: L1VPN SDN Controller/EMS/NMS-Based Service Model: Internal Customer Figure 2: L1VPN SDN Controller/EMS/NMS-Based Service Model: Internal Customer
The benefit is that the same layer 1 transport network resources are The benefit is that the same layer 1 transport network resources are
shared by multiple services. A large capacity backbone network shared by multiple services. A large capacity backbone network
(data plane) can be built economically by having the resources (data plane) can be built economically by having the resources
shared by multiple services usually with flexibility to modify shared by multiple services usually with flexibility to modify
topologies, while separating the control functions for each service topologies, while separating the control functions for each service
department. Thus, each customer can select a specific set of department. Thus, each customer can select a specific set of
skipping to change at page 7, line 47 skipping to change at page 8, line 21
P Protocol P Protocol
C Coding C Coding
O Optical Interface O Optical Interface
3. L1SM YANG Model (Tree Structure) 3. L1SM YANG Model (Tree Structure)
module: ietf-l1csm module: ietf-l1csm
+--rw l1cs +--rw l1-connectivity
+--rw access +--rw access
| +--rw uni-list* [UNI-ID] | +--rw unis
| +--rw UNI-ID string | +--rw uni* [id]
| +--rw protocol? identityref | +--rw id string
| +--rw coding? identityref | +--rw protocol? identityref
| +--rw optical_interface? identityref | +--rw coding? identityref
+--rw service | +--rw optical-interface? identityref
+--rw service-list* [subscriber-l1vc-id] +--rw services
+--rw subscriber-l1vc-id string +--rw service* [service-id]
+--rw service-config +--rw service-id string
+--rw subscriber-l1vc-id? string +--rw endpoint-1
+--rw subscriber-l1vc-ep-id-1? string | +--rw id string
+--rw subscriber-l1vc-ep-id-2? string | +--rw uni -> /l1-connectivity/access/unis/uni/id
+--rw subscriber-l1vc-ep-UNI-1? -> /l1cs/access/uni-list/UNI-ID +--rw endpoint-2
+--rw subscriber-l1vc-ep-UNI-2? -> /l1cs/access/uni-list/UNI-ID | +--rw id string
+--rw time-start? yang:date-and-time | +--rw uni -> /l1-connectivity/access/unis/uni/id
+--rw time-interval? Int32 +--rw start-time? yang:date-and-time
+--rw performance-metric? Identityref +--rw time-interval? int32
+--rw performance-metric* identityref
4. L1SM YANG Code 4. L1SM YANG Code
The YANG code is as follows: The YANG code is as follows:
<CODE BEGINS> file "ietf-l1csm@2018-08-30.yang" <CODE BEGINS> file "ietf-l1csm@2018-09-12.yang"
module ietf-l1csm { module ietf-l1csm {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-l1csm"; namespace "urn:ietf:params:xml:ns:yang:ietf-l1csm";
prefix "l1csm"; prefix "l1csm";
import ietf-yang-types { import ietf-yang-types {
prefix "yang"; prefix "yang";
reference "RFC 6991 - Common YANG Data Types";
} }
import ietf-l1-service-types { import ietf-l1-service-types {
prefix "l1-st"; prefix "l1-st";
reference "RFC XXXX - A YANG Data Model for L1 Connectivity
Service Model (L1CSM)";
} }
organization organization
"Internet Engineering Task Force (IETF) CCAMP WG"; "Internet Engineering Task Force (IETF) CCAMP WG";
contact contact
"Editor: G. Fioccolla (giuseppe.fioccola@telecomitalia.it) "Editor: G. Fioccolla (giuseppe.fioccola@telecomitalia.it)
Editor: K. Lee (kwangkoog.lee@kt.com) Editor: K. Lee (kwangkoog.lee@kt.com)
Editor: Y. Lee (leeyoung@huawei.com) Editor: Y. Lee (leeyoung@huawei.com)
skipping to change at page 9, line 25 skipping to change at page 9, line 51
Redistribution and use in source and binary forms, with or Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject without modification, is permitted pursuant to, and subject
to the license terms contained in, the Simplified BSD to the license terms contained in, the Simplified BSD
License set forth in Section 4.c of the IETF Trust's Legal License set forth in Section 4.c of the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info). (http://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC XXXX; see This version of this YANG module is part of RFC XXXX; see
the RFC itself for full legal notices."; the RFC itself for full legal notices.";
revision "2018-08-30" { revision "2018-09-12" {
description "Initial revision."; description "Initial revision.";
reference "RFC XXXX: A Yang Data Model for L1 Connectivity reference "RFC XXXX: A YANG Data Model for L1 Connectivity
Service Model (L1CSM)"; Service Model (L1CSM)";
// Note: The RFC Editor will replace XXXX with the number // Note: The RFC Editor will replace XXXX with the number
// assigned to the RFC once this draft becomes an RFC. // assigned to the RFC once this draft becomes an RFC.
} }
grouping protocol-coding-optical_interface { grouping protocol-coding-optical-interface {
description description
"describes <p,c,o> where p:protocol type; c:coding "describes <p,c,o> where p:protocol type; c:coding
function; o:optical interface function"; function; o:optical interface function";
reference "MEF 63";
leaf protocol { leaf protocol {
type identityref { type identityref {
base "l1-st:protocol-type"; base "l1-st:protocol-type";
} }
description description
"List of physical layer L1VC clientprotocol"; "List of physical layer L1VC clientprotocol";
} }
leaf coding { leaf coding {
type identityref { type identityref {
base "l1-st:coding-func"; base "l1-st:coding-func";
} }
description "coding function"; description "coding function";
} }
leaf optical_interface {
leaf optical-interface {
type identityref { type identityref {
base "l1-st:optical-interface-func"; base "l1-st:optical-interface-func";
} }
description "optical-interface-function"; description "optical-interface-function";
}
}
grouping uni-attributes {
description
"uni-service-attributes";
leaf UNI-ID {
type string;
description "the UNI id of UNI Service Attributes";
} }
uses protocol-coding-optical_interface; }
}
grouping subscriber-l1vc-sls-service-attribute { grouping subscriber-l1vc-sls-service-attribute {
description description
"The value of the Subscriber L1VC SLS (Service Level "The value of the Subscriber L1VC SLS (Service Level
Specification) Service Attribute expressed in a 3-tuple Specification) Service Attribute";
<p,c,o> of the form."; reference "MEF 63";
leaf time-start { leaf start-time {
type yang:date-and-time; type yang:date-and-time;
description "a time that represent the date and time description "a time that represent the date and time
for the start of the SLS"; for the start of the SLS";
} }
leaf time-interval { leaf time-interval {
type int32; type int32;
units seconds; units seconds;
description "a time interval (e.g., 2,419,200 seconds description "a time interval (e.g., 2,419,200 seconds
which is 28 days) that is used in which is 28 days) that is used in
skipping to change at page 11, line 4 skipping to change at page 11, line 12
leaf time-interval { leaf time-interval {
type int32; type int32;
units seconds; units seconds;
description "a time interval (e.g., 2,419,200 seconds description "a time interval (e.g., 2,419,200 seconds
which is 28 days) that is used in which is 28 days) that is used in
conjunction wuth time-start to specify a conjunction wuth time-start to specify a
contiguous sequence of time intervals T for contiguous sequence of time intervals T for
determining when performance objectives are determining when performance objectives are
met."; met.";
} }
leaf performance-metric { leaf-list performance-metric {
type identityref { type identityref {
base "l1-st:performance-metriclist"; base "l1-st:performance-metric";
} }
description "list of performance metric"; description "list of performance metric";
} }
}
grouping subscriber-l1vc-service-attributes {
description
"subscriber layer 1 connection service service level";
leaf subscriber-l1vc-id { }
type string;
description "subscriber L1VC identifier";
}
leaf subscriber-l1vc-ep-id-1 { grouping subscriber-l1vc-endpoint-attributes {
type string; description
description "subscriber end point ID of one end"; "subscriber layer 1 connection endpoint attributes";
} reference "MEF 63";
leaf subscriber-l1vc-ep-id-2 { container endpoint-1 {
type string; description "One end of UNI id's - string and id";
description "subscriber end point ID of the other end"; leaf id {
} type string;
mandatory true;
description "subscriber end point ID of one end";
}
leaf subscriber-l1vc-ep-UNI-1 { leaf uni {
type leafref { type leafref {
path "/l1cs/access/uni-list/UNI-ID"; path "/l1-connectivity/access/unis/uni/id";
}
mandatory true;
description "this is one end of subscriber L1VC end point
ID value = UNI-1";
} }
description "this is one end of subscriber L1VC end point
ID value = UNI-1";
} }
container endpoint-2 {
leaf subscriber-l1vc-ep-UNI-2 { description "One end of UNI id's - string and id";
type leafref { leaf id {
path "/l1cs/access/uni-list/UNI-ID"; type string;
mandatory true;
description "subscriber end point ID of the other end";
}
leaf uni {
type leafref {
path "/l1-connectivity/access/unis/uni/id";
}
mandatory true;
description "this is one other end of subscriber L1VC end point
ID value = UNI-2";
} }
description "this is the other end of subscriber L1VC end
point ID value = UNI-2";
} }
uses subscriber-l1vc-sls-service-attribute;
} }
grouping subscriber-attributes { container l1-connectivity {
description
"subscriber attributes";
uses subscriber-l1vc-service-attributes;
}
container l1cs {
description description
"serves as a top-level container for a list of layer 1 "serves as a top-level container for a list of layer 1
connection services (l1cs)"; connection services (l1cs)";
container access { container access {
description "UNI configurations"; description "UNI configurations for access networks";
list uni-list { container unis {
key "UNI-ID"; description "the list of UNI's to be configured";
description "uni identifier";
uses uni-attributes { list uni {
description "UNI attributes information"; key "id";
} description "UNI identifier";
leaf id {
type string;
description "the UNI id of UNI Service Attributes";
}
uses protocol-coding-optical-interface;
}
} }
} }
container service { container services {
description "L1VC service"; description "L1VC services";
list service-list { list service {
key "subscriber-l1vc-id"; key "service-id";
description description
"an unique identifier of a service"; "an unique identifier of a subscriber L1VC service";
leaf subscriber-l1vc-id { leaf service-id {
type string; type string;
description "a unique service identifier for mandatory true;
L1VC."; description "a unique service identifier for
} subscriber L1VC.";
container service-config { }
description "service-config container"; uses subscriber-l1vc-endpoint-attributes;
uses subscriber-attributes; uses subscriber-l1vc-sls-service-attribute;
}//end of service-config
}//end of service list
} //end of service container
}//service top container }//end of service list
} //end of services container
}//end of l1 connectivity top container
} }
<CODE ENDS> <CODE ENDS>
<CODE BEGINS> file "ietf-l1-service-types@2018-08-30.yang" <CODE BEGINS> file "ietf-l1-service-types@2018-09-12.yang"
module ietf-l1-service-types {
namespace "urn:ietf:params:xml:ns:yang:ietf-l1-service-types";
prefix "l1-st";
organization
"IETF CCAMP Working Group";
contact
"WG Web: <http://tools.ietf.org/wg/ccamp/>
WG List: <mailto:ccamp@ietf.org>
Editor: G. Fioccolla(giuseppe.fioccola@telecomitalia.it)
Editor: K. Lee (kwangkoog.lee@kt.com)
Editor: Y. Lee (leeyoung@huawei.com)
Editor: D. Dhody (dhruv.ietf@gmail.com)
Editor: O. G. de-Dios(oscar.gonzalezdedios@telefonica.com)
Editor: D. Ceccarelli(daniele.ceccarelli@ericsson.com)";
description
"This module defines L1 service types based on MEF 63:
Subscriber Layer 1 Service Attribute Technical Specification.
Refer to MEF 63 for all terms and the original references
used in the module. As for the protocol-type, refer also to
the client-type in G.709.
Copyright (c) 2018 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
(http://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC XXXX; see
the RFC itself for full legal notices.";
revision "2018-08-30" {
description "Initial revision.";
reference "RFC XXXX: A Yang Data Model for L1 Connectivity
Service Model (L1CSM)";
// Note: The RFC Editor will replace XXXX with the number
// assigned to the RFC once this draft becomes an RFC.
}
identity protocol-type { module ietf-l1-service-types {
description namespace "urn:ietf:params:xml:ns:yang:ietf-l1-service-types";
"base identity from which client protocol type is derived."; prefix "l1-st";
}
identity ETH-1GbE { organization
base "protocol-type"; "IETF CCAMP Working Group";
description contact
"GigE protocol type"; "WG Web: <http://tools.ietf.org/wg/ccamp/>
reference "MEF63 & G.709"; WG List: <mailto:ccamp@ietf.org>
}
identity ETH-10GbE-WAN { Editor: G. Fioccolla(giuseppe.fioccola@telecomitalia.it)
base "protocol-type"; Editor: K. Lee (kwangkoog.lee@kt.com)
description Editor: Y. Lee (leeyoung@huawei.com)
"10GigE-WAN protocol type"; Editor: D. Dhody (dhruv.ietf@gmail.com)
reference "MEF63 & G.709"; Editor: O. G. de-Dios(oscar.gonzalezdedios@telefonica.com)
} Editor: D. Ceccarelli(daniele.ceccarelli@ericsson.com)";
identity ETH-10GbE-LAN { description
base "protocol-type"; "This module defines L1 service types based on MEF 63:
description Subscriber Layer 1 Service Attribute Technical Specification.
"10GigE-LAN protocol type"; Refer to MEF 63 for all terms and the original references
reference "MEF63 & G.709"; used in the module. As for the protocol-type, refer also to
} the client-type in G.709.
identity ETH-40GbE { Copyright (c) 2018 IETF Trust and the persons identified as
base "protocol-type"; authors of the code. All rights reserved.
description Redistribution and use in source and binary forms, with or
"40GigE protocol type"; without modification, is permitted pursuant to, and subject
reference "MEF63 & G.709"; 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
(http://trustee.ietf.org/license-info).
identity ETH-100GbE { This version of this YANG module is part of RFC XXXX; see
base "protocol-type"; the RFC itself for full legal notices.";
description revision "2018-09-12" {
"100GigE protocol type"; description "Initial revision.";
reference "MEF63 & G.709"; reference "RFC XXXX: A Yang Data Model for L1 Connectivity
} Service Model (L1CSM)";
// Note: The RFC Editor will replace XXXX with the number
// assigned to the RFC once this draft becomes an RFC.
}
identity FC-100 { identity protocol-type {
base "protocol-type";
description description
"Fiber Channel - 100 protocol type"; "base identity from which client protocol type is derived.";
reference "MEF63 & G.709"; }
} identity ETH-1GbE {
base "protocol-type";
description
"Gigabit Ethernet protocol type";
reference "MEF63 & G.709";
}
identity FC-200 { identity ETH-10GbE-WAN {
base "protocol-type"; base "protocol-type";
description description
"Fiber Channel - 200 protocol type"; "10 Gigabit Ethernet-WAN protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity FC-400 { identity ETH-10GbE-LAN {
base "protocol-type"; base "protocol-type";
description description
"Fiber Channel - 400 protocol type"; "10 Gigabit Ethernet-LAN protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity FC-800 { identity ETH-40GbE {
base "protocol-type"; base "protocol-type";
description description
"Fiber Channel - 800 protocol type"; "40 Gigabit Ethernet protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity FC-1200 { identity ETH-100GbE {
base "protocol-type"; base "protocol-type";
description description
"Fiber Channel - 1200 protocol type"; "100 Gigabit Ethernet protocol type";
reference "MEF63 & G.709";
}
identity FC-1600 { reference "MEF63 & G.709";
base "protocol-type"; }
description
"Fiber Channel - 1600 protocol type";
reference "MEF63 & G.709";
}
identity FC-3200 { identity FC-100 {
base "protocol-type"; base "protocol-type";
description description
"Fiber Channel - 3200 protocol type"; "Fiber Channel - 100 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity STM-1 { identity FC-200 {
base "protocol-type"; base "protocol-type";
description description
"SDH STM-1 protocol type"; "Fiber Channel - 200 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
}
} identity FC-400 {
base "protocol-type";
description
"Fiber Channel - 400 protocol type";
reference "MEF63 & G.709";
}
identity STM-4 { identity FC-800 {
base "protocol-type"; base "protocol-type";
description description
"SDH STM-4 protocol type"; "Fiber Channel - 800 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity STM-16 { identity FC-1200 {
base "protocol-type"; base "protocol-type";
description description
"SDH STM-16 protocol type"; "Fiber Channel - 1200 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity STM-64 { identity FC-1600 {
base "protocol-type"; base "protocol-type";
description description
"SDH STM-64 protocol type"; "Fiber Channel - 1600 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity STM-256 { identity FC-3200 {
base "protocol-type"; base "protocol-type";
description description
"SDH STM-256 protocol type"; "Fiber Channel - 3200 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity OC-3 { identity STM-1 {
base "protocol-type"; base "protocol-type";
description description
"SONET OC-3 protocol type"; "SDH STM-1 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity OC-12 { identity STM-4 {
base "protocol-type"; base "protocol-type";
description description
"SONET OC-12 protocol type"; "SDH STM-4 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity OC-48 { identity STM-16 {
base "protocol-type"; base "protocol-type";
description description
"SONET OC-48 protocol type"; "SDH STM-16 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
}
} identity STM-64 {
base "protocol-type";
description
"SDH STM-64 protocol type";
reference "MEF63 & G.709";
}
identity OC-192 { identity STM-256 {
base "protocol-type"; base "protocol-type";
description description
"SONET OC-192 protocol type"; "SDH STM-256 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity OC-768 { identity OC-3 {
base "protocol-type"; base "protocol-type";
description description
"SONET OC-768 protocol type"; "SONET OC-3 protocol type";
reference "MEF63 & G.709"; reference "MEF63 & G.709";
} }
identity OC-12 {
base "protocol-type";
description
"SONET OC-12 protocol type";
reference "MEF63 & G.709";
}
identity coding-func { identity OC-48 {
description base "protocol-type";
"base identity from which coding func is derived."; description
} "SONET OC-48 protocol type";
reference "MEF63 & G.709";
}
identity ETH-1000X-PCS-36 { identity OC-192 {
base "coding-func"; base "protocol-type";
description description
"PCS clause 36 coding function that corresponds to 1000BASE-X"; "SONET OC-192 protocol type";
} reference "MEF63 & G.709";
}
identity ETH-10GW-PCS-49-WIS-50 { identity OC-768 {
base "coding-func"; base "protocol-type";
description description
"PCS clause 49 and WIS clause 50 coding func that corresponds to 10GBASE-W "SONET OC-768 protocol type";
(WAN PHY)"; reference "MEF63 & G.709";
} }
identity ETH-10GR-PCS-49 { identity coding-func {
base "coding-func";
description description
"PCS clause 49 coding function that corresponds to 10GBASE-R (LAN PHY)"; "base identity from which coding func is derived.";
} }
identity ETH-40GR-PCS-82 { identity ETH-1000X-PCS-36 {
base "coding-func"; base "coding-func";
description description
"PCS clause 82 coding function that corresponds to 40GBASE-R"; "PCS clause 36 coding function that corresponds to 1000BASE-X";
} reference "MEF63 & IEEE802.3";
}
identity ETH-100GR-PCS-82 { identity ETH-10GW-PCS-49-WIS-50 {
base "coding-func"; base "coding-func";
description description
"PCS clause 82 coding function that corresponds to 100GBASE-R"; "PCS clause 49 and WIS clause 50 coding func that corresponds
} to 10GBASE-W (WAN PHY)";
reference "MEF63 & IEEE802.3";
}
identity ETH-10GR-PCS-49 {
base "coding-func";
description
"PCS clause 49 coding function that corresponds to 10GBASE-R
(LAN PHY)";
reference "MEF63 & IEEE802.3";
}
/* coding func needs to expand for Fiber Channel, SONET, SDH */ identity ETH-40GR-PCS-82 {
base "coding-func";
description
"PCS clause 82 coding function that corresponds to 40GBASE-R";
reference "MEF63 & IEEE802.3";
}
identity optical-interface-func { identity ETH-100GR-PCS-82 {
description base "coding-func";
"base identity from which optical-interface-function is derived."; description
} "PCS clause 82 coding function that corresponds to 100GBASE-R";
reference "MEF63 & IEEE802.3";
}
identity SX-PMD-clause-38 { /* coding func needs to expand for Fiber Channel, SONET, SDH */
base "optical-interface-func";
description
"SX-PMD-clause-38 Optical Interface function for 1000BASE-X PCS-36";
}
identity LX-PMD-clause-38 { identity optical-interface-func {
base "optical-interface-func"; description
description "base identity from which optical-interface-function is derived.";
"LX-PMD-clause-38 Optical Interface function for 1000BASE-X PCS-36"; }
}
identity LX10-PMD-clause-59 { identity SX-PMD-clause-38 {
base "optical-interface-func"; base "optical-interface-func";
description description
"LX10-PMD-clause-59 Optical Interface function for 1000BASE-X PCS-36"; "SX-PMD-clause-38 Optical Interface function for
} 1000BASE-X PCS-36";
reference "MEF63 & IEEE802.3";
}
identity BX10-PMD-clause-59 { identity LX-PMD-clause-38 {
base "optical-interface-func"; base "optical-interface-func";
description description
"BX10-PMD-clause-59 Optical Interface function for 1000BASE-X PCS-36"; "LX-PMD-clause-38 Optical Interface function for
} 1000BASE-X PCS-36";
reference "MEF63 & IEEE802.3";
}
identity LX10-PMD-clause-59 {
base "optical-interface-func";
description
"LX10-PMD-clause-59 Optical Interface function for
1000BASE-X PCS-36";
reference "MEF63 & IEEE802.3";
}
identity LW-PMD-clause-52 { identity BX10-PMD-clause-59 {
base "optical-interface-func"; base "optical-interface-func";
description description
"LW-PMD-clause-52 Optical Interface function for 10GBASE-W PCS-49-WIS-50"; "BX10-PMD-clause-59 Optical Interface function for
} 1000BASE-X PCS-36";
reference "MEF63 & IEEE802.3";
}
identity EW-PMD-clause-52 { identity LW-PMD-clause-52 {
base "optical-interface-func"; base "optical-interface-func";
description description
"EW-PMD-clause-52 Optical Interface function for 10GBASE-W PCS-49-WIS-50"; "LW-PMD-clause-52 Optical Interface function for
} 10GBASE-W PCS-49-WIS-50";
reference "MEF63 & IEEE802.3";
}
identity LR-PMD-clause-52 { identity EW-PMD-clause-52 {
base "optical-interface-func"; base "optical-interface-func";
description description
"LR-PMD-clause-52 Optical Interface function for 10GBASE-R PCS-49"; "EW-PMD-clause-52 Optical Interface function for
} 10GBASE-W PCS-49-WIS-50";
reference "MEF63 & IEEE802.3";
}
identity ER-PMD-clause-52 { identity LR-PMD-clause-52 {
base "optical-interface-func"; base "optical-interface-func";
description description
"ER-PMD-clause-52 Optical Interface function for 10GBASE-R PCS-49"; "LR-PMD-clause-52 Optical Interface function for
} 10GBASE-R PCS-49";
reference "MEF63 & IEEE802.3";
}
identity LR4-PMD-clause-87 { identity ER-PMD-clause-52 {
base "optical-interface-func"; base "optical-interface-func";
description description
"LR4-PMD-clause-87 Optical Interface function for 40GBASE-R PCS-82"; "ER-PMD-clause-52 Optical Interface function for
} 10GBASE-R PCS-49";
reference "MEF63 & IEEE802.3";
}
identity LR4-PMD-clause-87 {
base "optical-interface-func";
description
"LR4-PMD-clause-87 Optical Interface function for
40GBASE-R PCS-82";
reference "MEF63 & IEEE802.3";
}
identity ER4-PMD-clause-87 { identity ER4-PMD-clause-87 {
base "optical-interface-func"; base "optical-interface-func";
description description
"ER4-PMD-clause-87 Optical Interface function for 40GBASE-R PCS-82"; "ER4-PMD-clause-87 Optical Interface function for
} 40GBASE-R PCS-82";
reference "MEF63 & IEEE802.3";
}
identity FR-PMD-clause-89 { identity FR-PMD-clause-89 {
base "optical-interface-func"; base "optical-interface-func";
description description
"FR-PMD-clause-89 Optical Interface function for 40GBASE-R PCS-82"; "FR-PMD-clause-89 Optical Interface function for
} 40GBASE-R PCS-82";
reference "MEF63 & IEEE802.3";
}
identity LR4-PMD-clause-88 { identity LR4-PMD-clause-88 {
base "optical-interface-func"; base "optical-interface-func";
description description
"LR4-PMD-clause-88 Optical Interface function for 100GBASE-R PCS-82"; "LR4-PMD-clause-88 Optical Interface function for
} 100GBASE-R PCS-82";
reference "MEF63 & IEEE802.3";
}
identity ER4-PMD-clause-88 { identity ER4-PMD-clause-88 {
base "optical-interface-func"; base "optical-interface-func";
description description
"ER4-PMD-clause-88 Optical Interface function for 100GBASE-R PCS-82"; "ER4-PMD-clause-88 Optical Interface function for
} 100GBASE-R PCS-82";
reference "MEF63 & IEEE802.3";
}
/* optical interface func needs to expand for Fiber Channel, SONET and SDH */ /* optical interface func needs to expand for Fiber Channel, SONET and SDH */
identity performance-metriclist { identity performance-metric {
description "list of performance metric"; description "list of performance metric";
} }
identity One-way-Delay {
base "performance-metric";
description "one-way-delay";
}
identity One-way-Delay { identity One-way-Errored-Second {
base "performance-metriclist"; base "performance-metric";
description "one-way-delay"; description "one-way-errored-second";
} }
identity One-way-Errored-Second { identity One-way-Severely-Errored-Second {
base "performance-metriclist"; base "performance-metric";
description "one-way-errored-second"; description "one-way-severely-errored-second";
} }
identity One-way-Severely-Errored-Second { identity One-way-Unavailable-Second {
base "performance-metriclist"; base "performance-metric";
description "one-way-severely-errored-second"; description "one-way-unavailable-second";
} }
identity One-way-Unavailable-Second { identity One-way-Availability {
base "performance-metriclist"; base "performance-metric";
description "one-way-unavailable-second"; description "one-way-availability";
} }
identity One-way-Availability {
base "performance-metriclist";
description "one-way-availability";
} }
}
<CODE ENDS> <CODE ENDS>
5. JSON Example 5. JSON Example
This section provides a JSON example of the YANG module described in This section provides a JSON example of the YANG module described in
Section 4. Section 4. This example configures one L1VC service with two UNIs
that describe the UNI endpoints. The service is configured with the
starting time to be 06:06:09 on 2018-09-13 for the service life time
of 2419200 seconds (which is corresponds to 28 days). In addition,
the service is configured to collect one performance metric, One-
way-Delay.
{ {
"l1cs": { "l1-connectivity": {
"access": { "access": {
"uni-list": [ "unis": {
{ "uni": [
"UNI-ID": "MTL-HQ-Node3-Slot2-Port1", {
"protocol": "ETH-10GigE_LAN ", "id": "MTL-HQ-Node3-Slot2-Port1",
"coding": "ETH-10GR-PCS-49 ", "protocol": "ETH-10GigE_LAN ",
"optical_interface": "LR-PMD-clause-52 " "coding": "ETH-10GR-PCS-49 ",
}, "optical_interface": "LR-PMD-clause-52 "
{ },
"UNI-ID": "MTL-STL-Node5-Slot4-Port3", {
"protocol": "ETH-10GigE_LAN ", "id": "MTL-STL-Node5-Slot4-Port3",
"coding": "ETH-10GR-PCS-49 ", "protocol": "ETH-10GigE_LAN ",
"optical_interface": "ER-PMD-clause-52 " "coding": "ETH-10GR-PCS-49 ",
} "optical_interface": "ER-PMD-clause-52 "
] }
]
},
}, },
"service": { "services": {
"service-list": [ "service": [
{ {
"subscriber-l1vc-id": "Sub-L1VC-1867-LT-MEGAMART", "service-id": "Sub-L1VC-1867-LT-MEGAMART",
"service-config": { "endpoint-1":
"subscriber-l1vc-id": "Sub-L1VC-1867-LT-MEGAMART", {
"subscriber-l1vc-ep-id-1": "MTL-HQ_1867-MEGAMART", "id": "MTL-HQ_1867-MEGAMART",
"subscriber-l1vc-ep-id-2": "MTL-STL_1867-MEGAMART", "uni": "MTL-HQ-Node3-Slot2-Port1"
"subscriber-l1vc-ep-UNI-1": "MTL-HQ-Node3-Slot2-Port1", },
"subscriber-l1vc-ep-UNI-2": "MTL-STL-Node5-Slot4-Port3", "endpoint-2":
"time-start": "2018-07-13T06:06:09Z", {
"time-interval": 2419200, "id": "MTL-STL_1867-MEGAMART",
"performance-metric": "One-way-Delay " "uni": "MTL-STL-Node5-Slot4-Port3"
} },
"start-time": "2018-09-13T06:06:09Z",
"time-interval": 2419200,
"performance-metric": "One-way-Delay "
} }
] ]
} },
}
} }
6. Security Considerations 6. Security Considerations
The configuration, state, and action data defined in this document The configuration, state, and action data defined in this document
are designed to be accessed via a management protocol with a secure are designed to be accessed via a management protocol with a secure
transport layer, such as NETCONF [RFC6241] or RESTCONF [RFC8040]. transport layer, such as NETCONF [RFC6241] or RESTCONF [RFC8040].
The lowest NETCONF layer is the secure transport layer, and the The lowest NETCONF layer is the secure transport layer, and the
mandatory-to-implement secure transport is Secure Shell (SSH) mandatory-to-implement secure transport is Secure Shell (SSH)
[RFC6242]. The lowest RESTCONF layer is HTTPS, and the mandatory- [RFC6242]. The lowest RESTCONF layer is HTTPS, and the mandatory-
to-implement secure transport is TLS [RFC5246]. to-implement secure transport is TLS [RFC8446].
The NETCONF access control model [RFC8341] provides the means to The NETCONF access control model [RFC8341] provides the means to
restrict access for particular NETCONF users to a preconfigured restrict access for particular NETCONF users to a preconfigured
subset of all available NETCONF protocol operations and content. subset of all available NETCONF protocol operations and content.
A number of configuration data nodes defined in this document are A number of configuration data nodes defined in this document are
writable/deletable (i.e., "config true") These data nodes may be writable/deletable (i.e., "config true") These data nodes may be
considered sensitive or vulnerable in some network environments. considered sensitive or vulnerable in some network environments.
These are the subtrees and data nodes and their These are the subtrees and data nodes and their
sensitivity/vulnerability: sensitivity/vulnerability:
Service-Config: unis:
- subscriber-l1vc-id - id
- subscriber-l1vc-ep-id-1
- subscriber-l1vc-ep-id-2 Service:
- subscriber-l1vc-ep-UNI-1 - service-id
- subscriber-l1vc-ep-UNI-2 - endpoint-1
- time-start - endpoint-2
- start-time
- time-interval - time-interval
- performance-metric - performance-metric
7. IANA Considerations 7. IANA Considerations
This document registers the following namespace URIs in the IETF XML This document registers the following namespace URIs in the IETF XML
registry [RFC3688]: registry [RFC3688]:
-------------------------------------------------------------------- --------------------------------------------------------------------
URI: urn:ietf:params:xml:ns:yang:ietf-l1csm URI: urn:ietf:params:xml:ns:yang:ietf-l1csm
skipping to change at page 22, line 40 skipping to change at page 24, line 12
-------------------------------------------------------------------- --------------------------------------------------------------------
URI: urn:ietf:params:xml:ns:yang:ietf-l1-service-types URI: urn:ietf:params:xml:ns:yang:ietf-l1-service-types
Registrant Contact: The IESG. Registrant Contact: The IESG.
XML: N/A, the requested URI is an XML namespace. XML: N/A, the requested URI is an XML namespace.
-------------------------------------------------------------------- --------------------------------------------------------------------
This document registers the following YANG modules in the YANG This document registers the following YANG modules in the YANG
Module Module
Names registry [RFC7950]: Names registry [RFC6020]:
-------------------------------------------------------------------- --------------------------------------------------------------------
name: ietf-l1csm name: ietf-l1csm
namespace: urn:ietf:params:xml:ns:yang:ietf-l1csm namespace: urn:ietf:params:xml:ns:yang:ietf-l1csm
reference: RFC XXXX (TDB) reference: RFC XXXX (TDB)
-------------------------------------------------------------------- --------------------------------------------------------------------
-------------------------------------------------------------------- --------------------------------------------------------------------
name: ietf-l1-service-types name: ietf-l1-service-types
namespace: urn:ietf:params:xml:ns:yang:ietf-l1-service-types namespace: urn:ietf:params:xml:ns:yang:ietf-l1-service-types
reference: RFC XXXX (TDB) reference: RFC XXXX (TDB)
-------------------------------------------------------------------- --------------------------------------------------------------------
8. Acknowledgments 8. Acknowledgments
The authors would like to thank Tom Petch and Italo Busi for their The authors would like to thank Tom Petch and Italo Busi for their
helpful comments and valuable contributions. helpful comments and valuable contributions and Robert Wilton for
his YANG doctor's review that improved the model significantly.
9. References 9. References
9.1. Normative References 9.1. Normative References
[MEF63] "Subscriber Layer 1 Service Attributes", Technical [MEF63] "Subscriber Layer 1 Service Attributes", Technical
Specification, MEF 63, August 2018. Specification, MEF 63, August 2018.
[RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security [RFC8446] Dierks, T. and E. Rescorla, "The Transport Layer Security
(TLS) Protocol Version 1.2", RFC 5246, August 2008. (TLS) Protocol Version 1.3", RFC 8446, August 2018.
[RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for
the Network Configuration Protocol (NETCONF)", RFC 6020, the Network Configuration Protocol (NETCONF)", RFC 6020,
October 2010. October 2010.
[RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed.,
and A. Bierman, Ed., "Network Configuration Protocol and A. Bierman, Ed., "Network Configuration Protocol
(NETCONF)", RFC 6241, June 2011. (NETCONF)", RFC 6241, June 2011.
[RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure
skipping to change at page 24, line 46 skipping to change at page 25, line 46
Access Control Model", RFC 8341, March 2018. Access Control Model", RFC 8341, March 2018.
9.2. Informative References 9.2. Informative References
[RFC4847] T. Takeda (Editor), "Framework and Requirements for Layer [RFC4847] T. Takeda (Editor), "Framework and Requirements for Layer
1 Virtual Private Networks", RFC 4847, April 2007. 1 Virtual Private Networks", RFC 4847, April 2007.
[RFC5253] T. Takeda, "Applicability Statement for Layer 1 Virtual [RFC5253] T. Takeda, "Applicability Statement for Layer 1 Virtual
Private Network (L1VPN) Basic Mode", RFC 5253, July 2008. Private Network (L1VPN) Basic Mode", RFC 5253, July 2008.
[RFC8199] D. Bogdanovic, B. Claise, and C. Moberg, "YANG Module
Classification", RFC 8199, July 2017.
[RFC8309] Q. Wu, W. Liu and A. Farrel, "Service Models Explained", [RFC8309] Q. Wu, W. Liu and A. Farrel, "Service Models Explained",
RFC 8309, January 2018. RFC 8309, January 2018.
[RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K.,
and R. Wilton, "Network Management Datastore Architecture and R. Wilton, "Network Management Datastore Architecture
(NMDA)", RFC 8342, March 2018, (NMDA)", RFC 8342, March 2018,
[G.709] ITU-T Recommendation G.709/Y.1331, Interfaces for the [G.709] ITU-T Recommendation G.709/Y.1331, Interfaces for the
optical transport network, Corrigendum 1, August 2017. optical transport network, Corrigendum 1, August 2017.
[IEEE802.3] IEEE Std 802.3, IEEE Standard for Ethernet, 2015.
10. Contributors 10. Contributors
Contributor's Addresses Contributor's Addresses
I. Busi I. Busi
Huawei Huawei
Email: Italo.Busi@huawei.com Email: Italo.Busi@huawei.com
Authors' Addresses Authors' Addresses
 End of changes. 121 change blocks. 
485 lines changed or deleted 527 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/