From patchwork Wed Mar 1 22:48:04 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Garver X-Patchwork-Id: 734392 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3vYVzc2Yc5z9s7q for ; Thu, 2 Mar 2017 09:51:08 +1100 (AEDT) Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id F38E0B73; Wed, 1 Mar 2017 22:48:15 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@mail.linuxfoundation.org Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 8C6E2B4C for ; Wed, 1 Mar 2017 22:48:12 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id A9BEE261 for ; Wed, 1 Mar 2017 22:48:09 +0000 (UTC) Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 46426C05493E for ; Wed, 1 Mar 2017 22:48:10 +0000 (UTC) Received: from wsfd-netdev-buildsys.ntdv.lab.eng.bos.redhat.com (wsfd-netdev-buildsys.ntdv.lab.eng.bos.redhat.com [10.19.17.61]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id v21Mm6OO024652 for ; Wed, 1 Mar 2017 17:48:09 -0500 From: Eric Garver To: ovs dev Date: Wed, 1 Mar 2017 17:48:04 -0500 Message-Id: <20170301224805.619-7-e@erig.me> In-Reply-To: <20170301224805.619-1-e@erig.me> References: <20170301224805.619-1-e@erig.me> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Wed, 01 Mar 2017 22:48:10 +0000 (UTC) X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: [ovs-dev] [PATCH 6/7] system-traffic: 802.1ad: Add push/pop test cases. X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: ovs-dev-bounces@openvswitch.org Errors-To: ovs-dev-bounces@openvswitch.org Two test cases to push and pop an outer tag between two "customer" bridges. One to push/pop 0x88a8. One to push/pop a second 0x8100. Signed-off-by: Eric Garver --- tests/system-traffic.at | 112 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) diff --git a/tests/system-traffic.at b/tests/system-traffic.at index d062124ba3ca..9cce9467e20b 100644 --- a/tests/system-traffic.at +++ b/tests/system-traffic.at @@ -3178,3 +3178,115 @@ NS_CHECK_EXEC([at_ns0], [ping -q -c 1 -w 3 10.2.2.2], [1], [ignore]) OVS_TRAFFIC_VSWITCHD_STOP AT_CLEANUP + + +AT_SETUP([802.1ad - push/pop outer 802.1ad]) +OVS_TRAFFIC_VSWITCHD_START([set Open_vSwitch . other_config:vlan-limit=0]) +OVS_CHECK_8021AD() + +ADD_BR([br1]) +ADD_BR([br2]) +ADD_NAMESPACES(at_ns0, at_ns1) + +AT_CHECK([ip link add ovs-p0 type veth peer name ovs-p1]) +AT_CHECK([ip link set dev ovs-p0 up]) +AT_CHECK([ip link set dev ovs-p1 up]) +AT_CHECK([ovs-vsctl add-port br0 ovs-p0]) +AT_CHECK([ovs-vsctl add-port br1 ovs-p1]) +on_exit 'ip link del ovs-p0' + +AT_CHECK([ip link add ovs-p2 type veth peer name ovs-p3]) +AT_CHECK([ip link set dev ovs-p2 up]) +AT_CHECK([ip link set dev ovs-p3 up]) +AT_CHECK([ovs-vsctl add-port br0 ovs-p2]) +AT_CHECK([ovs-vsctl add-port br2 ovs-p3]) +on_exit 'ip link del ovs-p2' + +ADD_VETH(p4, at_ns0, br1, "10.1.1.1/24") +ADD_VETH(p5, at_ns1, br2, "10.1.1.2/24") +ADD_CVLAN(p4, at_ns0, 100, "10.2.2.1/24") +ADD_CVLAN(p5, at_ns1, 100, "10.2.2.2/24") + +AT_DATA([flows-br0.txt], [dnl +priority=1 action=drop +priority=100 in_port=1 action=push_vlan:0x88a8,mod_vlan_vid=4094,output:2 +priority=100 in_port=2 action=push_vlan:0x88a8,mod_vlan_vid=4094,output:1 +]) + +AT_DATA([flows-customer-br.txt], [dnl +priority=1 action=normal +priority=100 in_port=1 vlan_tci=0x1000/0x1000 action=pop_vlan,normal +]) + +AT_CHECK([ovs-ofctl --bundle add-flows br0 flows-br0.txt]) +AT_CHECK([ovs-ofctl --bundle add-flows br1 flows-customer-br.txt]) +AT_CHECK([ovs-ofctl --bundle add-flows br2 flows-customer-br.txt]) + +OVS_WAIT_UNTIL([ip netns exec at_ns0 ping -c 1 10.2.2.2]) + +NS_CHECK_EXEC([at_ns0], [ping -q -c 3 -i 0.3 -w 2 10.2.2.2 | FORMAT_PING], [0], [dnl +3 packets transmitted, 3 received, 0% packet loss, time 0ms +]) + +NS_CHECK_EXEC([at_ns0], [ping -s 1600 -q -c 3 -i 0.3 -w 2 10.2.2.2 | FORMAT_PING], [0], [dnl +3 packets transmitted, 3 received, 0% packet loss, time 0ms +]) + +OVS_TRAFFIC_VSWITCHD_STOP +AT_CLEANUP + + +AT_SETUP([802.1ad - push/pop outer 802.1q]) +OVS_TRAFFIC_VSWITCHD_START([set Open_vSwitch . other_config:vlan-limit=0]) +OVS_CHECK_8021AD() + +ADD_BR([br1]) +ADD_BR([br2]) +ADD_NAMESPACES(at_ns0, at_ns1) + +AT_CHECK([ip link add ovs-p0 type veth peer name ovs-p1]) +AT_CHECK([ip link set dev ovs-p0 up]) +AT_CHECK([ip link set dev ovs-p1 up]) +AT_CHECK([ovs-vsctl add-port br0 ovs-p0]) +AT_CHECK([ovs-vsctl add-port br1 ovs-p1]) +on_exit 'ip link del ovs-p0' + +AT_CHECK([ip link add ovs-p2 type veth peer name ovs-p3]) +AT_CHECK([ip link set dev ovs-p2 up]) +AT_CHECK([ip link set dev ovs-p3 up]) +AT_CHECK([ovs-vsctl add-port br0 ovs-p2]) +AT_CHECK([ovs-vsctl add-port br2 ovs-p3]) +on_exit 'ip link del ovs-p2' + +ADD_VETH(p4, at_ns0, br1, "10.1.1.1/24") +ADD_VETH(p5, at_ns1, br2, "10.1.1.2/24") +ADD_CVLAN(p4, at_ns0, 100, "10.2.2.1/24") +ADD_CVLAN(p5, at_ns1, 100, "10.2.2.2/24") + +AT_DATA([flows-br0.txt], [dnl +priority=1 action=drop +priority=100 in_port=1 action=push_vlan:0x8100,mod_vlan_vid=4094,output:2 +priority=100 in_port=2 action=push_vlan:0x8100,mod_vlan_vid=4094,output:1 +]) + +AT_DATA([flows-customer-br.txt], [dnl +priority=1 action=normal +priority=100 in_port=1 vlan_tci=0x1000/0x1000 action=pop_vlan,normal +]) + +AT_CHECK([ovs-ofctl --bundle add-flows br0 flows-br0.txt]) +AT_CHECK([ovs-ofctl --bundle add-flows br1 flows-customer-br.txt]) +AT_CHECK([ovs-ofctl --bundle add-flows br2 flows-customer-br.txt]) + +OVS_WAIT_UNTIL([ip netns exec at_ns0 ping -c 1 10.2.2.2]) + +NS_CHECK_EXEC([at_ns0], [ping -q -c 3 -i 0.3 -w 2 10.2.2.2 | FORMAT_PING], [0], [dnl +3 packets transmitted, 3 received, 0% packet loss, time 0ms +]) + +NS_CHECK_EXEC([at_ns0], [ping -s 1600 -q -c 3 -i 0.3 -w 2 10.2.2.2 | FORMAT_PING], [0], [dnl +3 packets transmitted, 3 received, 0% packet loss, time 0ms +]) + +OVS_TRAFFIC_VSWITCHD_STOP +AT_CLEANUP