Internet DRAFT - draft-hoang-mptcp-sub-rate-limit
draft-hoang-mptcp-sub-rate-limit
MPTCP Working Group V. Tran
Internet-Draft O. Bonaventure
Intended status: Informational Universite catholique de Louvain
Expires: January 9, 2020 July 08, 2019
Multipath TCP Subflow Rate Limit Option
draft-hoang-mptcp-sub-rate-limit-00
Abstract
This document defines a new MPTCP Option that enables hosts to
request their peers to limit the maximum transfer rate on a per-
subflow basis.
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 January 9, 2020.
Copyright Notice
Copyright (c) 2019 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.
Tran & Bonaventure Expires January 9, 2020 [Page 1]
Internet-Draft mptcp-sub-rate-limit-opt July 2019
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. The Multipath TCP Subflow Rate Limit (SRL) Option . . . . . . 3
3.1. Option Format . . . . . . . . . . . . . . . . . . . . . . 3
3.2. SRL Option and Local Policies . . . . . . . . . . . . . . 4
4. Implementation and Interoperability . . . . . . . . . . . . . 4
5. Security Considerations . . . . . . . . . . . . . . . . . . . 4
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 5
8.1. Normative References . . . . . . . . . . . . . . . . . . 5
8.2. Informative References . . . . . . . . . . . . . . . . . 5
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6
1. Introduction
Multipath TCP [RFC6824] [I-D.ietf-mptcp-rfc6824bis] is used in
various use cases [RFC8040]. In several situations, a Multipath TCP
host would like its peer to limit the sending rate over a specific
subflow.
It is common for mobile clients to have limited cellular data
subscription. Even if this is not the case, mobile network operators
may still silently throttle the networking capacity of the customers
who have used up a large amount of cellular data. A good LTE or 5G
connection running at full speed during less than a few hours could
consume the entire monthly budget cellular quota of many users. This
is even more important when the mobile clients are roaming abroad
where the monetary cost for cellular data can be very high. A common
scenario is that mobile users want to limit the monetary cost of
using cellular networks or to avoid running out of their mobile data
quota. Smartphones can easily rate limit their upstream bandwidth,
but unfortunately, most smartphone applications mainly receive data.
For these applications, a rate limit must happen on the server side.
This rate limit could be enforced by the application, e.g. by
selecting a specific video coding scheme, but applying it at the
transport layer would be more generic and could be done from the
system level automatically.
As discussed on the multipathtcp IETF mailing list
[paasch_mptcpwg_2019], this rate-control mechanism can also be used
when a client wants to inform a server to close a subflow gracefully
by requesting a zero transfer rate. Though the client may send a
TCP-RST on this subflow instead, in-flight data would be lost and
must be reinjected over other subflows. Another solution is to send
an MP_PRIO option to the sender to put the cellular subflow into
Tran & Bonaventure Expires January 9, 2020 [Page 2]
Internet-Draft mptcp-sub-rate-limit-opt July 2019
backup mode, but this request could be overridden by the sender's
local policy.
2. Terminology
In this document, the key words "MUST", "MUST NOT", "REQUIRED",
"SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
and "OPTIONAL" are to be interpreted as described in BCP 14, RFC 2119
[RFC2119].
3. The Multipath TCP Subflow Rate Limit (SRL) Option
This document proposes a Subflow Rate Limit option that indicates a
maximum receive rate for the subflow it is sent. Like other MPTCP
options, this option is not sent reliably. Hosts SHOULD resend is
several times, but not more frequently than once per second.
3.1. Option Format
The format of the SRL option is depicted in Fig. Figure 1:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+-------+-------+---------------+
| Kind | Length = 5 |Subtype| (rsv) | Requested Rate|
+---------------+---------------+-------+-------+---------------+
| Requested Rate |
+-----------------------------------------------+
Figure 1: MPTCP Subflow Rate Limit Option Format
All reserved bits MUST be set to zero.
In the SRL option, the Requested Rate (32 bits) is specified in IEEE
754 binary32 format (single-precision binary floating-point format).
The same format is used in [RFC3630] to specify the maximum bandwidth
of a link. This format is as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|S| Exponent | Fraction |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: IEEE binary32 format
Tran & Bonaventure Expires January 9, 2020 [Page 3]
Internet-Draft mptcp-sub-rate-limit-opt July 2019
o Sign bit (1 bit) MUST be set to zero.
o Exponent (8 bits) is the exponent base 2 in "excess 127" notation.
o Fraction (23 bits) is the mantissa - 1, with an implied binary
point in front of it.
Thus, the above represents the value:
(-1)**(S) * 2**(Exponent-127) * (1 + Fraction)
The unit of this value is Kilobits per second (Kbps).
3.2. SRL Option and Local Policies
Note that the SRL option is an indicative value. Upon reception of
this option, the receiver SHOULD set the maximum rate on the subflow
over which the option was received.
Like all Multipath TCP options, the SRL Option is exchanged without
any protection from TCP's reliability mechanisms. Therefore,
implementations MUST NOT assume that it is transferred reliably.
Implementations that use the SRL option can transmit the SRL option
at any time. Since the utilisation of this option is not negotiated
during the connection handshake, a host MUST NOT send more than three
SRL options on a connection where it has not received any SRL option.
4. Implementation and Interoperability
Implementations MAY use various mechanisms to implement the rate
control policy, for example using TCP Pacing or clamping the subflow
congestion window.
5. Security Considerations
Since the SRL option is neither encrypted nor authenticated, on-path
attackers and middleboxes could remove, add or modify the SRL option
on observed Multipath TCP connections. However, manipulating this
option doing not open new attacks compared to the ones documented in
[RFC6181] [RFC7430].
For example, an on-path middle man could insert an option to throttle
the rate on a subflow to nearly zero, effectively stalling the
subflow. However, if an attacker has that capability, it could
instead drop all packets or inject the TCP-RST/MP-FASTCLOSE.
Tran & Bonaventure Expires January 9, 2020 [Page 4]
Internet-Draft mptcp-sub-rate-limit-opt July 2019
On the other hand, on-path middleboxes may increase the rate-limit
value in the exchanged option to a very high value. This effectively
has the same effect as filtering out the option.
6. IANA Considerations
IANA is requested to assign an MPTCP option subtype for the SRL
option from the "MPTCP Option Subtypes" available at
https://www.iana.org/assignments/tcp-parameters/tcp-parameters.xhtml
7. Acknowledgements
This work was supported by the ARC-SDN project and the Walinnov MQUIC
project, No. 1810018.
8. References
8.1. Normative References
[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>.
[RFC6181] Bagnulo, M., "Threat Analysis for TCP Extensions for
Multipath Operation with Multiple Addresses", RFC 6181,
DOI 10.17487/RFC6181, March 2011,
<https://www.rfc-editor.org/info/rfc6181>.
[RFC6824] Ford, A., Raiciu, C., Handley, M., and O. Bonaventure,
"TCP Extensions for Multipath Operation with Multiple
Addresses", RFC 6824, DOI 10.17487/RFC6824, January 2013,
<https://www.rfc-editor.org/info/rfc6824>.
[RFC7430] Bagnulo, M., Paasch, C., Gont, F., Bonaventure, O., and C.
Raiciu, "Analysis of Residual Threats and Possible Fixes
for Multipath TCP (MPTCP)", RFC 7430,
DOI 10.17487/RFC7430, July 2015,
<https://www.rfc-editor.org/info/rfc7430>.
8.2. Informative References
[I-D.ietf-mptcp-rfc6824bis]
Ford, A., Raiciu, C., Handley, M., Bonaventure, O., and C.
Paasch, "TCP Extensions for Multipath Operation with
Multiple Addresses", draft-ietf-mptcp-rfc6824bis-18 (work
in progress), June 2019.
Tran & Bonaventure Expires January 9, 2020 [Page 5]
Internet-Draft mptcp-sub-rate-limit-opt July 2019
[paasch_mptcpwg_2019]
Paasch, C., "Regarding rate control at a subflow level",
May 2019,
<https://mailarchive.ietf.org/arch/msg/multipathtcp/
fyhIpWnXCr0sImRECGh8Lx1zWdc>.
[RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering
(TE) Extensions to OSPF Version 2", RFC 3630,
DOI 10.17487/RFC3630, September 2003,
<https://www.rfc-editor.org/info/rfc3630>.
[RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF
Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017,
<https://www.rfc-editor.org/info/rfc8040>.
Authors' Addresses
Viet-Hoang Tran
Universite catholique de Louvain
Email: hoang.tran@uclouvain.be
Olivier Bonaventure
Universite catholique de Louvain
Pl. Ste Barbe, 2
Louvain-la-Neuve 1348
Belgium
Email: olivier.bonaventure@uclouvain.be
Tran & Bonaventure Expires January 9, 2020 [Page 6]