Network connection striping by end systems
Dhananjay S. Phatak, Thomas E. Goff · 2006
While it has always been common for servers, and certainly network routers, to have multiple network interfaces, only recently has this feature become more widespread in client machines. With the tremendous growth of the computer and telecommunication industries, many end users now have multiple options for both wired and wireless network connectivity. This trend clearly raises the question of how a client machine can best make use of the addition network resources available to it. This issue is considered in detail by examining the mechanisms and performance implications of network connection striping by end systems. Connection striping can, in principle, be performed at any layer of the network protocol stack. However, to support the general case of internetwork communication it is necessary to exclude methods of connection striping that operate below the network layer. It is also desirable to free applications from dealing with the more tedious details of communication. Therefore, the focus of this work is connection striping at the network and transport layers. The tradeoffs and limitations of possible approaches to connection striping are discussed in both qualitative and analytical terms. In particular, connection striping over heterogenous network paths for bandwidth aggregation is examined in detail. The applicability and expected performance of three connection striping methods are compared: static network layer connection striping, dynamic network layer connection striping, and transport layer connection striping. In general, the results demonstrate that connection striping is more effective and more robust when done higher in the network protocol stack. At the same time, however, interoperability suffers as more invasive modifications are required to both the sending and receiving systems. Theoretical upper limits on the performance of static and dynamic network layer connection striping are derived analytically and validated experimentally. The effectiveness of statically striping a standard TCP connection at the network layer is limited to scenarios where path bandwidth differs by at most a factor of three. When the main limitations of simple static striping are addressed and a standard TCP connection is striped dynamically at the network layer, a loose upper bound is predicted of at most 65% the performance of transport layer striping. The performance of dynamic network layer striping improves when TCP congestion control parameters are adjusted to make the striped connection more aggressive and when intermediate routers use the random early detection (RED) queuing procedure.