版权声明:本文为神州灵云作者的原创文章,未经神州灵云允许不得转载。
本文作者:Lewis
一、简介
1、pktgen是一个位于linux内核层的高性能网络测试工具,他是一个内核模块,所以不是软件,因此不能通过在命令行使用pktgen的方式运行
2、支持多线程,能够产生随机mac地址、IP地址、UDP端口号的数据包
3、发送数据速率甚至可以大于10GBit/s
4、pktgen用到了向/proc文件系统写入数据的功能
二、基本使用方法
系统默认pktgen不是自动加载进内核,需要手动pktgen加入内核
1、加载pktgen入内核命令
[root@localhost ~]# modprobe pktgen
2、查看pktgen是否在内核
[root@localhost ~]# lsmod | grep pktgen
pktgen 53193 0
3、加载后,模块文件位置
/lib/modules/3.10.0-229.el7.x86_64/kernel/net/core/pktgen.ko
4、查看pktgen进程,机器有几个内核,就有几个进程
[root@localhost core]# ps aux | grep pktgen
root 1935 0.0 0.0 112708 976 pts/0 R+ 14:22 0:00 grep --color=auto pktgen
root 14490 0.0 0.0 0 0 ? S 11:23 0:02 [kpktgend_0]
root 14491 0.0 0.0 0 0 ? S 11:23 0:00 [kpktgend_1]
root 14492 0.0 0.0 0 0 ? S 11:23 0:00 [kpktgend_2]
root 14493 0.0 0.0 0 0 ? S 11:23 0:01 [kpktgend_3]
root 14494 0.0 0.0 0 0 ? S 11:23 0:01 [kpktgend_4]
root 14495 0.0 0.0 0 0 ? S 11:23 0:01 [kpktgend_5]
root 14496 0.0 0.0 0 0 ? S 11:23 0:01 [kpktgend_6]
root 14497 0.0 0.0 0 0 ? S 11:23 0:02 [kpktgend_7]
5、查看Linux上的pktgen
[root@localhost ~]# cd /proc/net/pktgen/
[root@localhost pktgen]# ll
total 0
-rw------- 1 root root