Bufferbloat, excessive latency caused by oversized network buffers under load, remains a persistent problem in home and edge networks. This project proposes a systematic evaluation of Active Queue Management (AQM) algorithms using the ns-3 network simulator to identify configurations that best mitigate delay while preserving throughput and fairness. A dumbbell topology will be used to emulate a residential bottleneck link with realistic propagation delays. Traffic will consist of 1 to N long-lived TCP flows competing with a latency-sensitive UDP flow representative of gaming or voice applications. The study will compare FQ-CoDel, PIE, and RED across parameter sweeps of bottleneck capacity, base RTT, queue discipline, and TCP congestion control variants such as CUBIC, BBR, and DCTCP. Key metrics include 95th percentile queueing delay, end-to-end latency, aggregate throughput, fairness using Jain’s index, and packet drop or mark rates. A stretch goal will enable Explicit Congestion Notification (ECN) to contrast marking-based and drop-based behaviors. The outcome will be a reproducible ns-3 experiment framework, comparative performance plots, and a recommendation matrix mapping optimal AQM choices to traffic mixes and network conditions typical of home environments.
Home networks often exhibit bufferbloat: large device buffers absorb bursts but can introduce sustained queueing delay under congestion. This harms interactive applications (gaming/VoIP) even when throughput remains high. This project quantifies the trade-offs between: (i) latency/queueing delay, (ii) throughput, and (iii) fairness for different AQM designs under realistic “many downloads + one interactive flow” workloads.
(You can adjust sweep ranges to match your target “home network” scenario.)
Workload is designed to stress the queue and reveal delay spikes and tail latency.
This section will include plots comparing AQMs under each scenario. Suggested figures:
Place images in a figures/ folder and embed like:
<img src="figures/latency_throughput.png" alt="Latency vs Throughput" style="max-width:100%; border:1px solid #ddd; border-radius:12px;">
# example commands (replace with your script + args)
./waf configure
./waf --run "aqm-shootout --aqm=FqCoDel --tcp=Cubic --rtt=40ms --bw=50Mbps --flows=8 --ecn=0"
./waf --run "aqm-shootout --aqm=Pie --tcp=Bbr --rtt=40ms --bw=50Mbps --flows=8 --ecn=1"
results/ and figures/Final deliverable will include a small “decision guide” mapping optimal AQM choices to conditions typical of home networks (capacity/RTT/flow count and traffic mix). Example table columns: Scenario, Best AQM, Key knob settings, Observed trade-off.