mbox

[v1,0/8] gro: support TCP/IPv6 and UDP/IPv6 for VLAN and VXLAN

Message ID 20201221035052.128292-1-yang_y_yi@163.com (mailing list archive)
Headers

Message

yang_y_yi Dec. 21, 2020, 3:50 a.m. UTC
  From: Yi Yang <yangyi01@inspur.com>

In production system, both IPv4 and IPv6 are required, this patch
series added TCP/IPv6 and UDP/IPv6 gro support for both VLAN and
VXLAN use cases, with this patch seiries applied, DPDK can support gro
for all the below cases:

VLAN TCP/IPv4
VLAN UDP/IPv4
VLAN TCP/IPv6
VLAN UDP/IPv6
IPv4 VXLAN TCP/IPv4
IPv4 VXLAN UDP/IPv4
IPv4 VXLAN TCP/IPv6
IPv4 VXLAN UDP/IPv6
IPv6 VXLAN TCP/IPv4
IPv6 VXLAN UDP/IPv4
IPv6 VXLAN TCP/IPv6
IPv4 VXLAN UDP/IPv6

Yi Yang (8):
  gro: support TCP/IPv6
  gro: support IPv4 VXLAN TCP/IPv6
  gro: support IPv6 VXLAN TCP/IPv4
  gro: support IPv6 VXLAN TCP/IPv6
  gro: support UDP/IPv6
  gro: support IPv4 VXLAN UDP/IPv6
  gro: support IPv6 VXLAN UDP/IPv4
  gro: support IPv6 VXLAN UDP/IPv6

 .../prog_guide/generic_receive_offload_lib.rst     |  16 +-
 doc/guides/rel_notes/release_21_02.rst             |  39 ++
 lib/librte_gro/gro_tcp6.c                          | 368 +++++++++++++
 lib/librte_gro/gro_tcp6.h                          | 314 +++++++++++
 lib/librte_gro/gro_udp6.c                          | 487 +++++++++++++++++
 lib/librte_gro/gro_udp6.h                          | 284 ++++++++++
 lib/librte_gro/gro_vxlan6_tcp4.c                   | 507 +++++++++++++++++
 lib/librte_gro/gro_vxlan6_tcp4.h                   | 153 ++++++
 lib/librte_gro/gro_vxlan6_tcp6.c                   | 464 ++++++++++++++++
 lib/librte_gro/gro_vxlan6_tcp6.h                   | 153 ++++++
 lib/librte_gro/gro_vxlan6_udp4.c                   | 559 +++++++++++++++++++
 lib/librte_gro/gro_vxlan6_udp4.h                   | 148 +++++
 lib/librte_gro/gro_vxlan6_udp6.c                   | 589 ++++++++++++++++++++
 lib/librte_gro/gro_vxlan6_udp6.h                   | 148 +++++
 lib/librte_gro/gro_vxlan_tcp6.c                    | 496 +++++++++++++++++
 lib/librte_gro/gro_vxlan_tcp6.h                    | 156 ++++++
 lib/librte_gro/gro_vxlan_udp6.c                    | 607 +++++++++++++++++++++
 lib/librte_gro/gro_vxlan_udp6.h                    | 152 ++++++
 lib/librte_gro/meson.build                         |   2 +-
 lib/librte_gro/rte_gro.c                           | 537 +++++++++++++++++-
 lib/librte_gro/rte_gro.h                           |  24 +
 21 files changed, 6186 insertions(+), 17 deletions(-)
 create mode 100644 lib/librte_gro/gro_tcp6.c
 create mode 100644 lib/librte_gro/gro_tcp6.h
 create mode 100644 lib/librte_gro/gro_udp6.c
 create mode 100644 lib/librte_gro/gro_udp6.h
 create mode 100644 lib/librte_gro/gro_vxlan6_tcp4.c
 create mode 100644 lib/librte_gro/gro_vxlan6_tcp4.h
 create mode 100644 lib/librte_gro/gro_vxlan6_tcp6.c
 create mode 100644 lib/librte_gro/gro_vxlan6_tcp6.h
 create mode 100644 lib/librte_gro/gro_vxlan6_udp4.c
 create mode 100644 lib/librte_gro/gro_vxlan6_udp4.h
 create mode 100644 lib/librte_gro/gro_vxlan6_udp6.c
 create mode 100644 lib/librte_gro/gro_vxlan6_udp6.h
 create mode 100644 lib/librte_gro/gro_vxlan_tcp6.c
 create mode 100644 lib/librte_gro/gro_vxlan_tcp6.h
 create mode 100644 lib/librte_gro/gro_vxlan_udp6.c
 create mode 100644 lib/librte_gro/gro_vxlan_udp6.h