module ietf-otn-service {
yang-version 1;
namespace "urn:ietf:params:xml:ns:yang:ietf-otn-service";
prefix "otn-svc";
import ietf-te { prefix "te"; }
import ietf-transport-types { prefix "tran-types"; }
import yang-ext { prefix ext; revision-date 2013-07-09; }
organization
"IETF CCAMP Working Group";
contact
"WG Web:
WG List:
Editor: Anurag Sharma
Editor: Rajan Rao
Editor: Xian Zhang
";
description
"This module defines a model for OTN Services.";
revision "2016-06-24" {
description "Initial revision";
reference "TBD";
}
grouping otn-tunnel-endpoint {
description "Parameters for OTN service.";
leaf payload-treatment {
type enumeration {
enum switching;
enum transport;
}
default switching;
description
"Treatment of the incoming payload. Payload can
either be switched, or transported as is.";
}
leaf src-client-signal {
type identityref {
base tran-types:client-signal;
}
description
"Client signal at the source endpoint of
the tunnel.";
}
leaf src-tpn {
type uint16 {
range "0..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 src-tsg {
type identityref {
base tran-types:tributary-slot-granularity;
}
description
"Tributary slot granularity. Applicable in case of mux
services.";
reference
"G.709/Y.1331, February 2012: Interfaces for the
Optical Transport Network (OTN)";
}
leaf src-timeslot-count {
type uint16;
description
"Number of timeslots used at the source.";
}
container src-timeslots {
description
"A list of tributary timeslots used by the
client service. Applicable in case of mux
services.";
leaf-list values {
type uint8;
description
"Tributary timeslot value.";
reference
"G.709/Y.1331, February 2012: Interfaces for the
Optical Transport Network (OTN)";
}
}
leaf dst-client-signal {
type identityref {
base tran-types:client-signal;
}
description
"Client signal at the destination endpoint of
the tunnel.";
}
leaf dst-tpn {
type uint16 {
range "0..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 dst-tsg {
type identityref {
base tran-types:tributary-slot-granularity;
}
description
"Tributary slot granularity. Applicable in case of mux
services.";
reference
"G.709/Y.1331, February 2012: Interfaces for the
Optical Transport Network (OTN)";
}
leaf dst-timeslot-count {
type uint16;
description
"Number of timeslots used at the destination.";
}
container dst-timeslots {
description
"A list of tributary timeslots used by the
client service. Applicable in case of mux
services.";
leaf-list values {
type uint8;
description
"Tributary timeslot value.";
reference
"G.709/Y.1331, February 2012: Interfaces for the
Optical Transport Network (OTN)";
}
}
}
/*
Note: Comment has been given to authors of TE Tunnel model to add
tunnel-types to the model in order to identify the technology
type of the service.
grouping otn-service-type {
description
"Identifies the OTN Service type.";
container otn-service {
presence "Indicates OTN Service.";
description
"Its presence identifies the OTN Service type.";
}
} // otn-service-type
augment "/te:te/te:tunnels/te:tunnel/te:tunnel-types" {
description
"Introduce OTN service type for tunnel.";
ext:augment-identifier otn-service-type-augment;
uses otn-service-type;
}
*/
/*
Note: Comment has been given to authors of TE Tunnel model to add
list of endpoints under config to support P2MP tunnel.
*/
augment "/te:te/te:tunnels/te:tunnel/te:config" {
description
"Augment with additional parameters required for OTN
service.";
ext:augment-identifier otn-tunnel-endpoint-config-augment;
uses otn-tunnel-endpoint;
}
augment "/te:te/te:tunnels/te:tunnel/te:state" {
description
"Augment with additional parameters required for OTN
service.";
ext:augment-identifier otn-tunnel-endpoint-state-augment;
uses otn-tunnel-endpoint;
}
/*
Note: Comment has been given to authors of TE Tunnel model to add
tunnel-lifecycle-event to the model. This notification is reported
for all lifecycle changes (create, delete, and update) to the
tunnel or lsp.
augment "/te:tunnel-lifecycle-event" {
description
"OTN service event";
uses otn-service-type;
uses otn-tunnel-params;
list endpoint {
key
"endpoint-address tp-id";
description
"List of Tunnel Endpoints.";
uses te:tunnel-endpoint;
uses otn-tunnel-params;
}
}
*/
}