module ietf-microwave-topology {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-microwave-topology";
prefix mwt;
import ietf-network {
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";
}
import ietf-te-topology {
prefix tet;
reference
"RFC 8795: YANG Data Model for Traffic Engineering
(TE) Topologies";
}
import ietf-microwave-types {
prefix mw-types;
reference
"RFC 8561: A YANG Data Model for Microwave Radio Link";
}
organization
"Internet Engineering Task Force (IETF) CCAMP WG";
contact
"WG Web:
WG List:
Editor: Jonas Ahlberg
Editor: Scott Mansfield
Editor: Min Ye
Editor: Italo Busi
Editor: Xi Li
Editor: Daniela Spreafico
";
description
"This is a module for microwave topology.
Copyright (c) 2024 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 Revised BSD License
set forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents
(https://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC 9656; see
the RFC itself for full legal notices.";
revision 2024-09-30 {
description
"Initial revision.";
reference
"RFC 9656: A YANG Data Model for Microwave Topology";
}
grouping rlt-mode {
description
"This grouping provides a flexible definition of the number
of bonded carriers and protecting carriers of a radio
link.";
leaf num-bonded-carriers {
type uint32;
mandatory true;
description
"Number of bonded carriers.";
}
leaf num-protecting-carriers {
type uint32;
mandatory true;
description
"Number of protecting carriers.";
}
}
grouping microwave-radio-link-attributes {
description
"Grouping used for attributes describing a microwave
radio link.";
container rlt-mode {
description
"This grouping provides a flexible definition of the number
of bonded carriers and protecting carriers of a radio
link.";
uses rlt-mode;
}
}
grouping microwave-carrier-attributes {
description
"Grouping used for attributes describing a microwave
carrier.";
leaf tx-frequency {
type uint32;
units "kHz";
description
"Selected transmitter frequency.
Related to the data node tx-frequency in RFC 8561.";
reference
"RFC 8561: A YANG Data Model for Microwave Radio Link";
}
leaf actual-rx-frequency {
type uint32;
units "kHz";
config false;
description
"Computed receiver frequency.
Related to the data node actual-rx-frequency in RFC 8561.";
reference
"RFC 8561: A YANG Data Model for Microwave Radio Link";
}
leaf channel-separation {
type uint32;
units "kHz";
description
"The amount of bandwidth allocated to a carrier. The
distance between adjacent channels in a radio
frequency channel arrangement.
Related to the data node channel-separation in RFC 8561.";
reference
"ETSI EN 302 217-1 and
RFC 8561: A YANG Data Model for Microwave Radio Link";
}
leaf actual-tx-cm {
type identityref {
base mw-types:coding-modulation;
}
config false;
description
"Actual coding/modulation in transmitting direction.
Related to the data node actual-tx-cm in RFC 8561.";
reference
"RFC 8561: A YANG Data Model for Microwave Radio Link";
}
leaf actual-snir {
type decimal64 {
fraction-digits 1;
}
units "dB";
config false;
description
"Actual signal-to-noise plus the interference ratio
(0.1 dB resolution).
Related to the data node actual-snir in RFC 8561.";
reference
"RFC 8561: A YANG Data Model for Microwave Radio Link";
}
leaf actual-transmitted-level {
type decimal64 {
fraction-digits 1;
}
units "dBm";
config false;
description
"Actual transmitted power level (0.1 dBm resolution).
Related to the data node actual-transmitted-level
in RFC 8561.";
reference
"ETSI EN 301 129 and
RFC 8561: A YANG Data Model for Microwave Radio Link";
}
}
grouping microwave-bandwidth {
description
"Grouping used for microwave bandwidth.";
leaf mw-bandwidth {
type uint64;
units "bits/seconds";
config false;
description
"Nominal microwave radio link and carrier bandwidth.";
}
}
augment "/nw:networks/nw:network/nw:network-types/"
+ "tet:te-topology" {
description
"Augment network types to define a microwave network
topology type.";
container mw-topology {
presence "Indicates a topology type of microwave.";
description
"Microwave topology type";
}
}
augment "/nw:networks/nw:network/nw:node/tet:te"
+ "/tet:te-node-attributes" {
when '../../../nw:network-types'
+ '/tet:te-topology/mwt:mw-topology' {
description
"Augmentation parameters apply only to networks with a
microwave network topology type.";
}
description
"Augment network node to indicate a microwave node.";
container mw-node {
presence "Indicates a microwave node.";
description
"Microwave node";
}
}
augment "/nw:networks/nw:network/nw:node/nt:termination-point/"
+ "tet:te" {
when '../../../nw:network-types/tet:te-topology/'
+ 'mwt:mw-topology' {
description
"Augmentation parameters apply only for networks with a
microwave network topology type.";
}
description
"Augmentation to add microwave-technology-specific
characteristics to a termination point.";
container mw-tp {
presence "Denotes a microwave termination point.";
description
"Specification of type of termination point.";
choice mw-tp-option {
description
"Selection of type of termination point.";
case microwave-rltp {
container microwave-rltp {
presence
"Denotes a microwave radio link termination point.
It corresponds to a microwave RLT interface as
defined in RFC 8561.";
description
"Denotes and describes a microwave radio link
termination point.";
reference
"RFC 8561: A YANG Data Model for Microwave Radio Link";
}
}
case microwave-ctp {
container microwave-ctp {
presence "Denotes a microwave carrier termination point.
It corresponds to a microwave CT interface as
defined in RFC 8561.";
description
"Denotes and describes a microwave carrier
termination point.";
reference
"RFC 8561: A YANG Data Model for Microwave Radio Link";
}
}
}
}
}
augment "/nw:networks/nw:network/nt:link/tet:te/"
+ "tet:te-link-attributes" {
when '../../../nw:network-types/tet:te-topology/'
+ 'mwt:mw-topology' {
description
"Augmentation parameters apply only for networks with a
microwave network topology type.";
}
description
"Augmentation to add microwave-technology-specific
characteristics to a link.";
container mw-link {
presence "This indicates a microwave link";
description
"Specification of type of link.";
choice mw-link-option {
mandatory true;
description
"Selection of type of link.";
case microwave-radio-link {
container microwave-radio-link {
presence "Denotes a microwave radio link";
description
"Denotes and describes a microwave radio link.";
uses microwave-radio-link-attributes;
}
}
case microwave-carrier {
container microwave-carrier {
presence "Denotes a microwave carrier";
description
"Denotes and describes a microwave carrier.";
uses microwave-carrier-attributes;
}
}
}
}
}
augment "/nw:networks/nw:network/nt:link/tet:te/"
+ "tet:te-link-attributes/"
+ "tet:max-link-bandwidth/"
+ "tet:te-bandwidth" {
when '../../../../../nw:network-types/tet:te-topology/'
+ 'mwt:mw-topology' {
description
"Augmentation parameters apply only for networks with a
microwave network topology type.";
}
description
"Augmentation for TE bandwidth.";
uses microwave-bandwidth;
}
}