Basic Information
        Patch name      Support VxLAN on Fortville
        Brief description about test purpose    Verify vxlan checksum 
detect/offload and tunnel filter work fine.
        Test Flag       Tested-by
        Tester name     yong.liu at intel.com
        Test environment
-       OS Environment
-       Compilation (GCC)
-       Hardware Info (CPU & NIC)
-       Virtualization environment /Configure   OS: Fedora20 
3.15.8-200.fc20.x86_64
GCC: gcc version 4.8.3 20140624
CPU: Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
NIC: Intel Corporation Ethernet Controller XL710 for 40GbE QSFP+ [8086:1583]



        Test Tool Chain information     N/A
        Commit ID       ee1a5470faa751c1fd07d23b86659fe7a68fd251
Detailed Testing information    DPDK SW Configuration   Default 
x86_64-native-linuxapp-gcc configuration
        Test Result Summary     Total 6 cases, 6 passed, 0 failed
        Test Case - name        vxlan_ipv4_detect
        Test Case - Description Check testpmd can receive and detect vxlan 
packet
        Test Case -test sample/application      Start testpmd with vxlan 
enabled and rss disabled.
testpmd -c ffff -n 4 -- -i --tunnel-type=1 --disble-rss --rxq=4 --txq=4 
--nb-cores=8 --nb-ports=2

Set forward type to rxonly and enable verbose log.
testpmd>set fwd rxonly
testpmd>set verbose 1
testpmd>start

Send vxlan packets with udp|tcp|sctp inner L4 data
        Test Case -command / instruction
        Test Case - expected test result        testpmd can receive the vxlan 
packet with different inner L4 data and detect whether the packet is  vxlan 
packet
        Test Case - name        vxlan_ipv6_detect
        Test Case - Description Check testpmd can receive and detect ipv6 vxlan 
packet
        Test Case -test sample/application      Start testpmd with vxlan 
enabled and rss disabled.
testpmd -c ffff -n 4 -- -i --tunnel-type=1 --disble-rss --rxq=4 --txq=4 
--nb-cores=8 --nb-ports=2

Set forward type to rxonly and enable verbose log.
testpmd>set fwd rxonly
testpmd>set verbose 1
testpmd>start

Send vxlan packets with outer IPv6 header and inner IPv6 header.
        Test Case -command / instruction
        Test Case - expected test result        testpmd can receive the vxlan 
packet with different inner L4 data and detect whether the packet is IPv6 vxlan 
packet
        Test Case - name        vxlan_ipv4_checksum_offload
        Test Case - Description Check testpmd can offload vxlan checksum and 
forward the packet
        Test Case -test sample/application      Start testpmd with vxlan 
enabled and rss disabled.
testpmd -c ffff -n 4 -- -i --tunnel-type=1 --disble-rss --rxq=4 --txq=4 
--nb-cores=8 --nb-ports=2

Set csum packet forwarding mode and enable verbose log.
testpmd>set fwd csum
testpmd>set verbose 1
testpmd>start

Enable outer IP,UDP,TCP,SCTP and inner IP,UDP checksum offload when inner L4 
protocal is UDP.
testpmd>tx_checksum set 0 0xf3

Enable outer IP,UDP,TCP,SCTP and inner IP,TCP,SCTP checksum offload when inner 
L4 protocal is TCP or SCTP.
testpmd>tx_checksum set 0 0xfd

Send ipv4 vxlan packet with invalid outer/inner l3 or l4 checksum first. Then 
check forwarded packet checksum is corrected and there's chksum error counter 
increased.
        Test Case -command / instruction
        Test Case - expected test result        testpmd can forwarded vxlan 
packet and the checksum is corrected. The chksum error counter also increased.
        Test Case - name        vxlan_ipv6_checksum_offload
        Test Case - Description Check testpmd can offload ipv6 vxlan checksum 
and forward the packet
        Test Case -test sample/application      Start testpmd with vxlan 
enabled and rss disabled.
testpmd -c ffff -n 4 -- -i --tunnel-type=1 --disble-rss --rxq=4 --txq=4 
--nb-cores=8 --nb-ports=2

Set csum packet forwarding mode and enable verbose log.
testpmd>set fwd csum
testpmd>set verbose 1
testpmd>start

Enable outer IP,UDP,TCP,SCTP and inner IP,UDP checksum offload when inner L4 
protocal is UDP.
testpmd>tx_checksum set 0 0xf3

Enable outer IP,UDP,TCP,SCTP and inner IP,TCP,SCTP checksum offload when inner 
L4 protocal is TCP or SCTP.
testpmd>tx_checksum set 0 0xfd

Send ipv6 vxlan packet with invalid outer/inner l3 or l4 checksum first. Then 
check forwarded packet checksum is corrected and there's chksum error counter 
increased.
        Test Case -command / instruction
        Test Case - expected test result        testpmd can forwarded vxlan 
packet and the checksum is corrected. The chksum error counter also increased.
        Test Case - name        tunnel_filter
        Test Case - Description Check FVL vxlan tunnel  filter function work on 
testpmd
        Test Case -test sample/application      Start testpmd with vxlan 
enabled and rss disabled.
testpmd -c ffff -n 4 -- -i --tunnel-type=1 --disble-rss --rxq=4 --txq=4 
--nb-cores=8 --nb-ports=2

