OpenFlow Switch Hierarchical QoS Scheduler Implementation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
OpenFlow switches are limited to implementing single-layer queue scheduling, unable to support Hierarchical Quality of Service (HQoS) due to the execution of queuing and queue scheduling functions only at the end of the packet processing flow.
Innovation Solution
The method involves executing an instruction in the flow table to call a scheduler and add packets to a specified queue within the scheduler, allowing for multi-layer queue scheduling by using a scheduler ID and queue ID, and enabling the OpenFlow controller to manage scheduler table configurations and errors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If queuing and queue scheduling functions are executed only at the end of packet processing flow, then the OpenFlow switch can implement single-layer QoS, but it cannot support multi-layer hierarchical QoS (HQoS)
Solution Approach 1:
The patent divides the packet processing flow into multiple stages, with queuing and queue scheduling operations inserted at intermediate stages rather than only at the end. This segmentation allows different flow tables to perform different QoS functions at different layers, enabling hierarchical QoS implementation while maintaining manageable processing complexity through structured division of labor.
Solution Approach 2:
The patent implements nested QoS processing by allowing flow tables at different hierarchical levels to invoke queuing and scheduling operations. Higher-level flow tables can define coarse-grained QoS policies while lower-level flow tables provide fine-grained control, creating a nested structure where multiple layers of QoS management are embedded within each other, thus supporting HQoS without proportionally increasing overall system complexity.
2Adaptability or versatility
If multiple schedulers are used for multi-layer queue scheduling, then HQoS can be implemented, but the device complexity increases
Solution Approach 1:
The patent designs the scheduler component with multi-functionality, where a single scheduler infrastructure can handle both single-layer and multi-layer QoS requirements. The scheduler is capable of operating at different hierarchical levels and can be configured to perform various queue scheduling algorithms, thus providing universal QoS support without requiring separate dedicated schedulers for each layer, thereby limiting the increase in device complexity.
Solution Approach 2:
The patent introduces dynamic scheduler configuration where the number and arrangement of schedulers can be flexibly adjusted based on the required QoS hierarchy. The system can adaptively create or deactivate schedulers at different flow table levels, allowing HQoS implementation only when needed, thus avoiding permanent complexity increases for systems that may not always require multi-layer QoS support.
Data Source
Figure 1~2
Figure 3~4
Figure 5~8
AI summary
Provided are a method and device for implementing QoS in an OpenFlow network. The method includes that: for a packet entering an OpenFlow switch, when a flow table is successfully matched, an instruction which is used for calling a scheduler and adding the packet into a specified queue in the scheduler is executed; and under the triggering of the instruction, queue scheduling is managed by using the scheduler. By using the technical means provided by the disclosure, the technical problem in related art that the OpenFlow switch cannot implement Hierarchical QoS (HQoS) is solved, so that the OpenFlow switch may implement both single-layer QoS and HQoS.