测量服务器流量带宽

橘子 发布于 13 天前 45 次阅读


前言

之前换了服务器运营商,就顺便测量了一下公网带宽。这里记录一下测量过程以及使用的工具。

这里测量的拓扑结构非常简单:

  • 公网设备(自己家电脑)到A(旧服务器)和B(新服务器)之间的上下行带宽
  • A(旧服务器)和B(新服务器)之间的上下行带宽

iperf3

安装工具

测量工具自然是现有的,直接安装就行,不用自己写脚本什么的。我之前试了自己写一个测量脚本,后来发现还要考虑到扩容缩容什么的很麻烦,放弃了。

关于这个工具的使用方法,可以参考:iperf3:网络测试工具及测试用例+参数详解 - 知乎

在这里下载工具:iPerf - Download iPerf3 and original iPerf pre-compiled binaries

在ubuntu服务器上可以直接用apt安装:

sudo apt-get install iperf3

开始测量

测量是需要双向操作的,简单来说,步骤分为:

  1. 在接收端开启iperf3服务器;
  2. 在发送端使用iperf3客户端连接到接收端,核心参数是-c
  3. 观察测量结果。

接收端启动的命令很简单,只需要使用参数-s指定以服务端启动并且指定端口即可。以使用12345端口为例:

# 接收端
iperf3 -s -p 12345

接着在发送端启动客户端,需要指定参数-c表示启动客户端,同时指定ip和端口,以及超时时间。比如,我现在希望连接ip地址为127.0.0.1的、端口为12345接收端,测量60秒的连接情况。

# 发送端
iperf3 -c 127.0.0.1 -p 12345 -t 60

测量结果

检测的结果会包括连接时长以及带宽等信息,比如这样:

[ ID] Interval           Transfer     Bitrate
[  5]   0.00-417.00 sec  2.27 GBytes  46.8 Mbits/sec                  receiver

最后还是测了一下各方的效果。不过,测量结果和具体网络环境以及购买的实例息息相关,不是绝对比较依据。

发送者接收者传输速率(Mbits/sec)备注
PC阿里云46.80测量了417秒
PC腾讯云47.40测量了92秒
腾讯云阿里云4.10测量了51秒,丢包率7.69%
阿里云腾讯云96.70测量了62秒,丢包率0.28%

注:其中丢包率是接收端的接收量除以发送端的发送量算出来的。

所以可以看出来腾讯云的出网带宽是被严格限制到4Mbps的,不过是完全独享;阿里云的200Mbps共享不是吹大牛,在一些情况下是真能跑出来百兆带宽。不过我也碰到过阿里云的共享带宽1Mbps都没法保证的情况,共享带宽是这样的。