[dpdk-dev] l2fwd application - packets not getting forwarded

Raj Ravi mekaviraj at gmail.com
Thu Jun 12 21:47:53 CEST 2014


Hi,
I am trying to run l2fwd application in ixgbe based network adapter.

Followed the below steps:
1. Add hugepages in grub commandline. 1024 pages of 2 MB allocated.
2. verify hugepages support in /proc/meminfo.
3.mounted huge pages as below:
mount -t hugetlbfs nodev /mnt/huge

4. built DPDK environment for x86_64-default-linuxapp-gcc.
5. built l2fwd applicaition after exporting $RTE_SDK and  $RTE_TARGET.

I have three machines connected like this:

machine 1  <----> machine 2 <---> machine 3

machine 1 -> where pktgen runs to generate traffic

machine 2 -> l2fwd runs

machine 3 -> I should be able to observe packets here using tcpdump.??


First I run l2fwd like below (in machine 2):
./l2fwd -c f -n 4 -- -q 4 -p 3

Note port 1 and 2 are ixgbe port which are already bind to igb_uio driver.

Q1. My understanding is whatever traffic arrives in port 1 will be
forwarded to port 2.
and port 2 will be forwarded to port 1.
Please correct me here. ?

Q2. from machine 1 to machine 3 , ping should work??


In machine 1 , pktgen script is run as below :

==============
pktgen script used:
#!/bin/sh
# pktgen.conf -- Sample configuration for send on two devices on a UP system

#modprobe pktgen
#modprobe pktgen

function pgset() {
    local result

    echo $1 > $PGDEV
    result=`cat $PGDEV | fgrep "Result: OK:"`
    if [ "$result" = "" ]; then
         cat $PGDEV | fgrep Result:
    fi
}

function pg() {
    echo inject > $PGDEV
    cat $PGDEV
}

# On UP systems only one thread exists -- so just add devices
# We use eth0
echo "Adding devices to run".

PGDEV=/proc/net/pktgen/kpktgend_0
pgset "rem_device_all"
pgset "add_device eth0"
pgset "max_before_softirq 10000"

#pgset "add_device eth0"

# Configure the individual devices
echo "Configuring devices"

PGDEV=/proc/net/pktgen/eth0
#pgset "delay 0"
pgset "clone_skb 1000000"
pgset "pkt_size 60"
#pgset "min_pkt_size 60"
#pgset "max_pkt_size 60"
#pgset "min_pkt_size 92"
#pgset "max_pkt_size 92"


pgset "src_mac 70:71:BC:A8:5A:E8"
pgset "dst_mac 70:71:bc:dc:92:ab"

pgset "count 10000000"

# Time to run

PGDEV=/proc/net/pktgen/pgctrl

echo "Running... ctrl^C to stop"

pgset "start"

echo "Done"

cat /proc/net/pktgen/eth0
==============

Q3:  In above script, is it mandatory to mention both source and
destination macs ??

Also, destination mac should "machine 3" 's mac address??


Q4: With the above setting , I "CANNOT" see the stats getting
incremented at all ?? I fear the traffic is not passing through the
ixgbe ports at all.

Q5: I have tried using testpmd application, here, all the packets are
shown in RX errors.

RHEL7, 3.10.32 kernel used. DPDK 1.6.0-18.zip used.

