背景

  • 随着信息安全的越来越重要,公司要求进行数据备份.
  • 部分客户现场交付之前需要进行性能压测,但是因为各种环境问题效果不是很理想.
  • 前段时间疫情严重,经常需要居家办公,出现了很多网络相关的问题.
  • 因为客户签单需要进行POC验证, 经常需要不同了楼层和园区进行大文件copy, 时间不可控.
  • 基于如上的问题, 有时候又无法给对应接口人一个具体的数据,出现了比较难调和的问题.
  • 周天时间简单学习了iperf的工具,发现应该是最对口的工具了, 这里简单总结一下.

网络情况总结

1. 机房内虚拟机之间的速度基本上1GB的全速(低压力情况下单位wibit),但是UDP丢包率高.
2. 机房内到办公区域也是千兆(1G)网络全速(bit),但是应该是整个机房和整个办公园区共享.
如果办公时间,压力可能会很大,不太可能全速.
3. 办公区域内和机房内到阿里云的速度都不是很快,只有不到 12m(bit) 的网络带宽.
阿里服务器应该是有5m的带宽的, 说明公司内为了总出口带宽可用性还是做了很多限制的.
注意,这边网速都是按照 bit 比特位来的, 没有使用bytes 字节标识.

下载

  • iperf工具支持 windows 安卓 linux 不同架构的系统, 直接下载即可.
https://iperf.fr/iperf-download.php
直接上网站下载即可.
我这边下载的文件主要有:
iperf-3.1.3-macos-x86_64.zip
iperf-3.1.3-win64.zip
iperf3-3.1.3-1.fc24.x86_64.rpm
iperf3_3.1.3-1_amd64.deb
iperf3_3.1.3-1_arm64.deb
iperf3_3.9-1_amd64.deb
uwp-iperf3-1.1.5.0-source.zip

安装

  • 区分不同操作系统
Windows的安装,将zip包解压缩然后将exe和cygwin.dll 都放到
c:\windows\system32 就可以使用了.
CentOS的安装可以直接使用 rpm进行
rpm -ivh xxxx.rpm 即可.

简单使用

  • 区分服务端和客户端
服务端的启用
iperf3 -s -D -p 6301
注意 -s 表示是服务器端启用.
-D 表示是后台启动(有可以使用nohup)
-p 指定端口, 如果阿里云上面只开放了部分端口的话.
客户端的使用
iperf3 -c 10.x.x.x -p 6301
注意 -c 指点是客户端 client/server
-p 指代端口.
默认会执行10次
如果加上 -u 的参数 指代使用udp 进行相关操作.
可以加上 -b 的参数指代带宽,查看丢包率和延迟

公司网络简单验证.

  • 机房内 虚拟机到虚拟机
命令为:
iperf3 -c 10.110.xx.xxx -p 6301 -u -b 1000m -t 10
结果为:
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 4] 0.00-10.00 sec 1.15 GBytes 992 Mbits/sec 0.058 ms 3751/9085 (41%)
[ 4] Sent 9085 datagrams
  • 机房内虚拟机到阿里云服务器
命令为:
iperf3 -c 121.199.xx.xxx -p 6300
结果为:
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 14.4 MBytes 12.1 Mbits/sec 2 sender
[ 4] 0.00-10.00 sec 11.9 MBytes 9.96 Mbits/sec receiver

公司网络简单验证.

  • 办公区域到机房
命令为:
iperf3 -c 10.110.xx.xxx -p 6301
结果为:
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 1.06 GBytes 908 Mbits/sec 171 sender
[ 4] 0.00-10.00 sec 1.05 GBytes 905 Mbits/sec receiver
  • 办公区域到阿里云
命令为:
iperf3 -c 121.199.xx.xxx -p 6300
结果为:
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 14.6 MBytes 12.3 Mbits/sec 0 sender
[ 4] 0.00-10.00 sec 11.4 MBytes 9.56 Mbits/sec receiver

公司网络简单验证.

  • 公司无线对阿里云
命令为:
iperf3 -c 121.199.xx.xxx -p 6300
结果为:
Connecting to host 121.199.13.183, port 6300
[ 4] local 10.72.149.211 port 1038 connected to 121.199.13.183 port 6300
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.01 sec 256 KBytes 2.07 Mbits/sec
[ 4] 1.01-2.01 sec 128 KBytes 1.05 Mbits/sec
[ 4] 2.01-3.01 sec 256 KBytes 2.10 Mbits/sec
[ 4] 3.01-4.01 sec 128 KBytes 1.05 Mbits/sec
[ 4] 4.01-5.01 sec 128 KBytes 1.05 Mbits/sec
[ 4] 5.01-6.01 sec 0.00 Bytes 0.00 bits/sec
[ 4] 6.01-7.01 sec 256 KBytes 2.10 Mbits/sec
[ 4] 7.01-8.01 sec 128 KBytes 1.05 Mbits/sec
[ 4] 8.01-9.01 sec 0.00 Bytes 0.00 bits/sec
[ 4] 9.01-10.01 sec 128 KBytes 1.05 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.01 sec 1.38 MBytes 1.15 Mbits/sec sender
[ 4] 0.00-10.01 sec 1.19 MBytes 995 Kbits/sec receiver

公司网络简单验证.

  • 公司无线对机房
Connecting to host 10.110.83.113, port 6301
[ 4] local 10.72.149.211 port 1185 connected to 10.110.83.113 port 6301
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.01 sec 1.50 MBytes 12.5 Mbits/sec
[ 4] 1.01-2.00 sec 1.00 MBytes 8.46 Mbits/sec
[ 4] 2.00-3.02 sec 1.38 MBytes 11.4 Mbits/sec
[ 4] 3.02-4.01 sec 1.00 MBytes 8.40 Mbits/sec
[ 4] 4.01-5.01 sec 1.00 MBytes 8.41 Mbits/sec
[ 4] 5.01-6.01 sec 1.38 MBytes 11.6 Mbits/sec
[ 4] 6.01-7.01 sec 512 KBytes 4.20 Mbits/sec
[ 4] 7.01-8.01 sec 1.75 MBytes 14.7 Mbits/sec
[ 4] 8.01-9.00 sec 1.00 MBytes 8.40 Mbits/sec
[ 4] 9.00-10.00 sec 1.00 MBytes 8.41 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.00 sec 11.5 MBytes 9.64 Mbits/sec sender
[ 4] 0.00-10.00 sec 11.3 MBytes 9.48 Mbits/sec receiver

其他

阿里云速度的验证
wget https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
cmod 777 speedtest.py
./speedtest.py
结果为:
Retrieving speedtest.net configuration...
Testing from Hangzhou Alibaba Advertising Co.,Ltd. (121.199.13.183)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by China Unicom (Nanjing) [234.90 km]: 23.776 ms
Testing download speed................................................................................
Download: 213.83 Mbit/s
Testing upload speed................................................................................................
Upload: 234.29 Mbit/s

