rfc9956v2.txt   rfc9956.txt 
skipping to change at line 19 skipping to change at line 19
A Non-Queue-Building Per-Hop Behavior (NQB PHB) for Differentiated A Non-Queue-Building Per-Hop Behavior (NQB PHB) for Differentiated
Services Services
Abstract Abstract
This document specifies characteristics of a Non-Queue-Building Per- This document specifies characteristics of a Non-Queue-Building Per-
Hop Behavior (NQB PHB). The NQB PHB provides a shallow-buffered, Hop Behavior (NQB PHB). The NQB PHB provides a shallow-buffered,
best-effort service as a complement to a Default deep-buffered, best- best-effort service as a complement to a Default deep-buffered, best-
effort service for Internet services. The purpose of this NQB PHB is effort service for Internet services. The purpose of this NQB PHB is
to provide separate queue-enabling traffic microflows that are smooth to provide a separate queue that enables smooth (i.e., non-bursty),
(i.e., non-bursty), have a low data rate, and are application limited low-data-rate, application-limited traffic microflows, to avoid the
to avoid the delay, delay variation, and loss that would ordinarily delay, delay variation and loss that would ordinarily be caused by
be caused by sharing a queue with bursty, capacity-seeking traffic. sharing a queue with bursty, capacity-seeking traffic. This PHB is
This PHB is implemented without prioritization and can be implemented implemented without prioritization and can be implemented without
without rate policing, making it suitable for environments where the rate policing, making it suitable for environments where the use of
use of these features is restricted. The NQB PHB has been developed these features is restricted. The NQB PHB has been developed
primarily for use by access network segments, where queuing delay and primarily for use by access network segments, where queuing delay and
queuing loss caused by Queue-Building (QB) protocols are manifested; queuing loss caused by Queue-Building (QB) protocols are manifested;
however, its use is not limited to such segments. In particular, the however, its use is not limited to such segments. In particular, the
application of NQB PHB to cable broadband links, Wi-Fi links, and application of NQB PHB to cable broadband links, Wi-Fi links, and
mobile network radio/core segments are discussed in this document. mobile network radio/core segments are discussed in this document.
This document recommends a specific Differentiated Services Code This document recommends a specific Differentiated Services Code
Point (DSCP) to identify NQB microflows and updates the guidance in Point (DSCP) to identify NQB microflows and updates the guidance in
RFC 8325 on mapping Differentiated Services (Diffserv or DS) to IEEE RFC 8325 on mapping Differentiated Services (Diffserv or DS) to IEEE
802.11 for this codepoint. 802.11 for this codepoint.
skipping to change at line 71 skipping to change at line 71
include Revised BSD License text as described in Section 4.e of the include Revised BSD License text as described in Section 4.e of the
Trust Legal Provisions and are provided without warranty as described Trust Legal Provisions and are provided without warranty as described
in the Revised BSD License. in the Revised BSD License.
Table of Contents Table of Contents
1. Introduction 1. Introduction
2. Requirements Language 2. Requirements Language
3. Context 3. Context
3.1. NQB Behavior 3.1. NQB Behavior
3.2. Relationship to the DS Architecture 3.2. Relationship to the Diffserv Architecture
3.3. Relationship to L4S 3.3. Relationship to L4S
3.4. Applicability 3.4. Applicability
4. NQB Sender Requirements 4. NQB Sender Requirements
5. NQB PHB Requirements 5. NQB PHB Requirements
5.1. Primary Requirements 5.1. Primary Requirements
5.2. Traffic Protection 5.2. Traffic Protection
5.3. Limiting Packet Bursts from Links 5.3. Limiting Packet Bursts from Links
5.4. Treatment of the Explicit Congestion Notification Field 5.4. Treatment of the Explicit Congestion Notification Field
6. Operational Considerations 6. Operational Considerations
6.1. NQB Traffic Identification 6.1. NQB Traffic Identification
6.2. Aggregation of the NQB DSCP into Another DS PHB 6.2. Aggregation of the NQB DSCP into Another Diffserv PHB
6.3. Aggregation of Other DSCPs into the NQB PHB 6.3. Aggregation of Other DSCPs into the NQB PHB
6.4. Cross-Domain Usage and DSCP Re-marking 6.4. Cross-Domain Usage and DSCP Re-marking
6.4.1. Interoperability with Non-DS-Capable Domains 6.4.1. Interoperability with Non-DS-Capable Domains
6.5. The NQB DSCP and Tunnels 6.5. The NQB DSCP and Tunnels
6.6. Guidance for Lower-Rate Links 6.6. Guidance for Lower-Rate Links
7. Mapping NQB to Standards of Other SDOs 7. Mapping NQB to Standards of Other SDOs
7.1. DOCSIS Access Networks 7.1. DOCSIS Access Networks
7.2. Mobile Networks 7.2. Mobile Networks
7.3. Wi-Fi Networks 7.3. Wi-Fi Networks
7.3.1. Interoperability with Existing Wi-Fi Networks 7.3.1. Interoperability with Existing Wi-Fi Networks
7.3.2. The Updates to RFC 8325 7.3.2. The Updates to RFC 8325
8. IANA Considerations 8. IANA Considerations
9. Security Considerations 9. Security Considerations
10. References 10. References
10.1. Normative References 10.1. Normative References
10.2. Informative References 10.2. Informative References
Appendix A. DSCP Re-marking Policies Appendix A. DSCP Re-marking Policies
Appendix B. Comparison with Expedited Forwarding Appendix B. Comparison with Expedited Forwarding
Appendix C. Impact on Higher Layer Protocols Appendix C. Impact on Higher Layer Protocols
Appendix D. Alternative DS Codepoints Appendix D. Alternative Diffserv Codepoints
Acknowledgements Acknowledgements
Authors' Addresses Authors' Addresses
1. Introduction 1. Introduction
This document defines a DS PHB called the "Non-Queue-Building Per-Hop This document defines a Diffserv PHB called the "Non-Queue-Building
Behavior" (or "NQB PHB"). The NQB PHB isolates traffic microflows Per-Hop Behavior" (or "NQB PHB"). The NQB PHB isolates traffic
(application-to-application flows, see Section 1.2 of [RFC2475]) that microflows (application-to-application flows, see Section 1.2 of
have relatively low data rates and that do not, themselves, [RFC2475]) that have relatively low data rates and that do not,
materially contribute to queuing delay and loss. This isolation themselves, materially contribute to queuing delay and loss. This
allows these traffic microflows to avoid the queuing delay and losses isolation allows these traffic microflows to avoid the queuing delay
caused by other traffic. and losses caused by other traffic.
NQB microflows such as interactive voice, game sync packets, certain NQB microflows such as interactive voice, game sync packets, certain
machine-to-machine applications, DNS lookups, and some real-time machine-to-machine applications, DNS lookups, and some real-time
Internet of Things (IoT) analytics data are low-data-rate, Internet of Things (IoT) analytics data are low-data-rate,
application-limited microflows. These can be distinguished from application-limited microflows. These can be distinguished from
bursty traffic microflows and high-data-rate traffic microflows bursty traffic microflows and high-data-rate traffic microflows
managed by a classic congestion control algorithm (both of which managed by a classic congestion control algorithm (both of which
cause queuing delay and loss). The term "classic congestion control" cause queuing delay and loss). The term "classic congestion control"
is defined in [RFC9330] to mean congestion control that coexists with is defined in [RFC9330] to mean congestion control that coexists with
standard Reno congestion control [RFC5681]. In this document, we standard Reno congestion control [RFC5681]. In this document, we
skipping to change at line 233 skipping to change at line 233
candidates to be queued separately from the applications that are the candidates to be queued separately from the applications that are the
cause of queue buildup, delay, and loss. cause of queue buildup, delay, and loss.
In contrast, QB microflows include those that probe for link capacity In contrast, QB microflows include those that probe for link capacity
and induce delay and loss as a result, for example, microflows that and induce delay and loss as a result, for example, microflows that
use CUBIC, Reno, or other TCP/QUIC congestion control algorithms in a use CUBIC, Reno, or other TCP/QUIC congestion control algorithms in a
capacity-seeking manner. Other types of QB microflows include those capacity-seeking manner. Other types of QB microflows include those
that send at a high burst rate even if the long-term average data that send at a high burst rate even if the long-term average data
rate is much lower. rate is much lower.
3.2. Relationship to the DS Architecture 3.2. Relationship to the Diffserv Architecture
The IETF has defined the DS architecture [RFC2475] with the intention The IETF has defined the Diffserv architecture [RFC2475] with the
that it allows traffic to be marked in a manner that conveys the intention that it allows traffic to be marked in a manner that
performance requirements of that traffic either qualitatively or in a conveys the performance requirements of that traffic either
relative sense (e.g., priority). The architecture defines the use of qualitatively or in a relative sense (e.g., priority). The
the DS field [RFC2474] for this purpose, and numerous RFCs have been architecture defines the use of the DSCP field [RFC2474] for this
written that describe recommended interpretations of the values (DS purpose, and numerous RFCs have been written that describe
Codepoints [RFC2474]) of the field, and standardized treatments recommended interpretations of the values (Diffserv Codepoints
(traffic conditioning and per-hop-behaviors [RFC2475]) that can be [RFC2474]) of the field, and standardized treatments (traffic
implemented to satisfy the performance requirements of traffic so conditioning and per-hop-behaviors [RFC2475]) that can be implemented
marked. to satisfy the performance requirements of traffic so marked.
While this architecture is powerful and flexible enough to be While this architecture is powerful and flexible enough to be
configured to meet the performance requirements of a variety of configured to meet the performance requirements of a variety of
applications and traffic categories, or to achieve differentiated applications and traffic categories, or to achieve differentiated
service offerings, meeting the performance requirements of an service offerings, meeting the performance requirements of an
application across the entire sender-to-receiver path involves all application across the entire sender-to-receiver path involves all
the networks in the path agreeing on what those requirements are and the networks in the path agreeing on what those requirements are and
sharing an interest in meeting them. In many cases, this is made sharing an interest in meeting them. In many cases, this is made
more difficult since the performance "requirements" are not strict more difficult since the performance "requirements" are not strict
ones (e.g., applications will degrade in some manner as loss, delay, ones (e.g., applications will degrade in some manner as loss, delay,
and/or delay-variation increase), so the importance of meeting them and/or delay-variation increase), so the importance of meeting them
for any particular application in some cases involves a judgment as for any particular application in some cases involves a judgment as
to the value of avoiding some amount of degradation in quality for to the value of avoiding some amount of degradation in quality for
that application in exchange for an increase in the degradation of that application in exchange for an increase in the degradation of
another application. another application.
Further, in many cases, the implementation of DS PHBs has Further, in many cases, the implementation of Diffserv PHBs has
historically involved prioritization of service classes with respect historically involved prioritization of service classes with respect
to one another, which sets up the zero-sum game alluded to in the to one another, which sets up the zero-sum game alluded to in the
previous paragraph and which results in the need to limit access to previous paragraph and which results in the need to limit access to
higher priority classes via mechanisms such as access control, higher priority classes via mechanisms such as access control,
admission control, traffic conditioning and rate policing, and/or to admission control, traffic conditioning and rate policing, and/or to
meter and bill for carriage of such traffic. These mechanisms can be meter and bill for carriage of such traffic. These mechanisms can be
difficult or impossible to implement in the Internet. difficult or impossible to implement in the Internet.
In contrast, the NQB PHB has been designed with the goal that it In contrast, the NQB PHB has been designed with the goal that it
avoids many of these issues; thus, it could conceivably be deployed avoids many of these issues; thus, it could conceivably be deployed
skipping to change at line 286 skipping to change at line 286
reserved capacity other than any minimum capacity that it shares with reserved capacity other than any minimum capacity that it shares with
Default traffic. As a result, the NQB PHB does not aim to meet Default traffic. As a result, the NQB PHB does not aim to meet
specific application performance requirements. Instead, the sole specific application performance requirements. Instead, the sole
goal of the NQB PHB is to isolate NQB traffic from other traffic that goal of the NQB PHB is to isolate NQB traffic from other traffic that
causes an increase in loss, delay, and/or delay-variation, given that causes an increase in loss, delay, and/or delay-variation, given that
the NQB traffic is, itself, only an insignificant contributor to the NQB traffic is, itself, only an insignificant contributor to
those degradations. The PHB is also designed to reduce the those degradations. The PHB is also designed to reduce the
incentives for a sender to mis-mark its traffic since neither higher incentives for a sender to mis-mark its traffic since neither higher
capacity nor reserved capacity are being offered. These attributes capacity nor reserved capacity are being offered. These attributes
eliminate many of the trade-offs that underlie the handling of eliminate many of the trade-offs that underlie the handling of
differentiated service classes in the DS architecture as it has differentiated service classes in the Diffserv architecture as it has
previously been defined. These attributes also significantly previously been defined. These attributes also significantly
simplify access control and admission control functions, reducing simplify access control and admission control functions, reducing
them to simple verification of behavior. This aspect is discussed them to simple verification of behavior. This aspect is discussed
further in Sections 4 and 5.2. further in Sections 4 and 5.2.
Therefore, the NQB PHB is intended for the situation where the Therefore, the NQB PHB is intended for the situation where the
performance requirements of applications cannot be assured across the performance requirements of applications cannot be assured across the
whole sender-to-receiver path; as a result, applications cannot whole sender-to-receiver path; as a result, applications cannot
feasibly place requirements on the network. Instead, many feasibly place requirements on the network. Instead, many
applications have evolved to make the best out of the network applications have evolved to make the best out of the network
environment that they find themselves in. In this context, the NQB environment that they find themselves in. In this context, the NQB
PHB is intended to provide a better network environment for PHB is intended to provide a better network environment for
applications that send data at relatively low and non-bursty data applications that send data at relatively low and non-bursty data
rates. rates.
In regard to a comparison between the NQB PHB and other standardized In regard to a comparison between the NQB PHB and other standardized
PHBs in the DS series, the closest similarity is to the Expedited PHBs in the Diffserv series, the closest similarity is to the
Forwarding (EF) PHB [RFC3246], which also intends to enable services Expedited Forwarding (EF) PHB [RFC3246], which also intends to enable
that provide low loss, low delay, and low-delay variation. Unlike services that provide low loss, low delay, and low-delay variation.
EF, NQB has no requirement for a guaranteed minimum rate, nor does Unlike EF, NQB has no requirement for a guaranteed minimum rate, nor
have a requirement to police incoming traffic to such a rate: NQB is does have a requirement to police incoming traffic to such a rate:
expected to be given the same forwarding preference as Default NQB is expected to be given the same forwarding preference as Default
traffic. See Appendix B for a more detailed comparison of the NQB traffic. See Appendix B for a more detailed comparison of the NQB
and EF PHBs. and EF PHBs.
In nodes that support multiple DS Service Classes, NQB traffic is In nodes that support multiple Diffserv Service Classes, NQB traffic
intended to be handled as a part of the Default treatment. Traffic is intended to be handled as a part of the Default treatment.
assigned to this class does not receive better forwarding treatment Traffic assigned to this class does not receive better forwarding
(e.g., prioritization) with respect to other classes, AFxx, EF, etc. treatment (e.g., prioritization) with respect to other classes, AFxx,
Of course, traffic marked as NQB could (like other Default traffic) EF, etc. Of course, traffic marked as NQB could (like other Default
receive better forwarding treatment with respect to Lower-Effort (LE) traffic) receive better forwarding treatment with respect to Lower-
[RFC8622] (e.g., the NQB queue could be emptied in a priority Effort (LE) [RFC8622] (e.g., the NQB queue could be emptied in a
sequence before the LE queue). priority sequence before the LE queue).
3.3. Relationship to L4S 3.3. Relationship to L4S
In this document, the NQB DSCP and PHB have been defined to operate In this document, the NQB DSCP and PHB have been defined to operate
independently of the Low Latency, Low Loss, and Scalable throughput independently of the Low Latency, Low Loss, and Scalable throughput
(L4S) architecture [RFC9330]. Nonetheless, traffic marked with the (L4S) architecture [RFC9330]. Nonetheless, traffic marked with the
NQB DSCP is intended to be compatible with L4S [RFC9330], with the NQB DSCP is intended to be compatible with L4S [RFC9330], with the
result being that NQB traffic and L4S traffic can share the low- result being that NQB traffic and L4S traffic can share the low-
latency queue in an L4S DualQ node [RFC9332]. A network node's latency queue in an L4S DualQ node [RFC9332]. A network node's
compliance with the DualQ Coupled AQM requirements (see Section 2.5 compliance with the DualQ Coupled AQM requirements (see Section 2.5
skipping to change at line 416 skipping to change at line 416
insufficient. To be clear, the description of NQB-marked microflows insufficient. To be clear, the description of NQB-marked microflows
in this document is not to be interpreted as suggesting that in this document is not to be interpreted as suggesting that
applications generating such microflows are in any way exempt from applications generating such microflows are in any way exempt from
this responsibility. One way that an application marking its traffic this responsibility. One way that an application marking its traffic
as NQB can handle this is to implement a scalable congestion control as NQB can handle this is to implement a scalable congestion control
mechanism as described in [RFC9331]. mechanism as described in [RFC9331].
The DS field specification requires the definition of a recommended The DS field specification requires the definition of a recommended
DSCP to be associated with each standardized PHB (see Section 5 of DSCP to be associated with each standardized PHB (see Section 5 of
[RFC2474]). In accordance with this, applications are RECOMMENDED to [RFC2474]). In accordance with this, applications are RECOMMENDED to
use the DSCP 45 (decimal) to mark microflows as NQB. The choice of use the DSCP value 45 (decimal) to mark microflows as NQB. The
the DSCP value 45 (decimal) is motivated, in part, by the desire to choice of the DSCP value 45 (decimal) is motivated, in part, by the
achieve separate queuing in existing Wi-Fi networks (see Section 7.3) desire to achieve separate queuing in existing Wi-Fi networks (see
and by the desire to make implementation of the PHB simpler in Section 7.3) and by the desire to make implementation of the PHB
network equipment that has the ability to classify traffic based on simpler in network equipment that has the ability to classify traffic
ranges of DSCP values (see Section 6.3 for further discussion). based on ranges of DSCP values (see Section 6.3 for further
discussion).
The two primary considerations for whether an application chooses to The two primary considerations for whether an application chooses to
mark its traffic as NQB involve the risks of being subjected to a mark its traffic as NQB involve the risks of being subjected to a
traffic protection algorithm (see Section 5.2) and/or to the traffic protection algorithm (see Section 5.2) and/or to the
consequences of overrunning the NQB shallow buffer if (in either consequences of overrunning the NQB shallow buffer if (in either
case) the traffic contributes to the formation of a queue in a node case) the traffic contributes to the formation of a queue in a node
that supports the PHB. In both cases, the result could be that that supports the PHB. In both cases, the result could be that
excess traffic is discarded or queued separately as Default traffic excess traffic is discarded or queued separately as Default traffic
(and, thus, potentially is delivered out of order). To avoid these (and, thus, potentially is delivered out of order). To avoid these
risks, if a microflow's traffic exceeds the rate equation provided in risks, if a microflow's traffic exceeds the rate equation provided in
skipping to change at line 453 skipping to change at line 454
Section 5.2. Section 5.2.
5. NQB PHB Requirements 5. NQB PHB Requirements
For the NQB PHB to become widely deployed, it is important that For the NQB PHB to become widely deployed, it is important that
incentives are aligned correctly, i.e., that there is a benefit to incentives are aligned correctly, i.e., that there is a benefit to
the application in marking its packets correctly and a disadvantage the application in marking its packets correctly and a disadvantage
(or at least no benefit) to an application in intentionally mis- (or at least no benefit) to an application in intentionally mis-
marking its traffic. Thus, a useful property of nodes (i.e., network marking its traffic. Thus, a useful property of nodes (i.e., network
switches and routers) that support separate queues for NQB and QB switches and routers) that support separate queues for NQB and QB
microflows is that for microflows consistent with the NQB sender microflows is that each queue tends to be the better choice for the
requirements in Section 4, the NQB queue would likely be a better traffic it is designed for: the NQB queue for microflows consistent
choice than the QB queue; and for microflows inconsistent with those with the NQB sender requirements in Section 4 and the QB queue for
requirements, the QB queue would likely be a better choice than the those that are not. By adhering to these principles, there is little
NQB queue. By adhering to these principles, there is little
incentive for senders to mis-mark their traffic as NQB. incentive for senders to mis-mark their traffic as NQB.
This principle of incentive alignment ensures a system is robust to This principle of incentive alignment ensures a system is robust to
the behavior of the large majority of individuals and organizations the behavior of the large majority of individuals and organizations
who can be expected to act in their own interests (including who can be expected to act in their own interests (including
application developers and service providers who act in the interests application developers and service providers who act in the interests
of their users). Malicious behavior is not necessarily based on of their users). Malicious behavior is not necessarily based on
rational self-interest, so incentive alignment is not a sufficient rational self-interest, so incentive alignment is not a sufficient
defense, but the large majority of users do not act out of malice. defense, but the large majority of users do not act out of malice.
Protection against malicious attacks (and accidents) is addressed in Protection against malicious attacks (and accidents) is addressed in
skipping to change at line 526 skipping to change at line 526
could be considered less problematic than the reverse. That said, could be considered less problematic than the reverse. That said,
providing a higher-than-needed NQB scheduler weight does increase the providing a higher-than-needed NQB scheduler weight does increase the
likelihood that a non-compliant microflow mis-marked as NQB is able likelihood that a non-compliant microflow mis-marked as NQB is able
to use more than its fair share of network capacity. NQB microflows to use more than its fair share of network capacity. NQB microflows
are expected to each consume no more than 1% of the link capacity, are expected to each consume no more than 1% of the link capacity,
and in low stat-mux environments (such as at the edge of the network) and in low stat-mux environments (such as at the edge of the network)
would be unlikely in aggregate to consume 50% of the link capacity. would be unlikely in aggregate to consume 50% of the link capacity.
Thus, 50% seems a reasonable upper bound on the weight for the NQB Thus, 50% seems a reasonable upper bound on the weight for the NQB
PHB in these environments. PHB in these environments.
By default, a node supporting the NQB PHB SHOULD by classify packets By default, a node supporting the NQB PHB SHOULD classify packets
marked with the NQB DSCP 45 (decimal) into the queue for NQB traffic. marked with the DSCP value 45 (decimal) into the queue for NQB
In accordance with the requirement in Section 3 of [RFC2474], a node traffic. In accordance with the requirement in Section 3 of
supporting the NQB PHB MUST support the ability to configure the DSCP [RFC2474], a node supporting the NQB PHB MUST support the ability to
that is used to classify packets into the queue for NQB traffic. A configure the DSCP that is used to classify packets into the queue
node supporting the NQB PHB MAY support the ability to configure for NQB traffic. A node supporting the NQB PHB MAY support the
multiple DSCPs that are used to classify packets into the queue for ability to configure multiple DSCPs that are used to classify packets
NQB traffic. into the queue for NQB traffic.
Support for the NQB PHB is advantageous at bottleneck nodes. Many Support for the NQB PHB is advantageous at bottleneck nodes. Many
bottleneck nodes have a relatively deep buffer for Default traffic bottleneck nodes have a relatively deep buffer for Default traffic
(e.g., roughly equal to the base RTT of the expected connections, (e.g., roughly equal to the base RTT of the expected connections,
which could be tens or hundreds of milliseconds). Providing a which could be tens or hundreds of milliseconds). Providing a
similarly deep buffer for the NQB queue would be at cross purposes to similarly deep buffer for the NQB queue would be at cross purposes to
providing very low queueing delay and would erode the incentives for providing very low queueing delay and would erode the incentives for
QB traffic to be marked correctly at such a bottleneck node. The NQB QB traffic to be marked correctly at such a bottleneck node. The NQB
queue MUST have a buffer size that is significantly smaller than the queue MUST have a buffer size that is significantly smaller than the
buffer provided for Default traffic. It is RECOMMENDED to configure buffer provided for Default traffic. It is RECOMMENDED to configure
skipping to change at line 643 skipping to change at line 643
service in the absence of a traffic protection function needs to be service in the absence of a traffic protection function needs to be
considered. This is the motivation for the "SHOULD" requirement to considered. This is the motivation for the "SHOULD" requirement to
support traffic protection (in the previous paragraph). An NQB PHB support traffic protection (in the previous paragraph). An NQB PHB
implementation that does not support traffic protection risks being implementation that does not support traffic protection risks being
limited to deployment situations where traffic protection is limited to deployment situations where traffic protection is
potentially not necessary. One example of such a situation could be potentially not necessary. One example of such a situation could be
a controlled environment (e.g., enterprise LAN) where a network a controlled environment (e.g., enterprise LAN) where a network
administrator is expected to manage the usage of DSCPs. administrator is expected to manage the usage of DSCPs.
As it is defined here, traffic protection differs from Traffic As it is defined here, traffic protection differs from Traffic
Conditioning implemented in other DS contexts. Traffic Conditioning Conditioning implemented in other Diffserv contexts. Traffic
is commonly performed at the edge of a DS domain (either ingress or Conditioning is commonly performed at the edge of a DS domain (either
egress, depending on Traffic Conditioning Agreements (TCAs) in ingress or egress, depending on Traffic Conditioning Agreements
place). In contrast, traffic protection is intended to be (TCAs) in place). In contrast, traffic protection is intended to be
implemented in the nodes that implement the PHB. By placing the implemented in the nodes that implement the PHB. By placing the
traffic protection at the PHB node, an implementation can monitor the traffic protection at the PHB node, an implementation can monitor the
actual NQB queue and take action only if a queue begins to form. actual NQB queue and take action only if a queue begins to form.
Implementation of traffic protection at PHB nodes that are most Implementation of traffic protection at PHB nodes that are most
likely to be a bottleneck is particularly important because these are likely to be a bottleneck is particularly important because these are
the nodes that would be expected to show the most queue buildup in the nodes that would be expected to show the most queue buildup in
the presence of QB traffic mis-marked as NQB. the presence of QB traffic mis-marked as NQB.
This specification does not mandate a particular algorithm for This specification does not mandate a particular algorithm for
traffic protection. This is intentional since this will probably be traffic protection. This is intentional since this will probably be
skipping to change at line 773 skipping to change at line 773
3. A downstream bottleneck that implements the NQB PHB could have 3. A downstream bottleneck that implements the NQB PHB could have
implemented a traffic protection mechanism (Section 5.2) that implemented a traffic protection mechanism (Section 5.2) that
responds to queuing delay by re-marking/reclassifying/dropping responds to queuing delay by re-marking/reclassifying/dropping
packets. Bursty arrivals caused by an upstream link could packets. Bursty arrivals caused by an upstream link could
introduce queuing delay in the NQB queue and these would be more introduce queuing delay in the NQB queue and these would be more
likely to be subjected to traffic protection effects. likely to be subjected to traffic protection effects.
This document does not set any quantified requirements for links to This document does not set any quantified requirements for links to
limit bursts; this is primarily because link technologies are outside limit bursts; this is primarily because link technologies are outside
the remit of DS specifications. However, it would not seem necessary the remit of Diffserv specifications. However, it would not seem
to limit bursts lower than roughly 10% of the minimum base RTT necessary to limit bursts lower than roughly 10% of the minimum base
expected in the typical deployment scenario (e.g., 250 µs burst RTT expected in the typical deployment scenario (e.g., 250 µs burst
duration for links within the public Internet). This observation duration for links within the public Internet). This observation
aligns with a similar one in Section 5.5 of [RFC9331]. aligns with a similar one in Section 5.5 of [RFC9331].
5.4. Treatment of the Explicit Congestion Notification Field 5.4. Treatment of the Explicit Congestion Notification Field
NQB network functions MUST treat packets marked with the NQB DSCP NQB network functions MUST treat packets marked with the NQB DSCP
uniformly, regardless of the value of the ECN field. Here, the term uniformly, regardless of the value of the ECN field. Here, the term
"NQB network functions" refers to the traffic protection function "NQB network functions" refers to the traffic protection function
(defined in Section 5.2) and any re-marking/traffic policing function (defined in Section 5.2) and any re-marking/traffic policing function
designed to protect unmanaged networks (as described in designed to protect unmanaged networks (as described in
skipping to change at line 803 skipping to change at line 803
unmanaged and inter-network scenarios. Additionally, Section 6.2 unmanaged and inter-network scenarios. Additionally, Section 6.2
contains configuration recommendations for nodes that do not support contains configuration recommendations for nodes that do not support
the NQB PHB. Section 6.4.1 contains configuration recommendations the NQB PHB. Section 6.4.1 contains configuration recommendations
for networks that interconnect with non-DS-capable domains. for networks that interconnect with non-DS-capable domains.
6.1. NQB Traffic Identification 6.1. NQB Traffic Identification
As required in Section 5, nodes supporting the NQB PHB provide for As required in Section 5, nodes supporting the NQB PHB provide for
the configuration of classifiers that can be used to differentiate the configuration of classifiers that can be used to differentiate
between QB and NQB traffic of equivalent importance. The assigned between QB and NQB traffic of equivalent importance. The assigned
NQB DSCP (45 decimal) is recommended for use as the default NQB DSCP value (45 decimal) is recommended for use as the default
classifier to distinguish NQB traffic from traffic classified as classifier to distinguish NQB traffic from traffic classified as
Default (DSCP 0) (see Sections 4 and 5.1). Default (DSCP 0) (see Sections 4 and 5.1).
6.2. Aggregation of the NQB DSCP into Another DS PHB 6.2. Aggregation of the NQB DSCP into Another Diffserv PHB
It is RECOMMENDED that networks and nodes that do not support the NQB It is RECOMMENDED that networks and nodes that do not support the NQB
PHB be configured to treat traffic marked with the NQB DSCP the same PHB be configured to treat traffic marked with the NQB DSCP the same
as traffic with the Default DSCP. This includes networks (such as as traffic with the Default DSCP. This includes networks (such as
MPLS) and nodes that aggregate service classes as discussed in MPLS) and nodes that aggregate service classes as discussed in
[RFC5127] and [RFC8100]; in this case, this recommendation would [RFC5127] and [RFC8100]; in this case, this recommendation would
result in traffic marked with the NQB DSCP being aggregated into the result in traffic marked with the NQB DSCP being aggregated into the
Elastic Treatment Aggregate (for networks as described in [RFC5127]) Elastic Treatment Aggregate (for networks as described in [RFC5127])
or the Default / Elastic Treatment Aggregate (for networks as or the Default / Elastic Treatment Aggregate (for networks as
described in [RFC8100]). described in [RFC8100]).
skipping to change at line 847 skipping to change at line 847
Aggregating traffic marked with the NQB DSCP into a PHB designed for Aggregating traffic marked with the NQB DSCP into a PHB designed for
real-time, delay-sensitive traffic (e.g., the Real-Time Treatment real-time, delay-sensitive traffic (e.g., the Real-Time Treatment
Aggregate [RFC5127] or the Bulk Real-Time Treatment Aggregate Aggregate [RFC5127] or the Bulk Real-Time Treatment Aggregate
[RFC8100]), might better preserve the loss, delay, and delay- [RFC8100]), might better preserve the loss, delay, and delay-
variation performance in the presence of congestion; however, it variation performance in the presence of congestion; however, it
would need to be done with consideration of the risk of creating an would need to be done with consideration of the risk of creating an
incentive for non-compliant traffic to be mis-marked as NQB. incentive for non-compliant traffic to be mis-marked as NQB.
6.3. Aggregation of Other DSCPs into the NQB PHB 6.3. Aggregation of Other DSCPs into the NQB PHB
The DS model provides flexibility for operators to control the way The Diffserv model provides flexibility for operators to control the
they choose to aggregate traffic marked with a specific DSCP. way they choose to aggregate traffic marked with a specific DSCP.
Operators of nodes that support the NQB PHB could choose to aggregate Operators of nodes that support the NQB PHB could choose to aggregate
other service classes into the NQB queue. This is particularly other service classes into the NQB queue. This is particularly
useful in cases where specialized PHBs for these other service useful in cases where specialized PHBs for these other service
classes had not been provided at a potential bottleneck, perhaps classes had not been provided at a potential bottleneck, perhaps
because it was too complex to manage traffic contracts and because it was too complex to manage traffic contracts and
conditioning. Candidate service classes for this aggregation would conditioning. Candidate service classes for this aggregation would
include those that carry low-data-rate inelastic traffic that has low include those that carry low-data-rate inelastic traffic that has low
to very-low tolerance for loss, delay, and/or delay variation. to very-low tolerance for loss, delay, and/or delay variation.
Operators would need to use their own judgment based on the actual Operators would need to use their own judgment based on the actual
traffic characteristics in their networks in deciding whether or not traffic characteristics in their networks in deciding whether or not
skipping to change at line 890 skipping to change at line 890
used within a DS domain (e.g., an Autonomous System (AS) or an used within a DS domain (e.g., an Autonomous System (AS) or an
enterprise network), this PHB is expected to be used across the enterprise network), this PHB is expected to be used across the
Internet, wherever suitable operator agreements apply. Under the Internet, wherever suitable operator agreements apply. Under the
model described in [RFC2474], this requires that the corresponding model described in [RFC2474], this requires that the corresponding
DSCP is recognized and mapped across network boundaries accordingly. DSCP is recognized and mapped across network boundaries accordingly.
If NQB support is extended across a DS domain boundary, the If NQB support is extended across a DS domain boundary, the
interconnected networks agreeing to support NQB SHOULD use the DSCP interconnected networks agreeing to support NQB SHOULD use the DSCP
value 45 (decimal) for NQB at network interconnection, unless a value 45 (decimal) for NQB at network interconnection, unless a
different DSCP is explicitly documented in the TCA (see [RFC2475]) different DSCP is explicitly documented in the TCA (see [RFC2475])
for that interconnection. If Section 4 of [RFC8100] is operational for that interconnection. If a Diffserv-Intercon Interconnection
between interconnected domains, the receiving domain may prefer a Class (see Section 4 of [RFC8100]) is operational between
different DSCP for NQB traffic that allows for a DSCP range-based interconnected domains, the receiving domain may prefer a different
DSCP for NQB traffic that allows for a DSCP range-based
classification for the Default / Elastic Treatment Aggregate. classification for the Default / Elastic Treatment Aggregate.
Similar to the handling of DSCPs for other PHBs (and as discussed in Similar to the handling of DSCPs for other PHBs (and as discussed in
[RFC2475]), networks can re-mark NQB traffic to a DSCP value other [RFC2475]), networks can re-mark NQB traffic to a DSCP value other
than 45 (decimal) for internal usage. To ensure reliable NQB PHB than 45 (decimal) for internal usage. To ensure reliable NQB PHB
treatment on the entire path, the appropriate NQB DSCP would need to treatment on the entire path, the appropriate NQB DSCP would need to
be restored when forwarding to another network. be restored when forwarding to another network.
6.4.1. Interoperability with Non-DS-Capable Domains 6.4.1. Interoperability with Non-DS-Capable Domains
As discussed in Section 4 of [RFC2475], there may be cases where a As discussed in Section 4 of [RFC2475], there may be cases where a
network operator that supports DS is delivering traffic to another network operator that supports Diffserv is delivering traffic to
network domain (e.g., a network outside of their administrative another network domain (e.g., a network outside of their
control) where there is an understanding that the downstream domain administrative control) where there is an understanding that the
does not support DS or there is no knowledge of the traffic downstream domain does not support Diffserv or there is no knowledge
management capabilities of the downstream domain, and no agreement in of the traffic management capabilities of the downstream domain, and
place. In such cases, Section 4 of [RFC2475] suggests that the no agreement in place. In such cases, Section 4 of [RFC2475]
upstream domain opportunistically re-mark traffic with a Class suggests that the upstream domain opportunistically re-mark traffic
Selector Codepoint or DSCP 0 (Default) under the assumption that with a Class Selector Codepoint or DSCP 0 (Default) under the
traffic so marked would be handled in a predictable way by the assumption that traffic so marked would be handled in a predictable
downstream domain. way by the downstream domain.
In the case of a network that supports the NQB PHB (and carries In the case of a network that supports the NQB PHB (and carries
traffic marked with the recommended NQB DSCP value), the same traffic marked with the recommended DSCP value 45 (decimal)), the
concerns apply. In particular, since the recommended NQB DSCP value same concerns apply. In particular, since the recommended NQB DSCP
could be given high priority in some non-DS-compliant network value 45 (decimal) could be given high priority in some non-DS-
equipment (e.g., legacy Wi-Fi APs as described in Section 7.3.1), it compliant network equipment (e.g., legacy Wi-Fi APs as described in
is RECOMMENDED that the operator of the upstream domain implement one Section 7.3.1), it is RECOMMENDED that the operator of the upstream
of the following safeguards before delivering traffic into a non-DS- domain implement one of the following safeguards before delivering
capable domain: traffic into a non-DS-capable domain:
1. One option for such a safeguard is to re-mark NQB traffic to DSCP 1. One option for such a safeguard is to re-mark NQB traffic to DSCP
0 (Default) (or another Class Selector DSCP) before delivering 0 (Default) (or another Class Selector DSCP) before delivering
traffic into a non-DS-capable domain, in accordance with the traffic into a non-DS-capable domain, in accordance with the
suggestion in Section 4 of [RFC2475]. Network equipment designed suggestion in Section 4 of [RFC2475]. Network equipment designed
for such environments SHOULD, by default, re-mark NQB traffic to for such environments SHOULD, by default, re-mark NQB traffic to
DSCP 0 (Default) and SHOULD support the ability to change and DSCP 0 (Default) and SHOULD support the ability to change and
disable this re-marking. Re-marking NQB traffic to DSCP 0 disable this re-marking. Re-marking NQB traffic to DSCP 0
(Default) could be considered the "safest" approach since the (Default) could be considered the "safest" approach since the
upstream domain can thereby ensure that NQB traffic is not given upstream domain can thereby ensure that NQB traffic is not given
skipping to change at line 1117 skipping to change at line 1118
[IEEE802-11] generally supports either four or eight transmit queues [IEEE802-11] generally supports either four or eight transmit queues
and four sets of associated EDCA parameters (corresponding to the and four sets of associated EDCA parameters (corresponding to the
four Wi-Fi Multimedia (WMM) Access Categories) that are used to four Wi-Fi Multimedia (WMM) Access Categories) that are used to
enable differentiated medium access characteristics. The four WMM enable differentiated medium access characteristics. The four WMM
Access Categories, referred to as Voice Access Category (AC_VO), Access Categories, referred to as Voice Access Category (AC_VO),
Video Access Category (AC_VI), Best Effort Access Category (AC_BE), Video Access Category (AC_VI), Best Effort Access Category (AC_BE),
and Background Access Category (AC_BK), provide four levels of and Background Access Category (AC_BK), provide four levels of
prioritized access to the wireless medium. As discussed in prioritized access to the wireless medium. As discussed in
[RFC8325], it has been a common practice for Wi-Fi implementations to [RFC8325], it has been a common practice for Wi-Fi implementations to
use a default DSCP to User Priority (UP) mapping that utilizes the use a default DSCP to User Priority (UP) mapping that utilizes the
most significant three bits of the DS field to select "User most significant three bits of the DSCP field to select "User
Priority", which is then mapped to the four WMM Access Categories. Priority", which is then mapped to the four WMM Access Categories.
[RFC8325] also provides an alternative mapping that more closely [RFC8325] also provides an alternative mapping that more closely
aligns with the DSCP recommendations provided by the IETF. In the aligns with the DSCP recommendations provided by the IETF. In the
case of some managed Wi-Fi equipment, this mapping can be controlled case of some managed Wi-Fi equipment, this mapping can be controlled
by the network operator, e.g., via TR-369 [TR-369]. by the network operator, e.g., via TR-369 [TR-369].
In addition to the requirements provided in other sections of this In addition to the requirements provided in other sections of this
document, to support the NQB PHB, Wi-Fi equipment (including document, to support the NQB PHB, Wi-Fi equipment (including
equipment compliant with [RFC8325]) SHOULD map the NQB DSCP 45 equipment compliant with [RFC8325]) SHOULD map the DSCP value 45
(decimal) into a separate queue in the same Access Category as the (decimal) into a separate queue in the same Access Category as the
queue that carries Default traffic (i.e., the Best Effort Access queue that carries Default traffic (i.e., the Best Effort Access
Category). It is RECOMMENDED that Wi-Fi equipment provide a separate Category). It is RECOMMENDED that Wi-Fi equipment provide a separate
queue in UP 0 and map the NQB DSCP 45 (decimal) to that queue. If a queue in UP 0 and map the DSCP value 45 (decimal) to that queue. If
separate queue in UP 0 cannot be provided (due to hardware a separate queue in UP 0 cannot be provided (due to hardware
limitations, etc.), a Wi-Fi device MAY map the NQB DSCP 45 (decimal) limitations, etc.), a Wi-Fi device MAY map the DSCP value 45
to UP 3. (decimal) to UP 3.
7.3.1. Interoperability with Existing Wi-Fi Networks 7.3.1. Interoperability with Existing Wi-Fi Networks
While some existing Wi-Fi equipment might be capable (in some cases While some existing Wi-Fi equipment might be capable (in some cases
via firmware update) of supporting the NQB PHB requirements, many via firmware update) of supporting the NQB PHB requirements, many
currently deployed devices cannot be configured in this way. As a currently deployed devices cannot be configured in this way. As a
result, the remainder of this section discusses interoperability with result, the remainder of this section discusses interoperability with
these existing Wi-Fi networks, as opposed to PHB compliance. these existing Wi-Fi networks, as opposed to PHB compliance.
Since this equipment is widely deployed, and the Wi-Fi link can Since this equipment is widely deployed, and the Wi-Fi link can
skipping to change at line 1166 skipping to change at line 1167
equal to that used for Default traffic (Section 5.1) equal to that used for Default traffic (Section 5.1)
The DSCP value 45 (decimal) is recommended for NQB (see Section 4). The DSCP value 45 (decimal) is recommended for NQB (see Section 4).
This maps NQB to UP 5 using the default mapping, which is in the This maps NQB to UP 5 using the default mapping, which is in the
Video Access Category. While this choice of DSCP enables these Wi-Fi Video Access Category. While this choice of DSCP enables these Wi-Fi
systems to support the NQB PHB requirement for separate queuing, systems to support the NQB PHB requirement for separate queuing,
existing Wi-Fi devices generally utilize EDCA parameters that result existing Wi-Fi devices generally utilize EDCA parameters that result
in statistical prioritization of the Video Access Category above the in statistical prioritization of the Video Access Category above the
Best Effort Access Category. In addition, this equipment does not Best Effort Access Category. In addition, this equipment does not
support the remaining NQB PHB recommendations in Section 5. The support the remaining NQB PHB recommendations in Section 5. The
rationale for the choice of DSCP 45 (decimal) as well as its rationale for the choice of DSCP value 45 (decimal) as well as its
ramifications and remedies for its limitations are discussed further ramifications and remedies for its limitations are discussed further
below. below.
The choice of separated queuing rather than equal forwarding The choice of separated queuing rather than equal forwarding
preference in existing Wi-Fi networks was motivated by the following: preference in existing Wi-Fi networks was motivated by the following:
* Separate queuing is necessary in order to provide a benefit for * Separate queuing is necessary in order to provide a benefit for
traffic marked with the NQB DSCP. traffic marked with the NQB DSCP.
* The arrangement of queues in Wi-Fi equipment is typically fixed, * The arrangement of queues in Wi-Fi equipment is typically fixed,
skipping to change at line 1201 skipping to change at line 1202
* Several existing client applications that are compatible with the * Several existing client applications that are compatible with the
NQB sender requirements already select the Video Access Category; NQB sender requirements already select the Video Access Category;
thus, they would not see a degradation in performance by thus, they would not see a degradation in performance by
transitioning to the NQB DSCP, regardless of whether the network transitioning to the NQB DSCP, regardless of whether the network
supported the PHB. supported the PHB.
* Application instances on Wi-Fi client devices are already free to * Application instances on Wi-Fi client devices are already free to
choose any Access Category that they wish, regardless of their choose any Access Category that they wish, regardless of their
sending behavior, without any policing of usage. So, the choice sending behavior, without any policing of usage. So, the choice
of using DSCP 45 (decimal) for NQB creates no new avenues for non- of using DSCP value 45 (decimal) for NQB creates no new avenues
NQB-compliant client applications to exploit the prioritization for non-NQB-compliant client applications to exploit the
function in Wi-Fi. prioritization function in Wi-Fi.
* For application traffic that originates outside of the Wi-Fi * For application traffic that originates outside of the Wi-Fi
network, and, thus, is transmitted by the Access Point, the choice network, and, thus, is transmitted by the Access Point, the choice
of DSCP 45 does create a potential for abuse by non-compliant of DSCP value 45 (decimal) does create a potential for abuse by
applications. However, opportunities exist in the network non-compliant applications. However, opportunities exist in the
components upstream of the Wi-Fi Access Point to police the usage network components upstream of the Wi-Fi Access Point to police
of the NQB DSCP and potentially re-mark traffic that is considered the usage of the NQB DSCP and potentially re-mark traffic that is
non-compliant, as is recommended in Section 6.4.1. Furthermore, considered non-compliant, as is recommended in Section 6.4.1.
it is reasonable to expect that ISPs currently manage the DSCPs on Furthermore, it is reasonable to expect that ISPs currently manage
traffic destined to their customers' networks and will continue to the DSCPs on traffic destined to their customers' networks and
do so whether or not they support NQB. This includes the practice will continue to do so whether or not they support NQB. This
in residential broadband networks of re-marking the DS field to includes the practice in residential broadband networks of re-
zero on all traffic. Any change to these practices done to enable marking the DSCP field to zero on all traffic. Any change to
the NQB DSCP to pass through could be done alongside the these practices done to enable the NQB DSCP to pass through could
implementation of the recommendations in Section 6.4.1. be done alongside the implementation of the recommendations in
Section 6.4.1.
The choice of Video Access Category rather than the Voice Access The choice of Video Access Category rather than the Voice Access
Category was motivated by the desire to minimize the potential for Category was motivated by the desire to minimize the potential for
degradation of Best Effort Access Category traffic. The choice of degradation of Best Effort Access Category traffic. The choice of
Video Access Category rather than the Background Access Category was Video Access Category rather than the Background Access Category was
motivated by the much greater potential of degradation to NQB traffic motivated by the much greater potential of degradation to NQB traffic
that would be caused by the vast majority of traffic in most Wi-Fi that would be caused by the vast majority of traffic in most Wi-Fi
networks, which utilizes the Best Effort Access Category. networks, which utilizes the Best Effort Access Category.
As stated above, the use of DSCP 45 (decimal) for NQB is not expected As stated above, the use of DSCP value 45 (decimal) for NQB is not
to create incentives for abuse by non-compliant applications in the expected to create incentives for abuse by non-compliant applications
Wi-Fi uplink direction. The fact that the NQB DSCP brings with it in the Wi-Fi uplink direction. The fact that the NQB DSCP brings
the potential for degradation of non-compliant applications (traffic with it the potential for degradation of non-compliant applications
protection and/or a shallow queue resulting in reordering and/or (traffic protection and/or a shallow queue resulting in reordering
packet loss at some hop along the path) plus the existence of and/or packet loss at some hop along the path) plus the existence of
multiple other DSCP values that don't carry the risk of degradation multiple other DSCP values that don't carry the risk of degradation
and that could be readily used to obtain prioritization (AC_VI or and that could be readily used to obtain prioritization (AC_VI or
even AC_VO) leads to the conclusion that NQB non-compliant even AC_VO) leads to the conclusion that NQB non-compliant
applications that are seeking prioritization in the Wi-Fi uplink applications that are seeking prioritization in the Wi-Fi uplink
would be better off selecting one of those other DSCPs. This would be better off selecting one of those other DSCPs. This
conclusion is not expected to be disturbed by network support for NQB conclusion is not expected to be disturbed by network support for NQB
increasing the likelihood of DSCP 45 traffic traversing network increasing the likelihood of DSCP value 45 (decimal) traffic
boundaries without change to the DSCP, as that likelihood of traversing network boundaries without change to the DSCP, as that
increased network boundary traversal is balanced by a likelihood of likelihood of increased network boundary traversal is balanced by a
NQB traffic encountering the traffic-limiting aspects of NQB support, likelihood of NQB traffic encountering the traffic-limiting aspects
traffic protection, and shallow buffers, which limit the potential of NQB support, traffic protection, and shallow buffers, which limit
for abuse. the potential for abuse.
In the case of traffic originating outside of the Wi-Fi network, the In the case of traffic originating outside of the Wi-Fi network, the
prioritization of traffic marked with the NQB DSCP via the Video prioritization of traffic marked with the NQB DSCP via the Video
Access Category (if left unchanged) could potentially erode the Access Category (if left unchanged) could potentially erode the
principle of alignment of incentives discussed in Section 5. In principle of alignment of incentives discussed in Section 5. In
order to preserve the incentives principle for NQB, Wi-Fi systems MAY order to preserve the incentives principle for NQB, Wi-Fi systems MAY
be configured such that the EDCA parameters for the Video Access be configured such that the EDCA parameters for the Video Access
Category match those of the Best Effort Access Category, which will Category match those of the Best Effort Access Category, which will
mean AC_VI is at the same priority level as AC_BE. These changes mean AC_VI is at the same priority level as AC_BE. These changes
might not be possible on all Access Points; in any case, the might not be possible on all Access Points; in any case, the
requirements and recommendations in Section 6.4.1 would apply in this requirements and recommendations in Section 6.4.1 would apply in this
situation. situation.
Systems that utilize [RFC8325] but cannot provide a separate AC_BE Systems that utilize [RFC8325] but cannot provide a separate AC_BE
queue for NQB traffic SHOULD map the NQB DSCP 45 (decimal) (or the queue for NQB traffic SHOULD map the DSCP value 45 (decimal) (or the
locally determined alternative) to UP 5 in the Video Access Category locally determined alternative) to UP 5 in the Video Access Category
as well (see Section 7.3.2). as well (see Section 7.3.2).
7.3.2. The Updates to RFC 8325 7.3.2. The Updates to RFC 8325
Section 4.2.9 of [RFC8325] describes the recommendation for the Section 4.2.9 of [RFC8325] describes the recommendation for the
handling of Standard service class traffic that carries the Default handling of Standard service class traffic that carries the Default
DSCP. This update to [RFC8325] changes the title of Section 4.2.9 of DSCP. This update to [RFC8325] changes the title of Section 4.2.9 of
[RFC8325] from "Standard" to "Standard and Non-Queue-Building". This [RFC8325] from "Standard" to "Standard and Non-Queue-Building". This
update additionally adds a paragraph at the end of Section 4.2.9 of update additionally adds a paragraph at the end of Section 4.2.9 of
[RFC8325] as follows: [RFC8325] as follows:
| RFC 9956 defines a shallow-buffered, best-effort service for | RFC 9956 defines a shallow-buffered, best-effort service for
| traffic marked with the NQB DSCP 45 (decimal) and recommends the | traffic described as Non-Queue-Building and recommends the
| following treatment in Wi-Fi equipment. It is RECOMMENDED that | following treatment in Wi-Fi equipment. It is RECOMMENDED that
| Wi-Fi equipment map the NQB DSCP 45 (decimal) into a separate | Wi-Fi equipment map Non-Queue-Building traffic into a separate
| queue in the same Access Category as the queue that carries | queue in the same Access Category as the queue that carries
| Default traffic (i.e., the Best Effort Access Category). It is | Default traffic (i.e., the Best Effort Access Category). It is
| RECOMMENDED that Wi-Fi equipment provide a separate queue in UP 0 | RECOMMENDED that Wi-Fi equipment provide a separate queue in UP 0
| and map the NQB DSCP 45 (decimal) to that queue. If a separate | and map Non-Queue-Building traffic to that queue. If a separate
| queue in UP 0 cannot be provided (due to hardware limitations, | queue in UP 0 cannot be provided (due to hardware limitations,
| etc.), a Wi-Fi device MAY map the NQB DSCP 45 (decimal) to UP 3. | etc.), a Wi-Fi device MAY map Non-Queue-Building traffic to UP 3.
| If neither of these options provides a separate queue from Default | If neither of these options provides a separate queue from Default
| traffic, it is RECOMMENDED that Wi-Fi equipment map the NQB DSCP | traffic, it is RECOMMENDED that Wi-Fi equipment map Non-Queue-
| 45 (decimal) to UP 5 (which corresponds to the default mapping | Building traffic to UP 5 (which corresponds to the default mapping
| described in Section 2.3). RFC 9956 provides additional | described in Section 2.3). RFC 9956 provides additional
| recommendations and requirements for support of the NQB PHB that | recommendations and requirements for support of the NQB PHB that
| aren't available in the QoS model described in Section 6 but | aren't available in the QoS model described in Section 6 but
| nonetheless could be supported in implementations. | nonetheless could be supported in implementations.
In another update to [RFC8325] captured below, a new row for "Non- In another update to [RFC8325] captured below, a new row for "Non-
Queue-Building" traffic is inserted between the existing "Low-Latency Queue-Building" traffic is inserted between the existing "Low-Latency
Data" and "OAM" rows in Figure 1 of [RFC8325] as follows: Data" and "OAM" rows in Figure 1 of [RFC8325] as follows:
+===============+======+==========+==================================+ +===============+======+==========+==================================+
| IETF Diffserv | PHB |Reference | IEEE 802.11 | | IETF Diffserv | PHB |Reference | IEEE 802.11 |
| Service Class | | RFC |User Priority| Access Category | | Service Class | | RFC |User Priority| Access Category |
|===============+======+==========+=============+====================| |===============+======+==========+=============+====================|
| ... | ... | ... | ... | ... |
+---------------+------+----------+-------------+--------------------+
| Low- | AF21 | | | | | Low- | AF21 | | | |
| Latency | AF22 | RFC 2597 | 3 | AC_BE (Best Effort)| | Latency | AF22 | RFC 2597 | 3 | AC_BE (Best Effort)|
| Data | AF23 | | | | | Data | AF23 | | | |
+---------------+------+----------+-------------+--------------------+ +---------------+------+----------+-------------+--------------------+
| Non- | | | 0, 3 | AC_BE (Best Effort)| | Non- | | | 0, 3 | AC_BE (Best Effort)|
| Queue- | NQB | RFC 9956 | OR | | Queue- | NQB | RFC 9956 | OR |
| Building | | | 5 | AC_VI (Video) | | Building | | | 5 | AC_VI (Video) |
| | | | See Section 4.2.9 | | | | | See Section 4.2.9 |
+---------------+------+----------+-------------+--------------------+ +---------------+------+----------+-------------+--------------------+
| OAM | CS2 | RFC 2474 | 0 | AC_BE (Best Effort)| | OAM | CS2 | RFC 2474 | 0 | AC_BE (Best Effort)|
+---------------+------+----------+-------------+--------------------+ +---------------+------+----------+-------------+--------------------+
A third update adds the following sentence to the end of the first A third update adds the following sentence to the end of the first
paragraph in Section 5.3 of [RFC8325]: paragraph in Section 5.3 of [RFC8325]:
| An exception to this is the NQB DSCP 45 (decimal), which encodes | An exception to this is the NQB DSCP value 45 (decimal), which
| for best-effort service. | encodes for best-effort service.
8. IANA Considerations 8. IANA Considerations
IANA has assigned the Differentiated Services Field Codepoint (DSCP) IANA has assigned the Differentiated Services Field Codepoint (DSCP)
45 from the "Differentiated Services Field Codepoints (DSCP)" 45 from the "Differentiated Services Field Codepoints (DSCP)"
registry (https://www.iana.org/assignments/dscp-registry/) ("DSCP registry (https://www.iana.org/assignments/dscp-registry/) ("DSCP
Pool 3 Codepoints", Codepoint Space xxxx01, Standards Action Pool 3 Codepoints", Codepoint Space xxxx01, Standards Action
([RFC8126]) for NQB behavior. ([RFC8126]) for NQB behavior.
IANA has updated this registry as follows: IANA has updated this registry as follows:
skipping to change at line 1390 skipping to change at line 1394
shallow buffer) as intended motivates limiting the effects of shallow shallow buffer) as intended motivates limiting the effects of shallow
buffer overrun via per-user provisioning limits that prevent queue buffer overrun via per-user provisioning limits that prevent queue
overrun effects from affecting other users (see Section 5.1). overrun effects from affecting other users (see Section 5.1).
Notwithstanding the above, the choice of DSCP for NQB does allow Notwithstanding the above, the choice of DSCP for NQB does allow
existing Wi-Fi networks to readily (and by default) support some of existing Wi-Fi networks to readily (and by default) support some of
the PHB requirements, but without a traffic protection function, and the PHB requirements, but without a traffic protection function, and
(when left in the default state) by giving NQB traffic higher (when left in the default state) by giving NQB traffic higher
priority than QB traffic. This is not considered to be a compliant priority than QB traffic. This is not considered to be a compliant
implementation of the PHB. These existing Wi-Fi networks currently implementation of the PHB. These existing Wi-Fi networks currently
provide priority to half of the DSCP space, whether or not 45 provide priority to half of the DSCP space, whether or not the DSCP
(decimal) is assigned to the NQB DSCP. While the NQB DSCP value value 45 (decimal) is assigned to the NQB DSCP. While the DSCP value
could also be abused to gain priority on such links, the potential 45 (decimal) could also be abused to gain priority on such links, the
presence of traffic protection functions in other hops along the path potential presence of traffic protection functions in other hops
(which likely act on the NQB DSCP value alone) would make it less along the path (which likely act on the DSCP value 45 (decimal)
attractive for such abuse than any of the other 31 DSCP values that alone) would make it less attractive for such abuse than any of the
are given priority. other 31 DSCP values that are given priority.
This document discusses the potential use of the NQB DSCP and NQB PHB This document discusses the potential use of the NQB DSCP and NQB PHB
in network technologies that are standardized in other SDOs. Any in network technologies that are standardized in other SDOs. Any
security considerations that relate to deployment and operation of security considerations that relate to deployment and operation of
NQB solely in specific network technologies are not discussed here. NQB solely in specific network technologies are not discussed here.
NQB uses the DS field. The design of DS does not include integrity NQB uses the DS field. The design of Diffserv does not include
protection for the DSCP; thus, it is possible for the DSCP to be integrity protection for the DSCP; thus, it is possible for the DSCP
changed by an on-path attacker. The NQB PHB and associated DSCP to be changed by an on-path attacker. The NQB PHB and associated
don't change this. While re-marking DSCPs is permitted for various DSCP don't change this. While re-marking DSCPs is permitted for
reasons (some are discussed in this document, others can be found in various reasons (some are discussed in this document, others can be
[RFC2474] and [RFC2475]), if done maliciously, this might negatively found in [RFC2474] and [RFC2475]), if done maliciously, this might
affect the QoS of the tampered microflow. Nonetheless, an on-path negatively affect the QoS of the tampered microflow. Nonetheless, an
attacker can also alter other mutable fields in the IP header (e.g., on-path attacker can also alter other mutable fields in the IP header
the TTL), which can wreak much more havoc than just altering QoS (e.g., the TTL), which can wreak much more havoc than just altering
treatment. QoS treatment.
10. References 10. References
10.1. Normative References 10.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
skipping to change at line 1645 skipping to change at line 1649
Amendment 4 Corrigendum 2, July 2025, Amendment 4 Corrigendum 2, July 2025,
<https://usp.technology/specification/index.html>. <https://usp.technology/specification/index.html>.
[WikipediaBufferbloat] [WikipediaBufferbloat]
Wikipedia, "Bufferbloat", May 2025, Wikipedia, "Bufferbloat", May 2025,
<https://en.wikipedia.org/w/ <https://en.wikipedia.org/w/
index.php?title=Bufferbloat&oldid=1292250296>. index.php?title=Bufferbloat&oldid=1292250296>.
Appendix A. DSCP Re-marking Policies Appendix A. DSCP Re-marking Policies
Some network operators typically bleach (zero out) the DS field on Some network operators typically bleach (zero out) the DSCP field on
ingress into their network (see [RFC9435], [Custura], and [Barik]) ingress into their network (see [RFC9435], [Custura], and [Barik])
and, in some cases, apply their own DSCP for internal use. Bleaching and, in some cases, apply their own DSCP for internal use. Bleaching
the NQB DSCP is not expected to cause harm to Default traffic, but it the DSCP value 45 (decimal) is not expected to cause harm to Default
will severely limit the ability to provide NQB treatment. Reports on traffic, but it will severely limit the ability to provide NQB
existing deployments of DSCP manipulation (see [Custura] and [Barik]) treatment. Reports on existing deployments of DSCP manipulation (see
categorize the re-marking behaviors into the following policies: [Custura] and [Barik]) categorize the re-marking behaviors into the
bleach all traffic (set DSCP to zero); set the top three bits (the following policies: bleach all traffic (set DSCP to zero); set the
former Precedence bits) on all traffic to 0b000, 0b001, or 0b010; set top three bits (the former Precedence bits) on all traffic to 0b000,
the low three bits on all traffic to 0b000; or re-mark all traffic to 0b001, or 0b010; set the low three bits on all traffic to 0b000; or
a particular (non-zero) DSCP value. re-mark all traffic to a particular (non-zero) DSCP value.
Regarding the DSCP value 45 (decimal), there were no observations of Regarding the DSCP value 45 (decimal), there were no observations of
DSCP manipulation reported in which traffic was marked 45 (decimal) DSCP manipulation reported in which traffic was marked with the DSCP
by any of these policies. Thus, it appears that these re-marking value 45 (decimal) by any of these policies. Thus, it appears that
policies would be unlikely to result in QB traffic being marked as these re-marking policies would be unlikely to result in QB traffic
NQB (45). In terms of the fate of traffic marked with the NQB DSCP being marked as NQB. In terms of the fate of traffic marked with the
that is subjected to one of these policies, it would be DSCP value 45 (decimal) that is subjected to one of these policies,
indistinguishable from some subset (possibly all) of other traffic. it would be indistinguishable from some subset (possibly all) of
In the policies where all traffic is re-marked using the same (zero other traffic. In the policies where all traffic is re-marked using
or non-zero) DSCP, the ability for a subsequent network hop to the same (zero or non-zero) DSCP value, the ability for a subsequent
differentiate NQB traffic via DSCP would clearly be lost entirely. network hop to differentiate NQB traffic via DSCP would clearly be
lost entirely.
In the policies where the top three bits are overwritten (see In the policies where the top three bits are overwritten (see
Section 4.2 of [RFC9435]), the NQB DSCP (45) would receive the same Section 4.2 of [RFC9435]), the DSCP value 45 (decimal) would receive
marking as would the currently unassigned Pool 3 DSCPs (5, 13, 21, the same marking as would the currently unassigned Pool 3 DSCP values
29, 37, 53, and 61), with all of these DSCPs getting re-marked to (5, 13, 21, 29, 37, 53, and 61), with all of these DSCP values
DSCP = 5, 13, or 21 (depending on the overwrite value used). Since getting re-marked to DSCP value = 5, 13, or 21 (depending on the
none of the DSCPs in the preceding lists are currently assigned by overwrite value used). Since none of the DSCP values in the
IANA, and they all are reserved for Standards Action, it is believed preceding lists are currently assigned by IANA, and they all are
that they are not widely used currently; however, this could vary reserved for Standards Action, it is believed that they are not
based on local-usage and could change in the future. If networks in widely used currently; however, this could vary based on local-usage
which this sort of re-marking occurs or networks downstream classify and could change in the future. If networks in which this sort of
the resulting DSCP (i.e., 5, 13, or 21) to the NQB PHB or re-mark re-marking occurs or networks downstream classify the resulting DSCP
such traffic as 45 (decimal), they risk giving NQB treatment to other (i.e., 5, 13, or 21) to the NQB PHB or re-mark such traffic with DSCP
traffic that was not originally marked as NQB. In addition, as value 45 (decimal), they risk giving NQB treatment to other traffic
described in Section 6 of [RFC9435] future assignments of these that was not originally marked as NQB. In addition, as described in
0bxxx101 DSCPs would need to be made with consideration of the Section 6 of [RFC9435] future assignments of these 0bxxx101 DSCPs
potential that they all are treated as NQB in some networks. would need to be made with consideration of the potential that they
all are treated as NQB in some networks.
For the policy in which the low three bits are set to 0b000, the NQB For the policy in which the low three bits are set to 0b000, the DSCP
DSCP value 45 (decimal) would be re-marked to CS5 and would be value 45 (decimal) would be re-marked to CS5 and would be
indistinguishable from CS5, VA, and EF (and the currently unassigned indistinguishable from CS5, VA, and EF (and the currently unassigned
DSCPs 41, 42, and 43). Traffic marked using the existing DSCP values 41, 42, and 43). Traffic marked using the existing
standardized DSCPs in this list are likely to share the same general standardized DSCPs in this list are likely to share the same general
properties as NQB traffic (non-capacity-seeking and very low data properties as NQB traffic (non-capacity-seeking and very low data
rate, relatively low data rate, and consistent data rate). rate, relatively low data rate, and consistent data rate).
Similarly, any future recommended usage for DSCPs 41, 42, 43 would Similarly, any future recommended usage for DSCP values 41, 42, 43
likely be somewhat compatible with NQB treatment, assuming that IP would likely be somewhat compatible with NQB treatment, assuming that
Precedence compatibility (see Section 1.5.4 of [RFC4594]) is IP Precedence compatibility (see Section 1.5.4 of [RFC4594]) is
maintained in the future. Here there might be an opportunity for a maintained in the future. Here there might be an opportunity for a
node to provide the NQB PHB or the CS5 PHB to CS5-marked traffic and node to provide the NQB PHB or the CS5 PHB to CS5-marked traffic and
retain some of the benefits of NQB marking. This could be another retain some of the benefits of NQB marking. This could be another
motivation to classify CS5-marked traffic into the NQB queue (as motivation to classify CS5-marked traffic into the NQB queue (as
discussed in Section 6.3). discussed in Section 6.3).
Appendix B. Comparison with Expedited Forwarding Appendix B. Comparison with Expedited Forwarding
The EF definition [RFC3246] provides the following text to describe The EF definition [RFC3246] provides the following text to describe
the EF PHB forwarding behavior: the EF PHB forwarding behavior:
skipping to change at line 1749 skipping to change at line 1755
forwarding rate available to the PHB. Section 5.2 discusses the forwarding rate available to the PHB. Section 5.2 discusses the
recommended mechanism for handling excess traffic in NQB. While EF recommended mechanism for handling excess traffic in NQB. While EF
relies on rate policing and dropping of excess traffic at the domain relies on rate policing and dropping of excess traffic at the domain
border, this is only one option for NQB. NQB primarily recommends border, this is only one option for NQB. NQB primarily recommends
traffic protection located at each potential bottleneck, where actual traffic protection located at each potential bottleneck, where actual
queuing can be detected and where excess traffic can be reclassified queuing can be detected and where excess traffic can be reclassified
into the Default PHB rather than dropping it. Local traffic into the Default PHB rather than dropping it. Local traffic
protection is more feasible for NQB, given the focus is on access protection is more feasible for NQB, given the focus is on access
networks, where one node is typically designed to be the known networks, where one node is typically designed to be the known
bottleneck where traffic control functions all reside. In contrast, bottleneck where traffic control functions all reside. In contrast,
EF is presumed to follow the DS architecture [RFC2475] for core EF is presumed to follow the Diffserv architecture [RFC2475] for core
networks, where traffic conditioning is delegated to border nodes in networks, where traffic conditioning is delegated to border nodes in
order to simplify high-capacity interior nodes. Further, NQB order to simplify high-capacity interior nodes. Further, NQB
recommends a microflow-based mechanism to limit the performance recommends a microflow-based mechanism to limit the performance
impact of excess traffic to those microflows causing potential impact of excess traffic to those microflows causing potential
congestion of the NQB queue, whereas EF ignores microflow properties. congestion of the NQB queue, whereas EF ignores microflow properties.
Note that, under congestion, low loss for NQB-conformant flows is Note that, under congestion, low loss for NQB-conformant flows is
only ensured if such a mechanism is operational. Note also that this only ensured if such a mechanism is operational. Note also that this
mechanism for NQB operates at the available forwarding rate for the mechanism for NQB operates at the available forwarding rate for the
PHB (which could vary based on other traffic load) as opposed to a PHB (which could vary based on other traffic load) as opposed to a
configured guaranteed rate, as in EF. configured guaranteed rate, as in EF.
skipping to change at line 1783 skipping to change at line 1789
places a pre-condition that each microflow be relatively low data places a pre-condition that each microflow be relatively low data
rate and sent in a smooth (non-bursty) manner. In actual practice, rate and sent in a smooth (non-bursty) manner. In actual practice,
EF traffic is oftentimes prioritized over Default traffic. This EF traffic is oftentimes prioritized over Default traffic. This
contrasts with NQB traffic, which is to be treated with the same contrasts with NQB traffic, which is to be treated with the same
forwarding precedence as Default (and sometimes aggregated with forwarding precedence as Default (and sometimes aggregated with
Default). Default).
Appendix C. Impact on Higher Layer Protocols Appendix C. Impact on Higher Layer Protocols
The NQB PHB itself has no impact on higher layer protocols because it The NQB PHB itself has no impact on higher layer protocols because it
only isolates NQB traffic from non-NQB. However, traffic protection only isolates NQB traffic from QB traffic. However, traffic
of the PHB can have unintended side effects on higher layer protection of the PHB can have unintended side effects on higher
protocols. Traffic protection introduces the possibility that layer protocols. Traffic protection introduces the possibility that
microflows classified into the NQB queue could experience out-of- microflows classified into the NQB queue could experience out-of-
order delivery or packet loss if their behavior is not consistent order delivery or packet loss if their behavior is not consistent
with the NQB sender requirements. Out-of-order delivery could be with the NQB sender requirements. Out-of-order delivery could be
particularly likely if the traffic protection algorithm makes particularly likely if the traffic protection algorithm makes
decisions on a packet-by-packet basis. In this scenario, a microflow decisions on a packet-by-packet basis. In this scenario, a microflow
that is (mis-)marked as NQB and that causes a queue to form in this that is (mis-)marked as NQB and that causes a queue to form in this
bottleneck link could see some of its packets forwarded by the NQB bottleneck link could see some of its packets forwarded by the NQB
queue and some of them either discarded or redirected to the QB queue and some of them either discarded or redirected to the QB
queue. In the case of redirection, depending on the queuing delay queue. In the case of redirection, depending on the queuing delay
and scheduling within the network element, this could result in and scheduling within the network element, this could result in
packets being delivered out of order. As a result, the use of the packets being delivered out of order. As a result, the use of the
NQB DSCP by a higher layer protocol carries some risk that an NQB DSCP by a higher layer protocol carries some risk that an
increased amount of out-of-order delivery or packet loss will be increased amount of out-of-order delivery or packet loss will be
experienced. This characteristic provides one disincentive for experienced. This characteristic provides one disincentive for
incorrectly setting the NQB DSCP on traffic that doesn't comply with incorrectly setting the NQB DSCP on traffic that doesn't comply with
the NQB sender requirements. the NQB sender requirements.
Appendix D. Alternative DS Codepoints Appendix D. Alternative Diffserv Codepoints
In networks where the DSCP 45 (decimal) is already in use for another In networks where the DSCP value 45 (decimal) is already in use for
(e.g., a local-use) purpose or where specialized PHBs are available another (e.g., a local-use) purpose or where specialized PHBs are
that can meet specific application requirements (e.g., a guaranteed- available that can meet specific application requirements (e.g., a
delay path for voice traffic), use of another DSCP value could be guaranteed-delay path for voice traffic), use of another DSCP value
preferred. could be preferred.
In end systems where the choice of using DSCP 45 (decimal) is not In end systems where the choice of using DSCP value 45 (decimal) is
available to the application, the CS5 DSCP (40 decimal) could be used not available to the application, the CS5 DSCP (40 decimal) could be
as a fallback. See Section 6.3 for rationale as to why this choice used as a fallback. See Section 6.3 for rationale as to why this
could be fruitful. choice could be fruitful.
Acknowledgements Acknowledgements
Thanks to Gorry Fairhurst, Diego Lopez, Stuart Cheshire, Brian Thanks to Gorry Fairhurst, Diego Lopez, Stuart Cheshire, Brian
Carpenter, Bob Briscoe, Greg Skinner, Toke Hoeiland-Joergensen, Luca Carpenter, Bob Briscoe, Greg Skinner, Toke Hoeiland-Joergensen, Luca
Muscariello, David Black, Jerome Henry, Steven Blake, Jonathan Muscariello, David Black, Jerome Henry, Steven Blake, Jonathan
Morton, Roland Bless, Kevin Smith, Martin Dolly, and Kyle Rose for Morton, Roland Bless, Kevin Smith, Martin Dolly, and Kyle Rose for
their review comments. Thanks also to Gorry Fairhurst and Ana their review comments. Thanks also to Gorry Fairhurst and Ana
Custura for their input on selection of appropriate DSCPs. Thanks to Custura for their input on selection of appropriate DSCPs. Thanks to
the following for IESG reviews and comments: Mohamed Boucadair, Ketan the following for IESG reviews and comments: Mohamed Boucadair, Ketan
 End of changes. 52 change blocks. 
207 lines changed or deleted 213 lines changed or added

This html diff was produced by rfcdiff 1.48.