Skip to content

ryhanuddin/FL-for-space

Repository files navigation

SDN–Federated Learning for IoT–Satellite Networks

SDN-based Federated Learning framework for IoT–satellite networks. Combines SDN traffic regulation and federated learning to classify and block malicious flows, achieving high accuracy while preserving data privacy.

Quickstart

1) Train

pip install -r requirements.txt python train_classifier.py # creates classifier.sav

2) Run controller + topology

ryu-manager customCtrl.py sudo python topo.py

3) Generate traffic (in a Mininet host)

Mininet CLI: xterm h2

./traffic_generator.sh 10.0.0.1 80

4) Detect & mitigate (host shell)

chmod +x datacollect.sh ./datacollect.sh

If attack=1, flows are flushed and default controller rule is restored.

Files

  • customCtrl.py: Ryu OF1.3 controller (learning switch + flow installs)
  • topo.py: Mininet topology (s1…s6, hosts) with remote controller
  • traffic_generator.sh: varied hping3 traffic
  • datacollect.shflow_computation.pyflow_monitor.py: collect → features → predict(0/1)

License

Apache License 2.0

Acknowledgements

Built with OpenFlow/OVS, Ryu, Mininet, scikit-learn, and FL concepts.

About

SDN-based Federated Learning framework for IoT–satellite networks. Combines SDN traffic regulation and OpenMined federated learning framework to classify and block malicious flows, achieving high accuracy while preserving data privacy.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors