This project aims to provide a basic framework for DDoS mitigation using Deep reinforcement learning. The network is implemented using Mininet (based on Software defined networking).
The design of the solution is inspired by the work "Deep Reinforcement Learning based Smart Mitigation of DDoS Flooding in Software-Defined Networks" by Yandong Liu and others here.
Clone the repository
git clone https://github.com/santhisenan/SDN_DDoS_Simulation.git
Install dependencies
Install Mininet
Install OpenVSwitch
Install Ryu
Install Tensorflow
Install Keras
Clone ryu repository and copy ryu/ryu folder to SDN_DDoS_Simulation root
Modify simple_tree_top.py according to test purpose
cd SDN_DDoS_Simulation
python simple_tree_top.py
Open a new Terminal tab
PYTHONPATH=. ryu/ryu/bin/ryu-manager main.py
cd SDN_DDoS_Simulation
python tree_topology.py
Open a new Terminal tab
PYTHONPATH=. ryu/ryu/bin/ryu-manager main.py
This project is licensed under the MIT License - see the LICENSE.md file for details