From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id B9FED1E2B for ; Tue, 26 Feb 2019 04:14:12 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Feb 2019 19:14:11 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.58,413,1544515200"; d="scan'208";a="119085920" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by orsmga006.jf.intel.com with ESMTP; 25 Feb 2019 19:14:11 -0800 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; Mon, 25 Feb 2019 19:14:11 -0800 Received: from shsmsx107.ccr.corp.intel.com (10.239.4.96) by FMSMSX151.amr.corp.intel.com (10.18.125.4) with Microsoft SMTP Server (TLS) id 14.3.408.0; Mon, 25 Feb 2019 19:14:10 -0800 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.110]) by SHSMSX107.ccr.corp.intel.com ([169.254.9.162]) with mapi id 14.03.0415.000; Tue, 26 Feb 2019 11:14:09 +0800 From: "Tu, Lijuan" To: "Peng, Yuan" , "dts@dpdk.org" CC: "Peng, Yuan" Thread-Topic: [dts] [PATCH] test_plans: Add case to veb_switch_test_plan Thread-Index: AQHUxPpS62BmeyYB3k+poz9EtZ1DrqXxeKvw Date: Tue, 26 Feb 2019 03:14:08 +0000 Message-ID: <8CE3E05A3F976642AAB0F4675D0AD20E0BA2721D@SHSMSX101.ccr.corp.intel.com> References: <1550213435-7089-1-git-send-email-yuan.peng@intel.com> In-Reply-To: <1550213435-7089-1-git-send-email-yuan.peng@intel.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-ctpclassification: CTP_NT x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZWNmZDQwZGUtZDYyMi00MDU3LWFjZTYtYTYzNzRiODY1NGFkIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiSkJ5UDAzNTQ4R1dVOGtIWng5WjZVNDdWRHBmVTVpVHBSeGwxZXdrbnhabU82dW9NdXBtZDFDdER0RVNcL2E3d1oifQ== 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] test_plans: Add case to veb_switch_test_plan 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: , X-List-Received-Date: Tue, 26 Feb 2019 03:14:13 -0000 Applied, thanks > -----Original Message----- > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Peng Yuan > Sent: Friday, February 15, 2019 2:51 PM > To: dts@dpdk.org > Cc: Peng, Yuan > Subject: [dts] [PATCH] test_plans: Add case to veb_switch_test_plan >=20 > Add a case to veb_switch_test_plan.rst >=20 > Signed-off-by: Peng Yuan >=20 > diff --git a/test_plans/veb_switch_test_plan.rst > b/test_plans/veb_switch_test_plan.rst > index e2520d4..e849732 100644 > --- a/test_plans/veb_switch_test_plan.rst > +++ b/test_plans/veb_switch_test_plan.rst > @@ -91,7 +91,7 @@ Prerequisites for VEB testing >=20 > 4. Bind the VFs to dpdk driver:: >=20 > - ./tools/dpdk-devbind.py -b igb_uio 05:02.0 05:02.1 > + ./tools/dpdk-devbind.py -b vfio-pci 05:02.0 05:02.1 >=20 > 5. Reserve huge pages memory(before using DPDK):: >=20 > @@ -100,9 +100,36 @@ Prerequisites for VEB testing > mkdir /mnt/huge > mount -t hugetlbfs nodev /mnt/huge >=20 > +Test Case: VEB Switching Inter VF-VF switch > +=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 >=20 > -Test Case1: VEB Switching Inter VF-VF MAC switch - > =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=3D=3D=3D=3D > +Summary: Kernel PF, then create 2VFs. VFs running dpdk testpmd, send > +traffic from VF1 to VF2 with VF2's MAC as DEST address, check if VF2 > +can receive the packets. Check Inter VF-VF MAC switch. > + > +Details: > + > +1. In VF1, run testpmd:: > + > + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0x3 -n 4 --socket-mem > 1024,1024 > + -w 05:02.0 --file-prefix=3Dtest1 -- -i --crc-strip --eth-peer=3D0,00= :11:22:33:44:12 > + testpmd>set fwd txonly > + testpmd>set promisc all off > + testpmd>start > + > + In VF2, run testpmd:: > + > + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xa -n 4 --socket-mem > 1024,1024 > + -w 05:02.1 --file-prefix=3Dtest2 -- -i --crc-strip > + testpmd>set fwd rxonly > + testpmd>set promisc all off > + testpmd>start > + > +2. Send packets from VF1 to VF2's MAC address, check if VF2 can get all = the > packets. > +Check the packet content is no corrupted. > + > +Test Case: VEB Switching Inter VF-VF switch MAC forword > +=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=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D >=20 > Summary: Kernel PF, then create 2VFs. VFs running dpdk testpmd, send tra= ffic > to VF1, and set the packet's DEST MAC to VF2, check if VF2 can receive th= e @@ > -112,30 +139,29 @@ Details: >=20 > 1. In VF1, run testpmd:: >=20 > - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0x3 -n 4 --socket-mem > 1024,1024 > - -w 05:02.0 --file-prefix=3Dtest1 -- -i --crc-strip --eth-peer=3D0,= 00:11:22:33:44:12 > - testpmd>set fwd mac > - testpmd>set promisc all off > - testpmd>start > + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0x3 -n 4 --socket-mem > 1024,1024 > + -w 05:02.0 --file-prefix=3Dtest1 -- -i --crc-strip --eth-peer=3D0,00= :11:22:33:44:12 > + testpmd>set fwd mac > + testpmd>set promisc all off > + testpmd>start >=20 > In VF2, run testpmd:: >=20 > - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xa -n 4 --socket-mem > 1024,1024 > - -w 05:02.1 --file-prefix=3Dtest2 -- -i --crc-strip > - testpmd>set fwd mac > - testpmd>set promisc all off > - testpmd>start > - > + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xa -n 4 --socket-mem > 1024,1024 > + -w 05:02.1 --file-prefix=3Dtest2 -- -i --crc-strip > + testpmd>set fwd rxonly > + testpmd>set promisc all off > + testpmd>start >=20 > 2. Send 100 packets to VF1's MAC address, check if VF2 can get 100 packe= ts. > Check the packet content is no corrupted. >=20 > -Test Case2: VEB Switching Inter VF-VF MAC/VLAN switch - > =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=3D=3D=3D=3D=3D= =3D=3D=3D=3D > +Test Case: VEB Switching Inter VF-VF MAC/VLAN switch > +=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=3D=3D=3D=3D=3D= =3D=3D=3D >=20 > -Summary: Kernel PF, then create 2VFs, assign VF1 with VLAN=3D1 in, VF2 w= ith > +Summary: Kernel PF, then create 2VFs, assign VF1 with VLAN=3D1, VF2 with > VLAN=3D2. VFs are running dpdk testpmd, send traffic to VF1 with VLAN=3D= 1, -then > let it forwards to VF2,it should not work since they are not in the > +then let it forward to VF2, it should not work since they are not in > +the > same VLAN; set VF2 with VLAN=3D1, then send traffic to VF1 with VLAN=3D1= , and > VF2 can receive the packets. Check inter VF MAC/VLAN switch. >=20 > @@ -143,24 +169,24 @@ Details: >=20 > 1. Set the VLAN id of VF1 and VF2:: >=20 > - ip link set ens785f0 vf 0 vlan 1 > - ip link set ens785f0 vf 1 vlan 2 > + ip link set ens785f0 vf 0 vlan 1 > + ip link set ens785f0 vf 1 vlan 2 >=20 > 2. In VF1, run testpmd:: >=20 > - ./testpmd -c 0xf -n 4 --socket-mem 1024,1024 -w 0000:05:02.0 > - --file-prefix=3Dtest1 -- -i --crc-strip --eth-peer=3D0,00:11:22:33= :44:12 > - testpmd>set fwd mac > - testpmd>set promisc all off > - testpmd>start > + ./testpmd -c 0xf -n 4 --socket-mem 1024,1024 -w 0000:05:02.0 > + --file-prefix=3Dtest1 -- -i --crc-strip --eth-peer=3D0,00:11:22:33:4= 4:12 > + testpmd>set fwd mac > + testpmd>set promisc all off > + testpmd>start >=20 > In VF2, run testpmd:: >=20 > - ./testpmd -c 0xf0 -n 4 --socket-mem 1024,1024 -w 0000:05:02.1 > - --file-prefix=3Dtest2 -- -i --crc-strip > - testpmd>set fwd rxonly > - testpmd>set promisc all off > - testpmd>start > + ./testpmd -c 0xf0 -n 4 --socket-mem 1024,1024 -w 0000:05:02.1 > + --file-prefix=3Dtest2 -- -i --crc-strip > + testpmd>set fwd rxonly > + testpmd>set promisc all off > + testpmd>start >=20 > 4. Send 100 packets with VF1's MAC address and VLAN=3D1, check if VF2 ca= n't > get 100 packets since they are not in the same VLAN. > @@ -173,66 +199,104 @@ Details: > 100 packets since they are in the same VLAN now. Check the packet > content is not corrupted:: >=20 > - sendp([Ether(dst=3D"00:11:22:33:44:11")/Dot1Q(vlan=3D1)/IP() > - /Raw('x'*40)],iface=3D"ens785f1") > + sendp([Ether(dst=3D"00:11:22:33:44:11")/Dot1Q(vlan=3D1)/IP() > + /Raw('x'*40)],iface=3D"ens785f1") >=20 >=20 > -Test Case3: VEB Switching Inter PF-VF MAC switch - > =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=3D=3D=3D=3D > +Test Case: VEB Switching Inter PF-VF MAC switch > +=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=3D=3D=3D >=20 > -Summary: DPDK PF, then create 1VF, PF in the host running dpdk testpmd, = -send > traffic from PF to VF1, ensure PF->VF1(let VF1 in promisc mode); -send tr= affic > from VF1 to PF,ensure VF1->PF can work. > +Summary: DPDK PF, then create 2VFs, PF in the host running dpdk > +testpmd, VFs running dpdk testpmd, VF1 send traffic to VF2, check if > +VF2 can receive the packets. send tracfic from PF to VF1, ensure > +PF->VF1; send traffic from VF1 to PF, ensure VF1->PF can work. >=20 > Details: >=20 > 1. vf->pf > - In host, launch testpmd:: > + PF, launch testpmd:: > + > + ./testpmd -c 0xf -n 4 --socket-mem 1024,1024 -w 0000:05:00.0 --file- > prefix=3Dtest1 -- -i > + testpmd>set fwd rxonly > + testpmd>set promisc all off > + testpmd>start >=20 > - ./testpmd -c 0x3 -n 4 -- -i > - testpmd>set fwd rxonly > - testpmd>set promisc all off > - testpmd>start > + VF1, run testpmd:: >=20 > - In VM1, run testpmd:: > + ./testpmd -c 0xf0 -n 4 --socket-mem 1024,1024 -w 0000:05:02.0 --file= - > prefix=3Dtest2 -- -i --eth-peer=3D0,pf_mac_addr > + testpmd>set fwd txonly > + testpmd>set promisc all off > + testpmd>start >=20 > - ./testpmd -c 0x3 -n 4 -- -i --eth-peer=3D0,pf_mac_addr > - testpmd>set fwd txonly > - testpmd>set promisc all off > - testpmd>start > + Check if PF can get the packets, so VF1->PF is working. > + Check the packet content is not corrupted. >=20 > 2. pf->vf > - In host, launch testpmd:: > + PF, launch testpmd:: > + > + ./testpmd -c 0xf -n 4 --socket-mem 1024,1024 -w 0000:05:00.0 --file- > prefix=3Dtest1 -- -i --eth-peer=3D0,vf1_mac_addr > + testpmd>set fwd txonly > + testpmd>set promisc all off > + testpmd>start >=20 > - ./testpmd -c 0x3 -n 4 -- -i --eth-peer=3D0,vf1_mac_addr > - testpmd>set fwd txonly > - testpmd>set promisc all off > - testpmd>start > + VF1, run testpmd:: >=20 > - In VM1, run testpmd:: > + ./testpmd -c 0xf0 -n 4 --socket-mem 1024,1024 -w 0000:05:02.0 --file= - > prefix=3Dtest2 -- -i > + testpmd>mac_addr add 0 vf1_mac_addr > + testpmd>set fwd rxonly > + testpmd>set promisc all off > + testpmd>start >=20 > - ./testpmd -c 0x3 -n 4 -- -i > - testpmd>mac_addr add 0 vf1_mac_addr > - testpmd>set fwd rxonly > - testpmd>set promisc all off > - testpmd>start > + Check if VF1 can get the packets, so PF->VF1 is working. > + Check the packet content is not corrupted. >=20 > 3. tester->vf > + PF, launch testpmd:: >=20 > -4. Send 100 packets with PF's MAC address from VF, check if PF can get 1= 00 > - packets, so VF1->PF is working. Check the packet content is not corru= pted. > + ./testpmd -c 0xf -n 4 --socket-mem 1024,1024 -w 0000:05:00.0 --file- > prefix=3Dtest1 -- -i > + testpmd>set fwd mac > + testpmd>set promisc all off > + testpmd>start >=20 > -5. Send 100 packets with VF's MAC address from PF, check if VF1 can get = 100 > - packets, so PF->VF1 is working. Check the packet content is not corru= pted. > + VF1, run testpmd:: >=20 > -6. Send 100 packets with VF's MAC address from tester, check if VF1 can = get > + ./testpmd -c 0xf0 -n 4 --socket-mem 1024,1024 -w 0000:05:02.0 --file= - > prefix=3Dtest2 -- -i > + testpmd>mac_addr add 0 vf1_mac_addr > + testpmd>set fwd rxonly > + testpmd>set promisc all off > + testpmd>start > + > + Send 100 packets with VF's MAC address from tester, check if VF1 can > + get > 100 packets, so tester->VF1 is working. Check the packet content is n= ot > corrupted. >=20 > +4. vf1->vf2 > + PF, launch testpmd:: > + > + ./testpmd -c 0xf -n 4 --socket-mem 1024,1024 -w 0000:05:00.0 --file- > prefix=3Dtest1 -- -i > + testpmd>set promisc all off > + > + VF1, run testpmd:: > + > + ./testpmd -c 0xf0 -n 4 --socket-mem 1024,1024 -w 0000:05:02.0 --file= - > prefix=3Dtest2 -- -i --eth-peer=3D0,vf2_mac_addr > + testpmd>set fwd txonly > + testpmd>set promisc all off > + testpmd>start > + > + VF2, run testpmd:: > + > + ./testpmd -c 0xf00 -n 4 --socket-mem 1024,1024 -w 0000:05:02.1 --fil= e- > prefix=3Dtest3 -- -i > + testpmd>mac_addr add 0 vf2_mac_addr > + testpmd>set fwd rxonly > + testpmd>set promisc all off > + testpmd>start > + > + Check if VF2 can get the packets, so VF1->VF2 is working. > + Check the packet content is not corrupted. >=20 > -Test Case4: VEB Switching Inter-VM PF-VF/VF-VF MAC switch Performance - > =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=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 > +Test Case: VEB Switching Inter-VM PF-VF/VF-VF MAC switch Performance > +=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=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > =3D=3D=3D=3D >=20 > -Performance testing, repeat Testcase1 (VF-VF) and Testcase3 (PF-VF) to c= heck > +Performance testing, repeat Testcase1 (VF-VF) and Testcase4 (PF-VF) to > +check > the performance at different sizes(64B--1518B and jumbo frame--3000B) w= ith > 100% rate sending traffic > -- > 2.5.0