其中主机A与主机B都为双网卡塔式主机服务器,通过一根网线直连。 (主机B的网关为主机A的IP)
export RTE_SDK=/home/sword/dpdk-17.08
export RTE_TARGET=x86_64-native-linuxapp-gcc
配置大页内存为:1024
绑定单张网卡,即与主机A网线直连的网卡
./dpdk-17.08/usertools/dpdk-setup.sh
参数其中 -c 为十六进制的分配的逻辑内核掩码,-n 为十进制的内存通道数量
EAL参数和程序参数用–分开
-q 为分配给每个核心的收发队列数量(端口数量),-p为十六进制的分配的端口数掩码,-t 为可选默认10s打印时间间隔参数
cd dpdk-17.08/examples/l2fwd
make
./build/l2fwd -c 0x3 -n 4 -- -q 1 -p 0x01
需要修改devices处的绑定网卡信息,可在dpdk或pktgen的setup.sh中查看;另一处是:dpdk处的-l,以及-n,就是l2fwd中的参数-c,-n;最后一处是’app’处的 ‘–crc-strip’,修改方法见注释(在文档中,若未加utf-8,那么就不要有中文注释,否则会报错)。
.......
# 在此处修改你绑定的网卡,
'devices': (
'81:00.0 81:00.1 81:00.2 81:00.3',
'85:00.0 85:00.1 85:00.2 85:00.3'
)
...........
#在此处修改逻辑核心数以及内存通道数
'dpdk': (
'-l 14,15-22', # 如果有两个core则:-l 0-1
'-n 4',
'--proc-type auto',
'--log-level 7',
'--socket-mem 2048,2048',
'--file-prefix pg'
),
..........
# 在此处修改那个核心绑定那个端口
'app': (
'-T',
'-P',
'--crc-strip',
'-m [15:16].0', # 核心15、16绑定端口0
'-m [17:18].1',
'-m [19:20].2',
'-m [21:22].3'
)
这里若在tools目录下可能会出现未发现default文件则回退一级目录即可。(注意此处添加的环境变量和DPDK下的一样)
cd dpdk-17.08/examples/pktgen-3.5.0
./tools/dpdk-run.py -s default
./tools/dpdk-run.py default
再开启端口即可,start 0 ,表示开启端口0;
Pktgen:/> start 0
Pktgen:/> stop 0
这里只有发送流量(主机A关机没开…),发送速度快的可怕
| Ports 0-0 of 1 Copyright (c) <2010-2017>, Intel Corporation
Flags:Port : P--------------:0
Link State : ----TotalRate----
Pkts/s Max/Rx : 0/0 0/0
Max/Tx : 14267/0 14267/0
MBits/s Rx/Tx : 0/0 0/0
Broadcast : 0
Multicast : 0
64 Bytes : 0
65-127 : 0
128-255 : 0
256-511 : 0
512-1023 : 0
1024-1518 : 0
Runts/Jumbos : 0/0
Errors Rx/Tx : 0/0
Total Rx Pkts : 0
Tx Pkts : 1753791
Rx MBs : 0
Tx MBs : 1234
ARP/ICMP Pkts : 0/0
:
Pattern Type : abcd...
Tx Count/% Rate : Forever /100%
PktSize/Tx Burst : 64 / 64
Src/Dest Port : 1234 / 5678
Pkt Type:VLAN ID : IPv4 / TCP:0001
802.1p CoS : 0
ToS Value: : 0
- DSCP value : 0
- IPP value : 0
Dst IP Address : 192.168.1.1
Src IP Address : 192.168.0.1/24
Dst MAC Address : 00:00:00:00:00:00
Src MAC Address : e4:1f:13:95:5a:a8
VendID/PCI Addr : 8086:10d3/0b:00.0
-- Pktgen Ver: 3.5.0 (DPDK 17.08.2) Powered by DPDK --------------------------
在主机A开启pktgen,并在主机B开启testpmd,结果如下,但和主机A处的发送流量并不对应,母鸡原因。
主机B,testpmd结果
---------------------- Forward statistics for port 0 ----------------------
RX-packets: 11114563 RX-dropped: 2643 RX-total: 11117206
RX-error: 7
RX-nombufs: 0
TX-packets: 11113431 TX-dropped: 1132 TX-total: 11114563
----------------------------------------------------------------------------
+++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++
RX-packets: 11114563 RX-dropped: 2643 RX-total: 11117206
TX-packets: 11113431 TX-dropped: 1132 TX-total: 11114563
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++