Skip to content

santhisenan/SDN_DDoS_Simulation

Repository files navigation

DDoS Simulation in a Software Defined Network

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.

Getting Started

Clone the repository

git clone https://github.com/santhisenan/SDN_DDoS_Simulation.git

Prerequisites

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

Testing

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

Running

cd SDN_DDoS_Simulation
python tree_topology.py

Open a new Terminal tab

PYTHONPATH=. ryu/ryu/bin/ryu-manager main.py

Built With

Authors

  • Santhisenan Ajith
  • Vishnu Kaimal
  • Mohammed Musthafa K
  • Ankith Madusudanan

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

An attempt to detect and prevent DDoS attacks using reinforcement learning. The simulation was done using Mininet.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages