A Python application simulating packet flow management in a communication network, comparing different buffer strategies under realistic traffic conditions.
Packets are generated by sources following a Poisson process (a realistic model for network traffic) and pass through buffers before entering the network. This project implements and benchmarks multiple queue management strategies.
| Strategy | Description |
|---|---|
| FIFO | First In, First Out — standard queue |
| Priority | High-priority packets bypass the queue |
| Drop-Tail | Drop incoming packets when buffer is full |
| Random Early Drop (RED) | Probabilistic early dropping to avoid congestion |
- OOP-based network model (Source, Packet, Buffer, Network)
- Poisson arrival process simulation
- Real-time graphical interface with
customtkinter - Strategy performance comparison via
matplotlibcharts
pip install customtkinter matplotlib pyglet pillow
python main.py| Tool | Purpose |
|---|---|
| Python 3 | Core language |
| CustomTkinter | Modern GUI framework |
| Matplotlib | Performance charts |
| Pyglet | Multimedia support |
Ahmad Hatoum · Francesco Di Gennaro
L2 Computer Science project — Université de Versailles Saint-Quentin-en-Yvelines