davidcamilo0710 / Routing_Reinforcement_Learning

Reinforcement Learning (RL)-based routing algorithm for SDN networks created from scratch using Python.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Routing Elephants Reinforcement Learning

Internet has become a necessity for all people and every day the traffic grows even more. Intelligently routing traffic is important to avoid network congestion and maintain high quality standards (speed and bandwidth), which is why I developed this routing algorithm based on Reinforcement Learning that seeks to maintain a decongested network.

The algorithm is in charge of finding the shortest route for mouse flows (green) and the most uncongested route for elephant flows (reds), the value of the throuput of each link between network switches is known and also if the flow (set of network packets with the same IP and protocol) is an elephant or a mouse.

routing

Reward Per Episodie

As the Router gain experience with the number of episodes, accuracy and rewards begin to rise. It is possible to achieve an accuracy of 90% given the simplicity of the assembly, for a future project it is expected to take into account many more variables, perhaps a DNQ agent and a much larger network topology.

Figure 2022-03-15 015334

Usage

Install the prerequisites and run python routing.py

About

Reinforcement Learning (RL)-based routing algorithm for SDN networks created from scratch using Python.


Languages

Language:Python 100.0%