1. 提前一台安装好mininet,另一台安装好floodlight

2. 在mininet里面的custom文件夹下自定义文件ProjectGroup10_Topology.py

  1. from mininet.node import CPULimitedHost, Host, Node
  2. from mininet.node import OVSKernelSwitch
  3. from mininet.topo import Topo
  4.  
  5. class fatTreeTopo(Topo):
  6.  
  7. "Fat Tree Topology"
  8.  
  9. def __init__(self):
  10. "Create Fat tree Topology"
  11.  
  12. Topo.__init__(self)
  13.  
  14. #Add hosts
  15. h7 = self.addHost('h7', cls=Host, ip='10.0.0.7', defaultRoute=None)
  16. h8 = self.addHost('h8', cls=Host, ip='10.0.0.8', defaultRoute=None)
  17. h1 = self.addHost('h1', cls=Host, ip='10.0.0.1', defaultRoute=None)
  18. h2 = self.addHost('h2', cls=Host, ip='10.0.0.2', defaultRoute=None)
  19. h4 = self.addHost('h4', cls=Host, ip='10.0.0.4', defaultRoute=None)
  20. h3 = self.addHost('h3', cls=Host, ip='10.0.0.3', defaultRoute=None)
  21. h5 = self.addHost('h5', cls=Host, ip='10.0.0.5', defaultRoute=None)
  22. h6 = self.addHost('h6', cls=Host, ip='10.0.0.6', defaultRoute=None)
  23. h9 = self.addHost('h9', cls=Host, ip='10.0.0.9', defaultRoute=None)
  24. h10 = self.addHost('h10', cls=Host, ip='10.0.0.10', defaultRoute=None)
  25. h11 = self.addHost('h11', cls=Host, ip='10.0.0.11', defaultRoute=None)
  26. h12 = self.addHost('h12', cls=Host, ip='10.0.0.12', defaultRoute=None)
  27.  
  28. #Add switches
  29. s10 = self.addSwitch('s10', cls=OVSKernelSwitch)
  30. s3 = self.addSwitch('s3', cls=OVSKernelSwitch)
  31. s17 = self.addSwitch('s17', cls=OVSKernelSwitch)
  32. s4 = self.addSwitch('s4', cls=OVSKernelSwitch)
  33. s18 = self.addSwitch('s18', cls=OVSKernelSwitch)
  34.  
  35. s1 = self.addSwitch('s1', cls=OVSKernelSwitch)
  36. s11 = self.addSwitch('s11', cls=OVSKernelSwitch)
  37. s21 = self.addSwitch('s21', cls=OVSKernelSwitch)
  38. s22 = self.addSwitch('s22', cls=OVSKernelSwitch)
  39. s2 = self.addSwitch('s2', cls=OVSKernelSwitch)
  40. s5 = self.addSwitch('s5', cls=OVSKernelSwitch)
  41. s6 = self.addSwitch('s6', cls=OVSKernelSwitch)
  42. s7 = self.addSwitch('s7', cls=OVSKernelSwitch)
  43. s8 = self.addSwitch('s8', cls=OVSKernelSwitch)
  44.  
  45. #Add links
  46. self.addLink(h1, s1)
  47. self.addLink(h2, s1)
  48. self.addLink(h3, s2)
  49. self.addLink(h4, s2)
  50. self.addLink(h5, s3)
  51. self.addLink(h6, s3)
  52. self.addLink(h7, s4)
  53. self.addLink(h8, s4)
  54. self.addLink(s1, s21)
  55. self.addLink(s21, s2)
  56. self.addLink(s1, s10)
  57. self.addLink(s2, s10)
  58. self.addLink(s3, s11)
  59. self.addLink(s4, s22)
  60. self.addLink(s11, s4)
  61. self.addLink(s3, s22)
  62. self.addLink(s21, s17)
  63. self.addLink(s11, s17)
  64. self.addLink(s10, s18)
  65. self.addLink(s22, s18)
  66. self.addLink(s5, s22)
  67. self.addLink(s5, s18)
  68. self.addLink(s6, s11)
  69. self.addLink(s6, s17)
  70. self.addLink(h9, s5)
  71. self.addLink(h10, s6)
  72. self.addLink(s3, s7)
  73. self.addLink(s18, s7)
  74. self.addLink(s8, s4)
  75. self.addLink(s8, s17)
  76. self.addLink(h11, s7)
  77. self.addLink(h12, s8)
  78.  
  79. topos = { 'mytopo': (lambda: fatTreeTopo() ) }

3. 进入装好floodlight的虚拟机界面

4. 进入floodlight文件夹下,启动floodlight

  1. sudo java -jar target/floodlight.jar

5. 在浏览器打开http://localhost:8080/ui/index.html

6. 进入装mininet的custom文件夹下,执行 sudo su  进入root下,再执行

  1. mn --custom ProjectGroup10_Topology.py --topo mytopo --controller=remote,ip=192.168.72.135,port= --switch ovsk,protocols=OpenFlow10

看到 Adding controller,就确定已经连接上floodlight控制器了

ps:ip是你装floodlight那台虚拟机的ip地址,用 ifconfig 命令可以查到

