A Middleware-Level Parallel Transfer Technique over Multiple Network Interfaces
Nader Mohamed, Jameela Al‐Jaroodi, Hong Jiang, David R. Swanson · 2003
Network middleware is a software layer that provides abstract network APIs to hide the low-level technical details from users. Existing network middleware support single network interface and link (channel) message transfers. In this paper, we describe a middleware-level parallel transfer technique that utilizes multiple network interface units that may be connected through multiple net-works. A prototype socket called MuniSocket (Multiple Network Interface Socket) has been implemented to provide this functionality. MuniSocket pro-vides parallel message fragmentation and reconstruction mechanisms in addi-tion to load balancing. It operates on any reliable transport protocol such as TCP and transparently provides an expandable high bandwidth solution that (1) re-duces message transfer time, (2) provides fault tolerance, and (3) facilitates dy-namic load balancing among the underlying multiple networks. The experimen-tal evaluation of MuniSocket illustrates good performance gains, where a peak bandwidth of 187Mbps was achieved on two fast Ethernet networks. Key Words: Middleware, socket, parallel data transfer, and load balancing 1.