CN103731354B - One kind is based on self-defined multilevel flow table fast matching method - Google Patents
One kind is based on self-defined multilevel flow table fast matching method Download PDFInfo
- Publication number
- CN103731354B CN103731354B CN201310726035.9A CN201310726035A CN103731354B CN 103731354 B CN103731354 B CN 103731354B CN 201310726035 A CN201310726035 A CN 201310726035A CN 103731354 B CN103731354 B CN 103731354B
- Authority
- CN
- China
- Prior art keywords
- flow table
- class set
- equivalence class
- packet
- self
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
One kind is based on self-defined multilevel flow table fast matching method, comprises the following steps:(1)If being classified to obtain several different equivalence class set according to dry type by a flow table, then these equivalence class set are classified according to other types to obtain some small equivalence class set;(2)By step(1)In equivalence class by level carry out hash mappings;(3)When packet carries out flow table matching, the equivalence class set corresponding to it is found by key assignments.The present invention reduces packet and the matching times of flow table item and ensures the correctness of whole packet lookup result in each flow table compared with prior art.
Description
Technical field
The present invention relates to one kind to be based on self-defined multilevel flow table fast matching method.
Background technology
Either firewall or OpenFlow, in the self-defined lookup of this multilist, multilevel flow table streamline it is general
Thought has been incorporated into.One complete rule is likely to be split some, and is handed down to respectively not in the form of flow table item
Same flow table.And needed between these flow table items by one mark even mutually carry out it is interrelated.This mark is different
Possible appellation is different in customized multilevel flow table, but its function is identical.Metadata is called in the present invention.So
And these self-defined multilevel flow tables have very strong flexibility, the matching field type and flow table item number of each flow table are can
It is customized to carry out as needed.Therefore, these self-defined multilevel flow table matching algorithms are all linear searches at this stage, i.e., by
Item is matched, and its efficiency is that comparison is low, it is difficult to meet the needs of current network.
The content of the invention
Goal of the invention:The purpose of the present invention is to provide one kind in view of the shortcomings of the prior art and be based on self-defined multilevel flow table
Fast matching method, packet is effectively reduced in whole matching process to the matching times of flow table item.
Technical scheme:In order to realize the purpose of invention, the invention discloses one kind to be based on quick of self-defined multilevel flow table
Method of completing the square, comprise the following steps:
(1)If a flow table is classified to obtain several different equivalence class set according to dry type, then by these
Equivalence class set classifies to obtain some small equivalence class set according to other types;
(2)By step(1)In equivalence class by level carry out hash mappings;
(3)When packet carries out flow table matching, the equivalence class set corresponding to it is found by key assignments.
Preferably, in order to be further ensured that matching efficiency and make it that the division of equivalence class is simpler and has efficiency,
Step of the present invention(1)If dry type in is three classes, and the first kind is packet entry port, and the second class is metadata, the 3rd
Class is then the matching domain of packet.
Preferably, for higher, the of the invention same equivalence of the search efficiency after entering equivalence class in packet
Flow table item in class set arranges according to priority.
Preferably, in order to further lift lookup matching efficiency, step of the invention(3)Comprise the following steps:
(3.1)Packet it is calculated by corresponding hash functions according to its metadata value corresponding to equivalence
The address of class set;
(3.2)Its step is found by packet entry port value(3.1)Middle class set of equal value closes corresponding small equivalence
Class set, so as to obtain its matching result.
Beneficial effect:The present invention is compared with prior art:Reduce the matching times of packet flow table item in each flow table
And ensure the correctness of whole packet lookup result.
Brief description of the drawings
Fig. 1 is the division figure of equivalence class;
Fig. 2 is ingress port hash Function Mapping figures;
Fig. 3 is the present invention based in the flow chart of self-defined multilevel flow table fast matching method.
Embodiment
The present invention is further described below in conjunction with the accompanying drawings.
As shown in figure 1, flow table is divided into by three first order equivalence class set according to metadata values;Again by first
The set of one-level equivalence class is divided into two second level equivalence class set according to packet entry port, other first order equivalence class sets
Close and divided by this principle;Second level equivalence class set carries out value arrangement according to the priority of flow table item.
As shown in Fig. 2 equivalence class set is subjected to hash mappings, and the flow table in same equivalence class set by level
Arrange according to priority, looked into according to the hash key assignments mapped with regard to the equivalence class set corresponding to finding it.
As shown in figure 3, the process entirely matched is to match thresholding according to the metadata of packet to find corresponding the
One-level equivalence class set, corresponding second level equivalence class set is found further according to packet entry port value, finally at this
Second level equivalence class set carries out lookup matching;Search matching to complete, judge whether to jump to next flow table, enter if redirecting
Enter next circulation, otherwise terminate to search matching.
Lookup matching process more than reduces the matching times of the flow table item in whole flow table matching process, accelerates
The lookup speed of whole self-defined multilevel flow table.
Claims (3)
1. one kind is based on self-defined multilevel flow table fast matching method, it is characterised in that comprises the following steps:
(1) if being classified to obtain several different equivalence class set according to dry type by a flow table, then these are of equal value
Class set classifies to obtain some small equivalence class set according to other types;
(2) equivalence class in step (1) is subjected to hash mappings by level;
(3) when packet carries out flow table matching, the equivalence class set corresponding to it is found by key assignments;
Flow table item in the step (1) in same equivalence class set arranges according to priority.
2. one kind as claimed in claim 1 is based on self-defined multilevel flow table fast matching method, it is characterised in that step (1)
If dry type in is three classes, and the first kind is packet entry port, and the second class is metadata, and the 3rd class is then packet
Matching domain.
3. one kind as claimed in claim 2 is based on self-defined multilevel flow table fast matching method, it is characterised in that step (3)
Comprise the following steps:
(3.1) packet calculates the class set of equal value corresponding to locating it according to its metadata value by corresponding hash functions
The address of conjunction;
(3.2) class set of equal value in its step (3.1) is found by packet entry port value and closes corresponding small equivalence class set,
So as to obtain its matching result.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310726035.9A CN103731354B (en) | 2013-12-25 | 2013-12-25 | One kind is based on self-defined multilevel flow table fast matching method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310726035.9A CN103731354B (en) | 2013-12-25 | 2013-12-25 | One kind is based on self-defined multilevel flow table fast matching method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103731354A CN103731354A (en) | 2014-04-16 |
CN103731354B true CN103731354B (en) | 2018-01-26 |
Family
ID=50455289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310726035.9A Active CN103731354B (en) | 2013-12-25 | 2013-12-25 | One kind is based on self-defined multilevel flow table fast matching method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103731354B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105490943B (en) * | 2014-09-19 | 2019-02-01 | 杭州华为数字技术有限公司 | A kind of processing method of flow entry, controller and interchanger |
CN105591909A (en) * | 2015-10-21 | 2016-05-18 | 杭州华三通信技术有限公司 | Method and device for improvement of message forwarding performance |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6876654B1 (en) * | 1998-04-10 | 2005-04-05 | Intel Corporation | Method and apparatus for multiprotocol switching and routing |
CN101540723A (en) * | 2009-04-20 | 2009-09-23 | 杭州华三通信技术有限公司 | Flow stream searching method and device |
CN101572670A (en) * | 2009-05-07 | 2009-11-04 | 成都市华为赛门铁克科技有限公司 | Data packet processing method based on flow table, device and network system |
CN102594664A (en) * | 2012-02-02 | 2012-07-18 | 杭州华三通信技术有限公司 | Flow forwarding method and device |
CN102843298A (en) * | 2012-09-12 | 2012-12-26 | 盛科网络(苏州)有限公司 | Method and system for achieving priority of Openflow switchboard chip flow tables |
CN102957603A (en) * | 2012-11-09 | 2013-03-06 | 盛科网络(苏州)有限公司 | Multilevel flow table-based Openflow message forwarding method and system |
CN103441927A (en) * | 2013-09-12 | 2013-12-11 | 盛科网络(苏州)有限公司 | Message processing method and device |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8015315B2 (en) * | 2007-03-09 | 2011-09-06 | Cisco Technology, Inc. | Compression of IPV6 addresses in a netflow directory |
-
2013
- 2013-12-25 CN CN201310726035.9A patent/CN103731354B/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6876654B1 (en) * | 1998-04-10 | 2005-04-05 | Intel Corporation | Method and apparatus for multiprotocol switching and routing |
CN101540723A (en) * | 2009-04-20 | 2009-09-23 | 杭州华三通信技术有限公司 | Flow stream searching method and device |
CN101572670A (en) * | 2009-05-07 | 2009-11-04 | 成都市华为赛门铁克科技有限公司 | Data packet processing method based on flow table, device and network system |
CN102594664A (en) * | 2012-02-02 | 2012-07-18 | 杭州华三通信技术有限公司 | Flow forwarding method and device |
CN102843298A (en) * | 2012-09-12 | 2012-12-26 | 盛科网络(苏州)有限公司 | Method and system for achieving priority of Openflow switchboard chip flow tables |
CN102957603A (en) * | 2012-11-09 | 2013-03-06 | 盛科网络(苏州)有限公司 | Multilevel flow table-based Openflow message forwarding method and system |
CN103441927A (en) * | 2013-09-12 | 2013-12-11 | 盛科网络(苏州)有限公司 | Message processing method and device |
Non-Patent Citations (1)
Title |
---|
openflow-spec-v1.3.0;Open Networking Foundation;《openFlow Switch Specification》;20120625;第10页第5.1-5.2节,图a * |
Also Published As
Publication number | Publication date |
---|---|
CN103731354A (en) | 2014-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10764181B2 (en) | Pipelined evaluations for algorithmic forwarding route lookup | |
US11418632B2 (en) | High speed flexible packet classification using network processors | |
US9680738B2 (en) | Tracking prefixes of values associated with different rules to generate flows | |
US20170237664A1 (en) | Performing a multi-stage lookup to classify packets | |
US20160337247A1 (en) | Network controller security monitor | |
CN104580027A (en) | OpenFlow message forwarding method and equipment | |
US20150078384A1 (en) | Tracking Prefixes of Values Associated with Different Rules to Generate Flows | |
US9686185B2 (en) | Generating flows using common match techniques | |
CN106664261A (en) | Method, device, and system for configuring flow entries | |
CN103220255B (en) | It is a kind of to realize the method and device that reversal path of unicast forwarding URPF is checked | |
CN105591914B (en) | Openflow flow table lookup method and device | |
CN104579998B (en) | A kind of load balance process device | |
AU2003234433A1 (en) | Method and apparatus to improve network routing | |
CN103731354B (en) | One kind is based on self-defined multilevel flow table fast matching method | |
WO2016106506A1 (en) | Routing method and device | |
CN103763198A (en) | Data packet classification method | |
CN101848248A (en) | Rule searching method and device | |
JP2017537566A (en) | Routing table maintenance method, apparatus and storage medium | |
CN102195853B (en) | Method and device for storing bitmap | |
US9391884B2 (en) | Consistent hashing using exact matching with application to hardware load balancing | |
CN100472427C (en) | Data packet recursive flow sorting method | |
CN103581020B (en) | The method of a kind of message forwarding, Apparatus and system | |
Zhou et al. | Large-scale packet classification on FPGA | |
US9294399B2 (en) | Method for learning media access control address, network device, and system | |
CN103581007A (en) | Message classifying and looking-up method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |