* [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen @ 2019-11-18 17:25 Nirmal Sarkar 2019-11-19 17:42 ` Roberts, Lee A. 0 siblings, 1 reply; 11+ messages in thread From: Nirmal Sarkar @ 2019-11-18 17:25 UTC (permalink / raw) To: dev 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 ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen 2019-11-18 17:25 [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen Nirmal Sarkar @ 2019-11-19 17:42 ` Roberts, Lee A. 2019-11-19 20:44 ` Morten Brørup 2019-11-30 0:01 ` Wiles, Keith 0 siblings, 2 replies; 11+ messages in thread From: Roberts, Lee A. @ 2019-11-19 17:42 UTC (permalink / raw) To: Nirmal Sarkar, dev 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@dpdk.org] On Behalf Of Nirmal Sarkar Sent: Monday, November 18, 2019 10:26 AM To: dev@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 ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen 2019-11-19 17:42 ` Roberts, Lee A. @ 2019-11-19 20:44 ` Morten Brørup 2019-11-20 12:09 ` Nirmal Sarkar 2019-11-30 0:01 ` Wiles, Keith 1 sibling, 1 reply; 11+ messages in thread From: Morten Brørup @ 2019-11-19 20:44 UTC (permalink / raw) To: John McNamara, Marko Kovacevic Cc: Thomas Monjalon, Ferruh Yigit, Andrew Rybchenko, Nirmal Sarkar, Roberts, Lee A., dev 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@dpdk.org] On Behalf Of Roberts, Lee A. > Sent: Tuesday, November 19, 2019 6:42 PM > To: Nirmal Sarkar; dev@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@dpdk.org] On Behalf Of Nirmal Sarkar > Sent: Monday, November 18, 2019 10:26 AM > To: dev@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 ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen 2019-11-19 20:44 ` Morten Brørup @ 2019-11-20 12:09 ` Nirmal Sarkar 2019-11-20 18:54 ` Wiles, Keith 0 siblings, 1 reply; 11+ messages in thread From: Nirmal Sarkar @ 2019-11-20 12:09 UTC (permalink / raw) To: Morten Brørup Cc: John McNamara, Marko Kovacevic, Thomas Monjalon, Ferruh Yigit, Andrew Rybchenko, Roberts, Lee A., dev [-- Attachment #1: Type: text/plain, Size: 3416 bytes --] 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. I've attached success & failure scenario. Regards, N. Sarkar On Wed, Nov 20, 2019 at 2:14 AM Morten Brørup <mb@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@dpdk.org] On Behalf Of Roberts, Lee A. > > Sent: Tuesday, November 19, 2019 6:42 PM > > To: Nirmal Sarkar; dev@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@dpdk.org] On Behalf Of Nirmal Sarkar > > Sent: Monday, November 18, 2019 10:26 AM > > To: dev@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 > [-- Attachment #2: success.txt --] [-- Type: text/plain, Size: 1703 bytes --] ** Version: DPDK 18.11.1, Command Line Interface without timers Pktgen:/> / Ports 0-0 of 1 <Main Page> Copyright (c) <2010-2019>, Intel Corporation Flags:Port : P------Range :0 Link State : <UP-10000-FD> ---Total Rate--- Pkts/s Max/Rx : 2/1 2/1 Max/Tx : 20838/19244 20838/19244 MBits/s Rx/Tx : 0/1384 0/1384 Broadcast : 0 Multicast : 10 Sizes 64 : 12 65-127 : 0 128-255 : 0 256-511 : 0 512-1023 : 0 1024-1518 : 0 Runts/Jumbos : 0/0 ARP/ICMP Pkts : 10/0 Errors Rx/Tx : 0/0 Total Rx Pkts : 11 Tx Pkts : 179640 Rx MBs : 0 Tx MBs : 12922 : Pattern Type : abcd... Tx Count/% Rate : Forever /100% Pkt Size/Tx Burst : 8972 / 64 TTL/Port Src/Dest : 4/ 1000/ 1000 Pkt Type:VLAN ID : IPv4 / UDP:0001 802.1p CoS/DSCP/IPP : 0/ 0/ 0 VxLAN Flg/Grp/vid : 0000/ 0/ 0 IP Destination : 192.168.168.4 Source : 192.168.168.3/24 MAC Destination : 00:50:56:9b:ba:ae Source : 00:50:56:9b:ef:53 PCI Vendor/Addr : 15ad:07b0/0b:00.0 [-- Attachment #3: failure.txt --] [-- Type: text/plain, Size: 1703 bytes --] ** Version: DPDK 18.11.1, Command Line Interface without timers Pktgen:/> | Ports 0-0 of 1 <Main Page> Copyright (c) <2010-2019>, Intel Corporation Flags:Port : P------Range :0 Link State : <UP-10000-FD> ---Total Rate--- Pkts/s Max/Rx : 2/1 2/1 Max/Tx : 169576/167952 169576/167952 MBits/s Rx/Tx : 0/1907 0/1907 Broadcast : 0 Multicast : 129 Sizes 64 : 131 65-127 : 0 128-255 : 0 256-511 : 0 512-1023 : 0 1024-1518 : 0 Runts/Jumbos : 0/0 ARP/ICMP Pkts : 129/0 Errors Rx/Tx : 0/0 Total Rx Pkts : 131 Tx Pkts : 21803360 Rx MBs : 0 Tx MBs : 247686 : Pattern Type : abcd... Tx Count/% Rate : Forever /100% Pkt Size/Tx Burst : 1400 / 64 TTL/Port Src/Dest : 4/ 1000/ 1000 Pkt Type:VLAN ID : IPv4 / UDP:0001 802.1p CoS/DSCP/IPP : 0/ 0/ 0 VxLAN Flg/Grp/vid : 0000/ 0/ 0 IP Destination : 192.168.168.4 Source : 192.168.168.3/24 MAC Destination : 00:50:56:9b:ba:ae Source : 00:50:56:9b:ef:53 PCI Vendor/Addr : 15ad:07b0/0b:00.0 ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen 2019-11-20 12:09 ` Nirmal Sarkar @ 2019-11-20 18:54 ` Wiles, Keith 2019-11-26 8:21 ` Nirmal Sarkar 0 siblings, 1 reply; 11+ messages in thread From: Wiles, Keith @ 2019-11-20 18:54 UTC (permalink / raw) To: Nirmal Sarkar Cc: Morten Brørup, Mcnamara, John, Kovacevic, Marko, Thomas Monjalon, Yigit, Ferruh, Andrew Rybchenko, Roberts, Lee A., dev > On Nov 20, 2019, at 6:09 AM, Nirmal Sarkar <nirmal.kisan@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@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@dpdk.org] On Behalf Of Roberts, Lee A. >>> Sent: Tuesday, November 19, 2019 6:42 PM >>> To: Nirmal Sarkar; dev@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@dpdk.org] On Behalf Of Nirmal Sarkar >>> Sent: Monday, November 18, 2019 10:26 AM >>> To: dev@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 ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen 2019-11-20 18:54 ` Wiles, Keith @ 2019-11-26 8:21 ` Nirmal Sarkar 2019-11-27 15:12 ` Wiles, Keith 0 siblings, 1 reply; 11+ messages in thread From: Nirmal Sarkar @ 2019-11-26 8:21 UTC (permalink / raw) To: Wiles, Keith Cc: Morten Brørup, Mcnamara, John, Kovacevic, Marko, Thomas Monjalon, Yigit, Ferruh, Andrew Rybchenko, Roberts, Lee A., dev 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 ? Regards, N. Sarkar On Thu, Nov 21, 2019 at 12:24 AM Wiles, Keith <keith.wiles@intel.com> wrote: > > > > On Nov 20, 2019, at 6:09 AM, Nirmal Sarkar <nirmal.kisan@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@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@dpdk.org] On Behalf Of Roberts, Lee A. > >>> Sent: Tuesday, November 19, 2019 6:42 PM > >>> To: Nirmal Sarkar; dev@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@dpdk.org] On Behalf Of Nirmal Sarkar > >>> Sent: Monday, November 18, 2019 10:26 AM > >>> To: dev@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 > > ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen 2019-11-26 8:21 ` Nirmal Sarkar @ 2019-11-27 15:12 ` Wiles, Keith 2019-11-27 18:42 ` Nirmal Sarkar 0 siblings, 1 reply; 11+ messages in thread From: Wiles, Keith @ 2019-11-27 15:12 UTC (permalink / raw) To: Nirmal Sarkar Cc: Morten Brørup, Mcnamara, John, Kovacevic, Marko, Thomas Monjalon, Yigit, Ferruh, Andrew Rybchenko, Roberts, Lee A., dev > On Nov 26, 2019, at 2:21 AM, Nirmal Sarkar <nirmal.kisan@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@intel.com> wrote: > > > > On Nov 20, 2019, at 6:09 AM, Nirmal Sarkar <nirmal.kisan@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@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@dpdk.org] On Behalf Of Roberts, Lee A. > >>> Sent: Tuesday, November 19, 2019 6:42 PM > >>> To: Nirmal Sarkar; dev@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@dpdk.org] On Behalf Of Nirmal Sarkar > >>> Sent: Monday, November 18, 2019 10:26 AM > >>> To: dev@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 ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen 2019-11-27 15:12 ` Wiles, Keith @ 2019-11-27 18:42 ` Nirmal Sarkar 0 siblings, 0 replies; 11+ messages in thread From: Nirmal Sarkar @ 2019-11-27 18:42 UTC (permalink / raw) To: Wiles, Keith Cc: Morten Brørup, Mcnamara, John, Kovacevic, Marko, Thomas Monjalon, Yigit, Ferruh, Andrew Rybchenko, Roberts, Lee A., dev Hello, Thanks for your reply. Using *testpmd* [*--mbuf-size=2048 --max-pkt-len=9600*], I can send/receive Jumbo pkt over vmxnet3 without any change in the dpdk source code. Ref: https://doc.dpdk.org/dts/test_plans/jumboframes_test_plan.html Can you please tell me why I will not be able to send jumbo packet from pktgen without doing any change in dpdk/EAL ? Regards, N. Sarkar On Wed, Nov 27, 2019 at 8:42 PM Wiles, Keith <keith.wiles@intel.com> wrote: > > > > On Nov 26, 2019, at 2:21 AM, Nirmal Sarkar <nirmal.kisan@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@intel.com> > wrote: > > > > > > > On Nov 20, 2019, at 6:09 AM, Nirmal Sarkar <nirmal.kisan@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@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@dpdk.org] On Behalf Of Roberts, Lee A. > > >>> Sent: Tuesday, November 19, 2019 6:42 PM > > >>> To: Nirmal Sarkar; dev@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@dpdk.org] On Behalf Of Nirmal Sarkar > > >>> Sent: Monday, November 18, 2019 10:26 AM > > >>> To: dev@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 > > ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen 2019-11-19 17:42 ` Roberts, Lee A. 2019-11-19 20:44 ` Morten Brørup @ 2019-11-30 0:01 ` Wiles, Keith 2019-12-01 19:55 ` Nirmal Sarkar 1 sibling, 1 reply; 11+ messages in thread From: Wiles, Keith @ 2019-11-30 0:01 UTC (permalink / raw) To: Roberts, Lee A.; +Cc: Nirmal Sarkar, dev > On Nov 19, 2019, at 11:42 AM, Roberts, Lee A. <lee.roberts@hpe.com> wrote: > > 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 I have a updated pktgen with jumbo support. You need to pass the -j option to get jumbo frame support in pktgen. I have not done a lot of testing on this version. If you have time please pull the pktgen repo and switch over to the ‘dev’ branch and see if this work for you. I did not use your changes here and did it my way :-) I did not change DPDK, as it seemed like it did not matter if RTE_MBUF_DEFAULT_DATAROOM changed. I am sure someplace may care if they used that define. > > > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Nirmal Sarkar > Sent: Monday, November 18, 2019 10:26 AM > To: dev@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 Regards, Keith ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen 2019-11-30 0:01 ` Wiles, Keith @ 2019-12-01 19:55 ` Nirmal Sarkar 2019-12-02 12:46 ` Nirmal Sarkar 0 siblings, 1 reply; 11+ messages in thread From: Nirmal Sarkar @ 2019-12-01 19:55 UTC (permalink / raw) To: Wiles, Keith; +Cc: Roberts, Lee A., dev Hello Keith, Thanks a lot for your help. I'm using pktgen-3.7.1. So I'll pull your changes there and check it. Regards, N. Sarkar On Sat, Nov 30, 2019 at 5:31 AM Wiles, Keith <keith.wiles@intel.com> wrote: > > > > On Nov 19, 2019, at 11:42 AM, Roberts, Lee A. <lee.roberts@hpe.com> > wrote: > > > > 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 > > I have a updated pktgen with jumbo support. You need to pass the -j option > to get jumbo frame support in pktgen. I have not done a lot of testing on > this version. If you have time please pull the pktgen repo and switch over > to the ‘dev’ branch and see if this work for you. I did not use your > changes here and did it my way :-) > > I did not change DPDK, as it seemed like it did not matter if > RTE_MBUF_DEFAULT_DATAROOM changed. I am sure someplace may care if they > used that define. > > > > > > > -----Original Message----- > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Nirmal Sarkar > > Sent: Monday, November 18, 2019 10:26 AM > > To: dev@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 > > Regards, > Keith > > ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen 2019-12-01 19:55 ` Nirmal Sarkar @ 2019-12-02 12:46 ` Nirmal Sarkar 0 siblings, 0 replies; 11+ messages in thread From: Nirmal Sarkar @ 2019-12-02 12:46 UTC (permalink / raw) To: Wiles, Keith; +Cc: Roberts, Lee A., dev Hi Keith, I've taken all the changes [in pktgen-3.7.1] you made to support Jumbo Frame. I'm sending packet of 9000 bytes from the sender. [sending screenshot attached]. In the receiver side: (1) started testpmd: [ testpmd -c 0x0f -n 2 -b 03:00.0 -- -i --rxd=1024 --txd=1024 --burst=144 --txpt=32 --txht=0 --txfreet=0 --rxfreet=64 --mbcache=200 --portmask=0x3 --mbuf-size=2048 --max-pkt-len=9600 ] Now if I do a "show port stats 0", I see "RX-missed" is getting increased where as "RX-bytes" is stuck into a fixed value. ######################## NIC statistics for port 0 ######################## RX-packets: 259 RX-missed: 35728 RX-bytes: 2294220 RX-errors: 0 RX-nombuf: 0 TX-packets: 0 TX-errors: 0 TX-bytes: 0 Throughput (since last show) Rx-pps: 0 Tx-pps: 0 ############################################################################ ######################## NIC statistics for port 0 ######################## RX-packets: 259 RX-missed: 71272 RX-bytes: 2294220 RX-errors: 0 RX-nombuf: 0 TX-packets: 0 TX-errors: 0 TX-bytes: 0 Throughput (since last show) Rx-pps: 0 Tx-pps: 0 ############################################################################ (2) started pktgen with "-j" option: (i) "MBits/s Rx" is not more than 384 when I send 9K packet, but this value increases to 985~1007 if I send 1K packet. (ii) "Pkt Size" is showing 64 (iii) I'm seeing only Packet of size 5K is getting received when I send 9K packet.[ Please check the attached receive.jpg] From the above observation in the receiver side, there may be some issue in receiving Jumbo frames. I would also like to mention *Fragmentation* is not required in the send/recv. Regards, N. Sarkar On Mon, Dec 2, 2019 at 1:25 AM Nirmal Sarkar <nirmal.kisan@gmail.com> wrote: > Hello Keith, > > Thanks a lot for your help. > I'm using pktgen-3.7.1. So I'll pull your changes there and check it. > > Regards, > N. Sarkar > > On Sat, Nov 30, 2019 at 5:31 AM Wiles, Keith <keith.wiles@intel.com> > wrote: > >> >> >> > On Nov 19, 2019, at 11:42 AM, Roberts, Lee A. <lee.roberts@hpe.com> >> wrote: >> > >> > 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 >> >> I have a updated pktgen with jumbo support. You need to pass the -j >> option to get jumbo frame support in pktgen. I have not done a lot of >> testing on this version. If you have time please pull the pktgen repo and >> switch over to the ‘dev’ branch and see if this work for you. I did not use >> your changes here and did it my way :-) >> >> I did not change DPDK, as it seemed like it did not matter if >> RTE_MBUF_DEFAULT_DATAROOM changed. I am sure someplace may care if they >> used that define. >> >> > >> > >> > -----Original Message----- >> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Nirmal Sarkar >> > Sent: Monday, November 18, 2019 10:26 AM >> > To: dev@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 >> >> Regards, >> Keith >> >> ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2019-12-02 16:58 UTC | newest] Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-11-18 17:25 [dpdk-dev] Jumbo Frame in pktgen & dpdk-pktgen Nirmal Sarkar 2019-11-19 17:42 ` Roberts, Lee A. 2019-11-19 20:44 ` Morten Brørup 2019-11-20 12:09 ` Nirmal Sarkar 2019-11-20 18:54 ` Wiles, Keith 2019-11-26 8:21 ` Nirmal Sarkar 2019-11-27 15:12 ` Wiles, Keith 2019-11-27 18:42 ` Nirmal Sarkar 2019-11-30 0:01 ` Wiles, Keith 2019-12-01 19:55 ` Nirmal Sarkar 2019-12-02 12:46 ` Nirmal Sarkar
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).