7. 执行完此命令在安装floodlight的虚拟机的浏览器上输入 ,看看实际效果

  1. http://localhost:8080/ui/index.html

8. 进入switch,看看有没有交换机接入

ubuntu16.04中如何启用floodlight的其中一种方式的更多相关文章

  1. Ubuntu16.04中如何启用floodlight的一种方式

    在 floodlight文件夹下输入 java -jar target/floodlight.jar 启动floodlight控制器,在浏览器窗口输入 http://localhost:8080/ui ...

  2. 在ubuntu16.04中再次体验.net core 2.0

    在上一篇文章中在ubuntu16.04中初次体验.net core 2.0 简单介绍了一下ubuntu中运行.net core 2.0.配置nginx反向代理以及安装supervisor守护进程……本 ...

  3. Ubuntu16.04 中 Vscode 如何断点调试C语言程序

    个人博客链接:Ubuntu16.04 中 Vscode 如何断点调试C语言程序 问题:环境是 Ubuntu16.04,如何使用 Vscode 断点调试C语言程序. 写代码没有调试环境是不能忍受的,所以 ...

  4. ubuntu16.04中可以用于教学的有趣的应用

    ubuntu16.04中可以用于教学的有趣的应用 在ubuntu自带的软件中心里,内置了非常丰富的教育应用,可以用于物理,化学等科学课教学,只选取我用过用于教学的软件,优秀的软件不止这些,可以慢慢发掘 ...

  5. SLAM+语音机器人DIY系列:(二)ROS入门——3.在ubuntu16.04中安装ROS kinetic

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  6. ubuntu16.04中docker安装curl拒绝连接问题

    在Ubuntu16.04中安装docker ce,安装步骤按照官网说明https://docs.docker.com/engine/installation/linux/docker-ce/ubunt ...

  7. Ubuntu16.04中Mysql 5.7 安装配置

    记录在Ubuntu 16.04安装Mysql 5.7时遇到的一些问题. Mysql安装 使用如下命令进行安装: 1 sudo apt-get install mysql-server mysql-cl ...

  8. 怎样在Android开发中FPS游戏实现的两种方式比较

    怎样在Android开发中FPS游戏实现的两种方式比较 如何用Android平台开发FPS游戏,其实现过程有哪些方法,这些方法又有哪些不同的地方呢?首先让我们先了解下什么是FPS 英文名:FPS (F ...

  9. .Net 中读写Oracle数据库常用两种方式

    .net中连接Oracle 的两种方式:OracleClient,OleDb转载 2015年04月24日 00:00:24 10820.Net 中读写Oracle数据库常用两种方式:OracleCli ...

随机推荐

  1. 中国地图插件世界地图||jQuery矢量SVG地图插件JVectorMap

    中国地图插件|jQuery矢量SVG地图插件JVectorMap https://www.html5tricks.com/jquery-china-map.html 世界地图: https://www ...

  2. laravel(lumen)配置读写分离后,强制读主(写)库数据库,解决主从延迟问题

    在Model里面加上下面这句,强制读主(写)库数据库,解决主从延迟问题. public static function boot() { //清空从连接,会自动使用主连接 DB::connection ...

  3. layui在open弹出层回显,解决动态select数据回显问题

    //监听数据表格工具条         table.on('tool(contentList)', function(obj){ //注:tool是工具条事件名,test是table原始容器的属性 l ...

  4. xcode10关于clang -lstdc++.6.0.9报错问题

    因为xcode10已经废弃了libstdc++.6.0.9这个库,所以只需要在你的工程中删除这个库,然后添加libc++这个库就可以了.别的没什么,如果xcode10报错mutable开头的,大部分是 ...

  5. SQL server 一些小结

    数据库表常用术语 关系 关系即二维表,每一个关系都有一个关系名,就是表名记录 表中的行字段 表中的列 也称属性域 取值范围关联 不同数据库表之间的数据联系关键字 属性或属性的组合,可以用于唯一标识一条 ...

  6. moment.js

    javascript日期处理类库,还有一个moment-timezone.js JavaScript时区处理类库 moment可以在browser和Node.js中使用. 安装: npm instal ...

  7. jmeter之headers中的Content-Type.

    jmeter在发送http post请求时,会把body  里的数据格式给携带上(最好携带上),一般在信息头里增加.另因一篇文章.感觉写的非常好.https://imququ.com/post/fou ...

  8. 没有与这些操作数匹配的 "<<" 运算符 操作数类型为: std::ostream << std::string

    错误显示:没有与这些操作数匹配的 "<<" 运算符       操作数类型为:  std::ostream << std::string 错误改正:要在头文 ...

  9. L360 Most People Spend Their Time in Just 25 Places

    Some people are always out on the town, going to concerts, restaurant openings, you name it. They're ...

  10. IP通信基础课堂笔记----第四章(重点中的重点)

    IPv4编址方法 一个IPv4地址可表示为一个32位的二进制数. IP地址前面的网络部分表示一个网段,后面部分(主机位)表示这个网段上的一台设备. 常用IP地址分为四类:A.B.C.D. 每类的网络地 ...