SDN第一次上机作业

1.用字符命令生成拓扑,并测试连通性,截图

# sudo mn --topo tree, fanout=3,depth=2

# net

# pingall

2.用字符命令生成拓扑,并测试连通性,截图

# sudo ./miniedit.py

使用图形化界面并生成了拓扑

# net

# pingall

4.用Python脚本生成一个Fat-tree型的拓扑,截图

  • 首先安装floodlight

  • 安装完成后,查看当前的服务器的IP地址 -> # ifconfig

  • 进入到floodlight安装路径下,运行floodlight -> # java -jar target/floodlight.jar

  • 运行python脚本,生成拓扑:

# sudo mn --custom fattree.py --topo mytopo --controller=remote,ip=10.211.55.4,port=6653 --switch ovsk,protocols=OpenFlow10

  • pingall:

fattree.py代码:

class FatTreeTopo(Topo):
    def __init__(self):
        Topo.__init__(self)

        L1 = 2

        L2 = L1 * 2

        L3 = L2

        c = []
        a = []
        e = []

        for i in range(L1):
            sw = self.addSwitch("c{}".format(i + 1))
            c.append(sw)

        for i in range(L2):
            sw = self.addSwitch("a{}".format(L1 + i + 1))
            a.append(sw)

        for i in range(L3):
            sw = self.addSwitch("e{}".format(L1 + L2 + i + 1))
            e.append(sw)

        for i in range(L1):
            sw1 = c[i]
            for sw2 in a:
                self.addLink(sw1, sw2)

        for i in range(0, L2, 2):
            for sw1 in a[i:i + 2]:
                for sw2 in e[i:i + 2]:
                    self.addLink(sw2, sw1)

        count = 1
        for sw1 in e:
            for i in range(2):
                host = self.addHost("h{}".format(count))
                self.addLink(sw1, host)
                count += 1


    def build( self, *args, **params ):

       pass


# LinearTopo()

topos = { 'mytopo': ( lambda: FatTreeTopo() ) }

遇到的问题:

  1. 运行时端口号设置为6633无法ping通,改为6653后可以ping通
  2. 解决Floodlight1.2+Mininet问题及使用安装 <- 这里面遇到的问题全部遇到了orz
posted @ 2017-11-29 16:52  bayernwindy  阅读(185)  评论(0编辑  收藏  举报