OpenFlow Switch Hierarchical QoS Scheduler Implementation

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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)

Engineering Contradiction:
ImproveQoS layering capabilityVSAvoidpacket processing flow complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #7Nested doll (Nesting)

2Adaptability or versatility

If multiple schedulers are used for multi-layer queue scheduling, then HQoS can be implemented, but the device complexity increases

Engineering Contradiction:
Improvehierarchical QoS supportVSAvoidscheduler management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

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.

Inventive Principle:
Principle #6Universality (Multi-functionality)

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.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP3029896B1QOS implementation method, apparatus and system in openflow network
Publication Date: 2019.07.24 ZTE CORP
  • EP3029896B1 patent drawingFigure 1~2
  • EP3029896B1 patent drawingFigure 3~4
  • EP3029896B1 patent drawingFigure 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.