Dynamic Link Exchange Protocol (DLEP) Traffic Classification Data Item
Extracted elements (26)
A wildcard FID match (Num DSCPs = 0 or NumPCPs = 0) is supported to allow mapping any traffic that does not explicitly match a FID to a default queue, simplifying default handling for implementations that do not differentiate flows.
The Sub-Data Item format was inspired by Rick Taylor's 'Data Item Containers' concept, and the separation of credit windows from traffic classification was proposed at IETF 98, resulting in this document being derived from RFC 9894 discussions at IETF 101.
The Traffic Classification Data Item is designed to be independent of any specific usage (e.g., flow control) and extensible to future classification types such as 5-tuple IP flows, allowing reuse across different DLEP extensions.
The formats defined in this document are only used when extensions explicitly require their use; the DLEP base specification (RFC 8175) handles unexpected appearances of these Data Items.
A router MUST ensure each DS Field value is listed only once across the whole Traffic Classification Data Item (not just per Sub-Data Item). Duplicates MUST cause the Data Item to be treated as an error.
A router MUST ensure each Priority Field (PCP) value is listed only once across the whole Traffic Classification Data Item. Duplicates MUST cause the Data Item to be treated as an error.
A router receiving a Diffserv Traffic Classification Sub-Data Item MUST validate the information on receipt prior to use. Validation failures MUST be treated as errors per Section 2.1.1.
A router receiving the Traffic Classification Data Item MUST locate associated traffic classification information for the TID. If none exists, the router MUST initialize a new information set; if found, MUST replace it. In both cases, MUST update any associated data plane state.
The Data Item Length MUST NOT exceed the PDU length supported (e.g., 1400 bytes). If larger packets are supported, the maximum MUST be adjusted to be smaller than or equal to the maximum PDU.
The FID value 0xFFFF is reserved and MUST NOT be used in the Flow Identifier field of either Diffserv or Ethernet Traffic Classification Sub-Data Items.
The number of Traffic Classification Sub-Data Items present MUST match the value carried in the Num SDIs field.
The Pad field in the Ethernet Sub-Data Item MUST be set to zero by the sender and MUST be ignored on receipt.
The Reserved field in the Traffic Classification Data Item MUST be set to all zeros by the sender; it is currently ignored on reception.
The Sub-Data Item Type field MUST be used together with the Traffic Classification Data Item Type to identify the format of the Sub-Data Item, as Sub-Data Item Types are scoped within the carrying Data Item.
The Traffic Classification Data Item SHOULD be included by a modem in any Session Initialization Response Message when an extension requires its use.
When a packet matches both a DSCP in a Diffserv Sub-Data Item and a VID/PCP in an Ethernet Sub-Data Item, the TID associated with the matching VLAN/PCP MUST be used — Ethernet matching takes precedence.
The Flow Identifier (FID) is a 16-bit unsigned integer carried in each Sub-Data Item identifying a specific flow based on the data plane information in that Sub-Data Item. FID also has modem-local scope.
The Traffic Classification Data Item (type 29) allows a modem to provide a router with traffic classification information. It contains a Traffic Classification Identifier (TID), a count of Sub-Data Items, and a variable list of Traffic Classification Sub-Data Items.
The Traffic Classification Identifier (TID) is a 16-bit unsigned integer with modem-local scope identifying a traffic classification set. There is no restriction on values or requirement for sequential ordering.
IANA assigned Data Item Type value 29 ('Traffic Classification') in the DLEP 'Data Item Type Values' registry under the 'Specification Required' policy.
IANA created a new DLEP registry 'Traffic Classification Sub-Data Item Type Values' with range 1-65407 as Specification Required and 65408-65534 as Private Use. Initial entries: 0 (Reserved), 1 (Diffserv Traffic Classification), 2 (Ethernet Traffic Classification), 65535 (Reserved).
A malicious actor masquerading as a DLEP peer could inject an alternate Traffic Classification Data Item, altering the mapping of traffic to queues and causing delay, congestion, or loss in one or more service classes. Transport-layer security (BCP 195) and Layer 2 security (IEEE 802.1AE, IEEE 802.1X) can mitigate these threats.
The Diffserv Traffic Classification Sub-Data Item (type 1) contains a 16-bit FID, an 8-bit Num DSCPs count, and a list of 8-bit DS Fields each carrying a 6-bit DSCP and a 2-bit MBZ. Maximum length is 67 octets (3 + 64 DSCPs).
The Ethernet Traffic Classification Sub-Data Item (type 2) contains a 16-bit FID, a 4-bit NumPCPs, a 12-bit VLAN Identifier (VID), and a list of 4-bit Priority Fields (PCP values). An optional 4-bit Pad field is added when NumPCPs is odd. Maximum length is 8 octets.
The Traffic Classification Data Item encodes: a 16-bit Data Item Type (value 29), a 16-bit Length, a 16-bit TID, an 8-bit Num SDIs count, an 8-bit Reserved field (must be zero), followed by zero or more Sub-Data Items.
The Traffic Classification Sub-Data Item shares the standard DLEP Data Item format: a 16-bit Sub-Data Item Type, a 16-bit Length, and a variable-length Value field. Sub-Data Item Types are scoped within the Traffic Classification Data Item.