sayoko

导航

2019 SDN上机第2次作业

  1. 利用mininet创建如下拓扑,要求拓扑支持OpenFlow 1.3协议,主机名、交换机名以及端口对应正确,请给出拓扑Mininet执行结果,展示端口连接情况
    ========================================================================
    拓扑由miniedit完成,并验证端口连接情况


  1. 直接在Open vSwitch下发流表,实现如下连通性要求,请逐条说明所下发的流表含义
    ==============================================

h1 -- h4互通

h2 -- h5互通

h3 -- h6互通

其余主机不通

 sudo ovs-ofctl add-flow -O OpenFlow13 s1 in_port=1,actions=push_vlan:0x8100,set_field:4097-\>vlan_vid,output:4

sudo ovs-ofctl add-flow -O OpenFlow13 s1 in_port=2,actions=push_vlan:0x8100,set_field:4098-\>vlan_vid,output:4

sudo ovs-ofctl add-flow -O OpenFlow13 s1 in_port=3,actions=push_vlan:0x8100,set_field:4099-\>vlan_vid,output:4

//以上是分别将h1,h2,h3三个主机里的转到交换机s1里的连接过程,in_port是指进来的端口号,actions指的是要进行的动作,set field值为4096+vlan_id,并且vlan优先级为0,即4096-8191,对应的vlan_id为0-4095,output指的是出口连接的4

sudo ovs-ofctl add-flow s1 in_port=4,dl_vlan=1,actions=strip_vlan,output:1

sudo ovs-ofctl add-flow s1 in_port=4,dl_vlan=2,actions=strip_vlan,output:2

sudo ovs-ofctl add-flow s1 in_port=4,dl_vlan=3,actions=strip_vlan,output:3

//以上是分别将从s2来的解包,从actions里可以看出是要剥掉报文内外层vlan tag,再进行转发。

//以下s2同理,s1和s2都要做才可以互通。

sudo ovs-ofctl add-flow -O OpenFlow13 s2 in_port=1,actions=push_vlan:0x8100,set_field:4097-\>vlan_vid,output:4

sudo ovs-ofctl add-flow -O OpenFlow13 s2 in_port=2,actions=push_vlan:0x8100,set_field:4098-\>vlan_vid,output:4

sudo ovs-ofctl add-flow -O OpenFlow13 s2 in_port=3,actions=push_vlan:0x8100,set_field:4099-\>vlan_vid,output:4

sudo ovs-ofctl add-flow s2 in_port=4,dl_vlan=1,actions=strip_vlan,output:1

sudo ovs-ofctl add-flow s2 in_port=4,dl_vlan=2,actions=strip_vlan,output:2

sudo ovs-ofctl add-flow s2 in_port=4,dl_vlan=3,actions=strip_vlan,output:3
  1. 直接在Open vSwitch查看流表,提交OVS命令执行结果
    ==================================

查询命令为:

sudo ovs-ofctl -O OpenFlow13 dump-flows s1

  1. 提交主机连通性测试结果,验证流表的有效性
    =======================

如图所示,h1仅和h4相连,h2仅和h5相连,h3仅和h6相连

  1. 利用Wireshark抓包,分析验证特定报文

posted on 2019-11-06 22:11  sayoko  阅读(233)  评论(0编辑  收藏  举报