| With the development of Internet technology and the increase of Internet applications, packet classification is no longer limited to the traditional five-tuple. Software Defined Network and its implementation, represented by OpenFlow, make the packet classification from five-tuple dimensions to more packet header fields. It is very important that how to design a fast and efficient packet classification algorithm for the development of the Internet and the improvement of the quality of network service.This paper first introduces the background of data packet classification and the research status at home and abroad, expounds the generation and evolution and gives its definition, summarizes its evaluation criteria, and describes the design principle of the packet classification algorithm. Secondly, this paper introduces the OpenFlow network. Using the characteristics of OpenFlow packet classification, we present an OpenFlow algorithm based on bit vector for multiple dimensions. This algorithm exploits different matching algorithms on different fields, and increases the search speed by ignoring some wildcard matching fields resulted from optimizing the order of different matching fields according to the locality of traffic flow. Finally, this paper builds the Open Flow experimental environment, constructs the rule set suitable for OpenFlow packet classification and implents the the proposed method. Experimental results on Open vSwitch show that the proposed algorithm can achieve about two times speedup than the algorithm in Open vSwitch, and 40% speedup and above than the other algorithms extended from five-tuple classifications.This method has significant theoretical and practical value, the improvement of the quality of service network makes the packet classification more and more fine-grained, the method can not only meet the needs of the current network, but also be suitable for kinds of new network architecture according to its good scalability. |