DDoSAttackMitigationSystem
DDoSAttackMitigationSystem copied to clipboard
Python based DDoS attack detection and mitigation system built over Ryu controllers and Mininet SDN,
This repo is for a python based sdn controllers that can detect a DDoS attack on target hosts. Further, the controllers can mitigate the attack by limiting the bandwidth between the target and the attacker node.
Team Members - Ankit Mishra Gouthaman Kumarappan Simon Wimmer
Instructions-
-
Run custom controller 1 (for domain A) sudo python ./ryu/bin/ryu-manager --ofp-tcp-listen-port 6633 ryu/ryu/app/Controller1.py | tee log1.txt
-
Run custom controller 2 (for domain B) sudo python ./ryu/bin/ryu-manager --ofp-tcp-listen-port 6634 ryu/ryu/app/Controller2.py | tee log2.txt
Note - The above 2 commands display the controller outputs on the console and also log them to log1.txt and log2.txt In order to not log the outputs, please use the following commands -
sudo python ./ryu/bin/ryu-manager --ofp-tcp-listen-port 6633 ryu/ryu/app/Controller1.py
sudo python ./ryu/bin/ryu-manager --ofp-tcp-listen-port 6634 ryu/ryu/app/Controller2.py
- Run the custom topology sudo python customTopology.py
(Protected nodes are AAh1 and AAh2 only) 4. To start inter domain attack BBh1 hping3 --flood --udp AAh1 & BBh1 hping3 --flood --udp AAh2 & BAh1 hping3 --flood --udp AAh1 & BAh1 hping3 --flood --udp AAh2 & .. etc.
- To start intra domain attack
ABh1 hping3 --flood --udp AAh1 & ABh1 hping3 --flood --udp AAh2 & ABh2 hping3 --flood --udp AAh1 & ABh2 hping3 --flood --udp AAh2 & .. etc.
- Monitor the controller A and B consoles to see the results and the effective bandwidth on the links.