linux 测试网络速率
1. ethtool
ethtool是很强大的查询网卡(嵌入式称为phy芯片)配置的工具,几乎phy芯片芯片手册寄存器能配置的选项,ethtool都能查询到;嵌入式调试phy芯片的时候经常用到该命令;最简单的指令如下
ethtool eth0(要查看速率的网卡)
#打印网卡信息
Settings for eth0:
Supported ports: [ TP AUI BNC MII FIBRE ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: MII
PHYAD: 1
Transceiver: external
Auto-negotiation: on
Current message level: 0x00000007 (7)
Link detected: yes
这段信息已经包含了phy的很多配置信息:
phy芯片支持的端口,支持的链接模式;
网络自适配是否打开,工作模式(全双工,半双工),速率等信息;
这里的Speed: 1000Mb/s只能说明phy芯片最大速率能达到1000Mb/s;实际速率还需要进行测试;
phy芯片一般分为10base,100base,1000base;Speed: 1000Mb/s能说明网卡处于1000base模式,实际速率相差不多;
2. iperf
实测网络速率的工具,分为客户端和服务端,两端进行数据发送实时计算网络速率并打印:
# 服务器端
$ iperf -s
# 客户端
$ iperf -c <server_ip>
打印信息:
/mnt/zhangliming/iperf # ./iperf3 -s
-----------------------------------------------------------
Server listening on 5201 (test #1)
-----------------------------------------------------------
Accepted connection from 192.168.0.221, port 53640
[ 5] local 192.168.0.221 port 5201 connected to 192.168.0.221 port 53642
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 868 MBytes 7.28 Gbits/sec
[ 5] 1.00-2.00 sec 904 MBytes 7.58 Gbits/sec
[ 5] 2.00-3.00 sec 923 MBytes 7.74 Gbits/sec
[ 5] 3.00-4.00 sec 883 MBytes 7.41 Gbits/sec
[ 5] 4.00-5.00 sec 915 MBytes 7.68 Gbits/sec
[ 5] 5.00-6.00 sec 929 MBytes 7.79 Gbits/sec
[ 5] 6.00-7.00 sec 907 MBytes 7.61 Gbits/sec
[ 5] 7.00-8.00 sec 908 MBytes 7.62 Gbits/sec
[ 5] 8.00-9.00 sec 938 MBytes 7.86 Gbits/sec
[ 5] 9.00-10.00 sec 929 MBytes 7.80 Gbits/sec
[ 5] 10.00-10.00 sec 768 KBytes 6.68 Gbits/sec Bitrate字段就是现在的实际速率; Transfer:在某时间间隔内的传输的数据量;上面打印可知,时间间隔为1s;所以和Bitrate一样代表传输速率
各字段含义如下:
ID:连接的唯一标识符或ID号。
Interval:报告状态或统计信息的时间间隔。
Transfer:在报告的时间间隔内传输的数据量。
Bitrate:报告的时间间隔内的传输速率(以位/秒为单位)。
Retr:在报告的时间间隔内发生的重新传输次数。
Cwnd:当前拥塞窗口的大小(单位未定义,通常是报告的时间间隔内的平均值)。
注意:iperf在文件系统中可能不存在该命令,需要下载源码进行移植!
3.程序测试
当然也可以自己写一个网络程序来对网络速率进行计算;计算出1s内接收多少Bytes;就是当前网络的速率;和iperf的原理一样;
linux 测试网络速率的更多相关文章
- linux 测试网络url命令
1.curl 地址 或者 wget url地址 [hxxxx@iZ23vy2msooZ ~]$ curl www.baidu.com<!DOCTYPE html><!--STATUS ...
- linux 测试网络延迟
1.在A服务器上运行qperf &作为服务器节点,由其他服务器来连接测试,默认监听tcp的19765端口.
- Linux网络性能评估工具iperf 、CHARIOT测试网络吞吐量
网络性能评估主要是监测网络带宽的使用率,将网络带宽利用最大化是保证网络性能的基础,但是由于网络设计不合理.网络存在安全漏洞等原因,都会导致网络带宽利用率不高.要找到网络带宽利用率不高的原因,就需要对网 ...
- Linux系统网络性能实例分析
由于TCP/IP是使用最普遍的Internet协议,下面只集中讨论TCP/IP 栈和以太网(Ethernet).术语 LinuxTCP/IP栈和 Linux网络栈可互换使用,因为 TCP/IP栈是 L ...
- linux测试带宽命令,Linux服务器网络带宽测试iperf
linux测试带宽命令,Linux服务器网络带宽测试iperf必须先运行iperf serveriperf -s -i 2客户端iperf -c 服务端IP地址 iperf原理解析 iperf工具可以 ...
- Linux测试环境搭建的学习建议
随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起.这里介绍学习Linux测试环境搭建的一些建议. 一.Linux测试环境搭建从基 ...
- Linux 基础网络设置
一.查看以及测试网络 查看及测试网络配置是管理Linux网络服务的第一步,本节将学习Linux系统中的网络查看以及测试命令.其中讲解的大多数命令以普通用户权限就可以完成操作,但是普通用户在执行&quo ...
- 安装Kali Linux操作系统Kali Linux无线网络渗透
安装Kali Linux操作系统Kali Linux无线网络渗透 Kali Linux是一个基于Debian的Linux发行版,它的前身是BackTrack Linux发行版.在该操作系统中,自带了大 ...
- Android IOS WebRTC 音视频开发总结(五六)-- 如何测试网络性能?
本文主要介绍如何测试网络性能,文章来自博客园RTC.Blacker,欢迎关注微信公众号blacker,更多详见www.rtc.help 网络性能直接决定了视频通话效果,比如qq,很多时候我们我们觉得通 ...
- linux下网络排错与查看
基本的故障排除错误 故障的排除一定是先简单后复杂的,有的人把上述的文件反复配置,就是上不了网,一直都认为是系统出了故障,想重装机子.结果发现原来是网线压根就没插上. 排错要慢慢的按部就班的来: (1) ...
随机推荐
- STM32F429 实测基本数据类型占用空间
实测代码 1 void CalculateDataTypeSize(void) 2 { 3 printf("sizeof(char} = %u\r\n", sizeof(char) ...
- CSS - 滤镜的妙用 - 制作炫彩圆环(外加动画)
效果图如下: 话不多说,上代码: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...
- [转帖]Linux—编写shell脚本操作数据库执行sql
Linux-编写shell脚本操作数据库执行sql Hughman关注IP属地: 北京 0.0762020.03.20 09:02:13字数 295阅读 1,036 修改数据库数据 在升级应用时, ...
- [转帖]CoreDump设置方式
https://www.jianshu.com/p/f5c3134072d2 本文讲述利用coredump调试时,对coredump信息相关的设置方式. 设置core文件大小 列出所有资源的限制 #u ...
- [转帖] GC耗时高,原因竟是服务流量小?
原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介# 最近,我们系统配置了GC耗时的监控,但配置上之后,系统会偶尔出现GC耗时大于1s的报警,排查花了一些力气,故 ...
- [转贴]使用dbstart 和dbshut 脚本来自动化启动和关闭数据库
使用dbstart 和dbshut 脚本来自动化启动和关闭数据库 https://www.cnblogs.com/snowers/p/3285281.htmldbshut 和 dbstart 使用db ...
- vue中$children的理解
官网介绍 $children $children 获取当前实例的直接子组件 .需要注意 $children 并不保证顺序,也不是响应式的.[特别重要] 如果你发现自己正在尝试使用 $children ...
- 玩一玩 VictoriaLogs
作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 下载 see: https://github.com/Vi ...
- 【Mysql】复合主键的索引
复合主键在where中使用查询的时候到底走不走索引呢?例如下表: create table index_test ( a int not null, b int not null, c int not ...
- 机器学习算法(三):基于horse-colic数据的KNN近邻(k-nearest neighbors)预测分类
机器学习算法(三):基于horse-colic数据的KNN近邻(k-nearest neighbors)预测分类 项目链接参考:https://www.heywhale.com/home/column ...