Skip to content
Killian Coddington edited this page Dec 7, 2015 · 11 revisions

CS350 Project: Internet Routes Controlling Application

Team 5 Members: David Josephs (leader), Graham Northup, Killian Coddington, Michael Fulton

The problem originally posed was this:

Take as input a file containing a network topology and compute the shortest path between each pair of nodes, along with another short path relying on different edges (as best as possible), store these paths in a database.

The project is to be implemented in Go and using a Redis database. In the long term it is desirable to have the computations made parallelism and have the database be modifiable such that removing a node or edge will result in an accurate recalculation of the shortest paths.

The current status of the project is as follows:

  • Topology files can be read into a graph representation
  • Shortest paths can be computed
  • These paths can be stored in a database (currently hosted on a Virtual Machine on COSI Phoenix)
  • A command line interface allows for a user to control this process and interact with the database
  • A web interface which allows for the user to explore a topology's shortest paths easily

These comprise our customers last requested feature set, making this project complete (for being in the scope of a semester).

Future goals:

  • Second shortest paths in a reliable and efficient manner
  • Parallelism of computation
  • Dynamic recomputing of shortest paths as necessary

The documentation of the Go packages written for this project reside at: ###Documentation