module msea-soam-pm { | |
namespace "http://www.microsemi.com/microsemi-edge-assure/msea-soam-pm"; | |
prefix "msea-soam-pm"; //MicroSemi EdgeAssure (msea) | |
import ietf-yang-types { | |
prefix yang; | |
revision-date 2013-07-15; | |
} | |
import msea-cfm { | |
prefix msea-cfm; | |
} | |
import msea-types { | |
prefix msea; | |
} | |
organization | |
"Microsemi Inc., FTD Division"; | |
contact | |
"Web URL: http://www.microsemi.com/ | |
E-mail: info@microsemi.com | |
Postal: Microsemi Corporation Corporate Headquarters | |
One Enterprise Aliso Viejo, | |
CA 92656 | |
U.S.A. | |
Phone: +1 949 380 6100 | |
Fax: +1 949 215-4996"; | |
description | |
"This YANG module is a fork of the original mef-soam-pm YANG Module defined in MEF 39 | |
for the management of Ethernet Services Operations, Administration and | |
Maintenance for Performance Monitoring and extends the Connectivity Fault | |
Management (CFM) YANG modules. | |
This fork is done specifically to suit the EdgeAssure which has some extra | |
constraints that are not handled by the original YANG. | |
Copyright 2016 Microsemi Inc. | |
All rights reserved."; | |
revision "2016-02-29" { | |
description | |
"Initial EdgeAssure version forked from mef-soam-pm@2012-04-16 - Sean Condon, Microsemi"; | |
reference | |
"Service OAM Fault Management YANG Modules (MEF 39), April 2012"; | |
} | |
// | |
// Type definitions related to MEF SOAM PM | |
// | |
typedef suspect-status-type { | |
type boolean; | |
description | |
"This boolean data type indicates whether the measurement interval | |
has been marked as suspect. | |
The object is set to false at the start of a measurement | |
interval. It is set to true when there is a discontinuity in the | |
performance measurements during the measurement interval. | |
Conditions for a discontinuity include, but are not limited to | |
the following: | |
1 - The local time-of-day clock is adjusted by at least 10 | |
seconds | |
2 - The conducting of a performance measurement is halted before | |
the current measurement interval is completed | |
3 - A local test, failure, or reconfiguration that disrupts | |
service"; | |
reference | |
"[MEF SOAM PM IA] R39, R40, 41 and R42"; | |
} | |
typedef performance-monitoring-interval-type { | |
type uint32 { | |
range "3..3600000"; | |
} | |
units ms; | |
description | |
"This integer data type indicates the transmission time between the | |
SOAM PM frames for session, in ms."; | |
} | |
typedef session-status-type { | |
type enumeration { | |
enum active { | |
description | |
"Indicates the measurement instance is active."; | |
} | |
enum not-active { | |
description | |
"Indicates the measurement instance is not active."; | |
} | |
} | |
description | |
"This enumeration data type defines the status of PM session of a MEP."; | |
reference | |
"MEF-SOAM-TC-MIB.MefSoamTcStatusType"; | |
} | |
typedef measurement-bin-type { | |
type enumeration { | |
enum two-way-frame-delay { | |
description | |
"Indicates a measurement bin for two-way Frame Delay."; | |
} | |
enum two-way-inter-frame-delay-variation { | |
description | |
"Indicates a measurement bin for two-way Inter-frame Delay | |
Variation."; | |
} | |
} | |
description | |
"This enumeration data type indicates whether the bin number is for Frame | |
Delay and Inter-Frame Delay Variation."; | |
reference | |
"MEF-SOAM-TC-MIB.MefSoamTcDelayMeasurementBinType"; | |
} | |
// | |
// Groupings related to MEF SOAM PM | |
// | |
grouping remote-mep-group { | |
description | |
"This grouping includes objects which identify a remote MEP."; | |
choice remote-mep { | |
mandatory true; | |
description | |
"The remote MEP can be identified by either a MAC address or a MEP ID"; | |
case mac-address { | |
leaf mac-address { | |
type yang:mac-address; | |
// msea:not-changeable; | |
description | |
"The Target MAC Address Field to be transmitted: A unicast | |
destination MAC address. | |
This object is only valid for the entity transmitting the | |
SOAM Loss and Delay Measurement frames and is ignored by | |
the entity receiving SOAM Loss and Delay Measurement | |
frames."; | |
} | |
} | |
case mep-id { | |
leaf mep-id { | |
type leafref { | |
path "/msea-cfm:mef-cfm/msea-cfm:maintenance-domain/msea-cfm:maintenance-association/msea-cfm:remote-meps"; | |
} | |
// msea:not-changeable; | |
description | |
"The Maintenance Association End Point Identifier of another MEP in | |
the same Maintenance Association to which the SOAM Loss or Delay | |
Measurement frame is to be sent. | |
This object is only valid for the entity transmitting the | |
SOAM Loss Measurement or Delay Measurement frames and is | |
ignored by the entity receiving SOAM Loss Measurement or | |
Delay Measurement frames."; | |
} | |
} | |
} | |
} | |
grouping measurement-timing-group { | |
description | |
"This grouping includes objects used for proactive and on-demand | |
scheduling of PM measurement sessions."; | |
container start-time { | |
description | |
"This container defines the session start time"; | |
choice start-time { | |
default immediate; | |
description | |
"Measurement session start time can be immediate, relative or | |
absolute."; | |
container immediate { | |
presence "Start the measurement session immediately."; | |
description | |
"This object specifies the start time to be immediately at the time | |
of session creation."; | |
} | |
} | |
} | |
container stop-time { | |
description | |
"This container defines the session stop time"; | |
choice stop-time { | |
default none; | |
description | |
"Measurement session stop time can be none, relative or | |
absolute."; | |
container none { | |
presence "Never end the measurement session."; | |
description | |
"This object specifies the measurement session to never end."; | |
} | |
} | |
} | |
} | |
grouping loss-measurement-stats-group { | |
description | |
"This grouping includes statistics objects for a SOAM Loss Measurement | |
session."; | |
leaf suspect-status { | |
type suspect-status-type; | |
description | |
"Whether the Measurement Interval has been marked as suspect. | |
The object is set to false at the start of a measurement | |
interval. It is set to true when there is a discontinuity in | |
the performance measurements during the Measurement Interval. | |
Conditions for a discontinuity include, but are not limited to | |
the following: | |
1 - The local time-of-day clock is adjusted by at least 10 seconds | |
2 - The conducting of a performance measurement is halted before the | |
current Measurement Interval is completed | |
3 - A local test, failure, or reconfiguration that disrupts service"; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCurrentStatsSuspect"; | |
} | |
leaf forward-transmitted-frames { | |
type yang:gauge32; | |
mandatory true; | |
description | |
"This object contains the number of frames transmitted in the forward | |
direction by this MEP. | |
For a PM Session of types lmm or ccm this includes Ethernet | |
Service Frames and SOAM PDUs that are in a higher MEG level | |
only. | |
For a PM Session of type slm this includes the count of SOAM | |
ETH-SLM frames only."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCurrentStatsForwardTransmittedFrames"; | |
} | |
leaf forward-received-frames { | |
type yang:gauge32; | |
mandatory true; | |
description | |
"This object contains the number of frames received in the forward | |
direction by this MEP. | |
For a PM Session of types lmm or ccm this includes Ethernet | |
Service Frames and SOAM PDUs that are in a higher MEG level only. | |
For a PM Session of type slm this includes the count of SOAM | |
ETH-SLM frames only."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCurrentStatsForwardReceivedFrames"; | |
} | |
leaf forward-average-frame-loss-ratio { | |
type uint32 { | |
range "0..100000"; | |
} | |
units milli-percent; | |
description | |
"This object contains the average one-way frame loss ratio in the | |
forward direction calculated by this MEP for this Measurement | |
Interval. The FLR value is a ratio that is expressed as a | |
percent with a value of 0 (ratio 0.00) through 100000 (ratio | |
1.00). | |
Units are in milli-percent, where 1 indicates 0.001 percent."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCurrentStatsForwardAvgFlr"; | |
} | |
leaf backward-transmitted-frames { | |
type yang:gauge32; | |
mandatory true; | |
description | |
"This object contains the number of frames transmitted in the backward | |
direction by this MEP. | |
For a PM Session of type lmm or ccm this includes Ethernet | |
Service Frames and SOAM PDUs that are in a higher MEG level | |
only. | |
For a PM Session of type slm this includes the count of SOAM | |
ETH-SLM frames only."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCurrentStatsBackwardTransmittedFrames"; | |
} | |
leaf backward-received-frames { | |
type yang:gauge32; | |
mandatory true; | |
description | |
"This object contains the number of frames received in the backward | |
direction by this MEP. | |
For a PM Session of type lmm this includes Ethernet Service | |
Frames and SOAM PDUs that are in a higher MEG level only. | |
For a PM Session of type slm this includes the count of SOAM | |
ETH-SLM frames only."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCurrentStatsBackwardReceivedFrames"; | |
} | |
leaf backward-average-frame-loss-ratio { | |
type uint32 { | |
range "0..100000"; | |
} | |
units milli-percent; | |
description | |
"This object contains the average one-way frame loss ratio in the | |
backward direction calculated by this MEP for this Measurement | |
Interval. The FLR value is a ratio that is expressed as a | |
percent with a value of 0 (ratio 0.00) through 100000 (ratio | |
1.00). | |
Units are in milli-percent, where 1 indicates 0.001 percent."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCurrentStatsBackwardAvgFlr"; | |
} | |
leaf soam-pdus-sent { | |
type yang:gauge32; | |
description | |
"This object contains the count of the number of SOAM PDUs sent during | |
this Measurement Interval. | |
This object applies when type is lmm, slm or ccm. It indicates | |
the number of LMM, CCM, or SLM SOAM frames transmitted."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCurrentStatsSoamPdusSent"; | |
} | |
leaf soam-pdus-received { | |
type yang:gauge32; | |
description | |
"This object contains the count of the number of SOAM PDUs PDUs received | |
in this Measurement Interval. | |
This object applies when type is lmm, slm, or ccm. This object | |
indicates the number of LMR, CCM, or SLR SOAM frames received."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCurrentStatsSoamPdusReceived"; | |
} | |
} | |
grouping delay-measurement-stats-group { | |
description | |
"This grouping includes statistics objects for a SOAM Delay Measurement | |
session."; | |
leaf suspect-status { | |
type suspect-status-type; | |
description | |
"Whether the Measurement Interval has been marked as suspect. | |
The object is to be set to false at the start of a measurement | |
interval. It is set to true when there is a discontinuity in | |
the performance measurements during the Measurement Interval. | |
Conditions for a discontinuity include, but are not limited to | |
the following: | |
1 - The local time-of-day clock is adjusted by at least 10 seconds | |
2 - The conducting of a performance measurement is halted before the | |
current Measurement Interval is completed | |
3 - A local test, failure, or reconfiguration that disrupts service"; | |
} | |
leaf frame-delay-two-way-min { | |
type yang:gauge32; | |
units "μs"; | |
description | |
"This object contains the minimum two-way frame delay calculated by this | |
MEP for this Measurement Interval. | |
This object is undefined if measurement-type is dm1-transmitted | |
or dm1-received."; | |
} | |
leaf frame-delay-two-way-max { | |
type yang:gauge32; | |
units "μs"; | |
description | |
"This object contains the maximum two-way frame delay calculated by this | |
MEP for this Measurement Interval. | |
This object is undefined if measurement-type is dm1DmTx or | |
dm1-received."; | |
} | |
leaf frame-delay-two-way-average { | |
type yang:gauge32; | |
units "μs"; | |
description | |
"This object contains the average two-way frame delay calculated by this | |
MEP for this Measurement Interval. | |
This object is undefined if measurement-type is dm1-transmitted or | |
dm1-received."; | |
} | |
leaf inter-frame-delay-variation-two-way-min { | |
type yang:gauge32; | |
units "μs"; | |
description | |
"This object contains the minimum two-way inter-frame delay interval | |
calculated by this MEP for this Measurement Interval. | |
The value of this object is undefined when measurement-type is | |
dm1-transmitted or dm1-received."; | |
} | |
leaf inter-frame-delay-variation-two-way-max { | |
type yang:gauge32; | |
units "μs"; | |
description | |
"This object contains the maximum two-way inter-frame delay interval | |
calculated by this MEP for this Measurement Interval. | |
The value of this object is undefined when measurement-type is | |
dm1-transmitted or dm1-received."; | |
} | |
leaf inter-frame-delay-variation-two-way-average { | |
type yang:gauge32; | |
units "μs"; | |
description | |
"This object contains the average two-way inter-frame delay interval | |
calculated by this MEP for this Measurement Interval. | |
The value of this object is undefined when measurement-type is | |
dm1-transmitted or dm1-received."; | |
} | |
leaf soam-pdus-received { | |
type yang:gauge32; | |
description | |
"This object contains the count of the number of SOAM PDUs received in | |
this Measurement Interval. | |
This object indicates the number of DMR and 1DM SOAM frames | |
received. This object applies when measurement-type is dmm or | |
dm1-received and is undefined if measurement-type is | |
dm1-transmitted."; | |
} | |
} | |
grouping delay-measurement-bins-content-group { | |
description | |
"This grouping contains result measurement bin objects for a SOAM Delay | |
Measurement session."; | |
leaf type { | |
type measurement-bin-type; | |
description | |
"This object specifies whether the bin number is for Frame Delay and | |
Inter-Frame Delay Variation."; | |
} | |
leaf number { | |
type uint8 { | |
range "1..4"; | |
} | |
description | |
"This object specifies the bin number for the configured boundary. The | |
first bin has bin number 1."; | |
} | |
leaf lower-bound { | |
type yang:gauge32; | |
units "μs"; | |
description | |
"This object specifies the lower boundary for a measurement bin. The | |
upper boundary is defined by the next bin value or infinite for | |
the last bin defined. The measurement boundary for each | |
measurement bin is to be larger than the measurement boundary | |
of the preceding measurement bin. By default, the next bin is | |
set to 5000us larger than the lower bin boundary. | |
The values in a bin boundary object represents the time range | |
used to segregate delay data into the appropriate statistical | |
data bin. For five bins with default values, each bin has the | |
following time range: | |
bin 1 = 0, range is 0us | |
bin 2 = 5000, range is 5,000us | |
bin 3 = 10000, range is 10,000us | |
bin 4 = 15000, range is 15,000us | |
bin 5 = 20000, range is 20,000us | |
The first bin boundary (number set to 1) always contains the | |
value of 0. Attempting to write a non-zero value to this bin | |
will result in an error."; | |
} | |
leaf counter { | |
type yang:gauge32; | |
config false; | |
description | |
"This object contains the count of the number of completed measurements | |
initiated in this Measurement Interval whose value falls within | |
the range specified for this bin (that is, greater than or | |
equal to the measurement boundary for the bin, and (unless the | |
bin is the last bin) less than the measurement boundary for the | |
following bin."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamDmCurrentStatsBinsCounter"; | |
} | |
} | |
grouping delay-measurement-bins-group { | |
description | |
"This grouping contains the top-level structure for the three types of | |
measurements (frame delay and inter frame delay variation)"; | |
container bins { | |
description | |
"This container defines the bins content for FD, IFDR, and FDR | |
sessions."; | |
list frame-delay { | |
key "type number"; | |
uses delay-measurement-bins-content-group; | |
description | |
"Data definitions related to frame delay bins content."; | |
} | |
list inter-frame-delay-variation { | |
key "type number"; | |
uses delay-measurement-bins-content-group; | |
description | |
"Data definitions related to inter frame delay bins content."; | |
} | |
} | |
} | |
grouping bin-lower-limit-override-attribs { | |
description | |
"Bin 1 of each type will always be 0. | |
The upper limit of each bin will be defined by the lower | |
limit of the next bin. The upper limit of the last bin | |
is unbounded."; | |
leaf bin2-lower-limit { | |
type uint32 { | |
range "10..max"; | |
} | |
units "μs"; | |
must "current() < ../bin3-lower-limit" { | |
error-message "Bin 2 must be between 0 and bin 3 lower limit"; | |
error-app-tag "msea-soampm-must-01"; | |
} | |
description "The lower limit of the bin 2 in microseconds"; | |
} | |
leaf bin3-lower-limit { | |
type uint32 { | |
range "10..max"; | |
} | |
units "μs"; | |
must "current() > ../bin2-lower-limit and current() < ../bin4-lower-limit" { | |
error-message "Bin 3 must be between bin 2 and bin 4 lower limits"; | |
error-app-tag "msea-soampm-must-02"; | |
} | |
description "The lower limit of the bin 3 in microseconds"; | |
} | |
leaf bin4-lower-limit { | |
type uint32 { | |
range "10..max"; | |
} | |
units "μs"; | |
must "current() > ../bin3-lower-limit" { | |
error-message "Bin 4 must be greater than 3 lower limit"; | |
error-app-tag "msea-soampm-must-03"; | |
} | |
description "The lower limit of the bin 4 in microseconds"; | |
} | |
} | |
// | |
// Augments into CFM related to MEF SOAM PM | |
// | |
augment "/msea-cfm:mef-cfm/msea-cfm:pm-global" { | |
description "High level attributes that apply to the whole device generally | |
or that apply equally across all instances of a child entity. | |
Delay measurement services should be stopped before changing | |
these values, including the limit overrides"; | |
leaf dm-bins-per-fd-interval { | |
type uint16 { | |
range "4"; | |
} | |
default 4; | |
description | |
"This object specifies the number of measurement bins per Measurement | |
Interval for Frame Delay measurements. | |
Fixed at 4."; | |
} | |
leaf dm-bins-per-ifdv-interval { | |
type uint16 { | |
range "4"; | |
} | |
default 4; | |
description | |
"This object specifies the number of measurement bins per Measurement | |
Interval for Inter-Frame Delay Variation measurements. | |
Fixed at 4."; | |
} | |
container bin-lower-limit-override-two-way-frame-delay { | |
uses bin-lower-limit-override-attribs { | |
refine bin2-lower-limit { | |
default 10000; | |
} | |
refine bin3-lower-limit { | |
default 20000; | |
} | |
refine bin4-lower-limit { | |
default 37000; | |
} | |
} | |
description "Override of the default Measurement Bin default | |
lower limits for Two Way Frame Delay."; | |
} | |
container bin-lower-limit-override-two-way-ifdv { | |
uses bin-lower-limit-override-attribs { | |
refine bin2-lower-limit { | |
default 3000; | |
} | |
refine bin3-lower-limit { | |
default 8000; | |
} | |
refine bin4-lower-limit { | |
default 100000; | |
} | |
} | |
description "Override of the default Measurement Bin default | |
lower limits for Two Way Interframe Delay Variation."; | |
} | |
} | |
augment "/msea-cfm:mef-cfm/msea-cfm:maintenance-domain/msea-cfm:maintenance-association" + | |
"/msea-cfm:maintenance-association-end-point" { | |
description | |
"This set of data definitions extends the MEG End Point (as described | |
Y.1731) or Maintenance End Point (as described in 802.1q) defined | |
in the MEF CFM module (MEF-CFM), specifically with regards to | |
Loss Measurement and Delay Measurement."; | |
container loss-measurements { | |
description | |
"This container contains a collection of data definitions related to | |
Loss Measurements."; | |
list loss-measurement { | |
key lm-id; | |
max-elements 16; | |
description | |
"A list of Loss Measurement PM Sessions where each instance is uniquely | |
identified by an id attribute. | |
This grouping includes configuration objects for the Frame Loss | |
Measurement function defined in [Y.1731] and [MEF SOAM PM IA]."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCfgTable, [Y.1731] and [MEF SOAM PM IA]"; | |
leaf lm-id { | |
type uint8 { | |
range 1..16; | |
} | |
description | |
"This object uniquely identifies a scheduled loss measurement."; | |
} | |
must "count(/msea-cfm:mef-cfm/msea-cfm:maintenance-domain/msea-cfm:maintenance-association/msea-cfm:maintenance-association-end-point/msea-soam-pm:loss-measurement) <= 128" { | |
error-message "The maximum number of LMs on the whole device must not exceed 128"; | |
error-app-tag "msea-soampm-must-04"; | |
} | |
uses remote-mep-group; | |
uses measurement-timing-group; | |
leaf administrative-state { | |
type boolean; | |
default false; | |
description | |
"The administrative state of the MEP. Setting to true starts this Loss Measurement"; | |
} | |
leaf measurement-type { | |
type enumeration { | |
enum slm { | |
description | |
"SLM SOAM PDU generated and received SLR responses tracked."; | |
} | |
} | |
default slm; | |
description | |
"This object specifies what type of Loss Measurement will be | |
performed."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCfgType"; | |
} | |
leaf version { | |
type enumeration { | |
enum Y.1731-2008 { | |
description | |
"Indicates the PDU formats defined in Y.1731-2008"; | |
} | |
} | |
default Y.1731-2008; | |
description | |
"This object indicates the version of the PDUs used to perform Loss | |
Measurement. | |
The exact PDUs to use are specified by this object in | |
combination with measurement-type."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCfgVersion"; | |
} | |
leaf enabled-counters { | |
type bits { | |
bit forward-transmitted-frames {description "Count the number of frames transmitted in the forward direction by this MEP";} | |
bit forward-received-frames {description "Count the number of frames received in the forward direction by this MEP";} | |
bit forward-average-flr {description "Calculate the average one-way frame loss ratio in the forward direction calculated by this MEP";} | |
bit backward-transmitted-frames {description "Count the number of frames transmitted in the backward direction by this MEP";} | |
bit backward-received-frames {description "Count the number of frames received in the backward direction by this MEP";} | |
bit backward-average-flr {description "Calculate the average one-way frame loss ratio in the backward direction calculated by this MEP";} | |
bit soam-pdus-sent {description "Count of the number of SOAM PDUs sent during this Measurement Interval";} | |
bit soam-pdus-received {description "Count of the number of SOAM PDUs received during this Measurement Interval";} | |
bit measured-stats-forward-measured-flr {description "Measure the Frame Loss Ratio in the forward direction calculated by this MEP from the last received SOAM PDU";} | |
bit measured-stats-backward-measured-flr {description "Measure the Frame Loss Ratio in the backward direction calculated by this MEP from the last received SOAM PDU";} | |
} | |
default ""; | |
// msea:not-changeable; | |
description | |
"A vector of bits that indicates the type of SOAM LM counters found in | |
the current-stats and history-stats that are enabled. | |
A present bit enables the specific SOAM LM counter. A not present | |
bit disables the SOAM LM counter. | |
If a particular SOAM LM counter is not supported the BIT value | |
is not present. | |
Not all SOAM LM counters are supported for all SOAM LM types. "; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCfgMeasurementEnable"; | |
} | |
leaf message-period { | |
type enumeration { | |
enum 1000ms { | |
description "The default 1000ms message period for LM"; | |
} | |
enum 100ms { | |
description "100ms message period for LM"; | |
} | |
enum 10ms { | |
description "10ms message period for LM"; | |
} | |
enum 3ms { | |
description "3ms message period for LM"; | |
} | |
} | |
default 1000ms; | |
// msea:not-changeable; | |
description | |
"This object specifies the interval between Loss Measurement OAM message | |
transmission. For Loss Measurement monitoring applications the | |
default value is 1 sec. | |
This object is not applicable if measurement-type is set to | |
'ccm' and is ignored for that Loss Measurement Type."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCfgMessagePeriod"; | |
} | |
leaf priority { | |
type msea:priority-type; | |
mandatory true; | |
// msea:not-changeable; | |
must "count(/msea-cfm:mef-cfm/msea-cfm:maintenance-domain[msea-cfm:id = current()/../../../../../msea-cfm:id]/msea-cfm:maintenance-association[msea-cfm:id = current()/../../../../msea-cfm:id]/msea-cfm:maintenance-association-end-point[msea-cfm:mep-identifier=current()/../../../msea-cfm:mep-identifier]/msea-soam-pm:loss-measurements/msea-soam-pm:loss-measurement[msea-soam-pm:priority=current()]) <= 1" { | |
error-message "The priority of a Loss Measurement must be unique within its MEP"; | |
error-app-tag "msea-soampm-must-05"; | |
} | |
description | |
"This object specifies the priority of frames with Performance | |
Monitoring OAM message information."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCfgPriority"; | |
} | |
leaf frame-size { | |
type uint32 { | |
range "64 .. 9600"; | |
} | |
units bytes; | |
default 64; | |
// msea:not-changeable; | |
description | |
"This object specifies the Loss Measurement frame size between 64 bytes | |
and the maximum transmission unit of the EVC. | |
The range of frame sizes from 64 through 2000 octets need to be | |
supported, and the range of frame sizes from 2001 through 9600 | |
octets is suggested be supported. | |
The adjustment to the frame size of the standard frame size is | |
accomplished by the addition of a Data or Test TLV. A Data or | |
Test TLV is only added to the frame if the frame size is greater | |
than 64 bytes."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCfgFrameSize"; | |
} | |
leaf measurement-interval { | |
type uint32 { | |
range "1..525600"; | |
} | |
units minutes; | |
default 15; | |
// msea:not-changeable; | |
description | |
"This object specifies the Measurement Interval for FLR statistics, in | |
minutes. | |
A Measurement Interval of 15 minutes needs to be supported, | |
other intervals may be supported."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCfgMeasurementInterval"; | |
} | |
leaf number-intervals-stored { | |
type uint32 { | |
range "32"; | |
} | |
default 32; | |
description | |
"This object specifies the number of completed measurement intervals to | |
store in the history statistic table. | |
At least 32 completed measurement intervals are to be | |
stored."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCfgNumIntervalsStored"; | |
} | |
leaf number-intervals-returned { | |
type uint32 { | |
range "2..32"; | |
} | |
default 32; | |
description | |
"This object specifies the number of completed measurement intervals to | |
return from the history statistic table. | |
The number stored on the device is fixed at 32"; | |
} | |
leaf session-status { | |
type session-status-type; | |
config false; | |
description | |
"This object indicates the current status of the LM session. A value | |
of 'active' indicates the current LM session is active, | |
i.e. the current time lies between the start time and the | |
stop time, and enabled is true. A value of 'not-active' | |
indicates the current LM session is not active, i.e. it has | |
not started yet, has stopped upon reaching the stop time, | |
or is disabled."; | |
} | |
leaf measured-forward-flr { | |
type yang:gauge32 { | |
range "0..100000"; | |
} | |
units milli-percent; | |
config false; | |
description | |
"This object contains the Frame Loss Ratio in the forward direction | |
calculated by this MEP from the last received SOAM PDU. The | |
FLR value is a ratio that is expressed as a percent with a | |
value of 0 (ratio 0.00) through 100000 (ratio 1.00). | |
Units are in milli-percent, where 1 indicates 0.001 | |
per-cent."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmMeasuredStatsForwardFlr"; | |
} | |
leaf measured-backward-flr { | |
type yang:gauge32 { | |
range "0..100000"; | |
} | |
units milli-percent; | |
config false; | |
description | |
"This object contains the Frame Loss Ratio in the backward direction | |
calculated by this MEP from the last received SOAM PDU. The | |
FLR value is a ratio that is expressed as a percent with a | |
value of 0 (ratio 0.00) through 100000 (ratio 1.00). | |
Units are in milli-percent, where 1 indicates 0.001 | |
percent."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmMeasuredStatsBackwardFlr"; | |
} | |
container current-measurement-stats { | |
config false; | |
description | |
"This container contains the results for the current Measurement | |
Interval in a SOAM Loss Measurement session gathered during | |
the interval indicated by measurement-interval."; | |
leaf id { | |
type uint32; | |
description | |
"The index for the current Measurement Interval for this PM | |
session. This value will become the value for id of the | |
history-measurement-stats list once the Measurement | |
Interval is completed."; | |
} | |
leaf start-time { | |
type yang:date-and-time; | |
mandatory true; | |
description | |
"The time that the current Measurement Interval started."; | |
} | |
leaf elapsed-time { | |
type uint32 { | |
range "0..2147483647"; | |
} | |
units "0.01s"; | |
mandatory true; | |
description | |
"The time that the current Measurement Interval has been running, | |
in 0.01 seconds."; | |
} | |
uses loss-measurement-stats-group; | |
} | |
list history-measurement-stats { | |
key id; | |
config false; | |
description | |
"This list contains the results for history Measurement | |
Intervals in a SOAM Loss Measurement session."; | |
leaf id { | |
type uint32; | |
description | |
"The index for the Measurement Interval within this | |
PM session."; | |
} | |
leaf end-time { | |
type yang:date-and-time; | |
mandatory true; | |
description | |
"The time that the Measurement Interval ended."; | |
} | |
leaf elapsed-time { | |
type uint32 { | |
range "0..2147483647"; | |
} | |
mandatory true; | |
description | |
"The length of time that the Measurement Interval ran for, | |
in 0.01 seconds."; | |
} | |
uses loss-measurement-stats-group; | |
} | |
} | |
} | |
container delay-measurements { | |
description | |
"This container contains a collection of data definitions related to | |
Delay Measurements. The measurements are persisted as config data | |
with results being retrieved from the device as needed"; | |
list delay-measurement { | |
key dm-id; | |
max-elements 16; | |
description | |
"A list of Delay Measurements where each instance is | |
uniquely identified by an id attribute. | |
This includes configuration objects for the Delay Measurement | |
function defined in [Y.1731] and [MEF SOAM PM IA]."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamDmCfgTable, [Y.1731], and [MEF SOAM PM IA]."; | |
leaf dm-id { | |
type uint8 { | |
range 1..16; | |
} | |
description | |
"This object uniquely identifies a scheduled delay measurement."; | |
} | |
must "count(/msea-cfm:mef-cfm/msea-cfm:maintenance-domain/msea-cfm:maintenance-association/msea-cfm:maintenance-association-end-point/msea-soam-pm:delay-measurement) <= 128" { | |
error-message "The maximum number of DMs on the whole device must not exceed 128"; | |
error-app-tag "msea-soampm-must-06"; | |
} | |
uses remote-mep-group; | |
uses measurement-timing-group; | |
leaf administrative-state { | |
type boolean; | |
default false; | |
description | |
"The administrative state of the MEP. Setting to true starts this Delay Measurement"; | |
} | |
leaf measurement-type { | |
type enumeration { | |
enum dmm { | |
description | |
"DMM SOAM PDU generated, DMR responses received (one-way or two-way | |
measurements)."; | |
} | |
} | |
default dmm; | |
description | |
"This object indicates what type of Delay Measurement is to be | |
performed. | |
The exact PDUs to use are specified by this object in | |
combination with version."; | |
} | |
leaf version { | |
type enumeration { | |
enum Y.1731-2011 { | |
description | |
"Indicates the PDU formats defined in Y.1731-2011."; | |
} | |
} | |
default Y.1731-2011; | |
description | |
"This object indicates the version of the PDUs used to perform Delay | |
Measurement. | |
The exact PDUs to use are specified by this object in | |
combination with measurement-type."; | |
reference | |
"[Y.1731]"; | |
} | |
leaf measurement-enable { | |
type bits { | |
bit soam-pdus-received {description "Count of the number of SOAM PDUs received";} | |
bit frame-delay-two-way-bins {description "Capture the two-way frame delay in bins";} | |
bit frame-delay-two-way-min {description "Capture the minimum two-way frame delay";} | |
bit frame-delay-two-way-max {description "Capture the maximum two-way frame delay";} | |
bit frame-delay-two-way-average {description "Calculate the average two-way frame delay";} | |
bit inter-frame-delay-variation-two-way-bins {description "Capture the two-way inter-frame-delay-variation in bins";} | |
bit inter-frame-delay-variation-two-way-min {description "Capture the minimum inter-frame-delay-variation frame delay";} | |
bit inter-frame-delay-variation-two-way-max {description "Capture the maximum inter-frame-delay-variation frame delay";} | |
bit inter-frame-delay-variation-two-way-average {description "Calculate the average inter-frame-delay-variation frame delay";} | |
} | |
default ""; | |
// msea:not-changeable; | |
description | |
"A vector of bits that indicates the type of SOAM DM counters that | |
are enabled. | |
A present bit enables the specific SOAM DM counter. | |
A not present bit disables the SOAM DM counter. | |
If a particular SOAM DM counter is not supported the BIT value | |
is not present. | |
Not all SOAM DM counters are supported for all SOAM DM types."; | |
} | |
leaf message-period { | |
type enumeration { | |
enum 1000ms { | |
description "1000ms message period for DM"; | |
} | |
enum 100ms { | |
description "100ms message period for DM"; | |
} | |
enum 10ms { | |
description "10ms message period for DM"; | |
} | |
enum 3ms { | |
description "3ms message period for DM"; | |
} | |
} | |
default 100ms; | |
// msea:not-changeable; | |
description | |
"This object specifies the interval between Delay Measurement OAM | |
message transmission. For Delay Measurement monitoring applications, | |
the default value is 100ms."; | |
} | |
leaf priority { | |
type msea:priority-type; | |
mandatory true; | |
// msea:not-changeable; | |
description | |
"This object specifies the priority of frames with Performance | |
Monitoring OAM message information."; | |
} | |
leaf frame-size { | |
type uint32 { | |
range "64 .. 9600"; | |
} | |
default 64; | |
// msea:not-changeable; | |
description | |
"This object specifies the Delay Measurement frame size between 64 bytes | |
and the maximum transmission unit of the EVC. | |
The range of frame sizes from 64 through 2000 octets need to be | |
supported, and the range of frame sizes from 2001 through 9600 | |
octets is suggested to be supported. | |
The adjustment to the frame size of the standard frame size is | |
accomplished by the addition of a Data or Test TLV. A Data or | |
Test TLV is only added to the frame if the frame size is | |
greater than 64 bytes."; | |
} | |
leaf measurement-interval { | |
type uint32 { | |
range "1..1440"; | |
} | |
units minutes; | |
default 15; | |
// msea:not-changeable; | |
description | |
"This object specifies a Measurement Interval in minutes. | |
A Measurement Interval 15 minutes needs to be supported, other | |
intervals may be supported."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamDmCfgMeasurementInterval"; | |
} | |
leaf number-intervals-stored { | |
type uint32 { | |
range "32"; | |
} | |
default 32; | |
description | |
"This object specifies the number of completed measurement intervals to | |
store in the history statistic table. | |
At least 32 completed measurement intervals are to be | |
stored."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamLmCfgNumIntervalsStored"; | |
} | |
leaf number-intervals-returned { | |
type uint32 { | |
range "2..32"; | |
} | |
default 32; | |
description | |
"This object specifies the number of completed measurement intervals to | |
return from the history statistic table. | |
The number of intervals stored is fixed at 32 on the device"; | |
} | |
leaf session-status { | |
type session-status-type; | |
config false; | |
description | |
"This object indicates the current status of the DM session. A value | |
of 'active' indicates the current DM session is active, | |
i.e. the current time lies between the start time and the | |
stop time, and enabled is true. A value of 'not-active' | |
indicates the current DM session is not active, i.e. it has | |
not started yet, has stopped upon reaching the stop time, | |
or is disabled."; | |
} | |
leaf frame-delay-two-way { | |
type yang:gauge32; | |
units microseconds; | |
config false; | |
description | |
"This object contains the two-way frame delay calculated by this MEP | |
from the last received SOAM PDU. | |
This object is undefined is measurement-type is | |
dm1-transmitted or dm1-received."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamDmMeasuredStatsFrameDelayTwoWay"; | |
} | |
leaf inter-frame-delay-variation-two-way { | |
type yang:gauge32; | |
units microseconds; | |
config false; | |
description | |
"This object contains the last two-way inter-frame delay interval | |
calculated by this MEP. | |
The value of this object is undefined when measurement-type | |
is dm1-transmitted or dm1-received."; | |
reference | |
"MEF-SOAM-PM-MIB.mefSoamDmMeasuredStatsIfdvTwoWay"; | |
} | |
container current-stats { | |
config false; | |
description | |
"This container contains the results for the current Measurement | |
Interval in a SOAM Delay Measurement session gathered | |
during the interval indicated by measurement-interval."; | |
leaf id { | |
type uint32; | |
description | |
"The index for the current Measurement Interval for this PM | |
session. This value will become the value for id of the | |
history-measurement-stats list once the Measurement | |
Interval is completed."; | |
} | |
leaf start-time { | |
type yang:date-and-time; | |
mandatory true; | |
description | |
"The time that the current Measurement Interval started."; | |
} | |
leaf elapsed-time { | |
type uint32 { | |
range "0..2147483647"; | |
} | |
mandatory true; | |
description | |
"The time that the current Measurement Interval has been running, | |
in 0.01 seconds."; | |
} | |
uses delay-measurement-stats-group; | |
uses delay-measurement-bins-group; | |
} | |
list history-stats { | |
key id; | |
config false; | |
description | |
"This list contains the results for history Measurement Intervals in | |
a SOAM Delay Measurement session."; | |
leaf id { | |
type uint32; | |
description | |
"The identifier for the Measurement Interval within this | |
PM session."; | |
} | |
leaf end-time { | |
type yang:date-and-time; | |
mandatory true; | |
description | |
"The time that the Measurement Interval ended."; | |
} | |
leaf elapsed-time { | |
type uint32 { | |
range "0..2147483647"; | |
} | |
mandatory true; | |
description | |
"The length of time that the Measurement Interval ran for, in 0.01 | |
seconds."; | |
} | |
uses delay-measurement-stats-group; | |
uses delay-measurement-bins-group; | |
} | |
} | |
} | |
} | |
// | |
// RPCs related to MEF SOAM PM | |
// | |
rpc clear-loss-history-stats { | |
description | |
"Clear the Loss Measurement history list (history-availability-stats and | |
history-measurement-stats) for a specific session. All instance | |
data is deleted."; | |
input { | |
uses msea-cfm:maintenance-association-end-point-reference { | |
refine maintenance-domain { | |
mandatory true; | |
} | |
refine maintenance-association { | |
mandatory true; | |
} | |
refine maintenance-association-end-point { | |
mandatory true; | |
} | |
} | |
leaf lm-id { | |
type leafref { | |
path "/msea-cfm:mef-cfm/msea-cfm:maintenance-domain/msea-cfm:maintenance-association/msea-cfm:maintenance-association-end-point/msea-soam-pm:loss-measurements/msea-soam-pm:loss-measurement/msea-soam-pm:lm-id"; | |
} | |
mandatory true; | |
description | |
"The LM ID of the loss measurement session of which the loss | |
measurement history should be cleared"; | |
} | |
} | |
} | |
rpc clear-delay-history-stats { | |
description | |
"Clear the Delay Measurement history list (history-stats) for a specific | |
session. All instance data is deleted."; | |
input { | |
uses msea-cfm:maintenance-association-end-point-reference { //Added to specify the MEP SC 10-Dec-15 | |
refine maintenance-domain { | |
mandatory true; | |
} | |
refine maintenance-association { | |
mandatory true; | |
} | |
refine maintenance-association-end-point { | |
mandatory true; | |
} | |
} | |
leaf dm-id { | |
type leafref { | |
path "/msea-cfm:mef-cfm/msea-cfm:maintenance-domain/msea-cfm:maintenance-association/msea-cfm:maintenance-association-end-point/msea-soam-pm:delay-measurements/msea-soam-pm:delay-measurement/msea-soam-pm:dm-id"; | |
} | |
mandatory true; | |
description | |
"The DM ID of the loss measurement session of which the loss | |
measurement history should be cleared"; | |
} | |
} | |
} | |
// | |
// Notifications related to MEF SOAM PM | |
// | |
} | |