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.
315 lines
10 KiB
315 lines
10 KiB
module ieee802-dot1q-ats { |
|
yang-version "1.1"; |
|
namespace urn:ieee:std:802.1Q:yang:ieee802-dot1q-ats; |
|
prefix ats; |
|
import ietf-yang-types { |
|
prefix yang; |
|
} |
|
import ietf-interfaces { |
|
prefix if; |
|
} |
|
import ieee802-dot1q-types { |
|
prefix dot1qtypes; |
|
} |
|
import ieee802-dot1q-bridge { |
|
prefix dot1q; |
|
} |
|
import ieee802-dot1q-stream-filters-gates { |
|
prefix sfsg; |
|
} |
|
organization |
|
"IEEE 802.1 Working Group"; |
|
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 |
|
"This module provides management of 802.1Q bridge components that support |
|
Asynchronous Traffic Shaping (ATS)."; |
|
revision 2020-11-06 { |
|
description |
|
"Published as part of IEEE Std 802.1Qcr-2020. |
|
Initial version."; |
|
reference |
|
"IEEE Std 802.1Qcr-2020, Bridges and Bridged Networks - |
|
Asynchronous Traffic Shaping."; |
|
} |
|
typedef scheduler-ref-type { |
|
type leafref { |
|
path |
|
'/dot1q:bridges'+ |
|
'/dot1q:bridge'+ |
|
'/dot1q:component'+ |
|
'/ats:schedulers'+ |
|
'/ats:scheduler-instance-table'+ |
|
'/ats:scheduler-instance-id'; |
|
} |
|
description |
|
"This type is used to refer to an ATS scheduler instance."; |
|
} |
|
typedef scheduler-group-ref-type { |
|
type leafref { |
|
path |
|
'/dot1q:bridges'+ |
|
'/dot1q:bridge'+ |
|
'/dot1q:component'+ |
|
'/ats:scheduler-groups'+ |
|
'/ats:scheduler-group-instance-table'+ |
|
'/ats:scheduler-group-instance-id'; |
|
} |
|
description |
|
"This type is used to refer to an ATS scheduler group instance."; |
|
} |
|
augment |
|
"/dot1q:bridges"+ |
|
"/dot1q:bridge"+ |
|
"/dot1q:component"+ |
|
"/sfsg:stream-filters"+ |
|
"/sfsg:stream-filter-instance-table" { |
|
description |
|
"Augments the Bridge component stream filter for ATS schedulers."; |
|
container scheduler { |
|
description |
|
"Enapsulates ATS scheduler nodes."; |
|
leaf scheduler-ref { |
|
type ats:scheduler-ref-type; |
|
description |
|
"A reference to the ATS scheduler associated with this stream |
|
filter."; |
|
} |
|
leaf scheduler-enable { |
|
type boolean; |
|
default "false"; |
|
description |
|
"If TRUE, this stream filter has an associated ATS scheduler |
|
referenced by scheduler-ref. If FALSE, no ATS scheduler is |
|
associated with this stream filter (scheduler-ref is ignored)."; |
|
} |
|
} |
|
} |
|
augment "/if:interfaces/if:interface/dot1q:bridge-port" { |
|
description |
|
"Augments Bridge Ports by ATS per-Port parameters."; |
|
container ats-port-parameters { |
|
description |
|
"This container comprises all ATS per-Port parameters."; |
|
leaf discarded-frames-count { |
|
type yang:counter64; |
|
config false; |
|
description |
|
"A counter of frames discarded by ATS scheduler instances |
|
associated with the Bridge Port."; |
|
reference |
|
"12.31.7.3 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
} |
|
} |
|
augment "/dot1q:bridges/dot1q:bridge/dot1q:component" { |
|
description |
|
"Augments the Bridge component by |
|
a) ATS schedulers |
|
b) ATS scheduler groups"; |
|
container schedulers { |
|
description |
|
"This container comprises all nodes related to an ATS schedulers."; |
|
list scheduler-instance-table { |
|
key "scheduler-instance-id"; |
|
description |
|
"Each list entry comprises a set of parameters that defines a |
|
single ATS scheduler instance, as detailed in Table 12-33."; |
|
reference |
|
"12.31.5 of IEEE Std 802.1Qcr-2020"; |
|
leaf scheduler-instance-id { |
|
type uint32; |
|
mandatory true; |
|
description |
|
"A unique index identifying this ATS scheduler instance."; |
|
reference |
|
"12.31.5.1 of IEEE Std 802.1Qcr-2020 |
|
8.6.5.6 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
leaf committed-information-rate { |
|
type uint64; |
|
units "bits/second"; |
|
mandatory true; |
|
description |
|
"The committed information rate parameter of this ATS scheduler |
|
instance."; |
|
reference |
|
"12.31.5.3 of IEEE Std 802.1Qcr-2020 |
|
8.6.5.6 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
leaf committed-burst-size { |
|
type uint32; |
|
units "bits"; |
|
mandatory true; |
|
description |
|
"The committed burst size parameter of this ATS scheduler |
|
instance."; |
|
reference |
|
"12.31.5.2 of IEEE Std 802.1Qcr-2020 |
|
8.6.5.6 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
leaf scheduler-group-ref { |
|
type ats:scheduler-group-ref-type; |
|
mandatory true; |
|
description |
|
"A reference to the scheduler group (12.32.5) associated with |
|
this ATS scheduler instance. Multiple ATS scheduler instances |
|
can be associated to one scheduler group, as detailed in |
|
8.6.5.6."; |
|
reference |
|
"12.31.6 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
} |
|
leaf max-scheduler-instances { |
|
type uint32; |
|
config false; |
|
description |
|
"The maximum number of ATS scheduler instances supported by this |
|
Bridge component."; |
|
reference |
|
"12.31.1.5 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
} |
|
container scheduler-groups { |
|
description |
|
"This container comprises all ATS scheduler group related nodes."; |
|
list scheduler-group-instance-table { |
|
key "scheduler-group-instance-id"; |
|
description |
|
"Each list entry comprises a set of parameters that defines a |
|
single ATS scheduler group instance."; |
|
reference |
|
"12.31.6 of IEEE Std 802.1Qcr-2020 |
|
8.6.5.6 of IEEE Std 802.1Qcr-2020"; |
|
leaf scheduler-group-instance-id { |
|
type uint32; |
|
description |
|
"A unique index identifying this ATS scheduler group instance."; |
|
reference |
|
"12.31.6.1 of IEEE Std 802.1Qcr-2020 |
|
8.6.5.6 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
leaf max-residence-time { |
|
type uint32; |
|
units "nanoseconds"; |
|
mandatory true; |
|
description |
|
"The maximum residence time parameter of the ATS scheduler |
|
group."; |
|
reference |
|
"8.6.11.2.13 of IEEE Std 802.1Qcr-2020 |
|
8.6.5.6 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
} |
|
leaf max-scheduler-group-instances { |
|
type uint32; |
|
config false; |
|
description |
|
"The maximum number of ATS scheduler group instances supported by |
|
this Bridge component."; |
|
reference |
|
"12.31.1.6 of IEEE Std 802.1Qcr-2020 |
|
8.6.5.6 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
container scheduler-timing-characteristics { |
|
description |
|
"This container comprises all ATS scheduler timing |
|
characteristics related nodes."; |
|
list scheduler-timing-characteristics-table { |
|
key "reception-port transmission-port"; |
|
config false; |
|
description |
|
"Each list entry comprises the timing characteristics of a |
|
reception Port transmission Port pair, as detailed in Table |
|
12-36."; |
|
reference |
|
"12.31.8 of IEEE Std 802.1Qcr-2020 |
|
8.6.11 of IEEE Std 802.1Qcr-2020"; |
|
leaf reception-port { |
|
type dot1qtypes:port-number-type; |
|
config false; |
|
mandatory true; |
|
description |
|
"A reference to the associated reception Port."; |
|
reference |
|
"12.31.8.1 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
leaf transmission-port { |
|
type dot1qtypes:port-number-type; |
|
config false; |
|
mandatory true; |
|
description |
|
"A reference to the associated transmission Port."; |
|
reference |
|
"12.31.8.2 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
leaf clock-offset-variation-max { |
|
type uint32; |
|
units "nanoseconds"; |
|
config false; |
|
mandatory true; |
|
description |
|
"The maximum clock offset variation associated with the |
|
reception Port transmission Port pair."; |
|
reference |
|
"12.31.8.3 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
leaf clock-rate-deviation-max { |
|
type uint32; |
|
units "ppm"; |
|
config false; |
|
mandatory true; |
|
description |
|
"The maximum clock rate deviation associated with the |
|
reception Port transmission Port pair."; |
|
reference |
|
"12.31.8.4 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
leaf arrival-recognition-delay-max { |
|
type uint32; |
|
units "nanoseconds"; |
|
config false; |
|
mandatory true; |
|
description |
|
"The maximum arrival time recognition delay associated with |
|
the reception Port transmission Port pair."; |
|
reference |
|
"12.31.8.5 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
leaf processing-delay-min { |
|
type uint32; |
|
units "nanoseconds"; |
|
config false; |
|
mandatory true; |
|
description |
|
"The minimum processing delay associated with the reception |
|
Port transmission Port pair."; |
|
reference |
|
"12.31.8.6 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
leaf processing-delay-max { |
|
type uint32; |
|
units "nanoseconds"; |
|
config false; |
|
mandatory true; |
|
description |
|
"The maximum processing delay associated with the reception |
|
Port transmission Port pair."; |
|
reference |
|
"12.31.8.7 of IEEE Std 802.1Qcr-2020"; |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}
|
|
|