[Docs] [txt|pdf|xml|html] [Tracker] [WG] [Email] [Diff1] [Diff2] [Nits]
Versions: (draft-white-tsvwg-nqb) 00 01 02 03
Transport Area Working Group G. White
Internet-Draft CableLabs
Intended status: Standards Track T. Fossati
Expires: September 10, 2020 ARM
March 9, 2020
A Non-Queue-Building Per-Hop Behavior (NQB PHB) for Differentiated
Services
draft-ietf-tsvwg-nqb-01
Abstract
This document specifies properties and characteristics of a Non-
Queue-Building Per-Hop Behavior (NQB PHB). The purpose of this NQB
PHB is to provide a separate queue that enables low latency and, when
possible, low loss for application-limited traffic flows that would
ordinarily share a queue with capacity-seeking traffic. This PHB is
implemented without prioritization and without rate policing, making
it suitable for environments where the use of either these features
may be restricted. The NQB PHB has been developed primarily for use
by access network segments, where queuing delays and queuing loss
caused by Queue-Building protocols are manifested, but its use is not
limited to such segments. In particular, applications to cable
broadband links and mobile network radio and core segments are
discussed. This document defines a standard Differentiated Services
Code Point (DSCP) to identify Non-Queue-Building flows.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on September 10, 2020.
White & Fossati Expires September 10, 2020 [Page 1]
Internet-Draft Non-Queue-Building PHB March 2020
Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3
3. Overview: Non-Queue-Building Flows . . . . . . . . . . . . . 3
4. DSCP Marking of NQB Traffic . . . . . . . . . . . . . . . . . 4
5. Non-Queue-Building PHB Requirements . . . . . . . . . . . . . 5
6. Relationship to L4S . . . . . . . . . . . . . . . . . . . . . 6
7. Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 6
7.1. DOCSIS Access Networks . . . . . . . . . . . . . . . . . 6
7.2. Mobile Networks . . . . . . . . . . . . . . . . . . . . . 6
7.3. WiFi Networks . . . . . . . . . . . . . . . . . . . . . . 7
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8
10. Security Considerations . . . . . . . . . . . . . . . . . . . 8
11. Informative References . . . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
1. Introduction
This document defines a Differentiated Services (DS) per-hop behavior
(PHB) called "Non-Queue-Building Per-Hop Behavior" (NQB PHB), which
is intended to enable networks to provide low latency and low loss
for traffic flows that are relatively low data rate and that do not
themselves materially contribute to queueing delay and loss. Such
Non-Queue-Building flows (for example: interactive voice and video,
gaming, machine to machine applications) are application limited
flows that are distinguished from traffic flows managed by an end-to-
end congestion control algorithm.
The vast majority of packets that are carried by broadband access
networks are, in fact, managed by an end-to-end congestion control
algorithm, such as Reno, Cubic or BBR. These congestion control
White & Fossati Expires September 10, 2020 [Page 2]
Internet-Draft Non-Queue-Building PHB March 2020
algorithms attempt to seek the available capacity of the end-to-end
path (which can frequently be the access network link capacity), and
in doing so generally overshoot the available capacity, causing a
queue to build-up at the bottleneck link. This queue build up
results in queuing delay (variable latency) and possibly packet loss
that affects all of the applications that are sharing the bottleneck
link.
In contrast to traditional congestion-controlled applications, there
are a variety of relatively low data rate applications that do not
materially contribute to queueing delay and loss, but are nonetheless
subjected to it by sharing the same bottleneck link in the access
network. Many of these applications may be sensitive to latency or
latency variation, as well as packet loss, and thus produce a poor
quality of experience in such conditions.
Active Queue Management (AQM) mechanisms (such as PIE [RFC8033],
DOCSIS-PIE [RFC8034], or CoDel [RFC8289]) can improve the quality of
experience for latency sensitive applications, but there are
practical limits to the amount of improvement that can be achieved
without impacting the throughput of capacity-seeking applications,
particularly when only a few of such flows are present.
The NQB PHB supports differentiating between these two classes of
traffic in bottleneck links and queuing them separately in order that
both classes can deliver satisfactory quality of experience for their
applications.
2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
3. Overview: Non-Queue-Building Flows
There are many applications that send traffic at relatively low data
rates and/or in a fairly smooth and consistent manner such that they
are highly unlikely to exceed the available capacity of the network
path between source and sink. These applications do not cause queues
to form in network buffers, but nonetheless can be subjected to
packet delay and delay variation as a result of sharing a network
buffer with applications that do cause queues. Many of these
applications are negatively affected by excessive packet delay and
delay variation. Such applications are ideal candidates to be queued
White & Fossati Expires September 10, 2020 [Page 3]
Internet-Draft Non-Queue-Building PHB March 2020
separately from the capacity-seeking applications that are the cause
of queue buildup, latency and loss.
These Non-queue-building (NQB) flows are typically UDP flows that
don't seek the capacity of the link (examples: online games, voice
chat, DNS lookups, real-time IoT analytics data). Here the data rate
is limited by the Application itself rather than by network capacity
- in many cases these applications only send a few packets per RTT.
In contrast, Queue-building (QB) flows include traffic which uses the
Traditional TCP or QUIC, with BBR or other TCP congestion
controllers.
4. DSCP Marking of NQB Traffic
Applications that align with the above description of NQB behavior
SHOULD identify themselves to the network using a DiffServ Code Point
(DSCP) so that their packets can be queued separately from QB flows.
There are many application flows that fall very neatly into one or
the other of these categories, but there are also application flows
that may be in a gray area in between (e.g. they are NQB on higher-
speed links, but QB on lower-speed links).
If there is uncertainty as to whether an application's traffic aligns
with the description of NQB behavior in the preceding section, the
application SHOULD NOT mark its traffic with the NQB DSCP. In such a
case, the application SHOULD instead implement a congestion control
mechanism, for example as described in [RFC8085].
This document recommends a DSCP of 0x2A to identify packets of NQB
flows. (editor's note: this value is subject to change)
It is worthwhile to note that the NQB designation and marking is
intended to convey verifiable traffic behavior, not needs or wants.
Also, it is important that incentives are aligned correctly, i.e.
that there is a benefit to the application in marking its packets
correctly, and no benefit to an application in intentionally
mismarking its traffic. Thus, a useful property of nodes that
support separate queues for NQB and QB flows would be that for NQB
flows, the NQB queue provides better performance than the QB queue;
and for QB flows, the QB queue provides better performance than the
NQB queue. By adhering to these principles, there is no incentive
for senders to mismark their traffic as NQB, and further, any
mismarking can be identified by the network.
In contrast to the existing standard DSCPs, which are typically only
meaningful within a DiffServ Domain (e.g. an AS or an enterprise
network), this DSCP is expected to be used end-to-end across the
White & Fossati Expires September 10, 2020 [Page 4]
Internet-Draft Non-Queue-Building PHB March 2020
Internet. Some network operators typically bleach (zero out) the
DiffServ field on ingress into their network [Custura], and in some
cases apply their own DSCP for internal usage. Networks that support
the NQB PHB SHOULD preserve the NQB DSCP when forwarding via an
interconnect from or to another network.
5. Non-Queue-Building PHB Requirements
A node supporting the NQB PHB makes no guarantees on latency or data
rate for NQB marked flows, but instead aims to provide a bound on
queuing delay for as many such marked flows as it can, and shed load
when needed.
A node supporting the NQB PHB MUST provide a queue for non-queue-
building traffic separate from the queue used for queue-building
traffic.
NQB traffic SHOULD NOT be rate limited or rate policed separately
from queue-building traffic of equivalent importance.
The NQB queue SHOULD be given equal priority compared to queue-
building traffic of equivalent importance. The node SHOULD provide a
scheduler that allows QB and NQB traffic of equivalent importance to
share the link in a fair manner, e.g. a deficit round-robin scheduler
with equal weights.
A node supporting the NQB PHB SHOULD treat traffic marked as Default
(DSCP=0x00) as QB traffic having equivalent importance to the NQB
marked traffic.
The NQB queue SHOULD have a buffer size that is significantly smaller
than the buffer provided for QB traffic.
It is possible that due to an implementation error or
misconfiguration, a QB flow would end up getting mismarked as NQB, or
vice versa. In the case of an NQB flow that isn't marked as NQB and
ends up in the QB queue, it would only impact its own quality of
service, and so it seems to be of lesser concern. However, a QB flow
that is mismarked as NQB would cause queuing delays and/or loss for
all of the other flows that are sharing the NQB queue.
To prevent this situation from harming the performance of the real
NQB flows, network elements that support differentiating NQB traffic
SHOULD (editor's note: SHOULD vs MUST is TBD) support a "traffic
protection" function that can identify QB flows that are mismarked as
NQB, and reclassify those flows/packets to the QB queue. Such a
function SHOULD be implemented in an objective and verifiable manner,
basing its decisions upon the behavior of the flow rather than on
White & Fossati Expires September 10, 2020 [Page 5]
Internet-Draft Non-Queue-Building PHB March 2020
application-layer constructs. One example algorithm can be found in
[I-D.briscoe-docsis-q-protection].
6. Relationship to L4S
Traffic flows marked with the NQB DSCP as described in this draft are
intended to be compatible with [I-D.ietf-tsvwg-l4s-arch], with the
result being that NQB traffic and L4S traffic can share the low-
latency queue in an L4S dual-queue node
[I-D.ietf-tsvwg-aqm-dualq-coupled].
7. Use Cases
7.1. DOCSIS Access Networks
Residential cable broadband Internet services are commonly configured
with a single bottleneck link (the access network link) upon which
the service definition is applied. The service definition, typically
an upstream/downstream data rate tuple, is implemented as a
configured pair of rate shapers that are applied to the user's
traffic. In such networks, the quality of service that each
application receives, and as a result, the quality of experience that
it generates for the user is influenced by the characteristics of the
access network link.
To support the NQB PHB, cable broadband services MUST be configured
to provide a separate queue for NQB marked traffic. The NQB queue
MUST be configured to share the service's rate shaping bandwidth with
the queue for QB traffic.
7.2. Mobile Networks
Historically, mobile networks have been configured to bundle all
flows to and from the Internet into a single "default" EPS bearer
whose buffering characteristics are not compatible with low-latency
traffic. The established behaviour is rooted partly in the desire to
prioritise operators' voice services over competing over-the-top
services and partly in the fact that the addition of bearers was
prohibitive due to expense. Of late, said consideration seems to
have lost momentum (e.g., with the rise in Multi-RAB (Radio Access
Bearer) devices) and the incentives might now be aligned towards
allowing a more suitable treatment of Internet real-time flows.
To support the NQB PHB, the mobile network SHOULD be configured to
give UEs a dedicated, low-latency, non-GBR, EPS bearer, e.g. one with
QCI 7, in addition to the default EPS bearer; or a Data Radio Bearer
with 5QI 7 in a 5G system (see Table 5.7.4-1: Standardized 5QI to QoS
characteristics mapping in [SA-5G]).
White & Fossati Expires September 10, 2020 [Page 6]
Internet-Draft Non-Queue-Building PHB March 2020
A packet carrying the NQB DSCP SHOULD be routed through the dedicated
low-latency EPS bearer. A packet that has no associated NQB marking
SHOULD be routed through the default EPS bearer.
7.3. WiFi Networks
WiFi networking equipment compliant with 802.11e generally supports
either four or eight transmit queues and four sets of associated
Enhanced Multimedia Distributed Control Access (EDCA) parameters
(corresponding to the four WiFi Multimedia (WMM) Access Categories)
that are used to enable differentiated media access characteristics.
Implementations typically utilize the IP DSCP field to select a
transmit queue, but should be considered as Non-Differentiated
Services-Compliant Nodes as described in Section 4 of [RFC2475]
because this transmit queue selection is a local implementation
characteristic that is not part of a consistently operated DiffServ
domain or region. As a result this document discusses
interoperability with WiFi networks, as opposed to PHB compliance.
As discussed in [RFC8325], most existing WiFi implementations use a
default DSCP to User Priority mapping that utilizes the most
significant three bits of the DiffServ Field to select "User
Priority" which is then mapped to the four WMM Access Categories. In
order to increase the likelihood that NQB traffic is provided a
separate queue from QB traffic in existing WiFi equipment, the 0x2A
codepoint is preferred for NQB. This would map NQB to UP_5 which is
in the "Video" Access Category. Similarly, systems that utilize
[RFC8325], SHOULD map the NQB codepoint to UP_5 in the "Video" Access
Category.
While the DSCP to User Priority mapping can enable WiFi systems to
support the NQB PHB requirement for segregated queuing, many
currently deployed WiFi systems may not be capable of supporting the
remaining NQB PHB requirements in Section 5. This is discussed
further below.
Existing WiFi devices are unlikely to support a traffic protection
algorithm, so traffic mismarked as NQB is not likely to be detected
and remedied by such devices.
Furthermore, in their default configuration, existing WiFi devices
utilize EDCA parameters that result in statistical prioritization of
the "Video" Access Category above the "Best Effort" Access Category.
If left unchanged, this would violate the NQB PHB requirement for
equal prioritization, and could erode the principle of alignment of
incentives. In order to preserve the incentives principle, WiFi
systems SHOULD configure the EDCA parameters for the Video Access
Category to match those of the Best Effort Access Category.
White & Fossati Expires September 10, 2020 [Page 7]
Internet-Draft Non-Queue-Building PHB March 2020
In cases where a network operator is delivering traffic into an
unmanaged WiFi network outside of their control (e.g. a residential
ISP delivering traffic to a customer's home network), the network
operator should presume that the existing WiFi equipment does not
support the safeguards that are provided by the NQB PHB requirements,
and thus should take precautions to prevent issues. In these
situations, the operator SHOULD deploy a policing function on NQB
marked traffic that minimizes the potential for starvation of traffic
marked Default, for example by limiting the rate of such traffic to a
set fraction of the customer's service rate.
As an additional safeguard, and to prevent the inadvertent
introduction of problematic traffic into unmanaged WiFi networks,
network equipment that is intended to deliver traffic into unmanaged
WiFi networks (e.g. an access network gateway for a residential ISP)
MUST by default remap the NQB DSCP to Default. Such equipment MUST
support the ability to configure the remapping, so that (when
appropriate safeguards are in place) traffic can be delivered as NQB-
marked.
8. Acknowledgements
Thanks to Bob Briscoe, Greg Skinner, Toke Hoeiland-Joergensen, Luca
Muscariello, David Black, Sebastian Moeller, Ruediger Geib, Jerome
Henry, Steven Blake, Jonathan Morton, Roland Bless, Kevin Smith,
Martin Dolly, and Kyle Rose for their review comments.
9. IANA Considerations
This draft proposes the registration of a standardized DSCP = 0x2A to
denote Non-Queue-Building behavior.
10. Security Considerations
There is no incentive for an application to mismark its packets as
NQB (or vice versa). If a queue-building flow were to mark its
packets as NQB, it could experience excessive packet loss (in the
case that traffic protection is not supported by a node) or it could
receive no benefit (in the case that traffic protection is
supported). If a non-queue-building flow were to fail to mark its
packets as NQB, it could suffer the latency and loss typical of
sharing a queue with capacity seeking traffic.
The NQB signal is not integrity protected and could be flipped by an
on-path attacker. This might negatively affect the QoS of the
tampered flow.
White & Fossati Expires September 10, 2020 [Page 8]
Internet-Draft Non-Queue-Building PHB March 2020
11. Informative References
[Custura] Custura, A., Venne, A., and G. Fairhurst, "Exploring DSCP
modification pathologies in mobile edge networks", TMA ,
2017.
[I-D.briscoe-docsis-q-protection]
Briscoe, B. and G. White, "Queue Protection to Preserve
Low Latency", draft-briscoe-docsis-q-protection-00 (work
in progress), July 2019.
[I-D.ietf-tsvwg-aqm-dualq-coupled]
Schepper, K., Briscoe, B., and G. White, "DualQ Coupled
AQMs for Low Latency, Low Loss and Scalable Throughput
(L4S)", draft-ietf-tsvwg-aqm-dualq-coupled-10 (work in
progress), July 2019.
[I-D.ietf-tsvwg-l4s-arch]
Briscoe, B., Schepper, K., Bagnulo, M., and G. White, "Low
Latency, Low Loss, Scalable Throughput (L4S) Internet
Service: Architecture", draft-ietf-tsvwg-l4s-arch-05 (work
in progress), February 2020.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z.,
and W. Weiss, "An Architecture for Differentiated
Services", RFC 2475, DOI 10.17487/RFC2475, December 1998,
<https://www.rfc-editor.org/info/rfc2475>.
[RFC8033] Pan, R., Natarajan, P., Baker, F., and G. White,
"Proportional Integral Controller Enhanced (PIE): A
Lightweight Control Scheme to Address the Bufferbloat
Problem", RFC 8033, DOI 10.17487/RFC8033, February 2017,
<https://www.rfc-editor.org/info/rfc8033>.
[RFC8034] White, G. and R. Pan, "Active Queue Management (AQM) Based
on Proportional Integral Controller Enhanced PIE) for
Data-Over-Cable Service Interface Specifications (DOCSIS)
Cable Modems", RFC 8034, DOI 10.17487/RFC8034, February
2017, <https://www.rfc-editor.org/info/rfc8034>.
[RFC8085] Eggert, L., Fairhurst, G., and G. Shepherd, "UDP Usage
Guidelines", BCP 145, RFC 8085, DOI 10.17487/RFC8085,
March 2017, <https://www.rfc-editor.org/info/rfc8085>.
White & Fossati Expires September 10, 2020 [Page 9]
Internet-Draft Non-Queue-Building PHB March 2020
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8289] Nichols, K., Jacobson, V., McGregor, A., Ed., and J.
Iyengar, Ed., "Controlled Delay Active Queue Management",
RFC 8289, DOI 10.17487/RFC8289, January 2018,
<https://www.rfc-editor.org/info/rfc8289>.
[RFC8325] Szigeti, T., Henry, J., and F. Baker, "Mapping Diffserv to
IEEE 802.11", RFC 8325, DOI 10.17487/RFC8325, February
2018, <https://www.rfc-editor.org/info/rfc8325>.
[SA-5G] 3GPP, "System Architecture for 5G", TS 23.501, 2019.
Authors' Addresses
Greg White
CableLabs
Email: g.white@cablelabs.com
Thomas Fossati
ARM
Email: Thomas.Fossati@arm.com
White & Fossati Expires September 10, 2020 [Page 10]
Html markup produced by rfcmarkup 1.129d, available from
https://tools.ietf.org/tools/rfcmarkup/