Data structures in Pascal
IP lookups using multiway and multicolumn search
IEEE/ACM Transactions on Networking (TON)
Packet classification on multiple fields
Proceedings of the conference on Applications, technologies, architectures, and protocols for computer communication
Scalable packet classification
Proceedings of the 2001 conference on Applications, technologies, architectures, and protocols for computer communications
Efficient Mapping of Range Classifier into Ternary-CAM
HOTI '02 Proceedings of the 10th Symposium on High Performance Interconnects HOT Interconnects
Packet classification using multidimensional cutting
Proceedings of the 2003 conference on Applications, technologies, architectures, and protocols for computer communications
Packet Classification Using Extended TCAMs
ICNP '03 Proceedings of the 11th IEEE International Conference on Network Protocols
A high-performance architecture and BDD-based synthesis methodology for packet classification
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
High-speed IP routing with binary decision diagrams based hardware address lookup engine
IEEE Journal on Selected Areas in Communications
Fast and scalable packet classification
IEEE Journal on Selected Areas in Communications
Survey and taxonomy of IP address lookup algorithms
IEEE Network: The Magazine of Global Internetworking
Algorithms for packet classification
IEEE Network: The Magazine of Global Internetworking
An evaluation of the key design criteria to achieve high update rates in packet classifiers
IEEE Network: The Magazine of Global Internetworking
Hi-index | 0.24 |
To support advanced functions such as quality of service provisioning, firewall, and virtual private networks, today's IP routers need to classify incoming packets into flows. The classification problem becomes extremely difficult when the system needs to process millions of packets per second, matching them against a filter database with tens of thousands of rules. Dynamic updates to the filter database and scalability to IPv6 with 128-bit addresses pose great challenges to the classification methods. We adopt the two-stage classification approach of Baboescu et al. [F. Baboescu, S. Singh, G. Varghese, Packet classification for core routers: is there an alternative to CAMs?, IEEE INFOCOM 2003.] The first stage determines the best matching source and destination prefix pair, and the second stage determines the highest priority matching filter by comparing the remaining fields against a short list of candidate rules in parallel. The first stage 2-D search problem is reduced to a pseudo 1-D problem by a process called filter decomposition. The decomposed filters are organized as a height-balanced search tree. The search operation is speeded up by parallel processing techniques to achieve a throughput of one packet per memory cycle. Our method is scalable to large filter databases and IPv6. It also allows incremental updates to the data structures.