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]