linux下对于dpdk中的l2fwd 测试 下载本文

l2fwd 测试

How to build and run the l2fwd application

1 Set the required environmental and the compilation target ①vi dpdk.rc

Writen as fallowing and save: export RTE_SDK=`pwd`

export RTE_TARGET=x86_64-default-linuxapp-gcc(或i686-default-linuxapp-gcc)

②#source dpdk.rc

2 Build the application

#make install T=x86_64-default-linuxapp-gcc(或i686-default-linuxapp-gcc) #make -C examples/l2fwd/

The compiled application will be located at: $RTE_SDK/examples/l2fwd/build/l2fwd

3 Configure hugepages #mkdir /mnt/huge

#mount -t hugetlbfs nodev /mnt/huge

#echo 102 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages

4 insmod igb_uio.ko

#cd $RTE_SDK/ #modprobe uio

#cd x86_64-default-linuxapp-gcc(或i686-default-linuxapp-gcc) #insmod kmod/igb_uio.ko

5 Change pci dirver to uio

#cd $RTE_SDK/tools

#./pci_unbind.py --bind=igb_uio eth2 #./pci_unbind.py --bind=igb_uio eth3

Ps: I get 4 network interfaces in my machine

6 Run the application

#./testpmd -c 3 -n 2 -- -q 1 -p 0x3

Parameters:

-c : number of cup add 1

-n: number of memory channels to use

-b: blacklist a PCI devise to prevent EAL from using it. Multiple -b options are allowed.

7 send packet with tcpreplay

See the detail in document 《send_packets_with_tcpreplay.doc》