Skip to content

TCP over UDP

About the Project

A partial implementation of TCP functionality built on top of UDP, demonstrating core networking concepts like reliable data transfer and packet sequencing.

GitHub

Features

Data Sequencing

  • Message chunking with sequence numbers
  • Fixed chunk size implementation
  • Total chunks tracking
  • Ordered data reconstruction

Reliability

  • ACK packet implementation
  • 100ms retransmission timeout
  • Out-of-order packet handling
  • Lost packet recovery
  • Non-blocking socket design

Usage

Compile server and client executables:

Terminal window
make

Start server:

Terminal window
./server

Run client:

Terminal window
./client