Signed-off-by: nickcooper-zhangtonghao <n...@opencloud.tech> --- tests/mcast-snooping.at | 112 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+)
diff --git a/tests/mcast-snooping.at b/tests/mcast-snooping.at index c03aba3..90de8b3 100644 --- a/tests/mcast-snooping.at +++ b/tests/mcast-snooping.at @@ -29,6 +29,8 @@ dummy@ovs-dummy: hit:0 missed:0 p2 2/2: (dummy) ]) +ovs-appctl time/stop + # Send IGMPv3 query on p2 with vlan 1725 # 5c:8a:38:55:25:52 > 01:00:5e:00:00:01, ethertype 802.1Q (0x8100), length 64: vlan 1725, p 0, ethertype IPv4, # 172.17.25.1 > 224.0.0.1: igmp query v3 @@ -102,3 +104,113 @@ AT_CHECK([ovs-appctl mdb/show br0], [0], [dnl OVS_VSWITCHD_STOP AT_CLEANUP + +AT_SETUP([mcast - delete the port mdb when vlan configruation changed]) +OVS_VSWITCHD_START([]) + +AT_CHECK([ + ovs-vsctl set bridge br0 \ + datapath_type=dummy \ + mcast_snooping_enable=true \ + other-config:mcast-snooping-disable-flood-unregistered=false +], [0]) + +AT_CHECK([ovs-ofctl add-flow br0 action=normal]) + +AT_CHECK([ + ovs-vsctl add-port br0 p1 -- set Interface p1 type=dummy \ + other-config:hwaddr=aa:55:aa:55:00:01 ofport_request=1 \ + -- add-port br0 p2 \ + -- set Interface p2 type=dummy other-config:hwaddr=aa:55:aa:55:00:02 ofport_request=2 \ + -- add-port br0 p3 \ + -- set Interface p3 type=dummy other-config:hwaddr=aa:55:aa:55:00:03 ofport_request=3 +], [0]) + +ovs-appctl time/stop + +# send report packets +AT_CHECK([ + ovs-appctl netdev-dummy/receive p1 \ + '01005E010101000C29A027A18100000108004500001C000100004002CBAEAC10221EE001010112140CE9E0010101' + ovs-appctl netdev-dummy/receive p1 \ + '01005E010101000C29A027A28100000208004500001C000100004002CBAEAC10221EE001010112140CE9E0010101' +], [0]) + +# send query packets +AT_CHECK([ + ovs-appctl netdev-dummy/receive p3 \ + '01005E010101000C29A027D18100000108004500001C000100004002CBCBAC102201E00101011114EEEB00000000' + ovs-appctl netdev-dummy/receive p3 \ + '01005E010101000C29A027D28100000208004500001C000100004002CBCAAC102202E00101011114EEEB00000000' +], [0]) + +AT_CHECK([ovs-appctl mdb/show br0], [0], [dnl + port VLAN GROUP Age + 1 1 224.1.1.1 0 + 1 2 224.1.1.1 0 + 3 1 querier 0 + 3 2 querier 0 +]) + +AT_CHECK([ovs-vsctl set port p3 tag=2], [0]) + +AT_CHECK([ovs-appctl mdb/show br0], [0], [dnl + port VLAN GROUP Age + 1 1 224.1.1.1 0 + 1 2 224.1.1.1 0 +]) + +AT_CLEANUP + +AT_SETUP([mcast - delete the port mdb when port destroyed]) +OVS_VSWITCHD_START([]) + +AT_CHECK([ + ovs-vsctl set bridge br0 \ + datapath_type=dummy \ + mcast_snooping_enable=true \ + other-config:mcast-snooping-disable-flood-unregistered=false +], [0]) + +AT_CHECK([ovs-ofctl add-flow br0 action=normal]) + +AT_CHECK([ + ovs-vsctl add-port br0 p1 -- set Interface p1 type=dummy \ + other-config:hwaddr=aa:55:aa:55:00:01 ofport_request=1 \ + -- add-port br0 p2 \ + -- set Interface p2 type=dummy other-config:hwaddr=aa:55:aa:55:00:02 ofport_request=2 \ +], [0]) + +# send report packets +AT_CHECK([ + ovs-appctl netdev-dummy/receive p1 \ + '01005E010101000C29A027A18100000108004500001C000100004002CBAEAC10221EE001010112140CE9E0010101' + ovs-appctl netdev-dummy/receive p1 \ + '01005E010101000C29A027A28100000208004500001C000100004002CBAEAC10221EE001010112140CE9E0010101' +], [0]) + +# send query packets +AT_CHECK([ + ovs-appctl netdev-dummy/receive p2 \ + '01005E010101000C29A027D18100000108004500001C000100004002CBCBAC102201E00101011114EEEB00000000' + ovs-appctl netdev-dummy/receive p2 \ + '01005E010101000C29A027D28100000208004500001C000100004002CBCAAC102202E00101011114EEEB00000000' +], [0]) + +AT_CHECK([ovs-appctl mdb/show br0], [0], [dnl + port VLAN GROUP Age + 1 1 224.1.1.1 0 + 1 2 224.1.1.1 0 + 2 1 querier 0 + 2 2 querier 0 +]) + +AT_CHECK([ovs-vsctl del-port br0 p2], [0]) + +AT_CHECK([ovs-appctl mdb/show br0], [0], [dnl + port VLAN GROUP Age + 1 1 224.1.1.1 0 + 1 2 224.1.1.1 0 +]) + +AT_CLEANUP -- 1.8.3.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev