[dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen
Wiles, Keith
keith.wiles at intel.com
Wed Nov 27 16:12:52 CET 2019
> On Nov 26, 2019, at 2:21 AM, Nirmal Sarkar <nirmal.kisan at gmail.com> wrote:
>
> Hello,
>
> To support Jumbo frame in dpdk-pktgen, changes were suggested in dpdk libraries also apart from pktgen code.
> lib/librte_mbuf/rte_mbuf.h
> lib/common/pg_inet.h
>
> But dpdk framework already supports jumbo frame [using --enable-jumbo & --max-pkt-len flag].
> Can you please help me to understand why do we need to change the libraries in dpdk ?
These flags are for l3fwd type example apps and not a flag in the EAL or core code.
It appears the the port configs needs to be changed to enable jumbo frames. The patch below seemed to work for Lee and I have not tried the patch changes.
>
> Regards,
> N. Sarkar
>
> On Thu, Nov 21, 2019 at 12:24 AM Wiles, Keith <keith.wiles at intel.com> wrote:
>
>
> > On Nov 20, 2019, at 6:09 AM, Nirmal Sarkar <nirmal.kisan at gmail.com> wrote:
> >
> > Hello,
> >
> > Thanks for the help.
> > As I'm using DPDK-18.11.1, I did not find the definition of
> > "RTE_ETHER_MAX_LEN" in lib/librte_net/rte_ether.h file.
> > So I set "ETHER_MAX_LEN" value to 9600.
> > Apart from that I took rest of the changes and with these I'm able to send
> > jumbo frame.
> > Took tcpdump on the receiving end.
> >
> > Suddenly I got stuck at ARP. I could not send packets anymore.
>
> Sorry, I can not tell what the error condition is you are hitting, as the two screen dumps do not provide me where I should start looking. If you can help me understand the issue better.
> >
> > I've attached success & failure scenario.
> >
> > Regards,
> > N. Sarkar
> >
> > On Wed, Nov 20, 2019 at 2:14 AM Morten Brørup <mb at smartsharesystems.com>
> > wrote:
> >
> >> John, Marko,
> >>
> >> It seems we are missing documentation about enabling Jumbo frames in an
> >> application, and possibly an example of using the rte_eth_dev_info->max_mtu.
> >>
> >>
> >> Med venlig hilsen / kind regards
> >> - Morten Brørup
> >>
> >>> -----Original Message-----
> >>> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Roberts, Lee A.
> >>> Sent: Tuesday, November 19, 2019 6:42 PM
> >>> To: Nirmal Sarkar; dev at dpdk.org
> >>> Subject: Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen
> >>>
> >>> Nirmal,
> >>>
> >>> Here are the changes that I've been using to allow jumbo frames with
> >> dpdk-
> >>> 19.08 and
> >>> pktgen-19.10.0:
> >>>
> >>> diff -r default/dpdk-19.08/lib/librte_mbuf/rte_mbuf.h jumbo/dpdk-
> >>> 19.08/lib/librte_mbuf/rte_mbuf.h
> >>> 462c462
> >>> < #define RTE_MBUF_DEFAULT_DATAROOM 2048
> >>> ---
> >>>> #define RTE_MBUF_DEFAULT_DATAROOM 9600
> >>> diff -r default/dpdk-19.08/lib/librte_net/rte_ether.h jumbo/dpdk-
> >>> 19.08/lib/librte_net/rte_ether.h
> >>> 33c33
> >>> < #define RTE_ETHER_MAX_LEN 1518 /**< Maximum frame len, including
> >> CRC.
> >>> */
> >>> ---
> >>>> #define RTE_ETHER_MAX_LEN 9600 /**< Maximum frame len, including
> >> CRC.
> >>> */
> >>> diff -r default/pktgen-19.10.0/app/pktgen.c jumbo/pktgen-
> >>> 19.10.0/app/pktgen.c
> >>> 749c749
> >>> < else if ( (plen >= 1024) && (plen <= PG_ETHER_MAX_LEN))
> >>> ---
> >>>> else if ( (plen >= 1024) && (plen <= 1518))
> >>> 753c753
> >>> < else if (plen > PG_ETHER_MAX_LEN)
> >>> ---
> >>>> else if (plen > 1518)
> >>> diff -r default/pktgen-19.10.0/lib/common/pg_inet.h jumbo/pktgen-
> >>> 19.10.0/lib/common/pg_inet.h
> >>> 379,380c379,380
> >>> < #define ETH_MTU 1500 /* Max MTU for Ethernet */
> >>> < #define ETH_MAX_PKT 1518 /* Max Ethernet frame size
> >> */
> >>> ---
> >>>> #define ETH_MTU 9600 /* Max MTU for Ethernet */
> >>>> #define ETH_MAX_PKT 9600 /* Max Ethernet frame size
> >> */
> >>>
> >>> - Lee Roberts
> >>>
> >>>
> >>> -----Original Message-----
> >>> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Nirmal Sarkar
> >>> Sent: Monday, November 18, 2019 10:26 AM
> >>> To: dev at dpdk.org
> >>> Subject: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen
> >>>
> >>> Hello,
> >>>
> >>> I'm trying to explore pktgen and dpdk-pktgen with Jumbo frame.
> >>>
> >>> I'm using ubuntu-18.04 system where pktgen is a kernel module and I don't
> >>> have any provision to set it for Jumbo frame.
> >>> Can you please suggest how to configure Jumbo frame in pktgen ?
> >>>
> >>> In dpdk source code, I've modified RTE_MBUF_DEFAULT_DATAROOM [
> >>> *lib/librte_mbuf/rte_mbuf.h*] value with 9K and built.
> >>> During testing, I could not send packet size more than 1500 byte.
> >>> What is the suggestion to overcome this problem ?
> >>>
> >>> Regards,
> >>> N. Sarkar
> >>
> > <success.txt><failure.txt>
>
> Regards,
> Keith
>
Regards,
Keith
More information about the dev
mailing list