Title :
A Packet Classifier Using a Parallel Branching Program Machine
Author :
Nakahara, Hiroki ; Sasao, Tsutomu ; Matsuura, Munehiro
Author_Institution :
Kyushu Inst. of Technol., Iizuka, Japan
Abstract :
A branching program machine (BM) is a special purpose processor that uses only two kinds of instructions: Branch and output instructions. Thus, the architecture for the BM is much simpler than that for a general purpose processor (MPU). Since the BM uses the dedicated instructions for a special purpose application, it is faster than the MPU. This paper presents a packet classifier using a parallel branching program machine (PBM). To reduce computation time and code size, first, a set of rules for the packet classifier is partitioned into groups. Then, they are evaluated by the PBM in parallel. Also, this paper shows a method to estimate the number of necessary BMs to realize the packet classifier. The PBM32 consisting of 32 BMs has been implemented on an FPGA, and compared with the Intel´s Core2Duo@1.2GHz. The PBM32 is 8.1-11.1 times faster than the Core2Duo, and the PBM32 requires only 0.2-10.3 percent of the memory for the Core2Duo.
Keywords :
microprocessor chips; parallel machines; parallel processing; pattern classification; FPGA; branch instruction; output instruction; packet classifier; parallel branching program machine; Boolean functions; Clocks; Data structures; Internet; Protocols; Registers; Routing; BDD; Branching Program Machine; Packet Classification; Special Purpose Processor;
Conference_Titel :
Digital System Design: Architectures, Methods and Tools (DSD), 2010 13th Euromicro Conference on
Conference_Location :
Lille
Print_ISBN :
978-1-4244-7839-2
DOI :
10.1109/DSD.2010.18