[dpdk-users] [dpdk-dev] capture packets on VM

Raja Jayapal raja.jayapal at tcs.com
Wed Jul 20 08:09:35 CEST 2016


Hi Reshma/All,

Please find the "show config fwd" output below.

 testpmd> show config fwd
Warning! Cannot handle an odd number of ports with the current port topology. Configuration must be changed to have an even number of ports, or relaunch application with --port-topology=chained
io packet forwarding - ports=3 - cores=1 - streams=3 - NUMA support disabled, MP over anonymous pages disabled
Logical Core 1 (socket 0) forwards packets on 3 streams:
  RX P=0/Q=0 (socket 0) -> TX P=2/Q=0 (socket 0) peer=02:00:00:00:00:02
  RX P=1/Q=0 (socket 0) -> TX P=0/Q=0 (socket 0) peer=02:00:00:00:00:00
  RX P=2/Q=0 (socket 0) -> TX P=0/Q=0 (socket 0) peer=02:00:00:00:00:00

As described above, i have modified the topology to have even number of ports.

testpmd> show config fwd
io packet forwarding - ports=4 - cores=1 - streams=4 - NUMA support disabled, MP over anonymous pages disabled
Logical Core 1 (socket 0) forwards packets on 4 streams:
  RX P=0/Q=0 (socket 0) -> TX P=1/Q=0 (socket 0) peer=02:00:00:00:00:01
  RX P=1/Q=0 (socket 0) -> TX P=0/Q=0 (socket 0) peer=02:00:00:00:00:00
  RX P=2/Q=0 (socket 0) -> TX P=3/Q=0 (socket 0) peer=02:00:00:00:00:03
  RX P=3/Q=0 (socket 0) -> TX P=2/Q=0 (socket 0) peer=02:00:00:00:00:02

I could confirm that the packet is getting forwarded as per the config and setting the IP and MAC in packet generator does not take effect.
In testpmd app, whatever the MAC/IP is configured on traffic generator, the packets are forwaded in adjacent ports.

If i want to forward the packet based on IP&MAC, will it be achieved by running l2fwd or l3fwd ?

Kindly suggest.

Thanks,
Raja


