zoukankan      html  css  js  c++  java
  • SDN第二次上机作业

    1、安装floodlight

    参考链接:http://www.sdnlab.com/19189.html

    使用老师给的镜像,安装时选择错误,导致每次操作结果不会保存,floodlight安装了不下三次。。。不过按照教程没有问题。

    2、生成拓扑并连接控制器floodlight,利用控制器floodlight查看图形拓扑

    • 拓扑图形

    • 脚本

    from mininet.topo import Topo
    class MyTopo(Topo):
     def __init__(self):
    
         #initilaize topology
         Topo.__init__(self)
    
         # add hosts and switches
         h1 = self.addHost('h1')
         h2 = self.addHost('h2')
         h3 = self.addHost('h3')
    
         s1 = self.addSwitch('s1')
         s2 = self.addSwitch('s2')
         s3 = self.addSwitch('s3')
         s4 = self.addSwitch('s4')
    
         # add links
         self.addLink(s1,s2,1,1)
         self.addLink(s1,s3,2,1)
         self.addLink(s1,s4,3,1)
    
         self.addLink(s2,h1,2,1)
         self.addLink(s3,h2,2,1)
         self.addLink(s4,h3,2,1)
    
    topos = {'mytopo':(lambda:MyTopo())}
    
    
    • 运行脚本

    • 测试连通性

    • floodlight查看拓扑

    • 遇见问题
      不懂为什么多出来了不少主机,这里出错过几次,第一次将主机IP设为127.0.0.1,最后pingall的时候发现均不通

      第二次改为主机IP,可能由于上次操作影响,导致只有h1,h2可以连通,关闭mininet,输入sudo mn -c后重试就可以了。

    3、利用字符界面下发流表,使得‘h1’和‘h2’ ping 不通

    参考链接:http://www.sdnlab.com/19394.html

    • 做法:自我理解,按照自己的脚本,对于交换机S1,应该是对于1号端口进来,2号端口出去的数据丢弃掉,但是不会写,后面看了一下同学的博客,里面是针对MAC地址进行判断,将对应源MAC对应h1,目的MAC对应h2的丢弃掉(这里只是未将h2->h1丢弃)

    • 通过Floodlight查看h1,h2MAC地址

    • 流表

    • 测试连通性

    4、利用字符界面下发流表,通过测试‘h1’和‘h3’的联通性,来验证openflow的hardtime机制

    • 初始连通性测试

    • 流表

    • 再次测试连通性

  • 相关阅读:
    【滚动数组】 dp poj 1036
    【多重背包】 poj 2392
    【树状数组】 poj 2352
    【矩阵压缩】 poj 1050
    【八皇后问题】 回溯算法
    【矩阵加速】 矩阵 快速幂
    【快速幂】 模板
    【二分图】 判断是否是二分图
    Struts2标签库
    Struts2之获取ServletAPI
  • 原文地址:https://www.cnblogs.com/liu424/p/8024429.html
Copyright © 2011-2022 走看看