802.1 Tools
  • Home
  • Maintenance
    • All items
    • Open items
    • Closed items
    • Items for review
    • Status
  • Meetings
  • Help
  • Log in
Requested revision
Standard:802.1Qcp-2018Clause:48.6.3.2
Clause title:Incorrect traffic-class-table-grouping
Rationale for revision
The nodes for traffic-class-table-grouping (page 52) use an incorrect interpretation of the information model in 12.6.3. This makes it difficult-to-impossible to use the nodes to implement a mapping of traffic class to priority using YANG. In contrast, the nodes in clause 17's ieee8021BridgeTrafficClassTable are correctly aligned to 12.6.3, such that traffic class to priority mapping can be configured with SNMP. The mistake seems to have originated from use of Table 8-5 in 8.6.6. Table 8-5 is intended to recommend a default mapping based on the number of traffic classes (i.e. egress queues) supported by a product. Table 8-5 does not represent the information model. The "available traffic classes" of Table 8-5 is intended to be a single value per port, as is reflected in ieee8021BridgePortNumTrafficClasses of the MIB. In contrast, the YANG of traffic-class-table-grouping implements Table 8-5 literally, with a list of all possible "available traffic class" mappings (i.e. list of all possible default mappings). This sort of list does not exist in an actual product. It is not clear if/how this list can be used to configure an actual product.
Proposed text
The solution is to use the MIB as a guide to correctly model 12.6.3. The following lists some proposed steps: 1. Add leaf "number-of-traffic-classes" Add this leaf just above "container traffic-class" in the interface augment (page 75). Type is uint8, range 1..8. Reference 12.6.3.1. This leaf is analogous to ieee8021BridgePortNumTrafficClasses in MIB. In MIB, ieee8021BridgePortNumTrafficClasses is read-write, with a description that says "optionally read-only". The intent is presumably that the default is the maximum supported by the product, but configuration can write a smaller value. This raises the classical problem of overlapping configuration with state, in that a write now loses the information for the maximum supported. One could argue that such overlap is not good practice for YANG. If that is a concern, we can add an additional leaf "configure-number-of-traffic-classes" (config true), and make "number-of-traffic-classes" config false (read-only, to always obtain maximum). 2. Add new grouping "traffic-class-table-grouping-v2" This grouping is similar to ieee8021BridgeTrafficClassTable in MIB. It is a list indexed by priority. The elements of the list are priority, and traffic class. Reference 12.6.3.2. In the description, state that the default values for the table are specified in 8.6.6. 3. In the interface augment, add "container traffic-class-v2" This uses traffic-class-table-grouping-v2. 4. Deprecate existing traffic-class table In both "container traffic-class" and "grouping traffic-class-table-grouping", add the statement "status deprecated". As stated in RFC 7950 7.21.2: ""deprecated" indicates an obsolete definition, but it permits new/continued implementation in order to foster interoperability with older/existing implementations."
Impact on existing networks
As stated in item 4 above, if a product has successfully implemented the 802.1Qcp-2018 traffic class mapping, that continues to operate as is.
Originator
Name:Rodney CummingsEmail:Rodney.Cummings@ni.com
Affiliation:National Instruments
Submitted:2019-06-06