Skip to content

t0nyren/netopt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

netopt

netopt is a network topology optimization tool written in Python. It provides tools to monitor a network topology via MySQL database, runs optimizaiton algorithm and output the resulting streaming structure back to the same database.

Prerequisite

MySQL

Python 2.7

SQLAlchemy

NetworkX

Code description

Data access objects are put under ./model directory, which manages the database operations for nodes, edges, and topologies.

Algorithms are put under ./algorithm directory, which runs different optimization algorithms. Now only Kruskal's minimum spanning tree and a power-based heuristic algorithm (Fast-Mesh) is provided.

How to use

In model/init.py, modify the database url, and then simply run

python main.py

It is a simple example that generates a random network topology, optimize it, and then store the resulting structure together with the origion topology in the database.

Limitations and future extensions

The current model only supports single tree topology, which can be extended to multi-source, multi-tree(channel).

About

A network topology optimization tool

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages