/ Embedded · 2023
Reliable Transport Protocol Over UDP
TCP‑like reliability on UDP: sliding‑window ARQ, cumulative/selective ACKs, per‑packet timers, CRC‑32.

Overview
A custom reliable transport protocol built on top of UDP, implementing TCP-like reliability features including sliding window flow control, automatic repeat request (ARQ), both cumulative and selective acknowledgments, per-packet timeout timers, and CRC-32 checksums for error detection. Written in C for high performance.
Key Features
- Sliding window flow control
- Selective and cumulative acknowledgments
- Per-packet timeout and retransmission
- CRC-32 error detection
- Out-of-order packet handling
- Congestion avoidance mechanisms
Technical Challenges
Managing complex timer states for multiple in-flight packets, implementing efficient packet reordering, and achieving comparable performance to TCP while maintaining reliability.
Outcome
Achieved 99.99% reliability on lossy networks with 5% packet loss. Throughput within 10% of TCP on high-latency connections.
Technologies
- C
- UDP
- CRC-32
- Sliding Window
- ARQ