818 lines
26 KiB
YANG
818 lines
26 KiB
YANG
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";
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|