skip to main content
10.1145/3135974.3135979acmconferencesArticle/Chapter ViewAbstractPublication PagesmiddlewareConference Proceedingsconference-collections
research-article

A programming model for application-defined multipath TCP scheduling

Published:11 December 2017Publication History

ABSTRACT

Multipath TCP enables remarkable optimizations for throughput, load balancing, and mobility in today's networks. The design space of Multipath TCP scheduling, i.e., the application-aware mapping of packets to paths, is largely unexplored due to its inherent complexity. Evidence in this paper suggests that an application-aware scheduling decision, if leveraged right, pushes Multipath TCP beyond throughput optimization and thereby provides benefits for a wide range of applications.

This paper introduces a high-level programming model that enables application-defined Multipath TCP scheduling. We provide an efficient interpreter and eBPF-based runtime environment for the Linux Kernel, enabling isolated application-defined schedulers in multi-tenancy environments. In combination with a high-level API, our work closes the gap between scheduler specification and deployment. We show the strength of our programming model by implementing seven novel schedulers tackling diverse objectives. Our real world measurements, for example, of an application- and preference-aware scheduler, show that the programming model enables timely scheduling decisions to retain fine-grained throughput objectives. Further measurements of a novel HTTP/2-aware scheduler show significantly improved interactions with upper-layer protocols, e.g., an optimized dependency resolution, while preserving path preferences.

