Message ID | CAPWQB7HWR3TVpxPSzb5a8p+g2wmxCoB5B7Tn5SGb8+AxEBy+jQ@mail.gmail.com |
---|---|
State | Not Applicable |
Headers | show |
-----Original Message----- From: <ovs-dev-bounces@openvswitch.org> on behalf of Joe Stringer <joe@ovn.org> Date: Thursday, July 20, 2017 at 11:17 AM To: Darrell Ball <dlu998@gmail.com> Cc: ovs dev <dev@openvswitch.org> Subject: Re: [ovs-dev] [patch_v1 2/2] System Tests: Improve reliability of an icmp test. On 16 July 2017 at 11:27, Darrell Ball <dlu998@gmail.com> wrote: > One SNAT test is based on a single ping being successful; > to make the result more predictable, static arp binding is now used. > Occasionally, tracing shows the reply side stack does not respond, > but this is much less common with this change. > I considered changing the test design itself, but I thought that > would not be testing the same situation. > > Signed-off-by: Darrell Ball <dlu998@gmail.com> > --- Thanks for improving the reliability of this test! I plan to roll in the following incremental per Ilya's review and push to master shortly: I ended up rejecting Ilya’s suggestion to use a for loop, because my main goal here is increased reliability. I updated V2 accordingly. Thanks Darrell diff --git a/tests/system-traffic.at b/tests/system-traffic.at index bc126bc4649d..418f1150e9b5 100644 --- a/tests/system-traffic.at +++ b/tests/system-traffic.at @@ -2692,29 +2692,16 @@ OVS_TRAFFIC_VSWITCHD_START() ADD_NAMESPACES(at_ns0, at_ns1) -ADD_VETH(p0, at_ns0, br0, "10.1.1.1/24") -NS_CHECK_EXEC([at_ns0], [ip link set dev p0 address e6:66:c1:11:11:11]) +ADD_VETH(p0, at_ns0, br0, "10.1.1.1/24", "e6:66:c1:11:11:11") NS_CHECK_EXEC([at_ns0], [arp -s 10.1.1.2 e6:66:c1:22:22:22]) -ADD_VETH(p1, at_ns1, br0, "10.1.1.2/24") -NS_CHECK_EXEC([at_ns1], [ip link set dev p1 address e6:66:c1:22:22:22]) +ADD_VETH(p1, at_ns1, br0, "10.1.1.2/24", "e6:66:c1:22:22:22") NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.1 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.240 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.241 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.242 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.243 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.244 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.245 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.246 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.247 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.248 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.249 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.250 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.251 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.252 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.253 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.254 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.255 e6:66:c1:11:11:11]) +dnl Set up static arp entries so we don't have to wait for the namespace to +dnl perform ARP before sending our ping below. +for i in 1 `seq 240 255`; do + NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.$i e6:66:c1:11:11:11]) +done dnl Allow any traffic from ns0->ns1. Only allow nd, return traffic from ns1->ns0. AT_DATA([flows.txt], [dnl _______________________________________________ dev mailing list dev@openvswitch.org https://urldefense.proofpoint.com/v2/url?u=https-3A__mail.openvswitch.org_mailman_listinfo_ovs-2Ddev&d=DwICAg&c=uilaK90D4TOVoH58JNXRgQ&r=BVhFA09CGX7JQ5Ih-uZnsw&m=BxXFlDZLby8jj4FFS7E2fLzuWE5X-CqTV-jO3FCnFUE&s=cv2DeUQAoS_f-EDOkhL1_WE-hd0NKP5D1vora3zB0Dg&e=
diff --git a/tests/system-traffic.at b/tests/system-traffic.at index bc126bc4649d..418f1150e9b5 100644 --- a/tests/system-traffic.at +++ b/tests/system-traffic.at @@ -2692,29 +2692,16 @@ OVS_TRAFFIC_VSWITCHD_START() ADD_NAMESPACES(at_ns0, at_ns1) -ADD_VETH(p0, at_ns0, br0, "10.1.1.1/24") -NS_CHECK_EXEC([at_ns0], [ip link set dev p0 address e6:66:c1:11:11:11]) +ADD_VETH(p0, at_ns0, br0, "10.1.1.1/24", "e6:66:c1:11:11:11") NS_CHECK_EXEC([at_ns0], [arp -s 10.1.1.2 e6:66:c1:22:22:22]) -ADD_VETH(p1, at_ns1, br0, "10.1.1.2/24") -NS_CHECK_EXEC([at_ns1], [ip link set dev p1 address e6:66:c1:22:22:22]) +ADD_VETH(p1, at_ns1, br0, "10.1.1.2/24", "e6:66:c1:22:22:22") NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.1 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.240 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.241 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.242 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.243 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.244 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.245 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.246 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.247 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.248 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.249 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.250 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.251 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.252 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.253 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.254 e6:66:c1:11:11:11]) -NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.255 e6:66:c1:11:11:11]) +dnl Set up static arp entries so we don't have to wait for the namespace to +dnl perform ARP before sending our ping below. +for i in 1 `seq 240 255`; do + NS_CHECK_EXEC([at_ns1], [arp -s 10.1.1.$i e6:66:c1:11:11:11]) +done dnl Allow any traffic from ns0->ns1. Only allow nd, return traffic from ns1->ns0.