SDN第三次上机作业

Posted Karen_m

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SDN第三次上机作业相关的知识,希望对你有一定的参考价值。

标签(空格分隔): SDN

作业链接

实验目的##

在给定如上实验拓扑情况下,用vlan得到下列虚拟网段

h1--h4互通
h2--h5互通
h3--h6互通
其余主机间无法通信

实验步骤##

1.创建以下拓扑(可采用任意方式)

from mininet.topo import Topo

class MyTopo(Topo):

    def __init__(self):

        # initilaize topology
        Topo.__init__(self)

        # add hosts and switches
        host1 = self.addHost(\'h1\')
        host2 = self.addHost(\'h2\')
        host3 = self.addHost(\'h3\')
	    host4 = self.addHost(\'h4\')
	    host5 = self.addHost(\'h5\')
	    host6 = self.addHost(\'h6\')
       
        switch1 = self.addSwitch(\'s1\')
        switch2 = self.addSwitch(\'s2\')

        # add links
        self.addLink(host1, switch1, 1, 1)
        self.addLink(host2, switch1, 1, 2)
	    self.addLink(host3, switch1, 1, 3)
        self.addLink(host4, switch2, 1, 1)
        self.addLink(host5, switch2, 1, 2)
        self.addLink(host6, switch2, 1, 3)
        self.addLink(switch1, switch2, 4, 4)
        
topos = {\'mytopo\': (lambda: MyTopo())}

提交要求:截图证明拓扑的正确性

2、利用OVS命令下发流表,实现VLAN功能

参考链接:http://blog.csdn.net/rocson001/article/details/73163041
提交要求:贴出OVS下发流表的命令
下发s1流表

下发s2的流表

注意
在第一次的时候输入sudo mn --custom ./sj3_1.py --topo mytopo --controller=remote,ip=127.0.0.1,port=6653失败了,因为使用的是1.1版本,好像?后来就指定openflow协议是1.3版本的。sudo mn --custom ./sj3_1.py --topo mytopo --controller=remote,ip=127.0.0.1,port=6653 --switch ovsk,protocols=OpenFlow13之后就可以了。

3、利用OVS命令查看流表

参考链接:http://blog.csdn.net/rocson001/article/details/73163041
提交要求:截图查看步骤2所下发的流表
ovs-ofctl dump-flow s1

ovs-ofctl dump-flow s2

4、验证性测试

截图验证:

h1--h4互通
h2--h5互通
h3--h6互通
其余主机间无法通信

如图所示:

5、Wireshark抓包验证

提交要求:使用wireshark抓取,包含有VLAN tag的数据包,并截图验证
首先是开启wireshark

选要抓的包是从哪到哪的,然后开启抓包,同时也要在Mininet下相应的ping。
抓到的包如下:

以上是关于SDN第三次上机作业的主要内容,如果未能解决你的问题,请参考以下文章

SDN第三次上机作业

SDN第三次上机作业

17秋 SDN课程 第三次上机作业

SDN第三次上机作业

SDN第三次上机作业

# SDN第三次上机作业