DVRS

Distance Vector Routing Simulator with an interactive graphical interface

Project Description

The Distance Vector Routing Simulator is an educational tool designed to visualize and understand the fundamental algorithms behind network routing. It provides a real-time simulation of how nodes determine optimal paths in a dynamic environment.

Interactive Features

  • Dynamic network creation (add nodes and links)
  • Configurable link costs
  • Real-time routing table updates
  • Visual representation of the distance vector algorithm

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.

Technologies Used

Language: Python 3.
GUI Framework: Tkinter.
Concepts: Graph Theory, Distance Vector Algorithm, Socket-like simulations.

Link repo: GitHub