DVRS
A small simulator for watching distance-vector routing work.
Why I made it
I built this for my Telecommunications Networks course. You can draw a network, assign costs to the links, and watch nodes exchange their best known routes. Seeing the tables change helped me understand distance-vector routing.
Things to try
- Dynamic network creation (add nodes and links)
- Configurable link costs
- Real-time routing table updates
- Visual representation of the distance vector algorithm
More screenshots (3)
Project Architecture
The simulator is built with a modular approach in Python:
- node.py: Core logic for network nodes and neighbor management.
- routing_table.py: Implementation of the distance vector update logic.
- gui.py: Interactive interface powered by Tkinter.
- main.py: Application entry point and component orchestration.
Educational Goals
Designed for the Telecommunications Networks course, this tool helps students grasp complex concepts like hop-by-hop forwarding and cost optimization through direct interaction.
Built with
Language: Python 3.
GUI Framework: Tkinter.
Concepts: Graph Theory, Distance Vector Algorithm, Socket-like simulations.
Source: GitHub