[dts] [PATCH] test_plans: Add case to veb_switch_test_plan
Tu, Lijuan
lijuan.tu at intel.com
Tue Feb 26 04:14:08 CET 2019
Applied, thanks
> -----Original Message-----
> From: dts [mailto:dts-bounces at dpdk.org] On Behalf Of Peng Yuan
> Sent: Friday, February 15, 2019 2:51 PM
> To: dts at dpdk.org
> Cc: Peng, Yuan <yuan.peng at intel.com>
> Subject: [dts] [PATCH] test_plans: Add case to veb_switch_test_plan
>
> Add a case to veb_switch_test_plan.rst
>
> Signed-off-by: Peng Yuan <yuan.peng at intel.com>
>
> 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
>
> 4. Bind the VFs to dpdk driver::
>
> - ./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
>
> 5. Reserve huge pages memory(before using DPDK)::
>
> @@ -100,9 +100,36 @@ Prerequisites for VEB testing
> mkdir /mnt/huge
> mount -t hugetlbfs nodev /mnt/huge
>
> +Test Case: VEB Switching Inter VF-VF switch
> +===========================================
>
> -Test Case1: VEB Switching Inter VF-VF MAC switch -
> ================================================
> +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=test1 -- -i --crc-strip --eth-peer=0,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=test2 -- -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
> +=======================================================
>
> Summary: Kernel PF, then create 2VFs. VFs running dpdk testpmd, send traffic
> to VF1, and set the packet's DEST MAC to VF2, check if VF2 can receive the @@
> -112,30 +139,29 @@ 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=test1 -- -i --crc-strip --eth-peer=0,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=test1 -- -i --crc-strip --eth-peer=0,00:11:22:33:44:12
> + testpmd>set fwd mac
> + 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=test2 -- -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=test2 -- -i --crc-strip
> + testpmd>set fwd rxonly
> + testpmd>set promisc all off
> + testpmd>start
>
> 2. Send 100 packets to VF1's MAC address, check if VF2 can get 100 packets.
> Check the packet content is no corrupted.
>
> -Test Case2: VEB Switching Inter VF-VF MAC/VLAN switch -
> =====================================================
> +Test Case: VEB Switching Inter VF-VF MAC/VLAN switch
> +====================================================
>
> -Summary: Kernel PF, then create 2VFs, assign VF1 with VLAN=1 in, VF2 with
> +Summary: Kernel PF, then create 2VFs, assign VF1 with VLAN=1, VF2 with
> VLAN=2. VFs are running dpdk testpmd, send traffic to VF1 with VLAN=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=1, then send traffic to VF1 with VLAN=1, and
> VF2 can receive the packets. Check inter VF MAC/VLAN switch.
>
> @@ -143,24 +169,24 @@ Details:
>
> 1. Set the VLAN id of VF1 and VF2::
>
> - 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
>
> 2. In VF1, run testpmd::
>
> - ./testpmd -c 0xf -n 4 --socket-mem 1024,1024 -w 0000:05:02.0
> - --file-prefix=test1 -- -i --crc-strip --eth-peer=0,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=test1 -- -i --crc-strip --eth-peer=0,00:11:22:33:44:12
> + testpmd>set fwd mac
> + testpmd>set promisc all off
> + testpmd>start
>
> In VF2, run testpmd::
>
> - ./testpmd -c 0xf0 -n 4 --socket-mem 1024,1024 -w 0000:05:02.1
> - --file-prefix=test2 -- -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=test2 -- -i --crc-strip
> + testpmd>set fwd rxonly
> + testpmd>set promisc all off
> + testpmd>start
>
> 4. Send 100 packets with VF1's MAC address and VLAN=1, check if VF2 can'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::
>
> - sendp([Ether(dst="00:11:22:33:44:11")/Dot1Q(vlan=1)/IP()
> - /Raw('x'*40)],iface="ens785f1")
> + sendp([Ether(dst="00:11:22:33:44:11")/Dot1Q(vlan=1)/IP()
> + /Raw('x'*40)],iface="ens785f1")
>
>
> -Test Case3: VEB Switching Inter PF-VF MAC switch -
> ================================================
> +Test Case: VEB Switching Inter PF-VF MAC switch
> +===============================================
>
> -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 traffic
> 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.
>
> Details:
>
> 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=test1 -- -i
> + testpmd>set fwd rxonly
> + testpmd>set promisc all off
> + testpmd>start
>
> - ./testpmd -c 0x3 -n 4 -- -i
> - testpmd>set fwd rxonly
> - testpmd>set promisc all off
> - testpmd>start
> + VF1, run testpmd::
>
> - In VM1, run testpmd::
> + ./testpmd -c 0xf0 -n 4 --socket-mem 1024,1024 -w 0000:05:02.0 --file-
> prefix=test2 -- -i --eth-peer=0,pf_mac_addr
> + testpmd>set fwd txonly
> + testpmd>set promisc all off
> + testpmd>start
>
> - ./testpmd -c 0x3 -n 4 -- -i --eth-peer=0,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.
>
> 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=test1 -- -i --eth-peer=0,vf1_mac_addr
> + testpmd>set fwd txonly
> + testpmd>set promisc all off
> + testpmd>start
>
> - ./testpmd -c 0x3 -n 4 -- -i --eth-peer=0,vf1_mac_addr
> - testpmd>set fwd txonly
> - testpmd>set promisc all off
> - testpmd>start
> + VF1, run testpmd::
>
> - In VM1, run testpmd::
> + ./testpmd -c 0xf0 -n 4 --socket-mem 1024,1024 -w 0000:05:02.0 --file-
> prefix=test2 -- -i
> + testpmd>mac_addr add 0 vf1_mac_addr
> + testpmd>set fwd rxonly
> + testpmd>set promisc all off
> + testpmd>start
>
> - ./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.
>
> 3. tester->vf
> + PF, launch testpmd::
>
> -4. Send 100 packets with PF's MAC address from VF, check if PF can get 100
> - packets, so VF1->PF is working. Check the packet content is not corrupted.
> + ./testpmd -c 0xf -n 4 --socket-mem 1024,1024 -w 0000:05:00.0 --file-
> prefix=test1 -- -i
> + testpmd>set fwd mac
> + testpmd>set promisc all off
> + testpmd>start
>
> -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 corrupted.
> + VF1, run testpmd::
>
> -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=test2 -- -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 not
> corrupted.
>
> +4. vf1->vf2
> + PF, launch testpmd::
> +
> + ./testpmd -c 0xf -n 4 --socket-mem 1024,1024 -w 0000:05:00.0 --file-
> prefix=test1 -- -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=test2 -- -i --eth-peer=0,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 --file-
> prefix=test3 -- -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.
>
> -Test Case4: VEB Switching Inter-VM PF-VF/VF-VF MAC switch Performance -
> =================================================================
> ====
> +Test Case: VEB Switching Inter-VM PF-VF/VF-VF MAC switch Performance
> +================================================================
> ====
>
> -Performance testing, repeat Testcase1 (VF-VF) and Testcase3 (PF-VF) to check
> +Performance testing, repeat Testcase1 (VF-VF) and Testcase4 (PF-VF) to
> +check
> the performance at different sizes(64B--1518B and jumbo frame--3000B) with
> 100% rate sending traffic
> --
> 2.5.0
More information about the dts
mailing list