On Tue, Jun 28, 2016 at 5:42 PM, Lu, Wenzhuo <wenzhuo.lu at intel.com> wrote: > Hi Asim, > > >> -----Original Message----- >> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Asim Jamshed >> Sent: Tuesday, June 28, 2016 2:41 PM >> To: dev at dpdk.org >> Subject: [dpdk-dev] Fwd: dpdk ixgbe PMD lro limits >> >> Hi, >> >> Apologies in advance if this question has been asked in the past. >> >> I have been performing mTCP-related tests on dpdk-16.04 with ixgbe PMD. I am >> using 82599ES 10-Gigabit adapters for my experiments. I have a few queries >> regarding LRO. >> >> 1) What is the theoretical maximum size of the Ethernet frame I can get from >> the driver once LRO is enabled? In my experiments, I was seeing packet size >> as >> high as 16KB. Can it be as high as ~2^16 bytes (iph->tot_len)? > I'm not sure about if I understand your question correctly. Assume you're > talking about the TCP segment after LRO. So, it's said there are no > limitations on the maximum packet length.
The issue that I am facing is fixing the size of mbuf. The default size of mbuf is (2048 + sizeof(struct rte_mbuf) + RTE_PKTMBUF_HEADROOM) which needs to be augmented once lro is enabled (am I right?). I tried stretching the limits of the mempool by increasing mbuf size to (65536 + sizeof(struct rte_mbuf) + RTE_PKTMBUF_HEADROOM), and I got the following error: Initializing port 0... EAL: Error - exiting with code: 1 Cause: rte_eth_rx_queue_setup:err=-22, port=0, queueid: 0 My exact calls for rte_mempool_create() and rte_eth_rx_queue_setup() were: pktmbuf_pool = rte_mempool_create(name, 8192, MBUF_SIZE, 256, sizeof(struct rte_pktmbuf_pool_private), rte_pktmbuf_pool_init, NULL, rte_pktmbuf_init, NULL, rte_socket_id(), 0); ret = rte_eth_rx_queue_setup(portid, rxlcore_id, 128, rte_eth_dev_socket_id(portid), &rx_conf, pktmbuf_pool); > >> >> 2) Since the NIC is reassembling payloads (of one flow) into a single packet, >> what does the Ethernet controller do with the tcp checksum field in the TCP >> header? I am observing that each LRO packet has checksum value as zero? Is >> that normal? I could not find any relevant documentation on the Web. > That's expected. > You can search 82599 datasheet. I think that's what you're looking for. Thanks! Regards, --Asim > >> >> Thanks in advance, >> --Asim