module ietf-otn-types {
namespace "urn:ietf:params:xml:ns:yang:ietf-otn-types";
prefix "otn-types";
organization
"IETF CCAMP Working Group";
contact
"WG Web:
WG List:
Editor: Haomian Zheng
Editor: Aihua Guo
Editor: Italo Busi
Editor: Anurag Sharma
Editor: Rajan Rao
Editor: Sergio Belotti
Editor: Victor Lopez
Editor: Yunbo Li
Editor: Yunbin Xu
";
description
"This module defines OTN types.";
revision "2018-08-10" {
description
"Revision 0.8";
reference
"draft-ietf-ccamp-otn-tunnel-model-04";
}
identity tributary-slot-granularity {
description
"Tributary slot granularity";
reference
"G.709/Y.1331, February 2016: Interfaces for the Optical
Transport Network (OTN)";
}
identity tsg-1.25G {
base tributary-slot-granularity;
description
"1.25G tributary slot granularity";
}
identity tsg-2.5G {
base tributary-slot-granularity;
description
"2.5G tributary slot granularity";
}
identity odu-type {
description
"Base identity for protocol framing used by tributary signals";
}
identity ODU0 {
base odu-type;
description
"ODU0 protocol (1.24G)";
}
identity ODU1 {
base odu-type;
description
"ODU1 protocol (2.49G)";
}
/*
identity ODU1e {
base odu-type;
description
"ODU1e protocol (10.35G).";
}
identity ODU1f {
base odu-type;
description
"ODU1f protocol (10.56G).";
}
*/
identity ODU2 {
base odu-type;
description
"ODU2 protocol (10.03G)";
}
identity ODU2e {
base odu-type;
description
"ODU2e protocol (10.39G)";
}
/*
identity ODU2f {
base odu-type;
description
"ODU2f protocol (10.60G).";
}
*/
identity ODU3 {
base odu-type;
description
"ODU3 protocol (40.31G)";
}
/*
identity ODU3e1 {
base odu-type;
description
"ODU3e1 protocol (41.77G).";
}
identity ODU3e2 {
base odu-type;
description
"ODU3e2 protocol (41.78G).";
}
*/
identity ODU4 {
base odu-type;
description
"ODU4 protocol (104.79G)";
}
identity ODUFlex-cbr {
base odu-type;
description
"ODU Flex CBR protocol for transporting constant bit rate
signal";
}
identity ODUFlex-gfp {
base odu-type;
description
"ODU Flex GFP protocol for transporting stream of packets
using Generic Framing Procedure";
}
identity ODUCn {
base odu-type;
description
"ODUCn protocol (beyond 100G)";
}
identity client-signal {
description
"Base identity from which specific client signals for the
tunnel are derived";
}
identity ETH-1Gb {
base client-signal;
description
"Client signal type of 1GbE";
}
identity ETH-10Gb-LAN {
base client-signal;
description
"Client signal type of 10GbE LAN";
}
identity ETH-10Gb-WAN {
base client-signal;
description
"Client signal type of 10GbE WAN";
}
identity ETH-40Gb {
base client-signal;
description
"Client signal type of 40GbE";
}
identity ETH-100Gb {
base client-signal;
description
"Client signal type of 100GbE";
}
identity STM-1 {
base client-signal;
description
"Client signal type of OC3 & STM-1";
}
identity STM-4 {
base client-signal;
description
"Client signal type of OC12 & STM-4";
}
identity STM-16 {
base client-signal;
description
"Client signal type of OC48 & STM-16";
}
identity STM-64 {
base client-signal;
description
"Client signal type of OC192 & STM-64";
}
identity STM-256 {
base client-signal;
description
"Client signal type of OC768 & STM-256";
}
identity FC-100 {
base client-signal;
description
"Client signal type of Fibre Channel FC-100";
}
identity FC-200 {
base client-signal;
description
"Client signal type of Fibre Channel FC-200";
}
identity FC-400 {
base client-signal;
description
"Client signal type of Fibre Channel FC-400";
}
identity FC-800 {
base client-signal;
description
"Client signal type of Fibre Channel FC-800";
}
identity FC-1200 {
base client-signal;
description
"Client signal type of Fibre Channel FC-1200";
}
identity FC-1600 {
base client-signal;
description
"Client signal type of Fibre Channel FC-1600";
}
identity FC-3200 {
base client-signal;
description
"Client signal type of Fibre Channel FC-3200";
}
identity FICON-4G {
base client-signal;
description
"Client signal type of Fibre Connection 4G";
}
identity FICON-8G {
base client-signal;
description
"Client signal type of Fibre Connection 8G";
}
identity otn-label-range-type {
description
"Base identity from which specific OTN label
range types derived";
}
identity label-range-trib-slot {
base otn-label-range-type;
description
"Defines a range of OTN tributary slots";
}
identity label-range-trib-port {
base otn-label-range-type;
description
"Defines a range of OTN tributary ports";
}
grouping otn-link-bandwidth {
description "link bandwidth attributes for OTN";
list odulist {
key "odu-type";
description
"OTN bandwidth definition";
leaf odu-type {
type identityref {
base otn-types:odu-type;
}
description "ODU type";
}
leaf number {
type uint16;
description "Number of ODUs";
}
}
}
grouping otn-path-bandwidth {
description "path bandwidth attributes for OTN";
leaf odu-type {
type identityref {
base otn-types:odu-type;
}
description "ODU type";
}
}
grouping otn-label-restriction {
description "label restriction information for OTN";
leaf range-type {
type identityref {
base otn-types:otn-label-range-type;
}
description "type for range";
}
leaf tsg {
type identityref {
base otn-types:tributary-slot-granularity;
}
description "Tributary slot granularity.";
reference
"G.709/Y.1331, February 2016: Interfaces for the
Optical Transport Network (OTN)";
}
leaf priority {
type uint8;
description "priority.";
}
}
/* Note: Suggest to be changed as otn-label-range;
otn-topology/tunnel also need change */
grouping otn-link-label {
description "link label information for OTN, for label-start/end";
choice otn-label-type {
description
"OTN label range type, either TPN range or TS range";
case tributary-port {
leaf tpn {
type uint16 {
range "1..4095";
}
description
"Tributary Port Number. Applicable in case of mux services.";
reference
"RFC7139: GMPLS Signaling Extensions for Control of Evolving
G.709 Optical Transport Networks.";
}
}
case tributary-slot {
leaf ts {
type uint16 {
range "1..4095";
}
description
"Tributary Slot Number. Applicable in case of mux services.";
reference
"RFC7139: GMPLS Signaling Extensions for Control of Evolving
G.709 Optical Transport Networks.";
}
}
}
}
/* Note: Suggest to be changed as otn-label;
otn-topology/tunnel also need change */
grouping otn-path-label {
description "label information for OTN, for label-hop";
leaf tpn {
type uint16 {
range "1..4095";
}
description
"Tributary Port Number. Applicable in case of mux services.";
reference
"RFC7139: GMPLS Signaling Extensions for Control of Evolving
G.709 Optical Transport Networks.";
}
leaf tsg {
type identityref {
base otn-types:tributary-slot-granularity;
}
description "Tributary slot granularity.";
reference
"G.709/Y.1331, February 2016: Interfaces for the
Optical Transport Network (OTN)";
}
leaf ts-list {
type string {
pattern "([1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?"
+ "(,[1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?)*)";
}
description
"A list of available tributary slots ranging
between 1 and 9999.
For example 1-20,25,50-1000";
reference "RFC 7139: GMPLS Signaling Extensions for Control
of Evolving G.709 Optical Transport Networks";
}
}
}