[dpdk-users] Capture traffic with DPDK-dump

Pattan, Reshma reshma.pattan at intel.com
Thu Nov 10 14:20:29 CET 2016


Hi,

Comments below.

Thanks,
Reshma

> -----Original Message-----
> From: jose suarez [mailto:jsuarezv at ac.upc.edu]
> Sent: Thursday, November 10, 2016 12:32 PM
> To: Pattan, Reshma <reshma.pattan at intel.com>
> Cc: users at dpdk.org
> Subject: Re: [dpdk-users] Capture traffic with DPDK-dump
> 
> Hi,
> 
> Thank you very much for your response. I followed your comment about the
> full PCI id and now the PDUMP application is working fine :). It creates the
> pcap file.
> 
> My problem now is that I noticed that in the testpmd app I don't receive any
> packets. I write below the commands that I use to execute both apps:
> 
> # sudo ./x86_64-native-linuxapp-gcc/app/testpmd -c 0x06 -n 4 --proc-type
> primary --socket-mem 1000 --file-prefix pg1 -w 0000:01:00.0 -- -i --port-
> topology=chained
> 
> # sudo ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -c 0xf8 -n 4 --proc-
> type auto --socket-mem 1000 --file-prefix pg2 -w 0000:01:00.0 -- --pdump
> 'device_id=0000:01:00.0,queue=*,rx-dev=/tmp/file.pcap'
> 
> Before I execute these commands, I ensure that all the hugepages are free
> (sudo rm -R /dev/hugepages/*)
> 
> In this way I split up the hugepages (I have 2048 in total) between both
> processes, as Keith Wiles advised me. Also I don't overlap any core with the
> masks used (0x06 and 0xf8)
> 
> My NIC (Intel 82599ES), which PCI id is 0000:01:00.0, it is connected to a 10G
> link that receives traffic from a mirrored port. I show you the internet device
> settings related to this NIC:
> 
> Network devices using DPDK-compatible driver
> ============================================
> 0000:01:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection'
> drv=igb_uio unused=ixgbe
> 
> 
> When I run the testpmd app and check the port stats, I get the following
> output:
> 
> #sudo ./x86_64-native-linuxapp-gcc/app/testpmd -c 0x06 -n 4 --proc-
> type=auto --socket-mem 1000 --file-prefix pg1 -w 0000:01:00.0 -- -i --port-
> topology=chained
> EAL: Detected 8 lcore(s)
> EAL: Auto-detected process type: PRIMARY
> EAL: Probing VFIO support...
> PMD: bnxt_rte_pmd_init() called for (null)
> EAL: PCI device 0000:01:00.0 on NUMA socket 0
> EAL:   probe driver: 8086:10fb rte_ixgbe_pmd
> Interactive-mode selected
> USER1: create a new mbuf pool <mbuf_pool_socket_0>: n=155456,
> size=2176,
> socket=0
> Configuring Port 0 (socket 0)
> Port 0: XX:XX:XX:XX:XX:XX
> Checking link statuses...
> Port 0 Link Up - speed 10000 Mbps - full-duplex Done
> testpmd> show port stats 0


After testpmd comes to the prompt, you need to execute command "start". This will start traffic forwarding.

>    ######################## NIC statistics for port 0
> ########################
>    RX-packets: 0          RX-missed: 0          RX-bytes:  0
>    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
> ################################################################
> ############
> 
> It doesn't receive any packet. Did I missed any step in the configuration of
> the testpmd app?

I am wondering , you should see all packets hitting Rx-missed. 
So I suggest just stop everything. Unbind port back to Linux. Then check if the port is receiving packets from other end using tcpdump. 
If not then you may need to debug the issue. 

After everything is fine, bind back the port to dpdk, run testpmd and see if you could receive packets or not. 
If you are seeing packets against "Rx-missed", then run start command in testpmd prompt to start packet forwarding. After that you will be able to
See the packets in the capture file.

Thanks,
Reshma



More information about the users mailing list