MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Trading packet headers for packet processing (1996) [26 citations — 8 self]

Download:
Download as a PDF | Download as a PS
by George Varghese
IEEE Transactions on Networking
ftp://wuarchive.wustl.edu/doc/techreports/wustl.edu/cs/1994/wucs-94-16.ps.Z
Add To MetaCart

Abstract:

In high speed networks, packet processing is relatively expensive while bandwidth is cheap. This begs the question: what fields can be added to packets to make packet processing easier? By exploring this question, we devise a number of novel mechanisms to speed up packet processing. With the advent of new standards for the Data Link, Network, and Transport layers, we believe there is an opportunity to apply these techniques to improve the performance of real protocols. First, we suggest adding a data manipulation header to an easily accessible portion of each packet. This header contains pointers to fields (in various layers) required for data manipulation. This information allows implementations to efficiently combine data manipulation steps (e.g., encryption and copying) in a structured fashion. Second, we suggest adding index fields to protocol identifiers at all layers (e.g.,, connection identifiers, network addresses, DSAPs) to reduce lookup costs and generic protocol processing. Several new ideas to utilize these index fields (threaded indexing, index passing, and source hashing) are proposed. Virtual Circuit Identifiers (VCIs) have been long used to simplify lookup and packet processing in virtual circuit. In source hashing and threaded indexing, the added indices essentially serve as VCIs, but for flows in a datagram network. In source hashing, for example, the "VCI " is a consistent random label chosen by the source. Our new methods provide the benefits of normal VCIs without requiring a round trip delay for set up. Our methods can lower worst case datagram lookup times from O(log(n)) to O(1), which may be important for Gigabit routers.

Citations

5825 Introduction to Algorithms – Cormen, Leiserson, et al. - 2001
939 Analysis and Simulation of a Fair Queueing Algorithm – Demers, Keshav, et al. - 1989
864 Implementing remote procedure calls – Birrell, Nelson - 1984
793 Computer Networks – Tanenbaum - 1996
584 End-to-end arguments in system design – Saltzer, Reed, et al. - 1984
499 Virtual clock: A new traffic control algorithm for packet switching networks – Zhang - 1990
296 An analysis of TCP processing overhead – Clark, Jacobson, et al. - 1989
208 C.—“Gigabit Networking – Partridge - 1994
186 Efficient fair queuing using deficit round robin – Shreedhar, Varghese - 1995
160 Packet trains: Measurements and a new model for computer network traffic – Jain, Routhier - 1986
160 Hints for Computer System Design – Lampson - 1983
127 Increasing network throughput by integrating protocol layers – Abbott, Peterson - 1993
81 A high-performance network architecture for a PA-RISC workstation – Banks, Prudence - 1993
36 A comparison of hashing schemes for address lookup in computer networks – Jain - 1992
16 Congestion Control in TCP/IP Internetworks – Nagle - 1984
13 VAXclusters: A Closely Coupled Distributed System – Kronenberg, Levy, et al. - 1986
6 Architecural considerations for a new generation of protocols – Clark - 1990