Skip to main content

One Way Latency Considerations for MPTCP
draft-song-mptcp-owl-04

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Expired".
Authors Fei Song , Hong-Ke Zhang , Anthony Chan , Anni Wei
Last updated 2018-06-16 (Latest revision 2017-12-17)
RFC stream (None)
Formats
Additional resources
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-song-mptcp-owl-04
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]