Switch-Triggered Go-Back-N Recovery for RoCEv2 Packet Loss
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In high-performance computing environments using RDMA over Converged Ethernet version 2 (RoCEv2), delayed packet retransmission occurs due to the receiver's inability to detect missing packets, leading to increased latency in data transfers, especially in scenarios where a single packet signifies the end of a data transmission or when there are no subsequent packets to indicate a missing packet.
Innovation Solution
A switch-based packet mirroring and trimming scheme that modifies the sequence number of a dropped packet, prioritizes its transmission as high priority, and triggers an out-of-order event at the receiver, thereby initiating faster go-back-N recovery without relying on sender timeouts or subsequent packet receipt.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the receiver waits for subsequent packets to detect missing packets, then packet delivery order is maintained, but recovery time increases due to delayed detection
Solution Approach 1:
The switch creates a mirror copy of the dropped packet before the receiver can detect the loss through subsequent packets. This preliminary action allows the receiver to immediately identify the missing packet when the mirror copy arrives with an unexpected sequence number, eliminating the waiting time for subsequent packets while maintaining ordered delivery through proper sequence number validation.
Solution Approach 2:
The switch acts as an intermediary by intercepting packet copies, modifying their sequence numbers, and injecting them at strategic points. This intermediary mechanism enables the receiver to detect packet losses without violating the ordered delivery requirement, as the modified packets are carefully constructed to trigger detection only when appropriate.
2Reliability
If the sender uses timeout-based retransmission, then packet loss is eventually detected, but latency increases due to waiting for timeout expiration
Solution Approach 1:
The system implements feedback by having the receiver send negative acknowledgments (NACKs) when packet sequence numbers are unexpected. This feedback mechanism allows the sender to immediately know about packet losses without waiting for timeout, enabling faster retransmission. The switch facilitates this by injecting mirror copies with modified sequence numbers that trigger NACK responses from the receiver.
Solution Approach 2:
The switch performs preliminary actions by creating and injecting mirror packet copies before the sender's timeout mechanism would activate. This allows the receiver to detect the loss and send a NACK earlier than the timeout would occur, reducing the overall latency while ensuring reliable retransmission.
3Reliability
If the receiver discards unexpected packets without requesting retransmission, then ordered delivery is maintained, but packet loss goes undetected in single-packet transmissions
Solution Approach 1:
The switch serves as an intermediary that injects mirror copies of dropped packets with modified sequence numbers. When the receiver encounters such a mirror copy, it recognizes the sequence number mismatch and can infer that a packet was lost, even in single-packet transmissions. This intermediary mechanism enables loss detection without compromising ordered delivery, as the receiver maintains its protocol of discarding unexpected packets while now having the ability to detect the anomaly.
Solution Approach 2:
The switch performs a preliminary anti-action by pre-injecting mirror copies that anticipate potential packet loss scenarios. This allows the receiver to detect losses that would otherwise go unnoticed, particularly in single-packet transmissions, while maintaining the ordered delivery protocol through careful sequence number management.
Data Source
AI summary
Devices, systems, methods, and processes for switch triggered faster go-back-N recovery are described herein. Typically, Go-back-N recovery is triggered in response to: a receiver missing a packet and receiving a next packet in a data transmission sequence, or a sender timing out and identifying a missing acknowledgement for a dropped packet. Such scheme suffers potential latency issues, especially when the dropped packet is the last packet or corresponds to a single packet message. Thus, instead of relying on the sender to timeout and identify missing acknowledgements or on the receiver to receive the next packet, a switch executes a packet mirroring and trimming scheme on the dropped packet and generates a trimmed out-of-order packet of the same reliable connection flow. The trimmed out-of-order packet causes the receiver to transmit a negative acknowledgement to the sender, thus triggering faster go-back-N recovery and causing the sender to retransmit the dropped packet.


