Abstract
Link-striping algorithms are often used to overcome transmission bottlenecks in computer networks. Traditional striping algorithms suffer from two major disadvantages. They provide inadequate load sharing in the presence of variable-length packets, and may result in non-FIFO delivery of data. We describe a new family of link-striping algorithms that solves both problems. Our scheme applies to any layer that can provide multiple FIFO channels. We deal with variable-sized packets by showing how fair-queuing algorithms can be transformed into load-sharing algorithms. Our transformation results in practical load-sharing protocols, and shows a theoretical connection between two seemingly different problems. The same transformation can be applied to obtain load-sharing protocols for links with different capacities. We deal with the FIFO requirement for two separate cases. If a sequence number can be added to each packet, we show how to speed up packet processing by letting the receiver simulate the sender algorithm. If no header can be added, we show how to provide quasi FIFO delivery. Quasi FIFO is FIFO except during occasional periods of loss of synchronization. We argue that quasi FIFO is adequate for most applications. We also describe a simple technique for speedy restoration of synchronization in the event of loss. We develop an architectural framework for transparently embedding our protocol at the network level by striping IP packets across multiple physical interfaces. The resulting stripe protocol has been implemented within the NetBSD kernel. Our measurements and simulations show that the protocol offers scalable throughput even when striping is done over dissimilar links, and that the protocol synchronized quickly after packet loss. Measurements show performance improvements over conventional round-robin striping schemes and striping schemes that do not resequence packets. Some aspects of our solution have been implemented in Cisco's router operating system (IOS 11.3) in the context of Multilink PPP striping.
- BENNETT,J.C.R.,PARTRIDGE, C., AND SHECTMAN, N. 1999. Packet reordering in not pathological behavior. IEEE/ACM Trans. Netw. 7, 6 (Dec.), 789-798. Google Scholar
- BORMAN, C. 1999. The multi-class extension to Multi-Link PPP. RFC 2686. Google Scholar
- CHANDY,K.M.AND LAMPORT, L. 1985. Distributed snapshots: Determining global states of distributed systems. ACM Trans. Comput. Syst. 3, 1 (Feb.), 63-75. Google Scholar
- DEMERS, A., KESHAV, S., AND SHENKER, S. 1989. Analysis and simulation of a fair queuing algorithm. In Proceedings of the ACM Conference on Communications Architectures and Protocols (SIGCOMM '89, Austin, TX, Sept. 19-22), L. H. Landweber, Ed. ACM Press, New York, NY, 3-12. Google Scholar
- DRUSCHEL, P., PETERSON,L.L.,AND DAVIE, B. S. 1994. Experiences with a high-speed network adaptor: A software perspective. SIGCOMM Comput. Commun. Rev. 24, 4 (Oct.), 2-13. Google Scholar
- DUNCANSON, J. 1994. Inverse multiplexing. IEEE Commun. Mag. 32, 4 (Apr.), 34-41.Google Scholar
- FLOYD,S.AND JACOBSON, V. 1995. Link-sharing and resource management models for packet networks. IEEE/ACM Trans. Netw. 3, 4 (Aug.), 365-386. Google Scholar
- FREDETTE, P. H. 1994. The past, present and future of inverse multiplexing. IEEE Commun. Mag. 32, 4 (Apr.), 41-47.Google Scholar
- KUNG,H.T.AND CHAPMAN, A. 1993. The FCVC (Flow Controlled Virtual Channel) proposal for ATM networks. In Proceedings of the International Conference on Network Protocols 116-127.Google Scholar
- MCKENNEY, P. E. 1991. Stochastic fair queueing. Internetworking Res. Exp. 2, 113-131.Google Scholar
- LYNCH,N.A.AND TUTTLE, M. R. 1989. An introduction to input/output automata. CWI Q. 2, 3, 219-246.Google Scholar
- ROMANOV,A.AND FLOYD, S. 1994. Dynamics of TCP traffic over ATM networks. In Proceedings of the ACM Conference on Applications, Technologies, Architectures, and Proto-cols for Computer Communication (SIGCOMM '94). ACM, New York, NY, 79-88. Google Scholar
- SHREEDHAR,M.AND VARGHESE, G. 1995. Efficient fair queueing using deficit round robin. SIGCOMM Comput. Commun. Rev. 25, 4 (Oct.), 231-242. Google Scholar
- THE ATM FORUM TECHNICAL COMMITTEE. 1999. Inverse multiplexing for ATM (IMA) specification. Version 1.1. ATM Forum Doc. AF-PHY-0086.001.Google Scholar
- THEOHARAKIS,V.AND GUERIN, R. 1993. SONET OC12 interface for variable length packets. In Proceedings of the 2nd International Conference on Computer Communications and Net-works (June). 28-30.Google Scholar
- TRAW,C.B.S.AND SMITH, J. 1995. Striping within the network subsystem. IEEE Network 9, 4 (Jan.), 22-29. Google Scholar
- VARGHESE, G. 1993. Self-stabilization by local checking and correction. Ph.D. Dissertation. Massachusetts Institute of Technology, Cambridge, MA. Google Scholar
- RICHARD,W.D.AND FIGERHUT, J. A. 1998. The gigabit switch (WUGS-20) link interface specification. Tech. Rep. ARL-94-17. Computer Science Department, Washington Univer-sity, St. Lous, MO.Google Scholar
Index Terms
- An architecture for packet-striping protocols
Recommendations
Adaptive CSFQ: determining the packet dropping probability adaptively for achieving fair bandwidth allocations in SCORE networks
In stateless core (SCORE) networks, edge routers maintain per-flow state while core routers do not. Core stateless fair queuing (CSFQ) has been proposed for approximating the operation of per-flow queuing techniques in SCORE networks. However, the ...
Analysis on packet resequencing for reliable network protocols
Packets are sometimes disordered in the network. Reliable protocols such as TCP require packets to be accepted, i.e., delivered to the receiving application, in the order they are transmitted at the sender. In order to do so, the receiver's transport ...
Studies on striping and buffer caching issues for the software RAID file system
A software RAID file system is defined as a system that distributes data redundantly across an array of disks attached to each of the workstations connected on a high-speed network. This configuration provides higher throughput and availability compared ...
Comments