|
ABSTRACT
In Layer Four switching, the route and resources allocated to a packet are determined by the destination address as well as other header fields of the packet such as source address, TCP and UDP port numbers. Layer Four switching unifies firewall processing, RSVP style resource reservation filters, QoS Routing, and normal unicast and multicast forwarding into a single framework. In this framework, the forwarding database of a router consists of a potentially large number of filters on key header fields. A given packet header can match multiple filters, so each filter is given a cost, and the packet is forwarded using the least cost matching filter.In this paper, we describe two new algorithms for solving the least cost matching filter problem at high speeds. Our first algorithm is based on a grid-of-tries construction and works optimally for processing filters consisting of two prefix fields (such as destination-source filters) using linear space. Our second algorithm, cross-producting, provides fast lookup times for arbitrary filters but potentially requires large storage. We describe a combination scheme that combines the advantages of both schemes. The combination scheme can be optimized to handle pure destination prefix filters in 4 memory accesses, destination-source filters in 8 memory accesses worst case, and all other filters in 11 memory accesses in the typical case.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
M. Bailey et al. PathFinder. Proceedings of OSDI 94.
|
| |
2
|
S. Bradner. Next generation routers overview. Proc. of Nctworld {nterop 97.
|
| |
3
|
|
 |
4
|
|
 |
5
|
|
| |
6
|
|
 |
7
|
Dan Decasper , Zubin Dittia , Guru Parulkar , Bernhard Plattner, Router plugins: a software architecture for next generation routers, Proceedings of the ACM SIGCOMM '98 conference on Applications, technologies, architectures, and protocols for computer communication, p.229-240, August 31-September 04, 1998, Vancouver, British Columbia, Canada
|
| |
8
|
S. Deering and R. }linden. Internet protocol, Version 6 (IPv6) specification RFC 1883. http: //ds. int erni c .net/rf c/rf c 1883. txt.
|
 |
9
|
Mikael Degermark , Andrej Brodnik , Svante Carlsson , Stephen Pink, Small forwarding tables for fast routing lookups, Proceedings of the ACM SIGCOMM '97 conference on Applications, technologies, architectures, and protocols for computer communication, p.3-14, September 14-18, 1997, Cannes, France
|
| |
10
|
Digital Electronics Corporation. The DEC Alpha. http://www.dec.com.
|
 |
11
|
Dawson R. Engler , M. Frans Kaashoek, DPF: fast, flexible message demultiplexing using dynamic code generation, Conference proceedings on Applications, technologies, architectures, and protocols for computer communications, p.53-59, August 28-30, 1996, Palo Alto, California, United States
|
| |
12
|
lntel. The pentium processor. (www.pentium.com.)
|
| |
13
|
Intel. The Vtune performance measurement tool. (www. intel, com/design/perftool/vtune)
|
 |
14
|
Craig Labovitz , G. Robert Malan , Farnam Jahanian, Internet routing instability, Proceedings of the ACM SIGCOMM '97 conference on Applications, technologies, architectures, and protocols for computer communication, p.115-126, September 14-18, 1997, Cannes, France
|
 |
