Reliable Transport Architecture Beyond PFC Head-of-Line Blocking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing reliable transport mechanisms, such as RoCEv2, suffer from performance shortcomings in best-effort Ethernet networks due to reliance on Priority Flow Control (PFC), leading to head-of-line blocking, congestion spreading, and deadlocks, while also failing to efficiently handle packet loss and reordering.
Innovation Solution
The Reliable Transport Architecture (RTA) employs a Reliability Layer (RL) that manages end-to-end reliability, supports multipathing and congestion control, and provides ordered or unordered delivery modes, using NIC-based per-packet multipath routing and selective acknowledgments to optimize packet delivery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If Priority Flow Control (PFC) is used to ensure reliable packet delivery, then packet loss is reduced, but head-of-line blocking and congestion spreading occur
Solution Approach 1:
The patent extracts the reliability function from the network layer (PFC) and places it at the transport layer (RTA). The RTA protocol independently handles packet loss and reordering without relying on PFC, allowing PFC to be disabled or used only for flow control, thereby eliminating head-of-line blocking while maintaining delivery reliability.
Solution Approach 2:
The patent segments the reliability mechanism into independent RTA protocol components that operate at the transport layer, separating it from the network layer's PFC mechanism. This segmentation allows each layer to perform its specific function without interfering with the other, reducing overall system complexity.
2Reliability
If PFC is used to maintain packet order, then delivery reliability improves, but latency increases due to head-of-line blocking
Solution Approach 1:
The patent extracts the packet ordering function from PFC and implements it within the RTA protocol at the transport layer. The RTA receiver independently reorders packets using sequence numbers without being blocked by out-of-order arrivals, eliminating the head-of-line blocking effect that causes latency in PFC-based systems.
Solution Approach 2:
The RTA protocol performs preliminary reordering actions at the receiver side using sequence numbers and buffers, allowing packets to be delivered in the correct order without waiting for out-of-order packets to arrive. This preliminary preparation eliminates latency caused by head-of-line blocking.
3Productivity
If multipathing is implemented to increase bandwidth utilization, then network throughput improves, but packet reordering and loss handling complexity increases
Solution Approach 1:
The patent extracts the reordering and loss handling functions from the network layer and places them at the transport layer within the RTA protocol. This allows multipathing to be used for load balancing and throughput optimization without requiring the network layer to handle the complexity of reordering packets that arrive via different paths.
Solution Approach 2:
The RTA protocol provides universal handling of multipathed traffic by implementing a general reordering mechanism using sequence numbers that works regardless of the number of paths or the specific routing pattern. This multi-functional approach simplifies the system by providing a single solution that handles all multipathing scenarios.
4Reliability
If traditional reliable transport protocols are used over best-effort Ethernet, then packet delivery reliability improves, but performance decreases due to congestion and retransmission overhead
Solution Approach 1:
The patent extracts the reliability mechanism from traditional transport protocols and redesigns it for best-effort Ethernet networks. The RTA protocol uses sequence numbers, selective acknowledgments, and path diversity to achieve reliability without the heavy retransmission overhead of traditional protocols, thereby maintaining performance on lossy networks.
Solution Approach 2:
The RTA protocol dynamically adapts to network conditions by selecting from multiple available paths based on current congestion and loss characteristics. This dynamic path selection and adaptive retransmission strategy optimizes performance by avoiding congested paths and reducing unnecessary retransmissions.
Data Source
AI summary
Examples described herein relate to technologies for reliable packet transmission. In some examples, a network interface includes circuitry to: receive a request to transmit a packet to a destination device, select a path for the packet, provide a path identifier identifying one of multiple paths from the network interface to a destination and Path Sequence Number (PSN) for the packet, wherein the PSN is to identify a packet transmission order over the selected path, include the PSN in the packet, and transmit the packet. In some examples, if the packet is a re-transmit of a previously transmitted packet, the circuitry is to: select a path for the re-transmit packet, and set a PSN of the re-transmit packet that is a current packet transmission number for the selected path for the re-transmit packet. In some examples, a network interface includes circuitry to process a received packet to at least determine a Path Sequence Number (PSN) for the received packet, wherein the PSN is to provide an order of packet transmissions for a path associated with the received packet, process a second received packet to at least determine its PSN, and based on the PSN of the second received packet not being a next sequential value after the PSN of the received packet, cause transmission of a re-transmit request to a sender of the packet and the second packet.


