SPARTAN Protocol Gap Tracking for Reliable Transport
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current reliable transport protocols face challenges in providing efficient and resilient data transmission across networks, particularly in handling packet loss and reordering, which can impact data integrity and availability.
Innovation Solution
The Scalable Protocol-Agnostic Reliable Transport (SPARTAN) protocol offers a reliable datagram communication model that supports end-to-end data integrity, flexible retry mechanisms, and adaptive ordering modes, enabling efficient goodput and high availability through features like go-back-N retry, selective retry, and invariant CRC, while also allowing for unreliable datagrams for specific use cases.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If reliable transport protocols track receipt of packet sequence numbers to ensure data integrity, then reliability is improved, but device complexity increases
Solution Approach 1:
The patent segments the reliability protocol into distinct functional layers: a transport layer that handles sequence number tracking and acknowledgment, and an application layer that focuses on data processing. This segmentation allows the complexity to be isolated and managed separately, improving overall system reliability without overwhelming the entire system with complexity.
Solution Approach 2:
The patent introduces an intermediary acknowledgment mechanism that mediates between the transmitter and receiver. Instead of direct complex interactions, the acknowledgment system serves as an intermediary that simplifies the reliability tracking process by providing structured feedback about packet receipt, thereby maintaining reliability while reducing protocol complexity.
2Reliability
If selective acknowledgement and retransmission mechanisms are implemented, then reliability is improved, but loss of time increases
Solution Approach 1:
The patent implements preliminary actions by pre-numbering packets and preparing acknowledgment templates before transmission occurs. This allows the receiver to immediately process incoming packets and generate acknowledgments without delay, and enables the transmitter to proactively manage retransmission queues, thereby reducing overall retransmission delay while maintaining reliability.
Solution Approach 2:
The patent employs continuous feedback through selective acknowledgment mechanisms where the receiver immediately informs the transmitter about received and missing packets. This real-time feedback loop allows for rapid identification and retransmission of only the necessary packets, minimizing retransmission delay while ensuring reliable delivery.
3Reliability
If multi-path transmission is supported, then reliability is improved, but device complexity increases
Solution Approach 1:
The patent implements a universal packet structure and acknowledgment mechanism that functions identically across multiple transmission paths. The same sequence number tracking and acknowledgment protocols work regardless of which path the packet takes, allowing multi-path transmission to increase reliability without requiring separate complex management systems for each path.
4Productivity
If adaptive rate adjustments are implemented, then productivity is improved, but device complexity increases
Solution Approach 1:
The patent uses feedback from acknowledgment timing and packet loss patterns to adaptively adjust transmission rates. The transmitter monitors the time between sent packets and received acknowledgments, and automatically adjusts the transmission rate accordingly, improving productivity through adaptive congestion control while keeping the complexity localized to the rate adjustment logic.
Data Source
AI summary
Examples described herein relate to a network interface device that includes circuitry to track one or more gaps in received packet sequence numbers using data and circuitry to indicate to a sender of packets non-delivered packets to identify a range of delivered packets. In some examples, the data identifies delivered packets and undelivered packets for one or more connections. In some examples, to indicate to a sender of packets non-delivered packets to identify a range of delivered packets, the circuitry is to provide negative acknowledgement sequence range indicating a start and end of non-delivered packets.