iperf的学习与部分网络状况的简要总结的更多相关文章

  1. python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容

    python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容 Beautiful Soup 是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖 ...

  2. python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息,抓取政府网新闻内容

    python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI,采用Python语言编写 ...

  3. Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3

    Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3 http://blog.csdn.net/sunbow0 第二章Deep ...

  4. linux的视频学习4(网络配置和rpm)

    linux的视频学习: 1.网络配置的三种方式的介绍. 第一种方式: setup 命令--选择network configuration-->配置固定ip(tab键)和自动分配IP(长空格) / ...

  5. python学习之路网络编程篇(第四篇)

    python学习之路网络编程篇(第四篇) 内容待补充

  6. 学习TensorFlow,保存学习到的网络结构参数并调用

    在深度学习中,不管使用那种学习框架,我们会遇到一个很重要的问题,那就是在训练完之后,如何存储学习到的深度网络的参数?在测试时,如何调用这些网络参数?针对这两个问题,本篇博文主要探索TensorFlow ...

  7. Android开发学习之路--网络编程之xml、json

    一般网络数据通过http来get,post,那么其中的数据不可能杂乱无章,比如我要post一段数据,肯定是要有一定的格式,协议的.常用的就是xml和json了.在此先要搭建个简单的服务器吧,首先呢下载 ...

  8. 学习笔记-ResNet网络

    ResNet网络 ResNet原理和实现 总结 一.ResNet原理和实现 神经网络第一次出现在1998年,当时用5层的全连接网络LetNet实现了手写数字识别,现在这个模型已经是神经网络界的“hel ...

  9. Android中获得网络状况的实现

    要得知网络状况就是要用networkinfo类这个类名还是把这个类的意思表达的很清晰的,network是网络,info是状况.判断是否有网用到了这个类的IsAvailable方法,这个方法返回的是这个 ...

  10. 深度学习图像分割——U-net网络

    写在前面: 一直没有整理的习惯,导致很多东西会有所遗忘,遗漏.借着这个机会,养成一个习惯. 对现有东西做一个整理.记录,对新事物去探索.分享. 因此博客主要内容为我做过的,所学的整理记录以及新的算法. ...

随机推荐

  1. 华为云Astro的前世今生:用7年时间革新低代码开发观念

    摘要:深扒华为云Astro低代码平台的前世今生,其成功之路显然是一条"个性"之路. 本文分享自华为云社区<华为云Astro的前世今生:用7年时间革新低代码开发观念>,作 ...

  2. 实践GoF的设计模式:单例模式

    摘要:单例模式虽然简单易用,但也是最容易被滥用的设计模式.它并不是"银弹",在实际使用时,还需根据具体的业务场景谨慎使用. 本文分享自华为云社区<[Go实现]实践GoF的23 ...

  3. 带你掌握不同平台下,探索JDK源码所需的native方法

    摘要:要探索JDK的核心底层源码,那必须掌握native用法.文章中会以"获取系统的默认时区"为例,介绍说明如何查看native对应方法的源码. 本文分享自华为云社区<要探索 ...

  4. 总结vue3 的一些知识点:MySQL NULL 值处理

    MySQL NULL 值处理 我们已经知道 MySQL 使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时,该命令可能就无法正常工作. ...

  5. 【奥运会】yahoo的这个骚操作令人费解。。。

    昨天在朋友圈发了一张截图,貌似很多朋友没有 get 到点,我也实在搞不懂 Yahoo 的这波操作. 默认排序是按照金牌总数,那必然是美国第一名了.不过习惯上不应该是按照金牌总数进行排名吗?毕竟金银铜牌 ...

  6. C++ Lambda 快速上手

    Lambda 听起来非常的牛逼,很容易就会联想到函数式编程或者 Lambda 演算这样的东西.但是在 C++里,没那么复杂,就把它当匿名函数用就好了 HelloWorld 对于降序排序,我们可以这样写 ...

  7. 汇编 | mov. add. sub指令

    Description 前面我们用到了mov, add. sub指令,它们都带有两个操作对象.到现在,我们知道,mov指令可以有以下几种形式. mov 寄存器,数据 比如: mov ax,8 mov ...

  8. AtCoder Beginner Contest 176 (ABC水题,D题01BFS,E数组处理)

    补题链接:Here A - Takoyaki 很容易看出 \(\frac{N + X - 1}{X} \times T\) B - Multiple of 9 给定一个很大的整数,问其是否是 \(9\ ...

  9. KMP 复习笔记

    KMP 学习(复习)笔记 KMP(Knuth-Morris-Pratt)是算法竞赛中常用的字符串匹配算法之一,它可以有效地利用失配信息来使得匹配全过程中不回溯,从而在线性时间内完成匹配. 本文已有前置 ...

  10. Serverless Devs 重大更新,基于 Serverless 架构的 CI/CD 框架:Serverless-cd

    近日,Serverless 开发者平台 Serverless Devs 重磅发布基于 Serverless 架构的轻量级 CI/CD 框架--Serverless-cd.Serverless-cd 是 ...