net/tap: support TSO (TCP Segment Offload)
authorOphir Munk <ophirmu@mellanox.com>
Sat, 23 Jun 2018 23:17:41 +0000 (23:17 +0000)
committerFerruh Yigit <ferruh.yigit@intel.com>
Mon, 2 Jul 2018 23:35:58 +0000 (01:35 +0200)
commit050316a88313e2cc0ac1c9155a04143cbd96a52e
tree55d11dd2c07ba7490036977c6b167458cde00308
parent6546e76056e375bf8d4f398bea4741d30db5847a
net/tap: support TSO (TCP Segment Offload)

This commit implements TCP segmentation offload in TAP.
librte_gso library is used to segment large TCP payloads (e.g. packets
of 64K bytes size) into smaller MTU size buffers.
By supporting TSO offload capability in software a TAP device can be used
as a failsafe sub device and be paired with another PCI device which
supports TSO capability in HW.

For more details on librte_gso implementation please refer to dpdk
documentation.
The number of newly generated TCP TSO segments is limited to 64.

Reviewed-by: Raslan Darawsheh <rasland@mellanox.com>
Signed-off-by: Ophir Munk <ophirmu@mellanox.com>
Acked-by: Keith Wiles <keith.wiles@intel.com>
drivers/net/tap/Makefile
drivers/net/tap/rte_eth_tap.c
drivers/net/tap/rte_eth_tap.h
mk/rte.app.mk