802.1 Tools
  • Home
  • Maintenance
    • All items
    • Open items
    • Closed items
    • Items for review
    • Status
  • Meetings
  • Help
  • Log in
Requested revision
Standard:IEEE 802.1Qcw-2023Clause:48.6.17 and 48.6.21
Clause title:"The ieee802-dot1q-sched YANG module" and "The ieee802-dot1q-psfp YANG module"
Rationale for revision
In the current YANG models there are several statements such as must "(count(./gate-control-entry) <= ../supported-list-max)" { These implicitly require that several leafs need to exist like /ietf-interfaces:interfaces/interface[name='eth0']/ieee802-dot1q-bridge:bridge-port/ieee802-dot1q-sched-bridge:gate-parameter-table/supported-list-max for EVERY interface, otherwise a YANG data tree does not validate. This includes interfaces where no scheduling configuration shall be applied at all, like in { "ietf-interfaces:interfaces": { "interface": [ { "if-index": 1, "name": "eth0", "type": "iana-if-type:ethernetCsmacd", "oper-status": "down", "admin-status": "down", "statistics": { "discontinuity-time": "2023-12-15T10:04:12.345+00:00" } } ] } } or even iana-if-type:ilan interfaces which are required for applying the IEEE 802.1CB YANG models. Also see https://www.ieee802.org/1/private/email2/msg36517.html and the follow up mails for further discussion on this topic.
Proposed text
In 48.6.17 apply the following diff: --- ieee802-dot1q-sched.yang 2024-02-08 15:20:30.413357268 +0100 +++ ieee802-dot1q-sched@2024-01-30.yang 2024-02-13 11:22:04.876588200 +0100 @@ -33,6 +33,10 @@ This version of this YANG module is part of IEEE Std 802.1Q; see the standard itself for full legal notices."; + revision 2024-01-30 { + description + "TODO add proper revision description"; + } revision 2023-10-22 { description "Published as part of IEEE Std 802.1Qcw-2023. @@ -77,7 +81,7 @@ } refine "gate-control-entry/time-interval-value" { must - "(. <= ../../../supported-interval-max )"; + "not (. > ../../../supported-interval-max )"; } augment "gate-control-entry" { description @@ -187,9 +191,9 @@ } container admin-control-list { must - "(count(./gate-control-entry) <= ../supported-list-max)" { + "not(count(./gate-control-entry) > ../supported-list-max)" { error-message - "Number of elements in admin-control-list must not be greater"+ + "Number of elements in admin-control-list must not be greater "+ "than supported-list-max"; } description @@ -202,9 +206,9 @@ } container oper-control-list { must - "(count(./gate-control-entry) <= ../supported-list-max)" { + "not(count(./gate-control-entry) > ../supported-list-max)" { error-message - "Number of elements in oper-control-list must not be greater"+ + "Number of elements in oper-control-list must not be greater "+ "than supported-list-max"; } config false; @@ -217,7 +221,7 @@ } container admin-cycle-time { must - "(./numerator div ./denominator <= "+ + "not (./numerator div ./denominator > "+ "../supported-cycle-max/numerator div "+ "../supported-cycle-max/denominator )" { error-message @@ -235,7 +239,7 @@ } container oper-cycle-time { must - "(./numerator div ./denominator <= "+ + "not (./numerator div ./denominator > "+ "../supported-cycle-max/numerator div "+ "../supported-cycle-max/denominator )" { error-message In 48.6.21 apply the following diff: --- ieee802-dot1q-psfp.yang 2024-02-13 10:57:01.045060316 +0100 +++ ieee802-dot1q-psfp@2024-01-30.yang 2024-02-13 11:22:52.733000013 +0100 @@ -36,6 +36,10 @@ This version of this YANG module is part of IEEE Std 802.1Q; see the standard itself for full legal notices."; + revision 2024-01-30 { + description + "TODO add proper revision description"; + } revision 2023-10-26 { description "Published as part of IEEE Std 802.1Qcw-2023. @@ -86,7 +90,7 @@ } refine "gate-control-entry/time-interval-value" { must - "(. <= ../../../../supported-interval-max )"; + "not (. > ../../../../supported-interval-max )"; } augment "gate-control-entry" { description @@ -130,9 +134,9 @@ "This container comprises all flow meter related nodes."; list flow-meter-instance-table { must - "(count(.) <= ../max-flow-meter-instances)" { + "not (count(.) > ../max-flow-meter-instances)" { error-message - "Number of elements in flow-meter-instance-table must not be"+ + "Number of elements in flow-meter-instance-table must not be "+ "greater than max-flow-meter-instances."; } key "flow-meter-instance-id"; @@ -420,9 +424,9 @@ } container admin-control-list { must - "(count(./gate-control-entry) <= ../../supported-list-max)" { + "not (count(./gate-control-entry) > ../../supported-list-max)" { error-message - "Number of elements in admin-control-list must not be"+ + "Number of elements in admin-control-list must not be "+ "greater than supported-list-max"; } description @@ -436,9 +440,9 @@ } container oper-control-list { must - "(count(./gate-control-entry) <= ../../supported-list-max)" { + "not (count(./gate-control-entry) > ../../supported-list-max)" { error-message - "Number of elements in oper-control-list must not be greater"+ + "Number of elements in oper-control-list must not be greater "+ "than supported-list-max"; } config false; @@ -453,11 +457,11 @@ } container admin-cycle-time { must - "(./numerator div ./denominator <= "+ + "not (./numerator div ./denominator > "+ "../../supported-cycle-max/numerator div "+ "../../supported-cycle-max/denominator)" { error-message - "admin-cycle-time must not be greater than"+ + "admin-cycle-time must not be greater than "+ "supported-cycle-max"; } description @@ -472,11 +476,11 @@ } container oper-cycle-time { must - "(./numerator div ./denominator <= "+ + "not (./numerator div ./denominator > "+ "../../supported-cycle-max/numerator div "+ "../../supported-cycle-max/denominator)" { error-message - "oper-cycle-time must not be greater than"+ + "oper-cycle-time must not be greater than "+ "supported-cycle-max"; } config false;
Impact on existing networks
Possible to use the Qcw YANG models in bridges that are not exclusively composed of interfaces that support scheduling. No negative impact expected.
Originator
Name:Florian KauerEmail:florian.kauer@linutronix.de
Affiliation:Linutronix GmbH
Submitted:2024-02-13