You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1238 lines
38 KiB
1238 lines
38 KiB
1 year ago
|
module ieee802-dot1cb-frer {
|
||
|
yang-version "1.1";
|
||
|
namespace urn:ieee:std:802.1Q:yang:ieee802-dot1cb-frer;
|
||
|
prefix dot1cb-frer;
|
||
|
import ieee802-dot1cb-stream-identification {
|
||
|
prefix dot1cb-sid;
|
||
|
}
|
||
|
import ieee802-dot1cb-stream-identification-types {
|
||
|
prefix dot1cb-sid-types;
|
||
|
}
|
||
|
import ieee802-dot1cb-frer-types {
|
||
|
prefix dot1cb-frer-types;
|
||
|
}
|
||
|
import ieee802-dot1q-types {
|
||
|
prefix dot1qtypes;
|
||
|
}
|
||
|
import ietf-interfaces {
|
||
|
prefix if;
|
||
|
}
|
||
|
organization
|
||
|
"Institute of Electrical and Electronics Engineers";
|
||
|
contact
|
||
|
"WG-URL: http://ieee802.org/1/
|
||
|
WG-EMail: stds-802-1-l@ieee.org
|
||
|
|
||
|
Contact: IEEE 802.1 Working Group Chair
|
||
|
Postal: C/O IEEE 802.1 Working Group
|
||
|
IEEE Standards Association
|
||
|
445 Hoes Lane
|
||
|
Piscataway, NJ 08854
|
||
|
USA
|
||
|
|
||
|
E-mail: stds-802-1-chairs@ieee.org";
|
||
|
description
|
||
|
"Management objects that control the frame replication and
|
||
|
elimination from IEEE Std 802.1CB-2017. This YANG data model conforms
|
||
|
to the Network Management Datastore Architecture defined in RFC 8342.
|
||
|
Copyright (C) IEEE (2021). This version of this YANG module is part
|
||
|
of IEEE Std 802.1CBcv; see the draft itself for full legal notices.";
|
||
|
revision 2021-05-06 {
|
||
|
description
|
||
|
"Published as part of IEEE Std 802.1CBcv-2021. Initial version.";
|
||
|
reference
|
||
|
"IEEE Std 802.1CBcv-2021, Frame Replication and Elimination for
|
||
|
Reliability - FRER YANG Data Model and Management Information Base
|
||
|
Module.";
|
||
|
}
|
||
|
feature auto-configuration {
|
||
|
description
|
||
|
"Autoconfiguration of entries in the tables for stream identity
|
||
|
table, sequence recovery table and sequence identification table.";
|
||
|
reference
|
||
|
"7.11 of IEEE Std 802.1CB-2017
|
||
|
10.7 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
typedef lan-path-id {
|
||
|
type int8;
|
||
|
description
|
||
|
"An integer specifying a path or LAN. If and only if a packet
|
||
|
matches an entry in the Sequence identification table that
|
||
|
specifies HSR or PRP in its frerSeqEncEncapsType object,
|
||
|
tsnStreamIdLanPathId specifies the LanId or PathId value that must
|
||
|
be matched for this tsnStreamIdEntry to apply. A value of –1
|
||
|
indicates that the LanId or PathId are to be ignored.";
|
||
|
reference
|
||
|
"10.22 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
typedef sequence-history-length {
|
||
|
type uint32 {
|
||
|
range "2..max";
|
||
|
}
|
||
|
description
|
||
|
"An integer specifying how many bits of the SequenceHistory
|
||
|
variable are to be used.";
|
||
|
reference
|
||
|
"7.4.3.2.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
grouping sequence-encode-decode {
|
||
|
description
|
||
|
"The sequence-encode-decode grouping indicates the type of
|
||
|
encapsulation used for this instance of the Sequence encode/decode
|
||
|
function.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
choice encapsulation {
|
||
|
description
|
||
|
"This choice indicates the type of encapsulation used for this
|
||
|
instance of the Sequence encode/decode function. The
|
||
|
encapsulation includes an Organizationally Unique Identifier
|
||
|
(OUI) or Company ID (CID) to identify the organization defining
|
||
|
the sequence encode/decode method.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
container r-tag {
|
||
|
presence "true";
|
||
|
description
|
||
|
"R-TAG";
|
||
|
reference
|
||
|
"7.8 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type dot1cb-frer-types:seq-encaps-method;
|
||
|
default "r-tag";
|
||
|
config false;
|
||
|
description
|
||
|
"The type number used for the R-TAG encode/decode method.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf oui-cid {
|
||
|
type string {
|
||
|
pattern "[0-9A-F]{2}(-[0-9A-F]{2}){2}";
|
||
|
}
|
||
|
default "00-80-C2";
|
||
|
config false;
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the encode/decode
|
||
|
method. For encode/decode methods defined in IEEE Std
|
||
|
802.1CB-2017 the OUI/CID is always 00-80-C2.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container hsr-sequence-tag {
|
||
|
presence "true";
|
||
|
description
|
||
|
"HSR sequence tag";
|
||
|
reference
|
||
|
"7.9 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type dot1cb-frer-types:seq-encaps-method;
|
||
|
default "hsr-seq-tag";
|
||
|
config false;
|
||
|
description
|
||
|
"The type number used for the HSR sequence tag encode/decode
|
||
|
method.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf oui-cid {
|
||
|
type string {
|
||
|
pattern "[0-9A-F]{2}(-[0-9A-F]{2}){2}";
|
||
|
}
|
||
|
default "00-80-C2";
|
||
|
config false;
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the encode/decode
|
||
|
method. For encode/decode methods defined in IEEE Std
|
||
|
802.1CB-2017 the OUI/CID is always 00-80-C2.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container prp-sequence-tag {
|
||
|
presence "true";
|
||
|
description
|
||
|
"PRP sequence trailer";
|
||
|
reference
|
||
|
"7.10 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type dot1cb-frer-types:seq-encaps-method;
|
||
|
default "prp-seq-trailer";
|
||
|
config false;
|
||
|
description
|
||
|
"The type number used for the PRP sequence trailer
|
||
|
encode/decode method.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf oui-cid {
|
||
|
type string {
|
||
|
pattern "[0-9A-F]{2}(-[0-9A-F]{2}){2}";
|
||
|
}
|
||
|
default "00-80-C2";
|
||
|
config false;
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the encode/decode
|
||
|
method. For encode/decode methods defined in IEEE Std
|
||
|
802.1CB-2017 the OUI/CID is always 00-80-C2.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container organization-specific {
|
||
|
presence "true";
|
||
|
description
|
||
|
"This container allows to select sequence encode/decode types
|
||
|
that are defined by entities outside of IEEE 802.1.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type int32 {
|
||
|
range "256..max";
|
||
|
}
|
||
|
description
|
||
|
"The type number used for an encode/decode method defined by
|
||
|
an entity owning the OUI or CID for this encapsulation type.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf oui-cid {
|
||
|
type string {
|
||
|
pattern "[0-9A-F]{2}(-[0-9A-F]{2}){2}";
|
||
|
}
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the encode/decode
|
||
|
method.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
grouping sequence-recovery-algorithm {
|
||
|
description
|
||
|
"The sequence-recovery-algorithm grouping specifies which sequence
|
||
|
recovery algorithm is to be used for this instance of the Sequence
|
||
|
recovery function.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
choice algorithm {
|
||
|
description
|
||
|
"This choice indicates the sequence recovery algorithm used for
|
||
|
this instance of the Sequence recovery function. It includes an
|
||
|
Organizationally Unique Identifier (OUI) or Company ID (CID) to
|
||
|
identify the organization defining the sequence recovery
|
||
|
algorithm.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
container vector {
|
||
|
presence "true";
|
||
|
description
|
||
|
"Vector Recovery Algorithm.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type dot1cb-frer-types:seq-rcvy-algorithm;
|
||
|
default "vector";
|
||
|
config false;
|
||
|
description
|
||
|
"The type number used for the VectorRecoveryAlgorithm.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf oui-cid {
|
||
|
type string {
|
||
|
pattern "[0-9A-F]{2}(-[0-9A-F]{2}){2}";
|
||
|
}
|
||
|
default "00-80-C2";
|
||
|
config false;
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the sequence
|
||
|
recovery algorithm. For sequence recovery algorithms defined
|
||
|
in IEEE Std 802.1CB-2017 the OUI/CID is always 00-80-C2.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container match {
|
||
|
presence "true";
|
||
|
description
|
||
|
"Match Recovery Algorithm.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type dot1cb-frer-types:seq-rcvy-algorithm;
|
||
|
default "match";
|
||
|
config false;
|
||
|
description
|
||
|
"The type number used for the MatchRecoveryAlgorithm.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf oui-cid {
|
||
|
type string {
|
||
|
pattern "[0-9A-F]{2}(-[0-9A-F]{2}){2}";
|
||
|
}
|
||
|
default "00-80-C2";
|
||
|
config false;
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the sequence
|
||
|
recovery algorithm. For sequence recovery algorithms defined
|
||
|
in IEEE Std 802.1CB-2017 the OUI/CID is always 00-80-C2.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container organization-specific {
|
||
|
presence "true";
|
||
|
description
|
||
|
"This container allows to select sequence recovery algorithms
|
||
|
that are defined by entities outside of IEEE 802.1.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type int32 {
|
||
|
range "256..max";
|
||
|
}
|
||
|
description
|
||
|
"The type number used for a sequence recovery algorithm
|
||
|
defined by an entity owning the OUI or CID for this algorithm
|
||
|
type.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf oui-cid {
|
||
|
type string {
|
||
|
pattern "[0-9A-F]{2}(-[0-9A-F]{2}){2}";
|
||
|
}
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the sequence
|
||
|
recovery algorithm.";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
container frer {
|
||
|
description
|
||
|
"The managed objects that control Stream identification are
|
||
|
described in Clause 9 of IEEE Std 802.1CB-2017. The managed objects
|
||
|
that control FRER are described in Clause 10 of IEEE Std
|
||
|
802.1CB-2017as follows:
|
||
|
|
||
|
a) General requirements on the behavior of counters are in 10.1.
|
||
|
b) The various tables of managed objects that can manage, in
|
||
|
detail, each individual Stream, are described in five
|
||
|
subclauses, including:
|
||
|
1) Additions to the Stream identity table required for
|
||
|
Autoconfiguration.
|
||
|
2) The Sequence generation table that configures instances of
|
||
|
the Sequence generation function;
|
||
|
3) The Sequence recovery table that configures instances of the
|
||
|
Individual recovery function, the Sequence recovery function,
|
||
|
and the Latent error detection function;
|
||
|
4) The Sequence identification table that configures instances
|
||
|
of the Sequence encode/decode function; and
|
||
|
5) The Stream split table that configures instances of the
|
||
|
Stream splitting function.
|
||
|
c) The managed objects that support the automatic configuration,
|
||
|
upon receipt of a packet, of entries in the first four of the
|
||
|
preceding tables, are described in the subclause on
|
||
|
Autoconfiguration.
|
||
|
d) The per-port, per-Stream packet counters that are kept by FRER
|
||
|
functions for inspection by network management entities are
|
||
|
described in 10.8, and the per-port (totaled over all Streams)
|
||
|
counters in 10.9.
|
||
|
|
||
|
The managed objects in the subclauses under 9.1 make it possible to
|
||
|
configure more than one encapsulation for the same stream_handle
|
||
|
subparameter on the same port. Similarly, the managed objects in
|
||
|
the subclauses under 10.3 and 10.4 make it possible to configure
|
||
|
more than one Sequence encode/decode function or more than one
|
||
|
Sequence generation function for the same stream_handle
|
||
|
subparameter. [The same value of stream_handle can be in the
|
||
|
frerSeqGenStreamList of more than one frerSeqGenEntry or in the
|
||
|
frerSeqRcvyStreamList of more than one frerSeqRcvyEntry.] A system
|
||
|
shall return an error if an attempt is made to configure
|
||
|
conflicting requirements upon that system.";
|
||
|
reference
|
||
|
"Clause 10 of IEEE Std 802.1CB-2017";
|
||
|
list sequence-generation {
|
||
|
key "index";
|
||
|
description
|
||
|
"There is one Sequence generation table in a system, and one
|
||
|
entry in the Sequence generation table for each Sequence
|
||
|
generation function. Each frerSeqGenEntry lists the Streams and
|
||
|
direction for which a single instance of the Sequence generation
|
||
|
function is to be placed.";
|
||
|
reference
|
||
|
"10.3 of IEEE Std 802.1CB-2017";
|
||
|
leaf index {
|
||
|
type uint32;
|
||
|
description
|
||
|
"Clause 10 of IEEE Std 802.1CB-2017 states that the same stream
|
||
|
handle can be present multiple times in the sequence generation
|
||
|
table. Therefore this index leaf is being used to uniquely
|
||
|
identify an entry in the sequence generation table.";
|
||
|
}
|
||
|
leaf-list stream {
|
||
|
type leafref {
|
||
|
path '/dot1cb-sid:stream-identity/dot1cb-sid:handle';
|
||
|
}
|
||
|
min-elements 1;
|
||
|
description
|
||
|
"A list of stream_handle values, corresponding to the values of
|
||
|
the tsnStreamIdHandle objects in the Stream identity table, on
|
||
|
which this instance of the Sequence generation function is to
|
||
|
operate. The single instance of the Sequence generation
|
||
|
function created by this frerSeqGenEntry operates every packet
|
||
|
belonging to this Stream, regardless of the port on which it is
|
||
|
received.";
|
||
|
reference
|
||
|
"10.3.1.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf direction-out-facing {
|
||
|
type dot1cb-sid-types:direction;
|
||
|
description
|
||
|
"An object indicating whether the Sequence generation function
|
||
|
is to be placed on the out-facing (True) or in-facing (False)
|
||
|
side of the port.";
|
||
|
reference
|
||
|
"10.3.1.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf reset {
|
||
|
type boolean;
|
||
|
description
|
||
|
"A Boolean object indicating that the Sequence generation
|
||
|
function is to be reset by calling its corresponding
|
||
|
SequenceGenerationReset function. Writing the value True to
|
||
|
frerSeqGenReset triggers a reset; writing the value False has
|
||
|
no effect. When read, frerSeqGenReset always returns the value
|
||
|
False.";
|
||
|
reference
|
||
|
"10.3.1.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
list sequence-recovery {
|
||
|
key "index";
|
||
|
description
|
||
|
"There is one Sequence recovery table in a system, and one entry
|
||
|
in the Sequence recovery table for each Sequence recovery
|
||
|
function or Individual recovery function that can also be
|
||
|
present. The entry describes a set of managed objects for the
|
||
|
single instance of a Base recovery function and Latent error
|
||
|
detection function included in the Sequence recovery function or
|
||
|
Individual recovery function. Each frerSeqRcvyEntry lists the
|
||
|
Streams, ports, and direction for which instances of a Sequence
|
||
|
recovery function or Individual recovery function are to be
|
||
|
instantiated.";
|
||
|
reference
|
||
|
"10.4 of IEEE Std 802.1CB-2017";
|
||
|
leaf index {
|
||
|
type uint32;
|
||
|
description
|
||
|
"Clause 10 of IEEE Std 802.1CB-2017 states that the same stream
|
||
|
handle can be present multiple times in the sequence recovery
|
||
|
table. Therefore this index leaf is being used to uniquely
|
||
|
identify an entry in the sequence recovery table.";
|
||
|
}
|
||
|
leaf-list stream {
|
||
|
type leafref {
|
||
|
path '/dot1cb-sid:stream-identity/dot1cb-sid:handle';
|
||
|
}
|
||
|
min-elements 1;
|
||
|
description
|
||
|
"A list of the stream_handle values, corresponding to the
|
||
|
values of the tsnStreamIdHandle objects in the Stream identity
|
||
|
table, to which the system is to apply the instance of the
|
||
|
Sequence recovery function or Individual recovery function.";
|
||
|
reference
|
||
|
"10.4.1.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf-list port {
|
||
|
type if:interface-ref;
|
||
|
min-elements 1;
|
||
|
description
|
||
|
"The list of ports on each of which the system is to
|
||
|
instantiate the Sequence recovery function, or from which
|
||
|
received packets are to be fed to a single instance of the
|
||
|
Individual recovery function.";
|
||
|
reference
|
||
|
"10.4.1.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf direction-out-facing {
|
||
|
type dot1cb-sid-types:direction;
|
||
|
description
|
||
|
"An object indicating whether the Sequence recovery function or
|
||
|
Individual recovery function is to be placed on the out-facing
|
||
|
(True) or in-facing (False) side of the port.";
|
||
|
reference
|
||
|
"10.4.1.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf reset {
|
||
|
type boolean;
|
||
|
default "false";
|
||
|
description
|
||
|
"A Boolean object indicating that the Sequence recovery
|
||
|
function or Individual recovery function is to be reset by
|
||
|
calling its corresponding SequenceGenerationReset function.
|
||
|
Writing the value True to frerSeqRcvyReset triggers a reset;
|
||
|
writing the value False has no effect. When read,
|
||
|
frerSeqRcvyReset always returns the value False.";
|
||
|
reference
|
||
|
"10.4.1.4 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
container algorithm {
|
||
|
description
|
||
|
"This object is an enumerated value specifying which sequence
|
||
|
recovery algorithm is to be used for this instance of the
|
||
|
Sequence recovery function. The enumeration uses an OUI or CID
|
||
|
as shown in Table 10-1. The default value for
|
||
|
frerSeqRcvyAlgorithm is Vector_Alg (00-80-C2, 0).";
|
||
|
reference
|
||
|
"10.4.1.5 of IEEE Std 802.1CB-2017";
|
||
|
uses sequence-recovery-algorithm;
|
||
|
}
|
||
|
leaf history-length {
|
||
|
type sequence-history-length;
|
||
|
default "2";
|
||
|
description
|
||
|
"An integer specifying how many bits of the SequenceHistory
|
||
|
variable are to be used. The minimum and the default value is
|
||
|
2, maximum is the maximum allowed by the implementation. [Not
|
||
|
used if frerSeqRcvyAlgorithm = Match_Alg (00-80-C2, 1).]";
|
||
|
reference
|
||
|
"10.4.1.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf reset-timeout {
|
||
|
type uint32;
|
||
|
units "ms";
|
||
|
description
|
||
|
"An unsigned integer specifying the timeout period in
|
||
|
milliseconds for the RECOVERY_TIMEOUT event.";
|
||
|
reference
|
||
|
"10.4.1.7 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf invalid-sequence-value {
|
||
|
type uint32;
|
||
|
config false;
|
||
|
description
|
||
|
"A read-only unsigned integer value that cannot be encoded in a
|
||
|
packet as a value for the sequence_number subparameter, i.e.,
|
||
|
frerSeqRcvyInvalidSequenceValue is larger than or equal to
|
||
|
RecovSeqSpace.";
|
||
|
reference
|
||
|
"10.4.1.8 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf take-no-sequence {
|
||
|
type boolean;
|
||
|
default "false";
|
||
|
description
|
||
|
"A Boolean value specifying whether packets with no
|
||
|
sequence_number subparameter are to be accepted (True) or not
|
||
|
(False). Default value False.";
|
||
|
reference
|
||
|
"10.4.1.9 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf individual-recovery {
|
||
|
type boolean;
|
||
|
description
|
||
|
"A Boolean value specifying whether this entry describes a
|
||
|
Sequence recovery function or Individual recovery function.
|
||
|
a) True: The entry describes an Individual recovery function.
|
||
|
Packets discarded by the SequenceGenerationAlgorithm will
|
||
|
cause the variable RemainingTicks to be reset. There is no
|
||
|
Latent error detection function associated with this entry,
|
||
|
so frerSeqRcvyLatentErrorDetection cannot also be True.
|
||
|
b) False: The entry describes a Sequence recovery function.
|
||
|
Packets discarded by the SequenceGenerationAlgorithm will
|
||
|
not cause the variable RemainingTicks to be reset.";
|
||
|
reference
|
||
|
"10.4.1.10 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf latent-error-detection {
|
||
|
type boolean;
|
||
|
description
|
||
|
"A Boolean value indicating whether an instance of the Latent
|
||
|
error detection function is to be instantiated along with the
|
||
|
Base recovery function in this Sequence recovery function or
|
||
|
Individual recovery function. frerSeqRcvyLatentErrorDetection
|
||
|
cannot be set True if frerSeqRcvyIndividualRecovery is also
|
||
|
True; an Individual recovery function does not include a Latent
|
||
|
error detection function.";
|
||
|
reference
|
||
|
"10.4.1.11 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
container latent-error-detection-parameters {
|
||
|
description
|
||
|
"The objects in the following subclauses are present if and
|
||
|
only if frerSeqRcvyIndividualRecovery is False.";
|
||
|
reference
|
||
|
"10.4.1.12 of IEEE Std 802.1CB-2017";
|
||
|
leaf difference {
|
||
|
type int32;
|
||
|
description
|
||
|
"An integer specifying the maximum difference between
|
||
|
frerCpsSeqRcvyDiscardedPackets, and the product of
|
||
|
frerCpsSeqRcvyPassedPackets and (frerSeqRcvyLatentErrorPaths
|
||
|
– 1) that is allowed. Any larger difference will trigger the
|
||
|
detection of a latent error by the LatentErrorTest function.";
|
||
|
reference
|
||
|
"10.4.1.12.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf period {
|
||
|
type uint32;
|
||
|
units "ms";
|
||
|
default "2000";
|
||
|
description
|
||
|
"The integer number of milliseconds that are to elapse
|
||
|
between instances of running the LatentErrorTest function. An
|
||
|
implementation can have a minimum value for
|
||
|
frerSeqRcvyLatentErrorPeriod, below which it cannot be set,
|
||
|
but this minimum shall be no larger than 1000 ms (1 s).
|
||
|
Default value 2000 (2 s).";
|
||
|
reference
|
||
|
"10.4.1.12.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf paths {
|
||
|
type uint16;
|
||
|
description
|
||
|
"The integer number of paths over which FRER is operating for
|
||
|
this instance of the Base recovery function and Latent error
|
||
|
detection function.";
|
||
|
reference
|
||
|
"10.4.1.12.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf reset-period {
|
||
|
type uint32;
|
||
|
units "ms";
|
||
|
default "30000";
|
||
|
description
|
||
|
"The integer number of milliseconds that are to elapse
|
||
|
between instances of running the LatentErrorReset function.
|
||
|
An implementation can have a minimum value for
|
||
|
LatentErrorReset, below which it cannot be set, but this
|
||
|
minimum shall be no larger than 1000 ms (1 s). Default value
|
||
|
30000 (30 s).";
|
||
|
reference
|
||
|
"10.4.1.12.4 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
list sequence-identification {
|
||
|
key "port direction-out-facing";
|
||
|
description
|
||
|
"There is one Sequence identification table per system, and one
|
||
|
entry in the Sequence identification table for each port and
|
||
|
direction for which an instance of the Sequence encode/decode
|
||
|
function is to be created. Each entry in the Sequence
|
||
|
identification table specifies a port and direction on which an
|
||
|
instance of the Sequence encode/decode function is to be
|
||
|
instantiated for a list of Streams.";
|
||
|
reference
|
||
|
"10.5 of IEEE Std 802.1CB-2017";
|
||
|
leaf-list stream {
|
||
|
type leafref {
|
||
|
path '/dot1cb-sid:stream-identity/dot1cb-sid:handle';
|
||
|
}
|
||
|
min-elements 1;
|
||
|
description
|
||
|
"A list of stream_handles, corresponding to the values of the
|
||
|
tsnStreamIdHandle objects in the Stream identity table, for
|
||
|
which the system is to use the same encapsulation for the
|
||
|
Sequence encode/decode function.";
|
||
|
reference
|
||
|
"10.5.1.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf port {
|
||
|
type if:interface-ref;
|
||
|
description
|
||
|
"The port on which the system is to place an instance of the
|
||
|
Sequence encode/decode function.";
|
||
|
reference
|
||
|
"10.5.1.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf direction-out-facing {
|
||
|
type dot1cb-sid-types:direction;
|
||
|
description
|
||
|
"An object indicating whether the Sequence encode/decode
|
||
|
function is to be placed on the out-facing (True) or in-facing
|
||
|
(False) side of the port.";
|
||
|
reference
|
||
|
"10.5.1.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf active {
|
||
|
type boolean;
|
||
|
description
|
||
|
"A Boolean value specifying whether this frerSeqEncEntry is
|
||
|
passive (False), and therefore is used only to decode (extract
|
||
|
information from) input packets passing up the protocol stack,
|
||
|
or active (True), and therefore is used both for recognizing
|
||
|
input packets and for encoding output packets being passed down
|
||
|
the protocol stack.";
|
||
|
reference
|
||
|
"10.5.1.4 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
container encapsulation {
|
||
|
description
|
||
|
"An enumerated value indicating the type of encapsulation used
|
||
|
for this instance of the Sequence encode/decode function. The
|
||
|
type includes an OUI or CID.";
|
||
|
reference
|
||
|
"10.5.1.5 of IEEE Std 802.1CB-2017";
|
||
|
uses sequence-encode-decode;
|
||
|
}
|
||
|
leaf path-id-lan-id {
|
||
|
type lan-path-id;
|
||
|
description
|
||
|
"A 4-bit integer value to be placed in the PathId field of an
|
||
|
HSR sequence tag or the LanId field of a PRP sequence trailer
|
||
|
added to an output packet. This managed object is used only if:
|
||
|
a) The HSR sequence tag or the PRP sequence trailer is
|
||
|
selected by the frerSeqEncEncapsType object; and
|
||
|
b) frerSeqEncActive is False (passive)";
|
||
|
reference
|
||
|
"10.5.1.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
list stream-split {
|
||
|
key "port direction-out-facing";
|
||
|
description
|
||
|
"There is one Stream split table per system, with one
|
||
|
frerSplitEntry per Stream splitting function per set of
|
||
|
stream_handle values. Each entry in the Stream split table
|
||
|
specifies a port and direction on which an instance of the Stream
|
||
|
splitting function is to be instantiated, and the list of
|
||
|
stream_handles specifying its operation.";
|
||
|
reference
|
||
|
"10.6 of IEEE Std 802.1CB-2017";
|
||
|
leaf port {
|
||
|
type if:interface-ref;
|
||
|
description
|
||
|
"The port on which the system is to place an instance of the
|
||
|
Stream splitting function performing the stream_handle
|
||
|
translations specified by frerSplitInputIdList and
|
||
|
frerSplitOutputIdList is to be placed.";
|
||
|
reference
|
||
|
"10.6.1.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf direction-out-facing {
|
||
|
type dot1cb-sid-types:direction;
|
||
|
description
|
||
|
"An object indicating whether the instance of the Stream
|
||
|
splitting function performing the stream_handle translations
|
||
|
specified by frerSplitInputIdList and frerSplitOutputIdList is
|
||
|
to be placed on the out-facing (True) or in-facing (False) side
|
||
|
of the port.";
|
||
|
reference
|
||
|
"10.6.1.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf-list input-id {
|
||
|
type leafref {
|
||
|
path '/dot1cb-sid:stream-identity/dot1cb-sid:handle';
|
||
|
}
|
||
|
min-elements 1;
|
||
|
description
|
||
|
"A list of stream_handles (tsnStreamIdHandle values) that are
|
||
|
to be split.";
|
||
|
reference
|
||
|
"10.6.1.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf-list output-id {
|
||
|
type leafref {
|
||
|
path '/dot1cb-sid:stream-identity/dot1cb-sid:handle';
|
||
|
}
|
||
|
min-elements 1;
|
||
|
description
|
||
|
"A list of stream_handles (tsnStreamIdHandle values) into which
|
||
|
the input packet is to be split, one copy per item in the
|
||
|
frerSplitOutputIdList.";
|
||
|
reference
|
||
|
"10.6.1.4 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container autoconfiguration {
|
||
|
if-feature "auto-configuration";
|
||
|
description
|
||
|
"Container for autoconfiguration managed objects.";
|
||
|
reference
|
||
|
"10.7 of IEEE Std 802.1CB-2017";
|
||
|
list sequence {
|
||
|
key "index";
|
||
|
description
|
||
|
"There is one Sequence autoconfiguration table per system. It
|
||
|
contains any number of table entries. No two (or more) entries
|
||
|
in the Sequence autoconfiguration table can have the same
|
||
|
values for frerAutSeqSeqEncaps, frerAutSeqTagged, and
|
||
|
frerAutSeqVlan on any given port. Each frerAutSeqEntry objects
|
||
|
relates to a single class of Streams, and specifies how entries
|
||
|
are created (and destroyed) in the Stream identity table, the
|
||
|
Sequence recovery table, and the Sequence identification table.";
|
||
|
reference
|
||
|
"10.7.1 of IEEE Std 802.1CB-2017";
|
||
|
leaf index {
|
||
|
type uint32;
|
||
|
description
|
||
|
"Entry in the sequence list referencing to a single class of
|
||
|
streams.";
|
||
|
}
|
||
|
container sequence-encapsulation {
|
||
|
description
|
||
|
"An enumerated value, specifying which Sequence encode/decode
|
||
|
function, and therefore, which type sequence_number encoding,
|
||
|
is to be recognized for the purposes of Autoconfiguration.";
|
||
|
reference
|
||
|
"10.7.1.1.1 of IEEE Std 802.1CB-2017";
|
||
|
uses sequence-encode-decode;
|
||
|
}
|
||
|
leaf-list receive-port {
|
||
|
type if:interface-ref;
|
||
|
min-elements 1;
|
||
|
description
|
||
|
"The list of ports to which this frerAutSeqEntry applies, and
|
||
|
on which Stream identification functions, Sequence
|
||
|
encode/decode functions, and Individual recovery functions
|
||
|
are to be autocreated.";
|
||
|
reference
|
||
|
"10.7.1.1.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf tagged {
|
||
|
type enumeration {
|
||
|
enum tagged {
|
||
|
value 1;
|
||
|
description
|
||
|
"A frame must have a VLAN tag to be matched.";
|
||
|
}
|
||
|
enum priority {
|
||
|
value 2;
|
||
|
description
|
||
|
"A frame must be untagged, or have a VLAN tag with a VLAN
|
||
|
ID = 0 to be matched.";
|
||
|
}
|
||
|
enum all {
|
||
|
value 3;
|
||
|
description
|
||
|
"A frame is matched whether tagged or not.";
|
||
|
}
|
||
|
}
|
||
|
description
|
||
|
"An enumerated value indicating whether packets to be matched
|
||
|
by this frerAutSeqEntry are permitted to have a VLAN tag.";
|
||
|
reference
|
||
|
"10.7.1.1.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf-list vlan {
|
||
|
type dot1qtypes:vlanid;
|
||
|
description
|
||
|
"A list of vlan_identifiers for the packet to match. A null
|
||
|
list matches all vlan_identifiers.";
|
||
|
reference
|
||
|
"10.7.1.1.4 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf-list recovery-port {
|
||
|
type if:interface-ref;
|
||
|
min-elements 1;
|
||
|
description
|
||
|
"The list of ports on which Sequence recovery functions are
|
||
|
to be autocreated by this frerAutSeqEntry.";
|
||
|
reference
|
||
|
"10.7.1.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf destruction-interval {
|
||
|
type uint64;
|
||
|
units "ms";
|
||
|
default "86400000";
|
||
|
description
|
||
|
"An integer number of milliseconds after which an idle set of
|
||
|
functions created by this frerAutSeqEntry can be destroyed. A
|
||
|
value of 0 indicates that idle autoconfigured functions are
|
||
|
not to be destroyed. Default value is 86 400 000 decimal (one
|
||
|
day).";
|
||
|
reference
|
||
|
"10.7.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf reset-interval {
|
||
|
type uint64;
|
||
|
units "ms";
|
||
|
description
|
||
|
"The value used to fill frerSeqRcvyResetMSec when
|
||
|
autoconfiguring entries in the Sequence recovery table.";
|
||
|
reference
|
||
|
"10.7.1.1.7 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
container algorithm {
|
||
|
description
|
||
|
"The value used to fill frerSeqRcvyAlgorithm when
|
||
|
autoconfiguring entries in the Sequence recovery table.";
|
||
|
reference
|
||
|
"10.7.1.1.8 of IEEE Std 802.1CB-2017";
|
||
|
uses sequence-recovery-algorithm;
|
||
|
}
|
||
|
leaf history-length {
|
||
|
type sequence-history-length;
|
||
|
default "2";
|
||
|
description
|
||
|
"The value used to fill frerSeqRcvyHistoryLength when
|
||
|
autoconfiguring entries in the Sequence recovery table.";
|
||
|
reference
|
||
|
"10.7.1.1.9 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf create-individual {
|
||
|
type boolean;
|
||
|
description
|
||
|
"A Boolean value. If True, the receipt of a packet that
|
||
|
triggers the autoconfiguration of a new tsnStreamIdEntry also
|
||
|
triggers the instantiation of a frerSeqRcvyEntry for an
|
||
|
Individual recovery function.";
|
||
|
reference
|
||
|
"10.7.1.1.10 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf create-recovery {
|
||
|
type boolean;
|
||
|
description
|
||
|
"A Boolean value. If True, the receipt of a packet that
|
||
|
triggers the autoconfiguration of a new tsnStreamIdEntry can
|
||
|
also trigger the instantiation of a frerSeqRcvyEntry for a
|
||
|
Sequence recovery function.";
|
||
|
reference
|
||
|
"10.7.1.1.11 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf latent-error-detection {
|
||
|
type boolean;
|
||
|
description
|
||
|
"A Boolean value. If True, the autoconfiguration of a new
|
||
|
Sequence recovery function also creates an associated Latent
|
||
|
Error Detection function.";
|
||
|
reference
|
||
|
"10.7.1.1.12 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf latent-error-difference {
|
||
|
type int32;
|
||
|
description
|
||
|
"The value used to fill frerSeqRcvyLatentErrorDifference when
|
||
|
autoconfiguring entries in the Sequence recovery table.";
|
||
|
reference
|
||
|
"10.7.1.1.13 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf latent-error-period {
|
||
|
type uint32;
|
||
|
units "ms";
|
||
|
default "2000";
|
||
|
description
|
||
|
"The value used to fill frerSeqRcvyLatentErrorPeriod when
|
||
|
autoconfiguring entries in the Sequence recovery table.";
|
||
|
reference
|
||
|
"10.7.1.1.14 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf latent-error-reset-period {
|
||
|
type uint32;
|
||
|
units "ms";
|
||
|
default "30000";
|
||
|
description
|
||
|
"The value used to fill frerSeqRcvyLatentResetPeriod when
|
||
|
autoconfiguring entries in the Sequence recovery table.";
|
||
|
reference
|
||
|
"10.7.1.1.15 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
list output {
|
||
|
key "index";
|
||
|
description
|
||
|
"There is one Output autoconfiguration table per system. It
|
||
|
contains any number of frerAutOutEntry objects, each relating
|
||
|
to a single class of Streams specifying how active entries are
|
||
|
created in the Sequence identification table. No two (or more)
|
||
|
entries in the Output autoconfiguration table can include the
|
||
|
same port in their frerAutSeqReceivePortList objects.";
|
||
|
reference
|
||
|
"10.7.2 of IEEE Std 802.1CB-2017";
|
||
|
leaf index {
|
||
|
type uint32;
|
||
|
description
|
||
|
"Entry in the output list referencing to a single class of
|
||
|
streams.";
|
||
|
}
|
||
|
leaf-list port {
|
||
|
type if:interface-ref;
|
||
|
min-elements 1;
|
||
|
description
|
||
|
"The list of ports to which this frerAutOutEntry applies, and
|
||
|
on which active Sequence encode/decode functions are to be
|
||
|
autocreated.";
|
||
|
reference
|
||
|
"10.7.2.1.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
container encapsulation {
|
||
|
description
|
||
|
"An enumerated value, specifying which Sequence encode/decode
|
||
|
function, and therefore, which type sequence_number encoding,
|
||
|
is to be used for autoconfigured Streams on the ports in
|
||
|
frerAutSeqReceivePortList.";
|
||
|
reference
|
||
|
"10.7.2.1.2 of IEEE Std 802.1CB-2017";
|
||
|
uses sequence-encode-decode;
|
||
|
}
|
||
|
leaf lan-path-id {
|
||
|
type lan-path-id;
|
||
|
description
|
||
|
"An integer specifying a path or LAN. If and only if
|
||
|
frerAutOutEncaps specifies HSR or PRP frerAutOutLanPathId
|
||
|
specifies the LanId or PathId value to be inserted into the
|
||
|
HSR sequence tag or PRP sequence trailer of autoconfigured
|
||
|
packets transmitted on the ports in
|
||
|
frerAutSeqReceivePortList.";
|
||
|
reference
|
||
|
"10.7.2.1.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
augment "/dot1cb-sid:stream-identity" {
|
||
|
if-feature "auto-configuration";
|
||
|
description
|
||
|
"Two managed objects augment each tsnStreamIdEntry in the Stream
|
||
|
identity table when Managed objects for autoconfiguration is
|
||
|
implemented.";
|
||
|
reference
|
||
|
"10.2 of IEEE Std 802.1CB-2017";
|
||
|
leaf auto-configured {
|
||
|
type boolean;
|
||
|
config false;
|
||
|
description
|
||
|
"A read-only Boolean value, supplied by the system, specifying
|
||
|
whether this entry was created explicitly (False) or via the
|
||
|
Sequence autoconfiguration table.";
|
||
|
reference
|
||
|
"10.2.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf lan-path-id {
|
||
|
type lan-path-id;
|
||
|
description
|
||
|
"An integer specifying a path or LAN. If and only if a packet
|
||
|
matches an entry in the Sequence identification table that
|
||
|
specifies HSR or PRP in its frerSeqEncEncapsType object,
|
||
|
tsnStreamIdLanPathId specifies the LanId or PathId value that
|
||
|
must be matched for this tsnStreamIdEntry to apply. A value of –1
|
||
|
indicates that the LanId or PathId are to be ignored.";
|
||
|
reference
|
||
|
"10.2.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
augment "/if:interfaces/if:interface/if:statistics" {
|
||
|
description
|
||
|
"The following counters are the counters for frame replication and
|
||
|
elimination for reliability. All counters are unsigned integers. If
|
||
|
used on links faster than 650 000 000 bits per second, they shall
|
||
|
be 64 bits in length to ensure against excessively short wrap
|
||
|
times.
|
||
|
|
||
|
A Stream identification component shall implement the first two
|
||
|
counters provided in the stream-identification YANG module per-port
|
||
|
counters, input-packets and output-packets; the remainder of the
|
||
|
counters in the frer YANG module module are optional for such a
|
||
|
system.";
|
||
|
reference
|
||
|
"10.8 of IEEE Std 802.1CB-2017
|
||
|
10.9 of IEEE Std 802.1CB-2017";
|
||
|
container frer {
|
||
|
description
|
||
|
"This container contains the per-port as well as the
|
||
|
per-port-per-stream counters for frame replication and
|
||
|
elimination for reliability.";
|
||
|
reference
|
||
|
"10.8 of IEEE Std 802.1CB-2017
|
||
|
10.9 of IEEE Std 802.1CB-2017";
|
||
|
container per-port-counters {
|
||
|
config false;
|
||
|
description
|
||
|
"Contains the per-port counters for frame replication and
|
||
|
elimination for reliability. The following counters are
|
||
|
instantiated for each port on which any of the Stream
|
||
|
identification function, Sequencing function, or Sequence
|
||
|
encode/decode function is configured. The counters are indexed
|
||
|
by port number.";
|
||
|
leaf rx-passed-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpSeqRcvyPassedPackets counter is incremented once
|
||
|
for each packet passed up the stack by the
|
||
|
VectorRecoveryAlgorithm or MatchRecoveryAlgorithm. Its value
|
||
|
equals the sum (modulo the size of the counters) of all of
|
||
|
the frerCpsSeqRcvyPassedPackets counters on this same port.";
|
||
|
reference
|
||
|
"10.9.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf rx-discarded-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpSeqRcvyDiscardPackets counter is incremented once
|
||
|
for each packet discarded due to a duplicate sequence number
|
||
|
or for being a rogue packet by any VectorRecoveryAlgorithm or
|
||
|
MatchRecoveryAlgorithm on this port. Its value equals the sum
|
||
|
(modulo the size of the counters) of all of the
|
||
|
frerCpsSeqRcvyRoguePackets and frerCpsSeqRcvyDiscardedPackets
|
||
|
counters on this same port.";
|
||
|
reference
|
||
|
"10.9.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf encode-errored-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpSeqEncErroredPackets counter is incremented once
|
||
|
each time the Sequence encode/decode function receives a
|
||
|
packet that it is unable to decode successfully. Its value
|
||
|
equals the sum (modulo the size of the counters) of all of
|
||
|
the frerCpsSeqEncErroredPackets counters on this same port.";
|
||
|
reference
|
||
|
"10.9.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
list per-port-per-stream-counters {
|
||
|
key "direction-out-facing handle";
|
||
|
config false;
|
||
|
description
|
||
|
"Contains the per-port-per-stream counters for frame
|
||
|
replication and elimination for reliability. The following
|
||
|
counters are instantiated for each port on which any of the
|
||
|
Stream identification function, Sequencing function, or
|
||
|
Sequence encode/decode function is configured. The counters are
|
||
|
indexed by port number, facing (in-facing or out-facing), and
|
||
|
stream_handle value.";
|
||
|
reference
|
||
|
"10.8 of IEEE Std 802.1CB-2017";
|
||
|
leaf direction-out-facing {
|
||
|
type dot1cb-sid-types:direction;
|
||
|
description
|
||
|
"An object indicating whether the counters apply to
|
||
|
out-facing (True) or in-facing (False).";
|
||
|
}
|
||
|
leaf handle {
|
||
|
type leafref {
|
||
|
path '/dot1cb-sid:stream-identity/dot1cb-sid:handle';
|
||
|
}
|
||
|
description
|
||
|
"The according tsnStreamIdHandle for the counters.";
|
||
|
}
|
||
|
leaf generation-reset {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpsSeqGenResets counter is incremented each time the
|
||
|
SequenceGenerationReset function is called.";
|
||
|
reference
|
||
|
"10.8.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf rx-out-of-order-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpsSeqRcvyOutOfOrderPackets counter is incremented
|
||
|
once for each packet accepted out-of-order by the
|
||
|
VectorRecoveryAlgorithm or MatchRecoveryAlgorithm.
|
||
|
Out-of-order means that the packet’s sequence number is not
|
||
|
one more than the previous packet received.";
|
||
|
reference
|
||
|
"10.8.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf rx-rogue-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpsSeqRcvyRoguePackets counter is incremented once
|
||
|
for each packet discarded by the VectorRecoveryAlgorithm
|
||
|
because its sequence_number subparameter is more than
|
||
|
frerSeqRcvyHistoryLength from RecovSeqNum.";
|
||
|
reference
|
||
|
"10.8.4 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf rx-passed-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpsSeqRcvyPassedPackets counter is incremented once
|
||
|
for each packet passed up the stack by the
|
||
|
VectorRecoveryAlgorithm or MatchRecoveryAlgorithm.";
|
||
|
reference
|
||
|
"10.8.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf rx-discarded-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpsSeqRcvyDiscardedPackets counter is incremented
|
||
|
once for each packet discarded due to a duplicate sequence
|
||
|
number by the VectorRecoveryAlgorithm or
|
||
|
MatchRecoveryAlgorithm.";
|
||
|
reference
|
||
|
"10.8.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf rx-lost-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpsSeqRcvyLostPackets counter is incremented once
|
||
|
for each packet lost by the VectorRecoveryAlgorithm. A packet
|
||
|
is counted as lost if its sequence number is not received on
|
||
|
any ingress port.
|
||
|
|
||
|
NOTE—If per-source sequence numbering is used,
|
||
|
frerCpsSeqRcvyLostPackets can count, as lost, packets that
|
||
|
were sent to another destination, but not lost.";
|
||
|
reference
|
||
|
"10.8.7 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf rx-tagless-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpsSeqRcvyTaglessPackets counter is incremented once
|
||
|
for each packet received by the VectorRecoveryAlgorithm that
|
||
|
has no sequence_number subparameter.";
|
||
|
reference
|
||
|
"10.8.8 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf rx-resets {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpsSeqRcvyResets counter is incremented once each
|
||
|
time the SequenceRecoveryReset function is called.";
|
||
|
reference
|
||
|
"10.8.9 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf rx-latent-error-resets {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpsSeqRcvyLatentErrorResets counter is incremented
|
||
|
once each time the LatentErrorReset function is called.";
|
||
|
reference
|
||
|
"10.8.10 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf encode-errored-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The frerCpsSeqEncErroredPackets counter is incremented once
|
||
|
each time the Sequence encode/decode function receives a
|
||
|
packet that it is unable to decode successfully.";
|
||
|
reference
|
||
|
"10.8.11 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|