draft-ietf-ccamp-mw-topo-yang-00.txt   draft-ietf-ccamp-mw-topo-yang-01.txt 
CCAMP Working Group M. Ye, Ed. CCAMP Working Group M. Ye, Ed.
Internet-Draft A. Guo Internet-Draft A. Guo
Intended status: Standards Track Huawei Technologies Intended status: Standards Track Huawei Technologies
Expires: August 12, 2019 J. Ahlberg Expires: September 9, 2019 J. Ahlberg
Ericsson AB Ericsson AB
X. Li X. Li
NEC Laboratories Europe GmbH NEC Laboratories Europe GmbH
D. Spreafico D. Spreafico
Nokia - IT Nokia - IT
February 8, 2019 March 8, 2019
A YANG Data Model for Microwave Topology A YANG Data Model for Microwave Topology
draft-ietf-ccamp-mw-topo-yang-00 draft-ietf-ccamp-mw-topo-yang-01
Abstract Abstract
This document defines a YANG data model to describe the topologies of This document defines a YANG data model to describe the topologies of
microwave/millimeter. microwave/millimeter.
Requirements Language Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
document are to be interpreted as described in [RFC2119]. "OPTIONAL" in this document are to be interpreted as described in
BCP14 [RFC2119] [RFC8174] when, and only when, they appear in all
captials, as shown here.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on August 12, 2019. This Internet-Draft will expire on September 9, 2019.
Copyright Notice Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the Copyright (c) 2019 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
(https://trustee.ietf.org/license-info) in effect on the date of (https://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
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Terminology and Definitions . . . . . . . . . . . . . . . . . 2 1. Terminology and Definitions . . . . . . . . . . . . . . . . . 2
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
3. YANG Data Model (Tree Structure) . . . . . . . . . . . . . . 3 3. YANG Data Model (Tree Structure) . . . . . . . . . . . . . . 3
3.1. The YANG Tree . . . . . . . . . . . . . . . . . . . . . . 3 3.1. The YANG Tree . . . . . . . . . . . . . . . . . . . . . . 3
3.2. Relationship with microwave interface YANG model . . . . 4 3.2. Relationship with microwave interface YANG model . . . . 6
3.3. Relationship with client topology model . . . . . . . . . 4 3.3. Relationship with client topology model . . . . . . . . . 7
3.4. Model applicability to other technology . . . . . . . . . 4 3.4. Model applicability to other technology . . . . . . . . . 7
4. YANG Module . . . . . . . . . . . . . . . . . . . . . . . . . 5 4. YANG Module . . . . . . . . . . . . . . . . . . . . . . . . . 7
5. Security Considerations . . . . . . . . . . . . . . . . . . . 8 5. Security Considerations . . . . . . . . . . . . . . . . . . . 18
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 20
7.1. Normative References . . . . . . . . . . . . . . . . . . 9 7.1. Normative References . . . . . . . . . . . . . . . . . . 20
7.2. Informative References . . . . . . . . . . . . . . . . . 10 7.2. Informative References . . . . . . . . . . . . . . . . . 21
Appendix A. Appendix A Examples of microwave topology . . . . . 11 Appendix A. Appendix A Examples of microwave topology . . . . . 21
A.1. Appendix A.1 A topology with single microwave radio link 11 A.1. Appendix A.1 A topology with single microwave radio link 21
A.2. Appendix A.2 A topology with microwave radio links A.2. Appendix A.2 A topology with microwave radio links
bundling . . . . . . . . . . . . . . . . . . . . . . . . 13 bundling . . . . . . . . . . . . . . . . . . . . . . . . 23
Appendix B. Contributors . . . . . . . . . . . . . . . . . . . . 17 Appendix B. Contributors . . . . . . . . . . . . . . . . . . . . 26
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 26
1. Terminology and Definitions 1. Terminology and Definitions
The following acronyms are used in this document: The following acronyms are used in this document:
PNC Provisioning Network Controller PNC Provisioning Network Controller
MDSC Multi Domain Service Coordinator MDSC Multi Domain Service Coordinator
2. Introduction 2. Introduction
skipping to change at page 3, line 32 skipping to change at page 3, line 39
3. Due to bandwidth changing feature, availability is normally used 3. Due to bandwidth changing feature, availability is normally used
to describe the microwave radio link characteristic. [RFC8330] to describe the microwave radio link characteristic. [RFC8330]
defines a mechanism to report bandwidth-availability information defines a mechanism to report bandwidth-availability information
through OSPF-TE. It's also necessary to include the information through OSPF-TE. It's also necessary to include the information
in the YANG data model to optimize the path/route computation. in the YANG data model to optimize the path/route computation.
3. YANG Data Model (Tree Structure) 3. YANG Data Model (Tree Structure)
3.1. The YANG Tree 3.1. The YANG Tree
The tree format defined in [RFC8340] is used for the YANG data model
tree representation.
module: ietf-microwave-topology module: ietf-microwave-topology
augment /nw:networks/nw:network/nw:network-types/tet:te-topology: augment /nw:networks/nw:network/nw:network-types/tet:te-topology:
+--rw mw-topology! +--rw mw-topology!
augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes: augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes:
+--rw mw-link-frequency? uint32 +--rw mw-channels* [mw-channel-frequency mw-channel-id]
+--rw mw-link-channel-separation? uint32 +--rw mw-channel-id uint32
+--ro mw-link-nominal-bandwidth? uint64 +--rw mw-channel-frequency uint32
+--ro mw-link-current-bandwidth? uint64 +--rw mw-channel-separation? uint32
+--ro mw-link-unreserved-bandwidth uint64 +--ro mw-channel-nominal-bandwidth? uint64
+--rw mw-link-availability* [availability] +--ro mw-channel-current-bandwidth? uint64
+--rw availability decimal64 +--rw mw-channel-availability* [availability]
+--ro mw-link-bandwidth uint64 | +--rw availability decimal64
augment /nw:networks/nw:network/nw:node/nt:termination-point /tet:te: | +--ro channel-bandwidth? uint64
+-- mp interface-root? +--rw interface-root {root-radio-if}?
augment /nw:networks/nw:network/nw:node/nt:termination-point/tet:te
/tet:interface-switching-capability/tet:max-lsp-bandwidth
/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node-attributes
/tet:connectivity-matrices/tet:path-constraints/tet:te-bandwidth
/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node-attributes
/tet:connectivity-matrices/tet:connectivity-matrix
/tet:path-constraints/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices
/tet:path-constraints/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices
/tet:connectivity-matrix/tet:path-constraints/tet:te-bandwidth
/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nw:node/tet:te
/tet:tunnel-termination-point/tet:client-layer-adaptation
/tet:switching-capability/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nw:node/tet:te
/tet:tunnel-termination-point/tet:local-link-connectivities
/tet:path-constraints/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nw:node/tet:te
/tet:tunnel-termination-point/tet:local-link-connectivities
/tet:local-link-connectivity/tet:path-constraints
/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nt:link/tet:te
/tet:te-link-attributes/tet:interface-switching-capability
/tet:max-lsp-bandwidth/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nt:link/tet:te
/tet:te-link-attributes/tet:max-link-bandwidth
/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nt:link/tet:te
/tet:te-link-attributes/tet:max-resv-link-bandwidth
/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nt:link/tet:te
/tet:te-link-attributes/tet:unreserved-bandwidth
/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nt:link/tet:te
/tet:information-source-entry
/tet:interface-switching-capability/tet:max-lsp-bandwidth
/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nt:link/tet:te
/tet:information-source-entry/tet:max-link-bandwidth
/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nt:link/tet:te
/tet:information-source-entry/tet:max-resv-link-bandwidth
/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/nw:network/nt:link/tet:te
/tet:information-source-entry/tet:unreserved-bandwidth
/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/tet:te/tet:templates/tet:link-template
/tet:te-link-attributes/tet:interface-switching-capability
/tet:max-lsp-bandwidth/tet:te-bandwidth/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/tet:te/tet:templates/tet:link-template
/tet:te-link-attributes/tet:max-link-bandwidth/tet:te-bandwidth
/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/tet:te/tet:templates/tet:link-template
/tet:te-link-attributes/tet:max-resv-link-bandwidth/tet:te-bandwidth
/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
augment /nw:networks/tet:te/tet:templates/tet:link-template
/tet:te-link-attributes/tet:unreserved-bandwidth/tet:te-bandwidth
/tet:technology:
+--:(mw)
+--ro mw-bandwidth? uint64
+--ro mw-unreserved-bandwidth uint64
3.2. Relationship with microwave interface YANG model 3.2. Relationship with microwave interface YANG model
The microwave topology model is expected to be used between a PNC and The microwave topology model is expected to be used between a PNC and
a MDSC. [I-D.ietf-ccamp-mw-yang] defines an interface YANG model for a MDSC. [I-D.ietf-ccamp-mw-yang] defines an interface YANG model for
microwave radio link which is used between the PNC and the physical microwave radio link which is used between the PNC and the physical
device for device configuration. The PNC is able to convert the device for device configuration. The PNC is able to convert the
information received from the topology model into the interface information received from the topology model into the interface
model. For example, the link frequency in the topology model is model. For example, link in the topology model represent the
mapped to the tx-frequency of the carrier termination in the connection between the Radio Link Terminations in the interface
interface model. model, channels in the topology model represent the connections
between Carrier Terminations in the interface model. Thus the
channel frequency in the topology model is mapped to the tx-frequency
of the Carrier Termination in the interface model.
If the purpose is to access more information of the microwave If the purpose is to access more information of the microwave
interface YANG model through the microwave topology model, a schema interface YANG model through the microwave topology model, a schema
mount mechanism could be used, see the "interface-root" in the mount mechanism could be used, see the "interface-root" in the
microwave topology model. [I-D.ietf-netmod-schema-mount] defines a microwave topology model. [RFC8528] defines a mechanism to add the
mechanism to add the schema trees defined by a set of YANG modules schema trees defined by a set of YANG modules onto a mount point
onto a mount point defined in the schema tree in some YANG module. defined in the schema tree in some YANG module. The current defined
The current defined schema mount mechanism allows mounting of schema mount mechanism allows mounting of complete data models only.
complete data models only. If complete mounting of the microwave If complete mounting of the microwave interface YANG model is not
interface YANG model is not neceesary, a deviation model could be neceesary, a deviation model could be created to remove unneeded
created to remove unneeded schema in the microwave interface model, schema in the microwave interface model, and be mounted to the
and be mounted to the topology model. topology model.
3.3. Relationship with client topology model 3.3. Relationship with client topology model
Ethernet is the most common client signal over microwave link. The Ethernet is the most common client signal over microwave link. The
Ethernet topology is an overlay TE topology on microwave topology. Ethernet topology is an overlay TE topology on microwave topology.
When an ETH service is transported by a single microwave radio link, When an ETH service is transported by a single microwave radio link,
the ETH link is supported by the microwave tunnel in underlay the ETH link is supported by the microwave link in underlay microwave
microwave topology, the microwave tunnel is supported by the topology. Appendix A.1 shows some JSON example of Ethernet link over
microwave link. Please be noted that the tunnel in microwave single microwave link with one microwave channel. When an ETH
topology is normally one-hop tunnel without intermediate node. service is transported over two microwave radio links, the ETH link
Appendix A.1 shows some JSON example of Ethernet link over single is supported by the microwave link with two microwave channels in
microwave link. When an ETH service is transported over two underlay microwave topology. Appendix A.2 shows some JSON example of
microwave radio links, the ETH link is supported by the microwave Ethernet link over two microwave links.
tunnel in underlay microwave topology, the microwave tunnel is
supported by the two microwave links. TTP Local Link Connectivity
List is a List of TE links terminated by the TTP hosting TE
node[I-D.ietf-teas-yang-te-topo]. It's used to associated with the
two LTP to the TTP in microwave topology. Appendix A.2 shows some
JSON example of Ethernet link over two microwave links.
3.4. Model applicability to other technology 3.4. Model applicability to other technology
TBA TBA
4. YANG Module 4. YANG Module
<CODE BEGINS> file "ietf-microwave-topology.yang" <CODE BEGINS> file "ietf-microwave-topology@2019-02-27.yang"
module ietf-microwave-topology { module ietf-microwave-topology {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-microwave-topology"; namespace "urn:ietf:params:xml:ns:yang:ietf-microwave-topology";
prefix "mwtopo"; prefix "mwtopo";
import ietf-network { import ietf-network {
prefix "nw"; prefix "nw";
reference "RFC 8345: A YANG Data Model for Network
Topologies";
}
import ietf-network-topology {
prefix "nt";
reference "RFC 8345: A YANG Data Model for Network Topologies";
}
// Note to RFC Editor: please replace YYYY with the number assigned
// to draft-ietf-teas-yang-te-topo
import ietf-te-topology {
prefix "tet";
reference "RFC xxxx: YANG Data Model for Traffic Engineering
(TE) Topologies";
}
/*
*import ietf-routing-types {
* prefix "rt-types";
* }
*/
import ietf-yang-schema-mount {
prefix yangmnt;
reference "RFC 8528: YANG Schema Mount";
}
organization
"Internet Engineering Task Force (IETF) CCAMP WG";
contact
"
WG List: <mailto:ccamp@ietf.org>
Editor: Min Ye
<mailto:amy.yemin@huawei.com>
Editor: Aihua Guo
<mailto:aihuaguo@huawei.com>
Editor: Jonas Ahlberg
<mailto:jonas.ahlberg@ericsson.com>
Editor: Xi Li
<mailto:Xi.Li@neclab.eu>
Editor: Daniela Spreafico
<mailto:daniela.spreafico@nokia.com>";
// Note to RFC Editor: replace XXXX with actual RFC number and
// remove this note.
description
"This is a module for microwave topology.
Copyright (c) 2019 IETF Trust and the persons identified as
authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject to
the license terms contained in, the Simplified BSD License set
forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents
(http://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC XXXX
(https://tools.ietf.org/html/rfcXXXX); see the RFC itself for
full legal notices.";
revision 2019-02-27 {
description
"Update microwave link key.";
reference "";
}
revision 2019-01-03 {
description
"Align with the TE topology YANG model.";
reference "";
}
revision 2018-10-22 {
description
"change the type of serveral data nodes.";
reference "";
}
revision 2018-06-30 {
description
"Updated version to add mount point to the interface model.";
reference "";
}
revision 2018-03-05 {
description
"Initial version.";
reference "";
}
feature root-radio-if{
description
"This feature means that root for microwave radio
interface model is supported.";
}
/*
* Groupings
*/
grouping mw-bandwidth {
description "Microwave bandwidth attributes";
leaf mw-bandwidth {
type uint64;
units "Kbps";
config false;
description "Microwave nominal bandwidth. Calcualtion
of microwave nominal bandwidth is implementation specific.
For example, if there's only one channel in the mw-channels
list, the microwave nominal bandwidth is equal to the
channel bandwidth. If there's two channels in the mw-channels
list, depending on the configuration of the channels, the
microwave nominal bandwidth is the sum of channel
bandwidth(2+0), or just one channel bandwidth
(1+1 with protection).";
} }
import ietf-network-topology { leaf mw-unreserved-bandwidth {
prefix "nt"; type uint64;
units "Kbps";
config false;
description "The unreserved bandwidth of the link is
mw-bandwidth minus occupied bandwidth
on mw link";
}
}
grouping mw-link-attributes {
description "Microwave link attributes.";
list mw-channels {
key "mw-channel-frequency mw-channel-id";
description "List of microwave channels supporting the link.";
uses mw-channel-attributes;
}
}
grouping mw-channel-attributes {
description "Microwave channel attributes";
leaf mw-channel-id {
type string;
description "Microwave channel identifier";
} }
import ietf-te-topology { leaf mw-channel-frequency {
prefix "tet"; type uint32;
units "kHz";
description "Microwave channel frequency";
}
leaf mw-channel-separation {
type uint32;
units "kHz";
description
"The distance between adjacent channels
in a radio frequency channel arrangement
used in this link";
reference "ETSI EN 302 217-1";
}
leaf mw-channel-nominal-bandwidth {
type uint64;
units "Kbps";
config false;
description "The nominal channel bandwidth";
}
leaf mw-channel-current-bandwidth {
type uint64;
units "Kbps";
config false;
description "The current channel bandwidth";
}
list mw-channel-availability{
key "availability";
description
"List of availability and corresponding
channel bandwidth";
leaf availability {
type decimal64 {
fraction-digits 4;
range "0..99.9999";
}
description "Availability level";
}
leaf channel-bandwidth {
type uint64;
units "Kbps";
config false;
description
"The channel bandwidth corresponding
to the availability level";
}
} }
container "interface-root" {
if-feature root-radio-if;
description
"Container for mount point.";
yangmnt:mount-point "interface-root" {
description
"Root for microwave radio interface model.
It could contain an interface instance.";
}
}
}
/* /*
*import ietf-routing-types { * Data nodes
* prefix "rt-types";
* }
*/ */
augment "/nw:networks/nw:network/nw:network-types/"
+ "tet:te-topology" {
container mw-topology {
presence "indicates a topology type of microwave.";
description "Microwave topology type";
}
description "augment network types to include microwave network";
}
import ietf-yang-schema-mount { augment "/nw:networks/nw:network/nt:link/tet:te/"
prefix yangmnt; + "tet:te-link-attributes" {
reference "draft-ietf-netmod-schema-mount: YANG Schema Mount"; when "../../../nw:network-types/tet:te-topology/"
} + "mwtopo:mw-topology" {
description "This augment is only valid for microwave.";
}
description "Microwave link augmentation";
organization uses mw-link-attributes;
"Internet Engineering Task Force (IETF) CCAMP WG"; }
contact
"
WG List: <mailto:ccamp@ietf.org>
ID-draft authors: /*
Min Ye (amy.yemin@huawei.com); * Augment TE bandwidth
Aihua Guo (aihuaguo@huawei.com); */
Jonas Ahlberg (jonas.ahlberg@ericsson.com);
Xi Li (Xi.Li@neclab.eu);
Daniela Spreafico (daniela.spreafico@nokia.com)
";
description /* Augment maximum LSP bandwidth of link terminationpoint (LTP) */
"This is a module for microwave topology."; augment "/nw:networks/nw:network/nw:node/nt:termination-point/"
revision 2018-10-22 { + "tet:te/"
description + "tet:interface-switching-capability/tet:max-lsp-bandwidth/"
"change the type of serveral data nodes."; + "tet:te-bandwidth/tet:technology" {
reference ""; when "../../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
/* Augment bandwidth path constraints of connectivity-matrices */
augment "/nw:networks/nw:network/nw:node/tet:te/"
+ "tet:te-node-attributes/tet:connectivity-matrices/"
+ "tet:path-constraints/tet:te-bandwidth/tet:technology" {
when "../../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
} }
}
revision 2018-06-30 { /* Augment bandwidth path constraints of connectivity-matrix */
description augment "/nw:networks/nw:network/nw:node/tet:te/"
"Updated version to add mount point to the interface model."; + "tet:te-node-attributes/tet:connectivity-matrices/"
reference ""; + "tet:connectivity-matrix/"
+ "tet:path-constraints/tet:te-bandwidth/tet:technology" {
when "../../../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
} }
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
revision 2018-03-05 { /* Augment bandwidth path constraints of connectivity-matrices
description * information-source */
"Initial version."; augment "/nw:networks/nw:network/nw:node/tet:te/"
reference ""; + "tet:information-source-entry/tet:connectivity-matrices/"
+ "tet:path-constraints/tet:te-bandwidth/tet:technology" {
when "../../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
} }
feature root-radio-if{ }
description
"This feature means that root for microwave radio
interface model is supported.";
}
/* /* Augment bandwidth path constraints of connectivity-matrix
* Groupings * information-source */
*/ augment "/nw:networks/nw:network/nw:node/tet:te/"
grouping mw-link-attributes { + "tet:information-source-entry/tet:connectivity-matrices/"
description "Microwave link attributes"; + "tet:connectivity-matrix/"
+ "tet:path-constraints/tet:te-bandwidth/tet:technology" {
when "../../../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
leaf mw-link-frequency { /* Augment client bandwidth of tunnel termination point (TTP) */
type uint32; augment "/nw:networks/nw:network/nw:node/tet:te/"
units "kHz"; + "tet:tunnel-termination-point/"
description "Frequency of the link"; + "tet:client-layer-adaptation/tet:switching-capability/"
} + "tet:te-bandwidth/tet:technology" {
when "../../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
leaf mw-link-channel-separation { /* Augment bandwidth path constraints of local-link-connectivities */
type uint32; augment "/nw:networks/nw:network/nw:node/tet:te/"
units "kHz"; + "tet:tunnel-termination-point/"
description "The distance + "tet:local-link-connectivities/tet:path-constraints/"
between adjacent channels in a radio frequency channel + "tet:te-bandwidth/tet:technology" {
arrangement used in this link"; when "../../../../../../nw:network-types/tet:te-topology/"
reference "ETSI EN 302 217-1"; + "mwtopo:mw-topology" {
} description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
leaf mw-link-nominal-bandwidth { /* Augment bandwidth path constraints of
type uint64; *local-link-connectivity (LLC) */
units "Kbps"; augment "/nw:networks/nw:network/nw:node/tet:te/"
config false; + "tet:tunnel-termination-point/"
description "The nominal bandwidth of the link"; + "tet:local-link-connectivities/"
} + "tet:local-link-connectivity/tet:path-constraints/"
+ "tet:te-bandwidth/tet:technology" {
when "../../../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
leaf mw-link-current-bandwidth { /* Augment maximum LSP bandwidth of TE link */
type uint64; augment "/nw:networks/nw:network/nt:link/tet:te/"
units "Kbps"; + "tet:te-link-attributes/"
config false; + "tet:interface-switching-capability/tet:max-lsp-bandwidth/"
description "The current bandwidth of the link"; + "tet:te-bandwidth/tet:technology" {
} when "../../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
leaf mw-link-unreserved-bandwidth { /* Augment maximum bandwidth of TE link */
type uint64; augment "/nw:networks/nw:network/nt:link/tet:te/"
units "Kbps"; + "tet:te-link-attributes/"
config false; + "tet:max-link-bandwidth/"
description "The unreserved bandwidth of the link is + "tet:te-bandwidth/tet:technology" {
mw-link-current-bandwidth minus occupied bandwidth when "../../../../../nw:network-types/tet:te-topology/"
on mw link"; + "mwtopo:mw-topology" {
} description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
list mw-link-availability{ /* Augment maximum reservable bandwidth of TE link */
key "availability"; augment "/nw:networks/nw:network/nt:link/tet:te/"
description "List of availability and corresponding + "tet:te-link-attributes/"
link bandwidth"; + "tet:max-resv-link-bandwidth/"
+ "tet:te-bandwidth/tet:technology" {
when "../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
leaf availability { /* Augment unreserved bandwidth of TE Link */
type decimal64 { augment "/nw:networks/nw:network/nt:link/tet:te/"
fraction-digits 4; + "tet:te-link-attributes/"
range "0..99.9999"; + "tet:unreserved-bandwidth/"
} + "tet:te-bandwidth/tet:technology" {
description "Availability level of the link"; when "../../../../../nw:network-types/tet:te-topology/"
} + "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
/* Augment maximum LSP bandwidth of TE link information-source */
augment "/nw:networks/nw:network/nt:link/tet:te/"
+ "tet:information-source-entry/"
+ "tet:interface-switching-capability/"
+ "tet:max-lsp-bandwidth/"
+ "tet:te-bandwidth/tet:technology" {
when "../../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
leaf mw-link-bandwidth { /* Augment maximum bandwidth of TE link information-source */
type uint64; augment "/nw:networks/nw:network/nt:link/tet:te/"
units "Kbps"; + "tet:information-source-entry/"
config false; + "tet:max-link-bandwidth/"
description "The link bandwidth corresponding + "tet:te-bandwidth/tet:technology" {
to the availability level"; when "../../../../../nw:network-types/tet:te-topology/"
} + "mwtopo:mw-topology" {
} description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
container "interface-root" { /* Augment maximum reservable bandwidth of TE link
if-feature root-radio-if; * information-source */
description augment "/nw:networks/nw:network/nt:link/tet:te/"
"Container for mount point."; + "tet:information-source-entry/"
+ "tet:max-resv-link-bandwidth/"
+ "tet:te-bandwidth/tet:technology" {
when "../../../../../nw:network-types/tet:te-topology/"
+ "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
yangmnt:mount-point "interface-root" { /* Augment unreserved bandwidth of TE link information-source */
description augment "/nw:networks/nw:network/nt:link/tet:te/"
"Root for microwave radio interface model. + "tet:information-source-entry/"
It could contain an interface instance."; + "tet:unreserved-bandwidth/"
} + "tet:te-bandwidth/tet:technology" {
} when "../../../../../nw:network-types/tet:te-topology/"
} + "mwtopo:mw-topology" {
description "Augment microwave TE bandwidth";
}
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
/* /* Augment maximum LSP bandwidth of TE link template */
* Data nodes augment "/nw:networks/tet:te/tet:templates/"
*/ + "tet:link-template/tet:te-link-attributes/"
augment "/nw:networks/nw:network/nw:network-types/" + "tet:interface-switching-capability/"
+ "tet:te-topology" { + "tet:max-lsp-bandwidth/"
container mw-topology { + "tet:te-bandwidth/tet:technology" {
presence "indicates a topology type of microwave.";
description "microwave topology type"; description "microwave bandwidth.";
} case mw {
description "augment network types to include microwave network"; uses mw-bandwidth;
} }
}
augment "/nw:networks/nw:network/nt:link/tet:te/" /* Augment maximum bandwidth of TE link template */
+ "tet:te-link-attributes" { augment "/nw:networks/tet:te/tet:templates/"
when "../../../nw:network-types/tet:te-topology/" + "tet:link-template/tet:te-link-attributes/"
+ "mwtopo:mw-topology" { + "tet:max-link-bandwidth/"
description "This augment is only valid for microwave."; + "tet:te-bandwidth/tet:technology" {
} description "microwave bandwidth.";
description "Microwave link augmentation"; case mw {
uses mw-bandwidth;
}
}
uses mw-link-attributes; /* Augment maximum reservable bandwidth of TE link template */
augment "/nw:networks/tet:te/tet:templates/"
+ "tet:link-template/tet:te-link-attributes/"
+ "tet:max-resv-link-bandwidth/"
+ "tet:te-bandwidth/tet:technology" {
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
} }
}
} /* Augment unreserved bandwidth of TE link template */
<CODE ENDS> augment "/nw:networks/tet:te/tet:templates/"
+ "tet:link-template/tet:te-link-attributes/"
+ "tet:unreserved-bandwidth/"
+ "tet:te-bandwidth/tet:technology" {
description "microwave bandwidth.";
case mw {
uses mw-bandwidth;
}
}
}
<CODE ENDS>
5. Security Considerations 5. Security Considerations
The YANG module specified in this document defines a schema for data The YANG module specified in this document defines a schema for data
that is designed to be accessed via network management protocols such that is designed to be accessed via network management protocols such
as NETCONF [RFC6241] or RESTCONF [RFC8040][RFC8040]. The lowest as NETCONF [RFC6241] or RESTCONF [RFC8040][RFC8040]. The lowest
NETCONF layer is the secure transport layer, and the mandatory-to- NETCONF layer is the secure transport layer, and the mandatory-to-
implement secure transport is Secure Shell (SSH) [RFC6242]. The implement secure transport is Secure Shell (SSH) [RFC6242]. The
lowest RESTCONF layer is HTTPS, and the mandatory-to-implement secure lowest RESTCONF layer is HTTPS, and the mandatory-to-implement secure
transport is TLS [RFC8446]. transport is TLS [RFC8446].
skipping to change at page 9, line 27 skipping to change at page 19, line 34
Some of the readable data nodes in this YANG module may be considered Some of the readable data nodes in this YANG module may be considered
sensitive or vulnerable in some network environments. It is thus sensitive or vulnerable in some network environments. It is thus
important to control read access (e.g., via get, get-config, or important to control read access (e.g., via get, get-config, or
notification) to these data nodes. These are the subtrees and data notification) to these data nodes. These are the subtrees and data
nodes and their sensitivity/vulnerability: nodes and their sensitivity/vulnerability:
TBD.(list subtrees and data nodes and state why they are sensitive) TBD.(list subtrees and data nodes and state why they are sensitive)
6. IANA Considerations 6. IANA Considerations
IANA has assigned a new URI from the "IETF XML Registry" [RFC3688]. IANA is aksed to assign a new URI from the "IETF XML Registry"
[RFC3688].
URI: urn:ietf:params:xml:ns:yang:ietf-microwave-topology URI: urn:ietf:params:xml:ns:yang:ietf-microwave-topology
Registrant Contact: The IESG Registrant Contact: The IESG
XML: N/A; the requested URI is an XML namespace. XML: N/A; the requested URI is an XML namespace.
IANA has recorded a YANG module name in the "YANG Module Names" IANA has recorded a YANG module name in the "YANG Module Names"
registry [RFC6020] as follows: registry [RFC6020] as follows:
Name: ietf-microwave-topology Name: ietf-microwave-topology
Namespace: urn:ietf:params:xml:ns:yang:ietf-microwave-topology Namespace: urn:ietf:params:xml:ns:yang:ietf-microwave-topology
Prefix: mwtopo Prefix: mwtopo
Reference: RFC xxxx Reference: RFC xxxx
7. References 7. References
7.1. Normative References 7.1. Normative References
[I-D.ietf-teas-yang-te-topo]
Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and
O. Dios, "YANG Data Model for Traffic Engineering (TE)
Topologies", draft-ietf-teas-yang-te-topo-19 (work in
progress), February 2019.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
DOI 10.17487/RFC3688, January 2004, DOI 10.17487/RFC3688, January 2004,
<https://www.rfc-editor.org/info/rfc3688>. <https://www.rfc-editor.org/info/rfc3688>.
[RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for
skipping to change at page 10, line 27 skipping to change at page 20, line 42
<https://www.rfc-editor.org/info/rfc6241>. <https://www.rfc-editor.org/info/rfc6241>.
[RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure
Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011,
<https://www.rfc-editor.org/info/rfc6242>. <https://www.rfc-editor.org/info/rfc6242>.
[RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF
Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017,
<https://www.rfc-editor.org/info/rfc8040>. <https://www.rfc-editor.org/info/rfc8040>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams",
BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018,
<https://www.rfc-editor.org/info/rfc8340>.
[RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration
Access Control Model", STD 91, RFC 8341, Access Control Model", STD 91, RFC 8341,
DOI 10.17487/RFC8341, March 2018, DOI 10.17487/RFC8341, March 2018,
<https://www.rfc-editor.org/info/rfc8341>. <https://www.rfc-editor.org/info/rfc8341>.
[RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol
Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018,
<https://www.rfc-editor.org/info/rfc8446>. <https://www.rfc-editor.org/info/rfc8446>.
[RFC8528] Bjorklund, M. and L. Lhotka, "YANG Schema Mount",
RFC 8528, DOI 10.17487/RFC8528, March 2019,
<https://www.rfc-editor.org/info/rfc8528>.
7.2. Informative References 7.2. Informative References
[I-D.ietf-ccamp-mw-yang] [I-D.ietf-ccamp-mw-yang]
Ahlberg, J., Ye, M., Li, X., Spreafico, D., and M. Ahlberg, J., Ye, M., Li, X., Spreafico, D., and M.
Vaupotic, "A YANG Data Model for Microwave Radio Link", Vaupotic, "A YANG Data Model for Microwave Radio Link",
draft-ietf-ccamp-mw-yang-13 (work in progress), November draft-ietf-ccamp-mw-yang-13 (work in progress), November
2018. 2018.
[I-D.ietf-netmod-schema-mount]
Bjorklund, M. and L. Lhotka, "YANG Schema Mount", draft-
ietf-netmod-schema-mount-12 (work in progress), October
2018.
[I-D.ietf-teas-yang-te-topo]
Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and
O. Dios, "YANG Data Model for Traffic Engineering (TE)
Topologies", draft-ietf-teas-yang-te-topo-18 (work in
progress), June 2018.
[RFC8330] Long, H., Ye, M., Mirsky, G., D'Alessandro, A., and H. [RFC8330] Long, H., Ye, M., Mirsky, G., D'Alessandro, A., and H.
Shah, "OSPF Traffic Engineering (OSPF-TE) Link Shah, "OSPF Traffic Engineering (OSPF-TE) Link
Availability Extension for Links with Variable Discrete Availability Extension for Links with Variable Discrete
Bandwidth", RFC 8330, DOI 10.17487/RFC8330, February 2018, Bandwidth", RFC 8330, DOI 10.17487/RFC8330, February 2018,
<https://www.rfc-editor.org/info/rfc8330>. <https://www.rfc-editor.org/info/rfc8330>.
[RFC8453] Ceccarelli, D., Ed. and Y. Lee, Ed., "Framework for [RFC8453] Ceccarelli, D., Ed. and Y. Lee, Ed., "Framework for
Abstraction and Control of TE Networks (ACTN)", RFC 8453, Abstraction and Control of TE Networks (ACTN)", RFC 8453,
DOI 10.17487/RFC8453, August 2018, DOI 10.17487/RFC8453, August 2018,
<https://www.rfc-editor.org/info/rfc8453>. <https://www.rfc-editor.org/info/rfc8453>.
skipping to change at page 11, line 41 skipping to change at page 22, line 14
Node 1 Node 2 Node 1 Node 2
+---------------+ +---------------+ +---------------+ +---------------+
| | | | | | | |
| +-----------+ | | +-----------+ | | +-----------+ | | +-----------+ |
| | LTP11 | | | | LTP21 | | --ETH topo | | LTP11 | | | | LTP21 | | --ETH topo
| +-------o---+ | ETH-TE-Link-1 | +---o-------+ | | +-------o---+ | ETH-TE-Link-1 | +---o-------+ |
| |---------------------------------| | | |---------------------------------| |
| | | | | | | |
| +-----------+ | | +-----------+ | | +-----------+ | | +-----------+ |
| | TTP-1 __ | | microwave tunnel-11 | | __ TTP-1 | | | | LTP-1 | | microwave link-11 | | LTP-1 | |
| | \/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\/ | | | | o --------------------------------o | |
| | * | | | | * | | --Microwave topo | | * | | | | * | | --Microwave topo
| | * | | microwave link 12 | | * | | | | * | |microwave channel 11 | | * | |
| | LTP-1 *o ------------------------o* LTP-1 | | | | *o ------------------------o* | |
| | | | | | | | | | | | | | | |
| +-----------+ | | +-----------+ | | +-----------+ | | +-----------+ |
| | | | | | | |
+---------------+ +---------------+ +---------------+ +---------------+
Figure 3: ETH transported on a single microwave radio link Figure 3: ETH transported on a single microwave radio link
In the above ETH topology, the ETH-TE-link is encoded in JSON as In the above ETH topology, the ETH-TE-link is encoded in JSON as
below: below:
skipping to change at page 12, line 20 skipping to change at page 22, line 41
{ {
"link-id": "N1,LTP11,N2,LTP21", "link-id": "N1,LTP11,N2,LTP21",
"source": { "source": {
"source-node": "N1", "source-node": "N1",
"source-tp": "LTP11" "source-tp": "LTP11"
} }
"destination": { "destination": {
"dest-node": "N2", "dest-node": "N2",
"dest-tp": "LTP21" "dest-tp": "LTP21"
} }
"supporting-link": {
"network-ref": "mw-topo",
"link-ref": "mw-link-11"
}
} }
] ]
"ietf-te-topology:link/te/te-link-attributes/": [
{
"ietf-te-topology:underlay": {
"enabled": ture,
"primary-path":{
"path-element": {
"path-element-id": "MW-11"
//no backup-path
//no protection-type
}
}
"tunnel-termination-points": {
"source": "N1/TTP-1",
"destination": "N2/TTP-1"
}
"tunnels" : {
"sharing": "false",
"tunnel":{
"tunnel-name": "MW-11",
"sharing": "false"
}
}
}
}
]
Note that the example above just shows the particular ETH link, not Note that the example above just shows the particular ETH link, not
the full ETH topology. the full ETH topology.
In the microwave topology, the microwave link is encoded in JSON as In the microwave topology, the microwave link is encoded in JSON as
below: below:
... ...
"ietf-network-topology:link": [ "ietf-network-topology:link": [
{ {
"link-id": "N1,LTP1,N2,LTP1", "link-id": "N1,LTP-1,N2,LTP-1",
"source": { "source": {
"source-node": "N1", "source-node": "N1",
"source-tp": "LTP1" "source-tp": "LTP-1"
} }
"destination": { "destination": {
"dest-node": "N2", "dest-node": "N2",
"dest-tp": "LTP1" "dest-tp": "LTP-1"
}
} }
]
"ietf-te-topology:link/te/te-link-attributes": [
{
"mw-channels":{
"ietf-microwave-topology:mw-channel-id": "1",
"ietf-microwave-topology:mw-channel-frequency": 10728000,
"ietf-microwave-topology:mw-channel-separation": "28000",
"ietf-microwave-topology:mw-channel-nominal-bandwidth":
"1000",
"ietf-microwave-topology:mw-channel-current-bandwidth":
"1000",
"ietf-microwave-topology:mw-channel-availability":{
"availability":"99.99",
"channel-bandwidth": "1000"
}
}
}
]
"ietf-te-topology:node/te/interface-switching-capability
/max-lsp-bandwidth/te-bandwidth/technology":{
"mw-bandwidth":"1000"
} }
]
"ietf-te-topology:link/te/te-link-attributes": [
{
"ietf-microwave-topology:mw-link-frequency": 10728000,
"ietf-microwave-topology:mw-link-channel-separation": "28000",
"ietf-microwave-topology:mw-link-nominal-bandwidth": "1000",
"ietf-microwave-topology:mw-link-current-bandwidth": "1000",
"ietf-microwave-topology:mw-link-unreserved-bandwidth": "400",
"ietf-microwave-topology:mw-link-availability":{
"availability":"99.99",
"mw-link-bandwidth": "1000"
}
}
]
A.2. Appendix A.2 A topology with microwave radio links bundling A.2. Appendix A.2 A topology with microwave radio links bundling
When a ETH service is transported over two microwave radio links, the When a ETH service is transported over two microwave radio links(2+0
topologies could be shown as in Figure 4. Note that the figure just configuration), the topologies could be shown as in Figure 4. Note
shows one example, there might be other possiblities to demonstrate that the figure just shows one example, there might be other
the topology. possiblities to demonstrate the topology.
Node 1 Node 2 Node 1 Node 2
+---------------+ +---------------+ +---------------+ +---------------+
| | | | | | | |
| +-----------+ | | +-----------+ | | +-----------+ | | +-----------+ |
| | LTP11 | | | | LTP21 | | --ETH topo | | LTP11 | | | | LTP21 | | --ETH topo
| +-------o---+ | ETH-TE-Link-1 | +---o-------+ | | +-------o---+ | ETH-TE-Link-1 | +---o-------+ |
| |---------------------------------| | | |---------------------------------| |
| | | | | | | |
| +-----------+ | | +-----------+ | | +-----------+ | | +-----------+ |
| | TTP-1 __ | | microwave tunnel-11 | | __ TTP-1 | | | | LTP-1 | | microwave link-11 | | LTP-1 | |
| | \/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\/ | | | | o---------------------------------o | |
| | ** | | | | ** | | --Microwave topo | | ** | | | | ** | | --Microwave topo
| | ** | | microwave link 22 | | ** | | | | ** | |microwave channle 22 | | ** | |
| | LTP-2**o ------------------------o**LTP-2 | | | | **o ------------------------o** | |
| | LTP-1 *o ------------------------o* LTP-1 | | | | *o ------------------------o* | |
| | | | microwave link 11 | | | | | | | |microwave channle 11 | | | |
| +-----------+ | | +-----------+ | | +-----------+ | | +-----------+ |
| | | | | | | |
+---------------+ +---------------+ +---------------+ +---------------+
Figure 4: ETH transported on two microwave radio links Figure 4: ETH transported on two microwave radio links
In the ETH topology, the ETH-TE-link is encoded in JSON as below: In the ETH topology, the ETH-TE-link is encoded in JSON as below:
... ...
"ietf-network-topology:link": [ "ietf-network-topology:link": [
{ {
"link-id": "N1,LTP11,N2,LTP21", "link-id": "N1,LTP11,N2,LTP21",
"source": { "source": {
"source-node": "N1", "source-node": "N1",
"source-tp": "LTP11" "source-tp": "LTP11"
} }
"destination": { "destination": {
"dest-node": "N2", "dest-node": "N2",
"dest-tp": "LTP21" "dest-tp": "LTP21"
} }
"supporting-link": {
"network-ref": "mw-topo",
"link-ref": "mw-link-11"
}
} }
] ]
"ietf-te-topology:link/te/te-link-attributes/": [
{
"ietf-te-topology:underlay": {
"enabled": ture,
"primary-path":{
"path-element": {
"path-element-id": "MW-11"
//no backup-path
//no protection-type
}
}
"tunnel-termination-points": {
"source": "N1/TTP-1",
"destination": "N2/TTP-1"
}
"tunnels" : {
"sharing": "false",
"tunnel":{
"tunnel-name": "MW-11",
"sharing": "false"
}
}
}
}
]
Note that the example above just shows the specific ETH link, not the Note that the example above just shows the specific ETH link, not the
full ETH topology. full ETH topology.
In the microwave topology, the micorwave link is encoded in JSON as In the microwave topology, the micorwave link is encoded in JSON as
below: below:
... ...
"ietf-network-topology:link": [ "ietf-network-topology:link": [
{ {
"link-id": "N1,LTP1,N2,LTP1", "link-id": "N1,LTP-1,N2,LTP-1",
"source": { "source": {
"source-node": "N1", "source-node": "N1",
"source-tp": "LTP1" "source-tp": "LTP-1"
} }
"destination": { "destination": {
"dest-node": "N2", "dest-node": "N2",
"dest-tp": "LTP1" "dest-tp": "LTP-1"
} }
"ietf-te-topology:link/te/te-link-attributes": [ }
{
"ietf-microwave-topology:mw-link-frequency": 10728000,
"ietf-microwave-topology:mw-link-channel-separation": "28000",
"ietf-microwave-topology:mw-link-nominal-bandwidth": "1000",
"ietf-microwave-topology:mw-link-current-bandwidth": "1000",
"ietf-microwave-topology:mw-link-unreserved-bandwidth": "400",
"ietf-microwave-topology:mw-link-availability":{
"availability":"99.99",
"mw-link-bandwidth": "1000"
}
}
]
}
{
"link-id": "N1,LTP1,N2,LTP1",
"source": {
"source-node": "N1",
"source-tp": "LTP2"
}
"destination": {
"dest-node": "N2",
"dest-tp": "LTP2"
}
"ietf-te-topology:link/te/te-link-attributes": [
{
"ietf-microwave-topology:mw-link-frequency": 10756000,
"ietf-microwave-topology:mw-link-channel-separation": "28000",
"ietf-microwave-topology:mw-link-nominal-bandwidth": "1000",
"ietf-microwave-topology:mw-link-current-bandwidth": "1000",
"ietf-microwave-topology:mw-link-unreserved-bandwidth": "400",
"ietf-microwave-topology:mw-link-availability":{
"availability":"99.99",
"mw-link-bandwidth": "1000"
}
}
] ]
} "ietf-te-topology:link/te/te-link-attributes": [
] {
"mw-channels":
{
"ietf-microwave-topology:mw-channel-id": "1",
"ietf-microwave-topology:mw-channel-frequency": 10728000,
"ietf-microwave-topology:mw-channel-separation": "28000",
"ietf-microwave-topology:mw-channel-nominal-bandwidth":
"1000",
"ietf-microwave-topology:mw-channel-current-bandwidth":
"1000",
"ietf-microwave-topology:mw-channel-availability":{
"availability":"99.99",
"channel-bandwidth": "1000"
}
}
"ietf-te-topology:node/te/tunnel-termination-point/"
+"local-link-connectivities":{
"te-node-tunnel-termination-point-llc-list":[
{
"link-tp-ref": LTP1
}
{ {
"link-tp-ref": LTP2 "ietf-microwave-topology:mw-channel-id": "2",
} "ietf-microwave-topology:mw-channel-frequency": 10756000,
] "ietf-microwave-topology:mw-channel-separation": "28000",
} "ietf-microwave-topology:mw-channel-nominal-bandwidth":
"1000",
"ietf-microwave-topology:mw-channel-current-bandwidth":
"1000",
"ietf-microwave-topology:mw-channel-availability":{
"availability":"99.99",
"channel-bandwidth": "1000"
}
}
}
]
"ietf-te-topology:node/te/interface-switching-capability
/max-lsp-bandwidth/te-bandwidth/technology":{
"mw-bandwidth":"2000"
}
Note that the example above just shows the microwave component links, Note that the example above just shows the microwave component links,
it doesn't show the full microwave topology. it doesn't show the full microwave topology.
Appendix B. Contributors Appendix B. Contributors
Italo Busi Italo Busi
Huawei Technologies Huawei Technologies
Email: italo.busi@huawei.com Email: italo.busi@huawei.com
 End of changes. 70 change blocks. 
354 lines changed or deleted 805 lines changed or added

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