namespace "urn:opendaylight:params:xml:ns:yang:topology:tunnel:programming";
prefix "ttp";
- import network-topology { prefix nt; revision-date 2013-07-12; }
+ import network-topology { prefix nt; revision-date 2013-10-21; }
import topology-tunnel { prefix tt; revision-date 2013-08-19; }
import programming { prefix pgm; revision-date 2013-09-30; }
}
organization "TBD";
-
contact "TBD";
description "ISIS Topology model";
- revision "2013-07-12" {
+ revision "2013-10-21" {
description "Initial version";
}
typedef iso-system-id {
description "ISO System ID. RFC 1237";
type string {
- pattern '[0-9a-fA-F]{4}(.[0-9a-fA-F]{4}){2}';
+ pattern '[0-9a-fA-F]{4}(\.[0-9a-fA-F]{4}){2}';
}
}
typedef iso-net-id {
description "ISO NET ID. RFC 1237";
type string {
- pattern '[0-9a-fA-F]{2}((.[0-9a-fA-F]{4}){6}*)';
+ pattern '[0-9a-fA-F]{2}((\.[0-9a-fA-F]{4}){6})';
}
}
}
augment "/nt:network-topology/nt:topology/igp:igp-topology-attributes" {
- when "../../topology-types/isis";
- container isis-topogloy-attributes {
+ when "../nt:topology-types/l3t:l3-unicast-igp-topology/isis";
+ container isis-topology-attributes {
leaf net {
type iso-net-id;
}
}
augment "/nt:network-topology/nt:topology/nt:node/igp:igp-node-attributes" {
- when "../../../topology-types/isis";
+ when "../../nt:topology-types/l3t:l3-unicast-igp-topology/isis";
uses isis-node-attributes;
-
}
augment "/nt:network-topology/nt:topology/nt:link/igp:igp-link-attributes" {
- when "../../../../topology-types/isis";
+
+ when "../../nt:topology-types/l3t:l3-unicast-igp-topology/isis";
uses isis-link-attributes;
}
}
container ted {
uses ted:ted-node-attributes;
-
}
}
}
organization "TBD";
contact "TBD";
- revision "2013-07-12" {
+ revision "2013-10-21" {
description "Initial revision";
reference "TBD";
}
base "flag-identity";
}
-
typedef flag-type {
+
type identityref {
base "flag-identity";
}
type flag-type;
}
leaf-list router-id {
-
description "Router-id for the node";
+
type inet:ip-address;
}
list prefix {
case unnumbered {
leaf unnumbered-id {
description "Unnumbered interface identifier";
-
type uint32;
+
}
}
}
}
augment "/nt:network-topology/nt:topology" {
- when "topology-types/l3-unicast-igp-topology";
+ when "nt:topology-types/l3-unicast-igp-topology";
uses igp-topology-attributes;
}
augment "/nt:network-topology/nt:topology/nt:node" {
- when "../../topology-types/l3-unicast-igp-topology";
+ when "../nt:topology-types/l3-unicast-igp-topology";
uses igp-node-attributes;
}
augment "/nt:network-topology/nt:topology/nt:link" {
- when "../../topology-types/l3-unicast-igp-topology";
+ when "../nt:topology-types/l3-unicast-igp-topology";
uses igp-link-attributes;
}
augment "/nt:network-topology/nt:topology/nt:node/nt:termination-point" {
- when "../../topology-types/l3-unicast-igp-topology";
+ when "../../nt:topology-types/l3-unicast-igp-topology";
uses igp-termination-point-attributes;
}
}
leaf topology-ref {
type nt:topology-ref;
-
}
+
uses l3-unicast-igp-topology-type;
uses nt:link-attributes;
uses igp-link-attributes;
through a hierarchy of nodes, then connecting nodes at
upper layers of the hierarchy.";
- revision 2013-07-12 {
+ revision 2013-10-21 {
description
"Initial revision.";
}
and/or the type of topology that the node is a part of.";
}
+
typedef link-id {
type inet:uri;
description
(This type should not be used for relative references.
In such a case, a relative path should be used instead.)";
}
-
typedef topology-ref {
type leafref {
path "/network-topology/topology/topology-id";
path "/network-topology/topology/node/node-id";
}
description
+
"A type for an absolute reference to a node instance.
(This type should not be used for relative references.
In such a case, a relative path should be used instead.)";
in a supporting node.
This dependency information can be inferred from
the dependencies between links. For this reason,
-
this item is not separately configurable. Hence no
corresponding constraint needs to be articulated.
The corresponding information is simply provided by the
The objects are provided in a grouping so that in addition to
the datastore, the data can also be included in notifications
as needed.";
+
leaf node-id {
type node-id;
description
type link-id;
description
"The identifier of a link in the topology.
-
A link is specific to a topology to which it belongs.";
}
container source {
type tp-ref;
description
"Termination point within source node that terminates the link.";
+
}
}
container destination {
list topology {
description "
This is the model of an abstract topology.
- A topology contins nodes and links.
+ A topology contains nodes and links.
Each topology MUST be identified by
unique topology-id for reason that a network could contain many
topologies.
";
key "topology-id";
leaf topology-id {
-
type topology-id;
description "
It is presumed that a datastore will contain many topologies. To
topology identifiers.
";
}
+ leaf server-provided {
+ type boolean;
+ config false;
+ description "
+ Indicates whether the topology is configurable by clients,
+ or whether it is provided by the server. This leaf is
+
+ populated by the server implementing the model.
+ It is set to false for topologies that are created by a client;
+ it is set to true otherwise. If it is set to true, any
+ attempt to edit the topology MUST be rejected.
+ ";
+ }
container topology-types {
description
"This container is used to identify the type, or types
// This constraint is meant to ensure that a referenced node is in fact
// a node in an underlay topology.
list termination-point {
-
description
+
"A termination point can terminate a link.
Depending on the type of topology, a termination point could,
for example, refer to a port or an interface.";
module ospf-topology {
yang-version 1;
- namespace "urn:ietf:params:xml:ns:yang:ospf-topology";
-
+ namespace "urn:TBD:params:xml:ns:yang:ospf-topology";
// replace with IANA namespace when assigned
+
prefix "ospf";
import network-topology {
}
import l3-unicast-igp-topology {
- prefix "igp";
+ prefix "l3t";
}
import ietf-inet-types {
prefix "inet";
contact "TBD";
description "OSPF Topology model";
- revision "2013-07-12" {
+ revision "2013-10-21" {
description "Initial revision";
reference "TBD";
}
}
}
- augment "/nt:network-topology/nt:topology/nt:topology-types/igp:l3-unicast-igp-topology" {
+ augment "/nt:network-topology/nt:topology/nt:topology-types/l3t:l3-unicast-igp-topology" {
uses ospf-topology-type;
}
- augment "/nt:network-topology/nt:topology/igp:igp-topology-attributes" {
- when "../topology-types/ospf";
+ augment "/nt:network-topology/nt:topology/l3t:igp-topology-attributes" {
+ when "../nt:topology-types/l3t:l3-unicast-igp-topology/ospf";
container ospf-topology-attributes {
leaf area-id {
type area-id;
}
}
-
}
- augment "/nt:network-topology/nt:topology/nt:node/igp:igp-node-attributes" {
- when "../../../topology-types/ospf";
+ augment "/nt:network-topology/nt:topology/nt:node/l3t:igp-node-attributes" {
+ when "../../nt:topology-types/l3t:l3-unicast-igp-topology/ospf";
uses ospf-node-attributes;
}
- augment "/nt:network-topology/nt:topology/nt:link/igp:igp-link-attributes" {
- when "../../../topology-types/ospf";
+ augment "/nt:network-topology/nt:topology/nt:link/l3t:igp-link-attributes" {
+ when "../../nt:topology-types/l3t:l3-unicast-igp-topology/ospf";
uses ospf-link-attributes;
}
- augment "/nt:network-topology/nt:topology/nt:node/igp:igp-node-attributes/igp:prefix" {
- when "../../../../topology-types/ospf";
+ augment "/nt:network-topology/nt:topology/nt:node/l3t:igp-node-attributes/l3t:prefix" {
+ when "../../../nt:topology-types/l3t:l3-unicast-igp-topology/ospf";
uses ospf-prefix-attributes;
}
type uint32;
}
leaf-list multi-topology-id {
-
description "List of Multi-Topology Identifier up-to 128 (0-127). RFC 4915";
max-elements "128";
+
type uint8 {
range "0..127";
}
}
} // ospf-link-attributes
-
grouping ospf-prefix-attributes {
container ospf-prefix-attributes {
+
leaf forwarding-address {
- when "../../igp:l3-unicast-igp-topology/igp:ospf/igp:router-type/igp:asbr";
+ when "../../l3t:l3-unicast-igp-topology/l3t:ospf/l3t:router-type/l3t:asbr";
type inet:ipv4-address;
}
}
}
- augment "/igp:igp-node-event" {
+ augment "/l3t:igp-node-event" {
uses ospf-topology-type;
uses ospf:ospf-node-attributes;
}
- augment "/igp:igp-link-event" {
+ augment "/l3t:igp-link-event" {
uses ospf-topology-type;
uses ospf:ospf-link-attributes;
}
- augment "/igp:igp-prefix-event" {
+ augment "/l3t:igp-prefix-event" {
uses ospf-topology-type;
uses ospf:ospf-prefix-attributes;
}
organization "TBD";
contact
"TBD";
-
description
"Helper module to hold TED attributes for OSPF/ISIS";
- revision 2013-07-12 {
+ revision 2013-10-21 {
+
description
"Initial revision";
}
enum "LSC" {
description
"Lambda-Switch Capable (LSC)";
-
value 150;
}
enum "FSC" {
description
+
"Fiber-Switch Capable (FSC)";
value 200;
}
}
grouping ted-node-attributes {
-
description
"Identifier to uniquely identify a node in TED";
reference "RFC 5305, RFC 6119: IPv6 Traffic Engineering in IS-IS/OSPF";
leaf te-router-id-ipv4 {
+
description
"Globally unique IPv4 Traffic Engineering Router ID.";
type inet:ipv4-address;
}
}
-
grouping ted-link-attributes {
description
"TED Attributes associated with the link.";
reference "RFC 3630, RFC 3784: IS-IS / OSPF Traffic Engineering (TE)";
+
leaf color {
description
"Administrative group or color of the link";
}
container srlg {
description
-
"Shared Risk Link Group Attributes";
uses srlg-attributes;
}
description
"Interface has packet-switching capabilities";
leaf minimum-lsp-bandwidth {
-
description
"Minimum LSP Bandwidth. Units in bytes per second";
type decimal64 {
fraction-digits 2;
}
+
}
leaf interface-mtu {
description
namespace "urn:opendaylight:params:xml:ns:yang:topology:sr";
prefix "sr";
- import network-topology { prefix nt; revision-date 2013-07-12; }
+ import network-topology { prefix nt; revision-date 2013-10-21; }
organization "Cisco Systems, Inc.";
contact "Robert Varga <rovarga@cisco.com>";
prefix "tun-sr";
import network-topology-sr { prefix sr; revision-date 2013-08-19; }
- import network-topology { prefix nt; revision-date 2013-07-12; }
+ import network-topology { prefix nt; revision-date 2013-10-21; }
import topology-tunnel { prefix tt; revision-date 2013-08-19; }
import topology-tunnel-p2p { prefix p2p; revision-date 2013-08-19; }
namespace "urn:opendaylight:params:xml:ns:yang:topology:tunnel:p2p";
prefix "p2p";
- import network-topology { prefix nt; revision-date 2013-07-12; }
+ import network-topology { prefix nt; revision-date 2013-10-21; }
import topology-tunnel { prefix tt; revision-date 2013-08-19; }
organization "Cisco Systems, Inc.";
prefix "tt";
import ietf-inet-types { prefix inet; revision-date 2010-09-24; }
- import network-topology { prefix nt; revision-date 2013-07-12; }
+ import network-topology { prefix nt; revision-date 2013-10-21; }
organization "Cisco Systems, Inc.";
contact "Robert Varga <rovarga@cisco.com>";
prefix "pceptun";
import ieee754 { prefix ieee754; revision-date 2013-08-19; }
- import network-topology { prefix nt; revision-date 2013-07-12; }
+ import network-topology { prefix nt; revision-date 2013-10-21; }
import pcep-types { prefix pcep; revision-date 2013-10-05; }
import rsvp { prefix rsvp; revision-date 2013-08-20; }
import topology-tunnel { prefix tt; revision-date 2013-08-19; }