1 Reply Latest reply on Jan 25, 2018 5:37 PM by Intel Corporation

    Pktgen DPDK Troubleshooting

    anasboubakri

      Hello,

       

      I need help to run pktgen-dpdk on our platform (Xeon PCies/Red rock canyon switch) to check the frame rate/Bandwith.

      Currently, the trace of the pktgen binary execution on an the target is:

       

      pktgen -l 0-4 -n 3 --proc-type auto --socket-mem 512 -- -T -P -p 0x30 -m "[1:3].0, [2:4].1"
      Copyright (c) <2010-2017>, Intel Corporation. All rights reserved. Powered by DPDK
      EAL: Detected 8 lcore(s)
      EAL: Auto-detected process type: PRIMARY
      EAL: 1024 hugepages of size 2097152 reserved, but no mounted hugetlbfs found for that size
      EAL: Probing VFIO support...
      EAL: cannot open /proc/self/numa_maps, consider that all memory is in socket_id 0
      EAL: PCI device 0000:01:00.0 on NUMA socket 0
      EAL: probe driver: 8086:15a4 net_fm10k
      EAL: PCI device 0000:02:00.0 on NUMA socket 0
      EAL: probe driver: 8086:15a4 net_fm10k
      EAL: PCI device 0000:04:00.0 on NUMA socket 0
      EAL: probe driver: 8086:15ab net_ixgbe
      EAL: PCI device 0000:04:00.1 on NUMA socket 0
      EAL: probe driver: 8086:15ab net_ixgbe
      EAL: PCI device 0000:04:10.1 on NUMA socket 0
      EAL: probe driver: 8086:15a8 net_ixgbe_vf
      EAL: PCI device 0000:04:10.3 on NUMA socket 0
      EAL: probe driver: 8086:15a8 net_ixgbe_vf
      EAL: PCI device 0000:04:10.5 on NUMA socket 0
      EAL: probe driver: 8086:15a8 net_ixgbe_vf
      EAL: PCI device 0000:06:00.0 on NUMA socket 0
      EAL: probe driver: 8086:15a4 net_fm10k
      EAL: PCI device 0000:08:00.0 on NUMA socket 0
      EAL: probe driver: 8086:1533 net_e1000_igb
      Lua 5.3.1 Copyright (C) 1994-2015 Lua.org, PUC-Rio
      Copyright (c) <2010-2017>, Intel Corporation. All rights reserved.
      Pktgen created by: Keith Wiles -- >>> Powered by DPDK <<<

      Packet Burst 64, RX Desc 1024, TX Desc 2048, mbufs/port 16384, mbuf cache 2048

      === port to lcore mapping table (# lcores 5) ===
      lcore: 0 1 2 3 4 Total
      port 0: ( D: T) ( 1: 0) ( 0: 0) ( 0: 1) ( 0: 0) = ( 1: 1)
      port 1: ( D: T) ( 0: 0) ( 1: 0) ( 0: 0) ( 0: 1) = ( 1: 1)
      Total : ( 0: 0) ( 1: 0) ( 1: 0) ( 0: 1) ( 0: 1)
      Display and Timer on lcore 0, rx:tx counts per port/lcore

      Configuring 2 ports, MBUF Size 2240, MBUF Cache Size 2048
      Lcore:
      1, RX-Only
      RX_cnt( 1): (pid= 0:qid= 0)
      2, RX-Only
      RX_cnt( 1): (pid= 1:qid= 0)
      3, TX-Only
      TX_cnt( 1): (pid= 0:qid= 0)
      4, TX-Only
      TX_cnt( 1): (pid= 1:qid= 0)

      Port :
      0, nb_lcores 2, private 0x9f4e40, lcores: 1 3
      1, nb_lcores 2, private 0x9f79a8, lcores: 2 4

      ** Default Info (0000:01:00.0, if_index:0) **
      max_vfs : 0, min_rx_bufsize : 256, max_rx_pktlen : 15360
      max_rx_queues : 128, max_tx_queues : 128
      max_mac_addrs : 64, max_hash_mac_addrs: 0, max_vmdq_pools: 32
      rx_offload_capa: 15, tx_offload_capa : 47, reta_size : 128, flow_type_rss_offloads:0000000000000000
      vmdq_queue_base: 0, vmdq_queue_num : 128, vmdq_pool_base: 0
      ** RX Conf **
      pthresh : 8, hthresh : 8, wthresh : 0
      Free Thresh : 32, Drop Enable : 0, Deferred Start : 0
      ** TX Conf **
      pthresh : 32, hthresh : 0, wthresh : 0
      Free Thresh : 32, RS Thresh : 32, Deferred Start : 0, TXQ Flags:00000f01

      PMD: fm10k_dev_configure(): fm10k always strip CRC
      Create: Default RX 0:0 - Memory used (MBUFs 16384 x (size 2240 + Hdr 128)) + 192 = 37889 KB headroom 192 2240
      Set RX queue stats mapping pid 0, q 0, lcore 1

      Create: Default TX  0:0  - Memory used (MBUFs 16384 x (size 2240 + Hdr 128)) + 192 =  37889 KB headroom 192 2240 Create: Range TX    0:0  - Memory used (MBUFs 16384 x (size 2240 + Hdr 128)) + 192 =  37889 KB headroom 192 2240 Create: Sequence TX 0:0  - Memory used (MBUFs 16384 x (size 2240 + Hdr 128)) + 192 =  37889 KB headroom 192 2240 Create: Special TX  0:0  - Memory used (MBUFs   64 x (size 2240 + Hdr 128)) + 192 =    149 KB headroom 192 2240  Port memory used = 151701 KB 

      Initialize Port 0 -- TxQ 1, RxQ 1, Src MAC 00:a0:c9:23:45:69

      ** Default Info (0000:02:00.0, if_index:0) **
      max_vfs : 0, min_rx_bufsize : 256, max_rx_pktlen : 15360
      max_rx_queues : 128, max_tx_queues : 128
      max_mac_addrs : 64, max_hash_mac_addrs: 0, max_vmdq_pools: 32
      rx_offload_capa: 15, tx_offload_capa : 47, reta_size : 128, flow_type_rss_offloads:0000000000000000
      vmdq_queue_base: 0, vmdq_queue_num : 128, vmdq_pool_base: 0
      ** RX Conf **
      pthresh : 8, hthresh : 8, wthresh : 0
      Free Thresh : 32, Drop Enable : 0, Deferred Start : 0
      ** TX Conf **
      pthresh : 32, hthresh : 0, wthresh : 0
      Free Thresh : 32, RS Thresh : 32, Deferred Start : 0, TXQ Flags:00000f01

      PMD: fm10k_dev_configure(): fm10k always strip CRC
      Create: Default RX 1:0 - Memory used (MBUFs 16384 x (size 2240 + Hdr 128)) + 192 = 37889 KB headroom 192 2240
      Set RX queue stats mapping pid 1, q 0, lcore 2

      Create: Default TX  1:0  - Memory used (MBUFs 16384 x (size 2240 + Hdr 128)) + 192 =  37889 KB headroom 192 2240 Create: Range TX    1:0  - Memory used (MBUFs 16384 x (size 2240 + Hdr 128)) + 192 =  37889 KB headroom 192 2240 Create: Sequence TX 1:0  - Memory used (MBUFs 16384 x (size 2240 + Hdr 128)) + 192 =  37889 KB headroom 192 2240 Create: Special TX  1:0  - Memory used (MBUFs   64 x (size 2240 + Hdr 128)) + 192 =    149 KB headroom 192 2240  Port memory used = 151701 KB 

      Initialize Port 1 -- TxQ 1, RxQ 1, Src MAC 00:a0:c9:23:45:6a
      Total memory used = 303402 KB
      Port 0: Link Up - speed 0 Mbps - full-duplex
      !ERROR!: Could not read enough random data for PRNG seed
      Port 1: Link Up - speed 0 Mbps - full-duplex
      !ERROR!: Could not read enough random data for PRNG seed

      === Display processing on lcore 0
      RX processing lcore: 1 rx: 1 tx: 0
      For RX found 1 port(s) for lcore 1
      RX processing lcore: 2 rx: 1 tx: 0
      For RX found 1 port(s) for lcore 2
      TX processing lcore: 3 rx: 0 tx: 1
      For TX found 1 port(s) for lcore 3
      TX processing lcore: 4 rx: 0 tx: 1
      For TX found 1 port(s) for lcore 4

      \ Ports 0-1 of 2

      Copyright (c) <2010-2017>, Intel Corporation

      Flags:Port : P--------------:0 P--------------:1

      Link State : ----TotalRate----

      Pkts/s Max/Rx : 0/0 0/0 0/0

      Max/Tx : 0/0 0/0 0/0

      MBits/s Rx/Tx : 0/0 0/0 0/0

      Broadcast : 0 0

      Multicast : 0 0

      64 Bytes : 0 0

      65-127 : 0 0

      128-255 : 0 0

      256-511 : 0 0

      512-1023 : 0 0

      1024-1518 : 0 0

      Runts/Jumbos : 0/0 0/0

      Errors Rx/Tx : 0/0 0/0

      Total Rx Pkts : 0 0

      Tx Pkts : 0 0

      Rx MBs : 0 0

      Tx MBs : 0 0

      ARP/ICMP Pkts : 0/0 0/0

      :

      Pattern Type : abcd... abcd...

      Tx Count/% Rate : Forever /100% Forever /100%

      PktSize/Tx Burst : 64 / 64 64 / 64

      Src/Dest Port : 1234 / 5678 1234 / 5678

      Pkt Type:VLAN ID : IPv4 / TCP:0001 IPv4 / TCP:0001

      802.1p CoS : 0 0

      ToS Value: : 0 0

      • DSCP value : 0 0
      • IPP value : 0 0
        Dst IP Address : 192.168.1.1 192.168.0.1
        Src IP Address : 192.168.0.1/24 192.168.1.1/24
        Dst MAC Address : 00:a0:c9:23:45:6a 00:a0:c9:23:45:69
        Src MAC Address : 00:a0:c9:23:45:69 00:a0:c9:23:45:6a
        VendID/PCI Addr : 8086:15a4/01:00.0 8086:15a4/02:00.0

      -- Pktgen Ver: 3.4.6 (DPDK 17.02.0) Powered by DPDK --------------------------

      ** Version: DPDK 17.02.0, Command Line Interface with timers
      Pktgen:/>

      Port 0: Link Up - speed 0 Mbps - full-duplex
      !ERROR!: Could not read enough random data for PRNG seed
      Port 1: Link Up - speed 0 Mbps - full-duplex
      !ERROR!: Could not read enough random data for PRNG seed

       

      The trace show that the speed is 0, It seems that this speed of port is not gathered by the fm10k DPDK driver and is always returned as 0,

      but when i start port 0 ,1 traffic in pktgen menu, i see 64 packets on TX/RX every 10 s, which is i think not normal behaviour,

      The pmd needs to return the speed or pktgen will have some problems.

      Have you any idea to fix this issue?

      Thank you for your help

        • 1. Re: Pktgen DPDK Troubleshooting
          Intel Corporation
          This message was posted on behalf of Intel Corporation

          Hi Anasboubakri,

           Thank you for posting in Wired Communities. The Intel® DPDK questions and technical problems should be reported through the Intel® Premier Support site
          http://premier.intel.com/premier or access your IBL account and click
          the Intel® Premier Support link to enter issues under the Product Name
          “Data Plane Development Kit (DPDK)”, you will be routed to the support team to better assist you. Thank you.

          Regards,
          Sharon T