rfc9956v1.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 a separate queue that enables smooth (i.e., non-bursty), to provide separate queue-enabling traffic microflows that are smooth
low-data-rate, application-limited traffic microflows, which would (i.e., non-bursty), have a low data rate, and are application limited
ordinarily share a queue with bursty and capacity-seeking traffic, to to avoid the delay, delay variation, and loss that would ordinarily
avoid the delay, delay variation and loss caused by such traffic. be caused by sharing a queue with bursty, capacity-seeking traffic.
This PHB is implemented without prioritization and can be implemented This PHB is implemented without prioritization and can be implemented
without rate policing, making it suitable for environments where the without rate policing, making it suitable for environments where the
use of these features is restricted. The NQB PHB has been developed use of 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 and core segments are discussed. This document mobile network radio/core segments are discussed in this document.
recommends a specific Differentiated Services Code Point (DSCP) to This document recommends a specific Differentiated Services Code
identify Non-Queue-Building microflows and updates the guidance in Point (DSCP) to identify NQB microflows and updates the guidance in
RFC 8325 on mapping differentiated services (Diffserv) to IEEE 802.11 RFC 8325 on mapping Differentiated Services (Diffserv or DS) to IEEE
for this codepoint. 802.11 for this codepoint.
Status of This Memo Status of This Memo
This is an Internet Standards Track document. This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has (IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Further information on Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 7841. Internet Standards is available in Section 2 of RFC 7841.
skipping to change at line 70 skipping to change at line 70
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
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. Non-Queue-Building Behavior 3.1. NQB Behavior
3.2. Relationship to the Diffserv Architecture 3.2. Relationship to the DS Architecture
3.3. Relationship to L4S 3.3. Relationship to L4S
3.4. Applicability 3.4. Applicability
4. Non-Queue-Building Sender Requirements 4. NQB Sender Requirements
5. Non-Queue-Building 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 Diffserv PHB 6.2. Aggregation of the NQB DSCP into Another DS 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 Diffserv Code Points Appendix D. Alternative DS Codepoints
Acknowledgements Acknowledgements
Authors' Addresses Authors' Addresses
1. Introduction 1. Introduction
This document defines a Differentiated Services per-hop behavior This document defines a DS PHB called the "Non-Queue-Building Per-Hop
(PHB) called the "Non-Queue-Building Per-Hop Behavior" (or "NQB Behavior" (or "NQB PHB"). The NQB PHB isolates traffic microflows
PHB"), which isolates traffic microflows (application-to-application (application-to-application flows, see Section 1.2 of [RFC2475]) that
flows, see Section 1.2 of [RFC2475]) that are relatively low data have relatively low data rates and that do not, themselves,
rate and that do not themselves materially contribute to queuing materially contribute to queuing delay and loss. This isolation
delay and loss, allowing them to avoid the queuing delay and losses allows these traffic microflows to avoid the queuing delay and losses
caused by other traffic. Non-Queue-Building microflows such as caused by other traffic.
interactive voice, game sync packets, certain machine-to-machine
applications, DNS lookups, and some real-time Internet of Things NQB microflows such as interactive voice, game sync packets, certain
(IoT) analytics data are low-data-rate, application-limited machine-to-machine applications, DNS lookups, and some real-time
microflows. These can be distinguished from bursty traffic Internet of Things (IoT) analytics data are low-data-rate,
microflows and high-data-rate traffic microflows managed by a classic application-limited microflows. These can be distinguished from
congestion control algorithm (both of which cause queuing delay and bursty traffic microflows and high-data-rate traffic microflows
loss). The term "classic congestion control" is defined in [RFC9330] managed by a classic congestion control algorithm (both of which
to mean congestion control that coexists with standard Reno cause queuing delay and loss). The term "classic congestion control"
congestion control [RFC5681]. In this document, we will use "Queue- is defined in [RFC9330] to mean congestion control that coexists with
Building" (or "QB") to refer to microflows that cause queuing delay standard Reno congestion control [RFC5681]. In this document, we
and loss. See Section 1.2 of [RFC2475] for definitions of other will use "Queue-Building" (or "QB") to refer to microflows that cause
terminology used in this document. queuing delay and loss. See Section 1.2 of [RFC2475] for definitions
of other terminology used in this document.
In accordance with IETF guidance in [RFC2914] and [RFC8085], most In accordance with IETF guidance in [RFC2914] and [RFC8085], most
packets carried by access networks are managed by an end-to-end packets carried by access networks are managed by an end-to-end
congestion control algorithm. Many of the commonly deployed congestion control algorithm. Many of the commonly deployed
congestion control algorithms, such as Reno [RFC5681], Cubic congestion control algorithms, such as Reno [RFC5681], CUBIC
[RFC9438], or BBR [BBR-CC], are designed to seek the available [RFC9438], or BBR [BBR-CC], are designed to seek the available
capacity of the path from sender to receiver (which can frequently be capacity of the path from sender to receiver (which can frequently be
the access network link capacity). In doing so, they generally the access network link capacity). In doing so, they generally
overshoot the available capacity, causing a queue to build up at the overshoot the available capacity, causing a queue to build up at the
bottleneck link. This queue buildup results in variable delay and bottleneck link. This queue buildup results in variable delay and
packet loss that can affect all the applications that are sharing the packet loss that can affect all the applications that are sharing the
bottleneck link. Moreover, many bottleneck links implement a bottleneck link. Moreover, many bottleneck links implement a
relatively deep buffer (100 ms or more) (see [Gettys2012], relatively deep buffer (100 ms or more) (see [Gettys2012],
[Cardwell2017], [WikipediaBufferbloat], and [BBR-CC]) in order to [Cardwell2017], [WikipediaBufferbloat], and [BBR-CC]) in order to
enable these congestion control algorithms to use the link enable these congestion control algorithms to use the link
efficiently, which exacerbates the delay and delay variation efficiently, which exacerbates the delay and delay variation
experienced. experienced.
In contrast to applications that frequently cause queuing delay, In contrast to applications that frequently cause queuing delay,
there are a variety of relatively low data rate applications that do there are a variety of relatively low data rate applications that do
not materially contribute to queuing delay and loss; nonetheless, not materially contribute to queuing delay and loss; nonetheless,
they are subjected to it by sharing the same bottleneck link in the they are subjected to it by sharing the same bottleneck link. Many
access network. Many of these applications can be sensitive to delay of these applications can be sensitive to delay or delay variation,
or delay variation, as well as packet loss; thus, they produce a poor as well as packet loss; thus, they produce a poor Quality of
quality of experience in such conditions. Experience (QoE) in such conditions.
Active Queue Management (AQM) mechanisms intended for single queues Active Queue Management (AQM) mechanisms intended for single queues
(such as Proportional Integral Controller Enhanced (PIE) [RFC8033], (such as Proportional Integral Controller Enhanced (PIE) [RFC8033],
DOCSIS-PIE [RFC8034], PI2 [RFC9332], or CoDel [RFC8289]) can improve DOCSIS-PIE [RFC8034], PI2 [RFC9332], or CoDel [RFC8289]) can improve
the quality of experience for delay-sensitive applications, but there the QoE for delay-sensitive applications, but there are practical
are practical limits to the amount of improvement that can be limits to the amount of improvement that can be achieved without
achieved without impacting the throughput of capacity-seeking impacting the throughput of capacity-seeking applications. For
applications. For example, AQMs generally allow a significant amount example, AQMs generally allow a significant amount of queue depth
of queue depth variation to accommodate the behaviors of congestion variation to accommodate the behaviors of congestion control
control algorithms such as Reno and Cubic. If the AQM attempted to algorithms such as Reno and CUBIC. If the AQM attempted to control
control the queue depth much more tightly, applications using those the queue depth much more tightly, applications using those
algorithms would not fully utilize the link. Alternatively, flow- algorithms would not fully utilize the link. Alternatively, flow-
queuing systems, such as fq_codel [RFC8290] can be employed to queuing systems, such as fq_codel [RFC8290] can be employed to
isolate microflows from one another; however, they are not isolate microflows from one another; however, they are not
appropriate for all bottleneck links due to reasons that include appropriate for all bottleneck links due to reasons that include
complexity. complexity.
The NQB PHB supports differentiating between these two classes of The NQB PHB supports differentiating between these two classes of
traffic in bottleneck links and queuing them separately so that both traffic in bottleneck links and queuing them separately so that both
classes can deliver satisfactory quality of experience for their classes can deliver satisfactory QoE for their applications. In
applications. In particular, the NQB PHB provides a shallow- particular, the NQB PHB provides a shallow-buffered, best-effort
buffered, best-effort service as a complement to a Default (see service as a complement to a Default (see [RFC2474]) deep-buffered,
[RFC2474]) deep-buffered, best-effort service. This PHB is designed best-effort service. This PHB is designed for broadband access
for broadband access network links, where there is minimal network links (where there is minimal aggregation of traffic),
aggregation of traffic, and especially when buffers are deep (see especially when buffers are deep (see Section 3.4). The
Section 3.4). The applicability of this PHB to lower-speed links is applicability of this PHB to lower-rate links is discussed in
discussed in Section 6.6. Section 6.6.
To be clear, a network implementing the NQB PHB solely provides To be clear, a network implementing the NQB PHB solely provides
isolation for traffic classified as behaving in conformance with the isolation for traffic classified as behaving in conformance with the
behaviors discussed in Section 3.1. A node supporting the NQB PHB behaviors discussed in Section 3.1. A node supporting the NQB PHB
makes no guarantees on delay or data rate for NQB-marked microflows makes no guarantees on delay or data rate for NQB-marked microflows
(beyond the delay bound provided by the shallow buffer), it is the (beyond the delay bound provided by the shallow buffer), it is the
NQB senders' behavior itself that results in low delay and low loss. NQB senders' behavior itself that results in low delay and low loss.
Sections 6 and 7 of this document provide guidance for network Sections 6 and 7 of this document provide guidance for network
operators regarding appropriate forwarding of traffic marked with the operators regarding appropriate forwarding of traffic marked with the
NQB Differentiated Services Code Point (DSCP). The guidance includes NQB DSCP. The guidance includes recommendations for the
recommendations for the configuration of network nodes that support configuration of network nodes that support the NQB PHB as well as
the NQB PHB as well as for network nodes that do not support the PHB; for network nodes that do not support the PHB; this allows NQB
this allows NQB traffic to be forwarded in a way that aligns with the traffic to be forwarded in a way that aligns with the goals for NQB
goals for NQB treatment and supports the use of this code point by treatment and supports the use of this codepoint by other nodes and
other nodes and other networks. other networks.
2. Requirements Language 2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in "OPTIONAL" in this document are to be interpreted as described in
BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here. capitals, as shown here.
3. Context 3. Context
3.1. Non-Queue-Building Behavior 3.1. NQB Behavior
There are applications that send traffic at relatively low data rates There are applications that send traffic at relatively low data rates
and/or in a fairly smooth and consistent manner such that they are and/or in a fairly smooth and consistent manner such that they are
unlikely to exceed the available capacity of the network path between unlikely to exceed the available capacity of the network path between
sender and receiver, even at an inter-packet timescale. Some of sender and receiver, even at an inter-packet timescale. Some of
these applications are transactional in nature; they might only send these applications are transactional in nature; they might only send
one packet (or a few packets) per RTT. These applications might one packet (or a few packets) per RTT. These applications might
themselves only cause very small, transient queues to form in network themselves only cause very small, transient queues to form in network
buffers; nonetheless, they can be subjected to delay and delay buffers; nonetheless, they can be subjected to delay and delay
variation as a result of sharing a network buffer with applications variation as a result of sharing a network buffer with applications
that tend to cause large and/or standing queues to form. These that tend to cause large and/or standing queues to form. These
applications typically implement a response to network congestion applications typically implement a response to network congestion
that consists of discontinuing (or significantly reducing) that consists of discontinuing (or significantly reducing)
transmissions. These applications can be negatively affected by transmissions. These applications can be negatively affected by
excessive delay and delay variation. Such applications are ideal excessive delay and delay variation. Such applications are ideal
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, Queue-Building (QB) microflows include those that probe In contrast, QB microflows include those that probe for link capacity
for link capacity and induce delay and loss as a result, for example, and induce delay and loss as a result, for example, microflows that
microflows that use Cubic, Reno, or other TCP/QUIC congestion control use CUBIC, Reno, or other TCP/QUIC congestion control algorithms in a
algorithms in a capacity-seeking manner. Other types of QB capacity-seeking manner. Other types of QB microflows include those
microflows include those that send at a high burst rate even if the that send at a high burst rate even if the long-term average data
long-term average data rate is much lower. rate is much lower.
3.2. Relationship to the Diffserv Architecture 3.2. Relationship to the DS Architecture
The IETF has defined the Differentiated Services architecture The IETF has defined the DS architecture [RFC2475] with the intention
[RFC2475] with the intention that it allows traffic to be marked in a that it allows traffic to be marked in a manner that conveys the
manner that conveys the performance requirements of that traffic performance requirements of that traffic either qualitatively or in a
either qualitatively or in a relative sense (e.g., priority). The relative sense (e.g., priority). The architecture defines the use of
architecture defines the use of the Diffserv field [RFC2474] for this the DS field [RFC2474] for this purpose, and numerous RFCs have been
purpose, and numerous RFCs have been written that describe written that describe recommended interpretations of the values (DS
recommended interpretations of the values (Diffserv Code Points Codepoints [RFC2474]) of the field, and standardized treatments
[RFC2474]) of the field, and standardized treatments (traffic (traffic conditioning and per-hop-behaviors [RFC2475]) that can be
conditioning and per-hop-behaviors [RFC2475]) that can be implemented implemented to satisfy the performance requirements of traffic so
to satisfy the performance requirements of traffic so marked. 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 Diffserv PHBs has Further, in many cases, the implementation of DS 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 285 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 Diffserv architecture as it has differentiated service classes in the DS architecture as it has
traditionally 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 Diffserv series, the closest similarity is to the PHBs in the DS series, the closest similarity is to the Expedited
Expedited Forwarding (EF) PHB [RFC3246], which also intends to enable Forwarding (EF) PHB [RFC3246], which also intends to enable services
services that provide low loss, low delay, and low delay variation. that provide low loss, low delay, and low-delay variation. Unlike
Unlike EF, NQB has no requirement for a guaranteed minimum rate, nor EF, NQB has no requirement for a guaranteed minimum rate, nor does
does have a requirement to police incoming traffic to such a rate: have a requirement to police incoming traffic to such a rate: NQB is
NQB is expected to be given the same forwarding preference as Default 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 DiffServ Service Classes, NQB traffic In nodes that support multiple DS Service Classes, NQB traffic is
is intended to be treated as a part of the Default treatment. intended to be handled as a part of the Default treatment. Traffic
Traffic assigned to this class does not receive better forwarding assigned to this class does not receive better forwarding treatment
treatment (e.g., prioritization) with respect to other classes, AFxx, (e.g., prioritization) with respect to other classes, AFxx, EF, etc.
EF, etc. Of course, traffic marked as NQB could (like other Default Of course, traffic marked as NQB could (like other Default traffic)
traffic) receive better forwarding treatment with respect to Lower- receive better forwarding treatment with respect to Lower-Effort (LE)
Effort (LE) [RFC8622] (e.g., the NQB queue could be emptied in a [RFC8622] (e.g., the NQB queue could be emptied in a priority
priority sequence before the LE queue). 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
of [RFC9332]) is considered sufficient to support the NQB PHB of [RFC9332]) is considered sufficient to support the NQB PHB
requirement of fair allocation of capacity between the QB and NQB requirement of fair allocation of capacity between the QB and NQB
queues (Section 5). Note that these requirements, in turn, require queues (Section 5). Note that these requirements, in turn, require
compliance with all the requirements in Section 5 of [RFC9331]. compliance with all the requirements in Section 5 of [RFC9331].
Applications that comply with both the NQB sender requirements in Applications that comply with both the NQB sender requirements in
Section 4 and the L4S "Prague" requirements in Section 4 of [RFC9331] Section 4 and the "Prague L4S requirements" in Section 4 of [RFC9331]
could mark their packets both with the NQB DSCP and with the ECT(1) could mark their packets both with the NQB DSCP and with the ECT(1)
value. value.
In nodes that support both the NQB PHB and L4S, the L4S network In nodes that support both the NQB PHB and L4S, the L4S network
functions SHOULD treat packets marked with the NQB DSCP and ECT(1) or functions SHOULD treat packets marked with the NQB DSCP and ECT(1) or
CE the same as packets marked with the Default DSCP and the same Congestion Experienced (CE) the same as packets marked with the
Explicit Congestion Notification (ECN) value. Here, "L4S network Default DSCP and the same Explicit Congestion Notification (ECN)
functions" refers to the L4S Network Node functions (see Section 5 of value. Here, "L4S network functions" refers to the L4S Network Node
[RFC9331]), and any mechanisms designed to protect the L4S queue functions (see Section 5 of [RFC9331]), and any mechanisms designed
(such as those discussed in Section 8.2 of [RFC9330]). The to protect the L4S queue (such as those discussed in Section 8.2 of
processing by an L4S node of an ECT(0) packet that is classified to [RFC9330]). The processing by an L4S node of an ECT(0) packet that
the L queue (e.g., as a result of being marked with a NQB DSCP) is is classified to the L queue (e.g., as a result of being marked with
specified in Section 5.4.1.1 of [RFC9331] and Section 2.5.1.1 of a NQB DSCP) is specified in Section 5.4.1.1 of [RFC9331] and
[RFC9332]. Section 2.5.1.1 of [RFC9332].
Additionally, Section 5.4 places requirements on treatment of ECN- Additionally, Section 5.4 places requirements on treatment of ECN-
marked packets by a node that supports the NQB PHB. marked packets by a node that supports the NQB PHB.
3.4. Applicability 3.4. Applicability
This PHB is primarily applicable for high-speed broadband access This PHB is primarily applicable for high-speed broadband access
network links, where there is minimal aggregation of traffic and deep network links, where there is minimal aggregation of traffic and deep
buffers are common. buffers are common.
In many other links, forwarding NQB-marked packets using the Default In many other links, forwarding NQB-marked packets using the Default
treatment might be sufficient to preserve the loss, delay, and delay- treatment might be sufficient to preserve the loss, delay, and delay-
variation performance for NQB traffic. This is generally true in variation performance for NQB traffic. This is generally true in
links that do not typically experience congestion (for example, many links that do not typically experience congestion (for example, many
backbone and core network links) and in highly aggregated links backbone and core network links) and in highly aggregated links
(links designed to carry a large number of simultaneous microflows) (links designed to carry a large number of simultaneous microflows)
where individual microflow burstiness is averaged out and, thus, is where individual microflow burstiness is averaged out and, thus, is
unlikely to cause much actual delay. Section 6.2 provides unlikely to cause much actual delay. Section 6.2 provides
recommendations for configuration of network nodes in such cases. recommendations for configuration of network nodes in such cases.
4. Non-Queue-Building Sender Requirements 4. NQB Sender Requirements
Microflows that are eligible to be marked with the NQB DSCP are ones Microflows that are eligible to be marked with the NQB DSCP are ones
that send non-bursty traffic at a low data rate relative to typical that send non-bursty traffic at a low data rate relative to typical
network path capacities. Here, the data rate is limited by the network path capacities. Here, the data rate is limited by the
application itself rather than by network capacity: these microflows application itself rather than by network capacity: these microflows
send at a data rate of no more than about 1% of the "typical" network send at a data rate of no more than about 1% of the "typical" network
path capacity. In addition, these microflows are required to be sent path capacity. In addition, these microflows are required to be sent
in a smooth (i.e., paced) manner, where the number of IP bytes sent in a smooth (i.e., paced) manner, where the number of IP bytes sent
in any time interval "T" is less than or equal to (R * T) + MTU, in any time interval "T" is less than or equal to (R * T) + MTU,
where "R" is the maximum rate described in the preceding sentence, where "R" is the maximum rate described in the preceding sentence,
skipping to change at line 397 skipping to change at line 398
more microflows in each direction). For a particular application, it more microflows in each direction). For a particular application, it
could be the case that some of its microflows are eligible to be could be the case that some of its microflows are eligible to be
marked with the NQB DSCP while others are not. For example, an marked with the NQB DSCP while others are not. For example, an
interactive video streaming application might consist of a high- interactive video streaming application might consist of a high-
bandwidth video stream (not eligible for NQB marking) in one bandwidth video stream (not eligible for NQB marking) in one
direction and a low-bandwidth control stream (eligible for NQB direction and a low-bandwidth control stream (eligible for NQB
marking) in the other. marking) in the other.
Microflows marked with the NQB DSCP are expected to comply with Microflows marked with the NQB DSCP are expected to comply with
existing guidance for safe deployment on the Internet, including the existing guidance for safe deployment on the Internet, including the
guidance around response to network congestion, for example the guidance related to response to network congestion, for example the
requirements in [RFC8085] and Section 2 of [RFC3551] (also see the requirements in [RFC8085] and Section 2 of [RFC3551] (also see the
circuit breaker limits in Section 4.3 of [RFC8083] and the circuit breaker limits in Section 4.3 of [RFC8083] and the
description of inelastic pseudowires in Section 4 of [RFC7893]). The description of inelastic pseudowires in Section 4 of [RFC7893]). The
fact that a microflow's data rate is low relative to typical network fact that a microflow's data rate is low relative to typical network
capacities is no guarantee that sufficient capacity exists in any capacities is no guarantee that sufficient capacity exists in any
particular network, and it is the responsibility of the application particular network, and it is the responsibility of the application
to detect and react appropriately if the network capacity is to detect and react appropriately if the network capacity is
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 Diffserv field specification requires the definition of a The DS field specification requires the definition of a recommended
recommended DSCP to be associated with each standardized PHB (see DSCP to be associated with each standardized PHB (see Section 5 of
Section 5 of [RFC2474]). In accordance with this, applications are [RFC2474]). In accordance with this, applications are RECOMMENDED to
RECOMMENDED to use the Diffserv Code Point (DSCP) 45 (decimal) to use the DSCP 45 (decimal) to mark microflows as NQB. The choice of
mark microflows as NQB. The choice of the DSCP value 45 (decimal) is the DSCP value 45 (decimal) is motivated, in part, by the desire to
motivated, in part, by the desire to achieve separate queuing in achieve separate queuing in existing Wi-Fi networks (see Section 7.3)
existing Wi-Fi networks (see Section 7.3) and by the desire to make and by the desire to make implementation of the PHB simpler in
implementation of the PHB simpler in network equipment that has the network equipment that has the ability to classify traffic based on
ability to classify traffic based on ranges of DSCP values (see ranges of DSCP values (see Section 6.3 for further discussion).
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 445 skipping to change at line 445
as described in [RFC9331]. as described in [RFC9331].
The sender requirements outlined in this section are all related to The sender requirements outlined in this section are all related to
observable attributes of the packet stream, which makes it possible observable attributes of the packet stream, which makes it possible
for network elements (including nodes implementing the PHB) to for network elements (including nodes implementing the PHB) to
monitor for inappropriate usage of the DSCP and take action (such as monitor for inappropriate usage of the DSCP and take action (such as
discarding or re-marking) on traffic that does not comply. This discarding or re-marking) on traffic that does not comply. This
functionality, when implemented as part of the PHB, is described in functionality, when implemented as part of the PHB, is described in
Section 5.2. Section 5.2.
5. Non-Queue-Building 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 for microflows consistent with the NQB sender
requirements in Section 4, the NQB queue would likely be a better requirements in Section 4, the NQB queue would likely be a better
choice than the QB queue; and for microflows inconsistent with those choice than the QB queue; and for microflows inconsistent with those
skipping to change at line 476 skipping to change at line 476
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
Section 5.2 and summarized in Section 9. As mentioned previously, Section 5.2 and summarized in Section 9. As mentioned previously,
the NQB designation and marking is intended to convey verifiable the NQB designation and marking is intended to convey verifiable
traffic behavior, as opposed to simply a desire for differentiated traffic behavior, as opposed to simply a desire for differentiated
treatment. As a result, any mis-marking can be identified by the treatment. As a result, any mis-marking can be identified by the
network. network.
5.1. Primary Requirements 5.1. Primary Requirements
A node supporting the NQB PHB MUST provide a queue for Non-Queue- A node supporting the NQB PHB MUST provide a queue for NQB traffic
Building traffic separate from the queue used for Default traffic. separate from the queue used for Default traffic.
A node supporting the NQB PHB SHOULD NOT rate limit or rate police A node supporting the NQB PHB SHOULD NOT rate limit or rate police
the aggregate of NQB traffic separately from Default traffic. An the aggregate of NQB traffic separately from Default traffic. An
exception to this recommendation for traffic sent towards a non-DS- exception to this recommendation for traffic sent towards a non-DS-
capable domain is discussed in Section 6.4.1. Note also that capable domain is discussed in Section 6.4.1. Note also that
Section 5.2 discusses potential uses of per-microflow (rather than Section 5.2 discusses potential uses of per-microflow (rather than
aggregate) rate policing. aggregate) rate policing.
The NQB queue SHOULD be given equivalent forwarding preference The NQB queue SHOULD be given equivalent forwarding preference
compared to the Default queue. The node SHOULD provide a scheduler compared to the Default queue. The node SHOULD provide a scheduler
skipping to change at line 515 skipping to change at line 515
them could result in a discernible benefit for mis-marked traffic (to them could result in a discernible benefit for mis-marked traffic (to
the detriment of other traffic). In network nodes that are rarely the detriment of other traffic). In network nodes that are rarely
bottlenecks, these recommendations are less critical. bottlenecks, these recommendations are less critical.
In the DRR example above, equal scheduling weights is only an In the DRR example above, equal scheduling weights is only an
example. Ideally, the DRR weight would be chosen to match the example. Ideally, the DRR weight would be chosen to match the
highest fraction of capacity that NQB-compliant flows are likely to highest fraction of capacity that NQB-compliant flows are likely to
use on a particular network segment. Given that NQB-compliant flows use on a particular network segment. Given that NQB-compliant flows
are not capacity seeking (in contrast to QB flows, which can be), and are not capacity seeking (in contrast to QB flows, which can be), and
since DRR allows unused capacity in one class to be used by traffic since DRR allows unused capacity in one class to be used by traffic
in the other, providing a higher-than-necessary NQB scheduler weight in the other, providing a higher-than-needed NQB scheduler weight
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 by classify packets
marked with the NQB DSCP 45 (decimal) into the queue for Non-Queue- marked with the NQB DSCP 45 (decimal) into the queue for NQB traffic.
Building traffic. In accordance with the requirement in Section 3 of In accordance with the requirement in Section 3 of [RFC2474], a node
[RFC2474], a node supporting the NQB PHB MUST support the ability to supporting the NQB PHB MUST support the ability to configure the DSCP
configure the DSCP that is used to classify packets into the queue that is used to classify packets into the queue for NQB traffic. A
for Non-Queue-Building traffic. A node supporting the NQB PHB MAY node supporting the NQB PHB MAY support the ability to configure
support the ability to configure multiple DSCPs that are used to multiple DSCPs that are used to classify packets into the queue for
classify packets into the queue for Non-Queue-Building traffic. 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 597 skipping to change at line 597
supporting an NQB service; see Section 7.3.1 for details and an supporting an NQB service; see Section 7.3.1 for details and an
example where this is particularly important. A similar approach example where this is particularly important. A similar approach
might prove to be useful in other network environments. might prove to be useful in other network environments.
5.2. Traffic Protection 5.2. Traffic Protection
It is possible that, due to an implementation error or It is possible that, due to an implementation error or
misconfiguration, a QB microflow could end up being mis-marked as NQB misconfiguration, a QB microflow could end up being mis-marked as NQB
or vice versa. It is also possible that a malicious actor could or vice versa. It is also possible that a malicious actor could
introduce a QB microflow marked as NQB with the intention of causing introduce a QB microflow marked as NQB with the intention of causing
disruptions. In the case of a low data rate microflow that isn't disruptions. In the case of a low-data-rate microflow that isn't
marked as NQB and therefore ends up in the QB queue, it would only marked as NQB and therefore ends up in the QB queue, it would only
impact its own quality of service (QoS); therefore, it seems to be of impact its own Quality of Service (QoS); therefore, it seems to be of
lesser concern. However, a QB microflow that is mis-marked as NQB is lesser concern. However, a QB microflow that is mis-marked as NQB is
able to contribute to NQB queue formation at a network node that able to contribute to NQB queue formation at a network node that
would cause queuing delay and/or loss for all the other microflows would cause queuing delay and/or loss for all the other microflows
that are sharing the NQB queue. that are sharing the NQB queue.
To prevent this situation from harming the performance of the To prevent this situation from harming the performance of the
microflows that comply with the requirements in Section 4, network microflows that comply with the requirements in Section 4, network
elements that support the NQB PHB SHOULD support a "traffic elements that support the NQB PHB SHOULD support a "traffic
protection" function that can identify microflows or packets that are protection" function that can identify microflows or packets that are
inconsistent with the sender requirements in Section 4 and either inconsistent with the sender requirements in Section 4 and either
reclassify those microflows/packets to the QB queue or discard the reclassify those microflows/packets to the QB queue or discard the
offending traffic. In the case of a traffic protection algorithm offending traffic. In the case of a traffic protection algorithm
that reclassifies offending traffic, the implementation MAY provide that reclassifies offending traffic, the implementation MAY provide
an option to additionally re-mark such traffic to Default (or an option to additionally re-mark such traffic to Default (or
possibly to another local use code point) so that the result of the possibly to another local use codepoint) so that the result of the
traffic protection decision can be used by further hops. This sort traffic protection decision can be used by further hops. This sort
of re-marking could provide a limited layer of protection in of re-marking could provide a limited layer of protection in
situations where downstream network nodes support separate queuing situations where downstream network nodes support separate queuing
for NQB-marked packets but lack support for traffic protection. for NQB-marked packets but lack support for traffic protection.
If traffic protection is not supported or is not effective in If traffic protection is not supported or is not effective in
preventing queue formation and growth in the NQB queue, then QB preventing queue formation and growth in the NQB queue, then QB
traffic that is mis-marked as NQB is able to form a queue that traffic that is mis-marked as NQB is able to form a queue that
overflows the shallow buffer provided for NQB traffic; this is overflows the shallow buffer provided for NQB traffic; this is
expected to result in redirecting the excess packets to the QB queue expected to result in redirecting the excess packets to the QB queue
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 Diffserv contexts. Traffic Conditioning implemented in other DS contexts. Traffic Conditioning
Conditioning is commonly performed at the edge of a Diffserv domain is commonly performed at the edge of a DS domain (either ingress or
(either ingress or egress, depending on Traffic Conditioning egress, depending on Traffic Conditioning Agreements (TCAs) in
Agreements (TCAs) in place). In contrast, traffic protection is place). In contrast, traffic protection is intended to be
intended to be implemented in the nodes that implement the PHB. By implemented in the nodes that implement the PHB. By placing the
placing the traffic protection at the PHB node, an implementation can traffic protection at the PHB node, an implementation can monitor the
monitor the actual NQB queue and take action only if a queue begins actual NQB queue and take action only if a queue begins to form.
to form. Implementation of traffic protection at PHB nodes that are Implementation of traffic protection at PHB nodes that are most
most likely to be a bottleneck is particularly important because likely to be a bottleneck is particularly important because these are
these are the nodes that would be expected to show the most queue the nodes that would be expected to show the most queue buildup in
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
an area where implementers innovate. The specifics of traffic an area where implementers innovate. The specifics of traffic
protection could need to be different in different network equipment protection could need to be different in different network equipment
and in different network contexts. Instead, this specification and in different network contexts. Instead, this specification
provides guidelines and some examples of traffic protection provides guidelines and some examples of traffic protection
algorithms that could be employed. algorithms that could be employed.
The traffic protection function SHOULD NOT base its decisions upon The traffic protection function SHOULD NOT base its decisions upon
skipping to change at line 683 skipping to change at line 683
alternative is to use a traffic protection algorithm that bases its alternative is to use a traffic protection algorithm that bases its
decisions on the detection of actual queuing (i.e., by monitoring the decisions on the detection of actual queuing (i.e., by monitoring the
queuing delay experienced by packets in the NQB queue) in correlation queuing delay experienced by packets in the NQB queue) in correlation
with the arrival of packets for each microflow. While a per- with the arrival of packets for each microflow. While a per-
microflow rate policer is conceptually simpler (and is based directly microflow rate policer is conceptually simpler (and is based directly
on the NQB sender requirements), it could often end up being more on the NQB sender requirements), it could often end up being more
strict than is necessary (for example, by policing a flow that strict than is necessary (for example, by policing a flow that
exceeds the rate equation even when the link is underutilized). One exceeds the rate equation even when the link is underutilized). One
example traffic protection algorithm based on the detection of actual example traffic protection algorithm based on the detection of actual
queuing can be found in [RFC9957]. This algorithm maintains per- queuing can be found in [RFC9957]. This algorithm maintains per-
microflow state for a certain number of simultaneous "queue-building" microflow state for a certain number of simultaneous QB microflows
microflows (e.g., 32), and shared state for any additional microflows (e.g., 32), and shared state for any additional microflows above that
above that number. number.
In the case of a traffic protection algorithm that reclassifies In the case of a traffic protection algorithm that reclassifies
offending traffic, different levels of hysteresis could be offending traffic, different levels of hysteresis could be
considered. For example, the reclassify decision could be made on a considered. For example, the reclassify decision could be made on a
packet-by-packet basis, which could result in significant out-of- packet-by-packet basis, which could result in significant out-of-
order delivery for offending microflows as some portion of the order delivery for offending microflows as some portion of the
microflow's packets remain in the NQB queue and some are reclassified microflow's packets remain in the NQB queue and some are reclassified
to the Default queue. Alternatively, a traffic protection function to the Default queue. Alternatively, a traffic protection function
could employ a certain level of hysteresis to prevent borderline could employ a certain level of hysteresis to prevent borderline
microflows from being reclassified capriciously, thus causing less microflows from being reclassified capriciously, thus causing less
skipping to change at line 716 skipping to change at line 716
communications caused by the packet being discarded are likely to be communications caused by the packet being discarded are likely to be
greater than the degradation caused by out-of-order delivery. greater than the degradation caused by out-of-order delivery.
The traffic protection function described here might require that the The traffic protection function described here might require that the
network element maintain microflow state. The traffic protection network element maintain microflow state. The traffic protection
function MUST be designed such that the node implementing the NQB PHB function MUST be designed such that the node implementing the NQB PHB
does not fail (e.g., crash) in the case that the microflow state is does not fail (e.g., crash) in the case that the microflow state is
exhausted. This might be accomplished simply by controlling/limiting exhausted. This might be accomplished simply by controlling/limiting
the resources dedicated to tracking misbehaving flows. the resources dedicated to tracking misbehaving flows.
Some networks might prefer to implement a more traditional Traffic Some networks might prefer to implement a Traffic Conditioning
Conditioning approach and police the application of the NQB DSCP at approach that polices the application of the NQB DSCP at the ingress
the ingress edge so that per-hop traffic protection is not needed. edge so that per-hop traffic protection is not needed. This could be
This could be accomplished via the use of a per-microflow rate accomplished via the use of a per-microflow rate policer that polices
policer that polices microflows at 1% of the minimum link capacity of microflows at 1% of the minimum link capacity of the network. This
the network. This approach would generally be expected to be approach would generally be expected to be inferior to per-hop
inferior to per-hop traffic protection because: traffic protection because:
* on one hand, it would be difficult for edge nodes to guarantee * on one hand, it would be difficult for edge nodes to guarantee
that there would never be more than 100 NQB flows that would share that there would never be more than 100 NQB flows that would share
a single internal bottleneck, and a single internal bottleneck, and
* on the other hand, there could be internal links that have much * on the other hand, there could be internal links that have much
greater capacity than the minimum. greater capacity than the minimum.
So, Traffic Conditioning at the edge could simultaneously be too So, Traffic Conditioning at the edge could simultaneously be too
lenient and too strict. lenient and too strict.
skipping to change at line 752 skipping to change at line 752
Optical Networks (PONs), Wi-Fi, LTE/5G, and Data-Over-Cable Service Optical Networks (PONs), Wi-Fi, LTE/5G, and Data-Over-Cable Service
Interface Specification (DOCSIS). Interface Specification (DOCSIS).
As well as NQB senders needing to limit packet bursts (see As well as NQB senders needing to limit packet bursts (see
Section 4), traffic designated for the NQB PHB would benefit from Section 4), traffic designated for the NQB PHB would benefit from
configuring these link technologies to limit the burstiness configuring these link technologies to limit the burstiness
introduced. This is for three reasons: introduced. This is for three reasons:
1. Burstiness, whether caused by the sender or by a link on the 1. Burstiness, whether caused by the sender or by a link on the
path, could cause queuing delay at downstream bottlenecks and, path, could cause queuing delay at downstream bottlenecks and,
thus, degrade Quality of Experience. thus, degrade QoE.
2. Burstiness in links typically means that packets have been 2. Burstiness in links typically means that packets have been
delayed by a variable amount. That is, for packets that are delayed by a variable amount. That is, for packets that are
being aggregated awaiting a transmission opportunity, some being aggregated awaiting a transmission opportunity, some
packets would generally have arrived just after the last packets would generally have arrived just after the last
transmission opportunity and would have to wait the longest while transmission opportunity and would have to wait the longest while
others would generally arrive just in time for the next others would generally arrive just in time for the next
transmission opportunity and would wait the least. This transmission opportunity and would wait the least. This
manifests as delay variation that can also degrade Quality of manifests as delay variation that can also degrade QoE for
Experience for applications that desire NQB treatment. applications that desire NQB treatment.
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 Diffserv specifications. However, it would not seem the remit of DS specifications. However, it would not seem necessary
necessary to limit bursts lower than roughly 10% of the minimum base to limit bursts lower than roughly 10% of the minimum base RTT
RTT expected in the typical deployment scenario (e.g., 250 µs burst 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 807 skipping to change at line 807
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 (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 Diffserv PHB 6.2. Aggregation of the NQB DSCP into Another DS 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 Differentiated Services model provides flexibility for operators The DS model provides flexibility for operators to control the way
to control the way they choose to aggregate traffic marked with a they choose to aggregate traffic marked with a specific DSCP.
specific DSCP. Operators of nodes that support the NQB PHB could Operators of nodes that support the NQB PHB could choose to aggregate
choose to aggregate other service classes into the NQB queue. This other service classes into the NQB queue. This is particularly
is particularly useful in cases where specialized PHBs for these useful in cases where specialized PHBs for these other service
other service classes had not been provided at a potential classes had not been provided at a potential bottleneck, perhaps
bottleneck, perhaps because it was too complex to manage traffic because it was too complex to manage traffic contracts and
contracts and conditioning. Candidate service classes for this conditioning. Candidate service classes for this aggregation would
aggregation would include those that carry low-data-rate inelastic include those that carry low-data-rate inelastic traffic that has low
traffic that has low to very-low tolerance for loss, delay, and/or to very-low tolerance for loss, delay, and/or delay variation.
delay variation. Operators would need to use their own judgment Operators would need to use their own judgment based on the actual
based on the actual traffic characteristics in their networks in traffic characteristics in their networks in deciding whether or not
deciding whether or not to aggregate other service classes / DSCPs to aggregate other service classes / DSCPs with NQB. For networks
with NQB. For networks that use the service class definitions from that use the service class definitions from [RFC4594], this could
[RFC4594], this could include Telephony (EF/VA), Signaling (CS5), and include Telephony (EF/VA), Signaling (CS5), and possibly Real-Time
possibly Real-Time Interactive (CS4) (depending on data rate). In Interactive (CS4) (depending on data rate). In the preceding
the preceding sentence, "VA" and "CSx" refer to Voice-Admit sentence, "VA" and "CSx" refer to VOICE-ADMIT ([RFC5865]) and Class
([RFC5865]) and Class Selector ([RFC2474]), respectively. In some Selector ([RFC2474]), respectively. In some networks, equipment
networks, equipment limitations may necessitate aggregating a range limitations may necessitate aggregating a range of DSCPs (e.g.,
of DSCPs (e.g., traffic marked with DSCPs 40-47 (decimal), i.e., traffic marked with DSCPs 40-47 (decimal), i.e., those whose three
those whose three most significant bits are 0b101). As noted in most significant bits are 0b101). As noted in Section 4, the choice
Section 4, the choice of the DSCP value 45 (decimal) is motivated in of the DSCP value 45 (decimal) is motivated in part by the desire to
part by the desire to make this aggregation simpler in network make this aggregation simpler in network equipment that can classify
equipment that can classify packets via comparing the DSCP value to a packets via comparing the DSCP value to a range of configured values.
range of configured values.
A node providing only a NQB queue and a Default queue may obtain an A node providing only a NQB queue and a Default queue may obtain an
NQB performance similar to that of EF, for example, as described by NQB performance similar to that of EF, for example, as described by
Appendix A.3.1 of [RFC2598]. Some caveats and differences are Appendix A.3.1 of [RFC2598]. Some caveats and differences are
discussed in Appendix B. discussed in Appendix B.
[NOTE: this section references the obsoleted RFC 2598 instead of its
replacement (RFC 3246) because the former contains the description of
EF performance.]
6.4. Cross-Domain Usage and DSCP Re-marking 6.4. Cross-Domain Usage and DSCP Re-marking
In contrast to some existing standard PHBs, which are typically only In contrast to some existing standard PHBs, which are typically only
used within a Diffserv Domain (e.g., an AS or an enterprise network), used within a DS domain (e.g., an Autonomous System (AS) or an
this PHB is expected to be used across the Internet, wherever enterprise network), this PHB is expected to be used across the
suitable operator agreements apply. Under the model described in Internet, wherever suitable operator agreements apply. Under the
[RFC2474], this requires that the corresponding DSCP is recognized model described in [RFC2474], this requires that the corresponding
and mapped across network boundaries accordingly. DSCP is recognized and mapped across network boundaries accordingly.
If NQB support is extended across a DiffServ 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 (Traffic different DSCP is explicitly documented in the TCA (see [RFC2475])
Conditioning Agreement, see [RFC2475]) for that interconnection. If for that interconnection. If Section 4 of [RFC8100] is operational
[RFC8100] is operational between interconnected domains, the between interconnected domains, the receiving domain may prefer a
receiving domain may prefer a different DSCP for NQB traffic that different DSCP for NQB traffic that allows for a DSCP range-based
allows for a DSCP range-based classification for the Default / classification for the Default / Elastic Treatment Aggregate.
Elastic Treatment Aggregate. Similar to the handling of DSCPs for Similar to the handling of DSCPs for other PHBs (and as discussed in
other PHBs (and as discussed in [RFC2475]), networks can re-mark NQB [RFC2475]), networks can re-mark NQB traffic to a DSCP value other
traffic to a DSCP value other than 45 (decimal) for internal usage. than 45 (decimal) for internal usage. To ensure reliable NQB PHB
To ensure reliable NQB PHB treatment on the entire path, the treatment on the entire path, the appropriate NQB DSCP would need to
appropriate NQB DSCP would need to be restored when forwarding to be restored when forwarding to another network.
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 Diffserv is delivering traffic to network operator that supports DS is delivering traffic to another
another network domain (e.g., a network outside of their network domain (e.g., a network outside of their administrative
administrative control) where there is an understanding that the control) where there is an understanding that the downstream domain
downstream domain does not support Diffserv or there is no knowledge does not support DS or there is no knowledge of the traffic
of the traffic management capabilities of the downstream domain, and management capabilities of the downstream domain, and no agreement in
no agreement in place. In such cases, Section 4 of [RFC2475] place. In such cases, Section 4 of [RFC2475] suggests that the
suggests that the upstream domain opportunistically re-mark traffic upstream domain opportunistically re-mark traffic with a Class
with a Class Selector codepoint or DSCP 0 (Default) under the Selector Codepoint or DSCP 0 (Default) under the assumption that
assumption that traffic so marked would be handled in a predictable traffic so marked would be handled in a predictable way by the
way by the downstream domain. 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 NQB DSCP value), the same
concerns apply. In particular, since the recommended NQB DSCP value concerns apply. In particular, since the recommended NQB DSCP value
could be given high priority in some non-DS-compliant network could be given high priority in some non-DS-compliant network
equipment (e.g., legacy Wi-Fi APs as described in Section 7.3.1), it equipment (e.g., legacy Wi-Fi APs as described in Section 7.3.1), it
is RECOMMENDED that the operator of the upstream domain implement one is RECOMMENDED that the operator of the upstream domain implement one
of the following safeguards before delivering traffic into a non-DS- of the following safeguards before delivering traffic into a non-DS-
capable domain: capable domain:
skipping to change at line 959 skipping to change at line 953
In the case that a traffic protection function is used, it MUST In the case that a traffic protection function is used, it MUST
either re-mark offending traffic to DSCP 0 (or another Class either re-mark offending traffic to DSCP 0 (or another Class
Selector DSCP) or discard it. Note that a traffic protection Selector DSCP) or discard it. Note that a traffic protection
function, as defined in this document, might only provide function, as defined in this document, might only provide
protection from issues occurring in subsequent network hops if protection from issues occurring in subsequent network hops if
the device implementing the traffic protection function is the the device implementing the traffic protection function is the
bottleneck link on the path, so it might not be a solution for bottleneck link on the path, so it might not be a solution for
all situations. all situations.
In the case that a traffic policing function or a rate shaping In the case that a traffic policing function or a rate-shaping
function is applied to the aggregate of NQB traffic destined to function is applied to the aggregate of NQB traffic destined to
such a downstream domain, the policer/shaper rate SHOULD be set such a downstream domain, the policer/shaper rate SHOULD be set
to either 5% of the interconnection data rate or 5% of the to either 5% of the interconnection data rate or 5% of the
typical rate for such interconnections, whichever is greater, typical rate for such interconnections, whichever is greater,
with excess traffic being re-marked and classified for Default with excess traffic being re-marked and classified for Default
forwarding (or dropped, as a last resort). A traffic policing forwarding (or dropped, as a last resort). A traffic policing
function SHOULD allow approximately 100 ms of burst tolerance function SHOULD allow approximately 100 ms of burst tolerance
(e.g., a token bucket depth equal to 100 ms multiplied by the (e.g., a token bucket depth equal to 100 ms multiplied by the
policer rate). A traffic shaping function SHOULD allow policer rate). A traffic-shaping function SHOULD allow
approximately 10 ms of burst tolerance and no more than 50 ms of approximately 10 ms of burst tolerance and no more than 50 ms of
buffering. The burst tolerance values recommended here are buffering. The burst tolerance values recommended here are
intended to reduce the degradation that could be introduced to intended to reduce the degradation that could be introduced to
delay- and loss-sensitive traffic marked NQB without delay- and loss-sensitive traffic marked NQB without
significantly degrading Default traffic and that could be significantly degrading Default traffic and that could be
adjusted based on local network policy. Increasing the burst adjusted based on local network policy. Increasing the burst
tolerance would further reduce the potential for degradation tolerance would further reduce the potential for degradation
(increased loss or increased delay) of traffic marked NQB but (increased loss or increased delay) of traffic marked NQB but
would come at the cost of an increased risk of degradation would come at the cost of an increased risk of degradation
(increased loss or increased delay) of Default traffic. (increased loss or increased delay) of Default traffic.
skipping to change at line 991 skipping to change at line 985
assumption that internal links in the downstream domain could assumption that internal links in the downstream domain could
have data rates as low as one tenth of the interconnect rate; in have data rates as low as one tenth of the interconnect rate; in
which case, if the entire aggregate of NQB traffic traversed a which case, if the entire aggregate of NQB traffic traversed a
single instance of such a link, the aggregate would consume no single instance of such a link, the aggregate would consume no
more than 50% of that link's capacity. The limit for NQB traffic more than 50% of that link's capacity. The limit for NQB traffic
SHOULD be adjusted based on any knowledge of the local network SHOULD be adjusted based on any knowledge of the local network
environment that is available. environment that is available.
6.5. The NQB DSCP and Tunnels 6.5. The NQB DSCP and Tunnels
[RFC2983] discusses tunnel models that support Diffserv. It [RFC2983] discusses tunnel models that support DS. It describes a
describes a "uniform model" in which the inner DSCP is copied to the "uniform model" in which the inner DSCP is copied to the outer header
outer header at encapsulation and the outer DSCP is copied to the at encapsulation and the outer DSCP is copied to the inner header at
inner header at decapsulation. It also describes a "pipe model" in decapsulation. It also describes a "pipe model" in which the outer
which the outer DSCP is not copied to the inner header at DSCP is not copied to the inner header at decapsulation. Both models
decapsulation. Both models can be used in conjunction with the NQB can be used in conjunction with the NQB PHB. In the case of the pipe
PHB. In the case of the pipe model, any DSCP manipulation (re- model, any DSCP manipulation (re-marking) of the outer header by
marking) of the outer header by intermediate nodes would be discarded intermediate nodes would be discarded at tunnel egress. In some
at tunnel egress. In some cases, this could improve the possibility cases, this could improve the possibility of achieving NQB treatment
of achieving NQB treatment in subsequent nodes; in other cases, it in subsequent nodes; in other cases, it could degrade that
could degrade that possibility (e.g., if the re-marking was designed possibility (e.g., if the re-marking was designed specifically to
specifically to preserve NQB treatment in downstream domains). preserve NQB treatment in downstream domains).
As is discussed in [RFC2983], tunnel protocols that are sensitive to As is discussed in [RFC2983], tunnel protocols that are sensitive to
reordering (such as IPsec [RFC4301] or Layer 2 Tunneling Protocol reordering (such as IPsec [RFC4301] or Layer 2 Tunneling Protocol
(L2TP) [RFC2661]) can result in undesirable interactions if multiple (L2TP) [RFC2661]) can result in undesirable interactions if multiple
DSCP PHBs are signaled for traffic within a tunnel instance. This is DSCP PHBs are signaled for traffic within a tunnel instance. This is
true for tunnels containing a mix of QB and NQB traffic. true for tunnels containing a mix of QB and NQB traffic.
Additionally, since networks supporting the NQB PHB could implement a Additionally, since networks supporting the NQB PHB could implement a
traffic protection mechanism (see Section 5.2) and/or responses to traffic protection mechanism (see Section 5.2) and/or responses to
NQB buffer overrun that result in out-of-order delivery for traffic NQB buffer overrun that result in out-of-order delivery for traffic
marked with the NQB DSCP, even tunnels solely containing NQB traffic marked with the NQB DSCP, even tunnels solely containing NQB traffic
skipping to change at line 1063 skipping to change at line 1057
This section provide recommendations for the support of the NQB PHB This section provide recommendations for the support of the NQB PHB
in certain use cases. This section is not exhaustive. in certain use cases. This section is not exhaustive.
7.1. DOCSIS Access Networks 7.1. DOCSIS Access Networks
Residential cable broadband Internet services are commonly configured Residential cable broadband Internet services are commonly configured
with a single bottleneck link (the access network link) upon which with a single bottleneck link (the access network link) upon which
the service definition is applied. The service definition, typically the service definition is applied. The service definition, typically
an upstream/downstream data rate tuple, is implemented as a an upstream/downstream data rate tuple, is implemented as a
configured pair of rate shapers that are applied to the user's configured pair of rate shapers that are applied to the user's
traffic. In such networks, the quality of service that each traffic. In such networks, the QoS that each application receives,
application receives, and as a result, the quality of experience that and as a result, the QoE that it generates for the user is influenced
it generates for the user is influenced by the characteristics of the by the characteristics of the access network link.
access network link.
To support the NQB PHB, cable broadband services would need to be To support the NQB PHB, cable broadband services would need to be
configured to provide a separate queue for traffic marked with the configured to provide a separate queue for traffic marked with the
NQB DSCP. The NQB queue would need to be configured to share the NQB DSCP. The NQB queue would need to be configured to share the
service's rate shaped capacity with the queue for QB traffic. service's rate-shaped capacity with the queue for QB traffic.
Further discussion about support of the NQB PHB in DOCSIS networks Further discussion about support of the NQB PHB in DOCSIS networks
can be found in [LOW_LATENCY_DOCSIS]. can be found in [LOW_LATENCY_DOCSIS].
7.2. Mobile Networks 7.2. Mobile Networks
Historically, 3GPP mobile networks have utilized "bearers" to Historically, 3GPP mobile networks have utilized "bearers" to
encapsulate each user's user plane traffic through the radio and core encapsulate each user's user plane traffic through the radio access
networks. A "dedicated bearer" can be allocated a Quality of Service and core networks. Bearers are also associated with a QoS that
(QoS) to apply any prioritization to its microflows at queues and determines how packets are prioritized at queues and radio
radio schedulers. Typically, an LTE operator provides a dedicated schedulers. In LTE networks, these are Evolved Packet System (EPS)
bearer for IP Multimedia Subsystems (IMS) VoLTE (Voice over LTE) bearers, part of the EPS, which comprises the core and access network
traffic, which is prioritized in order to meet regulatory obligations architecture. Typically, an LTE operator provides a dedicated EPS
for call completion rates, and a "best effort" default bearer for bearer for IP Multimedia Subsystem (IMS) Voice over LTE (VoLTE)
Internet traffic. The "best effort" bearer provides no guarantees; traffic to meet regulatory obligations for call completion rates and
hence, its buffering characteristics are not compatible with low- a best-effort default EPS bearer for Internet traffic. This default
latency traffic. The 5G radio and core systems offer more EPS bearer is typically non-Guaranteed Bit Rate (non-GBR) and
flexibility over bearer allocation, meaning bearers can be allocated provides no guarantees; its buffering characteristics generally are
per traffic type (e.g., loss-tolerant, low-latency, etc.); hence, not compatible with low-latency traffic. In 5G networks, similar
they support more suitable treatment of Internet real-time functionality is provided using QoS flows within a PDU Session in the
microflows. core network, which are mapped to Data Radio Bearers (DRBs) on the
radio network. 5G systems offer more flexibility in QoS handling,
allowing traffic to be treated according to type (e.g., loss-
tolerant, low-latency); hence, they support more suitable treatment
of Internet real-time microflows.
To support the NQB PHB, the mobile network could be configured to To support the NQB PHB, an LTE network could be configured to provide
give User Equipment (UE, the mobile device used by the subscriber) a the User Equipment (UE, the subscriber's device) with a dedicated
dedicated, low-latency, non-GBR (non-Guaranteed Bit Rate), EPS low-latency, non-GBR EPS bearer, in addition to the default EPS
(Evolved Packet System, the core and access network architecture used bearer. For example, this dedicated EPS bearer could use QCI 7 (QoS
in LTE) bearer, e.g., one with QCI 7 (QoS Class Identifier 7, which Class Identifier 7), which is typically used for low-latency, non-GBR
is typically used for low-latency, non-GBR services), in addition to services. Alternatively, in a 5G system, a Data Radio Bearer (DRB)
the default EPS bearer. Alternatively, in a 5G system, a Data Radio with 5QI 7 (5G QoS Identifier 7, also used for low-latency traffic),
Bearer with 5QI 7 (5G QoS Identifier 7), similarly used for low- could be provisioned (see Table 5.7.4-1: Standardized 5QI to QoS
latency traffic, could be provisioned (see Table 5.7.4-1: characteristics mapping in [SA-5G]).
Standardized 5QI to QoS characteristics mapping in [SA-5G]).
A packet carrying the NQB DSCP could then be routed through this A packet carrying the NQB DSCP could then be routed through this
dedicated low-latency EPS bearer, while a packet that has no dedicated low-latency path, while packets without the NQB marking
associated NQB marking would be routed through the default EPS would be routed through the default bearer.
bearer.
7.3. Wi-Fi Networks 7.3. Wi-Fi Networks
Wi-Fi networking equipment compliant with 802.11e/n/ac/ax Wi-Fi networking equipment compliant with 802.11e/n/ac/ax
[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 Enhanced Distributed Channel Access and four sets of associated EDCA parameters (corresponding to the
(EDCA) parameters (corresponding to the four Wi-Fi Multimedia (WMM) four Wi-Fi Multimedia (WMM) Access Categories) that are used to
Access Categories) that are used to enable differentiated medium enable differentiated medium access characteristics. The four WMM
access characteristics. The four WMM Access Categories, referred to Access Categories, referred to as Voice Access Category (AC_VO),
as Voice Access Category (AC_VO), Video Access Category (AC_VI), Best Video Access Category (AC_VI), Best Effort Access Category (AC_BE),
Effort Access Category (AC_BE), and Background Access Category and Background Access Category (AC_BK), provide four levels of
(AC_BK), provide four levels of prioritized access to the wireless prioritized access to the wireless medium. As discussed in
medium. As discussed in [RFC8325], it has been a common practice for [RFC8325], it has been a common practice for Wi-Fi implementations to
Wi-Fi implementations to use a default DSCP to User Priority (UP) use a default DSCP to User Priority (UP) mapping that utilizes the
mapping that utilizes the most significant three bits of the Diffserv most significant three bits of the DS field to select "User
Field to select "User Priority", which is then mapped to the four WMM Priority", which is then mapped to the four WMM Access Categories.
Access Categories. [RFC8325] also provides an alternative mapping [RFC8325] also provides an alternative mapping that more closely
that more closely aligns with the DSCP recommendations provided by aligns with the DSCP recommendations provided by the IETF. In the
the IETF. In the case of some managed Wi-Fi equipment, this mapping case of some managed Wi-Fi equipment, this mapping can be controlled
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 NQB DSCP 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 NQB DSCP 45 (decimal) to that queue. If a
separate queue in UP 0 cannot be provided (due to hardware 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 NQB DSCP 45 (decimal)
skipping to change at line 1165 skipping to change at line 1160
not both) of the following characteristics: not both) of the following characteristics:
* the NQB PHB requirement for separate queuing of NQB traffic from * the NQB PHB requirement for separate queuing of NQB traffic from
Default traffic (Section 5.1) Default traffic (Section 5.1)
* the recommendation to treat NQB traffic with forwarding preference * the recommendation to treat NQB traffic with forwarding preference
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- Video Access Category. While this choice of DSCP enables these Wi-Fi
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 in statistical prioritization of the Video Access Category above the
the "Best Effort" Access Category. In addition, this equipment does Best Effort Access Category. In addition, this equipment does not
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 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.
skipping to change at line 1220 skipping to change at line 1215
* 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 45 does create a potential for abuse by non-compliant
applications. However, opportunities exist in the network applications. However, opportunities exist in the network
components upstream of the Wi-Fi Access Point to police the usage components upstream of the Wi-Fi Access Point to police the usage
of the NQB DSCP and potentially re-mark traffic that is considered of the NQB DSCP and potentially re-mark traffic that is considered
non-compliant, as is recommended in Section 6.4.1. Furthermore, non-compliant, as is recommended in Section 6.4.1. Furthermore,
it is reasonable to expect that ISPs currently manage the DSCPs on it is reasonable to expect that ISPs currently manage the DSCPs on
traffic destined to their customers' networks and will continue to traffic destined to their customers' networks and will continue to
do so whether or not they support NQB. This includes the practice do so whether or not they support NQB. This includes the practice
in residential broadband networks of re-marking the Diffserv field in residential broadband networks of re-marking the DS field to
to zero on all traffic. Any change to these practices done to zero on all traffic. Any change to these practices done to enable
enable the NQB DSCP to pass through could be done alongside the the NQB DSCP to pass through could be done alongside the
implementation of the recommendations in Section 6.4.1. 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.
skipping to change at line 1266 skipping to change at line 1261
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 NQB DSCP 45 (decimal) (or the
locally determined alternative) to UP 5 in the "Video" Access locally determined alternative) to UP 5 in the Video Access Category
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:
skipping to change at line 1300 skipping to change at line 1295
| 45 (decimal) to UP 5 (which corresponds to the default mapping | 45 (decimal) 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 |
| 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)|
skipping to change at line 1325 skipping to change at line 1323
| An exception to this is the NQB DSCP 45 (decimal), which encodes | An exception to this is the NQB DSCP 45 (decimal), which encodes
| for best-effort service. | 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 Non-Queue-Building behavior. ([RFC8126]) for NQB behavior.
IANA has updated this registry as follows: IANA has updated this registry as follows:
Name: NQB Name: NQB
Value (Binary): 101101 Value (Binary): 101101
Value (Decimal): 45 Value (Decimal): 45
Reference: RFC 9956 Reference: RFC 9956
9. Security Considerations 9. Security Considerations
The security considerations for the NQB PHB relate to the potential The security considerations for the NQB PHB relate to the potential
to impact the capacity available or delay experienced by other flows to impact the capacity available or delay experienced by other flows
that share a bottleneck on the path with traffic that is marked with that share a bottleneck on the path with traffic that is marked with
the recommended NQB DSCP. the recommended NQB DSCP.
Full support for the NQB PHB in bottleneck links limits the Full support for the NQB PHB in bottleneck links limits the
incentives for a Queue-Building application to mis-mark its packets incentives for a QB application to mis-mark its packets as NQB,
as NQB, particularly for implementations that support traffic particularly for implementations that support traffic protection. If
protection. If a Queue-Building microflow were to mis-mark its a QB microflow were to mis-mark its packets as NQB, it would be
packets as NQB, it would be unlikely to receive a benefit by doing unlikely to receive a benefit by doing so, and it would usually
so, and it would usually experience a degradation, in contrast to experience a degradation, in contrast to mis-marking its packets for
mis-marking its packets for a higher-priority PHB, e.g., the EF PHB a higher-priority PHB, e.g., the EF PHB [RFC3246]. The nature of the
[RFC3246]. The nature of the degradation would depend on the degradation would depend on the specifics of the PHB implementation,
specifics of the PHB implementation, including response to NQB buffer including response to NQB buffer overflow (and on the presence or
overflow (and on the presence or absence of a traffic protection absence of a traffic protection function) but could include excessive
function) but could include excessive packet loss, excessive delay packet loss, excessive delay variation, and/or excessive out-of-order
variation, and/or excessive out-of-order delivery. If a Non-Queue- delivery. If an NQB microflow were to fail to mark its packets as
Building microflow were to fail to mark its packets as NQB, it could NQB, it could suffer the delay and loss typical of sharing a queue
suffer the delay and loss typical of sharing a queue with capacity- with capacity-seeking traffic.
seeking traffic.
To preserve low-delay performance for NQB traffic, networks that To preserve low-delay performance for NQB traffic, networks that
support the NQB PHB will need to ensure that mechanisms are in place support the NQB PHB will need to ensure that mechanisms are in place
to prevent malicious traffic marked with the NQB DSCP from causing to prevent malicious traffic marked with the NQB DSCP from causing
excessive queue delay. Section 5.2 recommends the implementation of excessive queue delay. Section 5.2 recommends the implementation of
a traffic protection mechanism to achieve this goal. The a traffic protection mechanism to achieve this goal. The
recommendations on traffic protection mechanisms in this document recommendations on traffic protection mechanisms in this document
presume that some type of "flow" state be maintained in order to presume that some type of "flow" state be maintained in order to
differentiate between microflows that are causing queuing delay and differentiate between microflows that are causing queuing delay and
those that aren't. Since this flow state is likely finite, this those that aren't. Since this flow state is likely finite, this
skipping to change at line 1406 skipping to change at line 1403
presence of traffic protection functions in other hops along the path presence of traffic protection functions in other hops along the path
(which likely act on the NQB DSCP value alone) would make it less (which likely act on the NQB DSCP value alone) would make it less
attractive for such abuse than any of the other 31 DSCP values that attractive for such abuse than any of the other 31 DSCP values that
are given priority. 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 Diffserv field. The design of Diffserv does not include NQB uses the DS field. The design of DS does not include integrity
integrity protection for the DSCP; thus, it is possible for the DSCP protection for the DSCP; thus, it is possible for the DSCP to be
to be changed by an on-path attacker. The NQB PHB and associated changed by an on-path attacker. The NQB PHB and associated DSCP
DSCP don't change this. While re-marking DSCPs is permitted for don't change this. While re-marking DSCPs is permitted for various
various reasons (some are discussed in this document, others can be reasons (some are discussed in this document, others can be found in
found in [RFC2474] and [RFC2475]), if done maliciously, this might [RFC2474] and [RFC2475]), if done maliciously, this might negatively
negatively affect the QoS of the tampered microflow. Nonetheless, an affect the QoS of the tampered microflow. Nonetheless, an on-path
on-path attacker can also alter other mutable fields in the IP header attacker can also alter other mutable fields in the IP header (e.g.,
(e.g., the TTL), which can wreak much more havoc than just altering the TTL), which can wreak much more havoc than just altering QoS
QoS treatment. 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 1485 skipping to change at line 1482
the Internet", Communications of the ACM, vol. 55, no. 1, the Internet", Communications of the ACM, vol. 55, no. 1,
pp. 57-65, DOI 10.1145/2063176.2063196, January 2012, pp. 57-65, DOI 10.1145/2063176.2063196, January 2012,
<https://doi.org/10.1145/2063176.2063196>. <https://doi.org/10.1145/2063176.2063196>.
[IEEE802-11] [IEEE802-11]
IEEE, "IEEE Standard for Information Technology -- IEEE, "IEEE Standard for Information Technology --
Telecommunications and Information Exchange between Telecommunications and Information Exchange between
Systems - Local and Metropolitan Area Networks -- Specific Systems - Local and Metropolitan Area Networks -- Specific
Requirements - Part 11: Wireless LAN Medium Access Control Requirements - Part 11: Wireless LAN Medium Access Control
(MAC) and Physical Layer (PHY) Specifications", IEEE (MAC) and Physical Layer (PHY) Specifications", IEEE
Std 802.11-2020, DOI 10.1109/IEEESTD.2021.9363693, Std 802.11-2024, DOI 10.1109/IEEESTD.2025.10979691, April
February 2021, 2025, <https://ieeexplore.ieee.org/document/10979691>.
<https://ieeexplore.ieee.org/document/9363693>.
[LOW_LATENCY_DOCSIS] [LOW_LATENCY_DOCSIS]
CableLabs, "Low Latency DOCSIS: Technology Overview", CableLabs, "Low Latency DOCSIS: Technology Overview",
February 2019, <https://cablela.bs/low-latency-docsis- February 2019, <https://cablela.bs/low-latency-docsis-
technology-overview-february-2019>. technology-overview-february-2019>.
[QOS_TRAFFIC_TYPE] [QOS_TRAFFIC_TYPE]
Microsoft, Corporation, "QOS_TRAFFIC_TYPE enumeration Microsoft, Corporation, "QOS_TRAFFIC_TYPE enumeration
(qos2.h)", January 2022, <https://learn.microsoft.com/en- (qos2.h)", January 2022, <https://learn.microsoft.com/en-
us/windows/win32/api/qos2/ne-qos2-qos_traffic_type>. us/windows/win32/api/qos2/ne-qos2-qos_traffic_type>.
skipping to change at line 1634 skipping to change at line 1630
"CUBIC for Fast and Long-Distance Networks", RFC 9438, "CUBIC for Fast and Long-Distance Networks", RFC 9438,
DOI 10.17487/RFC9438, August 2023, DOI 10.17487/RFC9438, August 2023,
<https://www.rfc-editor.org/info/rfc9438>. <https://www.rfc-editor.org/info/rfc9438>.
[RFC9957] Briscoe, B., Ed. and G. White, "The DOCSIS(r) Queue [RFC9957] Briscoe, B., Ed. and G. White, "The DOCSIS(r) Queue
Protection Algorithm to Preserve Low Latency", RFC 9957, Protection Algorithm to Preserve Low Latency", RFC 9957,
DOI 10.17487/RFC9957, April 2026, DOI 10.17487/RFC9957, April 2026,
<https://www.rfc-editor.org/info/rfc9957>. <https://www.rfc-editor.org/info/rfc9957>.
[SA-5G] 3GPP, "System Architecture for the 5G System (5GS)", [SA-5G] 3GPP, "System Architecture for the 5G System (5GS)",
Version 18.6.0, Release 18, 3GPP TS 23.501, June 2024, Version 20.1.0, Release 20, 3GPP TS 23.501, March 2026,
<https://portal.3gpp.org/desktopmodules/Specifications/ <https://portal.3gpp.org/desktopmodules/Specifications/
SpecificationDetails.aspx?specificationId=3144>. SpecificationDetails.aspx?specificationId=3144>.
[TR-369] Broadband Forum, "The User Services Platform", Issue: 1 [TR-369] Broadband Forum, "The User Services Platform", Issue: 1
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 Diffserv field Some network operators typically bleach (zero out) the DS field on
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 NQB DSCP is not expected to cause harm to Default traffic, but it
will severely limit the ability to provide NQB treatment. Reports on will severely limit the ability to provide NQB treatment. Reports on
existing deployments of DSCP manipulation (see [Custura] and [Barik]) existing deployments of DSCP manipulation (see [Custura] and [Barik])
categorize the re-marking behaviors into the following policies: categorize the re-marking behaviors into the following policies:
bleach all traffic (set DSCP to zero); set the top three bits (the bleach all traffic (set DSCP to zero); set the top three bits (the
former Precedence bits) on all traffic to 0b000, 0b001, or 0b010; set former Precedence bits) on all traffic to 0b000, 0b001, or 0b010; set
the low three bits on all traffic to 0b000; or re-mark all traffic to the low three bits on all traffic to 0b000; or re-mark all traffic to
a particular (non-zero) DSCP value. a particular (non-zero) DSCP value.
skipping to change at line 1707 skipping to change at line 1703
likely be somewhat compatible with NQB treatment, assuming that IP likely be somewhat compatible with NQB treatment, assuming that IP
Precedence compatibility (see Section 1.5.4 of [RFC4594]) is 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 Expedited Forwarding definition [RFC3246] provides the following The EF definition [RFC3246] provides the following text to describe
text to describe the EF PHB forwarding behavior: the EF PHB forwarding behavior:
| This specification defines a PHB in which EF packets are | This specification defines a PHB in which EF packets are
| guaranteed to receive service at or above a configured rate | guaranteed to receive service at or above a configured rate
and and
| the rate at which EF traffic is served at a given output interface | the rate at which EF traffic is served at a given output interface
| should be at least the configured rate R, over a suitably defined | should be at least the configured rate R, over a suitably defined
| interval, independent of the offered load of non-EF traffic to | interval, independent of the offered load of non-EF traffic to
| that interface. | that interface.
skipping to change at line 1740 skipping to change at line 1736
capacity. If such a guaranteed minimum rate is configured for the capacity. If such a guaranteed minimum rate is configured for the
Default PHB, it is recommended (Section 5) that NQB traffic share and Default PHB, it is recommended (Section 5) that NQB traffic share and
be given equal access to that rate. In such cases, the NQB PHB could be given equal access to that rate. In such cases, the NQB PHB could
effectively receive a rate guarantee of (for example) 50% of the rate effectively receive a rate guarantee of (for example) 50% of the rate
guaranteed to the combined NQB/Default PHBs; therefore, it guaranteed to the combined NQB/Default PHBs; therefore, it
technically complies with the PHB forwarding behavior defined for EF. technically complies with the PHB forwarding behavior defined for EF.
However, EF is intended to be a managed service and requires that However, EF is intended to be a managed service and requires that
traffic be policed such that the arriving rate of traffic into the EF traffic be policed such that the arriving rate of traffic into the EF
PHB doesn't exceed the guaranteed forwarding rate configured for the PHB doesn't exceed the guaranteed forwarding rate configured for the
PHB. This ensures that low delay and low delay variation are PHB. This ensures that low delay and low-delay variation are
provided. NQB is intended as a best effort service; hence, the provided. NQB is intended as a best effort service; hence, the
aggregate of traffic arriving to the NQB PHB queue could exceed the aggregate of traffic arriving to the NQB PHB queue could exceed the
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 Diffserv architecture [RFC2475] for core EF is presumed to follow the DS 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.
The lack of a requirement of a guaranteed minimum rate, and the lack The lack of a requirement of a guaranteed minimum rate, and the lack
of a requirement to police incoming traffic to such a rate, makes the of a requirement to police incoming traffic to such a rate, makes the
NQB PHB suitable for implementation in networks where link capacity NQB PHB suitable for implementation in networks where link capacity
is not or cannot be guaranteed. is not or cannot be guaranteed.
There are additional distinctions between EF and NQB arising from the There are additional distinctions between EF and NQB arising from the
intended usage as described in [RFC4594] and the actual usage in intended usage as described in [RFC4594] and the actual usage in
practice in the Internet. In Section 1.5.3 of [RFC4594], EF is practice in the Internet. In Section 1.5.3 of [RFC4594], EF is
described as generally being used to carry voice or data that described as generally being used to carry voice or data that
requires "wire-like" behavior through the network. The NQB PHB requires "wire-like" behavior through the network. The NQB PHB
similarly is useful to carry application traffic requiring wire-like similarly is useful to carry application traffic requiring wire-like
performance, characterized by low delay and low delay variation, but performance, characterized by low delay and low-delay variation, but
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
skipping to change at line 1807 skipping to change at line 1803
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 Diffserv Code Points Appendix D. Alternative DS Codepoints
In networks where the DSCP 45 (decimal) is already in use for another In networks where the DSCP 45 (decimal) is already in use for another
(e.g., a local-use) purpose or where specialized PHBs are available (e.g., a local-use) purpose or where specialized PHBs are available
that can meet specific application requirements (e.g., a guaranteed- that can meet specific application requirements (e.g., a guaranteed-
delay path for voice traffic), use of another DSCP value could be delay path for voice traffic), use of another DSCP value could be
preferred. preferred.
In end systems where the choice of using DSCP 45 (decimal) is not In end systems where the choice of using DSCP 45 (decimal) is not
available to the application, the CS5 DSCP (40 decimal) could be used available to the application, the CS5 DSCP (40 decimal) could be used
as a fallback. See Section 6.3 for rationale as to why this choice as a fallback. See Section 6.3 for rationale as to why this choice
 End of changes. 71 change blocks. 
325 lines changed or deleted 321 lines changed or added

This html diff was produced by rfcdiff 1.48.