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.
818 lines
26 KiB
818 lines
26 KiB
1 year ago
|
module ieee802-dot1cb-stream-identification {
|
||
|
yang-version "1.1";
|
||
|
namespace urn:ieee:std:802.1Q:yang:ieee802-dot1cb-stream-identification;
|
||
|
prefix dot1cb-sid;
|
||
|
import ieee802-types {
|
||
|
prefix ieee;
|
||
|
}
|
||
|
import ieee802-dot1q-types {
|
||
|
prefix dot1qtypes;
|
||
|
}
|
||
|
import ietf-inet-types {
|
||
|
prefix inet;
|
||
|
}
|
||
|
import ietf-interfaces {
|
||
|
prefix if;
|
||
|
}
|
||
|
import ieee802-dot1cb-stream-identification-types {
|
||
|
prefix dot1cb-sid-types;
|
||
|
}
|
||
|
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 stream identification 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.";
|
||
|
}
|
||
|
identity null-stream-identification {
|
||
|
base dot1cb-sid-types:strid-idty;
|
||
|
description
|
||
|
"Null Stream Identification";
|
||
|
}
|
||
|
identity smac-vlan-stream-identification {
|
||
|
base dot1cb-sid-types:strid-idty;
|
||
|
description
|
||
|
"Source MAC and VLAN Stream Identification";
|
||
|
}
|
||
|
identity dmac-vlan-stream-identification {
|
||
|
base dot1cb-sid-types:strid-idty;
|
||
|
description
|
||
|
"Active Destination MAC and VLAN Stream Identification";
|
||
|
}
|
||
|
identity ip-stream-identification {
|
||
|
base dot1cb-sid-types:strid-idty;
|
||
|
description
|
||
|
"IP Stream Identification";
|
||
|
}
|
||
|
typedef vlan-tag-identification-type {
|
||
|
type enumeration {
|
||
|
enum tagged {
|
||
|
value 1;
|
||
|
description
|
||
|
"A frame must have a VLAN tag to be recognized as belonging to
|
||
|
the Stream.";
|
||
|
}
|
||
|
enum priority {
|
||
|
value 2;
|
||
|
description
|
||
|
"A frame must be untagged, or have a VLAN tag with a VLAN ID =
|
||
|
0 to be recognized as belonging to the Stream.";
|
||
|
}
|
||
|
enum all {
|
||
|
value 3;
|
||
|
description
|
||
|
"A frame is recognized as belonging to the Stream whether
|
||
|
tagged or not.";
|
||
|
}
|
||
|
}
|
||
|
description
|
||
|
"Enumeration describing how a Stream can be identified using the
|
||
|
VLAN tag.";
|
||
|
}
|
||
|
typedef vlan-identifier-type {
|
||
|
type uint16 {
|
||
|
range "0 .. 4095";
|
||
|
}
|
||
|
description
|
||
|
"Specifies the vlan_identifier. A value of 0 indicates that the
|
||
|
vlan_identifier carries a special meaning.";
|
||
|
}
|
||
|
list stream-identity {
|
||
|
key "index";
|
||
|
description
|
||
|
"The Stream identity table consists of a set of tsnStreamIdEntry
|
||
|
objects, each relating to a single Stream, specifying the points in
|
||
|
the system where Stream identification functions are to be
|
||
|
instantiated. Each entry in the Stream identity table has a
|
||
|
tsnStreamIdHandle object specifying a stream_handle value and one
|
||
|
or more tsnStreamIdEntry objects describing one identification
|
||
|
method for that Stream. If a single Stream has multiple
|
||
|
identification methods, perhaps (but not necessarily) on different
|
||
|
ports, then there can be multiple tsnStreamIdEntry objects with the
|
||
|
same value for the tsnStreamIdHandle. If the HSR or PRP method or
|
||
|
the Sequence encode/decode function is applied to a packet, then
|
||
|
the LanId or PathId fields are also used to identify the Stream to
|
||
|
which the packet belongs.";
|
||
|
reference
|
||
|
"9.1. of IEEE Std 802.1CB-2017";
|
||
|
leaf index {
|
||
|
type uint32;
|
||
|
description
|
||
|
"If a single Stream has multiple identification methods, perhaps
|
||
|
(but not necessarily) on different ports, then there can be
|
||
|
multiple tsnStreamIdEntry objects with the same value for the
|
||
|
tsnStreamIdHandle";
|
||
|
}
|
||
|
leaf handle {
|
||
|
type uint32;
|
||
|
mandatory true;
|
||
|
description
|
||
|
"The objects in a given entry of the Stream identity table are
|
||
|
used to control packets whose stream_handle subparameter is equal
|
||
|
to the entry’s tsnStreamIdHandle object. The specific values used
|
||
|
in the tsnStreamIdHandle object are not necessarily used in the
|
||
|
system; they are used only to relate the various management
|
||
|
objects in Clause 9 and Clause 10.";
|
||
|
reference
|
||
|
"9.1.1.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
container in-facing {
|
||
|
description
|
||
|
"Container for in-facing Stream identification functions.";
|
||
|
leaf-list input-port {
|
||
|
type if:interface-ref;
|
||
|
description
|
||
|
"The list of ports on which an in-facing Stream identification
|
||
|
function using this identification method is to be placed for
|
||
|
this Stream in the input (coming from the system forwarding
|
||
|
function) direction. Any number of tsnStreamIdEntry objects can
|
||
|
list the same port for the same tsnStreamIdHandle in its
|
||
|
tsnStreamIdInFacInputPortList.";
|
||
|
reference
|
||
|
"9.1.1.4 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf-list output-port {
|
||
|
type if:interface-ref;
|
||
|
description
|
||
|
"The list of ports on which an in-facing Stream identification
|
||
|
function using this identification method is to be placed for
|
||
|
this Stream in the output (towards the system forwarding
|
||
|
function) direction. At most one tsnStreamIdEntry can list a
|
||
|
given port for a given tsnStreamIdHandle in its
|
||
|
tsnStreamIdInFacOutputPortList.";
|
||
|
reference
|
||
|
"9.1.1.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container out-facing {
|
||
|
description
|
||
|
"Container for out-facing Stream identification functions.";
|
||
|
leaf-list input-port {
|
||
|
type if:interface-ref;
|
||
|
description
|
||
|
"The list of ports on which an out-facing Stream identification
|
||
|
function using this identification method is to be placed for
|
||
|
this Stream in the input (coming from the physical interface)
|
||
|
direction. Any number of tsnStreamIdEntry objects can list the
|
||
|
same port for the same tsnStreamIdHandle in its
|
||
|
tsnStreamIdOutFacInputPortList.";
|
||
|
reference
|
||
|
"9.1.1.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf-list output-port {
|
||
|
type if:interface-ref;
|
||
|
description
|
||
|
"The list of ports on which an out-facing Stream identification
|
||
|
function using this identification method is to be placed for
|
||
|
this Stream in the output (towards the physical interface)
|
||
|
direction. At most one tsnStreamIdEntry can list a given port
|
||
|
for a given tsnStreamIdHandle in its
|
||
|
tsnStreamIdOutFacOutputPortList.";
|
||
|
reference
|
||
|
"9.1.1.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
choice parameters {
|
||
|
mandatory true;
|
||
|
description
|
||
|
"The number of controlling parameters for a Stream identification
|
||
|
method, their types and values, are specific to the
|
||
|
tsnStreamIdIdentificationType.";
|
||
|
reference
|
||
|
"9.1.1.7 of IEEE Std 802.1CB-2017";
|
||
|
container null-stream-identification {
|
||
|
description
|
||
|
"When instantiating an instance of the Null Stream
|
||
|
identification function for a particular input Stream, the
|
||
|
managed objects in this container serve as the
|
||
|
tsnStreamIdParameters managed object.";
|
||
|
reference
|
||
|
"9.1.2 of IEEE Std 802.1CB-2017";
|
||
|
container identification-type {
|
||
|
config false;
|
||
|
description
|
||
|
"The identification type indicating the method used to
|
||
|
identify packets belonging to the Stream. The identification
|
||
|
type contains a type number and an Organizationally Unique
|
||
|
Identifier (OUI) or Company ID (CID) to identify the
|
||
|
organization defining the identification method.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type dot1cb-sid-types:stream-id-function;
|
||
|
default "null-stream";
|
||
|
description
|
||
|
"The stream identification type used for the Null Stream
|
||
|
identification method.";
|
||
|
reference
|
||
|
"9.1.1.6 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";
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the
|
||
|
identification method. For identification methods defined
|
||
|
in IEEE Std 802.1CB-2017 the OUI/CID is always 00-80-C2.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
leaf destination-mac {
|
||
|
type ieee:mac-address;
|
||
|
description
|
||
|
"Specifies the destination_address that identifies a packet
|
||
|
in an EISS indication primitive, to the Null Stream
|
||
|
identification function. The ieee:mac-address type has a
|
||
|
pattern that allows upper and lower case letters. To avoid
|
||
|
issues with string comparison, it is suggested to only use
|
||
|
Upper Case for the letters in the hexadecimal numbers. There
|
||
|
is still an issue with a difference between the IETF
|
||
|
mac-address definition and the IEEE mac-address definition,
|
||
|
so consider that if implementing code that compares
|
||
|
mac-addresses.";
|
||
|
reference
|
||
|
"9.1.2.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf tagged {
|
||
|
type vlan-tag-identification-type;
|
||
|
description
|
||
|
"An enumerated value indicating whether a packet in an EISS
|
||
|
indication primitive to the Null Stream identification
|
||
|
function is permitted to have a VLAN tag.";
|
||
|
reference
|
||
|
"9.1.2.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf vlan {
|
||
|
type vlan-identifier-type;
|
||
|
description
|
||
|
"Specifies the vlan_identifier parameter that identifies a
|
||
|
packet in an EISS indication primitive to the Null Stream
|
||
|
identification function. A value of 0 indicates that the
|
||
|
vlan_identifier parameter is ignored on EISS indication
|
||
|
primitives.";
|
||
|
reference
|
||
|
"9.1.2.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container smac-vlan-stream-identification {
|
||
|
description
|
||
|
"When instantiating an instance of the Source MAC and VLAN
|
||
|
Stream identification function for a particular input Stream,
|
||
|
the managed objects in the following subclauses serve as the
|
||
|
tsnStreamIdParameters managed object.";
|
||
|
reference
|
||
|
"9.1.3 of IEEE Std 802.1CB-2017";
|
||
|
container identification-type {
|
||
|
config false;
|
||
|
description
|
||
|
"The identification type indicating the method used to
|
||
|
identify packets belonging to the Stream. The identification
|
||
|
type contains a type number and an Organizationally Unique
|
||
|
Identifier (OUI) or Company ID (CID) to identify the
|
||
|
organization defining the identification method.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type dot1cb-sid-types:stream-id-function;
|
||
|
default "smac-vlan";
|
||
|
description
|
||
|
"The stream identification type used for the Source MAC and
|
||
|
VLAN Stream identification method.";
|
||
|
reference
|
||
|
"9.1.1.6 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";
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the
|
||
|
identification method. For identification methods defined
|
||
|
in IEEE Std 802.1CB-2017 the OUI/CID is always 00-80-C2.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
leaf source-mac {
|
||
|
type ieee:mac-address;
|
||
|
description
|
||
|
"Specifies the source_address that identifies a packet in an
|
||
|
EISS indication primitive, to the Source MAC and VLAN Stream
|
||
|
identification function. The ieee:mac-address type has a
|
||
|
pattern that allows upper and lower case letters. To avoid
|
||
|
issues with string comparison, it is suggested to only use
|
||
|
Upper Case for the letters in the hexadecimal numbers. There
|
||
|
is still an issue with a difference between the IETF
|
||
|
mac-address definition and the IEEE mac-address definition,
|
||
|
so consider that if implementing code that compares
|
||
|
mac-addresses.";
|
||
|
reference
|
||
|
"9.1.3.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf tagged {
|
||
|
type vlan-tag-identification-type;
|
||
|
description
|
||
|
"An enumerated value indicating whether a packet in an EISS
|
||
|
indication primitive to the Source MAC and VLAN Stream
|
||
|
identification function is permitted to have a VLAN tag.";
|
||
|
reference
|
||
|
"9.1.3.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf vlan {
|
||
|
type vlan-identifier-type;
|
||
|
description
|
||
|
"Specifies the vlan_identifier parameter that identifies a
|
||
|
packet in an EISS indication primitive to the Source MAC and
|
||
|
VLAN Stream identification function. A value of 0 indicates
|
||
|
that the vlan_identifier parameter is ignored on EISS
|
||
|
indication primitives.";
|
||
|
reference
|
||
|
"9.1.3.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container dmac-vlan-stream-identification {
|
||
|
description
|
||
|
"When instantiating an instance of the Active Destination MAC
|
||
|
and VLAN Stream identification function for a particular output
|
||
|
Stream, the managed objects in the following subclauses, along
|
||
|
with those listed in 9.1.2, serve as the tsnStreamIdParameters
|
||
|
managed object.";
|
||
|
reference
|
||
|
"9.1.4 of IEEE Std 802.1CB-2017";
|
||
|
container identification-type {
|
||
|
config false;
|
||
|
description
|
||
|
"The identification type indicating the method used to
|
||
|
identify packets belonging to the Stream. The identification
|
||
|
type contains a type number and an Organizationally Unique
|
||
|
Identifier (OUI) or Company ID (CID) to identify the
|
||
|
organization defining the identification method.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type dot1cb-sid-types:stream-id-function;
|
||
|
default "dmac-vlan";
|
||
|
description
|
||
|
"The stream identification type used for the Active
|
||
|
Destination MAC and VLAN Stream identification method.";
|
||
|
reference
|
||
|
"9.1.1.6 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";
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the
|
||
|
identification method. For identification methods defined
|
||
|
in IEEE Std 802.1CB-2017 the OUI/CID is always 00-80-C2.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container down {
|
||
|
description
|
||
|
"Container for all parameters which are sent to lower layers.";
|
||
|
leaf destination-mac {
|
||
|
type ieee:mac-address;
|
||
|
description
|
||
|
"Specifies the destination_address parameter to use in the
|
||
|
EISS request primitive for output packets sent to lower
|
||
|
layers by the Active Destination MAC and VLAN Stream
|
||
|
identification function, and the destination_address that
|
||
|
identifies an input packet in an EISS indication primitive
|
||
|
to the Active Destination MAC and VLAN Stream
|
||
|
identification function. The ieee:mac-address type has a
|
||
|
pattern that allows upper and lower case letters. To avoid
|
||
|
issues with string comparison, it is suggested to only use
|
||
|
Upper Case for the letters in the hexadecimal numbers.
|
||
|
There is still an issue with a difference between the IETF
|
||
|
mac-address definition and the IEEE mac-address definition,
|
||
|
so consider that if implementing code that compares
|
||
|
mac-addresses.";
|
||
|
reference
|
||
|
"9.1.4.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf tagged {
|
||
|
type vlan-tag-identification-type;
|
||
|
description
|
||
|
"An enumerated value indicating whether a packet in an EISS
|
||
|
indication or request primitive between the Active
|
||
|
Destination MAC and VLAN Stream identification function and
|
||
|
the lower layers is to have a VLAN tag. This variable is
|
||
|
not used in an FRER C-component. See 8.4.";
|
||
|
reference
|
||
|
"9.1.4.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf vlan {
|
||
|
type vlan-identifier-type;
|
||
|
description
|
||
|
"Specifies the vlan_identifier parameter to use in the EISS
|
||
|
request primitive for output packets sent to lower layers
|
||
|
by the Active Destination MAC and VLAN Stream
|
||
|
identification function, and the vlan_identifier that
|
||
|
identifies an input packet in an EISS indication primitive
|
||
|
to the Active Destination MAC and VLAN Stream
|
||
|
identification function. A value of 0 indicates that the
|
||
|
vlan_identifier parameter is ignored on EISS indication
|
||
|
primitives.";
|
||
|
reference
|
||
|
"9.1.4.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf priority {
|
||
|
type dot1qtypes:priority-type;
|
||
|
description
|
||
|
"Specifies the priority parameter to use in the EISS
|
||
|
request primitive for output packets sent to lower layers
|
||
|
by the Active Destination MAC and VLAN Stream
|
||
|
identification function for all packets in a particular
|
||
|
Stream.";
|
||
|
reference
|
||
|
"9.1.4.4 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container up {
|
||
|
description
|
||
|
"Container for all parameters which are offered to higher
|
||
|
layers.";
|
||
|
leaf destination-mac {
|
||
|
type ieee:mac-address;
|
||
|
description
|
||
|
"Specifies the destination_address parameter to use in the
|
||
|
EISS indication primitive for input packets offered to
|
||
|
upper layers by the Active Destination MAC and VLAN Stream
|
||
|
identification layer. This address replaces the address
|
||
|
that was used to identify the packet
|
||
|
(tsnCpeDmacVlanDownDestMac). The ieee:mac-address type has
|
||
|
a pattern that allows upper and lower case letters. To
|
||
|
avoid issues with string comparison, it is suggested to
|
||
|
only use Upper Case for the letters in the hexadecimal
|
||
|
numbers. There is still an issue with a difference between
|
||
|
the IETF mac-address definition and the IEEE mac-address
|
||
|
definition, so consider that if implementing code that
|
||
|
compares mac-addresses.";
|
||
|
reference
|
||
|
"9.1.4.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf tagged {
|
||
|
type vlan-tag-identification-type;
|
||
|
description
|
||
|
"An enumerated value indicating whether a packet in an EISS
|
||
|
indication or request primitive between the Active
|
||
|
Destination MAC and VLAN Stream identification function and
|
||
|
the upper layers is to have a VLAN tag. This variable is
|
||
|
used only by an end system and not by a relay system.";
|
||
|
reference
|
||
|
"9.1.4.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf vlan {
|
||
|
type vlan-identifier-type;
|
||
|
description
|
||
|
"Specifies the vlan_identifier parameter to use in the EISS
|
||
|
indication primitive for packets offered to upper layers,
|
||
|
or the VLAN ID field for an IEEE 802.1Q tag in an ISS
|
||
|
mac_service_data_unit. This address replaces the VLAN ID
|
||
|
that was used to identify the packet
|
||
|
(tsnCpeDmacVlanDownVlan).";
|
||
|
reference
|
||
|
"9.1.4.7 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf priority {
|
||
|
type dot1qtypes:priority-type;
|
||
|
description
|
||
|
"Specifies the priority parameter to use in the EISS
|
||
|
indication primitive for packets offered to upper layers.";
|
||
|
reference
|
||
|
"9.1.4.8 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
container ip-stream-identification {
|
||
|
description
|
||
|
"When instantiating an instance of the IP Stream identification
|
||
|
function, the parameters in the following subclauses replace
|
||
|
the tsnStreamIdParameters managed object.";
|
||
|
reference
|
||
|
"9.1.5 of IEEE Std 802.1CB-2017";
|
||
|
container identification-type {
|
||
|
config false;
|
||
|
description
|
||
|
"The identification type indicating the method used to
|
||
|
identify packets belonging to the Stream. The identification
|
||
|
type contains a type number and an Organizationally Unique
|
||
|
Identifier (OUI) or Company ID (CID) to identify the
|
||
|
organization defining the identification method.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type dot1cb-sid-types:stream-id-function;
|
||
|
default "ip";
|
||
|
description
|
||
|
"The stream identification type used for the IP Stream
|
||
|
identification method.";
|
||
|
reference
|
||
|
"9.1.1.6 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";
|
||
|
description
|
||
|
"The Organizationally Unique Identifier (OUI) or Company ID
|
||
|
(CID) to identify the organization defining the
|
||
|
identification method. For identification methods defined
|
||
|
in IEEE Std 802.1CB-2017 the OUI/CID is always 00-80-C2.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
leaf destination-mac {
|
||
|
type ieee:mac-address;
|
||
|
description
|
||
|
"Specifies the destination_address parameter that identifies
|
||
|
a packet in an EISS indication primitive. The
|
||
|
ieee:mac-address type has a pattern that allows upper and
|
||
|
lower case letters. To avoid issues with string comparison,
|
||
|
it is suggested to only use Upper Case for the letters in the
|
||
|
hexadecimal numbers. There is still an issue with a
|
||
|
difference between the IETF mac-address definition and the
|
||
|
IEEE mac-address definition, so consider that if implementing
|
||
|
code that compares mac-addresses.";
|
||
|
reference
|
||
|
"9.1.5.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf tagged {
|
||
|
type vlan-tag-identification-type;
|
||
|
description
|
||
|
"An enumerated value indicating whether a packet in an EISS
|
||
|
indication or request primitive to the IP Stream
|
||
|
identification function is to have a VLAN tag.";
|
||
|
reference
|
||
|
"9.1.5.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf vlan {
|
||
|
type vlan-identifier-type;
|
||
|
description
|
||
|
"Specifies the vlan_identifier parameter that identifies a
|
||
|
packet in an EISS indication primitive. A value of 0
|
||
|
indicates that the frame is not to have a VLAN tag.";
|
||
|
reference
|
||
|
"9.1.5.3 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf ip-source {
|
||
|
type inet:ip-address;
|
||
|
description
|
||
|
"Specifies the IPv4 (RFC 791) or IPv6 (RFC 2460) source
|
||
|
address parameter that must be matched to identify packets
|
||
|
coming up from lower layers. An address of all 0 indicates
|
||
|
that the IP source address is to be ignored on packets
|
||
|
received from lower layers.";
|
||
|
reference
|
||
|
"9.1.5.4 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf ip-destination {
|
||
|
type inet:ip-address;
|
||
|
description
|
||
|
"Specifies the IPv4 (RFC 791) or IPv6 (RFC 2460) destination
|
||
|
address parameter that must be matched to identify packets
|
||
|
coming up from lower layers.";
|
||
|
reference
|
||
|
"9.1.5.5 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf dscp {
|
||
|
type inet:dscp;
|
||
|
description
|
||
|
"Specifies the IPv4 (RFC 791) or IPv6 (RFC 2460)
|
||
|
differentiated services codepoint (DSCP, RFC 2474) that must
|
||
|
be matched to identify packets coming up from the lower
|
||
|
layers. A value of 64 decimal indicates that the DSCP is to
|
||
|
be ignored on packets received from lower layers.";
|
||
|
reference
|
||
|
"9.1.5.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf next-protocol {
|
||
|
type enumeration {
|
||
|
enum none {
|
||
|
description
|
||
|
"No protocol is specified";
|
||
|
}
|
||
|
enum udp {
|
||
|
description
|
||
|
"UDP is specified as the next protocol.";
|
||
|
reference
|
||
|
"RFC 768";
|
||
|
}
|
||
|
enum tcp {
|
||
|
description
|
||
|
"TCP is specified as the next protocol.";
|
||
|
reference
|
||
|
"RFC 793";
|
||
|
}
|
||
|
enum sctp {
|
||
|
description
|
||
|
"SCTP is specified as the next protocol.";
|
||
|
reference
|
||
|
"RFC 4960";
|
||
|
}
|
||
|
}
|
||
|
description
|
||
|
"Specifies the IP next protocol parameter that must be
|
||
|
matched to identify packets coming up from lower layers. The
|
||
|
value of this parameter must specify either none, UDP (RFC
|
||
|
768), TCP (RFC 793), or SCTP (RFC 4960). If “none,” then the
|
||
|
tsnCpeIpIdSourcePort and tsnCpeIpIdDestinationPort managed
|
||
|
objects are not used.";
|
||
|
reference
|
||
|
"9.1.5.7 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf source-port {
|
||
|
type inet:port-number;
|
||
|
description
|
||
|
"Specifies the TCP or UDP Source Port parameter that must be
|
||
|
matched to identify packets coming up from lower layers. A
|
||
|
value of 0 indicates that the Source Port number of the
|
||
|
packet is to be ignored on packets received from lower
|
||
|
layers.";
|
||
|
reference
|
||
|
"9.1.5.8 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf destination-port {
|
||
|
type inet:port-number;
|
||
|
description
|
||
|
"Specifies the TCP or UDP Destination Port parameter that
|
||
|
must be matched to identify packets coming up from lower
|
||
|
layers. A value of 0 indicates that the Destination Port
|
||
|
number of the packet is to be ignored on packets received
|
||
|
from lower layers.";
|
||
|
reference
|
||
|
"9.1.5.9 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
container organization-specific {
|
||
|
description
|
||
|
"This container allows to select stream identification methods
|
||
|
that are defined by entities outside of IEEE 802.1.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
container identification-type {
|
||
|
description
|
||
|
"The identification type indicating the method used to
|
||
|
identify packets belonging to the Stream. The identification
|
||
|
type contains a type number and an Organizationally Unique
|
||
|
Identifier (OUI) or Company ID (CID) to identify the
|
||
|
organization defining the identification method.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
leaf type-number {
|
||
|
type int32 {
|
||
|
range "256..max";
|
||
|
}
|
||
|
description
|
||
|
"The type number used for an identification method defined
|
||
|
by an entity owning the OUI or CID for this identification
|
||
|
type.";
|
||
|
reference
|
||
|
"9.1.1.6 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
|
||
|
identification method.";
|
||
|
reference
|
||
|
"9.1.1.6 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
augment "/if:interfaces/if:interface/if:statistics" {
|
||
|
description
|
||
|
"The following counters are the counters for stream identification.
|
||
|
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.";
|
||
|
reference
|
||
|
"9.2 of IEEE Std 802.1CB-2017
|
||
|
9.3 of IEEE Std 802.1CB-2017";
|
||
|
container stream-id {
|
||
|
description
|
||
|
"This container contains the per-port as well as the
|
||
|
per-port-per-stream counters for stream identification.";
|
||
|
reference
|
||
|
"9.2 of IEEE Std 802.1CB-2017
|
||
|
9.3 of IEEE Std 802.1CB-2017";
|
||
|
container per-port-counters {
|
||
|
config false;
|
||
|
description
|
||
|
"Contains the per-port counters for stream identification. The
|
||
|
following counters are instantiated for each port on which the
|
||
|
Stream identification function is configured. The counters are
|
||
|
indexed by port number.";
|
||
|
reference
|
||
|
"9.3 of IEEE Std 802.1CB-2017";
|
||
|
leaf input-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The tsnCpSidInputPackets counter is incremented once for
|
||
|
each packet identified by any Stream identification function
|
||
|
on this port. Its value equals the sum (modulo the size of
|
||
|
the counters) of all of the tsnCpsSidInputPackets counters on
|
||
|
this same port.";
|
||
|
reference
|
||
|
"9.3.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf output-pkts {
|
||
|
type uint64;
|
||
|
config false;
|
||
|
description
|
||
|
"The tsnCpSidOutputPackets counter is incremented once for
|
||
|
each packet passed down the stack by any Stream
|
||
|
identification function on this port. Its value equals the
|
||
|
sum (modulo the size of the counters) of all of the
|
||
|
tsnCpsSidOutputPackets counters on this same port.";
|
||
|
reference
|
||
|
"9.3.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 stream
|
||
|
identification. The following counters are instantiated for
|
||
|
each port on which the Stream identification function is
|
||
|
configured. The counters are indexed by port number, facing
|
||
|
(in-facing or out-facing), and stream_handle value
|
||
|
(tsnStreamIdHandle).";
|
||
|
reference
|
||
|
"9.2 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 '/stream-identity/handle';
|
||
|
}
|
||
|
description
|
||
|
"The according tsnStreamIdHandle for these counters.";
|
||
|
}
|
||
|
leaf input-pkts {
|
||
|
type uint64;
|
||
|
description
|
||
|
"The tsnCpsSidInputPackets counter is incremented once for
|
||
|
each packet identified by the Stream identification function.";
|
||
|
reference
|
||
|
"9.2.1 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
leaf output-pkts {
|
||
|
type uint64;
|
||
|
description
|
||
|
"The tsnCpsSidOutputPackets counter is incremented once for
|
||
|
each packet passed down the stack by the Stream
|
||
|
identification function.";
|
||
|
reference
|
||
|
"9.2.2 of IEEE Std 802.1CB-2017";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|