120 likes | 260 Views
OC-3072 Packet Classification Using BDDs and Pipelined SRAMs. Author : Amit Prakash, Adnan Aziz Publisher: Hot Interconnects 9, 2001. Presenter: Hsin-Mao Chen Date: 2010/09/15. Outline. Introduction Background Classifier Architecture Reducing the Number of Levels Updates
E N D
OC-3072 Packet Classification Using BDDs and Pipelined SRAMs Author: Amit Prakash, Adnan Aziz Publisher: Hot Interconnects 9, 2001. Presenter: Hsin-Mao Chen Date:2010/09/15
Outline • Introduction • Background • Classifier • Architecture • Reducing the Number of Levels • Updates • Hardware implementation
Introduction • Multiprotocol Label Switching (MPLS) Label lookup and label switching were faster than a routing table lookup because they could take place directly within the switched fabric.
Introduction • Multiprotocol Label Switching (MPLS) The major goal of MPLS development - the increase of routing speed - is no longer relevant because of the usage of ASIC, TCAM and CAM-based switching.
Background • Binary Decision Diagrams
F = X0X1X2+X0X1X2+X0X1X2+X0X1X2 = X0X1+X0(X1X2+X1X2) Classifier Forwarding Table
Architecture If we allocate 16K BDD nodes for each level, we can accommodate 60K prefixes with room to spare. Hence it suffices for each SRAM to be 32K x 14 bits in size.
Reducing the Number of Levels • If we are allocating 16K nodes for each level, we do not need the first 14 SRAMs. • Almost prefixes are less than or equal to 24 bits. So in most cases we can get the result after the 24-th level.
Updates • When a prefix is changed, the number of nodes in the original BDD that change is always less than equal to the number of levels.
Hardware implementation • A forwarding table for MAE-WEST obtained from CAIDA 57668 prefixes and 62 output ports