iperf的学习与部分网络状况的简要总结
背景
- 随着信息安全的越来越重要,公司要求进行数据备份.
- 部分客户现场交付之前需要进行性能压测,但是因为各种环境问题效果不是很理想.
- 前段时间疫情严重,经常需要居家办公,出现了很多网络相关的问题.
- 因为客户签单需要进行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的学习与部分网络状况的简要总结的更多相关文章
- python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容
python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容 Beautiful Soup 是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖 ...
- python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息,抓取政府网新闻内容
python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI,采用Python语言编写 ...
- Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3
Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3 http://blog.csdn.net/sunbow0 第二章Deep ...
- linux的视频学习4(网络配置和rpm)
linux的视频学习: 1.网络配置的三种方式的介绍. 第一种方式: setup 命令--选择network configuration-->配置固定ip(tab键)和自动分配IP(长空格) / ...
- python学习之路网络编程篇(第四篇)
python学习之路网络编程篇(第四篇) 内容待补充
- 学习TensorFlow,保存学习到的网络结构参数并调用
在深度学习中,不管使用那种学习框架,我们会遇到一个很重要的问题,那就是在训练完之后,如何存储学习到的深度网络的参数?在测试时,如何调用这些网络参数?针对这两个问题,本篇博文主要探索TensorFlow ...
- Android开发学习之路--网络编程之xml、json
一般网络数据通过http来get,post,那么其中的数据不可能杂乱无章,比如我要post一段数据,肯定是要有一定的格式,协议的.常用的就是xml和json了.在此先要搭建个简单的服务器吧,首先呢下载 ...
- 学习笔记-ResNet网络
ResNet网络 ResNet原理和实现 总结 一.ResNet原理和实现 神经网络第一次出现在1998年,当时用5层的全连接网络LetNet实现了手写数字识别,现在这个模型已经是神经网络界的“hel ...
- Android中获得网络状况的实现
要得知网络状况就是要用networkinfo类这个类名还是把这个类的意思表达的很清晰的,network是网络,info是状况.判断是否有网用到了这个类的IsAvailable方法,这个方法返回的是这个 ...
- 深度学习图像分割——U-net网络
写在前面: 一直没有整理的习惯,导致很多东西会有所遗忘,遗漏.借着这个机会,养成一个习惯. 对现有东西做一个整理.记录,对新事物去探索.分享. 因此博客主要内容为我做过的,所学的整理记录以及新的算法. ...
随机推荐
- 华为云Astro的前世今生:用7年时间革新低代码开发观念
摘要:深扒华为云Astro低代码平台的前世今生,其成功之路显然是一条"个性"之路. 本文分享自华为云社区<华为云Astro的前世今生:用7年时间革新低代码开发观念>,作 ...
- 实践GoF的设计模式:单例模式
摘要:单例模式虽然简单易用,但也是最容易被滥用的设计模式.它并不是"银弹",在实际使用时,还需根据具体的业务场景谨慎使用. 本文分享自华为云社区<[Go实现]实践GoF的23 ...
- 带你掌握不同平台下,探索JDK源码所需的native方法
摘要:要探索JDK的核心底层源码,那必须掌握native用法.文章中会以"获取系统的默认时区"为例,介绍说明如何查看native对应方法的源码. 本文分享自华为云社区<要探索 ...
- 总结vue3 的一些知识点:MySQL NULL 值处理
MySQL NULL 值处理 我们已经知道 MySQL 使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时,该命令可能就无法正常工作. ...
- 【奥运会】yahoo的这个骚操作令人费解。。。
昨天在朋友圈发了一张截图,貌似很多朋友没有 get 到点,我也实在搞不懂 Yahoo 的这波操作. 默认排序是按照金牌总数,那必然是美国第一名了.不过习惯上不应该是按照金牌总数进行排名吗?毕竟金银铜牌 ...
- C++ Lambda 快速上手
Lambda 听起来非常的牛逼,很容易就会联想到函数式编程或者 Lambda 演算这样的东西.但是在 C++里,没那么复杂,就把它当匿名函数用就好了 HelloWorld 对于降序排序,我们可以这样写 ...
- 汇编 | mov. add. sub指令
Description 前面我们用到了mov, add. sub指令,它们都带有两个操作对象.到现在,我们知道,mov指令可以有以下几种形式. mov 寄存器,数据 比如: mov ax,8 mov ...
- AtCoder Beginner Contest 176 (ABC水题,D题01BFS,E数组处理)
补题链接:Here A - Takoyaki 很容易看出 \(\frac{N + X - 1}{X} \times T\) B - Multiple of 9 给定一个很大的整数,问其是否是 \(9\ ...
- KMP 复习笔记
KMP 学习(复习)笔记 KMP(Knuth-Morris-Pratt)是算法竞赛中常用的字符串匹配算法之一,它可以有效地利用失配信息来使得匹配全过程中不回溯,从而在线性时间内完成匹配. 本文已有前置 ...
- Serverless Devs 重大更新,基于 Serverless 架构的 CI/CD 框架:Serverless-cd
近日,Serverless 开发者平台 Serverless Devs 重磅发布基于 Serverless 架构的轻量级 CI/CD 框架--Serverless-cd.Serverless-cd 是 ...