Multi-layer SDN Flow Table Segmentation for Packet Forwarding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In existing Software Defined Networking (SDN) switches, storing and matching flow tables can be inefficient, especially with large tables, as each packet requires traversal of all entries, leading to low forwarding efficiency.
Innovation Solution
The flow table is divided into multi-layer tables based on classes, where each layer corresponds to a specific data structure such as Radix trees, Hash tables, or Access Control Lists, allowing for sequential searching and matching, reducing the need to traverse the entire table for packet forwarding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a large flow table is used to store all flow entries, then the completeness of packet forwarding rules is improved, but the time required to traverse and match all entries increases significantly
Solution Approach 1:
The patent divides a large flow table into multiple sub-flow tables based on flow table entry attributes (such as matching fields or priority levels). Each sub-flow table stores a portion of the flow entries, allowing the switching device to search within a smaller subset rather than traversing the entire large flow table, thus reducing matching time while maintaining completeness of forwarding rules.
Solution Approach 2:
The patent introduces a hierarchical dimension to the flow table structure by organizing sub-flow tables in layers. The switching device can first perform coarse-grained matching at the sub-flow table level, then proceed to fine-grained matching within specific subtables. This multi-dimensional organization transforms a single large linear search into a structured hierarchical search, significantly improving matching efficiency.
2Reliability
If all flow table entries are traversed sequentially, then no matching entry is missed, but the forwarding efficiency decreases with large tables
Solution Approach 1:
By segmenting the flow table into multiple sub-flow tables, the patent enables the switching device to limit the search scope to relevant subtables based on packet characteristics. This segmentation maintains matching accuracy by ensuring all relevant entries are covered while improving efficiency by avoiding unnecessary traversal of unrelated entries.
Solution Approach 2:
The patent performs preliminary classification of flow entries into different sub-flow tables based on their attributes before packet arrival. This preliminary organization allows the switching device to quickly identify which subtables contain relevant matching entries, eliminating the need to traverse the entire flow table and thereby improving forwarding efficiency without sacrificing matching accuracy.
Data Source
AI summary
A method for forwarding a Software Defined Networking (SDN) packet, applied in a data forwarding device in a SDN network, comprising: dividing a flow table with a plurality of flow table entries according to a class in advance, and obtaining multi-layer flow tables serial in sequence; wherein each layer of flow table corresponds to a class of flow table; and receiving a SDN packet, searching each layer of flow table in sequence according to a precedence order of the multi-layer flow tables, or directly pointing to a specified flow table to search a matched flow table entry, and processing the SDN packet.


