Abstract

Packet classification is a essential process in network processors. In this process, the incoming packets are matched against a set of filters and divided into specified streams. Classification methods are either software-based or hardware-based. Despite hardware-based methods, software-based methods are more flexible and have a lower cost. This paper reports on an experiment in which the Hierarchical-trie (H-trie) algorithm, which is a software-based method, was for the first time parallelized using the CPU cluster. The characteristic of this algorithm is building a decision tree with the least memory usage and search complexity. We implemented and executed different scenarios by using MPI and OpenMP and combining them in a system with a single multi-core processor as well as multi-core processor clusters. Our results suggest that an increase in the number of processor cores would linearly increase the speed of classification. Moreover, MPI uses more memory than OpenMP but provides a higher rate of classification. The results of the combined method show that, if the number of processes and threads are equal to the number of processor cores, the maximum speed of packet classification can be achieved. Also, the least classification time and memory usage can be achieved when the sum of processes and threads do not outnumber CPU cores.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call