References

  1. Nghttp2: HTTP/2 C Library. https://nghttp2.org/, 2015.Google ScholarGoogle Scholar
  2. A. Alim, R. G. Clegg, L. Mai, L. Rupprecht, E. Seckler, P. Costa, P. Pietzuch, A. L. Wolf, N. Sultana, J. Crowcroft, et al. Flick: developing and running application-specific network services. In USENIX ATC, pages 1--14, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. B. Arzani, A. Gurney, S. Cheng, R. Guerin, and B. T. Loo. Impact of path characteristics and scheduling policies on MPTCP performance. In IEEE WAINA, pages 743--748, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. S. Barre, C. Paasch, and O. Bonaventure. Multipath TCP: From theory to practice. In IFIP Networking, pages 444--457, May 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. M. Belshe, M. Thomson, and R. Peon. Hypertext Transfer Protocol Version 2 (HTTP/2). RFC 7540, 2015.Google ScholarGoogle Scholar
  6. N. Cardwell, Y. Cheng, L. Brakmo, M. Mathis, B. Raghavan, N. Dukkipati, H.-k. J. Chu, A. Terzis, and T. Herbert. packetdrill: Scriptable network stack testing, from sockets to packets. In USENIX ATC, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. G. Chen, Y. Lu, Y. Meng, B. Li, K. Tan, D. Pei, P. Cheng, L. L. Luo, Y. Xiong, X. Wang, et al. Fast and cautious: Leveraging multi-path diversity for transport loss recovery in data centers. In USENIX ATC, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Y.-C. Chen, Y.-s. Lim, R. J. Gibbens, E. M. Nahum, R. Khalili, and D. Towsley. A measurement-based study of multipath TCP performance over wireless networks. In ACM IMC, pages 455--468, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. J. Corbet. Extending extended BPF. https://lwn.net/Articles/603983/, 2014.Google ScholarGoogle Scholar
  10. X. Corbillon, R. Aparicio-Pardo, N. Kuhn, G. Texier, and G. Simon. Cross-layer scheduler for video streaming over MPTCP. In ACM MMSys, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Q. De Conick and O. Bonaventure. Every Millisecond Counts: Tuning Multipath TCP for Interactive Applications on Smartphones. http://hdl.handle.net/2078.1/185717, 2017.Google ScholarGoogle Scholar
  12. Q. De Coninck, M. Baerts, B. Hesmans, and O. Bonaventure. A first analysis of Multipath TCP on smartphones. In PAM, pages 57--69. Springer, 2016.Google ScholarGoogle ScholarCross RefCross Ref
  13. S. Deng, R. Netravali, A. Sivaraman, and H. Balakrishnan. WiFi, LTE, or both?: Measuring multi-homed wireless internet performance. In ACM IMC, pages 181--194, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. T. Flach, N. Dukkipati, A. Terzis, B. Raghavan, N. Cardwell, Y. Cheng, A. Jain, S. Hao, E. Katz-Bassett, and R. Govindan. Reducing web latency: the virtue of gentle aggression. SIGCOMM Computer Communication Review, 43(4):159--170, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. A. Ford, C. Raiciu, M. Handley, and O. Bonaventure. TCP Extensions for Multipath Operation with Multiple Addresses. RFC 6824.Google ScholarGoogle Scholar
  16. N. Foster, R. Harrison, M. J. Freedman, C. Monsanto, J. Rexford, A. Story, and D. Walker. Frenetic: A network programming language. In ACM ICFP, pages 279--291, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. A. Froemmgen, T. Erbshaeuser, T. Zimmermann, K. Wehrle, and A. Buchmann. ReMP TCP: Low latency multipath TCP. In IEEE ICC, 2016.Google ScholarGoogle ScholarCross RefCross Ref
  18. A. Froemmgen, S. Sadasivam, S. Mueller, A. Klein, and A. Buchmann. Poster: Use your senses: A smooth multipath tcp wifi/mobile handover. In ACM MobiCom, pages 248--250, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Y. Go, O. C. Kwon, and H. Song. An energy-efficient HTTP adaptive video streaming with networking cost constraint over heterogeneous wireless networks. IEEE Transactions on Multimedia, 17(9):1646--1657, 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. R. Hamilton, J. Iyengar, I. Swett, and A. Wilk. QUIC: A UDP-based secure and reliable transport for HTTP/2, July 2016. IETF, Internet-Draft.Google ScholarGoogle Scholar
  21. B. Han, F. Qian, S. Hao, L. Ji, and N. Bedminster. An anatomy of mobile web performance over Multipath TCP. In ACM CoNEXT, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. B. Han, F. Qian, L. Ji, and V. Gopalakrishnan. MP-DASH: Adaptive video streaming over preference-aware multipath. In ACM CoNEXT, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. N. Handigol, B. Heller, V. Jeyakumar, B. Lantz, and N. McKeown. Reproducible network experiments using container-based emulation. In ACM CoNEXT, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. B. Hesmans and O. Bonaventure. An enhanced socket API for Multipath TCP. In IRTF Applied Networking Research Workshop, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. B. Hesmans, G. Detal, R. Bauduin, O. Bonaventure, et al. SMAPP: Towards smart Multipath TCP-enabled applications. In ACM CoNEXT, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. S. Hu, K. Chen, H. Wu, W. Bai, C. Lan, H. Wang, H. Zhao, and C. Guo. Explicit path control in commodity data centers: Design and applications. In USENIX NSDI, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. J. Hwang, A. Walid, and J. Yoo. Fast coupled retransmission for multipath TCP in data center networks. IEEE Systems Journal, 2016.Google ScholarGoogle Scholar
  28. R. Khalili, N. Gast, M. Popovic, U. Upadhyay, and J.-Y. Le Boudec. MPTCP is not pareto-optimal: performance issues and a possible solution. In ACM CoNEXT, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. E. Kohler, M. F. Kaashoek, and D. R. Montgomery. A readable TCP in the prolac protocol language. In ACM SIGCOMM, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. E. Kohler, R. Morris, B. Chen, J. Jannotti, and M. F. Kaashoek. The Click modular router. ACM Transactions on Computer Systems, 18(3):263--297, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. N. Kuhn, E. Lochin, A. Mifdaoui, G. Sarwar, O. Mehani, and R. Boreli. DAPS: intelligent delay-aware packet scheduling for multipath transport. In IEEE ICC, 2014.Google ScholarGoogle ScholarCross RefCross Ref
  32. I. Lopez, M. Aguado, C. Pinedo, and E. Jacob. SCADA systems in the railway domain: Enhancing reliability through redundant multipathtcp. In IEEE ITSC, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner. Openflow: enabling innovation in campus networks. ACM SIGCOMM Computer Communication Review, 38(2):69--74, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. S. McQuistin, C. Perkins, and M. Fayed. TCP hollywood: An unordered, time-lined, TCP for networked multimedia applications. In IFIP Networking, pages 422--430, 2016.Google ScholarGoogle ScholarCross RefCross Ref
  35. A. Nikravesh, Y. Guo, F. Qian, Z. M. Mao, and S. Sen. An in-depth understanding of multipath TCP on mobile devices: Measurement and system design. In ACM MobiCom, pages 189--201, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. M. F. Nowlan, N. Tiwari, J. Iyengar, S. O. Amin, and B. Ford. Fitting square pegs through round pipes: Unordered delivery wire-compatible with TCP and TLS. In USENIX NSDI, pages 28--28, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. C. Paasch and S. Barre. Multipath TCP in the Linux Kernel. available from http://www.multipath-tcp.org.Google ScholarGoogle Scholar
  38. C. Paasch, G. Detal, F. Duchene, C. Raiciu, and O. Bonaventure. Exploring mobile/wifi handover with Multipath TCP. In ACM SIGCOMM Workshop on Cellular networks: operations, challenges, and future design, pages 31--36, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. C. Paasch, S. Ferlin, O. Alay, and O. Bonaventure. Experimental evaluation of Multipath TCP schedulers. In ACM SIGCOMM Workshop on Capacity Sharing, pages 27--32, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. B. Pfaff, J. Pettit, T. Koponen, E. Jackson, A. Zhou, J. Rajahalme, J. Gross, A. Wang, J. Stringer, P. Shelar, et al. The design and implementation of Open vSwitch. In USENIX NSDI, pages 117--130, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. M. Popovici and C. Raiciu. Exploiting multipath congestion control for fun and profit. In ACM HotNets, pages 141--147, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. C. Raiciu, S. Barre, C. Pluntke, A. Greenhalgh, D. Wischik, and M. Handley. Improving datacenter performance and robustness with Multipath TCP. In ACM SIGCOMM Computer Communication Review, volume 41, pages 266--277, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. C. Raiciu, M. Handly, and D. Wischik. Coupled congestion control for multipath transport protocols. RFC 6356, 2011.Google ScholarGoogle Scholar
  44. C. Raiciu, C. Paasch, S. Barre, A. Ford, M. Honda, F. Duchene, O. Bonaventure, and M. Handley. How hard can it be? Designing and implementing a deployable Multipath TCP. In USENIX NSDI, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. M. Rajiullah, P. Hurtig, A. Brunstrom, A. Petlund, and M. Welzl. An evaluation of tail loss recovery mechanisms for TCP. ACM SIGCOMM Computer Communication Review, 45(1):5--11, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. M. Scharf and S. Kiesel. Head-of-line blocking in TCP and SCTP: Analysis and measurements. In IEEE GLOBECOM, 2006.Google ScholarGoogle ScholarCross RefCross Ref
  47. S. Seo. KT's GiGA LTE. https://www.ietf.org/proceedings/93/slides/slides-93-mptcp-3.pdf, 2015.Google ScholarGoogle Scholar
  48. A. Sivaraman, A. Cheung, M. Budiu, C. Kim, M. Alizadeh, H. Balakrishnan, G. Varghese, N. McKeown, and S. Licking. Packet transactions: High-level programming for line-rate switches. In ACM SIGCOMM, pages 15--28, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. A. Sivaraman, S. Subramanian, M. Alizadeh, S. Chole, S.-T. Chuang, A. Agrawal, H. Balakrishnan, T. Edsall, S. Katti, and N. McKeown. Programmable packet scheduling at line rate. In ACM SIGCOMM, pages 44--57, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. V.-H. Tran, Q. De Coninck, B. Hesmans, R. Sadre, and O. Bonaventure. Observing real Multipath TCP traffic. Computer Communications, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. O. Traub, G. Holloway, and M. D. Smith. Quality and speed in linear-scan register allocation. In ACM PLDI, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. X. S. Wang, A. Balasubramanian, A. Krishnamurthy, and D. Wetherall. Demystifying page load performance with WProf. In USENIX NSDI, pages 473--485, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. D. Wischik, C. Raiciu, A. Greenhalgh, and M. Handley. Design, Implementation and Evaluation of Congestion Control for Multipath TCP. In USENIX NSDI, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. H. Xu and B. Li. RepFlow: Minimizing flow completion times with replicated flows in data centers. In IEEE INFOCOM, pages 1581--1589, 2014.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. A programming model for application-defined multipath TCP scheduling

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        Middleware '17: Proceedings of the 18th ACM/IFIP/USENIX Middleware Conference
        December 2017
        268 pages
        ISBN:9781450347204
        DOI:10.1145/3135974

        Copyright © 2017 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 11 December 2017

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Middleware '17 Paper Acceptance Rate20of85submissions,24%Overall Acceptance Rate203of948submissions,21%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader