Goals
The overall goal of this project is to study the dynamics of TCP in home networks, specifically
congestion control algorithms and buffer occupancy. This project is structured around an interactive experiment utilizing Mininet.
Throughout this project, I was asked to make predictions, record observations, and answer
questions about the experiment.
Our study of TCP is focused on two major topics:
- The dynamics of congestion control algorithms like TCP Reno and TCP CUBIC in a “real” network. Reno is the canonical TCP congestion control algorithm (the one presented in the video lectures), and CUBIC is far more modern and is running in many Linux systems.
- How excessively large router buffers can lead to poor performance in home networks, commonly known as the “Buffer Bloat” problem. Buffer bloat occurs when large packet buffers cause high latency and jitter (variation in packet delays) due to excess packet buffering.