Multipath TCP and Measuring End- To-End TCP Throughput
Total Page:16
File Type:pdf, Size:1020Kb
Master of Science in electrical engineering with emphasis on Telecommunication systems JUNE 2018 Multipath TCP and Measuring end- to-end TCP Throughput Measuring TCP Metrics and ways to improve TCP Throughput performance Vineesha Sana Faculty of Computing , Blekinge Institute of Technology , SE-371 79 Karlskrona Sweden This thesis is submitted to the Faculty of Computing at Blekinge Institute of Technology in partial fulfillment of the requirements for the degree of Master of Science in Electrical Engineering with emphasis on Telecommunication Systems. The thesis is equivalent to 20 weeks of full time studies. Contact Information: Author: Vineesha Sana E-mail: [email protected], [email protected] External Advisor: Managing Director, Rao. Tummalapalli Seneca Global Hyderabad, India University advisor: Dr. Adrian Popescu Department of Communications Faculty of Computing Internet : www.bth.se Blekinge Institute of Technology Phone : +46 455 38 50 00 SE-371 79 Karlskrona, Sweden Fax : +46 455 38 50 57 ABSTRACT Internet applications make use of the services provided by a transport protocol, such as TCP (a reliable, in-order stream protocol). We use the term Transport Service to mean the end- toend service provided to application by the transport layer. That service can only be provided correctly if information about the intended usage is supplied from the application. The application may determine this information at the design time, compile time, or run time, and it may include guidance on whether a feature is required, a preference by the application, or something in between. Multipath TCP (MPTCP) adds the capability of using multiple paths to a regular TCP session. Even though it is designed to be totally backward compatible to applications. The data transport differs compared to regular TCP, and there are several additional degrees of freedom that the particular application may want to exploit. Multipath TCP is particularly useful in the context of wireless networks using both Wi-Fi and a mobile network is a typical use case. In addition to the gains in throughput from inverse multiplexing, links may be added or dropped as the user moves in or out of coverage without disrupting the end-to-end TCP connection. The problem of link handover is thus solved by abstraction in the transport layer, without any special mechanisms at the network or link level. Handover functionality can then be implemented at the endpoints without requiring special functionality in the sub-networks according to the Internet's end-to-end principle. Multipath TCP can balance a single TCP connection across multiple interfaces and reach very high throughput. Keywords: Congestion control, end-to-end, IP network, TCP performance, Throughput ACKNOWLEDGEMENTS A special note of thanks to my supervisor Dr. Adrian Popescu for his excellent guidance and reviews during the master thesis work. His great ideas and suggestions made me work his patience mean a lot throughout the whole project. I am grateful to thank all of my company staff for their extreme help and valuable suggestions at Seneca global, Hyderabad, India for the great support. I am happy to express that I have encouragement and positive support from my parents all the time during my work. I would like to thank my thesis partner for great help during our work. Finally, I am very much thankful to God who is the superior of everything, who guides and learns me new all the time. LIST OF FIGURES 3.1 Path MTU in TCP 3.2 Round-Trip-Time and Bottleneck-Bandwidth 3.2.1Bandwidth Line Utilization and Round-Trip-Time 3.2.1 Round-Trip-Time Measurements 3.2.2 Measuring Bandwidth Thresholds in TCP 3.7 TCP Throughput Test of TCP Performance LIST OF FIGURES and GRAPHS Figures and Graphs 5: - 5.1 TCP Throughput Relationship Graph 5.2 TCP Congestion Window with Number of Transmissions 5.3 Threshold Graph of Slow Start and Congestion Avoidance 5.4 Throughput Connections of Full Bandwidth 5.5 TCP Throughput Graph with Packet Loss 5.6 Throughput Latency and Utilization 5.7 MPTCP Networks Simple Case from Client-Server 6.1Existing Layers in MPTCP ACRONYMS TCP Transfer Control Protocol MPTCP Multipath Transfer Control Protocol CA Congestion Avoidance RTT Round-Trip-Time BDP Buffer Delay Percentage BB Bottleneck-Bandwidth MTU Maximum Transmission Unit UDP User Datagram Protocol HTTP Hyper Text Transfer Protocol CW Congestion Window IP Internet Protocol Contents 1 INTRODUCTION .................................................................................................................. 2 1.1 Brief Introduction about Seneca Global ...................................................................... 2 1.2 TCP Throughput .......................................................................................................... 2 1.3 Terminology ................................................................................................................. 3 1.4 Problem Statement ...................................................................................................... 5 1.5 Research Questions ..................................................................................................... 6 1.6 Scope and Goals .......................................................................................................... 6 1.7 Split of work͙͙͙͙͙͙͙͙͙͙͙͙ ͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙͙.7 2 RELATED WORK ............................................................................................................. 8 3 METHODOLOGY ............................................................................................................. 12 3.1 Path MTU (Maximum Transmission Unit) ............................................................... 12 3.2 Round-Trip-Time(RTT) and Bottleneck Bandwidth ................................................ 14 3.2.1 Measuring Round-Trip-Time (RTT) .................................................................. 14 3.2.2 Measuring Bottleneck-Bandwidth (BB) ............................................................ 16 3.3 TCP Throughput Measurements ............................................................................... 19 3.4 TCP Metrics .............................................................................................................. 20 3.5 TCP Efficiency .......................................................................................................... 21 3.6 Buffer Delay Percentage ........................................................................................... 22 3.7 TCP Throughput Test ................................................................................................ 23 4 Validation of MPTCP ....................................................................................................... 25 5 Analysis and Results ......................................................................................................... 27 Multiple Transmission Control Protocol Connections ........................................................ 27 Results Simplification ......................................................................................................... 28 1 6 Summary and Conclusion ................................................................................................. 37 6.1 Summary ................................................................................................................... 37 6.2 Conclusion ................................................................................................................. 40 7 Future Work ...................................................................................................................... 41 8 REFERENCES ................................................................................................................. 43 1 INTRODUCTION In this document we describe a practical methodology for measuring endto-end TCP Throughput in a managed IP network and delivery of video on protocol issues related to application and transport layers in MPTCP. Section 1.1 deals with a brief introduction about TCP Throughput Measurements. Section1.2 deals with the terminology of TCP and Throughput. Section1.3 deals with basic terminology terms that used in this thesis work. Section1.4 deals with the problem statement of the project area i.e. challenges and difficulties with TCP Throughput. Section1.5 deals with the methods for evaluation used to solve the research questions. Section1.6 deals with the scope and goals of the project. 1.1 Brief Introduction about Seneca Global Ed Szofer, Rao Tummalapalli and Mani Swami Nathan founded Seneca Global in 2007. All three senior executives had worked together at companies where they had significant success, including: Wittman-Hart (where Ed was President and COO), Divine Interventures (where Rao was Managing Director of off-shore development), and Alliance Consulting. Seneca Global is the culmination of years of IT and leadership experience, resulting in an 2 unmatched service model for Seneca Global clients. Seneca Global began with two office locations: a management, sales and delivery center in Chicago and a software development and testing center in Hyderabad, India. In 2014, we added an office in Hartford, Connecticut. Since our founding in 2007, we have grown to over 300 professionals and, thanks to our unique model, our growth is accelerating as we continue to serve our clients, associates and communities. The IT landscape has never stopped evolving over the years and it never will, either.