
Revisiting the IETF Multipath Extensions on Transport Layer DISSERTATION to obtain the academic grade doctor rerum naturalium (dr. rer. nat.) in Computer Science Submitted to the Faculty of Economics Institute for Computer Science and Business Information Systems University of Duisburg-Essen by Martin Becke born on 08.08.1977 in Ankum, Germany President of the University of Duisburg-Essen: Prof. Dr. Ulrich Radtke Dean of the Faculty of Economics: Prof. Dr. Volker Clausen Reviewers: 1. Prof. Dr.-Ing. Erwin P. Rathgeb 2. Prof. Dr. Klaus Echtle Submitted on: September 11, 2014 Date of Disputation: November 12, 2014 ii Selbst¨andigkeitserkl¨arung Hiermit erkl¨are ich, die vorliegende Arbeit selbst¨andig ohne fremde Hilfe verfaßt und nur die angegebene Literatur und Hilfsmittel verwendet zu haben. Weiter erkl¨are ich, dass diesem Promotionsverfahren keine Promotionsversuche in diesem Fach oder in einem anderen Fach vorausgegangen sind und dass die eingereichte Arbeit oder wesentliche Teile derselben in keinem anderen Verfahren zur Erlangung eines akademischen Grades vorgelegt worden sind. Martin Becke September 11, 2014 iii iv Abstract Load sharing on the transport layer of the OSI reference model is an important topic in the IETF standardization. This approach is also supported by the industry to optimize the use of the resources in a network like the Internet. After many trials, two basic sets of mechanisms and functionalities on the transport layer have been proposed by the IETF to achieve load sharing. These basic sets extend the protocol mechanisms that were originally designed for the use in singlepath dominated networks and represent only a first step to introduce a real end-to-end multipath transfer on the Internet. These first basic sets must be investigated and improved for the next steps. The Transmission Control Protocol (TCP) and the Stream Control Transmission Protocol (SCTP) provide the basis for the two IETF end-to-end multipath extensions. Both singlepath transport protocols have a different historical background but similar goals. These can be characterized by a reliable, connection-oriented and ordered data transport. However, initial experiments with the IETF multipath extensions in real networks show unexpected and in some cases clearly inadequate results. It is becoming rather apparent that the singlepath transport protocol specifications with their singlepath goals have a significant impact on the effectiveness of the load sharing mechanism and, furthermore, that the severity of the influence depends on the topology. The new mechanisms for multipath transfer include, in particular, an extended \path management" and \scheduling" task. The mechanisms addressing the path management organize the new, alternative paths and the scheduling mechanisms sup- port their effective use. For both protocol extensions of TCP and SCTP, an interaction can be identified between the new load sharing mechanisms and the existing specifications for singlepath transfer. This thesis systematically identifies the impact factors of the singlepath specifications on the new load sharing mechanisms and demonstrates their effects. In addition to the focus on the optimal use, the fair distribution of resources across all connections must be taken into account in the IETF standardization process. This so-called \fairness" discus- sion is mandatory for a transport protocol in the IETF context and has a direct impact on the overall system performance. Furthermore, this thesis discusses the currently implemented load sharing extensions and analyzes their weaknesses. Moreover, in this work new design approaches are developed to decrease the impact. Keywords: Stream Control Transmission Protocol (SCTP), Multipath Transport, Multipath Transmis- sion Control Protocol (MPTCP), Evaluation, Optimisation v vi Acknowledgements This thesis is the result of my work as research associate in the Computer Networking Technol- ogy Group of the Institute for Experimental Mathematics at the University of Duisburg-Essen. First and foremost, I would like to thank my primary advisor, Prof. Dr.-Ing Erwin P. Rathgeb, for his support and supervision of this thesis and the invaluable comments related to my research work. Furthermore, I also thank my secondary advisor Prof. Dr. Klaus Echtle for his thesis review. I would like to express my special thanks to my former colleague Dr. Thomas Dreibholz for his great cooperation in the project, as well as Prof. Dr. Michael T¨uxenfrom the M¨unster University of Applied Sciences for his insperation and support, especially in the context of our IETF standardization work. Furthermore, I would like to express my special thanks to my colleague Hakim Adhari for his great cooperation with respect to discussions on fairness and path management and debugging the testbed environments used for this work. I would like also to thank my former colleague Jobin Pulinthanath for his help with building up the testbed environment and negotiating the contract details with the ADSL Internet service provider. For his help with the acquisition of the testbed hardware, I would also like to thank our com- puter systems technician Nihad Cosic and my student assistant Sebastian Wallat. Clearly, I would furthermore like to express my special thanks to my colleagues Irfan Simsek, Adnan Aziz and Sebastian Werner for their input during the discussions about fairness and security. Also, I would like to thank Dr. Irene R¨ungelerand Dr. Robin Seggelmann for the discussions and continuous support. In addition, I would like to thank the Deutsche Forschungsgemein- schaft (DFG) and the Bundesministerium f¨urBildung und Forschung (BMBF) for supporting parts of this project. Finally, I would like to thank my girlfriend Shima Shayanfar and my father Paul Becke for the years of encouragement and support. vii viii Contents Abstract v Acknowledgements vii Contents ix Glossary xiv 1 Introduction1 1.1 Motivation.....................................2 1.2 Goals of this thesis.................................3 1.3 Organization of this work.............................4 2 Basics 5 2.1 Transport protocols in the context of the IETF.................6 2.2 Introduction to TCP and SCTP.........................8 2.2.1 Services of transport protocols in the Internet..............8 2.2.2 Connection management.......................... 11 2.2.3 Reliable and ordered transfer....................... 13 2.2.4 Congestion and flow control........................ 15 2.2.4.1 New Reno............................ 17 2.3 Special network components and relevant aspects................ 17 2.3.1 Issues with middleboxes.......................... 17 2.3.2 Queueing discipline............................. 18 2.3.3 Socket concept............................... 18 3 Basic function set of load sharing for TCP and SCTP 21 3.1 Concurrent multipath transfer and load sharing................. 21 3.1.1 Goals.................................... 21 3.1.2 Alternative approaches in the context of the IETF........... 22 3.2 Multipath transfer for TCP and SCTP...................... 23 3.2.1 Definition of multi-homing, multipath and flow............. 25 3.2.2 TCP-friendliness.............................. 26 3.2.2.1 Shared bottleneck scenario................... 27 3.2.2.2 Resource Pooling principle................... 28 3.2.3 Impact on the transport protocols.................... 29 3.2.3.1 Impact on connection management............... 30 ix 3.2.3.2 Impact on reliable and ordered transfer............ 32 3.2.3.3 Impact on flow control..................... 33 3.2.3.4 Implementation dependent options............... 34 3.3 Conclusion..................................... 35 4 Testbeds and tools 37 4.1 Simulation model.................................. 38 4.1.1 OMNeT++................................. 38 4.1.2 INET framework.............................. 39 4.1.2.1 Enhancement of the INET TCP model............ 40 4.1.2.2 MPTCP............................. 41 4.1.2.3 Enhancement of the INET SCTP model............ 42 4.1.2.4 Enhancement of other models................. 43 4.1.3 SimProcTC................................. 43 4.1.3.1 Basic scenario setup....................... 43 4.1.3.2 Baseline experiment....................... 44 4.2 Real world testbed setup.............................. 44 5 Revisiting path management 47 5.1 Path management................................. 49 5.1.1 Constraints................................. 50 5.1.1.1 General.............................. 50 5.1.1.2 MPTCP............................. 53 5.1.1.3 CMT-SCTP........................... 54 5.1.1.4 Conclusion............................ 54 5.1.2 Network layer................................ 54 5.1.2.1 Routing and MPTCP...................... 55 5.1.2.2 Routing and CMT-SCTP.................... 59 5.1.2.3 Conclusion............................ 61 5.2 Path management scenarios............................ 61 5.2.1 Basic scenario 1: One multi-homed host................. 61 5.2.2 Basic scenario 2: Two multi-homed hosts................ 62 5.2.3 Specific scenarios.............................. 63 5.2.3.1 Asymmetric load sharing scenarios............... 64 5.2.3.2 Poor man's multi-homing.................... 65 5.2.4 Conclusion................................. 66 5.3 Behavior in a real Internet setup......................... 66 5.3.1 Global multipath testbed......................... 67 5.3.1.1 The endpoint and access link setup.............. 67 5.3.1.2 Analysis of the Internet environment............. 68 5.3.2 Valuation of the Internet throughput..................
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages221 Page
-
File Size-