Skip to content
Merged

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,237 @@
module ietf-bmp-telemetry-message {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-bmp-telemetry-message";
prefix bmp-tm;

import ietf-telemetry-message {
prefix tm;
reference
"I-D.ietf-nmop-message-broker-telemetry-message: Extensible
YANG Model for Network Telemetry Messages";
}
import ietf-bmp {
prefix bmp;
reference
"I-D.ietf-grow-bmp-yang: A YANG Data Model for BMP";
}
import ietf-inet-types {
prefix inet;
reference "RFC 6991: Common YANG Data Types";
}
import ietf-yang-types {
prefix yang;
reference "RFC 6991: Common YANG Data Types";
}
import ietf-routing-types {
prefix rt-types;
reference "RFC 8294: Common YANG Data Types for the Routing
Area";
}
import ietf-yang-structure-ext {
prefix sx;
reference "RFC 8791: YANG Data Structure Extensions";
}

organization "IETF NMOP Working Group (proposed)";
contact
"Author: Saumya Dikshit
<mailto:saumya.dikshit@hpe.com>
Author: Mukul Srivastava
<mailto:mukul.srivastava@hpe.com>
Author: Changwang Lin
<mailto:linchangwang@h3c.com>";
description
"This module augments the 'ietf-telemetry-message' envelope
defined in I-D.ietf-nmop-message-broker-telemetry-message
with provenance metadata specific to data collected via the
BGP Monitoring Protocol (BMP), RFC 7854.

Copyright (c) 2026 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).";

revision 2026-07-25 {
description
"Initial revision.";
reference
"RFC XXXX";
}

identity bmp {
base tm:session-protocol;
description
"BGP Monitoring Protocol (BMP) as defined in RFC 7854.";
reference
"RFC 7854: BGP Monitoring Protocol (BMP).";
}

identity bmp-message-type {
description
"Base identity for BMP message types, RFC 7854 Section 4.";
}
identity route-monitoring {
base bmp-message-type;
description "Route Monitoring message.";
}
identity statistics-report {
base bmp-message-type;
description "Statistics Report message.";
}
identity peer-down {
base bmp-message-type;
description "Peer Down Notification.";
}
identity peer-up {
base bmp-message-type;
description "Peer Up Notification.";
}
identity initiation {
base bmp-message-type;
description "Initiation Message.";
}
identity termination {
base bmp-message-type;
description "Termination Message.";
}
identity route-mirroring {
base bmp-message-type;
description "Route Mirroring Message.";
}

identity bmp-stat-extension {
description
"Base identity for BMP Statistics Report Stat Type
registries/extensions.";
}
identity base-rfc7854 {
base bmp-stat-extension;
description "Base Stat Types defined in RFC 7854 Section 4.8.";
}
identity rfc9972-bgp-rib-stats {
base bmp-stat-extension;
description "Per-AFI/SAFI BGP RIB statistics, RFC 9972.";
}
identity informational-tlv {
base bmp-stat-extension;
description
"Min/max/avg/median informational TLV extension,
I-D.ietf-grow-bmp-stats-informational-tlv.";
}
identity afi-safi-evpn {
base bmp-stat-extension;
description
"Per-EVI EVPN BMP RIB statistics,
I-D.saum-grow-bmp-afi-safi-evpn.";
}
identity route-change-stats {
base bmp-stat-extension;
description
"Per-peer route-attribute-change statistics,
I-D.smc-grow-bmp-route-change-stats.";
}
identity rd-scoped-rib-stats {
base bmp-stat-extension;
description
"Address-family-agnostic RD-scoped statistics container,
I-D.dikshit-grow-bmp-rd-scoped-rib-stats.";
}