Set rxonly forwarding mode and enable verbose log.
testpmd>set fwd rxonly
testpmd>set verbose 1
testpmd>start

Add cloud filter with specified inner dst mac and inner vlan.
testpmd>tunnel_filter add 0 11:22:33:44:55:66 00:00:20:00:00:01 192.168.2.2 1 
vxlan imac-ivlan 1 3

Add cloud filter with specified inner dst mac,inner vlan and tunnel id.

testpmd>tunnel_filter add 0 11:22:33:44:55:66 00:00:20:00:00:01 192.168.2.2 1 
vxlan imac-ivlan-tenid 1 3

Add cloud filter with specified inner dst mac and tunnel id.
testpmd>tunnel_filter add 0 11:22:33:44:55:66 00:00:20:00:00:01 192.168.2.2 1 
vxlan imac-tenid 1 3

Add cloud filter with specified inner dst mac.
testpmd>tunnel_filter add 0 11:22:33:44:55:66 00:00:20:00:00:01 192.168.2.2 1 
vxlan imac 1 3

Add cloud filter with specified outer dst mac, inner dst mac and tunnel id.
testpmd>tunnel_filter add 0 11:22:33:44:55:66 00:00:20:00:00:01 192.168.2.2 1 
vxlan omac-imac-tenid 1 3

Send vxlan packet matched the specified fields
        Test Case -command / instruction
        Test Case - expected test result        testpmd can received the  vxlan 
packet on the assigned queue 3.
        Test Case - name        tunnel_filter_invalid
        Test Case - Description Check FVL vxlan tunnel  filter invalid command 
cannot accepted by testpmd
        Test Case -test sample/application      Start testpmd with vxlan 
enabled and rss disabled.
testpmd -c ffff -n 4 -- -i --tunnel-type=1 --disble-rss --rxq=4 --txq=4 
--nb-cores=8 --nb-ports=2

Add Clould filter with invalid Mac address.
Add Clould filter with invalid ip address.
Add Clould filter with invalid vlan.
Add Clould filter with invalid vni.
Add Clould filter with invalid queue id.
        Test Case -command / instruction
        Test Case - expected test result        testpmd will report the 
parameter is invalid.


> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Jijiang Liu
> Sent: Saturday, October 11, 2014 1:55 PM
> To: dev at dpdk.org
> Subject: [dpdk-dev] [PATCH v5 0/8]Support VxLAN on Fortville
>
> The patch set supports VxLAN on Fortville based on latest mbuf structure.
>
> It includes:
>  - Support VxLAN packet identification by configuring tunneling UDP port.
>  - Support VxLAN packet filters. It uses MAC and VLAN to point
>    to a queue. The filter types supported include below:
>    1. Inner MAC and Inner VLAN ID
>    2. Inner MAC address, inner VLAN ID and tenant ID.
>    3. Inner MAC and tenant ID
>    4. Inner MAC address
>    5. Outer MAC address, tenant ID and inner MAC
>  - Support VxLAN TX checksum offload, which include outer L3(IP), inner L3(IP)
> and inner L4(UDP,TCP and SCTP)
>
> Change notes:
>
>  v5) * Use the "packet_type" field to replace the "reserved2" field in the
> rte_mbuf structure.
>      * Add the "inner_l2_l3_len" field in the rte_mbuf structure.
>      * Add an offload flag PKT_TX_VXLAN_CKSUM in rte_mbuf.h
>      * Change i40e_txd_enable_checksum() function for VxLAN Tx checksum
> offload setting.
>
> jijiangl (8):
>   Support VxLAN packet identification in librte_ether
>   Support VxLAN packet identification in librte_pmd_i40e
>   Test vxlan packet identification
>   Add new filter framework
>   Implement API of VxLAN packet filter in librte_pmd_i40e
>   Test VxLAN packet filter API
>   Support VxLAN Tx checksum offload
>   Test VxLAN Tx checksum offload
>
>
>  app/test-pmd/cmdline.c            |  230 ++++++++++++++++++++-
>  app/test-pmd/config.c             |    6 +-
>  app/test-pmd/csumonly.c           |  196 ++++++++++++++++--
>  app/test-pmd/parameters.c         |   13 ++
>  app/test-pmd/rxonly.c             |   49 +++++
>  app/test-pmd/testpmd.c            |    8 +
>  app/test-pmd/testpmd.h            |    4 +
>  config/common_linuxapp            |    5 +
>  lib/librte_ether/Makefile         |    1 +
>  lib/librte_ether/rte_eth_ctrl.h   |  152 ++++++++++++++
>  lib/librte_ether/rte_ethdev.c     |   95 +++++++++
>  lib/librte_ether/rte_ethdev.h     |  108 ++++++++++
>  lib/librte_ether/rte_ether.h      |    8 +
>  lib/librte_mbuf/rte_mbuf.h        |   22 ++-
>  lib/librte_pmd_i40e/i40e_ethdev.c |  419
> ++++++++++++++++++++++++++++++++++++-
>  lib/librte_pmd_i40e/i40e_ethdev.h |    5 +
>  lib/librte_pmd_i40e/i40e_rxtx.c   |   53 +++++-
>  17 files changed, 1344 insertions(+), 30 deletions(-)
>  create mode 100644 lib/librte_ether/rte_eth_ctrl.h
>
> --
> 1.7.7.6


Reply via email to