/* * * Copyright 2016 RIFT.IO Inc * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * */ module rw-topology { namespace "http://riftio.com/ns/riftware-1.0/rw-topology"; prefix rw-topology; import ietf-inet-types {prefix inet;} import ietf-network {prefix nw;} import ietf-network-topology {prefix nt;} import ietf-l2-topology {prefix l2t;} revision "2015-10-20" { description "Initial revision of IP level addressing for L2 host topology"; } grouping ip-address-group { description "IP addresses if present for L2 termination points"; container ip-attributes { description "L2 termination points containing IP addresses"; list ip-addresses { key ip; leaf ip { type inet:ip-address; description "IPv4 or IPv6 address"; } } } } // grouping ip-address-group grouping rw-network-attributes { description "RW Topology scope attributes"; container rw-network-attributes { description "Containing RW network attributes"; leaf name { type string; description "Name of the RW Topology network"; } leaf sdn-account-name { type string; description "Name of the SDN account from which topology is got"; } } } grouping rw-node-attributes { description "RW node attributes"; container rw-node-attributes { description "Containing RW node attributes"; leaf name { type string; description "Node name"; } leaf ovs-bridge-name { type string; description "Name of OVS bridge"; } } } grouping rw-link-attributes { description "RW link attributes"; container rw-link-attributes { description "Containing RW link attributes"; leaf name { type string; description "Link name"; } } } grouping rw-termination-point-attributes { description "RW termination point attributes"; container rw-termination-point-attributes { description "Containing RW TP attributes"; leaf description { type string; description "Port description"; } uses ip-address-group; } } augment "/nw:network" { description "Configuration parameters for the RW network as a whole"; uses rw-network-attributes; } augment "/nw:network/nw:node" { description "Configuration parameters for RW at the node level"; uses rw-node-attributes; } augment "/nw:network/nt:link" { description "Augment RW topology link information"; uses rw-link-attributes; } augment "/nw:network/nw:node/nt:termination-point" { description "Augment RW topology termination point configuration"; uses rw-termination-point-attributes; } }