Selective Packet Retransmission in RDMA NICs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

RDMA protocols face inefficiencies in packet retransmission due to lossless network designs, leading to unnecessary duplication of packets and increased network load, especially when significant packet loss occurs.

Innovation Solution

Implementing selective acknowledgment and retransmission mechanisms in network interface controllers (NICs) that differentiate retransmission modes based on transaction types, such as RDMA Write, Read, and Send, allowing only missing packets to be retransmitted in certain cases, reducing the burden on receiving NICs and improving efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all packets are retransmitted upon receiving a NAK packet, then reliability is improved, but network load increases and efficiency deteriorates

Engineering Contradiction:
Improvepacket delivery reliabilityVSAvoidnetwork load
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments the retransmission process by identifying and retransmitting only the specific missing packet(s) indicated in the NAK packet, rather than retransmitting all packets. The NAK packet contains a packet serial number identifying the missing packet, allowing the transmitter to selectively retransmit only that specific packet segment.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different retransmission behaviors based on the type of RDMA transaction. For Write and Read transactions, only the missing packet is retransmitted, while for Send transactions, all subsequent packets are retransmitted. This local differentiation optimizes reliability and efficiency for each transaction type specifically.

Inventive Principle:
Principle #3Local quality

2Loss of energy

If selective retransmission is implemented, then network load is reduced, but device complexity increases

Engineering Contradiction:
Improvenetwork loadVSAvoidNIC complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent implements the selective retransmission logic directly in the NIC hardware, allowing the NIC to autonomously handle packet retransmission decisions without involving the host processor or operating system. The NIC independently processes NAK packets, identifies missing packets, and retransmits them, making the system self-sufficient for error recovery.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces a dedicated retransmission buffer in the NIC that temporarily holds transmitted packets awaiting acknowledgment. This intermediary buffer allows the NIC to efficiently manage retransmissions by having packets readily available for selective retransmission without requiring complex host processor intervention.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If host processor involvement is eliminated, then processing speed improves, but control precision may worsen

Engineering Contradiction:
Improveretransmission speedVSAvoidtransaction type differentiation
Core Design Contradiction:
SpeedVSMeasurement precision

Solution Approach 1:

The patent dynamically adjusts retransmission behavior based on the type of RDMA transaction being performed. The NIC examines the transaction type (Write, Read, or Send) and automatically selects the appropriate retransmission strategy: selective retransmission for Write/Read transactions or full retransmission for Send transactions. This dynamic adaptation enables the system to optimize for both speed and precision based on transaction requirements.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11870590B2Selective retransmission of packets
Publication Date: 2024.01.09 MELLANOX TECHNOLOGIES LTD(IL)
  • US11870590B2 patent drawing
  • US11870590B2 patent drawing
  • US11870590B2 patent drawing

AI summary

A method for data transfer includes transmitting a sequence of data packets from a first computer over a network to a second computer in a single RDMA data transfer transaction. Upon receipt of a second packet in the sequence without previously having received the first packet, the second computer sends a NAK packet over the network to the first computer, indicating that the first packet was not received. A retransmission mode is selected responsively to the type of the transaction, such that when the transaction is of a first type, the first packet is retransmitted from the first computer to the second computer in response to the NAK packet without retransmitting the second packet, and when the transaction is of a second type, both the first and second packets are retransmitted from the first computer to the second computer in response to the NAK packet.