• 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抓包,分析验证特定报文

  • 相关阅读:
    CStringArray序列化处理
    【转】C++ Incorrect Memory Usage and Corrupted Memory(模拟C++程序内存使用崩溃问题)
    【转】Native Thread for Win32 C- Creating Processes(通俗易懂,非常好)
    【转】Native Thread for Win32 B-Threads Synchronization(通俗易懂,非常好)
    【转】Native Thread for Win32 A- Create Thread(通俗易懂,非常好)
    【转】关于OnPaint的工作机制
    Window发声函数Beep、MessageBeep
    Sqlite
    VC++ Splash Window封装类CSplash
    通过代码注册COM、DLL组件
  • 原文地址:https://www.cnblogs.com/sayoko/p/11808935.html
Copyright © 2020-2023  润新知