| rfc9956.original.xml | rfc9956.xml | |||
|---|---|---|---|---|
| <?xml version='1.0' encoding='utf-8'?> | <?xml version='1.0' encoding='UTF-8'?> | |||
| <!-- This template is for creating an Internet Draft using xml2rfc, | ||||
| which is available here: http://xml.resource.org. --> | ||||
| <!DOCTYPE rfc > | ||||
| <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?> | ||||
| <!-- used by XSLT processors --> | ||||
| <!-- For a complete list and description of processing instructions (PIs), | ||||
| please see http://xml.resource.org/authoring/README.html. --> | ||||
| <!-- Below are generally applicable Processing Instructions (PIs) that most I-Ds | ||||
| might want to use. | ||||
| (Here they are set differently than their defaults in xml2rfc v1.32) --> | ||||
| <?rfc strict="yes" ?> | ||||
| <!-- give errors regarding ID-nits and DTD validation --> | ||||
| <!-- control the table of contents (ToC) --> | ||||
| <?rfc toc="yes"?> | ||||
| <!-- generate a ToC --> | ||||
| <?rfc tocdepth="4"?> | ||||
| <!-- the number of levels of subsections in ToC. default: 3 --> | ||||
| <!-- control references --> | ||||
| <?rfc symrefs="yes"?> | ||||
| <!-- use symbolic references tags, i.e, [RFC2119] instead of [1] --> | ||||
| <?rfc sortrefs="yes" ?> | ||||
| <!-- sort the reference entries alphabetically --> | ||||
| <!-- control vertical white space | ||||
| (using these PIs as follows is recommended by the RFC Editor) --> | ||||
| <?rfc compact="yes" ?> | ||||
| <!-- do not start each main section on a new page --> | ||||
| <?rfc subcompact="no" ?> | ||||
| <!-- keep one blank line between list items --> | ||||
| <!-- end of list of popular I-D processing instructions --> | ||||
| <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-ie | ||||
| tf-tsvwg-nqb-33" ipr="trust200902" obsoletes="" updates="8325" submissionType="I | ||||
| ETF" xml:lang="en" tocInclude="true" tocDepth="4" symRefs="true" sortRefs="true" | ||||
| version="3" consensus="true"> | ||||
| <!-- xml2rfc v2v3 conversion 2.39.0 --> | ||||
| <!-- category values: std, bcp, info, exp, and historic | ||||
| ipr values: trust200902, noModificationTrust200902, noDerivativesTrust200902 | ||||
| , | ||||
| or pre5378Trust200902 | ||||
| you can add the attributes updates="NNNN" and obsoletes="NNNN" | ||||
| they will automatically be output with "(if approved)" --> | ||||
| <!-- ***** FRONT MATTER ***** --> | ||||
| <front> | <!DOCTYPE rfc [ | |||
| <!-- The abbreviated title is used in the page header - it is only necessary | <!ENTITY nbsp " "> | |||
| if the | <!ENTITY zwsp "​"> | |||
| full title is longer than 39 characters --> | <!ENTITY nbhy "‑"> | |||
| <!ENTITY wj "⁠"> | ||||
| ]> | ||||
| <title abbrev="Non-Queue-Building PHB">A Non-Queue-Building Per-Hop Behavior | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-ie | |||
| (NQB PHB) for Differentiated Services</title> | tf-tsvwg-nqb-33" number="9956" ipr="trust200902" obsoletes="" updates="8325" sub | |||
| <seriesInfo name="Internet-Draft" value="draft-ietf-tsvwg-nqb-33"/> | missionType="IETF" xml:lang="en" tocInclude="true" tocDepth="4" symRefs="true" s | |||
| <!-- add 'role="editor"' below for the editors if appropriate --> | ortRefs="true" version="3" consensus="true"> | |||
| <!-- Another author who claims to be an editor --> | <front> | |||
| <title abbrev="NQB PHB for Diffserv">A Non-Queue-Building Per-Hop Behavior ( | ||||
| NQB PHB) for Differentiated Services</title> | ||||
| <seriesInfo name="RFC" value="9956"/> | ||||
| <author fullname="Greg White" initials="G." surname="White"> | <author fullname="Greg White" initials="G." surname="White"> | |||
| <organization>CableLabs</organization> | <organization>CableLabs</organization> | |||
| <address> | <address> | |||
| <email>g.white@cablelabs.com</email> | <email>g.white@cablelabs.com</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <author fullname="Thomas Fossati" initials="T." surname="Fossati"> | <author fullname="Thomas Fossati" initials="T." surname="Fossati"> | |||
| <organization>Linaro</organization> | <organization>Linaro</organization> | |||
| <address> | <address> | |||
| <email>thomas.fossati@linaro.org</email> | <email>thomas.fossati@linaro.org</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <author fullname="Rüdiger Geib" initials="R." surname="Geib"> | <author fullname="Rüdiger Geib" initials="R." surname="Geib"> | |||
| <organization>Deutsche Telekom</organization> | <organization>Deutsche Telekom</organization> | |||
| <address> | <address> | |||
| <email>Ruediger.Geib@telekom.de</email> | <email>Ruediger.Geib@telekom.de</email> | |||
| </address> | </address> | |||
| </author> | </author> | |||
| <date year="2025"/> | <date year="2026" month="April"/> | |||
| <!-- Meta-data Declarations --> | <area>WIT</area> | |||
| <workgroup>tsvwg</workgroup> | ||||
| <area>Transport</area> | <keyword>DS</keyword> | |||
| <workgroup>Transport Area Working Group</workgroup> | <keyword>Diffserv</keyword> | |||
| <keyword/> | <keyword>DSCP</keyword> | |||
| <!-- Keywords will be incorporated into HTML output | <keyword>L4S</keyword> | |||
| files in a meta tag but they have no effect on text or nroff | <keyword>delay</keyword> | |||
| output. If you submit your draft to the RFC Editor, the | <keyword>jitter</keyword> | |||
| keywords will be used for the search engine. --> | <keyword>delay variation</keyword> | |||
| <keyword>Queuing Delay</keyword> | ||||
| <keyword>One Way Delay</keyword> | ||||
| <keyword>Round-Trip Time</keyword> | ||||
| <keyword>RTT</keyword> | ||||
| <keyword>Quality of Service</keyword> | ||||
| <keyword>QoS</keyword> | ||||
| <keyword>Quality of Experience</keyword> | ||||
| <keyword>QoE</keyword> | ||||
| <abstract> | <abstract> | |||
| <t> This document specifies characteristics of a Non-Queue-Building Per-Ho | <t> This document specifies characteristics of a Non-Queue-Building Per-Ho | |||
| p Behavior (NQB PHB). The NQB PHB provides a shallow-buffered, best-effort servi | p Behavior (NQB PHB). | |||
| ce as a complement to a Default deep-buffered best-effort service for Internet s | The NQB PHB provides a shallow-buffered, best-effort service as a compleme | |||
| ervices. The purpose of this NQB PHB is to provide a separate queue that enables | nt to a Default deep-buffered, best-effort service for Internet services. | |||
| smooth (i.e. non-bursty), low-data-rate, application-limited traffic microflows | ||||
| , which would ordinarily share a queue with bursty and capacity-seeking traffic, | The purpose of this NQB PHB is to provide a separate queue that | |||
| to avoid the delay, delay variation and loss caused by such traffic. This PHB i | enables smooth (i.e., non-bursty), low-data-rate, application-limited traf | |||
| s implemented without prioritization and can be implemented without rate policin | fic microflows, | |||
| g, making it suitable for environments where the use of these features is restri | to avoid the delay, delay variation and | |||
| cted. The NQB PHB has been developed primarily for use by access network segment | loss that would ordinarily be caused by sharing a queue with bursty, capac | |||
| s, where queuing delay and queuing loss caused by Queue-Building protocols are m | ity-seeking traffic. | |||
| anifested, but its use is not limited to such segments. In particular, the appli | ||||
| cation of NQB PHB to cable broadband links, Wi-Fi links, and mobile network radi | This PHB is implemented without prioritization and can be implemented with | |||
| o and core segments are discussed. This document recommends a specific Differen | out rate policing, making it suitable for environments where the use of these fe | |||
| tiated Services Code Point (DSCP) to identify Non-Queue-Building microflows, and | atures is restricted. | |||
| updates the RFC8325 guidance on mapping differentiated services (Diffserv) to I | The NQB PHB has been developed primarily for use by access network segment | |||
| EEE 802.11 for this codepoint.</t> | s, where queuing delay and queuing loss caused by Queue-Building (QB) protocols | |||
| <t>[NOTE (to be removed by RFC-Editor): This document references an ISE su | are manifested; however, its use is not limited to such segments. | |||
| bmission draft (I-D.briscoe-docsis-q-protection) that is approved for publicatio | In particular, the application of NQB PHB to cable broadband links, Wi-Fi | |||
| n as an RFC. This draft should be held for publication until the queue protectio | links, and mobile network radio/core segments are discussed in this document. | |||
| n RFC can be referenced.]</t> | This document recommends a specific Differentiated Services Code Point (DS | |||
| CP) to identify NQB microflows and updates | ||||
| the guidance in RFC 8325 on mapping Differentiated Services (Diffserv or D | ||||
| S) to IEEE 802.11 for this codepoint.</t> | ||||
| </abstract> | </abstract> | |||
| </front> | </front> | |||
| <middle> | <middle> | |||
| <section numbered="true"> | <section numbered="true"> | |||
| <name>Introduction</name> | <name>Introduction</name> | |||
| <t>This document defines a Differentiated Services per-hop behavior (PHB) called the "Non-Queue-Building Per-Hop Behavior" (NQB PHB), which isolates traff ic microflows (application-to-application flows, see <xref target="RFC2475" sect ion="1.2"/>) that are relatively low data rate and that do not themselves materi ally contribute to queuing delay and loss, allowing them to avoid the queuing de lay and losses caused by other traffic. Such Non-Queue-Building microflows (for example: interactive voice, game sync packets, certain machine-to-machine applic ations, DNS lookups, and some real-time IoT analytics data) are low-data-rate ap plication-limited microflows that are distinguished from bursty traffic microflo ws and high-data-rate traffic microflows managed by a classic congestion control algorithm, both of which cause queuing delay and loss. The term "classic conges tion control" is defined in <xref target="RFC9330"/> to mean one that coexists w ith standard Reno congestion control <xref target="RFC5681"/>. In this document we will use the term Queue-Building (QB) to refer to microflows that cause queui ng delay and loss. See <xref target="RFC2475" section="1.2"/> for definitions of other terminology used in this document.</t> | ||||
| <t>In accordance with IETF guidance in <xref target="RFC2914"/> and <xref | <t>This document defines a Diffserv PHB called the "Non-Queue-Building Per | |||
| target="RFC8085"/>, most packets carried by access networks are managed by an en | -Hop Behavior" (or "NQB PHB"). | |||
| d-to-end congestion control algorithm. Many of the commonly-deployed congestion | The NQB PHB isolates traffic microflows (application-to-application flo | |||
| control algorithms, such as <xref target="RFC5681">Reno</xref>, <xref target="RF | ws, see <xref target="RFC2475" section="1.2"/>) that have relatively | |||
| C9438">Cubic</xref> or <xref target="I-D.ietf-ccwg-bbr">BBR</xref>, are designed | low data rates and that do not, themselves, materially contribute to qu | |||
| to seek the available capacity of the path from sender to receiver (which can f | euing delay and loss. | |||
| requently be the access network link capacity), and in doing so generally oversh | This isolation allows these traffic microflows to avoid the queuing del | |||
| oot the available capacity, causing a queue to build up at the bottleneck link. | ay and losses caused by other traffic.</t> | |||
| This queue build-up results in variable delay and packet loss that can affect al | ||||
| l the applications that are sharing the bottleneck link. Moreover, many bottlene | ||||
| ck links implement a relatively deep buffer (100 ms or more) <xref target="Getty | ||||
| s2012"/><xref target="Cardwell2017"/><xref target="WikipediaBufferbloat"/><xref | ||||
| target="I-D.ietf-ccwg-bbr"/> in order to enable these congestion control algorit | ||||
| hms to use the link efficiently, which exacerbates the delay and delay variation | ||||
| experienced.</t> | ||||
| <t>In contrast to applications that frequently cause queuing delay, there | <t>NQB microflows such as interactive voice, game sync packets, certain ma | |||
| are a variety of relatively low data rate applications that do not materially co | chine-to-machine applications, DNS lookups, and some real-time Internet of Thing | |||
| ntribute to queuing delay and loss but are nonetheless subjected to it by sharin | s (IoT) analytics data are low-data-rate, application-limited microflows. | |||
| g the same bottleneck link in the access network, in particular. Many of these a | These can be distinguished from bursty traffic microflows and high-data | |||
| pplications can be sensitive to delay or delay variation, as well as packet loss | -rate traffic microflows managed by a classic congestion control algorithm (both | |||
| , and thus produce a poor quality of experience in such conditions.</t> | of which cause queuing delay and loss). | |||
| The term "classic congestion control" is defined in <xref target="RFC93 | ||||
| 30"/> to mean congestion control that coexists with standard Reno congestion con | ||||
| trol <xref target="RFC5681"/>. | ||||
| In this document, we will use "Queue-Building" (or "QB") to refer to mi | ||||
| croflows that cause queuing delay and loss. | ||||
| See <xref target="RFC2475" section="1.2"/> for definitions of other ter | ||||
| minology used in this document.</t> | ||||
| <t>Active Queue Management (AQM) mechanisms intended for single queues (su | <t>In accordance with IETF guidance in <xref target="RFC2914"/> and <xref | |||
| ch as <xref target="RFC8033">PIE</xref>, <xref target="RFC8034">DOCSIS-PIE</xref | target="RFC8085"/>, most packets carried by access networks are managed by an en | |||
| >, <xref target="RFC9332">PI2</xref>, or <xref target="RFC8289">CoDel</xref>) ca | d-to-end congestion control algorithm. | |||
| n improve the quality of experience for delay sensitive applications, but there | Many of the commonly deployed congestion control algorithms, such as Re | |||
| are practical limits to the amount of improvement that can be achieved without i | no <xref target="RFC5681"></xref>, CUBIC <xref target="RFC9438"></xref>, or BBR | |||
| mpacting the throughput of capacity-seeking applications. For example, AQMs gene | <xref target="BBR-CC"></xref>, are designed to seek the available capacity of th | |||
| rally allow a significant amount of queue depth variation to accommodate the beh | e path from sender to receiver (which can frequently be the access network link | |||
| aviors of congestion control algorithms such as Reno and Cubic. If the AQM atte | capacity). | |||
| mpted to control the queue depth much more tightly, applications using those alg | In doing so, they generally overshoot the available capacity, causing a | |||
| orithms would not fully utilize the link. Alternatively, flow queuing systems, | queue to build up at the bottleneck link. | |||
| such as <xref target="RFC8290">fq_codel</xref> can be employed to isolate microf | This queue buildup results in variable delay and packet loss that can a | |||
| lows from one another, but they are not appropriate for all bottleneck links due | ffect all the applications that are sharing the bottleneck link. | |||
| to reasons that include complexity. </t> | Moreover, many bottleneck links implement a relatively deep buffer (100 | |||
| ms or more) (see <xref target="Gettys2012"/>, <xref target="Cardwell2017"/>, <x | ||||
| ref target="WikipediaBufferbloat"/>, and <xref target="BBR-CC"/>) in order to en | ||||
| able these congestion control algorithms to use the link efficiently, which exac | ||||
| erbates the delay and delay variation experienced.</t> | ||||
| <t>The NQB PHB supports differentiating between these two classes of traff | <t>In contrast to applications that frequently cause queuing delay, there | |||
| ic in bottleneck links and queuing them separately so that both classes can deli | are a variety of relatively low data rate applications that do not materially co | |||
| ver satisfactory quality of experience for their applications. In particular, th | ntribute to queuing delay and loss; | |||
| e NQB PHB provides a shallow-buffered, best-effort service as a complement to a | nonetheless, they are subjected to it by sharing the same bottleneck li | |||
| Default (see <xref target="RFC2474"/>) deep-buffered best-effort service. This P | nk. | |||
| HB is designed for broadband access network links, where there is minimal aggreg | Many of these applications can be sensitive to delay or delay variation | |||
| ation of traffic, and especially when buffers are deep (see <xref target="applic | , as well as packet loss; thus, they produce a poor Quality of Experience (QoE) | |||
| ability"/>). The applicability of this PHB to lower-speed links is discussed in | in such conditions.</t> | |||
| <xref target="low-rate-links"/>. </t> | ||||
| <t>To be clear, a network implementing the NQB PHB solely provides isolati | <t>Active Queue Management (AQM) mechanisms intended for single queues (su | |||
| on for traffic classified as behaving in conformance with the behaviors discusse | ch as Proportional Integral Controller Enhanced (PIE) <xref target="RFC8033"></x | |||
| d in <xref target="behaviors"/>. A node supporting the NQB PHB makes no guarante | ref>, DOCSIS-PIE <xref target="RFC8034"></xref>, PI2 <xref target="RFC9332"></xr | |||
| es on delay or data rate for NQB-marked microflows (beyond the delay bound provi | ef>, or CoDel <xref target="RFC8289"></xref>) can improve the QoE for delay-sens | |||
| ded by the shallow buffer), it is the NQB senders' behavior itself which results | itive applications, but there are practical limits to the amount of improvement | |||
| in low delay and low loss.</t> | that can be achieved without impacting the throughput of capacity-seeking applic | |||
| ations. | ||||
| For example, AQMs generally allow a significant amount of queue depth v | ||||
| ariation to accommodate the behaviors of congestion control algorithms such as R | ||||
| eno and CUBIC. | ||||
| If the AQM attempted to control the queue depth much more tightly, appl | ||||
| ications using those algorithms would not fully utilize the link. | ||||
| Alternatively, flow-queuing systems, such as fq_codel <xref target="RFC | ||||
| 8290"></xref> can be employed to isolate microflows from one another; however, t | ||||
| hey are not appropriate for all bottleneck links due to reasons that include com | ||||
| plexity. </t> | ||||
| <t><xref target="dscp"/> and <xref target="sdos"/> of this document provid | <t>The NQB PHB supports differentiating between these two classes of traff | |||
| e guidance for network operators regarding appropriate forwarding of traffic mar | ic in bottleneck links and queuing them separately so that both classes can deli | |||
| ked with the NQB Differentiated Services Code Point (DSCP). The guidance includ | ver satisfactory QoE for their applications. | |||
| es recommendations for the configuration of network nodes that support the NQB P | In particular, the NQB PHB provides a shallow-buffered, best-effort ser | |||
| HB as well as for network nodes that do not support the PHB, to allow NQB traffi | vice as a complement to a Default (see <xref target="RFC2474"/>) deep-buffered, | |||
| c to be forwarded in a way that aligns with the goals for NQB treatment and supp | best-effort service. | |||
| orts the use of this code point by other nodes and other networks.</t> | This PHB is designed for broadband access network links (where there is | |||
| minimal aggregation of traffic), especially when buffers are deep (see <xref ta | ||||
| rget="applicability"/>). | ||||
| The applicability of this PHB to lower-rate links is discussed in <xref | ||||
| target="low-rate-links"/>. </t> | ||||
| <t>To be clear, a network implementing the NQB PHB solely provides isolati | ||||
| on for traffic classified as behaving in conformance with the behaviors discusse | ||||
| d in <xref target="behaviors"/>. | ||||
| A node supporting the NQB PHB makes no guarantees on delay or data rate | ||||
| for NQB-marked microflows (beyond the delay bound provided by the shallow buffe | ||||
| r), it is the NQB senders' behavior itself that results in low delay and low los | ||||
| s.</t> | ||||
| <t>Sections <xref target="dscp" format="counter"/> and <xref target="sdos" | ||||
| format="counter"/> of this document provide guidance for network operators rega | ||||
| rding appropriate forwarding of traffic marked with the NQB DSCP. | ||||
| The guidance includes recommendations for the configuration of network | ||||
| nodes that support the NQB PHB as well as for network nodes that do not support | ||||
| the PHB; this allows NQB traffic to be forwarded in a way that aligns with the g | ||||
| oals for NQB treatment and supports the use of this codepoint by other nodes and | ||||
| other networks.</t> | ||||
| </section> | </section> | |||
| <section numbered="true"> | <section numbered="true"> | |||
| <name>Requirements Language</name> | <name>Requirements Language</name> | |||
| <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SH | <t> | |||
| OULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in | The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14 | |||
| this document are to be interpreted as described in BCP 14 <xref target="RFC2119 | >REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL | |||
| "/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, a | NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<b | |||
| s shown here.</t> | cp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", | |||
| "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document ar | ||||
| e to be interpreted as | ||||
| described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> | ||||
| when, and only when, they appear in all capitals, as shown here. | ||||
| </t> | ||||
| </section> | </section> | |||
| <section numbered="true"> | <section numbered="true"> | |||
| <name>Context</name> | <name>Context</name> | |||
| <section numbered="true" anchor="behaviors"> | <section numbered="true" anchor="behaviors"> | |||
| <name>Non-Queue-Building Behavior</name> | <name>NQB Behavior</name> | |||
| <t>There are applications that send traffic at relatively low data rates | <t>There are applications that send traffic at relatively low data rates | |||
| and/or in a fairly smooth and consistent manner such that they are unlikely to | and/or in a fairly smooth and consistent manner such that they are unlikely to | |||
| exceed the available capacity of the network path between sender and receiver ev | exceed the available capacity of the network path between sender and receiver, e | |||
| en at an inter-packet timescale. Some of these applications are transactional in | ven at an inter-packet timescale. | |||
| nature, and might only send one packet (or a few packets) per RTT. These appli | Some of these applications are transactional in nature; they might on | |||
| cations might themselves only cause very small, transient queues to form in netw | ly send one packet (or a few packets) per RTT. | |||
| ork buffers, but nonetheless they can be subjected to delay and delay variation | These applications might themselves only cause very small, transient | |||
| as a result of sharing a network buffer with applications that tend to cause lar | queues to form in network buffers; nonetheless, they can be subjected to delay a | |||
| ge and/or standing queues to form. These applications typically implement a resp | nd delay variation as a result of sharing a network buffer with applications tha | |||
| onse to network congestion that consists of discontinuing (or significantly redu | t tend to cause large and/or standing queues to form. | |||
| cing) transmissions. These applications can be negatively affected by excessive | These applications typically implement a response to network congesti | |||
| delay and delay variation. Such applications are ideal candidates to be queued | on that consists of discontinuing (or significantly reducing) transmissions. | |||
| separately from the applications that are the cause of queue build-up, delay and | These applications can be negatively affected by excessive delay and | |||
| loss.</t> | delay variation. | |||
| Such applications are ideal candidates to be queued separately from t | ||||
| he applications that are the cause of queue buildup, delay, and loss.</t> | ||||
| <t>In contrast, Queue-Building (QB) microflows include those that probe | <t>In contrast, QB microflows include those that probe for link capacity | |||
| for the link capacity and induce delay and loss as a result, for example microfl | and induce delay and loss as a result, for example, microflows that use CUBIC, | |||
| ows that use Cubic, Reno or other TCP/QUIC congestion control algorithms in a ca | Reno, or other TCP/QUIC congestion control algorithms in a capacity-seeking mann | |||
| pacity-seeking manner. Other types of QB microflows include those that send at | er. | |||
| a high burst rate even if the long-term average data rate is much lower.</t> | Other types of QB microflows include those that send at a high burst | |||
| rate even if the long-term average data rate is much lower.</t> | ||||
| </section> | </section> | |||
| <section numbered="true"> | <section numbered="true"> | |||
| <name>Relationship to the Diffserv Architecture</name> | <name>Relationship to the Diffserv Architecture</name> | |||
| <t>The IETF has defined the Differentiated Services architecture <xref t arget="RFC2475"/> with the intention that it allows traffic to be marked in a ma nner that conveys the performance requirements of that traffic either qualitativ ely or in a relative sense (e.g. priority). The architecture defines the use of the Diffserv field <xref target="RFC2474"/> for this purpose, and numerous RFCs have been written that describe recommended interpretations of the values (Diffs erv Code Points <xref target="RFC2474"/>) of the field, and standardized treatme nts (traffic conditioning and per-hop-behaviors <xref target="RFC2475"/>) that c an be implemented to satisfy the performance requirements of traffic so marked.< /t> | ||||
| <t>While this architecture is powerful and flexible enough to be configu | <t>The IETF has defined the Diffserv architecture <xref target="RFC2475" | |||
| red to meet the performance requirements of a variety of applications and traffi | /> with the intention that it allows traffic to be marked in a manner that conve | |||
| c categories, or to achieve differentiated service offerings, meeting the perfor | ys the performance requirements of that traffic either qualitatively or in a rel | |||
| mance requirements of an application across the entire sender-to-receiver path i | ative sense (e.g., priority). | |||
| nvolves all the networks in the path agreeing on what those requirements are and | The architecture defines the use of the DSCP field <xref target="RFC2 | |||
| sharing an interest in meeting them. In many cases this is made more difficult | 474"/> for this purpose, and numerous RFCs have been written that describe recom | |||
| since the performance "requirements" are not strict ones (e.g., applications wil | mended interpretations of the values (Diffserv Codepoints <xref target="RFC2474" | |||
| l degrade in some manner as loss, delay and/or delay-variation increase), so the | />) of the field, and standardized treatments (traffic conditioning and per-hop- | |||
| importance of meeting them for any particular application in some cases involve | behaviors <xref target="RFC2475"/>) that can be implemented to satisfy the perfo | |||
| s a judgment as to the value of avoiding some amount of degradation in quality f | rmance requirements of traffic so marked.</t> | |||
| or that application in exchange for an increase in the degradation of another ap | ||||
| plication.</t> | ||||
| <t>Further, in many cases the implementation of Diffserv PHBs has histor | <t>While this architecture is powerful and flexible enough to be configu | |||
| ically involved prioritization of service classes with respect to one another, w | red to meet the performance requirements of a variety of applications and traffi | |||
| hich sets up the zero-sum game alluded to in the previous paragraph, and results | c categories, or to achieve differentiated service offerings, meeting the perfor | |||
| in the need to limit access to higher priority classes via mechanisms such as a | mance requirements of an application across the entire sender-to-receiver path i | |||
| ccess control, admission control, traffic conditioning and rate policing, and/or | nvolves all the networks in the path agreeing on what those requirements are and | |||
| to meter and bill for carriage of such traffic. These mechanisms can be difficu | sharing an interest in meeting them. | |||
| lt or impossible to implement in the Internet.</t> | In many cases, this is made more difficult since the performance "req | |||
| uirements" are not strict ones (e.g., applications will degrade in some manner a | ||||
| s loss, delay, and/or delay-variation increase), so the importance of meeting th | ||||
| em for any particular application in some cases involves a judgment as to the va | ||||
| lue of avoiding some amount of degradation in quality for that application in ex | ||||
| change for an increase in the degradation of another application.</t> | ||||
| <t>In contrast, the NQB PHB has been designed with the goal that it avoi | <t>Further, in many cases, the implementation of Diffserv PHBs has histo | |||
| ds many of these issues, and thus could conceivably be deployed across the Inter | rically involved prioritization of service classes with respect to one another, | |||
| net. The intent of the NQB DSCP is that it signals verifiable behavior that perm | which sets up the zero-sum game alluded to in the previous paragraph and which r | |||
| its the sender to request differentiated treatment. Also, the NQB traffic is to | esults in the need to limit access to higher priority classes via mechanisms suc | |||
| be given a separate queue with forwarding preference equal to Default traffic an | h as access control, admission control, traffic conditioning and rate policing, | |||
| d given no reserved capacity other than any minimum capacity that it shares with | and/or to meter and bill for carriage of such traffic. | |||
| Default traffic. As a result, the NQB PHB does not aim to meet specific applic | These mechanisms can be difficult or impossible to implement in the I | |||
| ation performance requirements. Instead, the sole goal of the NQB PHB is to isol | nternet.</t> | |||
| ate NQB traffic from other traffic that causes an increase in loss, delay, and/o | ||||
| r delay-variation, given that the NQB traffic is itself only an insignificant co | ||||
| ntributor to those degradations. The PHB is also designed to reduce the incentiv | ||||
| es for a sender to mismark its traffic, since neither higher capacity nor reserv | ||||
| ed capacity are being offered. These attributes eliminate many of the trade-offs | ||||
| that underlie the handling of differentiated service classes in the Diffserv ar | ||||
| chitecture as it has traditionally been defined. These attributes also significa | ||||
| ntly simplify access control and admission control functions, reducing them to s | ||||
| imple verification of behavior. This aspect is discussed further in <xref target | ||||
| ="sender"/> and <xref target="traffic_protection"/>.</t> | ||||
| <t>The NQB PHB is therefore intended for the situation where the perform | <t>In contrast, the NQB PHB has been designed with the goal that it avoi | |||
| ance requirements of applications cannot be assured across the whole sender-to-r | ds many of these issues; thus, it could conceivably be deployed across the Inter | |||
| eceiver path, and as a result, applications cannot feasibly place requirements o | net. | |||
| n the network. Instead, many applications have evolved to make the best out of t | The intent of the NQB DSCP is that it signals verifiable behavior tha | |||
| he network environment that they find themselves in. In this context, the NQB PH | t permits the sender to request differentiated treatment. | |||
| B is intended to provide a better network environment for applications that send | Also, the NQB traffic is to be given a separate queue with forwarding | |||
| data at relatively low and non-bursty data rates.</t> | preference equal to Default traffic and given no reserved capacity other than a | |||
| ny minimum capacity that it shares with Default traffic. | ||||
| As a result, the NQB PHB does not aim to meet specific application pe | ||||
| rformance requirements. | ||||
| Instead, the sole goal of the NQB PHB is to isolate NQB traffic from | ||||
| other traffic that causes an increase in loss, delay, and/or delay-variation, gi | ||||
| ven that the NQB traffic is, itself, only an insignificant contributor to those | ||||
| degradations. | ||||
| The PHB is also designed to reduce the incentives for a sender to mis | ||||
| -mark its traffic since neither higher capacity nor reserved capacity are being | ||||
| offered. | ||||
| These attributes eliminate many of the trade-offs that underlie the h | ||||
| andling of differentiated service classes in the Diffserv architecture as it has | ||||
| previously been defined. | ||||
| These attributes also significantly simplify access control and admis | ||||
| sion control functions, reducing them to simple verification of behavior. | ||||
| This aspect is discussed further in Sections <xref target="sender" fo | ||||
| rmat="counter"/> and <xref target="traffic_protection" format="counter"/>.</t> | ||||
| <t>In regards to comparison between the NQB PHB and other standardized P | <t>Therefore, the NQB PHB is intended for the situation where the perfor | |||
| HBs in the Diffserv series, the closest similarity is to the Expedited Forwardin | mance requirements of applications cannot be assured across the whole sender-to- | |||
| g (EF) PHB <xref target="RFC3246"/>, which also intends to enable low loss, low | receiver path; as a result, applications cannot feasibly place requirements on t | |||
| delay, and low delay variation services. Unlike EF, NQB has no requirement for a | he network. | |||
| guaranteed minimum rate, nor to police incoming traffic to such a rate, and NQB | Instead, many applications have evolved to make the best out of the n | |||
| is expected to be given the same forwarding preference as Default traffic. See | etwork environment that they find themselves in. | |||
| <xref target="EF"/> for a more detailed comparison of the NQB and EF PHBs.</t> | In this context, the NQB PHB is intended to provide a better network | |||
| environment for applications that send data at relatively low and non-bursty dat | ||||
| a rates.</t> | ||||
| <t>In nodes that support multiple DiffServ Service Classes, NQB traffic | <t>In regard to a comparison between the NQB PHB and other standardized | |||
| is intended to be treated as a part of the Default treatment. Traffic assigned t | PHBs in the Diffserv series, the closest similarity is to the Expedited Forwardi | |||
| o this class does not receive better forwarding treatment (e.g., prioritization) | ng (EF) PHB <xref target="RFC3246"/>, which also intends to enable services that | |||
| with respect to other classes, AFxx, EF, etc. Of course, traffic marked as NQB | provide low loss, low delay, and low-delay variation. | |||
| could (like other Default traffic) could receive better forwarding treatment wit | Unlike EF, NQB has no requirement for a guaranteed minimum rate, nor | |||
| h respect to Lower-Effort (LE) <xref target="RFC8622"/> (e.g. the NQB queue coul | does have a requirement to police incoming traffic to such a rate: NQB is expect | |||
| d be emptied in a priority sequence before the LE queue).</t> | ed to be given the same forwarding preference as Default traffic. | |||
| See <xref target="EF"/> for a more detailed comparison of the NQB and | ||||
| EF PHBs.</t> | ||||
| <t>In nodes that support multiple Diffserv Service Classes, NQB traffic | ||||
| is intended to be handled as a part of the Default treatment. | ||||
| Traffic assigned to this class does not receive better forwarding tre | ||||
| atment (e.g., prioritization) with respect to other classes, AFxx, EF, etc. | ||||
| Of course, traffic marked as NQB could (like other Default traffic) r | ||||
| eceive better forwarding treatment with respect to Lower-Effort (LE) <xref targe | ||||
| t="RFC8622"/> (e.g., the NQB queue could be emptied in a priority sequence befor | ||||
| e the LE queue).</t> | ||||
| </section> | </section> | |||
| <section numbered="true"> | <section numbered="true"> | |||
| <name>Relationship to L4S</name> | <name>Relationship to L4S</name> | |||
| <t>The NQB DSCP and PHB described in this document have been defined to operate independently of the L4S Architecture <xref target="RFC9330"/>. Nonethe less, traffic marked with the NQB DSCP is intended to be compatible with L4S <xr ef target="RFC9330"/>, with the result being that NQB traffic and L4S traffic ca n share the low-latency queue in an L4S DualQ node <xref target="RFC9332"/>. Com pliance, by a network node, with the DualQ Coupled AQM requirements (<xref targe t="RFC9332" section="2.5"/>) is considered sufficient to support the NQB PHB req uirement of fair allocation of capacity between the QB and NQB queues (<xref tar get="phb_requirements"/>). Note that these requirements in turn require complian ce with all the requirements in <xref target="RFC9331" section="5"/>.</t> | ||||
| <t>Applications that comply with both the NQB sender requirements in <xr | <!--[rfced] Is there a way to rephrase to avoid so many uses of variants of | |||
| ef target="sender"/> and the L4S "Prague" requirements in <xref target="RFC9331" | "require"? | |||
| section="4"/> could mark their packets both with the NQB DSCP and with the ECT( | ||||
| 1) value. </t> | ||||
| <t>In nodes that support both the NQB PHB and L4S, the L4S network funct | Original: | |||
| ions SHOULD treat packets marked with the NQB DSCP and ECT(1) or CE the same as | Note that these requirements in turn require compliance with all the | |||
| packets marked with the Default DSCP and the same ECN value. Here, L4S network f | requirements in Section 5 of [RFC9331]. | |||
| unctions refers to the L4S Network Node functions (<xref target="RFC9331" sectio | --> | |||
| n="5"/>), and any mechanisms designed to protect the L4S queue (such as those di | ||||
| scussed in <xref target="RFC9330" section="8.2"/>). The processing by an L4S nod | ||||
| e of an ECT(0) packet that is classified to the L queue (e.g. as a result of bei | ||||
| ng marked with a NQB DSCP) is specified in <xref target="RFC9331" section="5.4.1 | ||||
| .1"/> and <xref target="RFC9332" section="2.5.1.1"/>.</t> | ||||
| <t>Additionally, <xref target="ecn"/> places requirements on treatment o | <t>In this document, the NQB DSCP and PHB have been defined to operate i | |||
| f ECN-marked packets by a node that support the NQB PHB.</t> | ndependently of the Low Latency, Low Loss, and Scalable throughput (L4S) archite | |||
| cture <xref target="RFC9330"/>. | ||||
| Nonetheless, traffic marked with the NQB DSCP is intended to be compa | ||||
| tible with L4S <xref target="RFC9330"/>, with the result being that NQB traffic | ||||
| and L4S traffic can share the low-latency queue in an L4S DualQ node <xref targe | ||||
| t="RFC9332"/>. | ||||
| A network node's compliance with the DualQ Coupled AQM requirements ( | ||||
| see <xref target="RFC9332" section="2.5"/>) is considered sufficient to support | ||||
| the NQB PHB requirement of fair allocation of capacity between the QB and NQB qu | ||||
| eues (<xref target="phb_requirements"/>). | ||||
| Note that these requirements, in turn, require compliance with all th | ||||
| e requirements in <xref target="RFC9331" section="5"/>.</t> | ||||
| <t>Applications that comply with both the NQB sender requirements in <xr | ||||
| ef target="sender"/> and the "Prague L4S requirements" in <xref target="RFC9331" | ||||
| section="4"/> could mark their packets both with the NQB DSCP and with the ECT( | ||||
| 1) value. </t> | ||||
| <t>In nodes that support both the NQB PHB and L4S, the L4S network funct | ||||
| ions <bcp14>SHOULD</bcp14> treat packets marked with the NQB DSCP and ECT(1) or | ||||
| Congestion Experienced (CE) the same as packets marked with the Default DSCP and | ||||
| the same Explicit Congestion Notification (ECN) value. | ||||
| Here, "L4S network functions" refers to the L4S Network Node function | ||||
| s (see <xref target="RFC9331" section="5"/>), and any mechanisms designed to pro | ||||
| tect the L4S queue (such as those discussed in <xref target="RFC9330" section="8 | ||||
| .2"/>). | ||||
| The processing by an L4S node of an ECT(0) packet that is classified | ||||
| to the L queue (e.g., as a result of being marked with a NQB DSCP) is specified | ||||
| in <xref target="RFC9331" section="5.4.1.1"/> and <xref target="RFC9332" section | ||||
| ="2.5.1.1"/>.</t> | ||||
| <t>Additionally, <xref target="ecn"/> places requirements on treatment o | ||||
| f ECN-marked packets by a node that supports the NQB PHB.</t> | ||||
| </section> | </section> | |||
| <section numbered="true" anchor="applicability"> | <section numbered="true" anchor="applicability"> | |||
| <name>Applicability</name> | <name>Applicability</name> | |||
| <t>This PHB is primarily applicable for high-speed broadband access netw ork links, where there is minimal aggregation of traffic, and deep buffers are c ommon. </t> | <t>This PHB is primarily applicable for high-speed broadband access netw ork links, where there is minimal aggregation of traffic and deep buffers are co mmon. </t> | |||
| <t>In many other links, forwarding NQB-marked packets using the Default | <t>In many other links, forwarding NQB-marked packets using the Default | |||
| treatment might be sufficient to preserve the loss, delay and delay-variation pe | treatment might be sufficient to preserve the loss, delay, and delay-variation p | |||
| rformance for NQB traffic. This is generally true in links that do not typicall | erformance for NQB traffic. | |||
| y experience congestion (for example, many backbone and core network links), and | This is generally true in links that do not typically experience cong | |||
| in highly aggregated links (links designed to carry a large number of simultane | estion (for example, many backbone and core network links) and in highly aggrega | |||
| ous microflows) where individual microflow burstiness is averaged out and thus i | ted links (links designed to carry a large number of simultaneous microflows) wh | |||
| s unlikely to cause much actual delay. <xref target="aggregation"/> provides rec | ere individual microflow burstiness is averaged out and, thus, is unlikely to ca | |||
| ommendations for configuration of network nodes in such cases.</t> | use much actual delay. <xref target="aggregation"/> provides recommendations for | |||
| configuration of network nodes in such cases.</t> | ||||
| </section> | </section> | |||
| </section> | </section> | |||
| <section anchor="sender" numbered="true"> | <section anchor="sender" numbered="true"> | |||
| <name>Non-Queue-Building Sender Requirements</name> | <name>NQB Sender Requirements</name> | |||
| <t>Microflows that are eligible to be marked with the NQB DSCP are ones | <t>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 network path | that send non-bursty traffic at a low data rate relative to typical network path | |||
| capacities. Here the data rate is limited by the application itself rather tha | capacities. | |||
| n by network capacity - these microflows send at a data rate of no more than abo | Here, the data rate is limited by the application itself rather than | |||
| ut 1 percent of the "typical" network path capacity. In addition, these microfl | by network capacity: these microflows send at a data rate of no more than about | |||
| ows are required to be sent in a smooth (i.e. paced) manner, where the number of | 1% of the "typical" network path capacity. | |||
| IP bytes sent in any time interval "T" is less than or equal to (R * T) + MTU, | In addition, these microflows are required to be sent in a smooth (i. | |||
| where "R" is the maximum rate described in the preceding sentence, expressed in | e., paced) manner, where the number of IP bytes sent in any time interval "T" is | |||
| bytes-per-second. For example, in today's Internet, where access network data ra | less than or equal to (R * T) + MTU, where "R" is the maximum rate described in | |||
| tes are typically on the order of 50 Mbps or more (and see <xref target="low-rat | the preceding sentence, expressed in bytes-per-second. | |||
| e-links"/> for a discussion of cases where this isn't true), this implies 500 kb | For example, at the time of writing, access network data rates are ty | |||
| ps as an upper limit. Note that microflows are unidirectional while application | pically on the order of 50 Mbps or more in the Internet (see <xref target="low-r | |||
| traffic is often bidirectional (i.e., an application instance might consist of o | ate-links"/> for a discussion of cases where this isn't true): this implies 500 | |||
| ne or more microflows in each direction). It could be the case for a particular | kbps as an upper limit. | |||
| application that some of its microflows are eligible to be marked with the NQB D | Note that microflows are unidirectional while application traffic is | |||
| SCP while others are not. For example, an interactive video streaming applicatio | often bidirectional (i.e., an application instance might consist of one or more | |||
| n might consist of a high-bandwidth video stream (not eligible for NQB marking) | microflows in each direction). | |||
| in one direction, and a low-bandwidth control stream (eligible for NQB marking) | For a particular application, it could be the case that some of its m | |||
| in the other. </t> | icroflows are eligible to be marked with the NQB DSCP while others are not. | |||
| For example, an interactive video streaming application might consist | ||||
| of a high-bandwidth video stream (not eligible for NQB marking) in one directio | ||||
| n and a low-bandwidth control stream (eligible for NQB marking) in the other. </ | ||||
| t> | ||||
| <t>Microflows marked with the NQB DSCP are expected to comply with exist | <t>Microflows marked with the NQB DSCP are expected to comply with exist | |||
| ing guidance for safe deployment on the Internet, including the guidance around | ing guidance for safe deployment on the Internet, including the guidance related | |||
| response to network congestion, for example the requirements in <xref target="RF | to response to network congestion, for example the requirements in <xref target | |||
| C8085"/> and <xref target="RFC3551" section="2"/> (also see the circuit breaker | ="RFC8085"/> and <xref target="RFC3551" section="2"/> (also see the circuit brea | |||
| limits in <xref target="RFC8083" section="4.3"/> and the description of inelasti | ker limits in <xref target="RFC8083" section="4.3"/> and the description of inel | |||
| c pseudowires in <xref target="RFC7893" section="4"/>). The fact that a microflo | astic pseudowires in <xref target="RFC7893" section="4"/>). | |||
| w's data rate is low relative to typical network capacities is no guarantee that | The fact that a microflow's data rate is low relative to typical netw | |||
| sufficient capacity exists in any particular network, and it is the responsibil | ork capacities is no guarantee that sufficient capacity exists in any particular | |||
| ity of the application to detect and react appropriately if the network capacity | network, and it is the responsibility of the application to detect and react ap | |||
| is insufficient. To be clear, the description of NQB-marked microflows in this | propriately if the network capacity is insufficient. | |||
| document is not to be interpreted as suggesting that applications generating su | To be clear, the description of NQB-marked microflows in this documen | |||
| ch microflows are in any way exempt from this responsibility. One way that an a | t is not to be interpreted as suggesting that applications generating such micro | |||
| pplication marking its traffic as NQB can handle this is to implement a scalable | flows are in any way exempt from this responsibility. | |||
| congestion control mechanism as described in <xref target="RFC9331"/>.</t> | One way that an application marking its traffic as NQB can handle thi | |||
| s is to implement a scalable congestion control mechanism as described in <xref | ||||
| target="RFC9331"/>.</t> | ||||
| <t>The Diffserv field specification requires the definition of a recomme | <t>The DS field specification requires the definition of a recommended D | |||
| nded DSCP to be associated with each standardized PHB (see <xref target="RFC2474 | SCP to be associated with each standardized PHB (see <xref target="RFC2474" sect | |||
| " section ="5"/>). In accordance with this, applications are RECOMMENDED to use | ion="5"/>). | |||
| the Diffserv Code Point (DSCP) 45 (decimal) to mark microflows as NQB. | In accordance with this, applications are <bcp14>RECOMMENDED</bcp14> | |||
| The choice of the DSCP value 45 (decimal) is motivated in part by the de | to use the DSCP value 45 (decimal) to mark microflows as NQB. | |||
| sire to achieve separate queuing in existing Wi-Fi networks (see <xref target="w | The choice of the DSCP value 45 (decimal) is motivated, in part, by t | |||
| ifi"/>) and by the desire to make implementation of the PHB simpler in network e | he desire to achieve separate queuing in existing Wi-Fi networks (see <xref targ | |||
| quipment that has the ability to classify traffic based on ranges of DSCP values | et="wifi"/>) and by the desire to make implementation of the PHB simpler in netw | |||
| (see <xref target="aggregation2"/> for further discussion). </t> | ork equipment that has the ability to classify traffic based on ranges of DSCP v | |||
| alues (see <xref target="aggregation2"/> for further discussion). </t> | ||||
| <t>The two primary considerations for whether an application chooses to | <t>The two primary considerations for whether an application chooses to | |||
| mark its traffic as NQB involve the risks of being subjected to a traffic protec | mark its traffic as NQB involve the risks of being subjected to a traffic protec | |||
| tion algorithm (see <xref target="traffic_protection"/>) and/or to the consequen | tion algorithm (see <xref target="traffic_protection"/>) and/or to the consequen | |||
| ces of overrunning the NQB shallow buffer if (in either case) the traffic contri | ces of overrunning the NQB shallow buffer if (in either case) the traffic contri | |||
| butes to the formation of a queue in a node that supports the PHB. In both cases | butes to the formation of a queue in a node that supports the PHB. | |||
| , the result could be that excess traffic is discarded or queued separately as D | In both cases, the result could be that excess traffic is discarded o | |||
| efault traffic (and thus potentially delivered out of order). To avoid these ris | r queued separately as Default traffic (and, thus, potentially is delivered out | |||
| ks, if a microflow's traffic exceeds the rate equation provided in the first par | of order). | |||
| agraph of this section, the application MUST NOT mark this traffic with the NQB | To avoid these risks, if a microflow's traffic exceeds the rate equat | |||
| DSCP. In such a case, the application could instead consider using a scalable co | ion provided in the first paragraph of this section, the application <bcp14>MUST | |||
| ngestion control mechanism as described in <xref target="RFC9331"/>.</t> | NOT</bcp14> mark this traffic with the NQB DSCP. | |||
| In such a case, the application could instead consider using a scalab | ||||
| le congestion control mechanism as described in <xref target="RFC9331"/>.</t> | ||||
| <t>The sender requirements outlined in this section are all related to o bservable attributes of the packet stream, | <t>The sender requirements outlined in this section are all related to o bservable attributes of the packet stream, | |||
| which makes it possible for network elements (including nodes implemen | which makes it possible for network elements (including nodes impleme | |||
| ting the PHB) to monitor for inappropriate | nting the PHB) to monitor for inappropriate | |||
| usage of the DSCP, and take action (such as discarding or re-marking) | usage of the DSCP and take action (such as discarding or re-marking) | |||
| on traffic that does not comply. This functionality, when implemented as part of | on traffic that does not comply. | |||
| the | This functionality, when implemented as part of the | |||
| PHB is described in <xref target="traffic_protection"/>.</t> | PHB, is described in <xref target="traffic_protection"/>.</t> | |||
| </section> | </section> | |||
| <section anchor="phb_requirements" numbered="true"> | <section anchor="phb_requirements" numbered="true"> | |||
| <name>Non-Queue-Building PHB Requirements</name> | <name>NQB PHB Requirements</name> | |||
| <t>For the NQB PHB to become widely deployed, it is important that incen | <t>For the NQB PHB to become widely deployed, it is important that incen | |||
| tives are aligned correctly, i.e., that there is a benefit to the application in | tives are aligned correctly, i.e., that there is a benefit to the application in | |||
| marking its packets correctly, and a disadvantage (or at least no benefit) to a | marking its packets correctly and a disadvantage (or at least no benefit) to an | |||
| n application in intentionally mismarking its traffic. Thus, a useful property o | application in intentionally mis-marking its traffic. | |||
| f nodes (i.e. network switches and routers) that support separate queues for NQB | Thus, a useful property of nodes (i.e., network switches and routers) | |||
| and QB microflows is that for microflows consistent with the NQB sender require | that support separate queues for NQB and QB microflows is that each queue tends | |||
| ments in <xref target="sender"/>, the NQB queue would likely be a better choice | to be the better choice for the traffic it is designed for: the NQB queue for m | |||
| than the QB queue; and for microflows inconsistent with those requirements, the | icroflows consistent with the NQB sender requirements in <xref target="sender"/> | |||
| QB queue would likely be a better choice than the NQB queue. By adhering to thes | and the QB queue for those that are not. | |||
| e principles, there is little incentive for senders to mismark their traffic as | By adhering to these principles, there is little incentive for sender | |||
| NQB. </t> | s to mis-mark their traffic as NQB. </t> | |||
| <t>This principle of incentive alignment ensures a system is robust to t | <t>This principle of incentive alignment ensures a system is robust to t | |||
| he behavior of the large majority of individuals and organizations who can be ex | he behavior of the large majority of individuals and organizations who can be ex | |||
| pected to act in their own interests (including application developers and servi | pected to act in their own interests (including application developers and servi | |||
| ce providers who act in the interests of their users). Malicious behavior is not | ce providers who act in the interests of their users). | |||
| necessarily based on rational self-interest, so incentive alignment is not a su | Malicious behavior is not necessarily based on rational self-interest | |||
| fficient defense, but the large majority of users do not act out of malice. Prot | , so incentive alignment is not a sufficient defense, but the large majority of | |||
| ection against malicious attacks (and accidents) is addressed in <xref target="t | users do not act out of malice. | |||
| raffic_protection"/> and summarized in <xref target="Security"/>. As mentioned p | Protection against malicious attacks (and accidents) is addressed in | |||
| reviously, the NQB designation and marking is intended to convey verifiable traf | <xref target="traffic_protection"/> and summarized in <xref target="Security"/>. | |||
| fic behavior, as opposed to simply a desire for differentiated treatment. As a r | As mentioned previously, the NQB designation and marking is intended | |||
| esult, any mismarking can be identified by the network.</t> | to convey verifiable traffic behavior, as opposed to simply a desire for differe | |||
| ntiated treatment. | ||||
| As a result, any mis-marking can be identified by the network.</t> | ||||
| <section numbered="true" anchor="primary"> | <section numbered="true" anchor="primary"> | |||
| <name>Primary Requirements</name> | <name>Primary Requirements</name> | |||
| <t>A node supporting the NQB PHB MUST provide a queue for Non-Queue-Buil ding traffic separate from the queue used for Default traffic.</t> | <t>A node supporting the NQB PHB <bcp14>MUST</bcp14> provide a queue for NQB traffic separate from the queue used for Default traffic.</t> | |||
| <t>A node supporting the NQB PHB SHOULD NOT rate limit or rate police th | <t>A node supporting the NQB PHB <bcp14>SHOULD NOT</bcp14> rate limit or | |||
| e aggregate of NQB traffic separately from Default traffic. An exception to this | rate police the aggregate of NQB traffic separately from Default traffic. | |||
| recommendation for traffic sent towards a non-DS-capable domain is discussed in | An exception to this recommendation for traffic sent towards a non-DS | |||
| <xref target="unmanaged"/>. Note also that <xref target="traffic_protection"/> | -capable domain is discussed in <xref target="unmanaged"/>. | |||
| discusses potential uses of per-microflow (rather than aggregate) rate policing. | Note also that <xref target="traffic_protection"/> discusses potentia | |||
| </t> | l uses of per-microflow (rather than aggregate) rate policing.</t> | |||
| <t>The NQB queue SHOULD be given equivalent forwarding preference compar | <t>The NQB queue <bcp14>SHOULD</bcp14> be given equivalent forwarding pr | |||
| ed to Default. The node SHOULD provide a scheduler that allows NQB and Default t | eference compared to the Default queue. | |||
| raffic to share the link in a manner that treats the two classes equally, e.g., | The node <bcp14>SHOULD</bcp14> provide a scheduler that allows NQB an | |||
| a deficit round-robin (DRR) scheduler with equal weights, or two Wireless Multim | d Default traffic to share the link in a manner that treats the two classes equa | |||
| edia Access Categories with the same Enhanced Distributed Channel Access (EDCA) | lly, e.g., a Deficit Round-Robin (DRR) scheduler with equal weights or two Wirel | |||
| parameters. The use of equal weights for DRR is given as a reasonable example, a | ess Multimedia Access Categories with the same Enhanced Distributed Channel Acce | |||
| nd is not intended to preclude other scheduling weights (see below for details). | ss (EDCA) parameters. | |||
| A node that provides rate limits or rate guarantees for Default traffic SHOULD | The use of equal weights for DRR is given as a reasonable example and | |||
| ensure that such limits and/or guarantees are shared with NQB traffic in a manne | is not intended to preclude other scheduling weights (see below for details). | |||
| r that treats the two classes equally. This could be supported using a hierarchi | A node that provides rate limits or rate guarantees for Default traff | |||
| cal scheduler where the rate limits and guarantees are configured on a parent cl | ic <bcp14>SHOULD</bcp14> ensure that such limits and/or guarantees are shared wi | |||
| ass, and the two queues (Default and NQB) are arranged as the children of the pa | th NQB traffic in a manner that treats the two classes equally. | |||
| rent class and given equal access to the capacity configured for the parent clas | This could be supported using a hierarchical scheduler where the rate | |||
| s (e.g. with equal DRR scheduling). Compliance with these recommendations reduce | limits and guarantees are configured on a parent class, and the two queues (Def | |||
| s the incentives for QB traffic to be mismarked as NQB, and is most important in | ault and NQB) are arranged as the children of the parent class and given equal a | |||
| nodes that are likely bottlenecks, where deviation from them could result in a | ccess to the capacity configured for the parent class (e.g., with equal DRR sche | |||
| discernible benefit for mismarked traffic (to the detriment of other traffic). I | duling). | |||
| n network nodes that are rarely bottlenecks, these recommendations are less crit | Compliance with these recommendations reduces the incentives for QB t | |||
| ical. </t> | raffic to be mis-marked as NQB and is most important in nodes that are likely bo | |||
| ttlenecks, where deviation from them could result in a discernible benefit for m | ||||
| is-marked traffic (to the detriment of other traffic). | ||||
| In network nodes that are rarely bottlenecks, these recommendations a | ||||
| re less critical. </t> | ||||
| <t>In the DRR example above, equal scheduling weights was only an exampl | <t>In the DRR example above, equal scheduling weights is only an example | |||
| e. Ideally the DRR weight would be chosen to match the highest fraction of capac | . | |||
| ity that NQB compliant flows are likely to use on a particular network segment. | Ideally, the DRR weight would be chosen to match the highest fraction | |||
| Given that NQB compliant flows are not capacity-seeking (in contrast to QB flows | of capacity that NQB-compliant flows are likely to use on a particular network | |||
| , which can be), and since DRR allows unused capacity in one class to be used by | segment. | |||
| traffic in the other, providing a higher-than-necessary NQB scheduler weight co | Given that NQB-compliant flows are not capacity seeking (in contrast | |||
| uld be considered less problematic than the reverse. That said, providing a hig | to QB flows, which can be), and since DRR allows unused capacity in one class to | |||
| her-than-needed NQB scheduler weight does increase the likelihood that a non-com | be used by traffic in the other, providing a higher-than-needed NQB scheduler w | |||
| pliant microflow mismarked as NQB is able to use more than its fair share of net | eight could be considered less problematic than the reverse. | |||
| work capacity. NQB microflows are expected to each consume no more than 1% of t | That said, providing a higher-than-needed NQB scheduler weight does i | |||
| he link capacity, and in low stat-mux environments (such as at the edge of the n | ncrease the likelihood that a non-compliant microflow mis-marked as NQB is able | |||
| etwork) would be unlikely in aggregate to consume 50% of the link capacity. Thus | to use more than its fair share of network capacity. | |||
| , 50% seems a reasonable upper bound on the weight for the NQB PHB in these envi | NQB microflows are expected to each consume no more than 1% of the li | |||
| ronments.</t> | nk capacity, and in low stat-mux environments (such as at the edge of the networ | |||
| k) 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 PH | ||||
| B in these environments.</t> | ||||
| <t>A node supporting the NQB PHB SHOULD by default classify packets mark | <t>By default, a node supporting the NQB PHB <bcp14>SHOULD</bcp14> class | |||
| ed with the NQB DSCP 45 (decimal) into the queue for Non-Queue-Building traffic. | ify packets marked with the DSCP value 45 (decimal) into the queue for NQB traff | |||
| In accordance with the requirement in <xref target="RFC2474" section ="3"/>, a | ic. | |||
| node supporting the NQB PHB MUST support the ability to configure the DSCP tha | In accordance with the requirement in <xref target="RFC2474" section= | |||
| t is used to classify packets into the queue for Non-Queue-Building traffic. A n | "3"/>, a node supporting the NQB PHB <bcp14>MUST</bcp14> support the ability to | |||
| ode supporting the NQB PHB MAY support the ability to configure multiple DSCPs t | configure the DSCP that is used to classify packets into the queue for NQB traf | |||
| hat are used to classify packets into the queue for Non-Queue-Building traffic.< | fic. | |||
| /t> | A node supporting the NQB PHB <bcp14>MAY</bcp14> support the ability | |||
| to configure multiple DSCPs that are used to classify packets into the queue for | ||||
| NQB traffic.</t> | ||||
| <t>Support for the NQB PHB is advantageous at bottleneck nodes. Many bot | <t>Support for the NQB PHB is advantageous at bottleneck nodes. | |||
| tleneck nodes have a relatively deep buffer for Default traffic (e.g., roughly e | Many bottleneck nodes have a relatively deep buffer for Default traff | |||
| qual to the base RTT of the expected connections, which could be tens or hundred | ic (e.g., roughly equal to the base RTT of the expected connections, which could | |||
| s of ms). Providing a similarly deep buffer for the NQB queue would be at cross | be tens or hundreds of milliseconds). | |||
| purposes to providing very low queueing delay and would erode the incentives fo | Providing a similarly deep buffer for the NQB queue would be at cross | |||
| r QB traffic to be marked correctly at such a bottleneck node. The NQB queue MU | purposes to providing very low queueing delay and would erode the incentives fo | |||
| ST have a buffer size that is significantly smaller than the buffer provided for | r QB traffic to be marked correctly at such a bottleneck node. | |||
| Default traffic. It is RECOMMENDED to configure an NQB buffer size less than or | The NQB queue <bcp14>MUST</bcp14> have a buffer size that is signific | |||
| equal to 10 ms at the shared NQB/Default egress rate. </t> | antly smaller than the buffer provided for Default traffic. | |||
| It is <bcp14>RECOMMENDED</bcp14> to configure an NQB buffer size less | ||||
| than or equal to 10 ms at the shared NQB/Default egress rate. </t> | ||||
| <t>In order to enable network operators to monitor the usage of the NQB | <t>In order to enable network operators to monitor the usage of the NQB | |||
| PHB, and in particular to monitor for potential mis-marking of QB traffic, a nod | PHB and, in particular, to monitor for potential mis-marking of QB traffic, a no | |||
| e supporting the NQB PHB MUST provide statistics that can be used by the network | de supporting the NQB PHB <bcp14>MUST</bcp14> provide statistics that can be use | |||
| operator to detect whether abuse is occurring (e.g. packet and drop counters). | d by the network operator to detect whether abuse is occurring (e.g., packet and | |||
| Support for such counters ensures that operators who configure the NQB PHB have | drop counters). | |||
| the ability to track the amount of packet drop that is occurring due to traffic | Support for such counters ensures that operators who configure the NQ | |||
| overrunning the shallow buffer, and then take action if they believe the PHB is | B PHB have the ability to track the amount of packet drop that is occurring due | |||
| causing more issues than it is solving in their environment. Those actions could | to traffic overrunning the shallow buffer and then take action if they believe t | |||
| include disabling the PHB, identifying and dealing with the sources of maliciou | he PHB is causing more issues than it is solving in their environment. | |||
| s traffic directly, enabling traffic protection (<xref target="traffic_protectio | Those actions could include disabling the PHB, identifying and dealin | |||
| n"/>) if it is available, or pursuing a feature request with the equipment manuf | g with the sources of malicious traffic directly, enabling traffic protection (< | |||
| acturer to add a traffic protection function if it isn't currently available.</t | xref target="traffic_protection"/>) if it is available, or pursuing a feature re | |||
| > | quest with the equipment manufacturer to add a traffic protection function if it | |||
| isn't currently available.</t> | ||||
| <t>To prevent propagation of degradation of service for NQB traffic caus ed by potential mis-marking of QB traffic, | <t>To prevent propagation of degradation of service for NQB traffic caus ed by potential mis-marking of QB traffic, | |||
| network equipment that supports this PHB and handles traffic for | network equipment that supports this PHB and handles traffic for | |||
| multiple users SHOULD support provisioning | multiple users <bcp14>SHOULD</bcp14> support provisioning | |||
| of capacity and related forwarding resources on a per-user | of capacity and related forwarding resources on a per-user | |||
| basis and SHOULD support enforcement of the resulting | basis and <bcp14>SHOULD</bcp14> support enforcement of the resulting | |||
| per-user limits on the aggregate of NQB and QB traffic for each user. | per-user limits on the aggregate of NQB and QB traffic for each user. | |||
| In this context, the term "user" should be read as meaning an entity tha | In this context, the term "user" should be read as meaning an entity | |||
| t the equipment is designed to serve more-or-less independently, such as a subsc | that the equipment is designed to serve more-or-less independently, such as a su | |||
| riber in the case of access network equipment, a STA in the case of a Wi-Fi AP t | bscriber in the case of access network equipment, a station (STA) in the case of | |||
| hat implements per-STA queuing and airtime fairness, or an end-user in the case | a Wi-Fi Access Point (AP) that implements per-STA queuing and airtime fairness, | |||
| of a networking co-op that serves a set of end-users. | or an end user in the case of a networking co-op that serves a set of end users | |||
| This functionality is commonly available in the class of network equipme | . | |||
| nt | This functionality is commonly available in the class of network equi | |||
| for which this PHB is primarily applicable (see <xref target="applicabil | pment | |||
| ity"/>). | for which this PHB is primarily applicable (see <xref target="applica | |||
| Provisioning methodology as well as decisions on whether and how to enfo | bility"/>). | |||
| rce the | Provisioning methodology as well as decisions on whether and how to e | |||
| resulting limits may vary by network operator. </t> | nforce the | |||
| resulting limits may vary by network operator. </t> | ||||
| <t>While not fully described in this document, it may be possible for ne twork equipment to implement a separate QB/NQB pair of queues for additional ser vice classes beyond the Default PHB / NQB PHB pair.</t> | <t>While not fully described in this document, it may be possible for ne twork equipment to implement a separate QB/NQB pair of queues for additional ser vice classes beyond the Default PHB / NQB PHB pair.</t> | |||
| <t>In some cases, existing network equipment has been deployed that cann | <t>In some cases, existing network equipment has been deployed that cann | |||
| ot readily be upgraded or configured to support the PHB requirements. This equip | ot readily be upgraded or configured to support the PHB requirements. | |||
| ment might however be capable of loosely supporting an NQB service - see <xref t | However, this equipment might be capable of loosely supporting an NQB | |||
| arget="wifi_interop"/> for details and an example where this is particularly imp | service; see <xref target="wifi_interop"/> for details and an example where thi | |||
| ortant. A similar approach might prove to be useful in other network environment | s is particularly important. | |||
| s.</t> | A similar approach might prove to be useful in other network environm | |||
| ents.</t> | ||||
| </section> | </section> | |||
| <section anchor="traffic_protection" numbered="true"> | <section anchor="traffic_protection" numbered="true"> | |||
| <name>Traffic Protection</name> | <name>Traffic Protection</name> | |||
| <t>It is possible that, due to an implementation error or misconfigurati | <t>It is possible that, due to an implementation error or misconfigurati | |||
| on, a QB microflow could end up being mismarked as NQB, or vice versa. It is als | on, a QB microflow could end up being mis-marked as NQB or vice versa. | |||
| o possible that a malicious actor could introduce a QB microflow marked as NQB w | It is also possible that a malicious actor could introduce a QB micro | |||
| ith the intention of causing disruptions. In the case of a low data rate microf | flow marked as NQB with the intention of causing disruptions. | |||
| low that isn't marked as NQB and therefore ends up in the QB queue, it would onl | In the case of a low-data-rate microflow that isn't marked as NQB and | |||
| y impact its own quality of service, and so it seems to be of lesser concern. Ho | therefore ends up in the QB queue, it would only impact its own Quality of Serv | |||
| wever, a QB microflow that is mismarked as NQB is able to contribute to NQB queu | ice (QoS); therefore, it seems to be of lesser concern. | |||
| e formation at a network node which would cause queuing delay and/or loss for al | However, a QB microflow that is mis-marked as NQB is able to contribu | |||
| l the other microflows that are sharing the NQB queue.</t> | te to NQB queue formation at a network node that would cause queuing delay and/o | |||
| r loss for all the other microflows that are sharing the NQB queue.</t> | ||||
| <t>To prevent this situation from harming the performance of the microfl | <t>To prevent this situation from harming the performance of the microfl | |||
| ows that comply with the requirements in <xref target="sender"/>, network elemen | ows that comply with the requirements in <xref target="sender"/>, network elemen | |||
| ts that support the NQB PHB SHOULD support a "traffic protection" function that | ts that support the NQB PHB <bcp14>SHOULD</bcp14> support a "traffic protection" | |||
| can identify microflows or packets that are inconsistent with the sender require | function that can identify microflows or packets that are inconsistent with the | |||
| ments in <xref target="sender"/>, and either reclassify those microflows/packets | sender requirements in <xref target="sender"/> and either reclassify those micr | |||
| to the QB queue or discard the offending traffic. In the case of a traffic prot | oflows/packets to the QB queue or discard the offending traffic. | |||
| ection algorithm that reclassifies offending traffic, the implementation MAY pro | In the case of a traffic protection algorithm that reclassifies offen | |||
| vide an option to additionally re-mark such traffic to Default (or possibly to a | ding traffic, the implementation <bcp14>MAY</bcp14> provide an option to additio | |||
| nother local use code point) so that the result of the traffic protection decisi | nally re-mark such traffic to Default (or possibly to another local use codepoin | |||
| on can be used by further hops. This sort of re-marking could provide a limited | t) so that the result of the traffic protection decision can be used by further | |||
| layer of protection in situations where downstream network nodes support separat | hops. | |||
| e queuing for NQB marked packets but lack support for traffic protection.</t> | This sort of re-marking could provide a limited layer of protection i | |||
| n situations where downstream network nodes support separate queuing for NQB-mar | ||||
| ked packets but lack support for traffic protection.</t> | ||||
| <t>If traffic protection is not supported or is not effective in prevent ing | <t>If traffic protection is not supported or is not effective in prevent ing | |||
| queue formation and growth in the NQB queue, then QB traffic that is | queue formation and growth in the NQB queue, then QB traffic that is | |||
| mismarked as NQB is able to form a queue that overflows the shallow | mis-marked as NQB is able to form a queue that overflows the shallow | |||
| buffer provided for NQB traffic, which is expected to result in | buffer provided for NQB traffic; this is expected to result in | |||
| redirecting the excess packets to the QB queue or discarding them. Both | redirecting the excess packets to the QB queue or discarding them. | |||
| actions degrade service for not only the mismarked QB traffic, but also | Both | |||
| for any correctly marked NQB traffic, likely causing a significant | actions degrade service for not only the mis-marked QB traffic, but a | |||
| degradation of service for NQB traffic. Even if mismarked QB traffic | lso | |||
| does not cause buffer overflow, the queue that forms results in QB | for any correctly marked NQB traffic. | |||
| traffic obtaining the reduced loss and delay benefits of the NQB service | This will likely cause a significant | |||
| while causing queuing delay for all the other microflows that are sharin | degradation of service for NQB traffic. | |||
| g the queue. | Even if mis-marked QB traffic | |||
| These increased abilities of QB traffic to damage the NQB service in the | does not cause buffer overflow, the queue that forms results in QB | |||
| absence | traffic obtaining the reduced loss and delay benefits of the NQB serv | |||
| of a traffic protection function needs to be considered. This is the mot | ice | |||
| ivation for the "SHOULD" requirement | while causing queuing delay for all the other microflows that are sha | |||
| to support traffic protection (in the previous paragraph). | ring the queue. | |||
| An NQB PHB implementation that does not support traffic protection risks | These increased abilities of QB traffic to damage the NQB service in | |||
| being limited to deployment situations where traffic protection is potentially | the absence | |||
| not necessary. One example of such a situation could be a controlled environment | of a traffic protection function needs to be considered. | |||
| (e.g., enterprise LAN) where a network administrator is expected to manage the | This is the motivation for the "<bcp14>SHOULD</bcp14>" requirement | |||
| usage of DSCPs. </t> | to support traffic protection (in the previous paragraph). | |||
| An NQB PHB implementation that does not support traffic protection ri | ||||
| sks being limited to deployment situations where traffic protection is potential | ||||
| ly not necessary. | ||||
| One example of such a situation could be a controlled environment (e. | ||||
| g., enterprise LAN) where a network administrator is expected to manage the usag | ||||
| e of DSCPs. </t> | ||||
| <t>Traffic protection as it is defined here differs from Traffic Conditi | <t>As it is defined here, traffic protection differs from Traffic Condit | |||
| oning implemented in other Diffserv contexts. Traffic Conditioning is commonly p | ioning implemented in other Diffserv contexts. | |||
| erformed at the edge of a Diffserv domain (either ingress or egress, depending o | Traffic Conditioning is commonly performed at the edge of a DS domain | |||
| n Traffic Conditioning Agreements in place). In contrast, traffic protection is | (either ingress or egress, depending on Traffic Conditioning Agreements (TCAs) | |||
| intended to be implemented in the nodes that implement the PHB. By placing the | in place). | |||
| traffic protection at the PHB node, an implementation can monitor the actual NQB | In contrast, traffic protection is intended to be implemented in the | |||
| queue and take action only if a queue begins to form. Implementation of traffic | nodes that implement the PHB. | |||
| protection at PHB nodes that are most likely to be a bottleneck is particularly | By placing the traffic protection at the PHB node, an implementation | |||
| important because these are the nodes that would be expected to show the most q | can monitor the actual NQB queue and take action only if a queue begins to form. | |||
| ueue build-up in the presence of QB traffic mismarked as NQB.</t> | Implementation of traffic protection at PHB nodes that are most likel | |||
| y to be a bottleneck is particularly important because these are the nodes that | ||||
| would be expected to show the most queue buildup in the presence of QB traffic m | ||||
| is-marked as NQB.</t> | ||||
| <t>This specification does not mandate a particular algorithm for traffi | <t>This specification does not mandate a particular algorithm for traffi | |||
| c protection. This is intentional, since this will probably be an area where im | c protection. | |||
| plementers innovate, and the specifics of traffic protection could need to be di | This is intentional since this will probably be an area where impleme | |||
| fferent in different network equipment and in different network contexts. Instea | nters innovate. | |||
| d this specification provides guidelines and some examples of traffic protection | The specifics of traffic protection could need to be different in dif | |||
| algorithms which could be employed. </t> | ferent network equipment and in different network contexts. | |||
| Instead, this specification provides guidelines and some examples of | ||||
| traffic protection algorithms that could be employed. </t> | ||||
| <t>The traffic protection function SHOULD NOT base its decisions upon ap | <t>The traffic protection function <bcp14>SHOULD NOT</bcp14> base its de | |||
| plication-layer constructs (such as the port number used by the application or t | cisions upon application-layer constructs (such as the port number used by the a | |||
| he source/destination IP address). Instead, it ought to base its decisions on th | pplication or the source/destination IP address). | |||
| e actual behavior of each microflow (i.e. the pattern of packet arrivals).</t> | Instead, it ought to base its decisions on the actual behavior of eac | |||
| h microflow (i.e., the pattern of packet arrivals).</t> | ||||
| <t>A conventional implementation of such a traffic protection algorithm | <t>A conventional implementation of such a traffic protection algorithm | |||
| is a per-microflow rate policer, designed to identify microflows that exceed the | is a per-microflow rate policer, designed to identify microflows that exceed the | |||
| bound provided in <xref target="sender"/>, where the value R is set to 1 percen | bound provided in <xref target="sender"/>, where the value R is set to 1% of th | |||
| t of the egress link capacity available for NQB traffic. An alternative is to us | e egress link capacity available for NQB traffic. | |||
| e a traffic protection algorithm that bases its decisions on the detection of ac | An alternative is to use a traffic protection algorithm that bases it | |||
| tual queuing (i.e. by monitoring the queuing delay experienced by packets in the | s decisions on the detection of actual queuing (i.e., by monitoring the queuing | |||
| NQB queue) in correlation with the arrival of packets for each microflow. Whil | delay experienced by packets in the NQB queue) in correlation with the arrival o | |||
| e a per-microflow rate policer is conceptually simpler (and is based directly on | f packets for each microflow. | |||
| the NQB sender requirements), it could often end up being more strict than is n | While a per-microflow rate policer is conceptually simpler (and is ba | |||
| ecessary (for example by policing a flow that exceeds the rate equation even whe | sed directly on the NQB sender requirements), it could often end up being more s | |||
| n the link is underutilized). | trict than is necessary (for example, by policing a flow that exceeds the rate e | |||
| One example traffic protection algorithm based on the detection of actua | quation even when the link is underutilized). | |||
| l queuing can be found in <xref target="I-D.briscoe-docsis-q-protection"/>. Thi | One example traffic protection algorithm based on the detection of ac | |||
| s algorithm maintains per-microflow state for a certain number of simultaneous " | tual queuing can be found in <xref target="RFC9957"/>. | |||
| queue-building" microflows (e.g. 32), and shared state for any additional microf | This algorithm maintains per-microflow state for a certain number of | |||
| lows above that number.</t> | simultaneous QB microflows (e.g., 32), and shared state for any additional micro | |||
| flows above that number.</t> | ||||
| <t>In the case of a traffic protection algorithm that reclassifies offen ding traffic, different levels of hysteresis could be considered. | <t>In the case of a traffic protection algorithm that reclassifies offen ding traffic, different levels of hysteresis could be considered. | |||
| For example, the reclassify decision could be made on a packet-by-packet | For example, the reclassify decision could be made on a packet-by-pac | |||
| basis, which could result in significant out-of-order delivery for offending mi | ket basis, which could result in significant out-of-order delivery for offending | |||
| croflows as some portion of the microflow's packets remain in the NQB queue and | microflows as some portion of the microflow's packets remain in the NQB queue a | |||
| some are reclassified to the Default queue. | nd some are reclassified to the Default queue. | |||
| Alternatively, a traffic protection function could employ a certain leve | Alternatively, a traffic protection function could employ a certain l | |||
| l of hysteresis to prevent borderline microflows from being reclassified caprici | evel of hysteresis to prevent borderline microflows from being reclassified capr | |||
| ously, thus causing less potential for out-of-order delivery. | iciously, thus causing less potential for out-of-order delivery. | |||
| As a third option, the decision could be made to take action on all the | As a third option, the decision could be made to take action on all t | |||
| future packets of the microflow, though sufficient logic would be needed to ensu | he future packets of the microflow, though sufficient logic would be needed to e | |||
| re that a future microflow (e.g. with the same 5-tuple) isn't misidentified as t | nsure that a future microflow (e.g., with the same 5-tuple) isn't misidentified | |||
| he current offending microflow. | as the current offending microflow. | |||
| </t> | </t> | |||
| <t>In the case of a traffic protection algorithm that discards offending | <t>In the case of a traffic protection algorithm that discards offending | |||
| traffic, similar levels of hysteresis could be considered. In this case, it is | traffic, similar levels of hysteresis could be considered. | |||
| RECOMMENDED that the decision thresholds be set higher than in the case of desi | In this case, it is <bcp14>RECOMMENDED</bcp14> that the decision thre | |||
| gns that reclassify, since the degradation of communications caused by packet di | sholds be set higher than in the case of designs that reclassify since the degra | |||
| scard are likely to be greater than the degradation caused by out-of-order deliv | dation of communications caused by the packet being discarded are likely to be g | |||
| ery.</t> | reater than the degradation caused by out-of-order delivery.</t> | |||
| <t>The traffic protection function described here might require that the | <t>The traffic protection function described here might require that the | |||
| network element maintain microflow state. The traffic protection function MUST | network element maintain microflow state. | |||
| be designed such that the node implementing the NQB PHB does not fail (e.g. cras | The traffic protection function <bcp14>MUST</bcp14> be designed such | |||
| h) in the case that the microflow state is exhausted. This might be accomplished | that the node implementing the NQB PHB does not fail (e.g., crash) in the case t | |||
| simply by controlling/limiting the resources dedicated to tracking misbehaving | hat the microflow state is exhausted. | |||
| flows.</t> | This might be accomplished simply by controlling/limiting the resourc | |||
| es dedicated to tracking misbehaving flows.</t> | ||||
| <t>Some networks might prefer to implement a more traditional Traffic Co | <t>Some networks might prefer to implement a Traffic Conditioning approa | |||
| nditioning approach, and police the application of the NQB DSCP at the ingress e | ch that polices the application of the NQB DSCP at the ingress edge so that per- | |||
| dge so that per-hop traffic protection is not needed. This could be accomplished | hop traffic protection is not needed. | |||
| via the use of a per-microflow rate policer that polices microflows at 1 percen | This could be accomplished via the use of a per-microflow rate police | |||
| t of the minimum link capacity of the network. This approach would generally be | r that polices microflows at 1% of the minimum link capacity of the network. | |||
| expected to be inferior to per-hop traffic protection, because on one hand it w | This approach would generally be expected to be inferior to per-hop t | |||
| ould be difficult for edge nodes to guarantee that there would never be more tha | raffic protection because:</t> | |||
| n 100 NQB flows that would share a single internal bottleneck, and on the other | <ul> | |||
| hand there could be internal links that have much greater capacity than the mini | <li>on one hand, it would be difficult for edge nodes to guarantee that | |||
| mum. So, Traffic Conditioning at the edge could simultaneously be too lenient a | there would never be more than 100 NQB flows that would share a single internal | |||
| nd too strict.</t> | bottleneck, and</li> | |||
| <li>on the other hand, there could be internal links that have much gre | ||||
| ater capacity than the minimum.</li> | ||||
| </ul> | ||||
| <t>So, Traffic Conditioning at the edge could simultaneously be too lenie | ||||
| nt and too strict.</t> | ||||
| </section> | </section> | |||
| <section numbered="true"> | <section numbered="true"> | |||
| <name>Limiting Packet Bursts from Links</name> | <name>Limiting Packet Bursts from Links</name> | |||
| <t>Some link technologies introduce burstiness by briefly storing packet | <t>Some link technologies introduce burstiness by briefly storing packet | |||
| s prior to forwarding them. A common cause of this burstiness is link discontinu | s prior to forwarding them. | |||
| ity (i.e. where the link is not continuously available for transmission by the d | A common cause of this burstiness is link discontinuity (i.e., where | |||
| evice), for example time-division-duplex links or time-division-multiple-access | the link is not continuously available for transmission by the device), for exam | |||
| (TDMA) links. Some link technologies that fall into this category are passive op | ple, time-division-duplex links or time-division-multiple-access (TDMA) links. | |||
| tical networks (PON), Wi-Fi, LTE/5G and DOCSIS. </t> | Some link technologies that fall into this category are Passive Optic | |||
| al Networks (PONs), Wi-Fi, LTE/5G, and Data-Over-Cable Service Interface Specifi | ||||
| cation (DOCSIS). </t> | ||||
| <t>As well as NQB senders needing to limit packet bursts (see <xref targ | <t>As well as NQB senders needing to limit packet bursts (see <xref targ | |||
| et="sender"/>), traffic designated for the NQB PHB would benefit from configurin | et="sender"/>), traffic designated for the NQB PHB would benefit from configurin | |||
| g these link technologies to limit the burstiness introduced. This is for three | g these link technologies to limit the burstiness introduced. | |||
| reasons. The first reason is that burstiness, whether caused by the sender or | This is for three reasons:</t> | |||
| by a link on the path, could cause queuing delay at downstream bottlenecks and t | <ol> | |||
| hus degrade Quality of Experience. The second reason is that burstiness in links | <li>Burstiness, whether caused by the sender or by a link on the path, | |||
| typically means that packets have been delayed by a variable amount, i.e. for p | could cause queuing delay at downstream bottlenecks and, thus, degrade QoE.</li> | |||
| ackets that are being aggregated awaiting a transmission opportunity, some packe | <li>Burstiness in links typically means that packets have been delayed | |||
| ts would generally have arrived just after the last transmission opportunity, an | by a variable amount. That is, for packets that are being aggregated awaiting a | |||
| d thus have to wait the longest, while others would generally arrive just in tim | transmission opportunity, some packets would generally have arrived just after | |||
| e for the next transmission opportunity, and thus would wait the least. This ma | the last transmission opportunity and would have to wait the longest while other | |||
| nifests as delay variation which can also degrade Quality of Experience for appl | s would generally arrive just in time for the next transmission opportunity and | |||
| ications that desire NQB treatment. The third reason is that a downstream bottle | would wait the least. This manifests as delay variation that can also degrade Q | |||
| neck that implements the NQB PHB could have implemented a traffic protection mec | oE for applications that desire NQB treatment.</li> | |||
| hanism (<xref target="traffic_protection"/>) that responds to queuing delay by r | <li>A downstream bottleneck that implements the NQB PHB could have impl | |||
| e-marking/reclassifying/dropping packets, and bursty arrivals caused by an upstr | emented a traffic protection mechanism (<xref target="traffic_protection"/>) tha | |||
| eam link could introduce queuing delay in the NQB queue and thus be more likely | t responds to queuing delay by re-marking/reclassifying/dropping packets. Burst | |||
| to be subjected to traffic protection effects.</t> | y arrivals caused by an upstream link could introduce queuing delay in the NQB q | |||
| ueue and these would be more likely to be subjected to traffic protection effect | ||||
| s.</li></ol> | ||||
| <t>This document does not set any quantified requirements for links to l | <t>This document does not set any quantified requirements for links to l | |||
| imit bursts, primarily because link technologies are outside the remit of Diffse | imit bursts; this is primarily because link technologies are outside the remit o | |||
| rv specifications. However, it would not seem necessary to limit bursts lower th | f Diffserv specifications. | |||
| an roughly 10% of the minimum base RTT expected in the typical deployment scenar | However, it would not seem necessary to limit bursts lower than rough | |||
| io (e.g., 250 µs burst duration for links within the public Internet). This obse | ly 10% of the minimum base RTT expected in the typical deployment scenario (e.g. | |||
| rvation aligns with a similar one in <xref target="RFC9331" section="5.5"/>.</t> | , 250 µs burst duration for links within the public Internet). | |||
| This observation aligns with a similar one in <xref target="RFC9331" | ||||
| section="5.5"/>.</t> | ||||
| </section> | </section> | |||
| <section numbered="true" anchor="ecn"> | <section numbered="true" anchor="ecn"> | |||
| <name>Treatment of the Explicit Congestion Notification field</name> | <name>Treatment of the Explicit Congestion Notification Field</name> | |||
| <t>NQB network functions MUST treat packets marked with the NQB DSCP uni | <t>NQB network functions <bcp14>MUST</bcp14> treat packets marked with t | |||
| formly, regardless of the value of the ECN field. Here, NQB network functions re | he NQB DSCP uniformly, regardless of the value of the ECN field. | |||
| fers to the traffic protection function (defined in <xref target="traffic_protec | Here, the term "NQB network functions" refers to the traffic protecti | |||
| tion"/>) and any re-marking/traffic policing function designed to protect unmana | on function (defined in <xref target="traffic_protection"/>) and any re-marking/ | |||
| ged networks (as described in <xref target="unmanaged"/>).</t> | traffic policing function designed to protect unmanaged networks (as described i | |||
| n <xref target="unmanaged"/>).</t> | ||||
| </section> | </section> | |||
| </section> | </section> | |||
| <section numbered="true" anchor="dscp"> | <section numbered="true" anchor="dscp"> | |||
| <name>Operational Considerations</name> | <name>Operational Considerations</name> | |||
| <t>This section describes considerations for network operators regarding t | <t>This section describes considerations for network operators regarding t | |||
| he identification, marking, and handling of NQB traffic. It outlines aggregation | he identification, marking, and handling of NQB traffic. | |||
| behaviors and special considerations in unmanaged and inter-network scenarios. | It outlines aggregation behaviors and special considerations in unmanag | |||
| Additionally, <xref target="aggregation"/> contains configuration recommendation | ed and inter-network scenarios. | |||
| s for nodes that do not support the NQB PHB, and <xref target="unmanaged"/> cont | Additionally, <xref target="aggregation"/> contains configuration recom | |||
| ains configuration recommentations for networks that interconnect with non-DS-ca | mendations for nodes that do not support the NQB PHB. <xref target="unmanaged"/> | |||
| pable domains.</t> | contains configuration recommendations for networks that interconnect with non- | |||
| DS-capable domains.</t> | ||||
| <section numbered="true"> | <section numbered="true"> | |||
| <name>NQB Traffic Identification</name> | <name>NQB Traffic Identification</name> | |||
| <t>As required in <xref target="phb_requirements"/>, nodes supporting th | <t>As required in <xref target="phb_requirements"/>, nodes supporting th | |||
| e NQB PHB provide for the configuration of classifiers that can be used to diffe | e NQB PHB provide for the configuration of classifiers that can be used to diffe | |||
| rentiate between QB and NQB traffic of equivalent importance. The assigned NQB | rentiate between QB and NQB traffic of equivalent importance. | |||
| DSCP (45 decimal) is recommended for use as the default classifier to distinguis | The assigned NQB DSCP value (45 decimal) is recommended for use as th | |||
| h NQB traffic from traffic classified as Default (DSCP 0) (see <xref target="sen | e default classifier to distinguish NQB traffic from traffic classified as Defau | |||
| der"/> and <xref target="primary"/>).</t> | lt (DSCP 0) (see Sections <xref target="sender" format="counter"/> and <xref tar | |||
| get="primary" format="counter"/>).</t> | ||||
| </section> | </section> | |||
| <section anchor="aggregation" numbered="true"> | <section anchor="aggregation" numbered="true"> | |||
| <name>Aggregation of the NQB DSCP into another Diffserv PHB</name> | <name>Aggregation of the NQB DSCP into Another Diffserv PHB</name> | |||
| <t>It is RECOMMENDED that networks and nodes that do not support the NQB | <t>It is <bcp14>RECOMMENDED</bcp14> that networks and nodes that do not | |||
| PHB be configured to treat traffic marked with the NQB DSCP the same as traffic | support the NQB PHB be configured to treat traffic marked with the NQB DSCP the | |||
| with the Default DSCP. This includes networks (such as MPLS) and nodes that ag | same as traffic with the Default DSCP. | |||
| gregate service classes as discussed in <xref target="RFC5127"/> and <xref targe | This includes networks (such as MPLS) and nodes that aggregate servic | |||
| t="RFC8100"/>, in which case this recommendation would result in traffic marked | e classes as discussed in <xref target="RFC5127"/> and <xref target="RFC8100"/>; | |||
| with the NQB DSCP being aggregated into the Elastic Treatment Aggregate (for <xr | in this case, this recommendation would result in traffic marked with the NQB D | |||
| ef target="RFC5127"/> networks) or the Default / Elastic Treatment Aggregate (fo | SCP being aggregated into the Elastic Treatment Aggregate (for networks as descr | |||
| r <xref target="RFC8100"/> networks). </t> | ibed in <xref target="RFC5127"/>) or the Default / Elastic Treatment Aggregate ( | |||
| for networks as described in <xref target="RFC8100"/>). </t> | ||||
| <t>Networks and nodes that do not support the NQB PHB ought to only clas | <t>Networks and nodes that do not support the NQB PHB ought to only clas | |||
| sify packets with the NQB DSCP value into the appropriate treatment aggregate, o | sify packets with the NQB DSCP value into the appropriate treatment aggregate, o | |||
| r encapsulate such packets for purposes of aggregation, and SHOULD NOT re-mark t | r encapsulate such packets for purposes of aggregation, and <bcp14>SHOULD NOT</b | |||
| hem with a different DSCP. This preservation of the NQB DSCP value enables hops | cp14> re-mark them with a different DSCP. | |||
| further along the path to provide the NQB PHB successfully. This aligns with rec | This preservation of the NQB DSCP value enables hops further along th | |||
| ommendations in <xref target="RFC5127"/>.</t> | e path to provide the NQB PHB successfully. | |||
| This aligns with recommendations in <xref target="RFC5127"/>.</t> | ||||
| <t>In nodes that do not typically experience congestion (for example, ma ny backbone and core network switches), forwarding packets with the NQB DSCP usi ng the Default treatment might be sufficient to preserve the loss, delay and del ay-variation performance for NQB traffic. </t> | <t>In nodes that do not typically experience congestion (for example, ma ny backbone and core network switches), forwarding packets with the NQB DSCP usi ng the Default treatment might be sufficient to preserve the loss, delay, and de lay-variation performance for NQB traffic. </t> | |||
| <t>In nodes that do experience congestion, forwarding packets with the N QB DSCP using the Default treatment could result in degradation of the loss, del ay and delay-variation performance but nonetheless preserves the incentives desc ribed in <xref target="phb_requirements"/>. </t> | <t>In nodes that do experience congestion, forwarding packets with the N QB DSCP using the Default treatment could result in degradation of the loss, del ay, and delay-variation performance but nonetheless preserves the incentives des cribed in <xref target="phb_requirements"/>. </t> | |||
| <t>Aggregating traffic marked with the NQB DSCP into a PHB designed for | <t>Aggregating traffic marked with the NQB DSCP into a PHB designed for | |||
| real-time, delay sensitive traffic | real-time, delay-sensitive traffic | |||
| (e.g. the Real-Time Treatment Aggregate <xref target="RFC5127"/> or the | (e.g., the Real-Time Treatment Aggregate <xref target="RFC5127"/> or | |||
| Bulk Real-Time Treatment Aggregate <xref target="RFC8100"/>), might better prese | the Bulk Real-Time Treatment Aggregate <xref target="RFC8100"/>), might better p | |||
| rve the loss, delay and delay-variation performance in the | reserve the loss, delay, and delay-variation performance in the | |||
| presence of congestion, but would need to be done with consideration of | presence of congestion; however, it would need to be done with consid | |||
| the risk of creating | eration of the risk of creating | |||
| an incentive for non-compliant traffic to be mis-marked as NQB.</t> | an incentive for non-compliant traffic to be mis-marked as NQB.</t> | |||
| </section> | </section> | |||
| <section numbered="true" anchor="aggregation2"> | <section numbered="true" anchor="aggregation2"> | |||
| <name>Aggregation of other DSCPs into the NQB PHB</name> | <name>Aggregation of Other DSCPs into the NQB PHB</name> | |||
| <t>The Differentiated Services model provides flexibility for operators | ||||
| to control the way they choose to aggregate traffic marked with a specific DSCP. | ||||
| Operators of nodes that support the NQB PHB could choose to aggregate other ser | ||||
| vice classes into the NQB queue. This is particularly useful in cases where spec | ||||
| ialized PHBs for these other service classes had not been provided at a potentia | ||||
| l bottleneck, perhaps because it was too complex to manage traffic contracts and | ||||
| conditioning. Candidate service classes for this aggregation would include thos | ||||
| e that carry low-data-rate inelastic traffic that has low to very-low tolerance | ||||
| for loss, delay and/or delay-variation. Operators would need to use their own ju | ||||
| dgment based on the actual traffic characteristics in their networks in deciding | ||||
| whether or not to aggregate other service classes / DSCPs with NQB. For network | ||||
| s that use the <xref target="RFC4594"/> service class definitions, this could in | ||||
| clude Telephony (EF/VA), Signaling (CS5), and possibly Real-Time Interactive (CS | ||||
| 4) (depending on data rate). In the preceding sentence, "VA" and "CSx" refer to | ||||
| Voice-Admit (<xref target="RFC5865"/>) and Class Selector (<xref target="RFC2474 | ||||
| "/>) respectively. In some networks, equipment limitations may necessitate aggre | ||||
| gating a range of DSCPs (e.g. traffic marked with DSCPs 40-47 (decimal), i.e., t | ||||
| hose whose three most significant bits are 0b101). As noted in <xref target="sen | ||||
| der"/>, the choice of the DSCP value 45 (decimal) is motivated in part by the de | ||||
| sire to make this aggregation simpler in network equipment that can classify pac | ||||
| kets via comparing the DSCP value to a range of configured values.</t> | ||||
| <t>A node providing only a NQB queue and a Default queue may obtain an N | <t>The Diffserv model provides flexibility for operators to control the | |||
| QB performance similar to that of EF, for example as described by <xref target=" | way they choose to aggregate traffic marked with a specific DSCP. | |||
| RFC2598" section="A.3.1"/>. Some caveats and differences are discussed in <xref | Operators of nodes that support the NQB PHB could choose to aggregate | |||
| target="EF"/>.</t> | other service classes into the NQB queue. | |||
| <t>[NOTE: this section references the obsoleted RFC2598 instead of its r | This is particularly useful in cases where specialized PHBs for these | |||
| eplacement RFC3246, because the former contains the description of EF performanc | other service classes had not been provided at a potential bottleneck, perhaps | |||
| e.]</t> | because it was too complex to manage traffic contracts and conditioning. | |||
| Candidate service classes for this aggregation would include those th | ||||
| at carry low-data-rate inelastic traffic that has low to very-low tolerance for | ||||
| loss, delay, and/or delay variation. | ||||
| Operators would need to use their own judgment based on the actual tr | ||||
| affic characteristics in their networks in deciding whether or not to aggregate | ||||
| other service classes / DSCPs with NQB. | ||||
| For networks that use the service class definitions from <xref target | ||||
| ="RFC4594"/>, this could include Telephony (EF/VA), Signaling (CS5), and possibl | ||||
| y Real-Time Interactive (CS4) (depending on data rate). | ||||
| In the preceding sentence, "VA" and "CSx" refer to VOICE-ADMIT (<xref | ||||
| target="RFC5865"/>) and Class Selector (<xref target="RFC2474"/>), respectively | ||||
| . | ||||
| In some networks, equipment limitations may necessitate aggregating a | ||||
| range of DSCPs (e.g., traffic marked with DSCPs 40-47 (decimal), i.e., those wh | ||||
| ose three most significant bits are 0b101). | ||||
| As noted in <xref target="sender"/>, the choice of the DSCP value 45 | ||||
| (decimal) is motivated in part by the desire to make this aggregation simpler in | ||||
| network equipment that can classify packets via comparing the DSCP value to a r | ||||
| ange of configured values.</t> | ||||
| <t>A node providing only a NQB queue and a Default queue may obtain an N | ||||
| QB performance similar to that of EF, for example, as described by <xref target= | ||||
| "RFC2598" section="A.3.1"/>. | ||||
| Some caveats and differences are discussed in <xref target="EF"/>.</t | ||||
| > | ||||
| </section> | </section> | |||
| <section anchor="re-marking" numbered="true"> | <section anchor="re-marking" numbered="true"> | |||
| <name>Cross-domain usage and DSCP Re-marking</name> | <name>Cross-Domain Usage and DSCP Re-marking</name> | |||
| <t>In contrast to some existing standard PHBs, which are typically only | <t>In contrast to some existing standard PHBs, which are typically only | |||
| used within a Diffserv Domain (e.g., an AS or an enterprise network), this PHB i | used within a DS domain (e.g., an Autonomous System (AS) or an enterprise networ | |||
| s expected to be used across the Internet, wherever suitable operator agreements | k), this PHB is expected to be used across the Internet, wherever suitable opera | |||
| apply. Under the <xref target="RFC2474"/> model, this requires that the corres | tor agreements apply. | |||
| ponding DSCP is recognized and mapped across network boundaries accordingly.</t> | Under the model described in <xref target="RFC2474"/>, this requires | |||
| that the corresponding DSCP is recognized and mapped across network boundaries a | ||||
| ccordingly.</t> | ||||
| <t>If NQB support is extended across a DiffServ domain boundary, the int | <t>If NQB support is extended across a DS domain boundary, the interconn | |||
| erconnected networks agreeing to support NQB SHOULD use the DSCP value 45 (decim | ected networks agreeing to support NQB <bcp14>SHOULD</bcp14> use the DSCP value | |||
| al) for NQB at network interconnection, unless a different DSCP is explicitly do | 45 (decimal) for NQB at network interconnection, unless a different DSCP is expl | |||
| cumented in the TCA (Traffic Conditioning Agreement, see <xref target="RFC2475"/ | icitly documented in the TCA (see <xref target="RFC2475"/>) for that interconnec | |||
| >) for that interconnection. If <xref target="RFC8100"/> is operational between | tion. | |||
| interconnected domains, the receiving domain may prefer a different DSCP for NQB | If a Diffserv-Intercon Interconnection Class (see <xref target="RFC81 | |||
| traffic that allows for a DSCP range-based classification for the Default / Ela | 00" sectionFormat="of" section="4"/>) is operational between interconnected doma | |||
| stic Treatment Aggregate. Similar to the handling of DSCPs for other PHBs (and a | ins, the receiving domain may prefer a different DSCP for NQB traffic that allow | |||
| s discussed in <xref target="RFC2475"/>), networks can re-mark NQB traffic to a | s for a DSCP range-based classification for the Default / Elastic Treatment Aggr | |||
| DSCP other than 45 (decimal) for internal usage. To ensure reliable NQB PHB trea | egate. | |||
| tment on the entire path, the appropriate NQB DSCP would need to be restored whe | Similar to the handling of DSCPs for other PHBs (and as discussed in | |||
| n forwarding to another network.</t> | <xref target="RFC2475"/>), networks can re-mark NQB traffic to a DSCP value othe | |||
| r than 45 (decimal) for internal usage. | ||||
| To ensure reliable NQB PHB treatment on the entire path, the appropri | ||||
| ate NQB DSCP would need to be restored when forwarding to another network.</t> | ||||
| <section anchor="unmanaged" numbered="true"> | <section anchor="unmanaged" numbered="true"> | |||
| <name>Interoperability with Non-DS-Capable Domains </name> | <name>Interoperability with Non-DS-Capable Domains </name> | |||
| <t>As discussed in <xref target="RFC2475" section="4"/>, there may be cases where a network operator that supports Diffserv is delivering traffic to a nother network domain (e.g. a network outside of their administrative control), where there is an understanding that the downstream domain does not support Diff serv or there is no knowledge of the traffic management capabilities of the down stream domain, and no agreement in place. In such cases, <xref target="RFC2475" section="4"/> suggests that the upstream domain opportunistically re-mark traff ic with a Class Selector codepoint or DSCP 0 (Default) under the assumption that traffic so marked would be handled in a predictable way by the downstream domai n.</t> | ||||
| <t>In the case of a network that supports the NQB PHB (and carries tra | <t>As discussed in <xref target="RFC2475" section="4"/>, there may be | |||
| ffic marked with the recommended NQB DSCP value) the same concerns apply. In par | cases where a network operator that supports Diffserv is delivering traffic to a | |||
| ticular, since the recommended NQB DSCP value could be given high priority in so | nother network domain (e.g., a network outside of their administrative control) | |||
| me non-DS-compliant network equipment (e.g., legacy Wi-Fi APs as described in <x | where there is an understanding that the downstream domain does not support Diff | |||
| ref target="wifi_interop"/>), it is RECOMMENDED that the operator of the upstrea | serv or there is no knowledge of the traffic management capabilities of the down | |||
| m domain implement one of the following safeguards before delivering traffic int | stream domain, and no agreement in place. | |||
| o a non-DS-capable domain.</t> | In such cases, <xref target="RFC2475" section="4"/> suggests that t | |||
| he upstream domain opportunistically re-mark traffic with a Class Selector Codep | ||||
| oint or DSCP 0 (Default) under the assumption that traffic so marked would be ha | ||||
| ndled in a predictable way by the downstream domain.</t> | ||||
| <t>In the case of a network that supports the NQB PHB (and carries tra | ||||
| ffic marked with the recommended DSCP value 45 (decimal)), the same concerns app | ||||
| ly. | ||||
| In particular, since the recommended NQB DSCP value 45 (decimal) co | ||||
| uld be given high priority in some non-DS-compliant network equipment (e.g., leg | ||||
| acy Wi-Fi APs as described in <xref target="wifi_interop"/>), it is <bcp14>RECOM | ||||
| MENDED</bcp14> that the operator of the upstream domain implement one of the fol | ||||
| lowing safeguards before delivering traffic into a non-DS-capable domain:</t> | ||||
| <ol> | <ol> | |||
| <li><t>One option for such a safeguard is to re-mark NQB traffic to DS CP 0 (Default) (or another Class Selector DSCP) before delivering traffic into a non-DS-capable domain, in accordance with the suggestion in <xref target="RFC24 75" section="4"/>. | <li><t>One option for such a safeguard is to re-mark NQB traffic to DS CP 0 (Default) (or another Class Selector DSCP) before delivering traffic into a non-DS-capable domain, in accordance with the suggestion in <xref target="RFC24 75" section="4"/>. | |||
| Network equipment designed for such environments, SHOULD by default re -mark NQB traffic to DSCP 0 (Default), and SHOULD support the ability to change and disable this re-marking. | Network equipment designed for such environments <bcp14>SHOULD</bcp14> , by default, re-mark NQB traffic to DSCP 0 (Default) and <bcp14>SHOULD</bcp14> support the ability to change and disable this re-marking. | |||
| Re-marking NQB traffic to DSCP 0 (Default) could be considered the "sa fest" approach since the upstream domain can thereby ensure that NQB traffic is not given inappropriate treatment in the non-DS-capable domain. | Re-marking NQB traffic to DSCP 0 (Default) could be considered the "sa fest" approach since the upstream domain can thereby ensure that NQB traffic is not given inappropriate treatment in the non-DS-capable domain. | |||
| That said, it comes with the downside that the re-marking ruins any po ssibility of NQB isolation in any further downstream domain (not just the immedi ate neighbor).</t></li> | That said, it comes with the downside that the re-marking ruins any po ssibility of NQB isolation in any further downstream domain (not just the immedi ate neighbor).</t></li> | |||
| <li><t>As an alternative to re-marking all NQB traffic, such an operat or could deploy a traffic protection (see <xref target="traffic_protection"/>) o r a shaping/policing function on traffic marked with the NQB DSCP that minimizes the potential for negative impacts on Default traffic, should the downstream do main treat traffic with the NQB DSCP as high priority.</t> | <li><t>As an alternative to re-marking all NQB traffic, such an operat or could deploy a traffic protection (see <xref target="traffic_protection"/>) o r a shaping/policing function on traffic marked with the NQB DSCP that minimizes the potential for negative impacts on Default traffic, should the downstream do main treat traffic with the NQB DSCP as high priority.</t> | |||
| <t>In the case that a traffic protection function is used, it MUST eit | <t>In the case that a traffic protection function is used, it <bcp14>M | |||
| her re-mark offending traffic to DSCP 0 (or another Class Selector DSCP) or disc | UST</bcp14> either re-mark offending traffic to DSCP 0 (or another Class Selecto | |||
| ard it. | r DSCP) or discard it. | |||
| Note that a traffic protection function as defined in this document mi | Note that a traffic protection function, as defined in this documen | |||
| ght only provide protection from issues occurring in subsequent network hops if | t, might only provide protection from issues occurring in subsequent network hop | |||
| the device implementing the traffic protection function is the bottleneck link o | s if the device implementing the traffic protection function is the bottleneck l | |||
| n the path, so it might not be a solution for all situations. </t> | ink on the path, so it might not be a solution for all situations. </t> | |||
| <t>In the case that a traffic policing function or a rate shaping func | <t>In the case that a traffic policing function or a rate-shaping func | |||
| tion is applied to the aggregate of NQB traffic destined to such a downstream do | tion is applied to the aggregate of NQB traffic destined to such a downstream do | |||
| main, the policer/shaper rate SHOULD be set to either 5% of the interconnection | main, the policer/shaper rate <bcp14>SHOULD</bcp14> be set to either 5% of the i | |||
| data rate, or 5% of the typical rate for such interconnections, whichever is gre | nterconnection data rate or 5% of the typical rate for such interconnections, wh | |||
| ater, with excess traffic being re-marked and classified for Default forwarding | ichever is greater, with excess traffic being re-marked and classified for Defau | |||
| (or dropped, as a last resort). | lt forwarding (or dropped, as a last resort). | |||
| A traffic policing function SHOULD allow approximately 100 ms of burst | A traffic policing function <bcp14>SHOULD</bcp14> allow approximate | |||
| tolerance (e.g. a token bucket depth equal to 100 ms multiplied by the policer | ly 100 ms of burst tolerance (e.g., a token bucket depth equal to 100 ms multipl | |||
| rate). | ied by the policer rate). | |||
| A traffic shaping function SHOULD allow approximately 10 ms of burst t | A traffic-shaping function <bcp14>SHOULD</bcp14> allow approximatel | |||
| olerance, and no more than 50 ms of buffering. | y 10 ms of burst tolerance and no more than 50 ms of buffering. | |||
| The burst tolerance values recommended here are intended to reduce the | The burst tolerance values recommended here are intended to reduce | |||
| degradation that could be introduced to delay and loss sensitive traffic marked | the degradation that could be introduced to delay- and loss-sensitive traffic ma | |||
| NQB without significantly degrading Default traffic, and could be adjusted base | rked NQB without significantly degrading Default traffic and that could be adjus | |||
| d on local network policy. Increasing the burst tolerance would further reduce t | ted based on local network policy. | |||
| he potential for degradation (increased loss or increased delay) of traffic mark | Increasing the burst tolerance would further reduce the potential f | |||
| ed NQB, but would come at the cost of an increased risk of degradation (increase | or degradation (increased loss or increased delay) of traffic marked NQB but wou | |||
| d loss or increased delay) of Default traffic. </t> | ld come at the cost of an increased risk of degradation (increased loss or incre | |||
| ased delay) of Default traffic. </t> | ||||
| <t>The recommendation to limit NQB traffic to 5% is based on an assump | <t>The recommendation to limit NQB traffic to 5% is based on an assump | |||
| tion that internal links in the downstream domain could have data rates as low a | tion that internal links in the downstream domain could have data rates as low a | |||
| s one tenth of the interconnect rate, in which case if the entire aggregate of N | s one tenth of the interconnect rate; in which case, if the entire aggregate of | |||
| QB traffic traversed a single instance of such a link, the aggregate would consu | NQB traffic traversed a single instance of such a link, the aggregate would cons | |||
| me no more than 50% of that link's capacity. The limit for NQB traffic SHOULD b | ume no more than 50% of that link's capacity. | |||
| e adjusted based on any knowledge of the local network environment that is avail | The limit for NQB traffic <bcp14>SHOULD</bcp14> be adjusted based o | |||
| able.</t> </li> | n any knowledge of the local network environment that is available.</t> </li> | |||
| </ol> | </ol> | |||
| </section> | </section> | |||
| </section> | </section> | |||
| <section numbered="true"> | <section numbered="true"> | |||
| <name>The NQB DSCP and Tunnels</name> | <name>The NQB DSCP and Tunnels</name> | |||
| <t><xref target="RFC2983"/> discusses tunnel models that support Diffser | <t><xref target="RFC2983"/> discusses tunnel models that support DS. | |||
| v. It describes a "uniform model" in which the inner DSCP is copied to the outer | It describes a "uniform model" in which the inner DSCP is copied to t | |||
| header at encapsulation, and the outer DSCP is copied to the inner header at de | he outer header at encapsulation and the outer DSCP is copied to the inner heade | |||
| capsulation. It also describes a "pipe model" in which the outer DSCP is not cop | r at decapsulation. | |||
| ied to the inner header at decapsulation. Both models can be used in conjunctio | It also describes a "pipe model" in which the outer DSCP is not copie | |||
| n with the NQB PHB. In the case of the pipe model, any DSCP manipulation (re-mar | d to the inner header at decapsulation. | |||
| king) of the outer header by intermediate nodes would be discarded at tunnel egr | Both models can be used in conjunction with the NQB PHB. | |||
| ess. In some cases, this could improve the possibility of achieving NQB treatmen | In the case of the pipe model, any DSCP manipulation (re-marking) of | |||
| t in subsequent nodes, but in other cases it could degrade that possibility (e.g | the outer header by intermediate nodes would be discarded at tunnel egress. | |||
| . if the re-marking was designed specifically to preserve NQB treatment in downs | In some cases, this could improve the possibility of achieving NQB tr | |||
| tream domains).</t> | eatment in subsequent nodes; in other cases, it could degrade that possibility ( | |||
| e.g., if the re-marking was designed specifically to preserve NQB treatment in d | ||||
| ownstream domains).</t> | ||||
| <t>As is discussed in <xref target="RFC2983"/>, tunnel protocols that ar | <t>As is discussed in <xref target="RFC2983"/>, tunnel protocols that ar | |||
| e sensitive to reordering (such as IPSec <xref target="RFC4301"/> or L2TP <xref | e sensitive to reordering (such as IPsec <xref target="RFC4301"/> or Layer 2 Tun | |||
| target="RFC2661"/>) can result in undesirable interactions if multiple DSCP PHBs | neling Protocol (L2TP) <xref target="RFC2661"/>) can result in undesirable inter | |||
| are signaled for traffic within a tunnel instance. This is true for tunnels con | actions if multiple DSCP PHBs are signaled for traffic within a tunnel instance. | |||
| taining a mix of QB and NQB traffic as well. Additionally, since networks suppor | This is true for tunnels containing a mix of QB and NQB traffic. | |||
| ting the NQB PHB could implement a traffic protection mechanism (see <xref targe | Additionally, since networks supporting the NQB PHB could implement a | |||
| t="traffic_protection"/>) and/or responses to NQB buffer overrun that result in | traffic protection mechanism (see <xref target="traffic_protection"/>) and/or r | |||
| out-of-order delivery for traffic marked with the NQB DSCP, even tunnels solely | esponses to NQB buffer overrun that result in out-of-order delivery for traffic | |||
| containing NQB traffic could have issues if they are sensitive to reordering and | marked with the NQB DSCP, even tunnels solely containing NQB traffic could have | |||
| the outer header retains the NQB DSCP. As a result, the use of a reordering-sen | issues if they are sensitive to reordering and the outer header retains the NQB | |||
| sitive tunnel protocol to carry NQB traffic, or a mix of QB and NQB traffic, nec | DSCP. | |||
| essitates that the outer tunnel header be re-marked with a non-NQB DSCP (e.g. De | As a result, the use of a reordering-sensitive tunnel protocol to car | |||
| fault), in which case the "pipe" model is preferable because it preserves the ma | ry NQB traffic, or a mix of QB and NQB traffic, necessitates that the outer tunn | |||
| rking differentiation at tunnel decapsulation.</t> | el header be re-marked with a non-NQB DSCP (e.g., Default); in this case, the "p | |||
| ipe" model is preferable because it preserves the marking differentiation at tun | ||||
| nel decapsulation.</t> | ||||
| </section> | </section> | |||
| <section numbered="true" anchor="low-rate-links"> | <section numbered="true" anchor="low-rate-links"> | |||
| <name>Guidance for Lower-Rate Links</name> | <name>Guidance for Lower-Rate Links</name> | |||
| <t>The NQB sender requirements in <xref target="sender"/> place responsi | <t>The NQB sender requirements in <xref target="sender"/> place responsi | |||
| bility in the hands of the application developer to determine the likelihood tha | bility in the hands of the application developer to determine the likelihood tha | |||
| t the application's sending behavior could result in a queue forming along the p | t the application's sending behavior could result in a queue forming along the p | |||
| ath. These requirements rely on application developers having a reasonable sens | ath. | |||
| e for the network context in which their application is to be deployed. Even so | These requirements rely on application developers having a reasonable | |||
| , there will undoubtedly be networks that contain links having a data rate that | sense for the network context in which their application is to be deployed. | |||
| is below the lower end of what is considered "typical", and some of these links | Even so, there will undoubtedly be networks that contain links having | |||
| could even be below the instantaneous sending rate of some NQB-marked applicatio | a data rate that is below the lower end of what is considered "typical"; some o | |||
| ns.</t> | f these links could even be below the instantaneous sending rate of some NQB-mar | |||
| ked applications.</t> | ||||
| <t>To limit the consequences of this scenario, operators of networks wit | <t>To limit the consequences of this scenario, operators of networks wit | |||
| h lower rate links SHOULD consider utilizing a traffic protection function on th | h lower rate links <bcp14>SHOULD</bcp14> consider utilizing a traffic protection | |||
| ose links that is more tolerant of burstiness (i.e., a temporary queue). This wi | function on those links that is more tolerant of burstiness (i.e., a temporary | |||
| ll have the effect of allowing a larger set of NQB-marked microflows to remain i | queue). | |||
| n the NQB queue, but will come at the expense of a greater potential for delay v | This will have the effect of allowing a larger set of NQB-marked micr | |||
| ariation. In implementations that support <xref target="I-D.briscoe-docsis-q-pr | oflows to remain in the NQB queue; however, it will come at the expense of a gre | |||
| otection"/>, the burst tolerance can be configured via the CRITICALqLSCORE_us in | ater potential for delay variation. | |||
| put parameter.</t> | In implementations that support <xref target="RFC9957"/>, the burst t | |||
| <t>Alternatively, operators of networks with lower rate links MAY choose | olerance can be configured via the CRITICALqLSCORE_us input parameter.</t> | |||
| to disable NQB support (and thus aggregate traffic marked with the NQB DSCP wit | <t>Alternatively, operators of networks with lower rate links <bcp14>MAY | |||
| h Default traffic) on these lower rate links. For links that have a data rate t | </bcp14> choose to disable NQB support (and thus aggregate traffic marked with t | |||
| hat is less than ten percent of "typical" path rates, it is RECOMMENDED that the | he NQB DSCP with Default traffic) on these lower rate links. | |||
| NQB PHB be disabled and that traffic marked with the NQB DSCP is therefore carr | For links that have a data rate that is less than 10% of "typical" pa | |||
| ied using the Default PHB (without being re-marked to the Default DSCP (0)).</t> | th rates, it is <bcp14>RECOMMENDED</bcp14> that the NQB PHB be disabled and that | |||
| traffic marked with the NQB DSCP is therefore carried using the Default PHB (wi | ||||
| thout being re-marked to the Default DSCP (0)).</t> | ||||
| </section> | </section> | |||
| </section> | </section> | |||
| <section numbered="true" anchor="sdos"> | <section numbered="true" anchor="sdos"> | |||
| <name>Mapping NQB to standards of other SDOs</name> | <name>Mapping NQB to Standards of Other SDOs</name> | |||
| <t>This section provide recommendations for the support of the NQB PHB in | <t>This section provide recommendations for the support of the NQB PHB in | |||
| certain use cases. This section is not exhaustive.</t> | certain use cases. | |||
| This section is not exhaustive.</t> | ||||
| <section numbered="true"> | <section numbered="true"> | |||
| <name>DOCSIS Access Networks</name> | <name>DOCSIS Access Networks</name> | |||
| <t>Residential cable broadband Internet services are commonly configured | <t>Residential cable broadband Internet services are commonly configured | |||
| with a single bottleneck link (the access network link) upon which the service | with a single bottleneck link (the access network link) upon which the service | |||
| definition is applied. The service definition, typically an upstream/downstream | definition is applied. | |||
| data rate tuple, is implemented as a configured pair of rate shapers that are ap | The service definition, typically an upstream/downstream data rate tu | |||
| plied to the user's traffic. In such networks, the quality of service that each | ple, is implemented as a configured pair of rate shapers that are applied to the | |||
| application receives, and as a result, the quality of experience that it generat | user's traffic. | |||
| es for the user is influenced by the characteristics of the access network link. | In such networks, the QoS that each application receives, and as a re | |||
| </t> | sult, the QoE that it generates for the user is influenced by the characteristic | |||
| <t> To support the NQB PHB, cable broadband services would need to be co | s of the access network link.</t> | |||
| nfigured to provide a separate queue for traffic marked with the NQB DSCP. The N | <t> To support the NQB PHB, cable broadband services would need to be co | |||
| QB queue would need to be configured to share the service's rate shaped capacity | nfigured to provide a separate queue for traffic marked with the NQB DSCP. | |||
| with the queue for QB traffic. Further discussion about support of the NQB PHB | The NQB queue would need to be configured to share the service's rat | |||
| in DOCSIS networks can be found in <xref target="LOW_LATENCY_DOCSIS"/>.</t> | e-shaped capacity with the queue for QB traffic. | |||
| Further discussion about support of the NQB PHB in DOCSIS networks c | ||||
| an be found in <xref target="LOW_LATENCY_DOCSIS"/>.</t> | ||||
| </section> | </section> | |||
| <section numbered="true"> | <section numbered="true"> | |||
| <name>Mobile Networks</name> | <name>Mobile Networks</name> | |||
| <t>Historically, 3GPP mobile networks have utilized "bearers" to encapsu late each user's user plane traffic through the radio and core networks. A "dedi cated bearer" can be allocated a Quality of Service (QoS) to apply any prioritis ation to its microflows at queues and radio schedulers. Typically, an LTE operat or provides a dedicated bearer for IMS VoLTE (Voice over LTE) traffic, which is prioritized in order to meet regulatory obligations for call completion rates; a nd a "best effort" default bearer, for Internet traffic. The "best effort" beare r provides no guarantees, and hence its buffering characteristics are not compat ible with low-latency traffic. The 5G radio and core systems offer more flexibil ity over bearer allocation, meaning bearers can be allocated per traffic type ( e.g., loss-tolerant, low-latency etc.) and hence support more suitable treatment of Internet real-time microflows.</t> | ||||
| <t>To support the NQB PHB, the mobile network could be configured to giv | <t>Historically, 3GPP mobile networks have utilized "bearers" to encapsu | |||
| e User Equipment (UE, the mobile device used by the subscriber) a dedicated, low | late each user's user plane traffic through the radio access and core networks. | |||
| -latency, non-GBR (non-Guaranteed Bit Rate), EPS (Evolved Packet System, the cor | Bearers are also associated with a QoS that determines how packets ar | |||
| e and access network architecture used in LTE) bearer, e.g., one with QCI 7 (QoS | e prioritized at queues and radio schedulers. | |||
| Class Identifier 7, which is typically used for low-latency, non-GBR services), | In LTE networks, these are Evolved Packet System (EPS) bearers, part | |||
| in addition to the default EPS bearer. Alternatively, in a 5G system, a Data Ra | of the EPS, which comprises the core and access network architecture. | |||
| dio Bearer with 5QI 7 (5G QoS Identifier 7, similarly used for low-latency traff | Typically, an LTE operator provides a dedicated EPS bearer for IP Mul | |||
| ic) could be provisioned (see Table 5.7.4-1: Standardized 5QI to QoS characteris | timedia Subsystem (IMS) Voice over LTE (VoLTE) traffic to meet regulatory obliga | |||
| tics mapping in <xref target="SA-5G"/>).</t> | tions for call completion rates and a best-effort default EPS bearer for Interne | |||
| <t>A packet carrying the NQB DSCP could then be routed through this dedi | t traffic. | |||
| cated low-latency EPS bearer, while a packet that has no associated NQB marking | This default EPS bearer is typically non-Guaranteed Bit Rate (non-GBR | |||
| would be routed through the default EPS bearer.</t> | ) and provides no guarantees; its buffering characteristics generally are not co | |||
| mpatible with low-latency traffic. | ||||
| In 5G networks, similar functionality is provided using QoS flows wit | ||||
| hin a PDU Session in the core network, which are mapped to Data Radio Bearers (D | ||||
| RBs) on the radio network. | ||||
| 5G systems offer more flexibility in QoS handling, allowing traffic t | ||||
| o be treated according to type (e.g., loss-tolerant, low-latency); hence, they s | ||||
| upport more suitable treatment of Internet real-time microflows.</t> | ||||
| <t>To support the NQB PHB, an LTE network could be configured to provide | ||||
| the User Equipment (UE, the subscriber's device) with a dedicated low-latency, | ||||
| non-GBR EPS bearer, in addition to the default EPS bearer. | ||||
| For example, this dedicated EPS bearer could use QCI 7 (QoS Class Ide | ||||
| ntifier 7), which is typically used for low-latency, non-GBR services. | ||||
| Alternatively, in a 5G system, a Data Radio Bearer (DRB) with 5QI 7 ( | ||||
| 5G QoS Identifier 7, also used for low-latency traffic), could be provisioned (s | ||||
| ee Table 5.7.4-1: Standardized 5QI to QoS characteristics mapping in <xref targe | ||||
| t="SA-5G"/>).</t> | ||||
| <t>A packet carrying the NQB DSCP could then be routed through this dedi | ||||
| cated low-latency path, while packets without the NQB marking would be routed th | ||||
| rough the default bearer.</t> | ||||
| </section> | </section> | |||
| <section anchor="wifi" numbered="true"> | <section anchor="wifi" numbered="true"> | |||
| <name>Wi-Fi Networks</name> | <name>Wi-Fi Networks</name> | |||
| <t>Wi-Fi networking equipment compliant with 802.11e/n/ac/ax <xref targe | <t>Wi-Fi networking equipment compliant with 802.11e/n/ac/ax <xref targe | |||
| t="IEEE802-11"/> generally supports either four or eight transmit queues and fou | t="IEEE802-11"/> generally supports either four or eight transmit queues and fou | |||
| r sets of associated Enhanced Distributed Channel Access (EDCA) parameters (corr | r sets of associated EDCA parameters (corresponding to the four Wi-Fi Multimedia | |||
| esponding to the four Wi-Fi Multimedia (WMM) Access Categories) that are used to | (WMM) Access Categories) that are used to enable differentiated medium access c | |||
| enable differentiated medium access characteristics. The four WMM Access Catego | haracteristics. | |||
| ries, referred to as Voice Access Category (AC_VO), Video Access Category (AC_VI | The four WMM Access Categories, referred to as Voice Access Category | |||
| ), Best Effort Access Category (AC_BE), and Background Access Category (AC_BK), | (AC_VO), Video Access Category (AC_VI), Best Effort Access Category (AC_BE), and | |||
| provide four levels of prioritized access to the wireless medium. As discussed i | Background Access Category (AC_BK), provide four levels of prioritized access t | |||
| n <xref target="RFC8325"/>, it has been a common practice for Wi-Fi implementati | o the wireless medium. | |||
| ons to use a default DSCP to User Priority (UP) mapping that utilizes the most s | As discussed in <xref target="RFC8325"/>, it has been a common practi | |||
| ignificant three bits of the Diffserv Field to select "User Priority" which is t | ce for Wi-Fi implementations to use a default DSCP to User Priority (UP) mapping | |||
| hen mapped to the four WMM Access Categories. <xref target="RFC8325"/> also pro | that utilizes the most significant three bits of the DSCP field to select "User | |||
| vides an alternative mapping that more closely aligns with the DSCP recommendati | Priority", which is then mapped to the four WMM Access Categories. <xref targe | |||
| ons provided by the IETF. In the case of some managed Wi-Fi equipment, this mapp | t="RFC8325"/> also provides an alternative mapping that more closely aligns with | |||
| ing can be controlled by the network operator, e.g., via <xref target="TR-369">T | the DSCP recommendations provided by the IETF. | |||
| R-369</xref>.</t> | In the case of some managed Wi-Fi equipment, this mapping can be cont | |||
| rolled by the network operator, e.g., via TR-369 <xref target="TR-369"></xref>.< | ||||
| /t> | ||||
| <t>In addition to the requirements provided in other sections of this do | <t>In addition to the requirements provided in other sections of this do | |||
| cument, to support the NQB PHB, Wi-Fi equipment (including equipment compliant w | cument, to support the NQB PHB, Wi-Fi equipment (including equipment compliant w | |||
| ith <xref target="RFC8325"/>) SHOULD map the NQB DSCP 45 (decimal) into a separa | ith <xref target="RFC8325"/>) <bcp14>SHOULD</bcp14> map the DSCP value 45 (decim | |||
| te queue in the same Access Category as the queue that carries Default traffic ( | al) into a separate queue in the same Access Category as the queue that carries | |||
| i.e. the Best Effort Access Category). | Default traffic (i.e., the Best Effort Access Category). | |||
| It is RECOMMENDED that Wi-Fi equipment provide a separate queue in UP 0, | It is <bcp14>RECOMMENDED</bcp14> that Wi-Fi equipment provide a separ | |||
| and map the NQB DSCP 45 (decimal) to that queue. | ate queue in UP 0 and map the DSCP value 45 (decimal) to that queue. | |||
| If a separate queue in UP 0 cannot be provided (due to hardware limitati | If a separate queue in UP 0 cannot be provided (due to hardware limit | |||
| ons, etc.) a Wi-Fi device MAY map the NQB DSCP 45 (decimal) to UP 3.</t> | ations, etc.), a Wi-Fi device <bcp14>MAY</bcp14> map the DSCP value 45 (decimal) | |||
| to UP 3.</t> | ||||
| <section anchor="wifi_interop" numbered="true"> | <section anchor="wifi_interop" numbered="true"> | |||
| <name>Interoperability with Existing Wi-Fi Networks</name> | <name>Interoperability with Existing Wi-Fi Networks</name> | |||
| <t>While some existing Wi-Fi equipment might be capable (in some cases | <t>While some existing Wi-Fi equipment might be capable (in some cases | |||
| via firmware update) of supporting the NQB PHB requirements, many currently dep | via firmware update) of supporting the NQB PHB requirements, many currently dep | |||
| loyed devices cannot be configured in this way. As a result, the remainder of th | loyed devices cannot be configured in this way. | |||
| is section discusses interoperability with these existing Wi-Fi networks, as opp | As a result, the remainder of this section discusses interoperabili | |||
| osed to PHB compliance.</t> | ty with these existing Wi-Fi networks, as opposed to PHB compliance.</t> | |||
| <t>Since this equipment is widely deployed, and the Wi-Fi link can bec | <t>Since this equipment is widely deployed, and the Wi-Fi link can bec | |||
| ome a bottleneck link, the performance of traffic marked with the NQB DSCP acros | ome a bottleneck link, the performance of traffic marked with the NQB DSCP acros | |||
| s such links could have a significant impact on the viability and adoption of th | s such links could have a significant impact on the viability and adoption of th | |||
| e NQB DSCP and PHB. Depending on the DSCP used to mark NQB traffic, existing Wi- | e NQB DSCP and PHB. | |||
| Fi equipment that uses the default mapping of DSCPs to Access Categories (<xref | Depending on the DSCP used to mark NQB traffic, existing Wi-Fi equi | |||
| target="RFC8325" section="2.3"/>) and the default EDCA parameters will support e | pment that uses the default mapping of DSCPs to Access Categories (see <xref tar | |||
| ither (but not both) of the following characteristics:</t> | get="RFC8325" section="2.3"/>) and the default EDCA parameters will support eith | |||
| er (but not both) of the following characteristics:</t> | ||||
| <ul><li>the NQB PHB requirement for separate queuing of NQB traffic fr om Default traffic (<xref target="primary"/>) </li> | <ul><li>the NQB PHB requirement for separate queuing of NQB traffic fr om Default traffic (<xref target="primary"/>) </li> | |||
| <li>the recommendation to treat NQB traffic with forwarding preference equal to that used for Default traffic (<xref target="primary"/>)</li></ul> | <li>the recommendation to treat NQB traffic with forwarding preference equal to that used for Default traffic (<xref target="primary"/>)</li></ul> | |||
| <t>The DSCP value 45 (decimal) is recommended for NQB (see <xref targe | <t>The DSCP value 45 (decimal) is recommended for NQB (see <xref targe | |||
| t="sender"/>). This maps NQB to UP 5 using the default mapping, which is in the | t="sender"/>). | |||
| "Video" Access Category. While this choice of DSCP enables these Wi-Fi systems t | This maps NQB to UP 5 using the default mapping, which is in the Vi | |||
| o support the NQB PHB requirement for separate queuing, existing Wi-Fi devices g | deo Access Category. | |||
| enerally utilize EDCA parameters that result in statistical prioritization of th | While this choice of DSCP enables these Wi-Fi systems to support th | |||
| e "Video" Access Category above the "Best Effort" Access Category. In addition | e NQB PHB requirement for separate queuing, existing Wi-Fi devices generally uti | |||
| this equipment does not support the remaining NQB PHB recommendations in <xref t | lize EDCA parameters that result in statistical prioritization of the Video Acce | |||
| arget="phb_requirements"/>. The rationale for the choice of DSCP 45 (decimal) as | ss Category above the Best Effort Access Category. | |||
| well as its ramifications, and remedies for its limitations are discussed furth | In addition, this equipment does not support the remaining NQB PHB | |||
| er below.</t> | recommendations in <xref target="phb_requirements"/>. | |||
| The rationale for the choice of DSCP value 45 (decimal) as well as | ||||
| its ramifications and remedies for its limitations are discussed further below.< | ||||
| /t> | ||||
| <t>The choice of separated queuing rather than equal forwarding prefer ence in existing Wi-Fi networks was motivated by the following:</t> | <t>The choice of separated queuing rather than equal forwarding prefer ence in existing Wi-Fi networks was motivated by the following:</t> | |||
| <ul> | <ul> | |||
| <li>Separate queuing is necessary in order to provide a benefit for traffic marked with the NQB DSCP. </li> | <li>Separate queuing is necessary in order to provide a benefit for traffic marked with the NQB DSCP. </li> | |||
| <li>The arrangement of queues in Wi-Fi equipment is typically fixed, | <li>The arrangement of queues in Wi-Fi equipment is typically fixed, | |||
| whereas the relative priority of the Access Category queues is configurable. Mo | whereas the relative priority of the Access Category queues is configurable. Mo | |||
| st Wi-Fi equipment has hardware support (albeit generally not exposed for user c | st Wi-Fi equipment has hardware support (albeit generally not exposed for user c | |||
| ontrol) which could be used to adjust the EDCA parameters in order to meet the e | ontrol), which could be used to adjust the EDCA parameters in order to meet the | |||
| qual forwarding preference recommendation. This is discussed further below.</li> | equal forwarding preference recommendation. This is discussed further below.</li | |||
| <li>Traffic that is compliant with the NQB sender requirements <xref | > | |||
| target="sender"/> is expected to cause minimal degradation to traffic in lower | <li>Traffic that is compliant with the NQB sender requirements in <x | |||
| priority Access Categories, and in any case would be unlikely to cause more degr | ref target="sender"/> is expected to cause minimal degradation to traffic in low | |||
| adation to lower priority Access Categories than the existing recommended Video | er priority Access Categories. In any case, it would be unlikely to cause more | |||
| Access Category traffic types: Broadcast Video, Multimedia Streaming, Multimedia | degradation to lower priority Access Categories than the existing recommended Vi | |||
| Conferencing from <xref target="RFC8325"/>, and AudioVideo, ExcellentEffort fro | deo Access Category traffic types: Broadcast Video, Multimedia Streaming, Multim | |||
| m <xref target="QOS_TRAFFIC_TYPE"/>.</li> | edia Conferencing from <xref target="RFC8325"/>, and AudioVideo, ExcellentEffort | |||
| <li>Several existing client applications that are compatible with th | from <xref target="QOS_TRAFFIC_TYPE"/>.</li> | |||
| e NQB sender requirements already select the Video Access Category, and thus wou | <li>Several existing client applications that are compatible with th | |||
| ld not see a degradation in performance by transitioning to the NQB DSCP, regard | e NQB sender requirements already select the Video Access Category; thus, they w | |||
| less of whether the network supported the PHB.</li> | ould not see a degradation in performance by transitioning to the NQB DSCP, rega | |||
| <li>Application instances on Wi-Fi client devices are already free t | rdless of whether the network supported the PHB.</li> | |||
| o choose any Access Category that they wish, regardless of their sending behavio | <li>Application instances on Wi-Fi client devices are already free t | |||
| r, without any policing of usage. So, the choice of using DSCP 45 (decimal) for | o choose any Access Category that they wish, regardless of their sending behavio | |||
| NQB creates no new avenues for non-NQB-compliant client applications to exploit | r, without any policing of usage. So, the choice of using DSCP value 45 (decimal | |||
| the prioritization function in Wi-Fi. </li> | ) for NQB creates no new avenues for non-NQB-compliant client applications to ex | |||
| <li>For application traffic that originates outside of the Wi-Fi net | ploit the prioritization function in Wi-Fi. </li> | |||
| work, and thus is transmitted by the Access Point, the choice of DSCP 45 does cr | <li>For application traffic that originates outside of the Wi-Fi net | |||
| eate a potential for abuse by non-compliant applications. But, opportunities ex | work, and, thus, is transmitted by the Access Point, the choice of DSCP value 45 | |||
| ist in the network components upstream of the Wi-Fi Access Point to police the u | (decimal) does create a potential for abuse by non-compliant applications. How | |||
| sage of the NQB DSCP and potentially re-mark traffic that is considered non-comp | ever, opportunities exist in the network components upstream of the Wi-Fi Access | |||
| liant, as is recommended in <xref target="unmanaged"/>. | Point to police the usage of the NQB DSCP and potentially re-mark traffic that | |||
| Furthermore, it is reasonable to expect that ISPs currently manage t | is considered non-compliant, as is recommended in <xref target="unmanaged"/>. | |||
| he DSCPs on traffic destined to their customers' networks, and will continue to | Furthermore, it is reasonable to expect that ISPs currently manage t | |||
| do so whether they support NQB or not. This includes the practice in residential | he DSCPs on traffic destined to their customers' networks and will continue to d | |||
| broadband networks of re-marking the Diffserv field to zero on all traffic. Any | o so whether or not they support NQB. This includes the practice in residential | |||
| change to these practices done to enable the NQB DSCP to pass through could be | broadband networks of re-marking the DSCP field to zero on all traffic. Any chan | |||
| done alongside the implementation of the recommendations in <xref target="unmana | ge to these practices done to enable the NQB DSCP to pass through could be done | |||
| ged"/>.</li> | alongside the implementation of the recommendations in <xref target="unmanaged"/ | |||
| >.</li> | ||||
| </ul> | </ul> | |||
| <t>The choice of Video Access Category rather than the Voice Access Ca | <t>The choice of Video Access Category rather than the Voice Access Ca | |||
| tegory was motivated by the desire to minimize the potential for degradation of | tegory was motivated by the desire to minimize the potential for degradation of | |||
| Best Effort Access Category traffic. The choice of Video Access Category rather | Best Effort Access Category traffic. | |||
| than the Background Access Category was motivated by the much greater potential | The choice of Video Access Category rather than the Background Acce | |||
| of degradation to NQB traffic that would be caused by the vast majority of traf | ss Category was motivated by the much greater potential of degradation to NQB tr | |||
| fic in most Wi-Fi networks, which utilizes the Best Effort Access Category.</t> | affic that would be caused by the vast majority of traffic in most Wi-Fi network | |||
| s, which utilizes the Best Effort Access Category.</t> | ||||
| <t>As stated above, the use of DSCP 45 (decimal) for NQB is not expect | <t>As stated above, the use of DSCP value 45 (decimal) for NQB is not | |||
| ed to create incentives for abuse by non-compliant applications in the Wi-Fi upl | expected to create incentives for abuse by non-compliant applications in the Wi- | |||
| ink direction. | Fi uplink direction. | |||
| The fact that the NQB DSCP brings with it the potential for degradatio | The fact that the NQB DSCP brings with it the potential for degrada | |||
| n of non-compliant applications (traffic protection and/or a shallow queue resul | tion of non-compliant applications (traffic protection and/or a shallow queue re | |||
| ting in reordering and/or packet loss at some hop along the path) plus the exist | sulting in reordering and/or packet loss at some hop along the path) plus the ex | |||
| ence of multiple other DSCP values that don't carry the risk of degradation, and | istence of multiple other DSCP values that don't carry the risk of degradation a | |||
| which could be readily used to obtain prioritization (AC_VI or even AC_VO), lea | nd that could be readily used to obtain prioritization (AC_VI or even AC_VO) lea | |||
| ds to the conclusion that NQB non-compliant applications that are seeking priori | ds to the conclusion that NQB non-compliant applications that are seeking priori | |||
| tization in the Wi-Fi uplink would be better off selecting one of those other DS | tization in the Wi-Fi uplink would be better off selecting one of those other DS | |||
| CPs. This conclusion is not expected to be disturbed by network support for NQB | CPs. | |||
| increasing the likelihood of DSCP 45 traffic traversing network boundaries witho | This conclusion is not expected to be disturbed by network support | |||
| ut change to the DSCP, as that likelihood of increased network boundary traversa | for NQB increasing the likelihood of DSCP value 45 (decimal) traffic traversing | |||
| l is balanced by a likelihood of NQB traffic encountering the traffic-limiting a | network boundaries without change to the DSCP, as that likelihood of increased n | |||
| spects of NQB support, traffic protection and shallow buffers, which limit the p | etwork boundary traversal is balanced by a likelihood of NQB traffic encounterin | |||
| otential for abuse.</t> | g the traffic-limiting aspects of NQB support, traffic protection, and shallow b | |||
| uffers, which limit the potential for abuse.</t> | ||||
| <t>In the case of traffic originating outside of the Wi-Fi network, th | <t>In the case of traffic originating outside of the Wi-Fi network, th | |||
| e prioritization of traffic marked with the NQB DSCP via the Video Access Catego | e prioritization of traffic marked with the NQB DSCP via the Video Access Catego | |||
| ry (if left unchanged) could potentially erode the principle of alignment of inc | ry (if left unchanged) could potentially erode the principle of alignment of inc | |||
| entives discussed in <xref target="phb_requirements"/>. In order to preserve the | entives discussed in <xref target="phb_requirements"/>. | |||
| incentives principle for NQB, Wi-Fi systems MAY be configured such that the EDC | In order to preserve the incentives principle for NQB, Wi-Fi system | |||
| A parameters for the Video Access Category match those of the Best Effort Access | s <bcp14>MAY</bcp14> be configured such that the EDCA parameters for the Video A | |||
| Category, which will mean AC_VI is at the same priority level as AC_BE. These c | ccess Category match those of the Best Effort Access Category, which will mean A | |||
| hanges might not be possible on all Access Points, and in any case the requireme | C_VI is at the same priority level as AC_BE. | |||
| nts and recommendations in <xref target="unmanaged"/> would apply in this situat | These changes might not be possible on all Access Points; in any ca | |||
| ion.</t> | se, the requirements and recommendations in <xref target="unmanaged"/> would app | |||
| ly in this situation.</t> | ||||
| <t>Systems that utilize <xref target="RFC8325"/> but cannot provide a separate AC_BE queue for NQB traffic, SHOULD map the NQB DSCP 45 (decimal) (or t he locally determined alternative) to UP 5 in the "Video" Access Category as wel l (see <xref target="updates_to_8325"/>).</t> | <t>Systems that utilize <xref target="RFC8325"/> but cannot provide a separate AC_BE queue for NQB traffic <bcp14>SHOULD</bcp14> map the DSCP value 45 (decimal) (or the locally determined alternative) to UP 5 in the Video Access C ategory as well (see <xref target="updates_to_8325"/>).</t> | |||
| </section> | </section> | |||
| <section anchor="updates_to_8325" numbered="true"> | <section anchor="updates_to_8325" numbered="true"> | |||
| <name>The Updates to RFC 8325</name> | <name>The Updates to RFC 8325</name> | |||
| <t>[XXX RFC Editor please replace RFCXXXX with this RFC number when publ | <t><xref target="RFC8325" section="4.2.9"/> describes the recommendation for the | |||
| ished XXX]</t> | handling of Standard service class traffic that carries the Default DSCP. | |||
| This update to <xref target="RFC8325"/> changes the title of <xref target="RF | ||||
| C8325" section="4.2.9"/> from "Standard" to "Standard and Non-Queue-Building". | ||||
| This update additionally adds a paragraph at the end of <xref target="RFC8325 | ||||
| " section="4.2.9"/> as follows:</t> | ||||
| <t><xref target="RFC8325" section="4.2.9"/> describes the recommendation for the | <blockquote>RFC 9956 defines a shallow-buffered, best-effort service for traffic | |||
| handling of Standard service class traffic that carries the Default DSCP. This | described as Non-Queue-Building and recommends the following treatment in Wi-Fi | |||
| update to <xref target="RFC8325"/> changes the title of <xref target="RFC8325" | equipment. | |||
| section="4.2.9"/> from "Standard" to "Standard and Non-Queue-Building". This up | It is <bcp14>RECOMMENDED</bcp14> that Wi-Fi equipment map Non-Queue-Building tra | |||
| date additionally adds a paragraph at the end of <xref target="RFC8325" section= | ffic into a separate queue in the same Access Category as the queue that carries | |||
| "4.2.9"/> as follows:</t> | Default traffic (i.e., the Best Effort Access Category). | |||
| It is <bcp14>RECOMMENDED</bcp14> that Wi-Fi equipment provide a separate queue i | ||||
| n UP 0 and map Non-Queue-Building traffic to that queue. | ||||
| If a separate queue in UP 0 cannot be provided (due to hardware limitations, etc | ||||
| .), a Wi-Fi device <bcp14>MAY</bcp14> map Non-Queue-Building traffic to UP 3. | ||||
| If neither of these options provides a separate queue from Default traffic, it i | ||||
| s <bcp14>RECOMMENDED</bcp14> that Wi-Fi equipment map Non-Queue-Building traffic | ||||
| to UP 5 (which corresponds to the default mapping described in Section 2.3). | ||||
| RFC 9956 provides additional recommendations and requirements for support of the | ||||
| NQB PHB that aren't available in the QoS model described in Section 6 but nonet | ||||
| heless could be supported in implementations.</blockquote> | ||||
| <t indent="4" keepWithPrevious="true">RFCXXXX defines a shallow-buffered best-ef | <t>In another update to <xref target="RFC8325"/> captured below, a new row for " | |||
| fort service for traffic marked with the NQB DSCP (45 decimal) and recommends th | Non-Queue-Building" traffic is inserted between the existing "Low-Latency Data" | |||
| e following treatment in Wi-Fi equipment. | and "OAM" rows in Figure 1 of <xref target="RFC8325"/> as follows:</t> | |||
| It is RECOMMENDED that Wi-Fi equipment map the NQB DSCP 45 (decimal) into a sepa | ||||
| rate queue in the same Access Category as the queue that carries Default traffic | ||||
| (i.e. the Best Effort Access 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 separate queue in UP 0 cannot be provided (due to hardware limitations, etc | ||||
| .) a Wi-Fi device MAY map the NQB DSCP 45 (decimal) to UP 3. If neither of these | ||||
| options provides a separate queue from Default traffic, it is RECOMMENDED that | ||||
| Wi-Fi equipment map the NQB DSCP 45 (decimal) to UP 5 (which corresponds to the | ||||
| default mapping described in Section 2.3). RFCXXXX provides additional recommen | ||||
| dations and requirements for support of the NQB PHB that aren't available in the | ||||
| QoS model described in Section 6, but nonetheless could be supported in impleme | ||||
| ntations.</t> | ||||
| <t>This update to <xref target="RFC8325"/> inserts a new row for "Non-Queue-Buil ding" traffic between the existing "Low-Latency Data" and "OAM" rows in its Figu re 1 as follows:</t> | ||||
| <artwork type="ascii-art" name="fig1_update.txt"> | <artwork type="ascii-art" name="fig1_update.txt"> | |||
| <![CDATA[ | <![CDATA[ | |||
| +---------------+------+----------+-------------+--------------------+ | +===============+======+==========+==================================+ | |||
| | Low- | AF21 | | | | | | IETF Diffserv | PHB |Reference | IEEE 802.11 | | |||
| | Latency | AF22 | RFC 2597 | 3 | AC_BE (Best Effort)| | | Service Class | | RFC |User Priority| Access Category | | |||
| | Data | AF23 | | | | | |===============+======+==========+=============+====================| | |||
| +---------------+------+----------+-------------+--------------------+ | | ... | ... | ... | ... | ... | | |||
| | Non- | | | 0, 3 | AC_BE (Best Effort)| | +---------------+------+----------+-------------+--------------------+ | |||
| | Queue- | NQB | RFC XXXX | OR | | | Low- | AF21 | | | | | |||
| | Building | | | 5 | AC_VI (Video) | | | Latency | AF22 | RFC 2597 | 3 | AC_BE (Best Effort)| | |||
| | | | | See Section 4.2.9 | | | Data | AF23 | | | | | |||
| +---------------+------+----------+-------------+--------------------+ | +---------------+------+----------+-------------+--------------------+ | |||
| | OAM | CS2 | RFC 2474 | 0 | AC_BE (Best Effort)| | | Non- | | | 0, 3 | AC_BE (Best Effort)| | |||
| +---------------+------+----------+-------------+--------------------+ | | Queue- | NQB | RFC 9956 | OR | | |||
| | Building | | | 5 | AC_VI (Video) | | ||||
| | | | | See Section 4.2.9 | | ||||
| +---------------+------+----------+-------------+--------------------+ | ||||
| | OAM | CS2 | RFC 2474 | 0 | AC_BE (Best Effort)| | ||||
| +---------------+------+----------+-------------+--------------------+ | ||||
| ]]> | ]]> | |||
| ---------------+------+----------+-------------+--------------------+ | ||||
| </artwork> | </artwork> | |||
| <t>This update adds the following sentence to the end of the first paragraph in | <t>A third update adds the following sentence to the end of the first paragraph | |||
| <xref target="RFC8325" section="5.3"/>: "An exception to this is the NQB DSCP 4 | in <xref target="RFC8325" section="5.3"/>:</t> | |||
| 5 (decimal) which encodes for best-effort service."</t> | ||||
| <blockquote>An exception to this is the NQB DSCP value 45 (decimal), which encod | ||||
| es for best-effort service.</blockquote> | ||||
| </section> | </section> | |||
| </section> | </section> | |||
| </section> | </section> | |||
| <section anchor="IANA" numbered="true"> | <section anchor="IANA" numbered="true"> | |||
| <name>IANA Considerations</name> | <name>IANA Considerations</name> | |||
| <t>This document requests that IANA assign the Differentiated Services Fie | <t>IANA has assigned the Differentiated Services Field Codepoint (DSCP) 45 | |||
| ld Codepoint (DSCP) 45 ('0b101101', 0x2D) from the "Differentiated Services Fiel | from the "Differentiated Services Field Codepoints (DSCP)" registry (<eref targ | |||
| d Codepoints (DSCP)" registry (https://www.iana.org/assignments/dscp-registry/) | et="https://www.iana.org/assignments/dscp-registry/"/>) ("DSCP Pool 3 Codepoints | |||
| ("DSCP Pool 3 Codepoints", Codepoint Space xxxx01, Standards Action) as the reco | ", Codepoint Space xxxx01, Standards Action (<xref target="RFC8126" format="defa | |||
| mmended codepoint for Non-Queue-Building behavior.</t> | ult"/>) for NQB behavior.</t> | |||
| <t>IANA should update this registry as follows:</t> | ||||
| <ul> | ||||
| <li>Name: NQB</li> | ||||
| <li>Value (Binary): 101101</li> | ||||
| <li>Value (Decimal): 45</li> | ||||
| <li>Reference: this document</li> | ||||
| </ul> | ||||
| </section> | ||||
| <section numbered="true"> | ||||
| <name>Implementation Status</name> | ||||
| <t>Note to RFC Editor: This section should be removed prior to publication </t> | <t>IANA has updated this registry as follows:</t> | |||
| <t>The NQB PHB is implemented in equipment compliant with the current DOCS | <dl spacing="normal"> | |||
| IS 3.1 | <dt>Name:</dt><dd>NQB</dd> | |||
| specification, published by CableLabs at: | <dt>Value (Binary):</dt><dd>101101</dd> | |||
| <eref target="https://www.cablelabs.com/specifications/search?query=& | <dt>Value (Decimal):</dt><dd>45</dd> | |||
| ;category=DOCSIS&subcat=DOCSIS%203.1&doctype=Specifications&content= | <dt>Reference:</dt><dd>RFC 9956</dd> | |||
| false&archives=false&currentPage=1">CableLabs Specifications Search</ere | </dl> | |||
| f>.</t> | ||||
| <t>CableLabs maintains a list of production cable modem devices that are C | ||||
| ertified as being compliant to the DOCSIS Specifications, this list is available | ||||
| at <eref target="https://www.cablelabs.com/wp-content/uploads/2013/10/cert_qual | ||||
| .xlsx"/>. DOCSIS 3.1 modems certified in CW 134 or greater implement the NQB PHB | ||||
| . This includes products from Arcadyan Technology Corporation, Arris, AVM, Castl | ||||
| enet, Commscope, Hitron, Motorola, Netgear, Sagemcom and Vantiva. | ||||
| There are additional production implementations that have not been Certifi | ||||
| ed as compliant to the specification, but which have been tested in non-public I | ||||
| nteroperability Events. | ||||
| These implementations are all proprietary, not available as open source.</ | ||||
| t> | ||||
| </section> | </section> | |||
| <section anchor="Security" numbered="true"> | <section anchor="Security" numbered="true"> | |||
| <name>Security Considerations</name> | <name>Security Considerations</name> | |||
| <t>The security considerations for the NQB PHB relate to the potential to impact the capacity available or delay experienced by other flows that share a b ottleneck on the path with traffic that is marked with the recommended NQB DSCP. </t> | <t>The security considerations for the NQB PHB relate to the potential to impact the capacity available or delay experienced by other flows that share a b ottleneck on the path with traffic that is marked with the recommended NQB DSCP. </t> | |||
| <t>Full support for the NQB PHB in bottleneck links limits the | <t>Full support for the NQB PHB in bottleneck links limits the | |||
| incentives for a Queue-Building application to mismark its packets as | incentives for a QB application to mis-mark its packets as | |||
| NQB, particularly for implementations that support traffic protection. | NQB, particularly for implementations that support traffic protection. | |||
| If a Queue-Building microflow were to mismark | If a QB microflow were to mis-mark | |||
| its packets as NQB, it would be unlikely to receive a benefit by | its packets as NQB, it would be unlikely to receive a benefit by | |||
| doing so, and it would usually experience a degradation, in contrast | doing so, and it would usually experience a degradation, in contrast | |||
| to mismarking its packets for a higher-priority PHB, e.g., the EF PHB | to mis-marking its packets for a higher-priority PHB, e.g., the EF PHB | |||
| <xref target="RFC3246"/>. | <xref target="RFC3246"/>. | |||
| The nature of the degradation would depend on the specifics of the PHB imp | The nature of the degradation would depend on the specifics of the PHB | |||
| lementation, including response to NQB buffer overflow (and on the presence or a | implementation, including response to NQB buffer overflow (and on the presence o | |||
| bsence of a traffic protection function), but could include excessive packet los | r absence of a traffic protection function) but could include excessive packet l | |||
| s, excessive delay variation and/or excessive out-of-order delivery. If a Non-Qu | oss, excessive delay variation, and/or excessive out-of-order delivery. | |||
| eue-Building microflow was to fail to mark its packets as NQB, it could suffer t | If an NQB microflow were to fail to mark its packets as NQB, it could s | |||
| he delay and loss typical of sharing a queue with capacity seeking traffic.</t> | uffer the delay and loss typical of sharing a queue with capacity-seeking traffi | |||
| c.</t> | ||||
| <t>To preserve low delay performance for NQB traffic, networks that suppor | <t>To preserve low-delay performance for NQB traffic, networks that suppor | |||
| t the NQB PHB will need to ensure that mechanisms are in place to prevent malici | t the NQB PHB will need to ensure that mechanisms are in place to prevent malici | |||
| ous traffic marked with the NQB DSCP from causing excessive queue delay. <xref | ous traffic marked with the NQB DSCP from causing excessive queue delay. <xref | |||
| target="traffic_protection"/> recommends the implementation of a traffic protect | target="traffic_protection"/> recommends the implementation of a traffic protect | |||
| ion mechanism to achieve this goal. The recommendations on traffic protection m | ion mechanism to achieve this goal. | |||
| echanisms in this document presume that some type of "flow" state be maintained | The recommendations on traffic protection mechanisms in this document p | |||
| in order to differentiate between microflows that are causing queuing delay and | resume that some type of "flow" state be maintained in order to differentiate be | |||
| those that aren't. Since this flow state is likely finite, this opens up the po | tween microflows that are causing queuing delay and those that aren't. | |||
| ssibility of flow-state exhaustion attacks. While this document requires that t | Since this flow state is likely finite, this opens up the possibility o | |||
| raffic protection mechanisms be designed with this possibility in mind, the outc | f flow-state exhaustion attacks. | |||
| omes of flow-state exhaustion would depend on the implementation.</t> | While this document requires that traffic protection mechanisms be desi | |||
| gned with this possibility in mind, the outcomes of flow-state exhaustion would | ||||
| depend on the implementation.</t> | ||||
| <t>If traffic protection is not implemented or is not able to | <t>If traffic protection is not implemented or is not able to | |||
| prevent queue formation in the NQB shallow buffer, the limited size | prevent queue formation in the NQB shallow buffer, the limited size | |||
| of that buffer will cause a growing queue to overrun that buffer, | of that buffer will cause a growing queue to overrun that buffer, | |||
| resulting in negative effects (e.g., reforwarding as Default, discarding) | resulting in negative effects (e.g., reforwarding as Default, discardin | |||
| that potentially impact multiple NQB-marked microflows, independent of whe | g) | |||
| ther each affected | that potentially impact multiple NQB-marked microflows, independent of | |||
| microflow contributed to queue formation. As discussed elsewhere in | whether each affected | |||
| this draft, those negative effects serve to discourage misuse and abuse of | microflow contributed to queue formation. | |||
| NQB by QB traffic, but the negative side effects on NQB traffic that | As discussed elsewhere in | |||
| is using NQB (and the associated shallow buffer) as intended | this document, those negative effects serve to discourage misuse and ab | |||
| motivates limiting the effects of shallow buffer overrun via per-user prov | use of | |||
| isioning limits | NQB by QB traffic, but the negative side effects on NQB traffic that | |||
| that prevent queue overrun effects from affecting other users (see <xref t | is using NQB (and the associated shallow buffer) as intended | |||
| arget="primary"/>).</t> | motivates limiting the effects of shallow buffer overrun via per-user p | |||
| rovisioning limits | ||||
| that prevent queue overrun effects from affecting other users (see <xre | ||||
| f target="primary"/>).</t> | ||||
| <t>Notwithstanding the above, the choice of DSCP for NQB does allow existi | <t>Notwithstanding the above, the choice of DSCP for NQB does allow existi | |||
| ng Wi-Fi networks to readily (and by default) support some of the PHB requiremen | ng Wi-Fi networks to readily (and by default) support some of the PHB requiremen | |||
| ts, but without a traffic protection function, and (when left in the default sta | ts, but without a traffic protection function, and (when left in the default sta | |||
| te) by giving NQB traffic higher priority than QB traffic. This is not considere | te) by giving NQB traffic higher priority than QB traffic. | |||
| d to be a compliant implementation of the PHB. These existing Wi-Fi networks cur | This is not considered to be a compliant implementation of the PHB. | |||
| rently provide priority to half of the DSCP space, whether or not 45 is assigned | These existing Wi-Fi networks currently provide priority to half of the | |||
| to the NQB DSCP. While the NQB DSCP value could also be abused to gain priorit | DSCP space, whether or not the DSCP value 45 (decimal) is assigned to the NQB D | |||
| y on such links, the potential presence of traffic protection functions in other | SCP. | |||
| hops along the path (which likely act on the NQB DSCP value alone) would make i | While the DSCP value 45 (decimal) could also be abused to gain priority | |||
| t less attractive for such abuse than any of the other 31 DSCP values that are g | on such links, the potential presence of traffic protection functions in other | |||
| iven priority.</t> | hops along the path (which likely act on the DSCP value 45 (decimal) alone) woul | |||
| d make it less attractive for such abuse than any of the other 31 DSCP values th | ||||
| at are given priority.</t> | ||||
| <t>This document discusses the potential use of the NQB DSCP and NQB PHB i | <t>This document discusses the potential use of the NQB DSCP and NQB PHB i | |||
| n network technologies that are standardized in other SDOs. Any security conside | n network technologies that are standardized in other SDOs. | |||
| rations that relate to deployment and operation of NQB solely in specific networ | Any security considerations that relate to deployment and operation of | |||
| k technologies are not discussed here.</t> | NQB solely in specific network technologies are not discussed here.</t> | |||
| <t>NQB uses the Diffserv field. The design of Diffserv does not include in | <t>NQB uses the DS field. | |||
| tegrity protection for the DSCP, and thus it is possible for the DSCP to be chan | The design of Diffserv does not include integrity protection for the DS | |||
| ged by an on-path attacker. The NQB PHB and associated DSCP don't change this. W | CP; thus, it is possible for the DSCP to be changed by an on-path attacker. | |||
| hile re-marking DSCPs is permitted for various reasons (some are discussed in th | The NQB PHB and associated DSCP don't change this. | |||
| is document, others can be found in <xref target="RFC2474"/> and <xref target="R | While re-marking DSCPs is permitted for various reasons (some are discu | |||
| FC2475"/>), if done maliciously, this might negatively affect the QoS of the tam | ssed in this document, others can be found in <xref target="RFC2474"/> and <xref | |||
| pered microflow. Nonetheless, an on-path attacker can also alter other mutable f | target="RFC2475"/>), if done maliciously, this might negatively affect the QoS | |||
| ields in the IP header (e.g. the TTL), which can wreak much more havoc than just | of the tampered microflow. | |||
| altering QoS treatment.</t> | Nonetheless, an on-path attacker can also alter other mutable fields in | |||
| the IP header (e.g., the TTL), which can wreak much more havoc than just alteri | ||||
| ng QoS treatment.</t> | ||||
| </section> | </section> | |||
| </middle> | </middle> | |||
| <!-- *****BACK MATTER ***** --> | ||||
| <back> | <back> | |||
| <references> | <references> | |||
| <name>References</name> | <name>References</name> | |||
| <references> | <references> | |||
| <name>Normative References</name> | <name>Normative References</name> | |||
| <reference anchor="RFC8085" target="https://www.rfc-editor.org/info/rfc8 | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| 085" xml:base="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.80 | 085.xml"/> | |||
| 85.xml"> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | |||
| <front> | 119.xml"/> | |||
| <title>UDP Usage Guidelines</title> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| <seriesInfo name="DOI" value="10.17487/RFC8085"/> | 174.xml"/> | |||
| <seriesInfo name="RFC" value="8085"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| <seriesInfo name="BCP" value="145"/> | 325.xml"/> | |||
| <author initials="L." surname="Eggert" fullname="L. Eggert"> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | |||
| <organization/> | 474.xml"/> | |||
| </author> | ||||
| <author initials="G." surname="Fairhurst" fullname="G. Fairhurst"> | ||||
| <organization/> | ||||
| </author> | ||||
| <author initials="G." surname="Shepherd" fullname="G. Shepherd"> | ||||
| <organization/> | ||||
| </author> | ||||
| <date year="2017" month="March"/> | ||||
| </front> | ||||
| </reference> | ||||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | ||||
| C.2119.xml"/> | ||||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | ||||
| C.8174.xml"/> | ||||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | ||||
| C.8325.xml"/> | ||||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | ||||
| C.2474.xml"/> | ||||
| <!-- <xi:include href="http://xml.resource.org/public/rfc/bibxml/referenc e.RFC.0791.xml"/> --> | <!-- <xi:include href="http://xml.resource.org/public/rfc/bibxml/referenc e.RFC.0791.xml"/> --> | |||
| </references> | </references> | |||
| <references> | <references> | |||
| <name>Informative References</name> | <name>Informative References</name> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | |||
| C.2983.xml"/> | 983.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3 | |||
| C.3246.xml"/> | 246.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | |||
| C.2914.xml"/> | 914.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| C.8033.xml"/> | 033.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| C.8034.xml"/> | 034.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.81 | |||
| C.8289.xml"/> | 26.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| C.8290.xml"/> | 289.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| C.2475.xml"/> | 290.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | |||
| C.4594.xml"/> | 475.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4 | |||
| C.8100.xml"/> | 594.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| C.5127.xml"/> | 100.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5 | |||
| C.7893.xml"/> | 127.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7 | |||
| C.3551.xml"/> | 893.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3 | |||
| C.8083.xml"/> | 551.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| C.9330.xml"/> | 083.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 | |||
| C.9331.xml"/> | 330.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 | |||
| C.9332.xml"/> | 331.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 | |||
| C.9435.xml"/> | 332.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 | |||
| C.8622.xml"/> | 435.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| C.2598.xml"/> | 622.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | |||
| C.5681.xml"/> | 598.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5 | |||
| C.4301.xml"/> | 681.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4 | |||
| C.2661.xml"/> | 301.xml"/> | |||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D. | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | |||
| draft-briscoe-docsis-q-protection-07.xml"/> | 661.xml"/> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <!-- [RFC9957]; | |||
| C.9438.xml"/> | draft-briscoe-docsis-q-protection-07 companion document | |||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D. | --> | |||
| draft-ietf-ccwg-bbr-03.xml"/> | <reference anchor="RFC9957" target="https://www.rfc-editor.org/info/rfc9957"> | |||
| <xi:include href="http://xml.resource.org/public/rfc/bibxml/reference.RF | <front> | |||
| C.5865.xml"/> | <title>The DOCSIS(r) Queue Protection Algorithm to Preserve Low Latency</t | |||
| <reference anchor="Custura"> | itle> | |||
| <author initials="B." surname="Briscoe" fullname="Bob Briscoe" role="edito | ||||
| r"> | ||||
| <organization>Independent</organization> | ||||
| </author> | ||||
| <author initials="G." surname="White" fullname="Greg White"> | ||||
| <organization>CableLabs</organization> | ||||
| </author> | ||||
| <date month="April" year="2026" /> | ||||
| </front> | ||||
| <seriesInfo name="RFC" value="9957"/> | ||||
| <seriesInfo name="DOI" value="10.17487/RFC9957"/> | ||||
| </reference> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 | ||||
| 438.xml"/> | ||||
| <!-- [BBR-CC] | ||||
| draft-ietf-ccwg-bbr-04 | ||||
| IESG State: I-D Exists as of 2/10/26 | ||||
| --> | ||||
| <reference anchor="BBR-CC" target="https://datatracker.ietf.org/doc/html/draft-i | ||||
| etf-ccwg-bbr-04"> | ||||
| <front> | ||||
| <title>BBR Congestion Control</title> | ||||
| <author initials="N." surname="Cardwell" fullname="Neal Cardwell" role="ed | ||||
| itor"> | ||||
| <organization>Google</organization> | ||||
| </author> | ||||
| <author initials="I." surname="Swett" fullname="Ian Swett" role="editor"> | ||||
| <organization>Google</organization> | ||||
| </author> | ||||
| <author initials="J." surname="Beshay" fullname="Joseph Beshay" role="edit | ||||
| or"> | ||||
| <organization>Meta</organization> | ||||
| </author> | ||||
| <date month="October" day="20" year="2025" /> | ||||
| </front> | ||||
| <seriesInfo name="Internet-Draft" value="draft-ietf-ccwg-bbr-04" /> | ||||
| </reference> | ||||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5 | ||||
| 865.xml"/> | ||||
| <!-- [rfced] FYI, for the [Custura] reference, we found a PDF for this | ||||
| article from the TMA website and added it. Please let us know if you | ||||
| have any objections. | ||||
| --> | ||||
| <reference anchor="Custura" target="https://tma.ifip.org/wp-content/uplo | ||||
| ads/sites/7/2017/06/mnm2017_paper13.pdf"> | ||||
| <front> | <front> | |||
| <title>Exploring DSCP modification pathologies in mobile edge networ ks</title> | <title>Exploring DSCP modification pathologies in mobile edge networ ks</title> | |||
| <seriesInfo name="TMA" value=""/> | ||||
| <author initials="A." surname="Custura"/> | <author initials="A." surname="Custura"/> | |||
| <author initials="A." surname="Venne"/> | <author initials="A." surname="Venne"/> | |||
| <author initials="G." surname="Fairhurst"/> | <author initials="G." surname="Fairhurst"/> | |||
| <date year="2017"/> | <date year="2017"/> | |||
| </front> | </front> | |||
| <refcontent>Network Traffic Measurement and Analysis Conference (TMA)< /refcontent> | ||||
| </reference> | </reference> | |||
| <reference anchor="Barik"> | <!-- [rfced] FYI, for the [Barik] reference, we found a PDF for | |||
| this article from the International Teletraffic Congress (ITC) website | ||||
| (https://itc-conference.org/itc-library/itc30.html) and added it. | ||||
| --> | ||||
| <reference anchor="Barik" target="https://gitlab2.informatik.uni-wuerzbu | ||||
| rg.de/itc-conference/itc-publications-public/-/raw/master/itc30/Barik18ITC30.pdf | ||||
| ?inline=true"> | ||||
| <front> | <front> | |||
| <title>Can WebRTC QoS Work? A DSCP Measurement Study</title> | <title>Can WebRTC QoS Work? A DSCP Measurement Study</title> | |||
| <seriesInfo name="ITC" value="30"/> | ||||
| <author initials="R." surname="Barik"/> | <author initials="R." surname="Barik"/> | |||
| <author initials="M." surname="Welzl"/> | <author initials="M." surname="Welzl"/> | |||
| <author initials="A." surname="Elmokashfi"/> | <author initials="A." surname="Elmokashfi"/> | |||
| <author initials="T." surname="Dreibholz"/> | <author initials="T." surname="Dreibholz"/> | |||
| <author initials="S." surname="Gjessing"/> | <author initials="S." surname="Gjessing"/> | |||
| <date month="September" year="2018"/> | <date month="September" year="2018"/> | |||
| </front> | </front> | |||
| <refcontent>30th International Teletraffic Congress (ITC 30)</refconte | ||||
| nt> | ||||
| <seriesInfo name="DOI" value="10.1109/ITC30.2018.00034"/> | ||||
| </reference> | </reference> | |||
| <reference anchor="SA-5G"> | ||||
| <reference anchor="SA-5G" target="https://portal.3gpp.org/desktopmodules | ||||
| /Specifications/SpecificationDetails.aspx?specificationId=3144 | ||||
| "> | ||||
| <front> | <front> | |||
| <title>System Architecture for 5G</title> | <title>System Architecture for the 5G System (5GS)</title> | |||
| <author> | <author> | |||
| <organization>3GPP</organization> | <organization>3GPP</organization> | |||
| </author> | </author> | |||
| <date month="June" year="2024"/> | <date month="March" year="2026"/> | |||
| </front> | </front> | |||
| <refcontent>TS 23.501 V18.6.0</refcontent> | <seriesInfo name="3GPP" value="TS 23.501"/> | |||
| <refcontent>Version 20.1.0, Release 20</refcontent> | ||||
| </reference> | </reference> | |||
| <reference anchor="IEEE802-11" target="https://standards.ieee.org/standa | ||||
| rd/802_11-2020.html"> | <reference anchor="IEEE802-11" target="https://ieeexplore.ieee.org/docum | |||
| ent/10979691"> | ||||
| <front> | <front> | |||
| <title>IEEE 802.11-2020</title> | <title>IEEE Standard for Information Technology -- Telecommunication | |||
| <seriesInfo name="IEEE" value="802"/> | s and Information Exchange between Systems - Local and Metropolitan Area Network | |||
| <author fullname="IEEE-SA"/> | s -- Specific Requirements - Part 11: Wireless LAN Medium Access Control (MAC) a | |||
| <date month="December" year="2020"/> | nd Physical Layer (PHY) Specifications</title> | |||
| <author> | ||||
| <organization>IEEE</organization> | ||||
| </author> | ||||
| <date month="April" year="2025"/> | ||||
| </front> | </front> | |||
| <seriesInfo name="IEEE Std" value="802.11-2024"/> | ||||
| <seriesInfo name="DOI" value="10.1109/IEEESTD.2025.10979691"/> | ||||
| </reference> | </reference> | |||
| <!-- [rfced] The date for the [TR-369] reference is January 2022; | ||||
| however, the URL for this reference points to a Broadband Forum | ||||
| specification with an issue date of July 2025. | ||||
| We have updated this reference to match the information provided at | ||||
| the URL. Please let us know if you have any objections. | ||||
| --> | ||||
| <reference anchor="TR-369" target="https://usp.technology/specification/ index.html"> | <reference anchor="TR-369" target="https://usp.technology/specification/ index.html"> | |||
| <front> | <front> | |||
| <title>The User Services Platform</title> | <title>The User Services Platform</title> | |||
| <author> | <author> | |||
| <organization>Broadband Forum</organization> | <organization>Broadband Forum</organization> | |||
| </author> | </author> | |||
| <date year="2022" month="January"/> | <date year="2025" month="July"/> | |||
| </front> | </front> | |||
| <refcontent>Issue: 1 Amendment 4 Corrigendum 2</refcontent> | ||||
| </reference> | </reference> | |||
| <reference anchor="QOS_TRAFFIC_TYPE" target="https://learn.microsoft.com /en-us/windows/win32/api/qos2/ne-qos2-qos_traffic_type"> | <reference anchor="QOS_TRAFFIC_TYPE" target="https://learn.microsoft.com /en-us/windows/win32/api/qos2/ne-qos2-qos_traffic_type"> | |||
| <front> | <front> | |||
| <title>QOS_TRAFFIC_TYPE enumeration</title> | <title>QOS_TRAFFIC_TYPE enumeration (qos2.h)</title> | |||
| <author> | <author> | |||
| <organization>Microsoft, Corporation</organization> | <organization>Microsoft, Corporation</organization> | |||
| </author> | </author> | |||
| <date year="2022"/> | <date month="January" year="2022"/> | |||
| </front> | </front> | |||
| </reference> | </reference> | |||
| <reference anchor="LOW_LATENCY_DOCSIS" target="https://cablela.bs/low-la tency-docsis-technology-overview-february-2019"> | <reference anchor="LOW_LATENCY_DOCSIS" target="https://cablela.bs/low-la tency-docsis-technology-overview-february-2019"> | |||
| <front> | <front> | |||
| <title>Low Latency DOCSIS: Technology Overview</title> | <title>Low Latency DOCSIS: Technology Overview</title> | |||
| <author> | <author> | |||
| <organization>CableLabs</organization> | <organization>CableLabs</organization> | |||
| </author> | </author> | |||
| <date year="2019" month="February"/> | <date year="2019" month="February"/> | |||
| </front> | </front> | |||
| </reference> | </reference> | |||
| <!-- [rfced] The [Gettys2021] reference points to an article from | ||||
| the "Communications of the ACM"; however, the DOI provided for this | ||||
| reference (https://doi.org/10.1145/2063166.2071893) points | ||||
| to an article from "ACM Queue" with a different publication date. | ||||
| We updated this reference to point to the DOI for the "Communications | ||||
| of the ACM" version of this article (note that this version is also | ||||
| free access): https://dl.acm.org/doi/10.1145/2063176.2063196. | ||||
| --> | ||||
| <reference anchor="Gettys2012"> | <reference anchor="Gettys2012"> | |||
| <front> | <front> | |||
| <title>Bufferbloat: Dark Buffers in the Internet</title> | <title>Bufferbloat: Dark Buffers in the Internet</title> | |||
| <author initials="J." surname="Gettys" /> | <author initials="J." surname="Gettys"/> | |||
| <author initials="K." surname="Nichols" /> | <author initials="K." surname="Nichols"/> | |||
| <date month="January" year="2012" /> | <date month="January" year="2012"/> | |||
| </front> | </front> | |||
| <seriesInfo name="Communications of the ACM" value="Vol. 55, No. 1, pp | <refcontent>Communications of the ACM, vol. 55, no. 1, pp. 57-65</refc | |||
| . 57-65" /> | ontent> | |||
| <seriesInfo name="DOI" value="10.1145/2063166.2071893"/> | <seriesInfo name="DOI" value="10.1145/2063176.2063196"/> | |||
| </reference> | </reference> | |||
| <!-- [rfced] Please review reference [Cardwell2017]. The author | ||||
| information provided for this reference did not match in the | ||||
| information at the URL. We have updated this reference to match | ||||
| what was available at the URL. | ||||
| Original: | ||||
| [Cardwell2017] | ||||
| Cardwell, N., Cheng, Y., Jacobson, V., Iyengar, J., Swett, | ||||
| I., and B. Yan, "BBR: Congestion-Based Congestion | ||||
| Control", Communications of the ACM Vol. 60, No. 2, pp. | ||||
| 58-66, DOI 10.1145/3009824, February 2017, | ||||
| <https://doi.org/10.1145/3009824>. | ||||
| Current: | ||||
| [Cardwell2017] | ||||
| Cardwell, N., Cheng, Y., Gunn, C. S., Yeganeh, S. H., and | ||||
| V. Jacobson, "BBR: Congestion-Based Congestion Control", | ||||
| Communications of the ACM, vol. 60, no. 2, pp. 58-66, | ||||
| DOI 10.1145/3009824, February 2017, | ||||
| <https://doi.org/10.1145/3009824>. | ||||
| --> | ||||
| <reference anchor="Cardwell2017"> | <reference anchor="Cardwell2017"> | |||
| <front> | <front> | |||
| <title>BBR: Congestion-Based Congestion Control</title> | <title>BBR: Congestion-Based Congestion Control</title> | |||
| <author initials="N." surname="Cardwell" /> | <author initials="N." surname="Cardwell"/> | |||
| <author initials="Y." surname="Cheng" /> | <author initials="Y." surname="Cheng"/> | |||
| <author initials="V." surname="Jacobson" /> | <author fullname="C. Stephen Gunn"/> | |||
| <author initials="J." surname="Iyengar" /> | <author fullname="Soheil Hassas Yeganeh"/> | |||
| <author initials="I." surname="Swett" /> | <author initials="V." surname="Jacobson"/> | |||
| <author initials="B." surname="Yan" /> | <date month="February" year="2017"/> | |||
| <date month="February" year="2017" /> | ||||
| </front> | </front> | |||
| <seriesInfo name="Communications of the ACM" value="Vol. 60, No. 2, pp . 58-66" /> | <refcontent>Communications of the ACM, vol. 60, no. 2, pp. 58-66</refc ontent> | |||
| <seriesInfo name="DOI" value="10.1145/3009824"/> | <seriesInfo name="DOI" value="10.1145/3009824"/> | |||
| </reference> | </reference> | |||
| <reference anchor="WikipediaBufferbloat" target="https://en.wikipedia.or g/wiki/Bufferbloat"> | <reference anchor="WikipediaBufferbloat" target="https://en.wikipedia.or g/w/index.php?title=Bufferbloat&oldid=1292250296"> | |||
| <front> | <front> | |||
| <title>Bufferbloat</title> | <title>Bufferbloat</title> | |||
| <author> | <author> | |||
| <organization>Wikipedia Contributors</organization> | <organization>Wikipedia</organization> | |||
| </author> | </author> | |||
| <date day="23" month="May" year="2025" /> | <date month="May" year="2025"/> | |||
| </front> | </front> | |||
| </reference> | </reference> | |||
| </references> | </references> | |||
| </references> | </references> | |||
| <section> | <section> | |||
| <name>DSCP Re-marking Policies</name> | <name>DSCP Re-marking Policies</name> | |||
| <t>Some network operators typically bleach (zero out) the Diffserv field | <t>Some network operators typically bleach (zero out) the DSCP field on | |||
| on ingress into their network <xref target="RFC9435"/><xref target="Custura"/>< | ingress into their network (see <xref target="RFC9435"/>, <xref target="Custura" | |||
| xref target="Barik"/>, and in some cases apply their own DSCP for internal usage | />, and <xref target="Barik"/>) and, in some cases, apply their own DSCP for int | |||
| . Bleaching the NQB DSCP is not expected to cause harm to Default traffic, but i | ernal use. | |||
| t will severely limit the ability to provide NQB treatment. Reports on existing | Bleaching the DSCP value 45 (decimal) is not expected to cause harm t | |||
| deployments of DSCP manipulation <xref target="Custura"/><xref target="Barik"/> | o Default traffic, but it will severely limit the ability to provide NQB treatme | |||
| categorize the re-marking behaviors into the following six policies: bleach all | nt. | |||
| traffic (set DSCP to zero), set the top three bits (the former Precedence bits) | Reports on existing deployments of DSCP manipulation (see <xref targe | |||
| on all traffic to 0b000, 0b001, or 0b010, set the low three bits on all traffic | t="Custura"/> and <xref target="Barik"/>) categorize the re-marking behaviors in | |||
| to 0b000, or re-mark all traffic to a particular (non-zero) DSCP value.</t> | to the following policies: bleach all traffic (set DSCP to zero); set the top t | |||
| hree bits (the 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 a par | ||||
| ticular (non-zero) DSCP value.</t> | ||||
| <t>Regarding the DSCP value 45 (decimal), there were no observations of | <t>Regarding the DSCP value 45 (decimal), there were no observations of | |||
| DSCP manipulation reported in which traffic was marked 45 (decimal) by any of th | DSCP manipulation reported in which traffic was marked with the DSCP value 45 (d | |||
| ese policies. Thus it appears that these re-marking policies would be unlikely | ecimal) by any of these policies. | |||
| to result in QB traffic being marked as NQB (45). In terms of the fate of traff | Thus, it appears that these re-marking policies would be unlikely to | |||
| ic marked with the NQB DSCP that is subjected to one of these policies, it would | result in QB traffic being marked as NQB. | |||
| be indistinguishable from some subset (possibly all) of other traffic. In the | In terms of the fate of traffic marked with the DSCP value 45 (decima | |||
| policies where all traffic is re-marked using the same (zero or non-zero) DSCP, | l) that is subjected to one of these policies, it would be indistinguishable fro | |||
| the ability for a subsequent network hop to differentiate NQB traffic via DSCP w | m some subset (possibly all) of other traffic. | |||
| ould clearly be lost entirely.</t> | In the policies where all traffic is re-marked using the same (zero o | |||
| r non-zero) DSCP value, the ability for a subsequent network hop to differentiat | ||||
| e NQB traffic via DSCP would clearly be lost entirely.</t> | ||||
| <t>In the policies where the top three bits are overwritten (see <xref t | <t>In the policies where the top three bits are overwritten (see <xref t | |||
| arget="RFC9435" section="4.2"/>), the NQB DSCP (45) would receive the same marki | arget="RFC9435" section="4.2"/>), the DSCP value 45 (decimal) would receive the | |||
| ng as would the currently unassigned Pool 3 DSCPs 5,13,21,29,37,53,61, with all | same marking as would the currently unassigned Pool 3 DSCP values (5, 13, 21, 2 | |||
| of these DSCPs getting re-marked to DSCP = 5, 13 or 21 (depending on the overwri | 9, 37, 53, and 61), with all of these DSCP values getting re-marked to DSCP valu | |||
| te value used). Since none of the DSCPs in the preceding lists are currently ass | e = 5, 13, or 21 (depending on the overwrite value used). | |||
| igned by IANA, and they all are reserved for Standards Action, it is believed th | Since none of the DSCP values in the preceding lists are currently as | |||
| at they are not widely used currently, but this could vary based on local-usage, | signed by IANA, and they all are reserved for Standards Action, it is believed t | |||
| and could change in the future. If networks in which this sort of re-marking oc | hat they are not widely used currently; however, this could vary based on local- | |||
| curs (or networks downstream) classify the resulting DSCP (i.e. 5, 13, or 21) to | usage and could change in the future. | |||
| the NQB PHB, or re-mark such traffic as 45 (decimal), they risk giving NQB trea | If networks in which this sort of re-marking occurs or networks downs | |||
| tment to other traffic that was not originally marked as NQB. In addition, as d | tream classify the resulting DSCP (i.e., 5, 13, or 21) to the NQB PHB or re-mark | |||
| escribed in <xref target="RFC9435" section="6"/> future assignments of these 0bx | such traffic with DSCP value 45 (decimal), they risk giving NQB treatment to ot | |||
| xx101 DSCPs would need to be made with consideration of the potential that they | her traffic that was not originally marked as NQB. | |||
| all are treated as NQB in some networks.</t> | In addition, as described in <xref target="RFC9435" section="6"/> fut | |||
| ure assignments of these 0bxxx101 DSCPs would need to be made with consideration | ||||
| of the potential that they all are treated as NQB in some networks.</t> | ||||
| <t>For the policy in which the low three bits are set to 0b000, the NQB | <t>For the policy in which the low three bits are set to 0b000, the DSCP | |||
| (45) value would be re-marked to CS5 and would be indistinguishable from CS5, VA | value 45 (decimal) would be re-marked to CS5 and would be indistinguishable fro | |||
| , EF (and the currently unassigned DSCPs 41, 42, 43). Traffic marked using the | m CS5, VA, and EF (and the currently unassigned DSCP values 41, 42, and 43). | |||
| existing standardized DSCPs in this list are likely to share the same general pr | Traffic marked using the existing standardized DSCPs in this list are | |||
| operties as NQB traffic (non-capacity-seeking, very low data rate or relatively | likely to share the same general properties as NQB traffic (non-capacity-seekin | |||
| low and consistent data rate). Similarly, any future recommended usage for DSCPs | g and very low data rate, relatively low data rate, and consistent data rate). | |||
| 41, 42, 43 would likely be somewhat compatible with NQB treatment, assuming tha | Similarly, any future recommended usage for DSCP values 41, 42, 43 wo | |||
| t IP Precedence compatibility (see <xref target="RFC4594" section="1.5.4"/>) is | uld likely be somewhat compatible with NQB treatment, assuming that IP Precedenc | |||
| maintained in the future. Here there might be an opportunity for a node to provi | e compatibility (see <xref target="RFC4594" section="1.5.4"/>) is maintained in | |||
| de the NQB PHB or the CS5 PHB to CS5-marked traffic and retain some of the benef | the future. | |||
| its of NQB marking. This could be another motivation to classify CS5-marked tra | Here there might be an opportunity for a node to provide the NQB PHB | |||
| ffic into the NQB queue (as discussed in <xref target="aggregation2"/>).</t> | or the CS5 PHB to CS5-marked traffic and retain some of the benefits of NQB mark | |||
| ing. | ||||
| This could be another motivation to classify CS5-marked traffic into | ||||
| the NQB queue (as discussed in <xref target="aggregation2"/>).</t> | ||||
| </section> | </section> | |||
| <section anchor="EF"> | <section anchor="EF"> | |||
| <name>Comparison with Expedited Forwarding</name> | <name>Comparison with Expedited Forwarding</name> | |||
| <t>The Expedited Forwarding definition <xref target="RFC3246"/> provides t | <t>The EF definition <xref target="RFC3246"/> provides the following text | |||
| he following text to describe the EF PHB forwarding behavior: "This specificatio | to describe the EF PHB forwarding behavior:</t> | |||
| n defines a PHB in which EF | <blockquote> | |||
| packets are guaranteed to receive service at or above a configured rate" a | This specification defines a PHB in which EF packets are guaranteed | |||
| nd "the rate at which EF | to receive service at or above a configured rate</blockquote> | |||
| traffic is served at a given output interface should be at least the | <t>and</t> | |||
| configured rate R, over a suitably defined interval, independent of | <blockquote>the rate at | |||
| the offered load of non-EF traffic to that interface." | which EF traffic is served at a given output interface should be at | |||
| Notably, this description is true of any class of traffic that is configur | least the configured rate R, over a suitably defined interval, | |||
| ed with a guaranteed minimum rate, including the Default PHB if configured per t | independent of the offered load of non-EF traffic to that interface.</blockquote | |||
| he guidelines in <xref target="RFC4594" section="1.5.1"/>. <xref target="RFC3246 | > | |||
| "/> goes on to formalize the definition of EF by requiring that an EF node be ch | <t>Notably, this description is true of any class of traffic that is confi | |||
| aracterizable in terms of the fidelity with which it is able to provide a guaran | gured with a guaranteed minimum rate, including the Default PHB if configured pe | |||
| teed rate.</t> | r the guidelines in <xref target="RFC4594" section="1.5.1"/>. <xref target="RFC3 | |||
| 246"/> goes on to formalize the definition of EF by requiring that an EF node be | ||||
| characterizable in terms of the fidelity with which it is able to provide a gua | ||||
| ranteed rate.</t> | ||||
| <t>While the NQB PHB is not required to be configured with a guaranteed mi | <t>While the NQB PHB is not required to be configured with a guaranteed mi | |||
| nimum rate, <xref target="RFC2474"/> and <xref target="RFC4594"/> recommend assi | nimum rate, <xref target="RFC2474"/> and <xref target="RFC4594"/> recommend assi | |||
| gning some minimum resources for the Default PHB, in particular some dedicated c | gning some minimum resources for the Default PHB, in particular, some dedicated | |||
| apacity. If such a guaranteed minimum rate is configured for the Default PHB, it | capacity. | |||
| is recommended (<xref target="phb_requirements"/>) that NQB traffic share and b | If such a guaranteed minimum rate is configured for the Default PHB, it | |||
| e given equal access to that rate. In such cases, the NQB PHB could effectively | is recommended (<xref target="phb_requirements"/>) that NQB traffic share and b | |||
| receive a rate guarantee of (e.g.) 50% of the rate guaranteed to the combined NQ | e given equal access to that rate. | |||
| B/Default PHBs, and so technically complies with the PHB forwarding behavior def | In such cases, the NQB PHB could effectively receive a rate guarantee o | |||
| ined for EF. </t> | f (for example) 50% of the rate guaranteed to the combined NQB/Default PHBs; the | |||
| refore, it technically complies with the PHB forwarding behavior defined for EF. | ||||
| </t> | ||||
| <t>However, EF is intended to be a managed service, and requires that traf | <t>However, EF is intended to be a managed service and requires that traff | |||
| fic be policed such that the arriving rate of traffic into the EF PHB doesn't ex | ic be policed such that the arriving rate of traffic into the EF PHB doesn't exc | |||
| ceed the guaranteed forwarding rate configured for the PHB, thereby ensuring tha | eed the guaranteed forwarding rate configured for the PHB. | |||
| t low delay and low delay variation are provided. NQB is intended as a best eff | This ensures that low delay and low-delay variation are provided. | |||
| ort service, and hence the aggregate of traffic arriving to the NQB PHB queue co | NQB is intended as a best effort service; hence, the aggregate of traff | |||
| uld exceed the forwarding rate available to the PHB. <xref target="traffic_prote | ic arriving to the NQB PHB queue could exceed the forwarding rate available to t | |||
| ction"/> discusses the recommended mechanism for handling excess traffic in NQB. | he PHB. <xref target="traffic_protection"/> discusses the recommended mechanism | |||
| While EF relies on rate policing and dropping of excess traffic at the dom | for handling excess traffic in NQB. | |||
| ain border, this is only one option for NQB. NQB primarily recommends traffic pr | While EF relies on rate policing and dropping of excess traffic at the | |||
| otection located at each potential bottleneck, where actual queuing can be detec | domain border, this is only one option for NQB. | |||
| ted and where excess traffic can be reclassified into the Default PHB rather tha | NQB primarily recommends traffic protection located at each potential b | |||
| n dropping it. Local traffic protection is more feasible for NQB, given the focu | ottleneck, where actual queuing can be detected and where excess traffic can be | |||
| s is on access networks, where one node is typically designed to be the known bo | reclassified into the Default PHB rather than dropping it. | |||
| ttleneck where traffic control functions all reside. In contrast, EF is presumed | Local traffic protection is more feasible for NQB, given the focus is o | |||
| to follow the Diffserv architecture <xref target="RFC2475"/> for core networks, | n access networks, where one node is typically designed to be the known bottlene | |||
| where traffic conditioning is delegated to border nodes, in order to simplify h | ck where traffic control functions all reside. | |||
| igh capacity interior nodes. | In contrast, EF is presumed to follow the Diffserv architecture <xref t | |||
| Further, NQB recommends a microflow-based mechanism to limit the performan | arget="RFC2475"/> for core networks, where traffic conditioning is delegated to | |||
| ce impact of excess traffic to those microflows causing potential congestion of | border nodes in order to simplify high-capacity interior nodes. | |||
| the NQB queue, whereas EF ignores microflow properties. | Further, NQB recommends a microflow-based mechanism to limit the perfor | |||
| Note that under congestion, low loss for NQB conformant flows is only ensu | mance impact of excess traffic to those microflows causing potential congestion | |||
| red if such a mechanism is operational. Note also that this mechanism for NQB op | of the NQB queue, whereas EF ignores microflow properties. | |||
| erates at the available forwarding rate for the PHB (which could vary based on o | Note that, under congestion, low loss for NQB-conformant flows is only | |||
| ther traffic load) as opposed to a configured guaranteed rate, as in EF.</t> | ensured if such a mechanism is operational. | |||
| Note also that this mechanism for NQB operates at the available forward | ||||
| ing rate for the PHB (which could vary based on other traffic load) as opposed t | ||||
| o a configured guaranteed rate, as in EF.</t> | ||||
| <t>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 NQB PHB suit able for implementation in networks where link capacity is not or cannot be guar anteed.</t> | <t>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 NQB PHB suit able for implementation in networks where link capacity is not or cannot be guar anteed.</t> | |||
| <t>There are additional distinctions between EF and NQB arising from the i | <t>There are additional distinctions between EF and NQB arising from the i | |||
| ntended usage as described in <xref target="RFC4594"/> and the actual usage in p | ntended usage as described in <xref target="RFC4594"/> and the actual usage in p | |||
| ractice in the Internet. In <xref target="RFC4594" section="1.5.3"/>, EF is desc | ractice in the Internet. | |||
| ribed as generally being used to carry voice or data that requires "wire like" b | In <xref target="RFC4594" section="1.5.3"/>, EF is described as general | |||
| ehavior through the network. | ly being used to carry voice or data that requires "wire-like" behavior through | |||
| The NQB PHB similarly is useful to carry application traffic requiring wir | the network. | |||
| e like performance, characterized by low delay and low delay-variation, but plac | The NQB PHB similarly is useful to carry application traffic requiring | |||
| es a pre-condition that each microflow be relatively low data rate and sent in a | wire-like performance, characterized by low delay and low-delay variation, but p | |||
| smooth (non-bursty) manner. In actual practice, EF traffic is oftentimes priori | laces a pre-condition that each microflow be relatively low data rate and sent i | |||
| tized over Default traffic. This contrasts with NQB traffic which is to be treat | n a smooth (non-bursty) manner. | |||
| ed with the same forwarding precedence as Default (and sometimes aggregated with | In actual practice, EF traffic is oftentimes prioritized over Default t | |||
| Default).</t> | raffic. | |||
| This contrasts with NQB traffic, which is to be treated with the same f | ||||
| orwarding precedence as Default (and sometimes aggregated with Default).</t> | ||||
| </section> | </section> | |||
| <section> | <section> | |||
| <name>Impact on Higher Layer Protocols</name> | <name>Impact on Higher Layer Protocols</name> | |||
| <t>The NQB PHB itself has no impact on higher layer protocols, because it | <t>The NQB PHB itself has no impact on higher layer protocols because it o | |||
| only isolates NQB traffic from non-NQB. However, traffic protection of the PHB c | nly isolates NQB traffic from QB traffic. | |||
| an have unintended side-effects on higher layer protocols. Traffic protection in | However, traffic protection of the PHB can have unintended side effects | |||
| troduces the possibility that microflows classified into the NQB queue could exp | on higher layer protocols. | |||
| erience out-of-order delivery or packet loss if their behavior is not consistent | Traffic protection introduces the possibility that microflows classifie | |||
| with the NQB sender requirements. Out-of-order delivery could be particularly l | d into the NQB queue could experience out-of-order delivery or packet loss if th | |||
| ikely if the traffic protection algorithm makes decisions on a packet-by-packet | eir behavior is not consistent with the NQB sender requirements. | |||
| basis. In this scenario, a microflow that is (mis)marked as NQB and that causes | Out-of-order delivery could be particularly likely if the traffic prote | |||
| a queue to form in this bottleneck link could see some of its packets forwarded | ction algorithm makes decisions on a packet-by-packet basis. | |||
| by the NQB queue, and some of them either discarded or redirected to the QB queu | In this scenario, a microflow that is (mis-)marked as NQB and that caus | |||
| e. In the case of redirection, depending on the queuing delay and scheduling wi | es a queue to form in this bottleneck link could see some of its packets forward | |||
| thin the network element, this could result in packets being delivered out of or | ed by the NQB queue and some of them either discarded or redirected to the QB qu | |||
| der. As a result, the use of the NQB DSCP by a higher layer protocol carries so | eue. | |||
| me risk that an increased amount of out-of-order delivery or packet loss will be | In the case of redirection, depending on the queuing delay and scheduli | |||
| experienced. This characteristic provides one disincentive for incorrectly sett | ng within the network element, this could result in packets being delivered out | |||
| ing the NQB DSCP on traffic that doesn't comply with the NQB sender requirements | of order. | |||
| .</t> | As a result, the use of the NQB DSCP by a higher layer protocol carries | |||
| some risk that an increased amount of out-of-order delivery or packet loss will | ||||
| be experienced. | ||||
| This characteristic provides one disincentive for incorrectly setting t | ||||
| he NQB DSCP on traffic that doesn't comply with the NQB sender requirements.</t> | ||||
| </section> | </section> | |||
| <section> | <section> | |||
| <name>Alternative Diffserv Code Points</name> | <name>Alternative Diffserv Codepoints</name> | |||
| <t>In networks where the DSCP 45 (decimal) is already in use for another | <t>In networks where the DSCP value 45 (decimal) is already in use for a | |||
| (e.g., a local-use) purpose, or where specialized PHBs are available that can m | nother (e.g., a local-use) purpose or where specialized PHBs are available that | |||
| eet specific application requirements (e.g., a guaranteed-delay path for voice t | can meet specific application requirements (e.g., a guaranteed-delay path for vo | |||
| raffic), it could be preferred to use another DSCP.</t> | ice traffic), use of another DSCP value could be preferred.</t> | |||
| <t>In end systems where the choice of using DSCP 45 (decimal) is not ava | <t>In end systems where the choice of using DSCP value 45 (decimal) is n | |||
| ilable to the application, the CS5 DSCP (40 decimal) could be used as a fallback | ot available to the application, the CS5 DSCP (40 decimal) could be used as a fa | |||
| . See <xref target="aggregation2"/> for rationale as to why this choice could b | llback. | |||
| e fruitful.</t> | See <xref target="aggregation2"/> for rationale as to why this choice | |||
| could be fruitful.</t> | ||||
| </section> | </section> | |||
| <section anchor="Acknowledgements" numbered="false"> | <section anchor="Acknowledgements" numbered="false"> | |||
| <name>Acknowledgements</name> | <name>Acknowledgements</name> | |||
| <t>Thanks to Gorry Fairhurst, Diego Lopez, Stuart Cheshire, Brian Carpente | <t>Thanks to <contact fullname="Gorry Fairhurst"/>, <contact | |||
| r, Bob Briscoe, Greg Skinner, Toke Hoeiland-Joergensen, Luca Muscariello, David | fullname="Diego Lopez"/>, <contact fullname="Stuart Cheshire"/>, | |||
| Black, Jerome Henry, Steven Blake, Jonathan Morton, Roland Bless, Kevin Smith, M | <contact fullname="Brian Carpenter"/>, <contact fullname="Bob | |||
| artin Dolly and Kyle Rose for their review comments. Thanks also to Gorry Fairh | Briscoe"/>, <contact fullname="Greg Skinner"/>, <contact fullname="Toke | |||
| urst and Ana Custura for their input on selection of appropriate DSCPs.</t> | Hoeiland-Joergensen"/>, <contact fullname="Luca Muscariello"/>, <contac | |||
| t | ||||
| fullname="David Black"/>, <contact fullname="Jerome Henry"/>, <contact | ||||
| fullname="Steven Blake"/>, <contact fullname="Jonathan Morton"/>, | ||||
| <contact fullname="Roland Bless"/>, <contact fullname="Kevin Smith"/>, | ||||
| <contact fullname="Martin Dolly"/>, and <contact fullname="Kyle Rose"/> | ||||
| for their review comments. | ||||
| Thanks also to <contact fullname="Gorry | ||||
| Fairhurst"/> and <contact fullname="Ana Custura"/> for their input on | ||||
| selection of appropriate DSCPs. | ||||
| Thanks to the following for IESG reviews and comments: <contact fullnam | ||||
| e="Mohamed Boucadair"/>, <contact fullname="Ketan Talaulikar"/>, <contact fullna | ||||
| me="Mike Bishop"/>, <contact fullname="Roman Danyliw"/>, and <contact fullname=" | ||||
| Éric Vyncke"/>.</t> | ||||
| </section> | </section> | |||
| <!-- Possibly a 'Contributors' section ... --> | ||||
| </back> | </back> | |||
| </rfc> | </rfc> | |||
| <!-- vim: ft=xml tabstop=2 expandtab: | ||||
| End of changes. 159 change blocks. | ||||
| 1280 lines changed or deleted | 1581 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||