15
|
T. V. Lakshman , D. Stiliadis, High-speed policy-based packet forwarding using efficient multi-dimensional range matching, Proceedings of the ACM SIGCOMM '98 conference on Applications, technologies, architectures, and protocols for computer communication, p.203-214, August 31-September 04, 1998, Vancouver, British Columbia, Canada
|
| |
16
|
B. Lampson, V. Srinivasan, and G. Varghese. IP Lookups using Multiway and Multicolumn Search. Proc. lnfocom 98, March 1998.
|
| |
17
|
S. McCanne and V. Jacobson. The Berkeley Path Finder. Proc. of Winter USENIX 1993.
|
| |
18
|
|
| |
19
|
J. McQuillan. Layer 4 Switching. Data Communications, October 21, 1997
|
| |
20
|
Merit Inc. IPMA statistics. (nic.merit.edu.)
|
| |
21
|
P. Newman, G. Minshall, and L. Huston. IP Switching and Gigabit Routcrs. {EEE Communications Magazine, January 1997.
|
| |
22
|
|
| |
23
|
C. Partridge. Locality and route caches. In NSF Workshop on {nternet Statistics Measurement and Analysis, San Diego, CA, USA, February 1996.
|
| |
24
|
|
| |
25
|
|
| |
26
|
S. Suri, G. Varghese, M. Waldvogel, and V. Srinivasan. Layer Four Switching using Rectangle and Tuple Search. In preparation, 1998.
|
 |
27
|
|
| |
28
|
Torrent systems, Inc. http://www.torrent.com
|
| |
29
|
P. Tsuchiya. A search algorithm for table entries with non-contiguous wildcarding. Unpublished report, Bellcore.
|
| |
30
|
J Turner. Design of a Gigabit ATM Switch. Proc. $IGCOMM 97, October 1997.
|
 |
31
|
Marcel Waldvogel , George Varghese , Jon Turner , Bernhard Plattner, Scalable high speed IP routing lookups, Proceedings of the ACM SIGCOMM '97 conference on Applications, technologies, architectures, and protocols for computer communication, p.25-36, September 14-18, 1997, Cannes, France
|
| |
32
|
L. Zhang et al. RSVP: A New Resource Reservation Protocol. {EEE Networks Magazine, Sept 1993.
|
CITED BY 60
|
|
|
|
|
|
|
|
Vijay Sundaram , Abhishek Chandra , Pawan Goyal , Prashant Shenoy , Jasleen Sahni , Harrick Vin, Application performance in the QLinux multimedia operating system, Proceedings of the eighth ACM international conference on Multimedia, p.127-136, October 2000, Marina del Rey, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Sumeet Singh , Florin Baboescu , George Varghese , Jia Wang, Packet classification using multidimensional cutting, Proceedings of the 2003 conference on Applications, technologies, architectures, and protocols for computer communications, August 25-29, 2003, Karlsruhe, Germany
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Yin Zhang , Sumeet Singh , Subhabrata Sen , Nick Duffield , Carsten Lund, Online identification of hierarchical heavy hitters: algorithms, evaluation, and applications, Proceedings of the 4th ACM SIGCOMM conference on Internet measurement, October 25-27, 2004, Taormina, Sicily, Italy
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fang Yu , T. V. Lakshman , Martin Austin Motoyama , Randy H. Katz, SSA: a power and memory efficient scheme to multi-match packet classification, Proceedings of the 2005 symposium on Architecture for networking and communications systems, October 26-28, 2005, Princeton, NJ, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Nadia Shalaby , Andy Bavier , Yitzchak Gottlieb , Scott Karlin , Larry Peterson , Xiaohu Qie , Tammo Spalink , Mike Wawrzoniak, Building extensible routers using network processors: Research Articles, Software—Practice & Experience, v.35 n.12, p.1155-1194, October 2005
|
|
|
|
|
|
Duo Liu , Bei Hua , Xianghui Hu , Xinan Tang, High-performance packet classification algorithm for many-core and multithreaded network processor, Proceedings of the 2006 international conference on Compilers, architecture and synthesis for embedded systems, October 22-25, 2006, Seoul, Korea
|
|
|
|
|
|
|
|
|
Sarang Dharmapurikar , Haoyu Song , Jonathan Turner , John Lockwood, Fast packet classification using bloom filters, Proceedings of the 2006 ACM/IEEE symposium on Architecture for networking and communications systems, December 03-05, 2006, San Jose, California, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Haipeng Cheng , Zheng Chen , Bei Hua , Xinan Tang, Scalable packet classification using interpreting: a cross-platform multi-core solution, Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming, February 20-23, 2008, Salt Lake City, UT, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Motasem Aldiab , Emi Garcia-Palacios , Danny Crookes , Sakir Sezer, Packet classification by multilevel cutting of the classification space: an algorithmic-architectural solution for IP packet classification in next generation networks, Journal of Computer Systems, Networks, and Communications, 2008, p.1-14, January 2008
|
|
|
|
|
|
|
|
|
|
|