如何在Linux中网络测试 Linux netperf性能测试

发布时间 - 2025-09-01 00:00:00    点击率:
netperf需在服务端运行netserver,客户端通过netperf命令测试TCP/UDP吞吐量、延迟等性能,注意开放防火墙端口并监控CPU占用以确保测试准确性。

在Linux系统中进行网络性能测试,netperf 是一个常用且功能强大的工具,主要用于测量网络吞吐量、延迟和连接性能。它通过客户端-服务器模型工作,支持TCP和UDP协议的性能测试。下面介绍如何安装、配置和使用 netperf 进行基本的网络性能测试。

安装 netperf

netperf 通常不在系统默认安装包中,需要手动安装。

  • 在基于 Debian/Ubuntu 的系统上:

sudo apt update && sudo apt install netperf

  • 在基于 RHEL/CentOS/Fedora 的系统上:

sudo yum install netperf(CentOS 7)或 sudo dnf install netperf(Fedora/CentOS 8+)

确保服务器和客户端都安装了 netperf。

启动 netserver 服务

netperf 需要服务端先运行 netserver,等待客户端连接。

在目标服务器上执行:

netserver

默认监听端口为 12865。可使用 -p 参数指定端口,例如:

netserver -p 12866

测试时确保防火墙放行对应端口,如:

sudo firewall-cmd --add-port=12865/tcp(使用 firewalld 时)

使用 netperf 进行性能测试

从客户端执行 netperf 命令连接到服务器,进行不同类型的测试。

  • TCP 吞吐量测试(默认)

netperf -H 服务器IP

例如:netperf -H 192.168.1.100

输出显示带宽(如 MB/s 或 Gb/s)。

  • UDP 吞吐量测试

netperf -H 服务器IP -t UDP_STREAM

查看 UDP 发送能力与丢包情况。

  • 设置测试时长

默认测试10秒,使用 -l 修改:

netperf -H 192.168.1.100 -l 30(测试30秒)

  • 指定传输大小或请求大小

使用 -m 设置发送消息大小,-M 设置接收消息大小(TCP):

netperf -H 192.168.1.100 -m 64K -M 64K

  • 双向吞吐量测试(TCP_MAERTS)

反向测试,从服务器向客户端发送数据:

netperf -H 192.168.1.100 -t TCP_MAERTS

常见问题与注意事项

使用 netperf 时注意以下几点以确保测试准确:

  • 确保服务器端 netserver 已启动,且网络可达。
  • 关闭防火墙或放行 netperf 端口(默认12865)。
  • 测试前确认链路物理状态,避免交换机或网卡瓶颈影响结果。
  • 多次测试取平均值,避免突发波动影响判断。
  • 使用高精度时间源(如 NTP)同步系统时间有助于分析延迟。

netperf 输出结果中的关键指标包括:

  • Throughput:测得的吞吐量,单位通常是 bps 或 B/s。
  • Local % CPURemote % CPU:客户端与服务端的CPU占用,高CPU可能成为瓶颈。

基本上就这些。netperf 虽然命令行操作,但灵活且轻量,适合在服务器间做点对点网络性能评估。掌握基本用法后,可结合脚本实现自动化测试。不复杂但容易忽略防火墙和CPU占用问题。


# linux  # centos  # ubuntu  # 工具  # dnf  # linux系统  # udp  # debian  # 自动化  # 客户端  # 性能测试  # 服务端  # 是一个  # 以确保  # 可达  # 几点  # 主要用于  # 连接到  # 命令行 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 米侠浏览器网页背景异常怎么办 米侠显示修复  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  如何确认建站备案号应放置的具体位置?  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  Laravel中间件起什么作用_Laravel Middleware请求生命周期与自定义详解  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  lovemo网页版地址 lovemo官网手机登录  如何在企业微信快速生成手机电脑官网?  ,怎么在广州志愿者网站注册?  利用python获取某年中每个月的第一天和最后一天  如何在Windows虚拟主机上快速搭建网站?  Laravel怎么连接多个数据库_Laravel多数据库连接配置  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  进行网站优化必须要坚持的四大原则  Laravel如何使用.env文件管理环境变量?(最佳实践)  个人摄影网站制作流程,摄影爱好者都去什么网站?  如何在Ubuntu系统下快速搭建WordPress个人网站?  网站制作软件免费下载安装,有哪些免费下载的软件网站?  大连网站制作公司哪家好一点,大连买房网站哪个好?  油猴 教程,油猴搜脚本为什么会网页无法显示?  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  详解Android中Activity的四大启动模式实验简述  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  Android仿QQ列表左滑删除操作  网站制作企业,网站的banner和导航栏是指什么?  Laravel如何发送系统通知?(Notification渠道示例)  Python文件操作最佳实践_稳定性说明【指导】  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  jQuery 常见小例汇总  高防服务器租用指南:配置选择与快速部署攻略  常州企业网站制作公司,全国继续教育网怎么登录?  高防服务器租用如何选择配置与防御等级?  Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  微信小程序 scroll-view组件实现列表页实例代码  Laravel如何生成URL和重定向?(路由助手函数)  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  Linux网络带宽限制_tc配置实践解析【教程】  如何实现建站之星域名转发设置?  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法  bootstrap日历插件datetimepicker使用方法  Laravel Blade模板引擎语法_Laravel Blade布局继承用法  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面  Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转