Abstract
Multipath TCP (MPTCP) achieves greater throughput by sending packets from a single byte stream across multiple interfaces and thus, potentially exploits multiple available network paths. This allows end hosts to aggregate bandwidth and network resources. Network simulators such as ns-3 [1] provide researchers with a convenient tool to evaluate protocols and architectures and their importance can not be overemphasized. There are currently 3 existing implementations of MPTCP in ns-3. We evaluate these implementations and find that they lack several key features and are therefore, inadequate for furthering research. We implement MPTCP in ns-3-dev (Developer’s version) and introduce multiple path managers namely default, ndiffports and fullmesh creating an MPTCP patch for ns-3 [2]. The simulation results show improvements in throughput and Flow Completion Times (FCTs) in comparison with previous work. Our implementation [3] is compatible with the current version (ns-3.29).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
ns-3 website. https://www.nsnam.org/. Accessed 05 Nov 2018
ns-3 mptcp patch. https://codereview.appspot.com/369810043/. Accessed 31 Aug 2018
ns-3-dev mptcp. https://github.com/Kashif-Nadeem/ns-3-dev-git. Accessed 31 Aug 2018
Postel, J.: Transmission Control Protocol. Internet Requests for Comments (1981). https://www.rfc-editor.org/rfc/rfc793.txt
Alizadeh, M., et al.: Data center TCP (DCTCP). In: SIGCOMM (2010)
Vamanan, B., Hasan, J., Vijaykumar, T.: Deadline aware data center TCP (D2TCP). In: SIGCOMM (2012)
Bai, W., et al.: PIAS: practical information-agnostic flow scheduling for datacenter network. In: HotNets (2014)
Wischik, D., Handley, M., Bagnulo, M.: The resource pooling principle. ACM SIGCOMM CCR 38(5), 47–52 (2008)
Ong, L., Yoakum, J.: An introduction to the stream control transmission protocol (SCTP). Internet Requests for Comments (2002). https://www.ietf.org/rfc/rfc3286.txt
Hasegawa, Y., Yamaguchi, I., Hama, T., Shimonishi, H., Murase., T.: Improved data distribution for multipath TCP communication. In: IEEE Globecom (2005)
Zhang, M., Lai, J., Krishnamurthy, A., Peterson, L., Wang, R.: A transport layer approach for improving end-to-end performance and robustness using redundant paths. In: USENIX (ATEC 2004) (2004)
Hopps, C.: Analysis of an Equal-Cost Multi-Path Algorithm. Internet Requests for Comments (2000). https://www.rfc-editor.org/rfc/rfc2992.txt
Raiciu, C., Barre, S., Pluntke, C., Greenhalgh, A., Wischik, D., Handley, M.: Improving datacenter performance and robustness with multipath TCP. In: ACM SIGCOMM (2011)
Coudron, M., Secci, S.: An implementation of multipath TCP in ns3. Comput. Netw. 116, 1–11 (2017). https://doi.org/10.1016/j.comnet.2017.02.002
Ford, A., Raiciu, C., Handley, M., Barre, S., Iyengar, J.: Architectural guidelines for multipath TCP development. Internet Requests for Comments (2011). https://tools.ietf.org/html/rfc6182
Carpenter, B., Brim, S.: Middleboxes: taxonomy and issues. Internet Requests for Comments (2001). https://www.rfc-editor.org/rfc/rfc3234.txt
Scharf, M., Ford, A.: MPTCP application interface considerations. Internet Requests for Comments (2013). https://tools.ietf.org/html/rfc6897
Ford, B., Iyengar, J.: Breaking up the transport logjam. In: ACM HotNets (2008)
Multipath Tcp Linux Kernel Implementation. http://multipath-tcp.org/pmwiki.php/Users/ConfigureMPTCP. Accessed 31 Aug 2018
Boccassi, L., Fayed, M., Marina, M.: Binder: a system to aggregate multiple internet gateways in community networks. In: LCDNet 2013 (2013)
Ford, A., Raiciu, C., Handley, M., Bonaventure, O.: TCP extensions for multipath operation with multiple addresses. Internet Requests for Comments (2013). https://tools.ietf.org/html/rfc6824
Chihani, B., Collange, D.: Towards monolingual programming environments. In: WNS3 (2011)
Kheirkhah, M., Wakeman, I., Parisis, G.: Multipath-TCP in ns-3 (2015). https://arxiv.org/abs/1510.07721v1
Barré, S., Paasch, C., Bonaventure, O.: MultiPath TCP: from theory to practice. In: Domingo-Pascual, J., Manzoni, P., Palazzo, S., Pont, A., Scoglio, C. (eds.) NETWORKING 2011. LNCS, vol. 6640, pp. 444–457. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-20757-0_35
Allman, M., Paxson, V., Blanton, E.: TCP congestion control. Internet Requests for Comments (2009). https://www.rfc-editor.org/rfc/rfc5681.txt
Acknowledgements
We would like to thank Matthieu Coudron for valuable discussions and assistance in navigating through the ns-3 development effort.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 ICST Institute for Computer Sciences, Social Informatics and Telecommunications Engineering
About this paper
Cite this paper
Nadeem, K., Jadoon, T.M. (2019). An ns-3 MPTCP Implementation. In: Duong, T., Vo, NS., Phan, V. (eds) Quality, Reliability, Security and Robustness in Heterogeneous Systems. Qshine 2018. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 272. Springer, Cham. https://doi.org/10.1007/978-3-030-14413-5_4
Download citation
DOI: https://doi.org/10.1007/978-3-030-14413-5_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-14412-8
Online ISBN: 978-3-030-14413-5
eBook Packages: Computer ScienceComputer Science (R0)