Coder Social home page Coder Social logo

sdn-passive-attack's Introduction

##文件说明

原型系统代码总共包括4个文件夹,每个文件夹的内容如下:

  1. Controller文件夹,包含原型系统的POX Controller端代码,包括FIFO/LRU的流表替换算法实现,以及Hard Timeout和Idle Timeout实验所需的Controller端代码

  2. Plot文件夹,包含用于解析日志文件log.txt并绘制RTT曲线图的代码,其中Flowtable Capacity/Flowtable Usage两个实验的日志,采用capacity_usage_plot.py进行绘制,Hard Timeout/Idle Timeout两个实验的日志,采用timeout_plot.py进行绘制

  3. Probe文件夹,包含原型系统的被动隐私探测代码,通过构建ICMP包并获取RTT,进行被动隐私探测

  4. Topo文件夹,包含原型系统的网络拓扑构建代码

##使用方法

  1. 将Controller文件夹下所有.py代码拷贝至POX的misc目录,然后通过python pox.py misc.xxxxx启动相应Controller,如启动FIFO代码,可执行python pox.py misc.fifo

  2. 将Topo文件夹中的mytopo.py文件拷贝至Mininet根目录,启动Mininet并连接至POX,相应命令为sudo mn --custom mytopo.py --topo mytopo --controller=remote,ip=xxxx --mac --switch=ovsk,protocols=OpenFlow1.3

  3. 在Mininet中执行相应的被动隐私探测代码,并将被动隐私探测代码的输出结果重定向至log.txt日志文件,相应命令为lh python xxxx.py > log.txt,如进行Flowtable Capacity探测,则执行lh python flow_table_capacity.py > log.txt

  4. 执行完毕后,退出Mininet,将之前生成的log.txt文件拷贝至绘图代码所在文件夹,由于log.txt文件的第一行会有特殊字符使日志解析中断,因此需要删除log.txt的第一行,然后执行绘图代码python capacity_usage_plot.py或python timeout_plot.py

  5. 根据绘制完成的RTT曲线图,即可对相应指标进行推断

sdn-passive-attack's People

Contributors

junyuan-leng avatar

Stargazers

Roman avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.