Adaptive Load Balancing for Network Traffic Flows
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing load balancing solutions for network traffic flow scheduling are inadequate in high-bandwidth networks, as they fail to maintain packet order within flows, do not consider PE workload, and result in inefficient memory usage due to large flow tables.
Innovation Solution
A method and apparatus for adaptive load balancing that selects a target processing engine (PE) based on a mapping entry and updates the selection based on load thresholds, ensuring packets from the same flow are dispatched to the same PE, using a combination of mapping-based packet dispatching and dynamic flow-specific scheduling status, reducing memory usage by only storing redirected flows.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If hash based load balancing is used to ensure packets from the same flow are dispatched to an identical PE, then flow integrity is maintained, but workload balance deteriorates when facing highly skewed flow size distributions
Solution Approach 1:
The patent implements dynamic load balancing by continuously monitoring PE workload status and adapting flow dispatching decisions in real-time. The system transitions from static hash-based allocation to dynamic allocation that responds to changing workload conditions, allowing the load balancer to redirect flows based on current PE availability and load levels while maintaining flow integrity through consistent PE selection for all packets in a flow.
2Reliability
If flow based load balancing with flow table is used to maintain packet order, then packet integrity is preserved, but memory consumption and searching time increase significantly in high bandwidth networks with millions of concurrent flows
Solution Approach 1:
The patent extracts only the essential flow identification information needed for load balancing decisions rather than maintaining complete flow state information in a large flow table. By extracting and storing only critical mapping data (flow identifier to PE mapping) in a compact structure, the system reduces memory consumption while preserving the ability to maintain packet order and flow integrity.
Solution Approach 2:
The patent uses a compact, lightweight mapping structure that can be quickly updated and replaced compared to traditional large flow tables. This approach employs simpler data structures that consume less memory and can be efficiently managed even with millions of concurrent flows, reducing both memory consumption and searching time.
3Device complexity
If simple load balancing policies like round robin are used at packet level, then implementation simplicity is maintained, but flow packet order cannot be preserved and content oriented applications cannot be supported
Solution Approach 1:
The patent segments the load balancing decision-making process into two distinct levels: flow-level segmentation that identifies and tracks individual flows to maintain packet order, and packet-level segmentation that processes individual packets within each flow. This hierarchical segmentation allows the system to preserve packet order within flows while maintaining relatively simple implementation at each level.
Data Source
AI summary
Embodiments of the present invention relate to method and apparatus for load balancing in scheduling traffic flows in networks. In one aspect, there is provided a method of load balancing for use in scheduling a traffic flow, comprising: selecting, based on a mapping entry, a first processing engine (PE) from a plurality of PEs as a target PE for a packet of the traffic flow, the mapping entry indicating an association between the packet and the first PE; determining whether load of the target PE exceeds a threshold; and in response to determining that the threshold is exceeded, updating the selection of the target PE based on a scheduling status of the traffic flow, the scheduling status indicating a dispatch of a previous packet of the traffic flow, such that the packet is dispatched to the same target PE as the previous packet. Corresponding apparatus is also provided.