-----"Pattan, Reshma" <reshma.pattan at intel.com> wrote: -----
To: Raja Jayapal <raja.jayapal at tcs.com>
From: "Pattan, Reshma" <reshma.pattan at intel.com>
Date: 07/19/2016 07:12PM
Cc: "users at dpdk.org" <users at dpdk.org>, "De Lara Guarch, Pablo" <pablo.de.lara.guarch at intel.com>
Subject: RE: [dpdk-dev] capture packets on VM

       
 Hi Raja,
  
 Since this is a usability question this should be discussed under users at dpdk.org mailing list. Hence I removed  dev at dpdk.org. 
 Ya actually packets received from port 0 should be transmitted on to port1 and packets received from port1 should go to port2.
  
 Can you paste o/p of  ”show config fwd” and also interpret if  traffic on your board is flowing as per existing flow rules.
  
 Ex:
 testpmd> show  config fwd
 io packet forwarding - ports=2 - cores=1 - streams=2 - NUMA support disabled, MP over anonymous pages disabled
 Logical Core 5 (socket 0) forwards packets on 2 streams:
   RX P=0/Q=0 (socket 0) -> TX P=1/Q=0 (socket 0) peer=02:00:00:00:00:01  è  this means, Streams received on port 0 will be sent on to port1 . 
   RX P=1/Q=0 (socket 0) -> TX P=0/Q=0 (socket 0) peer=02:00:00:00:00:00 è this means, Streams received on port1 will be sent onto port0.
  
 Thanks,
 Reshma
  
 
 
 
 From: Raja Jayapal [mailto:raja.jayapal at tcs.com] 
 Sent: Tuesday, July 19, 2016 12:38 PM
 To: Pattan, Reshma <reshma.pattan at intel.com>
 Cc: dev at dpdk.org
 Subject: RE: [dpdk-dev] capture packets on VM
    
 Hi Reshma, 
 
 Thanks for your information.
 I have been trying to run the testpmd app and would like to get some idea on the packet flow in testpmd.
 
 br0 -----vnet0----- (port0)VM NIC
 
 br1------vnet1------(port1)VM NIC
 
 br2------vnet2------(port2)VM NIC
 
 br0 IP and MAC:
 fe:54:00:0d:af:af - 192.168.100.10
 br1 IP and MAC:
 fe:54:00:4e:5b:df - 192.168.100.20
 br2 IP and MAC:
 fe:54:00:93:78:6d - 192.168.100.30
 
 Ran testpmd application on VM and sending packets from Host using packeth.
 
 Using PackETH generator, sent traffic from br0 destined to br1(modified the source / destination MAC and IP in packeth tool), but i could see that the packets are received on port0 and transmitted on port2.
 
 Sending packets from br0 to br1:
 
 ./testpmd -c 3 -n 4 -- -i --total-num-mbufs=3000
 testpmd> show port stats all
   ######################## NIC statistics for port 0  ########################
   RX-packets: 4          RX-missed: 0          RX-bytes:  0
   RX-errors: 0
   RX-nombuf:  0         
   TX-packets: 0          TX-errors: 0          TX-bytes:  0
   ############################################################################
   ######################## NIC statistics for port 1  ########################
   RX-packets: 0          RX-missed: 0          RX-bytes:  0
   RX-errors: 0
   RX-nombuf:  0         
   TX-packets: 0          TX-errors: 0          TX-bytes:  0
   ############################################################################
   ######################## NIC statistics for port 2  ########################
   RX-packets: 0          RX-missed: 0          RX-bytes:  0
   RX-errors: 0
   RX-nombuf:  0         
   TX-packets: 4          TX-errors: 0          TX-bytes:  0
   ############################################################################
 testpmd> 
 
 Second time, sent traffic from br1 to br2, but the packets are received on port2 and transmitted on port0.
 
 Sending packets from br1 to br2:
 
 testpmd> show port stats all
   ######################## NIC statistics for port 0  ########################
   RX-packets: 0          RX-missed: 0          RX-bytes:  0
   RX-errors: 0
   RX-nombuf:  0         
   TX-packets: 6          TX-errors: 0          TX-bytes:  0
   ############################################################################
   ######################## NIC statistics for port 1  ########################
   RX-packets: 6ÿÿÿÿÿÿÿÿÿ RX-missed: 0ÿÿÿÿÿÿÿÿÿ RX-bytes:ÿ 0
 ÿ RX-errors: 0
 ÿ RX-nombuf:ÿ 0ÿÿÿÿÿÿÿÿ 
 ÿ TX-packets: 0ÿÿÿÿÿÿÿÿÿ TX-errors: 0ÿÿÿÿÿÿÿÿÿ TX-bytes:ÿ 0
 ÿ ############################################################################
 ÿ ######################## NIC statistics for port 2ÿ ########################
 ÿ RX-packets: 0ÿÿÿÿÿÿÿÿÿ RX-missed: 0ÿÿÿÿÿÿÿÿÿ RX-bytes:ÿ 0
 ÿ RX-errors: 0
 ÿ RX-nombuf:ÿ 0ÿÿÿÿÿÿÿÿ 
 ÿ TX-packets: 0ÿÿÿÿÿÿÿÿÿ TX-errors: 0ÿÿÿÿÿÿÿÿÿ TX-bytes:ÿ 0
 ÿ ############################################################################
 testpmd> 
 
 Could you please suggest whether this is expected behaviour?
 Also suggest if any configuarion needs to be done to make the flow to work correctly. 
 
 
 Thanks,
 Raja
 
 -----"Pattan, Reshma" <reshma.pattan at intel.com> wrote: -----
 
 
 To: Raja Jayapal <raja.jayapal at tcs.com>
 From: "Pattan, Reshma" <reshma.pattan at intel.com>
 Date: 07/15/2016 07:33PM
 Cc: "dev at dpdk.org" <dev at dpdk.org>
 Subject: RE: [dpdk-dev] capture packets on VM
 
 
 > -----Original Message-----
 > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Raja Jayapal
 > Sent: Friday, July 15, 2016 6:55 AM
 > To: dev at dpdk.org
 > Subject: [dpdk-dev] capture packets on VM
 > 
 > Hi All,
 > 
 > I have installed dpdk on VM and would like to know how to capture the packets
 > on dpdk ports.
 > I am sending traffic from hostÿ and want to know how to confirm whether the
 > packets are flowing via dpdk ports.
 > I tried with tcpdump and wireshark but could not capture the packets inside VM.
 > setup : bridge1(Host)------- VM(Guest with DPDK) ----- bridge2(Host)
 > 
 
 Hi,
 
 On DPDK you can capture packets with app/pdump/ tool. This tool is available for use from 16.07RC1. 
 What you can do is run testpmd and see if packets are seen in testpmd, that confirms if packets are landing on dpdk ports or not.
 If you also want to capture packet for analysis, you need to run app/pdump/ tool along with testpmd. 
 The pdump tool captures the packet to pcap file, so you can use tcpdump -ni <pcap file> to view the packets. 
 More about the tool usage can be found under doc/guides/sample_app_ug/pdump.rst
 
 Let me know if you need further help on this.
 
 Thanks,
 Reshma
 
 
    =====-----=====-----=====
 Notice: The information contained in this e-mail
 message and/or attachments to it may contain 
 confidential or privileged information. If you are 
 not the intended recipient, any dissemination, use, 
 review, distribution, printing or copying of the 
 information contained in this e-mail message 
 and/or attachments to it are strictly prohibited. If 
 you have received this communication in error, 
 please notify us by reply e-mail or telephone and 
 immediately and permanently delete the message 
 and any attachments. Thank you
     


More information about the users mailing list