Network Working Group N. Khademi
Internet-Draft M. Welzl
Intended status: Experimental University of Oslo
Expires: December 2, 2016 G. Armitage
Swinburne University of
Technology
G. Fairhurst
University of Aberdeen
May 31, 2016
TCP Alternative Backoff with ECN (ABE)
draft-khademi-tcpm-alternativebackoff-ecn-00
Abstract
This memo updates the TCP sender-side reaction to a congestion
notification received via Explicit Congestion Notification (ECN).
The updated method reduces FlightSize in Congestion Avoidance by a
smaller amount than the TCP reaction to loss. The intention is to
achieve good throughput when the queue at the bottleneck is smaller
than the bandwidth-delay-product of the connection. This is more
likely when an Active Queue Management (AQM) mechanism has used ECN
to CE-mark a packet, than when a packet was lost. Future versions of
this document will also describe a corresponding method for SCTP.
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 http://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 December 2, 2016.
Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved.
Khademi, et al. Expires December 2, 2016 [Page 1]
Internet-Draft ABE May 2016
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://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. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Discussion: Choice of ABE Multiplier . . . . . . . . . . . . . 3
4. Specification . . . . . . . . . . . . . . . . . . . . . . . . . 4
5. Status of the Update . . . . . . . . . . . . . . . . . . . . . 5
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 5
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5
8. Security Considerations . . . . . . . . . . . . . . . . . . . . 5
9. Revision Information . . . . . . . . . . . . . . . . . . . . . 6
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6
10.1. Normative References . . . . . . . . . . . . . . . . . . . 6
10.2. Informative References . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7
Khademi, et al. Expires December 2, 2016 [Page 2]
Internet-Draft ABE May 2016
1. Definitions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
2. Introduction
Complementing [I-D.AQM-ECN-benefits], [I-D.ECN-response] encourages
wider ECN deployment by relaxing a rule that prohibited certain
experiments. This rule, from [RFC3168], required the congestion
control response to an ECN CE-mark to be similar to the response to
packet loss. Without this rule, it is possible to define a new
sender reaction to being notified of a CE-mark that differs from the
reaction to the detection of loss. [I-D.ECN-response] provides the
rationale for such a different behaviour; in brief, a CE-mark is
likely to indicate a shorter queue than packet loss, and the standard
TCP backoff behaviour defined in [RFC5681] entails reduced link
utilisation in situations with short queues and low statistical
multiplexing. This memo proposes a concrete sender-side-only
congestion control response that remedies this problem.
Much of the background to this proposal can be found in [ABE2015].
Using a mix of experiments, theory and simulations with standard
NewReno and CUBIC, [ABE2015] recommends enabling ECN and letting
individual TCP senders use a larger multiplicative decrease factor as
a reaction to the receiver reporting ECN CE-marks from AQM-enabled
bottlenecks. Such a change is noted to result in "...significant
performance gains in lightly-multiplexed scenarios, without losing
the delay-reduction benefits of deploying CoDel or PIE" [I-D.CoDel]
[I-D.PIE]. This is achieved when reacting to ECN-Echo in Congestion
Avoidance by multiplying cwnd and sstthresh with a value in the range
[0.7..0.85].
3. Discussion: Choice of ABE Multiplier
Alternative Backoff with ECN (ABE) decouples a TCP sender's reaction
to loss and ECN CE-marks in Congestion Avoidance. The description
respectively uses beta_{loss} and beta_{ecn} to refer to the
multiplicative decrease factors applied in response to packet loss,
and also in response to a receiver indicating that an ECN CE-mark was
received on an ECN-enabled TCP connection (based on the terms used in
[ABE2015]). For non-ECN-enabled TCP connections, no ECN CE-marks are
received and only beta_{loss} applies.
In other words, in response to detected loss:
Khademi, et al. Expires December 2, 2016 [Page 3]
Internet-Draft ABE May 2016
FlightSize_(n+1) = FlightSize_n * beta_{loss}
and in response to an indication of a received ECN CE-mark:
FlightSize_(n+1) = FlightSize_n * beta_{ecn}
where, as in [RFC5681], FlightSize is the amount of outstanding data
in the network, upper-bounded by the sender's congestion window
(cwnd) and the receiver's advertised window (rwnd). The higher the
values of beta_{loss} and beta_{ecn}, the less aggressive the
response of any individual backoff event.
The appropriate choice for beta_{loss} and beta_{ecn} values is a
balancing act between path utilisation and draining the bottleneck
queue. More aggressive backoff (smaller beta_*) risks underutilising
the path, while less aggressive backoff (larger beta_*) can result in
slower draining of the bottleneck queue.
The Internet has already been running with at least two different
beta_{loss} values for several years: the value in [RFC5681] is 0.5,
and Linux CUBIC uses 0.7. ABE proposes no change to beta_{loss} used
by any current TCP implementations.
beta_{ecn} depends on how the response of a TCP connection to shallow
AQM marking thresholds is optimised. beta_{loss} reflects the
preferred response of each TCP algorithm when faced with exhaustion
of buffers (of unknown depth) signalled by packet loss.
Consequently, for any given TCP algorithm the choice of beta_{ecn} is
likely to be algorithm-specific, rather than a constant multiple of
the algorithm's existing beta_{loss}.
A range of experiments (section IV, [ABE2015]) with NewReno and CUBIC
over CoDel and PIE in lightly-multiplexed scenarios have explored
this choice of parameter. These experiments indicate that CUBIC
connections benefit from beta_{ecn} of 0.85 (cf. beta_{loss} = 0.7),
and NewReno connections see improvements with beta_{ecn} in the range
0.7 to 0.85 (cf. beta_{loss} = 0.5).
4. Specification
This document RECOMMENDS that experimental deployments multiply the
FlightSize by 0.8 and reduce the slow start threshold 'ssthresh' in
Congestion Avoidance in response to reception of a TCP segment that
sets the ECN-Echo flag."
Khademi, et al. Expires December 2, 2016 [Page 4]
Internet-Draft ABE May 2016
5. Status of the Update
This update is a sender-side only change. Like other changes to
congestion-control algorithms it does not require any change to the
TCP receiver or to network devices (except to enable an ECN-marking
algorithm [RFC3168] [RFC7567]). If the method is only deployed by
some TCP senders, and not by others, the senders that use this method
can gain advantage, possibly at the expense of other flows that do
not use this updated method. This advantage applies only to ECN-
marked packets and not to loss indications. Hence, the new method
can not lead to congestion collapse.
The present specification has been assigned an Experimental status,
to provide Internet deployment experience before being proposed as a
Standards-Track update.
6. Acknowledgements
Authors N. Khademi, M. Welzl and G. Fairhurst were part-funded by the
European Community under its Seventh Framework Programme through the
Reducing Internet Transport Latency (RITE) project (ICT-317700). The
views expressed are solely those of the authors.
The authors would like to thank the following people for their
contributions to [ABE2015]: Chamil Kulatunga, David Ros, Stein
Gjessing, Sebastian Zander. Thanks to (in alphabetical order) Bob
Briscoe, Markku Kojo, John Leslie, Dave Taht and the TCPM WG for
providing valuable feedback on this document.
The authors would like to thank feedback on the congestion control
behaviour specified in this update received from the IRTF Internet
Congestion Control Research Group (ICCRG).
7. IANA Considerations
XX RFC ED - PLEASE REMOVE THIS SECTION XXX
This memo includes no request to IANA.
8. Security Considerations
The described method is a sender-side only transport change, and does
not change the protocol messages exchanged. The security
considerations of [RFC3168] therefore still apply.
Khademi, et al. Expires December 2, 2016 [Page 5]
Internet-Draft ABE May 2016
This document describes a change to TCP congestion control with ECN
that will typically lead to a change in the capacity achieved when
flows share a network bottleneck. Similar unfairness in the way that
capacity is shared is also exhibited by other congestion control
mechanisms that have been in use in the Internet for many years
(e.g., CUBIC [I-D.CUBIC]). Unfairness may also be a result of other
factors, including the round trip time experienced by a flow. This
advantage applies only to ECN-marked packets and not to loss
indications, and will therefore not lead to congestion collapse.
9. Revision Information
XX RFC ED - PLEASE REMOVE THIS SECTION XXX
-00. draft-khademi-tsvwg-ecn-response-00 and
draft-khademi-tcpm-alternativebackoff-ecn-00 replace
draft-khademi-alternativebackoff-ecn-03, following discussion in the
TSVWG and TCPM working groups.
10. References
10.1. Normative References
[I-D.ECN-response]
Khademi, N., Welzl, M., Armitage, G., and G. Fairhurst,
"Updating the ECN Congestion Control Response", Internet-
draft, IETF
work-in-progress draft-khademi-tsvwg-ecn-response-00,
May 2016.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/
RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC3168] Ramakrishnan, K., Floyd, S., and D. Black, "The Addition
of Explicit Congestion Notification (ECN) to IP",
RFC 3168, DOI 10.17487/RFC3168, September 2001,
<http://www.rfc-editor.org/info/rfc3168>.
[RFC5681] Allman, M., Paxson, V., and E. Blanton, "TCP Congestion
Control", RFC 5681, DOI 10.17487/RFC5681, September 2009,
<http://www.rfc-editor.org/info/rfc5681>.
[RFC7567] Baker, F., Ed. and G. Fairhurst, Ed., "IETF
Recommendations Regarding Active Queue Management",
Khademi, et al. Expires December 2, 2016 [Page 6]
Internet-Draft ABE May 2016
BCP 197, RFC 7567, DOI 10.17487/RFC7567, July 2015,
<http://www.rfc-editor.org/info/rfc7567>.
10.2. Informative References
[ABE2015] Khademi, N., Welzl, M., Armitage, G., Kulatunga, C., Ros,
D., Fairhurst, G., Gjessing, S., and S. Zander,
"Alternative Backoff: Achieving Low Latency and High
Throughput with ECN and AQM", CAIA Technical Report CAIA-
TR-150710A, Swinburne University of Technology, July 2015,
<http://caia.swin.edu.au/reports/150710A/
CAIA-TR-150710A.pdf>.
[I-D.AQM-ECN-benefits]
Fairhurst, G. and M. Welzl, "The Benefits of using
Explicit Congestion Notification (ECN)", Internet-draft,
IETF work-in-progress draft-ietf-aqm-ecn-benefits-08,
November 2015.
[I-D.CUBIC]
Rhee, I., Xu, L., Ha, S., Zimmermann, A., Eggert, L., and
R. Scheffenegger, "CUBIC for Fast Long-Distance Networks",
Internet-draft, IETF
work-in-progress draft-ietf-tcpm-cubic-01, January 2016.
[I-D.CoDel]
Nichols, K., Jacobson, V., McGregor, V., and J. Iyengar,
"The Benefits of using Explicit Congestion Notification
(ECN)", Internet-draft, IETF
work-in-progress draft-ietf-aqm-codel-02, December 2015.
[I-D.PIE] Pan, R., Natarajan, P., Baker, F., White, G., VerSteeg,
B., Prabhu, M., Piglione, C., and V. Subramanian, "PIE: A
Lightweight Control Scheme To Address the Bufferbloat
Problem", Internet-draft, IETF
work-in-progress draft-ietf-aqm-pie-03, November 2015.
Authors' Addresses
Naeem Khademi
University of Oslo
PO Box 1080 Blindern
Oslo, N-0316
Norway
Email: naeemk@ifi.uio.no
Khademi, et al. Expires December 2, 2016 [Page 7]
Internet-Draft ABE May 2016
Michael Welzl
University of Oslo
PO Box 1080 Blindern
Oslo, N-0316
Norway
Email: michawe@ifi.uio.no
Grenville Armitage
Centre for Advanced Internet Architectures
Swinburne University of Technology
PO Box 218
John Street, Hawthorn
Victoria, 3122
Australia
Email: garmitage@swin.edu.au
Godred Fairhurst
University of Aberdeen
School of Engineering, Fraser Noble Building
Aberdeen, AB24 3UE
UK
Email: gorry@erg.abdn.ac.uk
Khademi, et al. Expires December 2, 2016 [Page 8]