[dpdk-dev] [PATCH v2] pmd: Add generic support for TCP TSO (Transmit Segmentation Offload)
Olivier MATZ
olivier.matz at 6wind.com
Fri Oct 31 16:49:44 CET 2014
Hello Miroslaw,
On 10/21/2014 01:29 PM, miroslaw.walukiewicz at intel.com wrote:
> From: Miroslaw Walukiewicz <miroslaw.walukiewicz at intel.com>
>
> The NICs supported by DPDK have a possibility to accelerate TCP
> traffic by sergnention offload. The application preprares a packet
> with valid TCP header with size up to 64K and NIC makes packet
> segmenation generating valid checksums and TCP segments.
>
> The patch defines a generic support for TSO offload.
> - Add new PKT_TX_TCP_SEG flag.
> Only packets with this flag set in ol_flags will be handled as
> TSO packets.
>
> - Add new fields in indicating TCP TSO segment size and TCP header len.
> The TSO requires from application setting following fields in mbuf.
> 1. L2 header len including MAC/VLANs/SNAP if present
> 2. L3 header len including IP options
> 3. L4 header len (new field) including TCP options
> 4. tso_segsz (new field) the size of TCP segment
>
> The apllication has obligation to compute the pseudo header checksum
> instead of full TCP checksum and put it in the TCP header csum field.
>
> Handling complexity of creation combined l2_l3_len field
> a new macro RTE_MBUF_TO_L2_L3_LEN() is defined to retrieve this
> part of rte_mbuf.
>
The patch you submitted does not include any changes in a driver
(let's say ixgbe as it is the reference) taking advantage it.
So it's difficult to validate that your modifications are sufficient
to implement TSO.
In addition of a driver, I think that testpmd should be modified
to validate your changes and give an example to people wanting to use
this feature.
Based on your patch, I'll try to submit a series in the coming days
(maybe today if the winds are favourable) that includes the remaining
patches from the original TSO series [1] that were not applied by
Bruce's mbuf rework.
Regards,
Olivier
[1] http://dpdk.org/ml/archives/dev/2014-May/002537.html
More information about the dev
mailing list