sx:augment-structure "/tm:message/tm:telemetry-message-metadata" {
description
"Augments telemetry-message-metadata with BMP-specific
provenance metadata.";
container bmp-session {
when "../session-protocol = 'bmp-tm:bmp'";
description
"BMP-specific provenance for this telemetry message.";
leaf monitoring-station-id {
type string;
description
"Identifier of the BMP monitoring station configuration
(RFC 7854 Section 3.1; see also the 'monitoring-station'
list in I-D.ietf-grow-bmp-yang) under which this message
was collected.";
}
leaf message-type {
type identityref {
base bmp-message-type;
}
mandatory true;
description
"BMP message type of the payload carried in this
telemetry message.";
reference "RFC 7854 Section 4.";
}
container peer-header {
description
"Fields from the BMP Per-Peer Header, RFC 7854
Section 4.2, relevant to routing/filtering telemetry
messages without payload inspection.";
leaf peer-type {
type identityref {
base bmp:peer-type;
}
description "BMP peer type.";
}
leaf peer-distinguisher {
type rt-types:route-distinguisher;
description
"Route Distinguisher, present when the peer type
indicates an L3VPN peer.";
}
leaf peer-address {
type inet:ip-address;
description "BMP peer IP address.";
}
leaf peer-as {
type inet:as-number;
description "BMP peer Autonomous System number.";
}
leaf peer-bgp-id {
type yang:dotted-quad;
description "BMP peer BGP Identifier.";
}
}
container route-monitoring-scope {
description
"Scope of a Route Monitoring or Statistics Report
message, mirroring the network-instance / RIB-type /
address-family hierarchy of I-D.ietf-grow-bmp-yang.";
leaf network-instance {
type string;
description "Network instance name.";
}
leaf rib-type {
type identityref {
base bmp:afi-safi-type;
}
description
"Address family of the RIB this message concerns.";
}
leaf route-distinguisher {
type rt-types:route-distinguisher;
description
"Route Distinguisher, when this message is scoped to
a specific VRF/EVI/MVPN instance (see
I-D.saum-grow-bmp-afi-safi-evpn and
I-D.dikshit-grow-bmp-rd-scoped-rib-stats).";
}
}
leaf stat-extension {
type identityref {
base bmp-stat-extension;
}
description
"For Statistics Report messages, identifies which Stat
Type registry/extension the payload's Stat Data belongs
to, without requiring payload inspection.";
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,6 @@ module ietf-fgotn-topology {
reference
"RFC YYYY: A YANG Data Model for Layer 1 Types";
}
import ietf-fgotn-types {
prefix fgotn-types;
reference
"RFC XXXX: YANG Data Models for fine grain Optical Transport
Network";
}

/* Note: The RFC Editor will replace YYYY with the number assigned
to the RFC once draft-ietf-ccamp-layer1-types becomes an RFC.*/
Expand Down Expand Up @@ -85,7 +79,7 @@ module ietf-fgotn-topology {
// RFC Ed.: update the date below with the date of RFC publication
// and remove this note.

revision 2026-02-27 {
revision 2026-07-23 {
description
"initial version";
reference
Expand All @@ -110,81 +104,13 @@ module ietf-fgotn-topology {
of Evolving G.709 Optical Transport Networks";
}

augment "/nw:networks/nw:network/nt:link/tet:te"
+ "/tet:te-link-attributes/tet:max-link-bandwidth"
+ "/tet:te-bandwidth/otnt:otn-bandwidth/otnt:odulist" {
description
"specific augmentation of fgOTN link on maximum link
bandwidth";
leaf fgotn-bandwidth {
when 'derived-from-or-self(../otnt:odu-type,'
+ '"fgotn-types:fgODUflex")' {
description
"Applicable when odu-type is fgODUflex.";
}
type uint16;
units "megabits per second";
description
"It is used to indicate how much of the bandwidth has been
allocated for the usage of fgOTN.";
}
}

augment "/nw:networks/nw:network/nt:link/tet:te"
+ "/tet:te-link-attributes/tet:unreserved-bandwidth"
+ "/tet:te-bandwidth/otnt:otn-bandwidth/otnt:odulist" {
description
"specific augmentation of fgOTN link on unreserved link
bandwidth";
leaf fgotn-bandwidth {
when 'derived-from-or-self(../otnt:odu-type,'
+ '"fgotn-types:fgODUflex")' {
description
"Applicable when odu-type is fgODUflex.";
}
type uint16;
units "megabits per second";
description
"The unreserved bandwidth of fgOTN before the server ODUk
is set up";
}
}

augment "/nw:networks/nw:network/nt:link/tet:te"
+ "/tet:te-link-attributes/tet:unreserved-bandwidth"
+ "/tet:te-bandwidth/otnt:otn-bandwidth" {
description
"specific augmentation of fgOTN link on unreserved link
bandwidth";
list fgotnlist {
key "odu-type odu-ts-number";
description
"This structure is used to describe the unsreserved
bandwidth of fgOTN in the server ODUk";
leaf odu-type {
type identityref {
base l1-types:odu-type;
}
description
"The granularity of server ODUk";
}
leaf odu-ts-number {
type fgotnt:ts-list;
description
"The index of server ODUk channel";
}
leaf fgotn-bandwidth {
type uint16;
units "megabits per second";
description
"The unreserved bandwidth of fgOTN in this server ODUk";
}
}
}

augment "/nw:networks/nw:network/nt:link/tet:te"
+ "/tet:te-link-attributes/tet:label-restrictions"
+ "/tet:label-restriction" {
when "./otnt:otn-label-range/otnt:range-type = 'trib-slot'" {
description
"Valid only when range-type represented by trib-slot.";
}
description
"specific augmentation of fgOTN label";
list fgts-range {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ contact
<mailto:pauljeong@skku.edu>";

description
"This module is a YANG module for Analytics Interface.
"This module is a YANG module for I2NSF Analytics Interface.

The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL',
'SHALL NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED',
Expand All @@ -50,7 +50,7 @@ description
(RFC 2119) (RFC 8174) when, and only when, they appear
in all capitals, as shown here.

Copyright (c) 2025 IETF Trust and the persons identified as
Copyright (c) 2026 IETF Trust and the persons identified as
authors of the code. All rights reserved.

Redistribution and use in source and binary forms, with or
Expand All @@ -66,10 +66,11 @@ description

// RFC Ed.: replace XXXX with an actual RFC number and remove
// this note.
revision "2025-10-20" {
revision "2026-08-04" {
description "Initial revision.";
reference
"RFC XXXX: I2NSF Analytics Interface YANG Data Model";
"RFC XXXX: A YANG Data Model for Analytics Interface in
Interface to Network Security Functions (I2NSF)";

// RFC Ed.: replace XXXX with an actual RFC number and remove
// this note.
Expand Down
Loading
Loading