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.
152 lines
4.6 KiB
152 lines
4.6 KiB
1 year ago
|
module ieee802-dot1q-preemption {
|
||
|
namespace urn:ieee:std:802.1Q:yang:ieee802-dot1q-preemption;
|
||
|
prefix preempt;
|
||
|
import ieee802-dot1q-types {
|
||
|
prefix dot1q-types;
|
||
|
}
|
||
|
import ietf-interfaces {
|
||
|
prefix if;
|
||
|
}
|
||
|
import ieee802-dot1q-bridge {
|
||
|
prefix dot1q;
|
||
|
}
|
||
|
organization
|
||
|
"IEEE 802.1 Working Group";
|
||
|
contact
|
||
|
"WG-URL: http://www.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
|
||
|
P.O. Box 1331
|
||
|
Piscataway
|
||
|
NJ 08855-1331
|
||
|
USA
|
||
|
|
||
|
E-mail: STDS-802-1-L@IEEE.ORG";
|
||
|
description
|
||
|
"This module provides for management of IEEE Std 802.1Q Bridges
|
||
|
that support Frame Preemption.";
|
||
|
|
||
|
revision 2020-07-07 {
|
||
|
description
|
||
|
"Published as part of IEEE Std 802.1Qcw.
|
||
|
Initial version.";
|
||
|
reference
|
||
|
"IEEE Std 802.1Qcw - Bridges and Bridged Networks — Amendment:
|
||
|
YANG Data Models for Scheduled Traffic, Frame Preemption, and
|
||
|
Per-Stream Filtering and Policing.";
|
||
|
}
|
||
|
|
||
|
feature frame-preemption {
|
||
|
description
|
||
|
"Frame preemption supported.";
|
||
|
reference
|
||
|
"IEEE Std 802.1Q-2018";
|
||
|
}
|
||
|
augment "/if:interfaces/if:interface/dot1q:bridge-port" {
|
||
|
if-feature "frame-preemption";
|
||
|
description
|
||
|
"Augment bridge-port with Frame Preemption configuration.";
|
||
|
container frame-preemption-parameters {
|
||
|
description
|
||
|
"A table containing a set of frame preemption parameters, one
|
||
|
for each Port. All writeable objects in this table must be
|
||
|
persistent over power up restart/reboot.";
|
||
|
reference
|
||
|
"12.30.1 of IEEE Std 802.1Q-2018";
|
||
|
list frame-preemption-status-table {
|
||
|
key "priority";
|
||
|
description
|
||
|
"The framePreemptionStatusTable consists of 8
|
||
|
framePreemptionAdminStatus values, one per priority";
|
||
|
reference
|
||
|
"12.30.1.1 of IEEE Std 802.1Q-2018";
|
||
|
leaf priority {
|
||
|
type dot1q-types:priority-type;
|
||
|
description
|
||
|
"Priority.";
|
||
|
}
|
||
|
leaf frame-preemption-status {
|
||
|
type enumeration {
|
||
|
enum express {
|
||
|
description
|
||
|
"Frames queued for the priority are to be transmitted
|
||
|
using the express service for the Port.";
|
||
|
}
|
||
|
enum preemptible {
|
||
|
description
|
||
|
"Frames queued for the priority are to be transmitted
|
||
|
using the preemptible service for the Port and
|
||
|
preemption is enabled for the Port.";
|
||
|
}
|
||
|
}
|
||
|
default "express";
|
||
|
description
|
||
|
"The value of the framePreemptionAdminStatus parameter for
|
||
|
the traffic class. The default value of the
|
||
|
framePreemptionAdminStatus parameter is express. The
|
||
|
value of this object must be retained across
|
||
|
reinitializations of the management system.";
|
||
|
reference
|
||
|
"12.30.1.1.1 of IEEE Std 802.1Q-2018";
|
||
|
}
|
||
|
}
|
||
|
leaf hold-advance {
|
||
|
type uint32;
|
||
|
units "nanoseconds";
|
||
|
config false;
|
||
|
description
|
||
|
"The value of the holdAdvance parameter for the Port in
|
||
|
nanoseconds. There is no default value; the holdAdvance is a
|
||
|
property of the underlying MAC.";
|
||
|
reference
|
||
|
"12.30.1.2 of IEEE Std 802.1Q-2018";
|
||
|
}
|
||
|
leaf release-advance {
|
||
|
type uint32;
|
||
|
units "nanoseconds";
|
||
|
config false;
|
||
|
description
|
||
|
"The value of the releaseAdvance parameter for the Port in
|
||
|
nanoseconds. There is no default value; the releaseAdvance
|
||
|
is a property of the underlying MAC.";
|
||
|
reference
|
||
|
"12.30.1.3 of IEEE Std 802.1Q-2018";
|
||
|
}
|
||
|
leaf preemption-active {
|
||
|
type boolean;
|
||
|
config false;
|
||
|
description
|
||
|
"TRUE if preemption is both supported by the MAC and
|
||
|
currently active.";
|
||
|
reference
|
||
|
"12.30.1.4 of IEEE Std 802.1Q-2018";
|
||
|
}
|
||
|
leaf hold-request {
|
||
|
type enumeration {
|
||
|
enum hold {
|
||
|
value 1;
|
||
|
description
|
||
|
"A hold request has been issued to the MAC.";
|
||
|
}
|
||
|
enum release {
|
||
|
value 2;
|
||
|
description
|
||
|
"A release request has been issued to the MAC.";
|
||
|
}
|
||
|
}
|
||
|
config false;
|
||
|
description
|
||
|
"The value of the holdRequest parameter for the Port, either
|
||
|
hold (1) or release (2). The value of this object is release
|
||
|
(2) on system initialization.";
|
||
|
reference
|
||
|
"12.30.1.5 of IEEE Std 802.1Q-2018";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|