Skip to content
Michael Fulton edited this page Nov 4, 2015 · 11 revisions

CS350 Project: Internet Routes Controlling Application

Team 5 Members: David Josephs(L), 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 (and next shortest path) 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.

These comprise our midterm goals, making this project officially past the first major version.

Further goals:

  • Parallelism of computation
  • Increased usability
  • Dynamic recomputing of shortest paths as necessary.

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

Clone this wiki locally