Wednesday, March 28, 2018

Visualization of the wavelength assignment algorithm in optical networks

I created a project to visualize the optimal allocation of wavelengths in optical networks. You can find the code and the algorithms on github and an example on the BBN Planet backbone in the US.

Some context: wavelength multiplexing (WDM) is used in optical networks so that a fiber can carry several wavelengths at once. If we consider a traffic request going from a source A to a destination B, and if there is no transponder in the optical network, i.e no electronic conversion of the optical signal, the wavelength used to carry the traffic must stay the same from A to B. This means that any other traffic request which path shares at least one fiber with the first one must use a different wavelength. So the question is: given a set of traffic requests (and the path they take), how can we find the minimum number of wavelengths required in the optical network to satisfy all requests. (this is NP-complete)

That's basically what this project is all about. I solve the problem in Python with two different algorithms, and use JavaScript to display the result on a map.

2 steps:

  • click on routing: this will find the shortest path (with linear programming, not Dijkstra) for all traffic links (the pink ones). Blue links are optical fibers.

  • click on transform graph and choose a method to color the graph, then close the window to visualize the wavelengths.



No comments:

Post a Comment