MPTCP F. Song
Internet Draft H. Zhang
Intended status: Informational Beijing Jiaotong University
Expires: December 14, 2018 H. Chan
A. Wei
Huawei Technologies
June 16, 2018
One Way Latency Considerations for MPTCP
draft-song-mptcp-owl-04
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), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/1id-abstracts.html
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
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/.
This Internet-Draft will expire on December 14, 2018.
Copyright Notice
Copyright (c) 2018 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
(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
ection 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Simplified BSD License.
Song, et al. Expires June 16, 2018 [Page 1]
Internet-Draft OWL Considerations for MPTCP June 2018
Abstract
This document discusses the use of One Way Latency (OWL) for
enhancing multipath TCP (MPTCP). Several use cases of OWL, such as
retransmission policy and crucial data scheduling are analyzed. Two
kinds of OWL measurement approaches are also provided and compared.
More explorations related with OWL will be helpful to the
performance of MPTCP.
Table of Contents
1. Introduction ................................................ 2
2. Conventions and Terminology ................................. 3
3. Potential Usages of OWL in MPTCP ............................ 3
3.1. Crucial Data Scheduling ................................ 3
3.2. Congestion control ..................................... 5
3.3. Packet Retransmission .................................. 6
3.4. Bandwidth Estimation ................................... 7
3.5. Shared Bottleneck Detection ............................ 7
4. OWL Measurements in TCP ..................................... 7
5. Security Considerations ..................................... 8
6. IANA Considerations ......................................... 8
7. References .................................................. 8
7.1. Normative References ................................... 8
7.2. Informative References ................................. 8
1. Introduction
The terminal hosts and intermediate devices on the Internet are
basically equipped with more and more physical network interfaces.
The importance of interfaces that had been widely used for packet
forwarding at the end hosts had been confirmed [RFC6419].
Moreover, to aggregate more bandwidths, to decrease packet delay and
to provide better services, the increased capacity provided by the
multiple paths created by multiple interfaces is leveraged. Unlike
traditional TCP [RFC0793], many transport layer protocols, such as
MPTCP [RFC6182] [RFC6824] enable the end hosts to concurrently
transfer data on top of multiple paths to greatly increase the
overall throughput.
Congestion control and loss recovery mechanism commonly use round-
trip time (RTT) for data transmission. Yet the key issue of data
transmission is simply the delay of data transmission along the path
that does not include the return. The latency for uplink and downlink
between two peers may be very different. RTT can be easily influenced
Song, et al. Expires June 16, 2018 [Page 2]
Internet-Draft OWL Considerations for MPTCP June 2018
latency in the opposite direction along a path, which cannot
accurately reflect the delay of the data transmission along the path.
Therefore, it is recommended to use one-way delay (OWL) to describe
the exact time delay from sending data to receiving time data.
Fully taking advantage of One Way Latency (OWL) during the
transmission is explained in this document further improves the
performance of current practices of MPTCP. It may be asymmetric of
the OWL components in the forward and reverse directions of RTT so
that a better measure can be provided to the user such as for
congestion control even with the regular TCP. When there are multiple
paths to choose from, it will bring more benefits.
This document discusses the necessary considerations of OWL in MPTCP.
The structure of this document is as follows: Firstly, several use
cases of OWL in MPTCP is analyzed in this document. Secondly, two
kinds of OWL measurements are listed and compared. At the end the
document gives the considerations related with security and IANA.
Applications programmers whose products may benefit significantly
from MPTCP will become potential target audiences for this document.
The document also provide the necessary information for the
developers of MPTCP to implement the new version API into the TCP/IP
network stack.
2. Conventions and Terminology
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].
One Way Latency (OWL): The propagation delay of the time from the
signal transmission to the reception signal between the sender and
the receiver is delayed.
3. Potential Usages of OWL in MPTCP
There are a number of OWL use cases when sender and receiver enable
MPTCP. Although, this document only illustrates 5 use cases, and
still needs more explorations.
3.1. Crucial Data Scheduling
During the transmission, some crucial data usually needs to be sent
to the destination immediately. Examples of such data include the
key frame of multimedia and high priority chunk of emergency
Song, et al. Expires June 16, 2018 [Page 3]
Internet-Draft OWL Considerations for MPTCP June 2018
communication. No one can guarantee the arrival sequence by using
the RTTs alone of the multiple paths.
The data rate in any given link can be asymmetric. In addition,
according to the amount of packet queue, the delay in a given
direction can change. Therefore, the same as that in the reverse
direction as exemplified in Figure 1, delay in a forward direction
in a path is not necessary.
-------- OWL(s-to-c,path1)=16ms <--------
/ \
| -----> OWL(c-to-s,path1)= 5ms ----- |
| / RTT(path1)=21ms \ |
| | | |
+------+ +------+
| |-----> OWL(c-to-s,path2)= 8ms -----| |
|Client| |Server|
| |----- OWL(s-to-c,path2)= 8ms <-----| |
+------+ RTT(path2)=16ms +------+
| | | |
| \ / |
| -----> OWL(c-to-s,path3)=10ms ----- |
\ /
-------- OWL(s-to-c,path3)= 8ms <--------
RTT(path3)=18ms
Figure 1. Example with 3 paths between the client and the server
with OWL as indicated in the figure. RTT information alone would
indicate to the client that the fastest path to the server is path 2,
followed by path 3, and then followed by path 1. Path 2 is the
fastest, and OWL indicates to the client that the fastest path to the
server is path 1, then path 2, and then followed by path 3.
Song, et al. Expires June 16, 2018 [Page 4]
Internet-Draft OWL Considerations for MPTCP June 2018
The faster path can be easily selected by using the results of OWL
measurement with the sender, in terms of forward latency, for crucial
data transmission. Moreover, the minimum reverse latency could send
the acknowledgements of these crucial data on the path. When adopt
the duplex communication mode, piggyback is also useful.
3.2. Congestion control
Congestion in a given direction does not necessarily imply
congestion also in the reverse direction.
-------- No congestion (path 1) <--------
/ \
| -----> Congestion (path 1) ----- |
| / \ |
| | | |
+------+ +------+
|Client| |Server|
+------+ +------+
| | | |
| \ / |
| -----> No congestion (path 2) ----- |
\ /
-------- Congestion (path 2) <--------
Figure 2. Example of a congestion situation with 2 paths between the
client and the server. There is congestion from client to server
along path 1 and also from server to client along path 2. RTT
information alone will indicate congestion in both paths, whereas
OWL information will show the client that path 2 is the more lightly
loaded path to get to the server.
Using OWL instead of RTT can better describe network congestion in a
given direction. Especially when the congestion can be a situation in
a unidirectional path, the congestion in the path from a client to a
Song, et al. Expires June 16, 2018 [Page 5]
Internet-Draft OWL Considerations for MPTCP June 2018
server is different from the congestion in the path from the server
to the client. The RTT cannot accurately reflect the delay of
interest for data transmission along a path. For MPTCP, the client
needs to choose a more lightly loaded path to send packets
[RFC6356]. Instead of comparing the RTT among different paths, it
should be compared with the OWL among the paths.
Current version of MPTCP includes different kinds of congestion
control mechanisms [RFC6356]. Reasonably utilizing OWL could better
describe the network congestion situation in a single direction.
3.3. Packet Retransmission
Continuous Multipath Transport (CMT) increases throughput by allowing
multiple paths to simultaneously transfer new data from the source to
the target host. However, a suitable path for retransmission needs to
be selected by the sender, when packet is identified as lost by
triple duplicated acknowledgements or timeout. Outstanding packets
on multiple paths may reach to the destination disorderly and
trigger Receive Buffer Blocking (RBB) problem (Figure 3) which
will further affect the transmission performance, due to the popular
mechanisms of sequence control in reliable transport protocols.
Packetwith octets sequence # 0- 499(lost)
---> Packetwith octets sequence #1000-1499(rcvd) ------
/ Packetwith octets sequence #2000-2499(rcvd) \
| |
+------+ +--------+
|Sender| |Receiver|
+------+ +--------+
| |
\ Packetwith octets sequence # 501- 999(lost) /
-----> Packetwith octets sequence #1501-1999(lost) -----
Packetwith octets sequence #2501-2999(lost)
Figure 3. Example of Receive Buffer Blocking: The packet containing
octets 0-499 is lost. On the other hand the packets containing
Song, et al. Expires June 16, 2018 [Page 6]
Internet-Draft OWL Considerations for MPTCP June 2018
Octets 500-999, 1000-1499, 1500-1999, 2000-2499, and 2500-2999 have
all been received. The octets 500-2999 are then all buffered at the
receiver, and are blocked by the missing octets 0-499.
The specific path with minimum latency can be quickly determined by
the sender in the forward direction by using the results of OWL
measurement. As soon as the receiver obtains the most needed
packet(s), The upper layer can relieve and submit RBB.
3.4. Bandwidth Estimation
It is beneficial to understand the bandwidth condition for data
packet scheduling, and load balancing, etc. OWL could be integrated
with bandwidth estimation approaches without interrupting the
normal transmission of data packets.
3.5. Shared Bottleneck Detection
Fairness is critical especially when MPTCP and ordinary TCP coexist
in the same network. Sender treat OWL measurements as the sample
process of shared bottleneck detection, and sender adjust the volume
of data packet on multiple paths accordingly.
4. OWL Measurements in TCP
Estimate latency may invoke the timestamp option in TCP [RFC7323].
When sending data the option provide the time (TSval) of sending
the data. The receiver acknowledges the receipt of this data by
echoing this time (TSecr), and also the time (TSval) of sending
this acknowledgment is provided. Although there are two problems,
the difference of these times in the acknowledgment of data from
the sender can help to estimate the OWL from the sender to the
receiver.
First, there may be delay from the time the receiver who has
received the data to the time when the acknowledgment is sent. Then,
the above number may be an upper bound of OWL.
Second, the clocks between the sender and the receiver may not be
synchronized. The above measure only if the clocks synchronized
can show the OWL in different paths. The comparison of OWLs among
different paths is limited to showing the OWL differences among
them without clock synchronization.
Two kinds of OWL measurement approaches are available: absolute
value measurement and relative value measurement.
Song, et al. Expires June 16, 2018 [Page 7]
Internet-Draft OWL Considerations for MPTCP June 2018
In order to obtain the absolute value of OWL, the primary condition
of measurement is clock synchronization. End hosts can calibrate the
local clock with the remote NTP server by using network time
protocol (NTP) [RFC5905]. The additional information or optional
capabilities can even be added via extension fields in the standard
NTP header [RFC7822]. The calibration accuracy can reach to the
millisecond level in less congested situations. The obvious burden
here is to persuade the end hosts to initialize the NTP option.
It is more than enough to obtain the relative value of OWL in some
circumstances to establish applications on top of it. For example,
the sender may only care about which path has the minimum forwarding
latency when retransmission is needed. When bandwidth is being
estimated, the difference of forward latency, i.e. delta latency,
among all available paths is needed. Both sides could obtain the
relative value of OWL by exchanging with correspondent end host the
local timestamps of receiving and sending the packets.
The overheads are the extra protocol requirement and synchronization
accuracy, while absolute value measurement of OWL is more convenient
for the applications. On the contrary, it is no need for relative
value to worry about the accuracy whereas the overhead is to add
timestamps into the original protocol stack.
5. Security Considerations
This document does not contain any security considerations. However,
the relevant mechanisms definitely need to be established by future
applications of OWL in MPTCP to improve security.
6. IANA Considerations
This document presents no IANA considerations.
7. References
7.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, <http://www.rfc
editor.org/info/rfc2119>.
7.2. Informative References
[RFC0793] Postel, J., "Transmission Control Protocol", STD 7, RFC
Song, et al. Expires June 16, 2018 [Page 8]
Internet-Draft OWL Considerations for MPTCP June 2018
793, DOI 10.17487/RFC0793, September 1981,
<http://www.rfc-editor.org/info/rfc793>.
[RFC5905] Mills, D., Martin, J., Ed., Burbank, J., and W. Kasch,
"Network Time Protocol Version 4: Protocol and Algorithms
Specification", RFC 5905, DOI 10.17487/RFC5905, June 2010,
<http://www.rfc-editor.org/info/rfc5905>.
[RFC6182] Ford, A., Raiciu, C., Handley, M., Barre, S., and J.
Iyengar, "Architectural Guidelines for Multipath TCP
Development", RFC 6182, DOI 10.17487/RFC6182, March 2011,
<http://www.rfc-editor.org/info/rfc6182>.
[RFC6356] Raiciu, C., Handley, M., and D. Wischik, "Coupled
Congestion Control for Multipath Transport Protocols", RFC
6356, DOI 10.17487/RFC6356, October 2011, <http://www.rfc
editor.org/info/rfc6356>.
[RFC6419] Wasserman, M. and P. Seite, "Current Practices for
Multiple-Interface Hosts", RFC 6419, DOI 10.17487/RFC6419,
November 2011, <http://www.rfc-editor.org/info/rfc6419>.
[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,
<http://www.rfc-editor.org/info/rfc6824>.
[RFC7323] Borman, D., Braden, B., Jacobson, V., and R. Scheffenegger
, Ed., "TCP Extensions for High Performance", RFC 7323, DOI
10.17487/RFC7323, September 2014, <http://www.rfc
editor.org/info/rfc7323>.
[RFC7822] Mizrahi, T. and D. Mayer, "Network Time Protocol Version 4
(NTPv4) Extension Fields", RFC 7822, DOI 10.17487/RFC7822,
March 2016, <http://www.rfc-editor.org/info/rfc7822>.
Song, et al. Expires June 16, 2018 [Page 9]
Internet-Draft OWL Considerations for MPTCP June 2018
Authors Addresses
Fei Song
Beijing Jiaotong University
Beijing, 100044
P.R. China
Email: fsong@bjtu.edu.cn
Hongke Zhang
Beijing Jiaotong University
Beijing, 100044
P.R. China
Email: hkzhang@bjtu.edu.cn
H Anthony Chan
Huawei Technologies
5340 Legacy Dr. Building 3
Plano, TX 75024
USA
Email: h.a.chan@ieee.org
Anni Wei
Huawei Technologies
Xin-Xi Rd. No. 3, Haidian District
Beijing, 100095
P.R. China
Email: weiannig@huawei.com
Song, et al. Expires June 16, 2018 [Page 10]