Flow Table Segmentation for OpenFlow Switch Priority Sorting
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In OpenFlow switches, the frequent sorting of flow entries due to biased priorities leads to increased processing time and sorting cost when recording new flow entries, especially when there are no empty areas available for intermediate storage.
Innovation Solution
A packet processing apparatus with a flow table that allocates flow entries into priority groups and uses an entry management unit to determine the appropriate storage position within these groups, reducing the need for sorting by identifying empty areas within the corresponding priority group for new flow entries.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If flow entries are arranged and held in order of priority with frequent sorting, then packet processing accuracy is improved, but processing time and sorting cost increase
Solution Approach 1:
The flow table is divided into multiple priority groups, with each group containing flow entries of a specific priority level. This segmentation allows the system to maintain priority ordering for accurate packet processing while reducing the scope of sorting operations within each group, thereby decreasing overall processing time and sorting cost.
2Manufacturing precision
If flow entries are sorted by priority, then packet forwarding accuracy is improved, but device complexity increases
Solution Approach 1:
By segmenting the flow table into priority groups and maintaining entries within each group in priority order, the system achieves accurate packet forwarding while simplifying the sorting mechanism. The segmentation reduces the complexity of managing overall flow entry ordering by breaking it into smaller, more manageable groups.
3Stability of the object's composition
If flow entries are frequently sorted to maintain priority order, then flow table organization is improved, but productivity decreases
Solution Approach 1:
Segmenting the flow table into priority groups maintains stable organization within each group while reducing the frequency and scope of sorting operations needed across the entire table. This improves productivity by minimizing the impact of sorting on flow entry recording speed.
Solution Approach 2:
Flow entries are preliminarily organized into appropriate priority groups based on their priority levels before detailed sorting within groups is performed. This preliminary classification reduces the subsequent sorting workload and maintains flow table organization with minimal disruption to recording operations.
Data Source
AI summary
A packet processing apparatus includes: a flow table in which flow entries can be stored in areas allocated in order of priority groups; an entry management unit that determines, upon receiving a new flow entry from a prescribed control apparatus, a storage position in the flow table based on which priority group among the plural priority groups the new flow entry belongs to, and on a level 2 priority that is used for determining position within the priority group; and an entry retrieval unit that scans from the beginning of the flow table, retrieves an entry having match condition(s) that match(es) a received packet, and determines processing to be applied to the received packet.


