X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=csit%2Fsuites%2Fopenstack%2Fsecuritygroup%2Fsecurity_group_l3bcast.robot;h=4a7a1ad7c293b6df4117cbf8ce346367c9793689;hb=94651ca9711d8eb316721775561e815830bc6c7e;hp=33be20cb2c47bc78a4eeaf00b1f276c7d61742b8;hpb=0a7b377645f729d94c7e19cf93b3eb13836f6bdd;p=integration%2Ftest.git diff --git a/csit/suites/openstack/securitygroup/security_group_l3bcast.robot b/csit/suites/openstack/securitygroup/security_group_l3bcast.robot index 33be20cb2c..4a7a1ad7c2 100644 --- a/csit/suites/openstack/securitygroup/security_group_l3bcast.robot +++ b/csit/suites/openstack/securitygroup/security_group_l3bcast.robot @@ -33,24 +33,43 @@ ${ROUTER} sgbcast_router ${DUMP_FLOW} sudo ovs-ofctl dump-flows br-int -OOpenflow13 ${DUMP_PORT_DESC} sudo ovs-ofctl dump-ports-desc br-int -OOpenflow13 ${PACKET_COUNT} 5 -${PACKET_COUNT_CMB} 10 -${PACKET_DIFF} 0 -${PACKET_DIFF_CMB} 5 ${BCAST_IP} 255.255.255.255 -${SUBNET1_BCAST_IP} 10.0.0.255 -${SUBNET2_BCAST_IP} 20.0.0.255 +${SUBNET1_BCAST_IP} 55.0.0.255 +${SUBNET2_BCAST_IP} 56.0.0.255 ${ENABLE_BCAST} echo 0 | sudo tee /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts -*** Test case *** +*** Test Case *** Verify Network Broadcast traffic between the VMs hosted in Single Network [Documentation] This TC is to verify Network Broadcast traffic between the VMs hosted in Same Network on same/different compute node + ${pkt_check} = BuiltIn.Set Variable If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" 10 5 Wait Until Keyword Succeeds 30s 5s Verify L3Broadcast With Antispoofing Table ${OS_CMP1_IP} ${EGRESS_ACL_TABLE} ${BCAST_IP} - ... @{VM_IPS}[0] same + ... @{VM_IPS}[0] same pingsuccess pkt_check=${pkt_check} Verify Network Broadcast traffic between the VMs hosted in Multi Network [Documentation] This TC is to verify Network Broadcast traffic between the VMs hosted in Different Network on same/different compute node. + ${pkt_check} = BuiltIn.Set Variable If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" 5 0 Wait Until Keyword Succeeds 30s 5s Verify L3Broadcast With Antispoofing Table ${OS_CMP1_IP} ${EGRESS_ACL_TABLE} ${BCAST_IP} - ... @{VM_IPS}[3] different + ... @{VM_IPS}[3] different pingsuccess pkt_check=${pkt_check} + +Verify Subnet Broadcast traffic between the VMs hosted on same compute node in Single Network + [Documentation] Verify L3-Subnet Broadcast traffic between the VMs hosted on same compute node in Single Network + Wait Until Keyword Succeeds 30s 5s Verify L3Broadcast With Antispoofing Table ${OS_CMP1_IP} ${EGRESS_ACL_TABLE} ${SUBNET1_BCAST_IP} + ... @{VM_IPS}[0] same pingsuccess ${VM2_SUBMETA} pkt_check=5 additional_args=| grep ${VM2_SUBMETA} + +Verify Subnet Broadcast traffic between the VMs hosted on Different compute node in Single Network + [Documentation] Verify L3-Subnet Broadcast traffic between the VMs hosted on same compute node in Single Network + Wait Until Keyword Succeeds 30s 5s Verify L3Broadcast With Antispoofing Table ${OS_CMP2_IP} ${EGRESS_ACL_TABLE} ${SUBNET1_BCAST_IP} + ... @{VM_IPS}[0] same pingsuccess ${VM3_SUBMETA} pkt_check=5 additional_args=| grep ${VM3_SUBMETA} + +Verify Subnet Broadcast traffic between the VMs hosted on same compute node in Multi Network + [Documentation] Verify L3-Subnet Broadcast traffic between the VMs hosted on same compute node in Multi Network + Wait Until Keyword Succeeds 30s 5s Verify L3Broadcast With Antispoofing Table ${OS_CMP1_IP} ${EGRESS_ACL_TABLE} ${SUBNET2_BCAST_IP} + ... @{VM_IPS}[0] different nosuccess ${VM4_SUBMETA} pkt_check=0 additional_args=| grep ${VM4_SUBMETA} + +Verify Subnet Broadcast traffic between the VMs hosted on Different compute node in Multi Network + [Documentation] Verify L3-Subnet Broadcast traffic between the VMs hosted on Different compute node in Multi Network + Wait Until Keyword Succeeds 30s 5s Verify L3Broadcast With Antispoofing Table ${OS_CMP2_IP} ${EGRESS_ACL_TABLE} ${SUBNET2_BCAST_IP} + ... @{VM_IPS}[0] different nosuccess ${VM5_SUBMETA} pkt_check=0 additional_args=| grep ${VM5_SUBMETA} *** Keywords *** Start Suite @@ -61,24 +80,30 @@ Start Suite OpenStackOperations.Get Suite Debugs Create Setup - : FOR ${network} IN @{NETWORKS} - \ OpenStackOperations.Create Network ${network} - : FOR ${i} IN RANGE len(${NETWORKS}) - \ OpenStackOperations.Create SubNet @{NETWORKS}[${i}] @{SUBNETS}[${i}] @{SUBNET_CIDRS}[${i}] + FOR ${network} IN @{NETWORKS} + OpenStackOperations.Create Network ${network} + END + FOR ${i} IN RANGE len(${NETWORKS}) + OpenStackOperations.Create SubNet @{NETWORKS}[${i}] @{SUBNETS}[${i}] @{SUBNET_CIDRS}[${i}] + END OpenStackOperations.Create Allow All SecurityGroup @{SECURITY_GROUP}[0] OpenStackOperations.Create Router ${ROUTER} - : FOR ${interface} IN @{SUBNETS} - \ OpenStackOperations.Add Router Interface ${ROUTER} ${interface} - : FOR ${port_net1} IN @{NET_1_PORTS} - \ OpenStackOperations.Create Port @{NETWORKS}[0] ${port_net1} sg=@{SECURITY_GROUP}[0] - : FOR ${port_net2} IN @{NET_2_PORTS} - \ OpenStackOperations.Create Port @{NETWORKS}[1] ${port_net2} sg=@{SECURITY_GROUP}[0] + FOR ${interface} IN @{SUBNETS} + OpenStackOperations.Add Router Interface ${ROUTER} ${interface} + END + FOR ${port_net1} IN @{NET_1_PORTS} + OpenStackOperations.Create Port @{NETWORKS}[0] ${port_net1} sg=@{SECURITY_GROUP}[0] + END + FOR ${port_net2} IN @{NET_2_PORTS} + OpenStackOperations.Create Port @{NETWORKS}[1] ${port_net2} sg=@{SECURITY_GROUP}[0] + END @{ports} = BuiltIn.Create List @{NET_1_PORTS}[0] @{NET_1_PORTS}[1] @{NET_1_PORTS}[2] @{NET_2_PORTS}[0] @{NET_2_PORTS}[1] @{vms} = BuiltIn.Create List @{NET_1_VMS}[0] @{NET_1_VMS}[1] @{NET_1_VMS}[2] @{NET_2_VMS}[0] @{NET_2_VMS}[1] @{nodes} = BuiltIn.Create List ${OS_CMP1_HOSTNAME} ${OS_CMP1_HOSTNAME} ${OS_CMP2_HOSTNAME} ${OS_CMP1_HOSTNAME} ${OS_CMP2_HOSTNAME} - : FOR ${port} ${vm} ${node} IN ZIP ${ports} ${vms} + FOR ${port} ${vm} ${node} IN ZIP ${ports} ${vms} ... ${nodes} - \ OpenStackOperations.Create Vm Instance With Port On Compute Node ${port} ${vm} ${node} sg=@{SECURITY_GROUP}[0] + OpenStackOperations.Create Vm Instance With Port On Compute Node ${port} ${vm} ${node} sg=@{SECURITY_GROUP}[0] + END @{vms} = Collections.Combine Lists ${NET_1_VMS} ${NET_2_VMS} @{VM_IPS} = OpenStackOperations.Get VM IPs @{vms} BuiltIn.Should Not Contain ${VM_IPS} None @@ -129,20 +154,20 @@ Get Submetadata ${cmd2} = Utils.Run Command On Remote System And Log ${OS_CMP2_IP} ${DUMP_FLOW} | grep ${EGRESS_LPORT_DISPATCHER_TABLE} | grep write_metadata: ${output2} = String.Get Regexp Matches ${cmd2} reg6=(\\w+) 1 ${metalist} = Collections.Combine Lists ${output1} ${output2} - : FOR ${meta} IN @{metalist} - \ ${metadata_check_status} = Run Keyword And Return Status should contain ${vm_metadata} ${meta} - \ Return From Keyword if ${metadata_check_status} == True ${meta} + FOR ${meta} IN @{metalist} + ${metadata_check_status} = Run Keyword And Return Status should contain ${vm_metadata} ${meta} + Return From Keyword if ${metadata_check_status} == True ${meta} + END Verify L3Broadcast With Antispoofing Table - [Arguments] ${OS_COMPUTE_IP} ${EGRESS_ACL_TABLE} ${BCAST_IP} ${vm_ip} ${subnet_var} + [Arguments] ${OS_COMPUTE_IP} ${EGRESS_ACL_TABLE} ${BCAST_IP} ${vm_ip} ${subnet_var} ${ping_response}='pingsuccess' + ... ${vm_submeta}='' ${pkt_check}=0 ${additional_args}=${EMPTY} [Documentation] Verify the l3 broadcast requests are hitting to antispoofing table in same subnet - ${get_pkt_count_before_bcast} = OvsManager.Get Packet Count In Table For IP ${OS_COMPUTE_IP} ${EGRESS_ACL_TABLE} ${BCAST_IP} + ${get_pkt_count_before_bcast} = OvsManager.Get Packet Count In Table For IP ${OS_COMPUTE_IP} ${EGRESS_ACL_TABLE} ${BCAST_IP} additional_args=| grep ${vm_submeta} ${output} = OpenStackOperations.Execute Command on VM Instance @{NETWORKS}[0] ${vm_ip} ping -c ${PACKET_COUNT} ${BCAST_IP} - BuiltIn.Should Contain ${output} ${PING_REGEXP} - ${bcast_egress} = Utils.Run Command On Remote System And Log ${OS_COMPUTE_IP} ${DUMP_FLOW} | grep table=${EGRESS_ACL_TABLE} | grep ${BCAST_IP} - ${get_pkt_count_after_bcast} = OvsManager.Get Packet Count In Table For IP ${OS_COMPUTE_IP} ${EGRESS_ACL_TABLE} ${BCAST_IP} + BuiltIn.Run Keyword If '${ping_response}'=='pingsuccess' BuiltIn.Should Contain ${output} ${PING_REGEXP} + ... ELSE BuiltIn.Should Contain ${output} ${NO_PING_REGEXP} + ${bcast_egress} = Utils.Run Command On Remote System And Log ${OS_COMPUTE_IP} ${DUMP_FLOW} | grep table=${EGRESS_ACL_TABLE} | grep ${BCAST_IP} ${additional_args} + ${get_pkt_count_after_bcast} = OvsManager.Get Packet Count In Table For IP ${OS_COMPUTE_IP} ${EGRESS_ACL_TABLE} ${BCAST_IP} additional_args=| grep ${vm_submeta} ${pkt_diff} = Evaluate int(${get_pkt_count_after_bcast})-int(${get_pkt_count_before_bcast}) - ${pkt_diff_expected} = BuiltIn.Set Variable If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" ${PACKET_DIFF_CMB} ${PACKET_DIFF} - ${pkt_count} = BuiltIn.Set Variable If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" ${PACKET_COUNT_CMB} ${PACKET_COUNT} - BuiltIn.Run Keyword If '${subnet_var}' == 'same' Should Be Equal As Numbers ${pkt_diff} ${pkt_count} - ... ELSE Should Be True ${pkt_diff} == ${pkt_diff_expected} + BuiltIn.Should Be Equal As Numbers ${pkt_diff} ${pkt_check}