// vi: set smarttab et sw=4 tabstop=4: module odl-pcep-stateful-stats { yang-version 1; namespace "urn:opendaylight:params:xml:ns:yang:pcep:stateful:stats"; prefix pspc; import network-topology { prefix nt; revision-date 2013-10-21; } import network-topology-pcep { prefix pn; revision-date 2022-07-30; } import yang-ext { prefix ext; revision-date 2013-07-09; } import network-pcep-topology-stats { prefix npts; revision-date 2018-11-09; } import odl-pcep-sync-optimizations { prefix opso; revision-date 2020-07-20; } import pcep-topology-stats-rpc { prefix ptsr; revision-date 2019-03-21; } description "This module contains the PCEP Stateful stats YANG definitions for PCEP Topology Node Stats. Copyright (c)2017 AT&T Services, Inc. All rights reserved.; This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html"; organization "AT&T Services, Inc."; contact "Claudio D. Gasparini "; revision "2018-11-09" { description "P2MP extension."; reference "RFC8306"; } revision "2017-11-13" { description "Initial revision."; } grouping stateful-messages-grouping { description "The statistics of sent/received PCEP stateful messages."; leaf last-received-rpt-msg-timestamp { description "The timestamp of last received PCRpt message."; type uint32; default 0; } leaf received-rpt-msg-count { description "The number of received PcRpt messages."; type uint32; default 0; } leaf sent-upd-msg-count { description "The number of sent PCUpd messages."; type uint32; default 0; } leaf sent-init-msg-count { description "The number of sent PCInitiate messages."; type uint32; default 0; } } augment "/nt:network-topology/nt:topology/nt:node/npts:pcep-session-state/npts:messages" { when "../../../nt:topology-types/pn:topology-pcep"; ext:augment-identifier stateful-messages-stats-aug; description "Augment Pcep topology node with Stateful session stats"; uses stateful-messages-grouping; } augment "/ptsr:get-stats/ptsr:output/ptsr:topology/ptsr:node/ptsr:pcep-session-state/ptsr:messages" { ext:augment-identifier stateful-messages-rpc-aug; description "Augment Pcep session stats RPC output with Stateful session stats"; uses stateful-messages-grouping; } grouping stateful-preferences { leaf instantiation { description "Represents peer's instantiation capability."; type boolean; default "false"; } leaf stateful { description "Represents peer's stateful/stateless capability."; type boolean; default "false"; } leaf active { description "Represents peer's LSP update capability."; type boolean; default "false"; } } augment "/nt:network-topology/nt:topology/nt:node/npts:pcep-session-state/npts:peer-capabilities" { when "../../../nt:topology-types/pn:topology-pcep"; ext:augment-identifier stateful-capabilities-stats-aug; description "Remote peer's (PCC) advertised stateful capabilities."; uses stateful-preferences; } augment "/ptsr:get-stats/ptsr:output/ptsr:topology/ptsr:node/ptsr:pcep-session-state/ptsr:peer-capabilities" { ext:augment-identifier stateful-capabilities-rpc-aug; description "Augment Pcep session stats RPC output with Remote peer's (PCC) advertised stateful capabilities."; uses stateful-preferences; } augment "/nt:network-topology/nt:topology/nt:node/npts:pcep-session-state/npts:local-pref" { when "../../../nt:topology-types/pn:topology-pcep"; ext:augment-identifier pcep-entity-id-stats-aug; description "PCEP Entity Identifier"; uses opso:speaker-entity-id; } augment "/ptsr:get-stats/ptsr:output/ptsr:topology/ptsr:node/ptsr:pcep-session-state/ptsr:local-pref" { ext:augment-identifier pcep-entity-id-rpc-aug; description "Augment Pcep session stats RPC output with PCEP Entity Identifier"; uses opso:speaker-entity-id; } }