前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >利用iperf3测试两个节点之间的网络性能

利用iperf3测试两个节点之间的网络性能

作者头像
IT不难
发布2023-11-17 14:08:35
7380
发布2023-11-17 14:08:35
举报
文章被收录于专栏:IT不难技术家园IT不难技术家园

前言

iperf3 是一个 TCP/IP 和 UDP/IP 的性能测量工具,能够提供网络吞吐率信息,以及震动、丢包率、最大段和最大传输单元大小等统计信息;从而能够帮助我们测试网络性能,定位网络瓶颈。iperf是开源的。iperf 不能够测试时延。

网络性能参数(服务质量QOS)

在iperf中,测试需要发送大量的包,计算出来的抖动值就是连续发送时延差值的平均值。

软件安装

代码语言:javascript
复制
#安装
yum install -y iperf3

#简单回测
#启动服务端
iperf3 -s

#客户端测试
iperf3 -c 127.0.0.1
l9z9p6cw.png
l9z9p6cw.png

参数说明

-s 以server模式启动 -c 以client模式启动

-f [k|m|K|M] 分别表示以Kbits, Mbits, KBytes, MBytes显示报告 -i sec 以秒为单位显示报告间隔 -l 缓冲区大小,默认是8KB -m 显示tcp最大mtu值 -o 将报告和错误信息输出到文件 -p 指定服务器端使用的端口或客户端所连接的端口 -u 使用udp协议 -w 指定TCP窗口大小,默认是8KB

网络带宽为40Mbit/s,回环路径消耗时间是2ms,那么TCP的窗口大小不小于40Mbit/s×2ms = 80kbit = 10Kbytes

-D 以服务方式运行ipserf -R 停止iperf服务,针对-D

-d 同时进行双向传输测试 -n 指定传输的字节数 -r 单独进行双向传输测试 -b 指定发送带宽,默认是1Mbit/s -t 测试时间,默认10秒,eg:iperf3 -c 222.35.11.23 -t 5 -F 指定需要传输的文件 -T 指定ttl值

测试用例

服务端

代码语言:javascript
复制
# 使用udp协议
iperf3 -s -u

# 默认tcp,以服务方式启动
iperf3 -s -D

客户端

代码语言:javascript
复制
# 每秒输出一次结果, 采用udp, 带宽限制为10M 
iperf3 -c ip -u -i 1 -t 10 -b 10M  

#  反转server和client
iperf3 -c 163.177.76.26  -b 100M  -i 1 -t 5 -R

# 单线程传输1GB数据,每秒输出1次结果
iperf3 -c ip -n  -n 1G  -i 1

# 100M,单线程
iperf3 -c ip -n 100M  -i 1

# 100M,双线程
iperf3 -c ip -n 100M  -i 1 - P2

拓展

字节单位换算

  1. 1Byte = 8 bit
  2. ascii:英文字母占1个字节,中文汉字2个字节
  3. utf-8:英文字母占1个字节,中文汉字3个字节
  4. Unicode: 英文字母占2个字节,中文汉字2个字节

网络数据包

la6eyrbg.png
la6eyrbg.png
la6f0i21.png
la6f0i21.png

MTU

  • TCP/IP协议涉及四层:链路层,网络层,传输层,应用层
  • 以太网的数据帧在链路层
  • IP包在网络层
  • TCP或UDP在传输层
  • 关系:数据帧{IP包{TCP或UDP包{Data}}}
  1. 链路层MTU通常为1500
  2. 网络层IP首部占用20字节,MTU变为1480
  3. 传输层UDP占用8字节,MTU为1480-8=1472;TCP占用20字节,MTU为1480-20=1460。
la6ev1as.png
la6ev1as.png
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022年11月02日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
    • 网络性能参数(服务质量QOS)
    • 软件安装
    • 参数说明
    • 测试用例
      • 服务端
        • 客户端
        • 拓展
          • 字节单位换算
            • 网络数据包
              • MTU
              相关产品与服务
              腾讯云服务器利旧
              云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档