Experimental Evaluation of Multipath TCP with MPI

Khushi Popat, Jigar A. Raval, Samuel B. Johnson, Bhavesh Patel · 2015

These days, computing devices are equipped with multiple network interfaces: mobiles with 3G and Wi-Fi, Laptops with Wi-Fi and Ethernet, etc. However, TCP was not designed to utilize those interfaces simultaneously for providing high bandwidth and/or fail-over. IETF has realized this problem and has developed/adopted MPTCP as an extension of TCP which tries to solve the problem of utilizing multiple NICs. As of today, MPTCP has been implemented in iOS 7 running on iPhone and iPad. Its Linux kernel implementation is available for use in desktops and servers. In the world of High Performance Computing Clusters, MPI is the de facto standard for achieving communication between various nodes present in the cluster. MPI supports different transport layer protocols over Ethernet (e.g., TCP, iWARP, UDP, raw Ethernet frames, etc.), shared memory, and InfiniBand. The way most HPC are implemented today, they have a primary high bandwidth and low latency network for data communication (usually InfiniBand) and a secondary network for backup, fall back or management purposes. In the majority cases, it is the network that causes bottleneck for the jobs running on HPC; thus, networking technologies used in HPCs are continually growing. In this paper, we explore the possibility of combining these two technologies in order to achieve high performance in an HPC environment by increasing the network throughput by intelligently utilizing all the different types of network interfaces that nodes in HPCs have. We also address various performance issues that may arise with the use of MPTCP in MPI.

Read the paper · More papers on PaperTik