From: Neale Ranns Date: Mon, 12 Sep 2016 13:15:55 +0000 (+0100) Subject: CSIT-407: ARP entry != FIB route. X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=commitdiff_plain;h=3451ac9de00a2811d7a5e47d11e0b74b3b9dc855 CSIT-407: ARP entry != FIB route. Change-Id: I2fff596d9bdc67766e0df1c08b3ffab1aab459e6 Signed-off-by: Neale Ranns --- diff --git a/tests/func/ipfix/ipfix_ipv4.robot b/tests/func/ipfix/ipfix_ipv4.robot index d0b01f6907..200bd34bcc 100644 --- a/tests/func/ipfix/ipfix_ipv4.robot +++ b/tests/func/ipfix/ipfix_ipv4.robot @@ -40,8 +40,9 @@ *** Variables *** | ${dut1_to_tg_ip}= | 192.168.1.1 +| ${tg_to_dut1_ip}= | 192.168.1.2 | ${dut2_to_dut1_ip}= | 192.168.2.1 -| ${tg_to_dut1_ip}= | 16.0.0.1 +| ${route_ip}= | 16.0.0.1 | ${prefix_length}= | 24 | ${ip_version}= | ip4 | ${port}= | 80 @@ -62,20 +63,23 @@ | | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length} | | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${tg_to_dut1_ip} | | ... | ${tg_to_dut1_mac} +| | And Vpp Route Add +| | ... | ${dut1_node} | ${route_ip} | 32 +| | ... | ${tg_to_dut1_ip} | ${dut1_to_tg} | resolve_attempts=${NONE} | | ${table_index} | ${skip_n} | ${match_n}= | | ... | And VPP creates classify table L3 | ${dut1_node} | ${ip_version} | src | | And VPP configures classify session L3 | ${dut1_node} | permit | | ... | ${table_index} | ${skip_n} | ${match_n} | ${ip_version} | src -| | ... | ${tg_to_dut1_ip} +| | ... | ${route_ip} | | When Assign interface to flow table | ${dut1_node} | ${dut1_to_tg} | | ... | ${table_index} | ip_version=${ip_version} -| | And Setup IPFIX exporter | ${dut1_node} | ${tg_to_dut1_ip} +| | And Setup IPFIX exporter | ${dut1_node} | ${route_ip} | | ... | ${dut1_to_tg_ip} | interval=5 | | And Set IPFIX stream | ${dut1_node} | ${1} | | And Assign classify table to exporter | ${dut1_node} | ${table_index} | | ... | ${ip_version} | | Then Send packets and verify IPFIX | ${tg_node} | ${dut1_node} -| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${tg_to_dut1_ip} | ${dut1_to_tg_ip} +| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${route_ip} | ${dut1_to_tg_ip} | | ... | count=0 | TC02: DUT reports packet flow for traffic by source address @@ -90,22 +94,25 @@ | | And Interfaces in 3-node path are up | | And Set Interface Address | ${dut1_node} | | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length} -| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${tg_to_dut1_ip} +| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${route_ip} | | ... | ${tg_to_dut1_mac} +| | And Vpp Route Add +| | ... | ${dut1_node} | ${route_ip} | 32 +| | ... | ${tg_to_dut1_ip} | ${dut1_to_tg} | resolve_attempts=${NONE} | | ${table_index} | ${skip_n} | ${match_n}= | | ... | And VPP creates classify table L3 | ${dut1_node} | ${ip_version} | src | | And VPP configures classify session L3 | ${dut1_node} | permit | | ... | ${table_index} | ${skip_n} | ${match_n} | ${ip_version} | src -| | ... | ${tg_to_dut1_ip} +| | ... | ${route_ip} | | When Assign interface to flow table | ${dut1_node} | ${dut1_to_tg} | | ... | ${table_index} | ip_version=${ip_version} -| | And Setup IPFIX exporter | ${dut1_node} | ${tg_to_dut1_ip} +| | And Setup IPFIX exporter | ${dut1_node} | ${route_ip} | | ... | ${dut1_to_tg_ip} | interval=5 | | And Set IPFIX stream | ${dut1_node} | ${1} | | And Assign classify table to exporter | ${dut1_node} | ${table_index} | | ... | ${ip_version} | | Then Send packets and verify IPFIX | ${tg_node} | ${dut1_node} -| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${tg_to_dut1_ip} | ${dut1_to_tg_ip} +| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${route_ip} | ${dut1_to_tg_ip} | TC03: DUT reports packet flow for traffic with local destination address | | [Documentation] @@ -120,8 +127,11 @@ | | And Interfaces in 3-node path are up | | And Set Interface Address | ${dut1_node} | | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length} -| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${tg_to_dut1_ip} +| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${route_ip} | | ... | ${tg_to_dut1_mac} +| | And Vpp Route Add +| | ... | ${dut1_node} | ${route_ip} | 32 +| | ... | ${tg_to_dut1_ip} | ${dut1_to_tg} | resolve_attempts=${NONE} | | ${table_index} | ${skip_n} | ${match_n}= | | ... | And VPP creates classify table L3 | ${dut1_node} | ${ip_version} | dst | | And VPP configures classify session L3 | ${dut1_node} | permit @@ -129,13 +139,13 @@ | | ... | ${dut1_to_tg_ip} | | When Assign interface to flow table | ${dut1_node} | ${dut1_to_tg} | | ... | ${table_index} | ip_version=${ip_version} -| | And Setup IPFIX exporter | ${dut1_node} | ${tg_to_dut1_ip} +| | And Setup IPFIX exporter | ${dut1_node} | ${route_ip} | | ... | ${dut1_to_tg_ip} | interval=5 | | And Set IPFIX stream | ${dut1_node} | ${1} | | And Assign classify table to exporter | ${dut1_node} | ${table_index} | | ... | ${ip_version} | | Then Send packets and verify IPFIX | ${tg_node} | ${dut1_node} -| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${tg_to_dut1_ip} | ${dut1_to_tg_ip} +| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${route_ip} | ${dut1_to_tg_ip} | TC04: DUT reports packet flow for traffic with remote destination address | | [Documentation] @@ -151,8 +161,11 @@ | | And Interfaces in 3-node path are up | | And Set Interface Address | ${dut1_node} | | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length} -| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${tg_to_dut1_ip} +| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${route_ip} | | ... | ${tg_to_dut1_mac} +| | And Vpp Route Add +| | ... | ${dut1_node} | ${route_ip} | 32 +| | ... | ${tg_to_dut1_ip} | ${dut1_to_tg} | resolve_attempts=${NONE} | | And Add ARP on DUT | ${dut1_node} | ${dut1_to_dut2} | ${dut2_to_dut1_ip} | | ... | ${dut2_to_dut1_mac} | | ${table_index} | ${skip_n} | ${match_n}= @@ -162,13 +175,13 @@ | | ... | ${dut2_to_dut1_ip} | | When Assign interface to flow table | ${dut1_node} | ${dut1_to_tg} | | ... | ${table_index} | ip_version=${ip_version} -| | And Setup IPFIX exporter | ${dut1_node} | ${tg_to_dut1_ip} +| | And Setup IPFIX exporter | ${dut1_node} | ${route_ip} | | ... | ${dut1_to_tg_ip} | interval=5 | | And Set IPFIX stream | ${dut1_node} | ${1} | | And Assign classify table to exporter | ${dut1_node} | ${table_index} | | ... | ${ip_version} | | Then Send packets and verify IPFIX | ${tg_node} | ${dut1_node} -| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${tg_to_dut1_ip} | ${dut2_to_dut1_ip} +| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${route_ip} | ${dut2_to_dut1_ip} | TC05: DUT reports packet flow for traffic by source and destination port | | [Documentation] @@ -183,24 +196,24 @@ | | And Interfaces in 3-node path are up | | And Set Interface Address | ${dut1_node} | | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length} -| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${tg_to_dut1_ip} +| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${route_ip} | | ... | ${tg_to_dut1_mac} | | ${table_index} | ${skip_n} | ${match_n}= | | ... | And VPP creates classify table L3 | ${dut1_node} | ${ip_version} | | ... | src proto l4 src_port dst_port | | And VPP configures classify session generic | ${dut1_node} | | ... | acl-hit-next permit | ${table_index} | ${skip_n} | ${match_n} -| | ... | l3 ${ip_version} src ${tg_to_dut1_ip} +| | ... | l3 ${ip_version} src ${route_ip} | | ... | proto 6 l4 src_port ${port} dst_port ${port} | | When Assign interface to flow table | ${dut1_node} | ${dut1_to_tg} | | ... | ${table_index} | ip_version=${ip_version} -| | And Setup IPFIX exporter | ${dut1_node} | ${tg_to_dut1_ip} +| | And Setup IPFIX exporter | ${dut1_node} | ${route_ip} | | ... | ${dut1_to_tg_ip} | interval=5 | | And Set IPFIX stream | ${dut1_node} | ${1} | | And Assign classify table to exporter | ${dut1_node} | ${table_index} | | ... | ${ip_version} | | Then Send packets and verify IPFIX | ${tg_node} | ${dut1_node} -| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${tg_to_dut1_ip} | ${dut1_to_tg_ip} +| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${route_ip} | ${dut1_to_tg_ip} | | ... | port=${port} | TC06: DUT reports packet flow with a large number of packets @@ -215,22 +228,25 @@ | | And Interfaces in 3-node path are up | | And Set Interface Address | ${dut1_node} | | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length} -| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${tg_to_dut1_ip} +| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${route_ip} | | ... | ${tg_to_dut1_mac} +| | And Vpp Route Add +| | ... | ${dut1_node} | ${route_ip} | 32 +| | ... | ${tg_to_dut1_ip} | ${dut1_to_tg} | resolve_attempts=${NONE} | | ${table_index} | ${skip_n} | ${match_n}= | | ... | And VPP creates classify table L3 | ${dut1_node} | ${ip_version} | src | | And VPP configures classify session L3 | ${dut1_node} | permit | | ... | ${table_index} | ${skip_n} | ${match_n} | ${ip_version} | src -| | ... | ${tg_to_dut1_ip} +| | ... | ${route_ip} | | When Assign interface to flow table | ${dut1_node} | ${dut1_to_tg} | | ... | ${table_index} | ip_version=${ip_version} -| | And setup IPFIX exporter | ${dut1_node} | ${tg_to_dut1_ip} | ${dut1_to_tg_ip} +| | And setup IPFIX exporter | ${dut1_node} | ${route_ip} | ${dut1_to_tg_ip} | | ... | interval=5 | | And Set IPFIX stream | ${dut1_node} | ${1} | | And Assign classify table to exporter | ${dut1_node} | ${table_index} | | ... | ${ip_version} | | Then Send packets and verify IPFIX | ${tg_node} | ${dut1_node} -| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${tg_to_dut1_ip} | ${dut1_to_tg_ip} +| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${route_ip} | ${dut1_to_tg_ip} | | ... | count=20000 | timeout=10 | TC07: DUT reports packet flow when multiple sessions are configured @@ -247,25 +263,28 @@ | | And Interfaces in 3-node path are up | | And Set Interface Address | ${dut1_node} | | ... | ${dut1_to_tg} | ${dut1_to_tg_ip} | ${prefix_length} -| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${tg_to_dut1_ip} +| | And Add ARP on DUT | ${dut1_node} | ${dut1_to_tg} | ${route_ip} | | ... | ${tg_to_dut1_mac} +| | And Vpp Route Add +| | ... | ${dut1_node} | ${route_ip} | 32 +| | ... | ${tg_to_dut1_ip} | ${dut1_to_tg} | resolve_attempts=${NONE} | | ${table_index} | ${skip_n} | ${match_n}= | | ... | And VPP creates classify table L3 | ${dut1_node} | ${ip_version} | | ... | src proto l4 src_port dst_port | | :FOR | ${index} | IN RANGE | ${sessions} | | | VPP configures classify session generic | ${dut1_node} | | | ... | acl-hit-next permit | ${table_index} | ${skip_n} | ${match_n} -| | | ... | l3 ${ip_version} src ${tg_to_dut1_ip} +| | | ... | l3 ${ip_version} src ${route_ip} | | | ... | proto 6 l4 src_port ${index} dst_port ${index} | | When Assign interface to flow table | ${dut1_node} | ${dut1_to_tg} | | ... | ${table_index} | ip_version=${ip_version} -| | And setup IPFIX exporter | ${dut1_node} | ${tg_to_dut1_ip} +| | And setup IPFIX exporter | ${dut1_node} | ${route_ip} | | ... | ${dut1_to_tg_ip} | | ... | mtu=1450 | interval=5 | | And Set IPFIX stream | ${dut1_node} | ${1} | | And Assign classify table to exporter | ${dut1_node} | ${table_index} | | ... | ${ip_version} | | Then Send session sweep and verify IPFIX | ${tg_node} | ${dut1_node} -| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${tg_to_dut1_ip} | ${dut1_to_tg_ip} +| | ... | ${tg_to_dut1} | ${dut1_to_tg} | ${route_ip} | ${dut1_to_tg_ip} | | ... | ${sessions} | timeout=10 | count=3 # TODO: DUT reports packet flow when ACL is configured with wildcards diff --git a/tests/func/softwire/lightweight_4over6.robot b/tests/func/softwire/lightweight_4over6.robot index 68eea42d8e..06f7c6efad 100644 --- a/tests/func/softwire/lightweight_4over6.robot +++ b/tests/func/softwire/lightweight_4over6.robot @@ -41,6 +41,7 @@ *** Variables *** | ${dut_ip4}= | 10.0.0.1 | ${dut_ip6}= | 2001:0::1 +| ${tg_ip6}= | 2001:0::2 | ${ipv4_prefix_len}= | 24 | ${ipv6_prefix_len}= | 64 @@ -77,8 +78,11 @@ | | ... | ${dut_node} | ${dut_to_tg_if1} | ${dut_ip4} | ${ipv4_prefix_len} | | ... | ${dut_node} | ${dut_to_tg_if2} | ${dut_ip6} | ${ipv6_prefix_len} | | And Add IP Neighbor -| | ... | ${dut_node} | ${dut_to_tg_if2} | ${lw_rule_ipv6_dst} +| | ... | ${dut_node} | ${dut_to_tg_if2} | ${tg_ip6} | | ... | ${tg_to_dut_if2_mac} +| | And Vpp Route Add +| | ... | ${dut_node} | ${lw_rule_ipv6_dst} | 128 +| | ... | ${tg_ip6} | ${dut_to_tg_if2} | resolve_attempts=${NONE} | | ${domain_index}= | | ... | When Map Add Domain | | ... | ${dut_node} | ${lw_ipv4_pfx} | ${lw_ipv6_pfx} @@ -111,8 +115,11 @@ TC02: Encapsulate IPv4 ICMP into IPv6. IPv6 dst depends on IPv4 addr and ICMP ID | | ... | ${dut_node} | ${dut_to_tg_if1} | ${dut_ip4} | ${ipv4_prefix_len} | | ... | ${dut_node} | ${dut_to_tg_if2} | ${dut_ip6} | ${ipv6_prefix_len} | | And Add IP Neighbor -| | ... | ${dut_node} | ${dut_to_tg_if2} | ${lw_rule_ipv6_dst} +| | ... | ${dut_node} | ${dut_to_tg_if2} | ${tg_ip6} | | ... | ${tg_to_dut_if2_mac} +| | And Vpp Route Add +| | ... | ${dut_node} | ${lw_rule_ipv6_dst} | 128 +| | ... | ${tg_ip6} | ${dut_to_tg_if2} | resolve_attempts=${NONE} | | ${domain_index}= | | ... | When Map Add Domain | | ... | ${dut_node} | ${lw_ipv4_pfx} | ${lw_ipv6_pfx} @@ -177,8 +184,11 @@ TC04: Hairpinning of traffic between two lwB4 | | ... | ${dut_node} | ${dut_to_tg_if1} | ${dut_ip4} | ${ipv4_prefix_len} | | ... | ${dut_node} | ${dut_to_tg_if2} | ${dut_ip6} | ${ipv6_prefix_len} | | And Add IP Neighbor -| | ... | ${dut_node} | ${dut_to_tg_if2} | ${lw_rule_2_ipv6_dst} +| | ... | ${dut_node} | ${dut_to_tg_if2} | ${tg_ip6} | | ... | ${tg_to_dut_if2_mac} +| | And Vpp Route Add +| | ... | ${dut_node} | ${lw_rule_2_ipv6_dst} | 128 +| | ... | ${tg_ip6} | ${dut_to_tg_if2} | resolve_attempts=${NONE} | | ${domain_index}= | | ... | When Map Add Domain | | ... | ${dut_node} | ${lw_ipv4_pfx} | ${lw_ipv6_pfx} diff --git a/tests/func/tap/tap_interface.robot b/tests/func/tap/tap_interface.robot index e123cc82b7..13a8e619fb 100644 --- a/tests/func/tap/tap_interface.robot +++ b/tests/func/tap/tap_interface.robot @@ -70,6 +70,7 @@ | ${namespace1}= | nmspace1 | ${namespace2}= | nmspace2 +| ${dut_ip_address}= | 192.168.0.1 | ${tg_ip_address}= | 192.168.0.2 | ${tg_ip_address_SHG}= | 16.0.10.20 | ${tg_ip_address_GW}= | 192.168.0.0 @@ -131,6 +132,8 @@ | | ${int1}= | And Add Tap Interface | ${dut_node} | ${tap_int1} | | | And Set Interface Address | | ... | ${dut_node} | ${int1} | ${tap1_VPP_ip} | ${prefix} +| | And Set Interface Address +| | ... | ${dut_node} | ${dut_to_tg_if1} | ${dut_ip_address} | ${prefix} | | And Set Interface State | ${dut_node} | ${int1} | up | | And Set Linux Interface MAC | ${dut_node} | ${tap_int1} | ${tap1_NM_mac} | | And Set Linux Interface IP | ${dut_node} @@ -160,6 +163,8 @@ | | ${int1}= | And Add Tap Interface | ${dut_node} | ${tap_int1} | | | And Set Interface Address | | ... | ${dut_node} | ${int1} | ${tap1_VPP_ip} | ${prefix} +| | And Set Interface Address +| | ... | ${dut_node} | ${dut_to_tg_if1} | ${dut_ip_address} | ${prefix} | | And Set Interface State | ${dut_node} | ${int1} | up | | When Create Namespace | ${dut_node} | ${namespace1} | | And Attach Interface To Namespace | ${dut_node}