Source Flow Slicing for ECMP Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current load balancing algorithms in data center networks require hardware modifications and are not compatible with well-established hop-by-hop routing mechanisms, such as Equal-Cost Multi-Path (ECMP) algorithms, and often introduce significant overhead.

Innovation Solution

Implementing a source-based load balancing method that adds a randomizer element to packet headers, processed as a 6-tuple, allowing network devices to distribute traffic without hardware modifications, using flowlets with sequential packets and varying randomizers based on application-specific criteria, and incorporating minimal software changes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If in-network load balancing algorithms are implemented, then traffic distribution and throughput are improved, but hardware modifications are required which are not feasible for existing networks

Engineering Contradiction:
ImprovethroughputVSAvoidhardware modifications
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a randomizer field as an intermediary element in packet headers. This randomizer acts as a mediator that enables load balancing functionality without requiring modifications to the core switching hardware. The randomizer field works with existing ECMP hash functions to distribute traffic across multiple paths while maintaining compatibility with current network infrastructure.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent makes the ECMP hash function universal by enabling it to process both traditional 5-tuple flows and the new 6-tuple format including the randomizer field. This multi-functionality allows the same hashing mechanism to serve both existing load balancing requirements and the new randomizer-based traffic distribution approach without requiring separate hardware paths.

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

2Productivity

If adaptive load balancing algorithms are used, then latency is reduced and throughput is increased, but overhead is introduced and compatibility with commodity SDN switches is limited

Engineering Contradiction:
ImprovethroughputVSAvoidoverhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies partial action by selectively using the randomizer field only when needed for traffic distribution, rather than requiring full adaptive load balancing functionality. The approach uses a simplified version of adaptive routing that leverages the randomizer for path selection without implementing complex network state awareness, thereby reducing overhead while maintaining throughput benefits.

Inventive Principle:
Principle #16Partial or excessive action

3Device complexity

If source-based load balancing is implemented, then hardware modifications are minimized, but compatibility with hop-by-hop routing mechanisms is lost

Engineering Contradiction:
Improvehardware modificationsVSAvoidrouting mechanism compatibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent segments the load balancing functionality into two parts: the randomizer generation at the source node and the hash function processing at the network switch. This segmentation allows the source-based randomizer to work seamlessly with hop-by-hop ECMP routing mechanisms, as each switch independently processes the randomizer field through its hash function without requiring end-to-end source-based routing infrastructure.

Inventive Principle:
Principle #1Segmentation

4Measurement precision

If flow state tracking is implemented, then load balancing accuracy is improved, but processing overhead and complexity increase

Engineering Contradiction:
Improveload balancing accuracyVSAvoidflow state tracking
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent implements self-service by having the source node autonomously generate and insert the randomizer field into packet headers without requiring network switches to track or manage flow state information. The switches simply process the pre-computed randomizer through their existing hash functions, eliminating the need for complex flow state tracking infrastructure while maintaining accurate load balancing.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12068963B1Method and apparatus for source flow slicing for improving the load balancing
Publication Date: 2024.08.20 HUAWEI TECH CO LTD
  • US12068963B1 patent drawing
  • US12068963B1 patent drawing
  • US12068963B1 patent drawing

AI summary

A method of load balancing in a communications network includes transmitting, by a source node, to a destination node, a first plurality of packets of a “flowlet” of a flow of packets. Each of the first flowlet of packets includes a plurality of header fields and a randomizer. The header fields and the randomizer are used by a networking device located between the source node and the destination node to select an output port of the networking device for the packets of the first flowlet. Further methods include selecting, by the source node, based on a criteria, a second randomizer for inclusion in a plurality of packets of a second flowlet of packets, waiting a time delay after transmitting the first flowlet of packets, then, inserting the second randomizer into the sequential second flowlet of packets, and transmitting the second flowlet of packets.