l2fwd application log:
===========================
EAL: Detected lcore 0 as core 0 on socket 0
EAL: Detected lcore 1 as core 1 on socket 0
EAL: Detected lcore 2 as core 2 on socket 0
EAL: Detected lcore 3 as core 3 on socket 0
EAL: Detected lcore 4 as core 4 on socket 0
EAL: Detected lcore 5 as core 5 on socket 0
EAL: Detected lcore 6 as core 6 on socket 0
EAL: Detected lcore 7 as core 7 on socket 0
EAL: Detected lcore 8 as core 0 on socket 0
EAL: Detected lcore 9 as core 1 on socket 0
EAL: Detected lcore 10 as core 2 on socket 0
EAL: Detected lcore 11 as core 3 on socket 0
EAL: Detected lcore 12 as core 4 on socket 0
EAL: Detected lcore 13 as core 5 on socket 0
EAL: Detected lcore 14 as core 6 on socket 0
EAL: Detected lcore 15 as core 7 on socket 0
EAL: Support maximum 64 logical core(s) by configuration.
EAL: Detected 16 lcore(s)
EAL: Setting up memory...
EAL: Ask a virtual area of 0x200000 bytes
EAL: Virtual area found at 0x7f6e89400000 (size = 0x200000)
EAL: Ask a virtual area of 0x7fc00000 bytes
EAL: Virtual area found at 0x7f6e09600000 (size = 0x7fc00000)
EAL: Ask a virtual area of 0x200000 bytes
EAL: Virtual area found at 0x7f6e09200000 (size = 0x200000)
EAL: Requesting 1024 pages of size 2MB from socket 0
EAL: TSC frequency is ~2200002 KHz
EAL: Master core 2 is ready (tid=89bbd840)
EAL: PCI device 0000:01:00.0 on NUMA socket 0
EAL:   probe driver: 8086:1528 rte_ixgbe_pmd
EAL:   PCI memory mapped at 0x7f6e89987000
EAL:   PCI memory mapped at 0x7f6e89bcf000
EAL: PCI device 0000:01:00.1 on NUMA socket 0
EAL:   probe driver: 8086:1528 rte_ixgbe_pmd
EAL:   PCI memory mapped at 0x7f6e89787000
EAL:   PCI memory mapped at 0x7f6e89bcb000
EAL: PCI device 0000:06:00.0 on NUMA socket 0
EAL:   probe driver: 8086:1521 rte_igb_pmd
EAL:   PCI memory mapped at 0x7f6e89687000
EAL:   PCI memory mapped at 0x7f6e89bc7000
EAL: PCI device 0000:06:00.1 on NUMA socket 0
EAL:   probe driver: 8086:1521 rte_igb_pmd
EAL:   0000:06:00.1 not managed by UIO driver, skipping
Lcore 2: RX port 0
Lcore 2: RX port 1
Initializing port 0... done:
Port 0, MAC address: A0:36:9F:05:E8:2C

Initializing port 1... done:
Port 1, MAC address: A0:36:9F:05:E8:2E

Skipping disabled port 2

Checking link status.................................done
Port 0 Link Up - speed 1000 Mbps - full-duplex
Port 1 Link Up - speed 1000 Mbps - full-duplex
L2FWD: entering main loop on lcore 2
L2FWD:  -- lcoreid=2 portid=0
L2FWD:  -- lcoreid=2 portid=1

Port statistics ====================================
Statistics for port 0 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Statistics for port 1 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Aggregate statistics ===============================
Total packets sent:                  0
Total packets received:              0
Total packets dropped:               0
====================================================

Port statistics ====================================
Statistics for port 0 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Statistics for port 1 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Aggregate statistics ===============================
Total packets sent:                  0
Total packets received:              0
Total packets dropped:               0
====================================================

Port statistics ====================================
Statistics for port 0 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Statistics for port 1 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Aggregate statistics ===============================
Total packets sent:                  0
Total packets received:              0
Total packets dropped:               0
====================================================

Port statistics ====================================
Statistics for port 0 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Statistics for port 1 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Aggregate statistics ===============================
Total packets sent:                  0
Total packets received:              0
Total packets dropped:               0
====================================================

Port statistics ====================================
Statistics for port 0 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Statistics for port 1 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Aggregate statistics ===============================
Total packets sent:                  0
Total packets received:              0
Total packets dropped:               0
====================================================

Port statistics ====================================
Statistics for port 0 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Statistics for port 1 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Aggregate statistics ===============================
Total packets sent:                  0
Total packets received:              0
Total packets dropped:               0
====================================================

Port statistics ====================================
Statistics for port 0 ------------------------------
Packets sent:                        0
Packets received:                    0
Packets dropped:                     0
Statistics for port 1 ------------------------------
Packets sent:                        0
=========================================
Please correct/ provide suggestion if any of my assumption is wrong.

Thanks,
Kavi


More information about the dev mailing list