RDMA Multipath Context for Single-Flow Congestion Avoidance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current RDMA technologies, such as ROCE, lack a mechanism to evenly spread a single transport flow across multiple network paths, leading to congestion when multiple flows are directed to the same link, even when other routes are underutilized, requiring additional software layers that add significant overhead.
Innovation Solution
Implementing a hardware-based multipath context that allows RDMA packets to be sent across multiple network paths with different routing identifiers, monitored for congestion, and adjusted dynamically to optimize network utilization and provide fast recovery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If all packets for a specific transport flow travel across the same network path, then RDMA operations are simplified, but network congestion occurs when multiple flows are directed to the same link
Solution Approach 1:
The patent segments a single transport flow into multiple sub-flows that can be distributed across different network paths. The multipath context divides the flow based on packet indices or timestamps, allowing parallel transmission over multiple routes while maintaining logical flow separation. This resolves the contradiction by enabling simple RDMA operations while avoiding congestion through flow segmentation.
Solution Approach 2:
The patent implements dynamic path selection where the network adapter can switch between different network paths based on real-time congestion conditions. The multipath context allows dynamic adjustment of routing identifiers and path selection during operation, enabling the system to adapt to changing network conditions while maintaining simplified RDMA operations.
2Productivity
If Equal-Cost multipath (ECMP) is used to spread different transport flows evenly across multiple network paths, then network utilization improves, but ECMP does not work well for single transport flows
Solution Approach 1:
The patent extends ECMP functionality to work universally with both multiple transport flows and single transport flows. The multipath context mechanism can handle different flow scenarios uniformly, making the network adapter capable of spreading single flows across multiple paths while maintaining compatibility with existing multi-flow ECMP operations. This resolves the contradiction by achieving broad adaptability.
Solution Approach 2:
The patent changes the parameters of packet identification and routing by introducing multipath context information that tracks packet indices and timestamps. This allows the system to distinguish between different flows and apply multipath spreading to single flows by changing how packets are identified and routed, thereby improving network utilization while maintaining versatility.
3Reliability
If additional software layers are added to solve congestion problems, then network congestion is reduced, but significant overhead is introduced
Solution Approach 1:
The patent replaces complex software-based congestion avoidance mechanisms with hardware-level support in the network adapter. The multipath context and routing identifier mechanisms are implemented directly in the network adapter hardware, eliminating the need for additional software layers while maintaining effective congestion avoidance. This resolves the contradiction by reducing software overhead while improving reliability.
Solution Approach 2:
The network adapter performs congestion avoidance autonomously through hardware-based multipath context management. The adapter automatically tracks packet indices, selects appropriate paths, and manages routing identifiers without requiring external software intervention. This self-service capability reduces software overhead while maintaining effective congestion avoidance, resolving the technical contradiction.
4Productivity
If multiple network paths are used for a single transport flow, then network utilization and error recovery improve, but packet ordering and reassembly complexity increases
Solution Approach 1:
The patent applies preliminary action by pre-establishing multipath contexts and routing identifiers before data transmission begins. The network adapter pre-configures the multipath context with packet index mappings and routing information, enabling packets to be automatically reassembled in the correct order at the destination without complex reassembly logic. This resolves the contradiction by simplifying packet reassembly while improving network utilization.
Solution Approach 2:
The patent implements feedback mechanisms where the network adapter monitors packet transmission status and adjusts routing decisions based on real-time information. The multipath context receives feedback about packet delivery status and congestion conditions, enabling dynamic path selection while maintaining correct packet ordering through feedback-driven adjustments. This reduces reassembly complexity while improving productivity.
Data Source
AI summary
Technologies for spreading a burst of data across multiple network paths in remote direct memory access (RDMA) over converged Ethernet (ROCE) and InfiniBand are described. A RDMA adapter receives, from a requestor device over a local interface, a request to send data of a transport flow directed to a target device over a network interface, and one or more parameters being related to a multipath selection by the network controller. The RDMA adapter sends a first burst of data of the transport flow via a first network path to the target device. The RDMA adapter identifies, using the one or more parameters, a second network path to the target device. The RDMA adapter sends the second burst of data to the target device on the second network path.


