昨天做了个实验,测试了三种发包方式所能达到的最快速度。测试平台是一台双至强、1G内存的服务器,操作系统为Linux,内核版本2.6.15.3,网卡为Intel e1000光口网卡。使用一台smartbit来记录发包速度。
所使用的三种方法分别是:
tcpreplay:常用的发包软件,可以重发tcpdump所捕获的报文。
pktgen:linux内核自带的发包工具。
修改的e1000驱动:在驱动里直接写网卡的发送缓冲区
下面是测试结果:

  tcpreplay ,64字节报文 pkggen,64字节报文 e1000,64字节报文 tcpreplay,512字节报文 pktgen,512字节报文 e1000,512字节报文
pps 298725 600000 610000 232382 234091 234000
Mbps 146 266 270 908 857 850

说明一下,统计数据的值不算精确,因为只花了半个小时时间测了一下,但是拿来参考还是有说服力的。
可以看出,当发送小包时,tcpreplay的性能较差。发送大包时,三者性能接近。
有点出乎意料的是,通过e1000驱动发包,在64字节小包的时候也只达到不到300Mbps的速度。驱动修改的方式是在预先设置好e1000的4096个发送缓冲区,通过在中断处理函数里设置e1000的发送首尾指针来发包,相信这种方式是软件所能做到的最快的方式了。
如果继续深入测试,可以通过调整控制e1000中断产生的几个参数看能不能达到更高的吞吐率。但也可能e1000发包的上限就是这样了。

PC上最快的发包工具相关推荐

  1. MySQL史上最快逻辑备份工具

    MySQL Shell 8.0.21 增加了一种新的逻辑备份恢复方法,有更快的备份恢复效率,支持zstd实时压缩,支持分块并行导出,load data并行导入,还能备份到OCI的对象存储. util. ...

  2. android 小工具:pc 上用 curl 命令打开手机浏览器,浏览指定网址

    测试 API 时或其它情况经常需要在手机浏览器中输入 url 一长串的 url 输起来真是麻烦 AirDroid 很强大也不用数据线,但有时老断开连接,不是很爽.发到手机 qq 吧还得手动粘贴 所以自 ...

  3. 抖音数据分析工具pc端_用于分析Windows PC上硬盘空间的四个最佳免费工具

    抖音数据分析工具pc端 When your hard drive starts to fill up, you don't have to dig through File Explorer to s ...

  4. (IDM)史上最快的多线程下载工具,绿色稳定版

    应用简介 最快的下载器,没有之一!!!多线程下载文件从而提升下载速度,最大支持32线程,还可以自动嗅探下载网页视频,配合脚本还可以实现百度网盘不限速下载,超级牛逼. Internet Download ...

  5. 在PC上运行安卓(Android)应用程序的4个方法

    我有一部荣耀3C,一般放在宿舍(我随身携带的是一部诺基亚E63,小巧.稳定.待机时间长),在宿舍我就会用它在微信上看公众号里的文章,最近要考驾照也在上面用驾考宝典.最近想在实验室用这两个软件,但又懒得 ...

  6. 免费分享百度快排发包技术+原理解析【SEO内行精品资料】

    百度SEO快排搜索URL参数解析分析 [战神快排独家内行SEO解密] 百度的搜索URL存在着一定的规律和逻辑,下面的链接是我使用百度搜索"战神快排"后得到的链接,下面就来一起分析下 ...

  7. 在Win10 PC上安装Ubuntu 20.04 系统

    在Win10 PC上安装Ubuntu 20.04 系统 本文仅适用于UEFI+GPT类型的PC,有关这方面的知识请自行了解. 引言 为什么需要使用 Linux 系统? 既已看到此文,我相信你一定有需求 ...

  8. mac读取pc硬盘_如何在Windows PC上读取Mac格式化的驱动器

    mac读取pc硬盘 Windows can't normally read Mac-formatted drives, and will offer to erase them instead. Bu ...

  9. win10 安装linux 需要多大空间,在Win10 PC上安装Ubuntu 20.04 系统

    在Win10 PC上安装Ubuntu 20.04 系统 本文仅适用于UEFI+GPT类型的PC,有关这方面的知识请自行了解. 引言 为什么需要使用 Linux 系统? 既已看到此文,我相信你一定有需求 ...

最新文章

  1. 华为荣耀8青春版计算机在哪里,华为荣耀8青春版
  2. WebVie打开woffice文档
  3. pythone 打开文件 一行_【精品资料】用了这么多年单片机的Hex文件不懂?看这篇就够了...
  4. 两个多元正态分布的KL散度、巴氏距离和W距离
  5. 咋样路linux分区,linux下磁盘分区方法详解
  6. java对象内存占用情况分析
  7. Eclipse Debug不能热部署解决
  8. 一幅漫画趣味解读 Linux 内核
  9. 网络安全态势感知(NSSA)----引言
  10. 《王道》数据结构笔记整理2022
  11. html页面计算圆的周长和面积,计算圆的周长和面积之间的差-JavaScript
  12. uniapp使用百度地图
  13. MADlib——基于SQL的数据挖掘解决方案(7)——数据转换之其它转换
  14. 如何让电脑计算机d盘布局,创建MSR分区,解决“由于用户电脑存在一个不支持的用于UEFI固件的硬盘布局,因此系统无法安装”...
  15. iphone4s 关于大于400M的视频无法拷贝的问题
  16. 解决oracle异常ORA-01012: not logged on
  17. 基于web的运动会综合管理系统
  18. Autodesk Alias AutoStudio 2022.0.1 x64
  19. 正点原子DS100拆解全过程-硬件工程师必备
  20. 【C51】基于51单片机的简易频率计(附代码、无需外设、小白简单易上手)

热门文章

  1. 字符串?=字符+\0
  2. 菜鸟数据分析师对数据可视化的理解—完整篇
  3. HDU 1220 正方体问题
  4. .ui文件 c语言,参考ElementUI的文档实现方案,实现自己组件库的说明文档
  5. 关于代码布局(Coding Layout)
  6. toad for oracle 12卡,Toad for Oracle 12.12 - Toad 版本安装指南
  7. python长整型是什么_长整型long-PYTHON
  8. 毕业设计 红外热释电的房间人数计数系统 - 单片机 物联网嵌入式
  9. 基于神经网络的人脸识别,神经网络实现人脸识别
  10. App自动化02-元素定位、显示与隐式等待、常见控件交互方法