draft-ietf-ccamp-wson-yang-06.txt   draft-ietf-ccamp-wson-yang-07.txt 
skipping to change at page 1, line 20 skipping to change at page 1, line 20
D. King D. King
U. of Lancaster U. of Lancaster
B. Yoon B. Yoon
ETRI ETRI
Ricard Vilalta Ricard Vilalta
CTTC CTTC
Expires: December 20, 2017 June 20, 2017 Expires: January 3, 2018 July 3, 2017
A Yang Data Model for WSON Optical Networks A Yang Data Model for WSON Optical Networks
draft-ietf-ccamp-wson-yang-06.txt draft-ietf-ccamp-wson-yang-07.txt
Abstract Abstract
This document provides a YANG data model for the routing and This document provides a YANG data model for the routing and
wavelength assignment (RWA) TE topology in wavelength switched wavelength assignment (RWA) TE topology in wavelength switched
optical networks (WSONs). optical networks (WSONs).
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
skipping to change at page 2, line 7 skipping to change at page 2, line 7
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 December 20, 2017. This Internet-Draft will expire on January 3, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 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
skipping to change at page 2, line 29 skipping to change at page 2, line 29
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
2. YANG Model (Tree Structure)....................................3 2. YANG Model (Tree Structure)....................................3
3. WSON-RWA YANG Model............................................4 3. WSON-RWA YANG Model............................................4
4. Security Considerations.......................................11 4. Security Considerations.......................................10
5. IANA Considerations...........................................11 5. IANA Considerations...........................................10
6. Acknowledgments...............................................12 6. Acknowledgments...............................................10
7. References....................................................13 7. References....................................................11
7.1. Normative References.....................................13 7.1. Normative References.....................................11
7.2. Informative References...................................13 7.2. Informative References...................................11
8. Contributors..................................................13 8. Contributors..................................................11
Authors' Addresses...............................................13 Authors' Addresses...............................................11
1. Introduction 1. Introduction
This document provides a YANG data model for the routing and This document provides a YANG data model for the routing and
wavelength assignment (RWA) Traffic Engineering (TE) topology in wavelength assignment (RWA) Traffic Engineering (TE) topology in
wavelength switched optical networks (WSONs). The YANG model wavelength switched optical networks (WSONs). The YANG model
described in this document is a WSON technology-specific Yang model described in this document is a WSON technology-specific Yang model
based on the information model developed in [RFC7446] and the two based on the information model developed in [RFC7446] and the two
encoding documents [RFC7581] and [RFC7579] that developed protocol encoding documents [RFC7581] and [RFC7579] that developed protocol
independent encodings based on [RFC7446]. This document augments the independent encodings based on [RFC7446]. This document augments the
the generic TE topology draft [TE-TOPO]. the generic TE topology draft [TE-TOPO].
What is not in scope of this document is both impairment-aware WSON What is not in scope of this document is both impairment-aware WSON
and flex-grid. and flex-grid.
2. YANG Model (Tree Structure) 2. YANG Model (Tree Structure)
module: ietf-wson-topology module: ietf-wson-topology
augment /nd:networks/nd:network/nd:network-types: augment /nd:networks/nd:network/nd:network-types:
+--rw wson-topology! +--rw wson-topology!
augment /nd:networks/nd:network/nd:node/tet:te/tet:config/tet:te-node- augment /nd:networks/nd:network/nd:node/tet:te/tet:te-node-
attributes/tet:connectivity-matrices/tet:connectivity-matrix: attributes/tet:connectivity-matrices/tet:connectivity-matrix:
+--rw matrix-interface* [in-port-id]
+--rw in-port-id wson-interface-ref
+--rw out-port-id? wson-interface-ref
augment /nd:networks/nd:network/lnk:link/tet:te/tet:te-link-attributes:
+--rw channel-max? int32
+--rw default-frequency? decimal64
+--rw channel-spacing? decimal64
+--rw wavelength-available-bitmap* binary
augment /nd:networks/nd:network/nd:node/tet:te/tet:te-node-attributes:
+--rw wson-node
| +--rw device-type? devicetype
| +--rw dir? directionality
| +--rw interfaces* [name]
| +--rw name string
| +--rw port-number? uint32
| +--rw input-port? boolean
| +--rw output-port? boolean
| +--rw description? string
+--rw resource-pool* [resource-pool-id]
+--rw resource-pool-id uint32
+--rw pool-state? boolean
+--rw matrix-interface* [in-port-id] +--rw matrix-interface* [in-port-id]
+--rw in-port-id wson-interface-ref +--rw in-port-id wson-interface-ref
+--rw out-port-id? wson-interface-ref +--rw out-port-id? wson-interface-ref
augment /nd:networks/nd:network/nd:node/tet:te/tet:state/tet:te-node-
attributes/tet:connectivity-matrices/tet:connectivity-matrix:
+--ro matrix-interface* [in-port-id]
+--ro in-port-id wson-interface-ref
+--ro out-port-id? wson-interface-ref
augment /nd:networks/nd:network/lnk:link/tet:te/tet:config/tet:te-link-
attributes:
+--rw channel-max? int32
+--rw default-frequency? decimal64
+--rw channel-spacing? decimal64
+--rw wavelength-available-bitmap* binary
augment /nd:networks/nd:network/lnk:link/tet:te/tet:state/tet:te-link-
attributes:
+--ro channel-max? int32
+--ro default-frequency? decimal64
+--ro channel-spacing? decimal64
+--ro wavelength-available-bitmap* binary
augment /nd:networks/nd:network/nd:node/tet:te/tet:config/tet:te-node-
attributes:
+--rw wson-node
| +--rw device-type? devicetype
| +--rw dir? directionality
| +--rw interfaces* [name]
| +--rw name string
| +--rw port-number? uint32
| +--rw input-port? boolean
| +--rw output-port? boolean
| +--rw description? string
+--rw resource-pool* [resource-pool-id]
+--rw resource-pool-id uint32
+--rw pool-state? boolean
+--rw matrix-interface* [in-port-id]
+--rw in-port-id wson-interface-ref
+--rw out-port-id? wson-interface-ref
augment /nd:networks/nd:network/nd:node/tet:te/tet:state/tet:te-node-attributes:
+--ro wson-node
| +--ro device-type? devicetype
| +--ro dir? directionality
| +--ro interfaces* [name]
| +--ro name string
| +--ro port-number? uint32
| +--ro input-port? boolean
| +--ro output-port? boolean
| +--ro description? string
+--ro resource-pool* [resource-pool-id]
+--ro resource-pool-id uint32
+--ro pool-state? boolean
+--ro matrix-interface* [in-port-id]
+--ro in-port-id wson-interface-ref
+--ro out-port-id? wson-interface-ref
3. WSON-RWA YANG Model 3. WSON-RWA YANG Model
<CODE BEGINS> file "ietf-wson-topology@2017-06-20.yang" <CODE BEGINS> file "ietf-wson-topology@2017-07-03.yang"
module ietf-wson-topology { module ietf-wson-topology {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-wson-topology"; namespace "urn:ietf:params:xml:ns:yang:ietf-wson-topology";
prefix "wson"; prefix "wson";
import ietf-network { import ietf-network {
prefix "nd"; prefix "nd";
skipping to change at page 5, line 18 skipping to change at page 4, line 35
prefix "inet"; prefix "inet";
} }
import ietf-te-topology { import ietf-te-topology {
prefix "tet"; prefix "tet";
} }
organization organization
"IETF CCAMP Working Group"; "IETF CCAMP Working Group";
contact contact
"Editor: Young Lee <leeyoung@huawei.com> "Editor: Young Lee <leeyoung@huawei.com>";
Editor: Dhruv Dhody <dhruv.ietf@gmail.com>
Editor: Ricard Vilalta <ricard.vilalta@cttc.es>";
description description
"This module contains a collection of YANG definitions for "This module contains a collection of YANG definitions for
RWA WSON. RWA WSON.
Copyright (c) 2017 IETF Trust and the persons identified as Copyright (c) 2016 IETF Trust and the persons identified as
authors of the code. All rights reserved. authors of the code. All rights reserved.
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).";
revision 2017-06-20 { revision 2017-07-03 {
description description
"corrected connectivity matrix references"; "version 7.";
reference reference
"RFC XXX: A Yang Data Model for WSON Optical Networks "; "RFC XXX: A Yang Data Model for WSON Optical Networks ";
} }
typedef wson-topology-id { typedef wson-topology-id {
type inet:uri; type inet:uri;
description description
"The WSON Topology ID"; "The WSON Topology ID";
} }
skipping to change at page 6, line 49 skipping to change at page 6, line 21
description description
"output direction"; "output direction";
} }
} }
description description
"The directionality of link set"; "The directionality of link set";
} }
typedef wson-interface-ref { typedef wson-interface-ref {
type leafref { type leafref {
path "/nd:networks/nd:network/nd:node/tet:te/tet:config" path "/nd:networks/nd:network/nd:node/tet:te/"
+ "/tet:te-node-attributes/wson:wson-node/" + "tet:te-node-attributes/wson:wson-node/"
+ "wson:interfaces/wson:name"; + "wson:interfaces/wson:name";
} }
description description
"This type is used by data models that need to "This type is used by data models that need to
reference WSON interface."; reference WSON interface.";
} }
grouping wson-topology-type { grouping wson-topology-type {
description "wson-topology type"; description "wson-topology type";
container wson-topology { container wson-topology {
skipping to change at page 10, line 4 skipping to change at page 9, line 24
leaf pool-state { leaf pool-state {
type boolean; type boolean;
description description
"TRUE is state UP; FALSE is state down"; "TRUE is state UP; FALSE is state down";
} }
uses wson-connectivity-matrix; uses wson-connectivity-matrix;
} }
} }
augment "/nd:networks/nd:network/nd:network-types" { augment "/nd:networks/nd:network/nd:network-types" {
description "wson-topology augmented"; description "wson-topology augmented";
uses wson-topology-type; uses wson-topology-type;
} }
augment "/nd:networks/nd:network/nd:node/tet:te/tet:config" augment "/nd:networks/nd:network/nd:node/tet:te"
+ "/tet:te-node-attributes/tet:connectivity-matrices"
+ "/tet:connectivity-matrix" {
when "/nd:networks/nd:network/nd:network-types"
+"/wson-topology" {
description
"This augment is only valid for
WSON connectivity matrix.";
}
description "WSON connectivity matrix config augmentation";
uses wson-connectivity-matrix;
}
augment "/nd:networks/nd:network/nd:node/tet:te/tet:state"
+ "/tet:te-node-attributes/tet:connectivity-matrices" + "/tet:te-node-attributes/tet:connectivity-matrices"
+ "/tet:connectivity-matrix" { + "/tet:connectivity-matrix" {
when "/nd:networks/nd:network/nd:network-types" when "/nd:networks/nd:network/nd:network-types"
+"/wson-topology" { +"/wson-topology" {
description description
"This augment is only valid for "This augment is only valid for
WSON connectivity matrix."; WSON connectivity matrix.";
} }
description "WSON connectivity matrix state augmentation"; description "WSON connectivity matrix state augmentation";
uses wson-connectivity-matrix; uses wson-connectivity-matrix;
} }
augment "/nd:networks/nd:network/lnk:link/tet:te/tet:config" augment "/nd:networks/nd:network/lnk:link/tet:te"
+ "/tet:te-link-attributes" { + "/tet:te-link-attributes" {
when "/nd:networks/nd:network/nd:network-types" when "/nd:networks/nd:network/nd:network-types"
+"/wson-topology" { +"/wson-topology" {
description description
"This augment is only valid for WSON."; "This augment is only valid for WSON.";
} }
description "WSON Link augmentation."; description "WSON Link augmentation.";
uses wson-link-attributes;
uses available-wavelength;
}
augment "/nd:networks/nd:network/lnk:link/tet:te/tet:state"
+ "/tet:te-link-attributes" {
when "/nd:networks/nd:network/nd:network-types"
+"/wson-topology" {
description
"This augment is only valid for WSON.";
}
description "WSON Link augmentation.";
uses wson-link-attributes; uses wson-link-attributes;
uses available-wavelength; uses available-wavelength;
} }
augment "/nd:networks/nd:network/nd:node/tet:te/tet:config" augment "/nd:networks/nd:network/nd:node/tet:te"
+ "/tet:te-node-attributes" { + "/tet:te-node-attributes" {
when "/nd:networks/nd:network/nd:network-types" when "/nd:networks/nd:network/nd:network-types"
+"/wson-topology" { +"/wson-topology" {
description description
"This augment is only valid for WSON."; "This augment is only valid for WSON.";
} }
description "WSON Node augmentation."; description "WSON Node augmentation.";
uses wson-node-attributes; uses wson-node-attributes;
uses resource-pool-attributes; uses resource-pool-attributes;
} }
augment "/nd:networks/nd:network/nd:node/tet:te/tet:state"
+ "/tet:te-node-attributes" {
when "/nd:networks/nd:network/nd:network-types"
+"/wson-topology" {
description
"This augment is only valid for WSON.";
}
description "WSON Node augmentation.";
uses wson-node-attributes;
uses resource-pool-attributes;
}
} }
<CODE ENDS> <CODE ENDS>
4. Security Considerations 4. Security Considerations
TDB TDB
5. IANA Considerations 5. IANA Considerations
TDB TDB
 End of changes. 18 change blocks. 
118 lines changed or deleted 48 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/