rfc9435v3.txt   rfc9435.txt 
Internet Engineering Task Force (IETF) A. Custura Internet Engineering Task Force (IETF) A. Custura
Request for Comments: 9435 G. Fairhurst Request for Comments: 9435 G. Fairhurst
Category: Informational R. Secchi Category: Informational R. Secchi
ISSN: 2070-1721 University of Aberdeen ISSN: 2070-1721 University of Aberdeen
May 2023 July 2023
Considerations for Assigning a New Recommended Differentiated Services Considerations for Assigning a New Recommended Differentiated Services
Code Point (DSCP) Code Point (DSCP)
Abstract Abstract
This document discusses considerations for assigning a new This document discusses considerations for assigning a new
recommended Differentiated Services Code Point (DSCP) for a standard recommended Differentiated Services Code Point (DSCP) for a standard
Per-Hop Behavior (PHB). It considers the common observed re-marking Per-Hop Behavior (PHB). It considers the common observed re-marking
behaviors that the Diffserv field might be subjected to along an behaviors that the Diffserv field might be subjected to along an
skipping to change at line 203 skipping to change at line 203
assignments (replacing the previous availability for experimental assignments (replacing the previous availability for experimental
or local use)" [RFC8436]. [RFC8622] assigned 0x01 from this pool or local use)" [RFC8436]. [RFC8622] assigned 0x01 from this pool
and consequentially updated [RFC4594]. Any future request to and consequentially updated [RFC4594]. Any future request to
assign 0x05 would be expected to similarly update [RFC4594]. assign 0x05 would be expected to similarly update [RFC4594].
Note that [RFC4594] previously recommended a Local Use of DSCP values Note that [RFC4594] previously recommended a Local Use of DSCP values
0x01, 0x03, 0x05, and 0x07 (codepoints with the format of 0b000xx1), 0x01, 0x03, 0x05, and 0x07 (codepoints with the format of 0b000xx1),
until this was updated by [RFC8436]. until this was updated by [RFC8436].
The DSCP space is shown in the following table. Each row corresponds The DSCP space is shown in the following table. Each row corresponds
to one setting of the the first three bits of the DSCP field, and to one setting of the first three bits of the DSCP field, and each
each column to one setting of the the last three bits of the DSCP column to one setting of the last three bits of the DSCP field.
field.
+--------+------+---------+----+---------+----+---------+----+ +--------+------+---------+----+---------+----+---------+----+
| 56/CS7 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | | 56/CS7 | 57 | 58 | 59 | 60 | 61 | 62 | 63 |
+--------+------+---------+----+---------+----+---------+----+ +--------+------+---------+----+---------+----+---------+----+
| 48/CS6 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | | 48/CS6 | 49 | 50 | 51 | 52 | 53 | 54 | 55 |
+--------+------+---------+----+---------+----+---------+----+ +--------+------+---------+----+---------+----+---------+----+
| 40/CS5 | 41 | 42 | 43 | 44/VA | 45 | 46/EF | 47 | | 40/CS5 | 41 | 42 | 43 | 44/VA | 45 | 46/EF | 47 |
+--------+------+---------+----+---------+----+---------+----+ +--------+------+---------+----+---------+----+---------+----+
| 32/CS4 | 33 | 34/AF41 | 35 | 36/AF42 | 37 | 38/AF43 | 39 | | 32/CS4 | 33 | 34/AF41 | 35 | 36/AF42 | 37 | 38/AF43 | 39 |
+--------+------+---------+----+---------+----+---------+----+ +--------+------+---------+----+---------+----+---------+----+
skipping to change at line 392 skipping to change at line 391
4.2. IP Type of Service Manipulations 4.2. IP Type of Service Manipulations
The IETF first defined ToS precedence for IP packets in [RFC0791] and The IETF first defined ToS precedence for IP packets in [RFC0791] and
updated it to be part of the ToS field in [RFC1349]. Since 1998, updated it to be part of the ToS field in [RFC1349]. Since 1998,
this practice has been deprecated by [RFC2474]. [RFC2474] defines this practice has been deprecated by [RFC2474]. [RFC2474] defines
DSCPs 0bxxx000 as the Class Selector codepoints, where PHBs selected DSCPs 0bxxx000 as the Class Selector codepoints, where PHBs selected
by these codepoints MUST meet the "Class Selector PHB Requirements" by these codepoints MUST meet the "Class Selector PHB Requirements"
described in Section 4.2.2.2 of [RFC2474]. described in Section 4.2.2.2 of [RFC2474].
However, a recent survey reports practices based on ToS semantics A recent survey reports practices based on ToS semantics have not yet
have not yet been eliminated from the Internet and need to still be been eliminated from the Internet and need to still be considered
considered when making new DSCP assignments [Cus17]. when making new DSCP assignments [Cus17].
4.2.1. Impact of ToS Precedence Bleaching 4.2.1. Impact of ToS Precedence Bleaching
Bleaching of the ToS Precedence field (see Section 4) resets the Bleaching of the ToS Precedence field (see Section 4) resets the
first three bits of the DSCP field to zero (the former ToS Precedence first three bits of the DSCP field to zero (the former ToS Precedence
field), leaving the last three bits unchanged (see Section 4.2.1 of field), leaving the last three bits unchanged (see Section 4.2.1 of
[RFC2474]). A Diffserv node can be configured in a way that results [RFC2474]). A Diffserv node can be configured in a way that results
in this re-marking. This re-marking can also occur when packets are in this re-marking. This re-marking can also occur when packets are
processed by a router that is not configured with Diffserv (e.g., processed by a router that is not configured with Diffserv (e.g.,
configured to operate on the former ToS Precedence field [RFC0791]). configured to operate on the former ToS Precedence field [RFC0791]).
skipping to change at line 597 skipping to change at line 596
both PCP1 (Background) and PCP2 (Spare) to indicate lower priority both PCP1 (Background) and PCP2 (Spare) to indicate lower priority
than PCP0, and some other devices do not assign a lower priority to than PCP0, and some other devices do not assign a lower priority to
PCP1. PCP1.
5.1.2. Mapping Specified for IEEE 802.11 5.1.2. Mapping Specified for IEEE 802.11
Section 6 of [RFC8325] provides a brief overview of IEEE 802.11 QoS. Section 6 of [RFC8325] provides a brief overview of IEEE 802.11 QoS.
The IEEE 802.11 standards [IEEE-802.11] provide Media Access Control The IEEE 802.11 standards [IEEE-802.11] provide Media Access Control
(MAC) functions to support QoS in WLANs using Access Categories (MAC) functions to support QoS in WLANs using Access Categories
(ACs). The upstream UP in the 802.11 header has a 3-bit QoS value. (ACs). The upstream UP in the 802.11 header has a 3-bit QoS value.
A DSCP can be mapped to the UP. [RFC8622] described the adding of A DSCP can be mapped to the UP. [RFC8622] added a mapping for the LE
mapping for the LE DSCP, mapping this to AC_BK (Background) DSCP to AC_BK (Background).
Most current Wi-Fi implementations use a default mapping that maps Most current Wi-Fi implementations use a default mapping that maps
the first three bits of the DSCP to the 802.11 UP value. This is an the first three bits of the DSCP to the 802.11 UP value. This is an
example of equipment still classifying on ToS Precedence (which could example of equipment still classifying on ToS Precedence (which could
be seen as a simple method to map IP layer Diffserv to layers be seen as a simple method to map IP layer Diffserv to layers
offering only 3-bit QoS codepoints). Then, in turn, this is mapped offering only 3-bit QoS codepoints). Then, in turn, this is mapped
to the four Wi-Fi Multimedia (WMM) Access Categories. The Wi-Fi to the four Wi-Fi Multimedia (WMM) Access Categories. The Wi-Fi
Alliance has also specified a more flexible mapping that follows Alliance has also specified a more flexible mapping that follows
[RFC8325] and provides functions at an Access Point (AP) to re-mark [RFC8325] and provides functions at an Access Point (AP) to re-mark
packets as well as a QoS Map that maps each DSCP to an AC packets as well as a QoS Map that maps each DSCP to an AC
skipping to change at line 634 skipping to change at line 633
dependent on the direction in which a packet is forwarded. It dependent on the direction in which a packet is forwarded. It
provides recommendations for mapping a DSCP to an IEEE 802.11 UP for provides recommendations for mapping a DSCP to an IEEE 802.11 UP for
interconnection between wired and wireless networks. The interconnection between wired and wireless networks. The
recommendation in Section 5.1.2 maps network control traffic, CS6 and recommendation in Section 5.1.2 maps network control traffic, CS6 and
CS7, as well as unassigned DSCPs, to UP 0 when forwarding in the CS7, as well as unassigned DSCPs, to UP 0 when forwarding in the
upstream direction (wireless-to-wired). It also recommends mapping upstream direction (wireless-to-wired). It also recommends mapping
CS6 and CS7 traffic to UP 7 when forwarding in the downstream CS6 and CS7 traffic to UP 7 when forwarding in the downstream
direction (Section 4.1 of [RFC8325]). direction (Section 4.1 of [RFC8325]).
For other UPs, [RFC8325] recommends a mapping in the upstream For other UPs, [RFC8325] recommends a mapping in the upstream
direction that derives the DSCP from the value of the UP multiplied direction (wireless-to-wired interconnections) that derives the DSCP
by 8. This mapping can result in a specific DSCP re-marking from the value of the UP multiplied by 8. This mapping, currently
behavior. used by some Access Points (APs), can result in a specific DSCP re-
marking behavior:
In the upstream direction (wireless-to-wired interconnections), this
mapping can result in a specific DSCP re-marking behavior. Some
Access Points (APs) currently use a default UP-to-DSCP mapping
[RFC8325]:
| wherein DSCP values are derived from UP values by multiplying the | wherein DSCP values are derived from UP values by multiplying the
| UP values by 8 (i.e., shifting the three UP bits to the left and | UP values by 8 (i.e., shifting the three UP bits to the left and
| adding three additional zeros to generate a DSCP value). This | adding three additional zeros to generate a DSCP value). This
| derived DSCP value is then used for QoS treatment between the | derived DSCP value is then used for QoS treatment between the
| wireless AP and the nearest classification and marking policy | wireless AP and the nearest classification and marking policy
| enforcement point (which may be the centralized wireless LAN | enforcement point (which may be the centralized wireless LAN
| controller, relatively deep within the network). Alternatively, | controller, relatively deep within the network). Alternatively,
| in the case where there is no other classification and marking | in the case where there is no other classification and marking
| policy enforcement point, then this derived DSCP value will be | policy enforcement point, then this derived DSCP value will be
skipping to change at line 668 skipping to change at line 663
+-+-+-+-+-+-+ +-+-+-+-+-+-+
|x x x|0 0 0| |x x x|0 0 0|
+-+-+-+-+-+-+ +-+-+-+-+-+-+
Figure 5: Bits in the Diffserv Field Modified by Re-marking Figure 5: Bits in the Diffserv Field Modified by Re-marking
Observed as a Result of UP-to-DSCP Mapping in Some 802.11 Observed as a Result of UP-to-DSCP Mapping in Some 802.11
Networks Networks
An alternative to UP-to-DSCP remapping uses the DSCP value of a An alternative to UP-to-DSCP remapping uses the DSCP value of a
downstream IP packet (e.g., the Control and Provisioning of Wireless downstream IP packet (e.g., the Control and Provisioning of Wireless
Access Points (CAPWAP) protocol [RFC5415] maps an IP packet Diffserv Access Points, CAPWAP, protocol [RFC5415] maps an IP packet Diffserv
field to the Diffserv field of the outer IP header in a CAPWAP field to the Diffserv field of the outer IP header in a CAPWAP
tunnel). tunnel).
Some current constraints of Wi-Fi mapping are discussed in Section 2 Some current constraints of Wi-Fi mapping are discussed in Section 2
of [RFC8325]. A QoS profile can be used to limit the maximum DSCP of [RFC8325]. A QoS profile can be used to limit the maximum DSCP
value used for the upstream and downstream traffic. value used for the upstream and downstream traffic.
5.2. Diffserv and MPLS 5.2. Diffserv and MPLS
Multi-Protocol Label Switching (MPLS) specified eight MPLS Traffic Multi-Protocol Label Switching (MPLS) specified eight MPLS Traffic
Classes (TCs), which restrict the number of different treatments Classes (TCs), which restrict the number of different treatments
[RFC5129]. [RFC5127] describes the aggregation of Diffserv TCs and [RFC5129]. [RFC5127] describes the aggregation of Diffserv service
introduces four Diffserv TAs. Traffic marked with multiple DSCPs can classes and introduces four Diffserv TAs. Traffic marked with
be forwarded in a single MPLS TC. multiple DSCPs can be forwarded in a single MPLS TC.
There are three Label Switching Router (LSR) models: the Pipe, the There are three Label Switching Router (LSR) models: the Pipe, the
Short Pipe, and the Uniform Model [RFC3270]. In the Uniform and Pipe Short Pipe, and the Uniform Model [RFC3270]. In the Uniform and Pipe
models, the egress MPLS router forwards traffic based on the received models, the egress MPLS router forwards traffic based on the received
MPLS TC. The Uniform Model includes an egress DSCP rewrite. With MPLS TC. The Uniform Model includes an egress DSCP rewrite. With
the Short Pipe Model, the egress MPLS router forwards traffic based the Short Pipe Model, the egress MPLS router forwards traffic based
on the Diffserv DSCP as present at the egress router. If the domain on the Diffserv DSCP as present at the egress router. If the domain
supports IP and MPLS QoS differentiation, controlled behavior supports IP and MPLS QoS differentiation, controlled behavior
requires the DSCP of an (outer) IP header to be assigned or re- requires the DSCP of an (outer) IP header to be assigned or re-
written by all domain ingress routers to conform with the domain's written by all domain ingress routers to conform with the domain's
skipping to change at line 950 skipping to change at line 945
1. Networks containing misconfigured devices that do not comply 1. Networks containing misconfigured devices that do not comply
with the relevant RFCs. with the relevant RFCs.
2. Networks containing devices that implement an obsolete 2. Networks containing devices that implement an obsolete
specification or contain software bugs. specification or contain software bugs.
3. Networks containing devices that re-mark the DSCP as a result 3. Networks containing devices that re-mark the DSCP as a result
of lower layer interactions. of lower layer interactions.
The DSCP re-marking corresponding to the Bleach-ToS-Precedence The DSCP re-marking corresponding to the Bleach-ToS-Precedence
Section 4 observed behavior can arise for various reasons, one of (Section 4) observed behavior can arise for various reasons, one of
which is old equipment that precedes Diffserv. The same re-marking which is old equipment that precedes Diffserv. The same re-marking
can also arise in some cases when traffic conditioning is provided by can also arise in some cases when traffic conditioning is provided by
Diffserv routers at operator boundaries or as a result of Diffserv routers at operator boundaries or as a result of
misconfiguration. misconfiguration.
6.5. Considerations to Guide the Discussion of a Proposed New DSCP 6.5. Considerations to Guide the Discussion of a Proposed New DSCP
A series of questions emerge that need to be answered when A series of questions emerge that need to be answered when
considering a proposal to the IETF that requests a new assignment. considering a proposal to the IETF that requests a new assignment.
These questions include: These questions include:
skipping to change at line 1143 skipping to change at line 1138
<https://lists.freebsd.org/pipermail/freebsd- <https://lists.freebsd.org/pipermail/freebsd-
stable/2010-July/057710.html>. stable/2010-July/057710.html>.
[MEF-23.1] MEF, "Implementation Agreement MEF 23.1 Carrier Ethernet [MEF-23.1] MEF, "Implementation Agreement MEF 23.1 Carrier Ethernet
Class of Service - Phase 2", MEF 23.1, January 2012, Class of Service - Phase 2", MEF 23.1, January 2012,
<https://mef.net/Assets/Technical_Specifications/PDF/ <https://mef.net/Assets/Technical_Specifications/PDF/
MEF_23.1.pdf>. MEF_23.1.pdf>.
[NQB-PHB] White, G. and T. Fossati, "A Non-Queue-Building Per-Hop [NQB-PHB] White, G. and T. Fossati, "A Non-Queue-Building Per-Hop
Behavior (NQB PHB) for Differentiated Services", Work in Behavior (NQB PHB) for Differentiated Services", Work in
Progress, Internet-Draft, draft-ietf-tsvwg-nqb-17, 25 Progress, Internet-Draft, draft-ietf-tsvwg-nqb-18, 10 July
March 2023, <https://datatracker.ietf.org/doc/html/draft- 2023, <https://datatracker.ietf.org/doc/html/draft-ietf-
ietf-tsvwg-nqb-17>. tsvwg-nqb-18>.
[RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791, [RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791,
DOI 10.17487/RFC0791, September 1981, DOI 10.17487/RFC0791, September 1981,
<https://www.rfc-editor.org/info/rfc791>. <https://www.rfc-editor.org/info/rfc791>.
[RFC1122] Braden, R., Ed., "Requirements for Internet Hosts - [RFC1122] Braden, R., Ed., "Requirements for Internet Hosts -
Communication Layers", STD 3, RFC 1122, Communication Layers", STD 3, RFC 1122,
DOI 10.17487/RFC1122, October 1989, DOI 10.17487/RFC1122, October 1989,
<https://www.rfc-editor.org/info/rfc1122>. <https://www.rfc-editor.org/info/rfc1122>.
 End of changes. 9 change blocks. 
25 lines changed or deleted 20 lines changed or added

This html diff was produced by rfcdiff 1.48.