'How to generate 100Mpps traffic of 64B packet size with Pktgen?

I tried to use dpdk-pktgen 3.7.2 with dpdk 18.11, but it only reached about 35 Mpps traffic with 64B packet size.Following is my lua script:

package.path = package.path ..";?.lua;test/?.lua;app/?.lua;../?.lua"

require "Pktgen";

local time = 30;
local pcnt_rate = 100;

sendport = 0;
recvport = 1;
pkt_size = 64;
burst_cnt = 128
local dstip = "192.168.100.100";
local srcip = "192.168.0.0";

function main()
    pktgen.stop(sendport);
    sleep(2);

    pktgen.set(sendport, "size", burst_cnt);
    pktgen.set(sendport, "burst", 64);
    pktgen.set(sendport, "rate", pcnt_rate);
    pktgen.set_ipaddr(sendport, "dst", dstip);
    pktgen.set_ipaddr(sendport, "src", srcip);

    pktgen.set_proto(sendport..","..recvport, "udp");
    pktgen.start(sendport)

    sleep(time)
    pktgen.stop(sendport)
end

printf("\n**** Traffic Profile Rate for %d byte packets ***\n", pkt_size);
main();
printf("\n*** Traffic Profile Done (Total Time %d) ***\n", time);

l ran the script with the following command.

sudo pktgen -l 0-7 -n 4 -- -N -T -P -m "[1-7].0" -f script.lua

My NIC is Mellanox ConnectX-5 100GbE with traffic limit of 200Mpps and 100Gbps. Is there any problem in my script that restricts performance of pktgen? Thank you for your suggestions.



Solution 1:[1]

As mentioned in comments this is more of configuration issue of platform or not choosing right platform. I am able to generate 120Mpps with 64B on 100Gbps (CVL NIC).

[EDIT-2] Finally got hands on Mellanox connectx6 DX cards (2 *100Gbps). With DPDK 21.11 and PKTGEN 21.11, it is possible to generate over 100MPPs

enter image description here

MLX PMD args used: mprq_en=1,rxqs_min_mprq=1,mprq_log_stride_num=9,txq_inline_mpw=128,rxq_pkt_pad_en=1

Platform Details:

  • DPDK:21.08
  • PKTGEN:pktgen-dpdk-pktgen-21.03.1
  • NIC:Ethernet Controller E810-C for QSFP
  • CPU: Intel(R) Xeon(R) Gold 6152 CPU @ 2.10GHz
  • PKTGEN CMD:pktgen --legacy-mem -a 0000:86:00.0 -l 22-43 -- -P -m "[25-29:30-34].0" -N

Screen shot of pktgen page xstats

[EDIT-1] @SoliRaven as mentioned in comments and answer one can generate up to 120 to 125 Mpps with Intel E810 & with Mellanox Connect6 DX 120MPPs. Hence this looks more like configuration, platform or firmware issues. Hence this is not DPDK or DPDK-PKTGEN is not issue.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1