固定链接 基于滴滴云DC2 Pktgen-DPDK性能压测工具的使用

基于滴滴云DC2 Pktgen-DPDK性能压测工具的使用

基于滴滴云DC2 Pktgen-DPDK性能压测工具的使用

Pktgen-DPDK 简介

Pktgen(Packet Gen-erator)是一个基于软件的流量生成器,由 DPDK 快速数据包处理框架提供支持。

Pktgen 的一些功能是:

  • 它能够生成具有 64 字节帧的 10Gbit 线速流量。
  • 它可以以线速充当发送器或接收器。
  • 它有一个运行时环境来配置启动和停止流量。
  • 它可以显示多个端口的实时指标。
  • 它可以通过迭代源或目标 MAC,IP 地址或端口来按顺序生成数据包。
  • 它可以处理 UDP、TCP、ARP、ICMP、GRE、MPLS 和 Queue-in-Queue 的数据包。
  • 它可以通过 TCP 连接远程控制。
  • 它可以通过 Lua 进行配置,并且可以运行命令脚本来设置可重复的测试用例。

kernel.debug 安装

yum install -y kernel-devel
cd /lib/modules/3.10.0-693.21.1.el7.x86_64/
rm -fr build
ln -s /usr/src/kernels/3.10.0-693.21.1.el7.x86_64/ build

DPDK 安装

以 dpdk17.11.4 为例

代码下载:wget http://fast.dpdk.org/rel/dpdk-17.11.4.tar.xz

解压缩 tar -Jxvf dpdk-17.11.4.tar.xz

cd ./dpdk-stable-17.11.4

export RTE_SDK=`pwd`

export RTE_TARGET=x86_64-native-linuxapp-gcc

export EXTRA_CFLAGS=’-O2 -g’

make install T=x86_64-native-linuxapp-gcc

Pktgen-DPDK 安装

以 pktgen-dpdk-3.4.9 为例

代码下载:wget http://git.dpdk.org/apps/pktgen-dpdk/snapshot/pktgen-3.4.9.tar.gz

解压缩 tar -zxvf pktgen-3.4.9.tar.gz

cd ./pktgen-3.4.9

make

其他配置

配置大页个数
echo 512 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages

安装 dpdk 工具
yum install -y dpdk-tools

启动 igb_uio 驱动
modprobe uio
insmod ./dpdk-17.11.4/x86_64-native-linuxapp-gcc/kmod/igb_uio.ko

绑定 igb_uio ( 需要在控制台下执行 )
.dpdk-devbind -b igb_uio 0000:00:03.0 (网卡pci可用 dpdk-devbind.py -s 查看)

启动 Pktgen

cd ./pktgen-3.4.9( 必须在此目录下执行 )

./app/x86_64-native-linuxapp-gcc/pktgen -c 0x3 -n 4 –proc-type auto –socket-mem 1024 — -T -P -m “[1:1].0”

运行示例

参数解释( 详细可用 -h 参数查看 )

-c cpu 核的掩码信息 16进制0x3表示使用第一个和第二个核
-n 通道个数
–proc-type 进程类型 一般默认 auto
–socket-mem pktgen使用的内存若有多个numa用 ‘,’ 隔开
-T 彩色输出
-P 所有端口开启混杂模式
-m 网口0的首发队列配置

程序内部命令( 详细可用 help 命令查看 )

port 发包,收包是默认动作

start

port 停止发包

stop

设置源目的 mac 地址

set src|dst mac

设置源目的 ip 地址

set [src|dst] ip

设置发包类型

set type ipv4|ipv6|vlan|arp

设置协议类型
set proto udp|tcp|icmp

设置包大小

set size

设置最大发送速率的百分比(默认全速全速)

set rate

本文作者:孙文杰

您的留言将激励我们越做越好

用户评论(2)

  1. 132*****144

    滴滴云blog系统页面布局丑陋不堪不知道是不是mac 系统safari 浏览器的问题还是bug,两边的宽边真是浪费

    1. 管理员

      马上改版后的新版就要上线了,敬请期待哈