pktgen 基本使用

来源:互联网 发布:cdd 什么意思网络用语 编辑:程序博客网 时间:2024/06/07 10:37

原文出自:

http://blog.csdn.net/richardysteven/article/details/9378109


1. 编译pktgen模块

选中 config NET_PKTGEN


2. 安装pktgen模块


modprobe pktgen


cd /proc/net/pktgen/


3. 添加测试设备


echo rem_device_all > kpktgend_0

echo add_device eth0 > kpktgend_0


4. 设置测试参数

测试参数通过eth0的设备接口来配置。


echo count 10000 > eth0

echo clone_skb 1000 > eth0

echo pkt_size 1500 > eth0

echo dst 10.11.11.101 > eth0

echo dst_mac 00:21:cc:60:5f:c8 > eth0


5. 启动

echo start > pgctrl


进一步解释


当内核加载了pktgen模块后,有几个/proc文件比较重要。


/proc/net/pktgen/pgctrl

这个整个模块的控制接口,只接受三个命令

stop

start

reset


/proc/net/pktgen/kpktgend_%d

pktgen模块在每个cpu上都有一个内核线程,该文件就对应了相应的内核线程。

读取该文件,显示对应内核线程的状态。

写该文件,可以控制对应内核线程。只接受两个命令,其实就是添加/删除设备。

add_device

rem_device_all


/proc/net/pktgen/eth0

当执行了add_device命令后,会出现一个和设备名字一样的proc文件。

读取该文件,获得相应的设备测试结果。

写该文件,则可以控制测试的条件。


网络观察分析


sar -n DEV 2 10

每间隔两秒,显示一次状态,一共显示10次。

09:32:12 AM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
09:32:12 AM      eth3      0.00      0.00      0.00      0.00      0.00      0.00      0.00
09:32:12 AM      eth7      0.00      0.00      0.00      0.00      0.00      0.00      0.00
09:32:12 AM    virbr1      0.00      0.00      0.00      0.00      0.00      0.00      0.00


影响网速的因素

1. packet size

min_pkt_size 从58 调到 1000, 网速从67Mb/s 增加到了 96Mb/s。

网卡本身是100Mb/s的。

0 0
原创粉丝点击