netperf网卡测速ubuntu linux 环境下测硬件网卡速度

简介: netperf网卡测速ubuntu linux 环境下测硬件网卡速度

ubuntu 网卡网速测试bondnetperf测试优化tcp


一、测试环境

1.用千兆网线把server和client的机器直接连接在一起;

2.关闭两台机器的iptables;

3.server端执行netserver,client端执行


实例

测两台已经做好bond4的x520网卡的速度

netperf -P 0 -v 0 -H $ip -i 10,2 -I 99,10 -t -- -m 64 -s 32768 -S 32768(其中$ip为server端ip)。

二、优化前

测试3次平均分为833.41分。

三、优化后

在server端/etc/sysctl.conf添加一行

 net.ipv4.tcp_adv_win_scale=2

执行sysctl -p使其生效后再进行测试。


测试3次平均分为940.53分。


在tcp连接中,对于接收端的读缓存而言,接收到一个来自对端的tcp报文时,会使读缓存增加;当接收端的进程读取tcp流时,会使读缓存减少。netperf测试过程中server端接收tcp报文的速率受限于读缓存中实际存放tcp报文缓冲区的大小,这是因为server端进程读取tcp流的速率小于server端接收tcp报文的速率,而这会导致缓冲区逐步被占满。当缓冲区达到上限后,则不会再接收新的报文,进而限制接收tcp报文的最大速率。由此分析将net.ipv4.tcp_adv_win_scale由1改为2后分数的提升,改为2后相当于接收端读缓存实际用来存放tcp报文的缓冲区增加,从而提升接收tcp报文的速率。这与增大测试命令中-s、-S值的效果相同,而测试发现增大-s、-S的值确实会提升测试分数。


下面是测试截图

装包netperf

安装后查看自己的速度

下面开始测速

注:两台都需要装包,netperf 一台为服务端,一台为客户端

Server 端开启netserver 服务
Client 端根据对应的端口进行netperf测试
服务端:netserver -p 18887
客户端:netperf -H 10.22.11.84 -l 10 -p 18887  (目标IP 10秒测速)
目录
相关文章
|
2月前
|
Ubuntu Linux Shell
(已解决)Linux环境—bash: wget: command not found; Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
(已成功解决)Linux环境报错—bash: wget: command not found;常见Linux发行版本,Linux中yum、rpm、apt-get、wget的区别;Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
464 68
(已解决)Linux环境—bash: wget: command not found; Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
|
2月前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
1月前
|
Ubuntu Linux 开发者
Ubuntu20.04搭建嵌入式linux网络加载内核、设备树和根文件系统
使用上述U-Boot命令配置并启动嵌入式设备。如果配置正确,设备将通过TFTP加载内核和设备树,并通过NFS挂载根文件系统。
97 15
|
2月前
|
JSON Ubuntu 开发者
ubuntu 22安装lua环境&&编译lua cjson模块
通过上述步骤,可以在 Ubuntu 22.04 系统上成功安装 Lua 环境,并使用 LuaRocks 或手动编译的方式安装 lua-cjson 模块。本文详细介绍了每一步的命令和操作,确保每一步都能顺利完成,适合需要在 Ubuntu 系统上配置 Lua 开发环境的开发者参考和使用。
179 13
|
3月前
|
存储 缓存 Ubuntu
Ubuntu Linux目录结构
理解Ubuntu Linux的目录结构对系统管理、维护和故障排除至关重要。每个目录都有其特定的用途和存放内容,通过了解这些目录,可以更高效地管理系统文件,确保系统的稳定运行。希望本文对你深入理解Ubuntu的目录结构有所帮助。
100 1
|
3月前
|
Linux UED iOS开发
|
4月前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
864 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
3月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
106 4
|
3月前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
250 3
|
3月前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
130 3