From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id 90FB0A05D3 for ; Thu, 25 Apr 2019 03:41:01 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 35AD51B53C; Thu, 25 Apr 2019 03:41:01 +0200 (CEST) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 1BD111B53A for ; Thu, 25 Apr 2019 03:40:58 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 24 Apr 2019 18:40:58 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,391,1549958400"; d="scan'208";a="137213341" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by orsmga008.jf.intel.com with ESMTP; 24 Apr 2019 18:40:57 -0700 Received: from fmsmsx151.amr.corp.intel.com (10.18.125.4) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.408.0; Wed, 24 Apr 2019 18:40:57 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by FMSMSX151.amr.corp.intel.com (10.18.125.4) with Microsoft SMTP Server (TLS) id 14.3.408.0; Wed, 24 Apr 2019 18:40:57 -0700 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.164]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.93]) with mapi id 14.03.0415.000; Thu, 25 Apr 2019 09:40:55 +0800 From: "Zhang, Yuwei1" To: "Ma, LihongX" , "dts@dpdk.org" Thread-Topic: [dts][PATCH V2] add testplan of vxlan gpe support in i40e Thread-Index: AQHU+wX2dYPrh12aNkuhPyj7HZI7VqZMGbkw Date: Thu, 25 Apr 2019 01:40:54 +0000 Message-ID: References: <1556129191-1179-1-git-send-email-lihongx.ma@intel.com> In-Reply-To: <1556129191-1179-1-git-send-email-lihongx.ma@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dts] [PATCH V2] add testplan of vxlan gpe support in i40e X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org Sender: "dts" Acked-by: Yuwei Zhang (yuwei1.zhang@intel.com) -----Original Message----- From: Ma, LihongX=20 Sent: Thursday, April 25, 2019 2:07 AM To: dts@dpdk.org Cc: Zhang, Yuwei1 ; Ma, LihongX Subject: [dts][PATCH V2] add testplan of vxlan gpe support in i40e Signed-off-by: lihong --- test_plans/vxlan_gpe_support_in_i40e.rst | 120 +++++++++++++++++++++++++++= ++++ 1 file changed, 120 insertions(+) create mode 100644 test_plans/vxlan_gpe_support_in_i40e.rst diff --git a/test_plans/vxlan_gpe_support_in_i40e.rst b/test_plans/vxlan_gp= e_support_in_i40e.rst new file mode 100644 index 0000000..02be05e --- /dev/null +++ b/test_plans/vxlan_gpe_support_in_i40e.rst @@ -0,0 +1,120 @@ +.. Copyright (c) <2016-2019> Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + - Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D +I40E VXLAN-GPE Support Tests +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D + +Prerequisites +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + +1. The DUT has at least 2 DPDK supported I40E NIC ports:: + + Tester DUT + eth1 <---> PORT 0 + eth2 <---> PORT 1 + +2. Support igb_uio driver:: + + modprobe uio + insmod ./x86_64-native-linuxapp-gcc/kmod/igb_uio.ko + ./usertools/dpdk-devbind.py --bind=3Digb_uio 04:00.0 04:00.1 + +Test Case 1: VXLAN-GPE ipv4 packet detect=20 +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D +1. Start testpmd:: + + # testpmd -c 0xf -n 4 -- -i + +2. Add VXLAN-GPE packet type support in test pmd and enable verbose log:: + + testpmd> set fwd io + testpmd> set verbose 1 + testpmd> port config 0 udp_tunnel_port add vxlan-gpe 4790 + +3. Send VXLAN-GPE packets to testpmd and check received packets:: + + scapy> pkt=3DEther(dst=3D"3C:FD:FE:A8:C8:20")/IP(src=3D"18.0.0.1")/UDP= (dport=3D4790,sport=3D43)/VXLAN(flags=3D12)/IP(src=3D"10.0.0.1") + scapy> sendp(pkt1, iface=3D"ens802f1", count=3D1) + +4. Expected output from testpmd:: + + src=3D00:00:00:00:00:00 - dst=3D3C:FD:FE:A8:C8:20 - type=3D0x0800 - le= ngth=3D70 - nb_segs=3D1 - RSS hash=3D0x51ed6fc5 - RSS + queue=3D0x2 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN TUNNEL_GRENAT INN= ER_L3_IPV4_EXT_UNKNOWN + INNER_L4_NONFRAG - sw ptype: L2_ETHER L3_IPV4 L4_UDP - l2_len=3D14 -= l3_len=3D20 - l4_len=3D8 + - VXLAN packet: packet type =3D24721, Destination UDP port =3D4790, VN= I=20 + =3D 0 - Receive queue=3D0x2 + +Test Case 2: VXLAN-GPE tunnel remove test=20 +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D +1. After Test Case 1, delete the VXLAN-GPE packet type:: + + testpmd> port config 0 udp_tunnel_port rm vxlan-gpe 4790 + +2. Send VXLAN-GPE packets to testpmd and check the received packets + +3. Expected result:: + + testpmd should treat the packet as a normal UDP packet + +Test Case 3: Tunnel filter VXLAN-GPE support=20 +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D +1. Start testpmd with tunneling packet type to vxlan and disable receive s= ide + scale for hardware limitation:: + + # testpmd -c ffff -n 4 -- -i --disable-rss --rxq=3D4 --txq=3D4=20 + --nb-cores=3D8 --nb-ports=3D2 --tx-offloads=3D0x8fff + +2. Set rxonly packet forwarding mode and enable verbose log:: + + testpmd> set fwd rxonly + testpmd> set verbose 1 + +3. Add one new Cloud filter as table listed first:: + + testpmd> tunnel_filter add 0 11:22:33:44:55:66 00:00:20:00:00:01=20 + 192.168.2.2 1 vxlan-gpe imac-ivlan 1 3 + +4. Then send one packet and check packet was forwarded into right queue. + ++------------+------------+------------+----------+----------+--------+---= ----+ +| Outer Mac | Inner Mac | Inner Vlan | Outer Ip | Inner Ip | Vni ID |=20 +| Queue | ++------------+------------+------------+----------+----------+--------+---= ----+ +| No | Yes | Yes | No | No | No | 1 = | ++------------+------------+------------+----------+----------+--------+---= ----+ +| No | Yes | Yes | No | No | Yes | 1 = | ++------------+------------+------------+----------+----------+--------+---= ----+ +| No | Yes | No | No | No | Yes | 1 = | ++------------+------------+------------+----------+----------+--------+---= ----+ +| No | Yes | No | No | No | No | 1 = | ++------------+------------+------------+----------+----------+--------+---= ----+ +| Yes | Yes | No | No | Yes | Yes | 1 = | ++------------+------------+------------+----------+----------+--------+---= ----+ +| No | No | No | No | Yes | No | 1 = | ++------------+------------+------------+----------+----------+--------+---= ----+ -- 2.7.4