Flow Table Aging Using Linked-List Access Order
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional flow table aging methods in OpenFlow networks are inefficient due to the need to compare time stamps of each entry, leading to long processing times and increased resource consumption, especially when dealing with large numbers of flow tables.
Innovation Solution
A method and device for flow table aging that utilizes a data linked list to store flow identifiers based on access timing, allowing for the timely release of entries by deleting the flow identifier at the head of the list when a threshold is reached, thereby reducing the need for time-consuming stamp comparisons.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If flow table aging is done by comparing time stamps of each entry, then the aging can be performed systematically, but the processing time increases and aging efficiency deteriorates
Solution Approach 1:
The patent applies preliminary action by pre-establishing a data linked list that stores flow identifiers in chronological order of their creation. This allows the system to directly access the oldest entry (at the head of the list) without needing to compare time stamps of all entries, thus maintaining aging accuracy while significantly reducing processing time.
Solution Approach 2:
The patent segments the flow table management by separating the storage of flow identifiers (in the data linked list) from the flow table entries themselves. This segmentation allows independent optimization of the aging mechanism, enabling efficient retrieval of oldest entries through the linked list structure without iterating through all flow table entries.
2Reliability
If flow table aging is done by comparing time stamps of each entry, then the aging process can be thorough, but the resource consumption increases
Solution Approach 1:
The system performs preliminary action by pre-organizing flow identifiers in a linked list with chronological ordering when flows are first created. This preliminary organization ensures aging completeness is maintained while reducing resource consumption during the actual aging process, as the system only needs to access the head of the list rather than scanning all entries.
Solution Approach 2:
The data linked list structure provides self-service functionality by automatically maintaining the chronological order of flow identifiers. The structure inherently tracks the oldest entry through its head pointer, eliminating the need for external comparison operations and reducing computational resources required for the aging process.
3Quantity of substance
If the number of flow identifiers increases beyond the threshold, then more data can be tracked, but the flow table capacity is exceeded and access efficiency deteriorates
Solution Approach 1:
The system applies preliminary action by continuously maintaining the data linked list in chronological order and proactively identifying when the threshold is reached. This allows the system to perform timely aging operations before the flow table becomes overloaded, preserving data access efficiency even as the quantity of tracked data increases.
Solution Approach 2:
The system uses feedback by monitoring the number of flow identifiers against the preset threshold and triggering aging operations when the threshold is exceeded. This feedback mechanism ensures that the flow table capacity is maintained within acceptable limits, preventing degradation of data access efficiency while allowing maximum utilization of available capacity.
Data Source
AI summary
A flow table aging method, a device, a computer apparatus and a storage medium are provided. The method includes: determining a to-be-released assigned flow identifier stored at a link head position in response to a number of assigned flow identifiers in the data linked list reaching a preset threshold; the data linked list being configured to store assigned flow identifiers corresponding to data addresses in accordance with an access timing sequence, and to store a first association relationship between each assigned flow identifier and a previous assigned flow identifier and a second association relationship between the assigned flow identifier and a next assigned flow identifier; deleting the to-be-released assigned flow identifier and the corresponding first and second association relationships, and updating linked list information; and deleting the mapping relationship between the to-be-released assigned flow identifier and the corresponding data address, and initializing the number counted by the target port.


