828华为云征文 | Flexus X 实例服务器网络性能深度评测
引言
随着互联网应用的快速发展,网络带宽和性能对云服务器的表现至关重要。在不同的云服务平台上,即便配置相同的带宽,实际的网络表现也可能有所差异。因此,了解并测试服务器的网络性能变得尤为重要。本文将以华为云X实例服务器为例,通过配置3M的带宽,使用 `iperf3` 工具进行测试,详细评估其网络传输性能。
最近华为云828 B2B企业节正在举办,Flexus X实例的促销也非常给力,大家可以去看看。
1 概述
1.1 网络性能的重要性
在网络传输过程中,带宽决定了数据传输的速率,而延迟、抖动和丢包率则影响了传输的稳定性和可靠性。特别是在数据传输量较大或者网络要求较高的应用场景中,带宽和稳定性至关重要。通过对服务器网络性能的评测,可以帮助开发者选择最合适的云服务,并优化应用部署。
1.2 iperf3 工具的特点
`iperf3` 是一款广泛用于网络性能测试的开源工具,支持 TCP 和 UDP 协议的带宽测试。它能够模拟不同的网络负载,生成详细的网络传输数据,包括带宽、延迟、抖动和丢包率等指标。与其他工具相比,`iperf3` 提供了更灵活的测试选项,可以精准控制测试参数。
1.3 本文目标
本文旨在通过 `iperf3` 工具对华为云X实例服务器的网络性能进行评测,尤其是在 3M 带宽限制下的表现。具体包括 TCP 和 UDP 模式下的带宽测试、延迟评估以及高并发测试,帮助读者了解在不同条件下该云服务器的网络表现。
2. 测试环境配置
2.1 X实例服务器配置
CPU:4 核
内存:12GB
带宽:3M
硬盘:100G
操作系统:Huawei Cloud EulerOS 2.0 标准版 64位
2.2 网络环境
该实例的网络环境是通过公网访问,并限制为 3M 的带宽。在公网中进行测试,可以较好地模拟真实用户在互联网中的访问场景。网络延迟和带宽受限将为我们测试该实例在真实场景中的表现提供参考。
3 iperf3 安装
3.1 服务端安装步骤
`iperf3` 工具支持多种操作系统,本文选择在 Huawei Cloud EulerOS系统上进行测试。以下是安装步骤:
安装 iperf3
sudo yum install iperf3 -y
检查安装
安装完成后,可以通过以下命令确认 `iperf3` 是否成功安装:
iperf3 -v
3.2 客户端(windows)安装步骤
打开Iperf官方下载网页:https://iperf.fr/iperf-download.php,
选择最新版本的iperf3版本,下载
下载后,解压,会生成4个文件。
将4个文件拷贝到c:/windows目录下
在cmd命令行中,使用iperf3 -v查看是否安装成功。
3.3 注意事项
Iperf3安装后,默认端口是5201,如果客户端通过iperf3连接服务器端,需要服务器放开5201端口。默认情况下,这个端口是没有开放的。
需要在服务器的安全组中进行设置,入站规则中放开5201端口。
4. 测试方法与命令详解
为了获得全面的测试结果,本文将进行 TCP 和 UDP 模式下的单向、双向带宽测试,以及多并发连接和延迟测试。
4.1 iperf3 的基本用法
`iperf3` 的使用分为服务器端和客户端。服务器端负责监听指定端口并等待客户端连接,客户端则负责向服务器端发起测试。以下是基本的命令:
- 启动服务器端:
iperf3 -s
- 启动客户端进行测试:
iperf3 -c [服务器IP地址]
4.2 主要参数及说明
Client/Server: # 客户端和服务端公有的参数
指定端口号,默认为5201
-p, --port # server port to listen on/connect to
回显报告的间隔时间
-i, --interval # seconds between periodic bandwidth reports
显示帮助菜单
-h, --help print this message and quit
显示版本
-v, --version print version information and quit
Server specific: #服务端私有参数
指定以服务端运行
-s, --server run in server mode
Client specific: #客户端私有参数
带宽参数,单位:字节每秒:KMG,为2的n次方,比如1K=1024,;设置为0代表无限制,此参数UDP默认1M/s,TCP无限制
-b, --bandwidth #[KMG][/#] target bandwidth in bits/sec (0 for unlimited)
(default 1 Mbit/sec for UDP, unlimited for TCP)
(optional slash and packet count for burst mode)
指定以客户端运行,后面要带服务端的IP地址
-c, --client <host> run in client mode, connecting to <host>
udp模式,不带-u默认为tcp模式
-u, --udp use UDP rather than TCP
指定测试时间,不带参数默认测试10s
-t, --time # time in seconds to transmit for (default 10 secs)
翻转测试,这是iperf3比iperf2方便的主要亮点,iperf2不支持此功能,无法使用
-R, --reverse reverse the test (client receives, server sends)
tcp窗口大小,默认无上限,可以不设此参数,作为udp模式测试时也不需要此参数 ,单位:KM,1K=1024
-w, --window #[KMG] set window size / socket buffer size
5. 测试实施过程
5.1 单向 TCP 带宽测试
为了测试从客户端到服务器的单向 TCP 带宽,我们首先在华为云X实例上启动服务器模式:
iperf3 -s
然后在另一台测试设备上运行以下命令来启动客户端并测试带宽:
iperf3 -c [华为云X实例IP地址] -t 30
测试结果如下所示
此测试结果显示,带宽接近 3M 的上限,表明在 3M 带宽下,服务器能够有效传输数据。
5.2 双向带宽测试
为了更全面地评估服务器的网络性能,我们使用双向带宽测试,同时测量上传和下载带宽。命令如下:
iperf3 -c [华为云X实例IP地址] --bidir -t 30
测试结果如下所示
测试结果表明,双向带宽的总和接近 6M,表明服务器在双向传输时能够充分利用带宽。
5.3 并发连接数测试
为了测试在并发连接场景下的表现,我们将并发连接数设置为 5:
iperf3 -c [华为云X实例IP地址] -P 5 -t 3
测试结果如下所示
测试结果显示,带宽总量接近 3M,但每个连接的带宽有所下降,这表明在有限带宽下并发连接的总带宽受到限制。
6. 测试结果与分析
6.1 各项测试结果展示
- - 单向 TCP 带宽测试:在 3M 带宽下,实际测得带宽接近 2.9-3M,带宽利用率较高。
- - 双向带宽测试:上传和下载带宽各接近 3M,整体表现良好。
- - 并发连接测试:并发连接数增加后,每个连接的带宽有所下降,但总带宽保持稳定。
6.2 结果分析
在 3M 带宽限制下,华为云X实例的 TCP传输性能表现较为稳定。尤其是在双向带宽和高并发场景下,服务器能够充分利用可用带宽,且抖动和丢包率较低,表现出良好的网络调度和资源管理能力。
7. 结论
通过本次测试,我们可以看出,华为云X实例在 3M 带宽限制下表现出了较好的网络性能。`iperf3` 工具的使用帮助我们详细评估了服务器在不同场景下的带宽、延迟和抖动表现,为用户在选择云服务器和优化应用提供了重要参考。
基于本次测试结果,以下是针对 3M 带宽服务器的优化建议:
- 合理选择协议:对于要求高带宽和稳定性的应用,推荐使用 TCP 协议,而对实时性要求较高的应用(如视频流),可以选择 UDP 协议,并进行适当的网络优化。
- 调整并发数:对于高并发场景,适当控制并发连接数,以避免带宽的过度消耗和资源争夺。
通过定期进行网络性能评测,可以帮助用户进一步优化网络配置,提升整体性能。
相关文章:

828华为云征文 | Flexus X 实例服务器网络性能深度评测
引言 随着互联网应用的快速发展,网络带宽和性能对云服务器的表现至关重要。在不同的云服务平台上,即便配置相同的带宽,实际的网络表现也可能有所差异。因此,了解并测试服务器的网络性能变得尤为重要。本文将以华为云X实例服务器为…...

STL —heap算法源码刨析 make_heap、push_heap、pop_heap、sort_heap操作分析
STL —heap算法源码刨析 heap算法概述push_heap 插入元素pop_heap 取出根节点元素sort_heap 按极值存放元素make_heap 将一段现有数据构造成heap程序测试 heap算法概述 heap的内部是一个完全二叉树,将极值存放在根节点。这个里的极值可分为最大值、最小值。根据极值…...

走进低代码表单开发(一):可视化表单数据源设计
在前文,我们已对勤研低代码平台的报表功能做了详细介绍。接下来,让我们深入探究低代码开发中最为常用的表单设计功能。一个完整的应用是由众多表单组合而成的,所以高效的表单设计在开发过程中起着至关重要的作用。让我们一同了解勤研低代码开…...

简单好用的OCR API
现如今,越来越多的科技产品可以帮助我们改善和提高相应的工作效率。OCR技术的出现,提高了人们的工作效率,其应用领域及其广泛。就拿应用了OCR技术的翔云文档识别服务来说,只需上传文档图片便可自动识别并返回文档中相应的内容。翔…...

c++的拷贝构造函数和赋值函数
拷贝构造函数和赋值函数 什么是拷贝构造 是一种特殊构造函数,如果没有显式的实现,编译器就会自动生成。 class 类名 { public:// 拷贝构造类名(const 类名& that){} }; 什么时候会调用拷贝构造 当使用一个类对象给另一个新的类对象初始化时&…...

什么自动猫砂盆才适合旅游党?4个选购技巧统统告诉你!
有没有能让我们防夹3天不在家都不用担心猫咪铲屎问题的方法?当然有了!自动猫砂盆就是最好的选择,要知道,有个好用合适的自动猫砂盆在家的话,根本不用担心生虫发臭的问题出现,因为自动猫砂盆能及时感应到猫咪…...

算法知识点————双指针【删除重复元素】【反转链表】
删除重复元素 题目://给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数 思路:…...

建造者模式builder
此篇为学习笔记,原文链接 https://refactoringguru.cn/design-patterns/builder 能够分步骤创建复杂对象。 该模式允许你使用相同的创建代码生成不同类型和形式的对象...

IEC103设备数据 转 IEC61850项目案例
目录 1 案例说明 1 2 VFBOX网关工作原理 1 3 准备工作 2 4 配置VFBOX网关采集103设备数是 2 5 用IEC61850协议转发数据 4 6 网关使用多个逻辑设备和逻辑节点的方法 6 7 IEC103协议说明 8 8 案例总结 9 1 案例说明 设置网关采集IEC103设备数据把采集的数据转成IEC61850协议转发…...

438.找到字符串中所有字母异位词
题目 链接:leetcode链接 思路分析(滑动窗口) 很容易想到,这个题目要求我们在字符串s中找到一个定长的窗口让窗口里面出现异位词。 OK,先思考一下怎么快速判断两个字符串是否是异位词? 比较简单的方法是…...

Microsoft SC-100: Microsoft 网络安全架构师
SC-100认证介绍 Microsoft SC-100: Microsoft 网络安全架构师是微软网络安全方向的相关证书, 作为 Microsoft 网络安全架构师,你要将网络安全策略转化为保护组织的资产、业务和运营的功能。 你要设计、指导实现和维护遵循零信任原则和最佳做法的安全性解…...

代码随想录训练营day42|188.买卖股票的最佳时机IV,309.最佳买卖股票时机含冷冻期,714.买卖股票的最佳时机含手续费
188.买卖股票的最佳时机IV 变成了最多可以买卖k只股票 class Solution { public:int maxProfit(int k, vector<int>& prices) {vector<vector<int>> dp(prices.size(),vector<int>(2*k1,0));for(int i1;i<2*k1;i2){dp[0][i]-prices[0];}//初始…...

解决Pynput不能在Ubuntu22.04上正常使用问题
pynput 是一个 Python 库,它提供了一套简单的接口来控制和监控输入设备,包括鼠标和键盘。这个库允许开发者编写跨平台的代码来处理输入事件,无需担心底层操作系统的差异。 下面是pynput的测试程序: from pynput.keyboard import …...

IPV4端口数据有哪些?
关于IPv4的端口数据包括端口号,协议类型,端口状态,扫描时间以及开放时间,这些是常见的实时IPv4端口扫描和分析数据。 IPv4端口号 Ipv4端口号是一个16位的无符号整数,范围从0到65535,这些端口号用于区分运…...

【爱加密_云平台-注册/登录安全分析报告】
前言 由于网站注册入口容易被黑客攻击,存在如下安全问题: 暴力破解密码,造成用户信息泄露短信盗刷的安全问题,影响业务及导致用户投诉带来经济损失,尤其是后付费客户,风险巨大,造成亏损无底洞…...

Open CASCADE学习|按圆离散旋转体
旋转体是一个非常重要的概念,它涉及到三维空间中由二维曲线绕某一轴线旋转形成的立体形状。这种旋转体的形成过程,实际上是一个连续变化的动态过程,但在数学和几何学中,我们往往通过静态的方式来描述和研究它。 旋转体的基本特性…...

无人矿车使用ZMQ消息代理进行跨机互联进行消息收发
目录 背景 前景知识 1.启动一个代理服务器 2.发布者 3.订阅者 实际应用 1.模拟智驾收来自交互箱131的按钮json数据 2.模拟交互箱131收来自智驾137的cjson数据 背景 在调试防爆无轨无人矿车时,出现消息代理不能很好转发,于是在公司通过代理的方式…...

医疗机构关于DIP/DRG信息化建设
推进DIP/DRG支付方式改革是一项系统性工程,牵一发而动全身。作为河北省DIP试点医院,河北医科大学第二医院将信息化与创新性管理理念融合,用好支付工具做好精细化管理,积极应对改革。 ■ 改革背景 国家医疗保障局制定的《DRG/DIP支…...

100个候选人,没一个能讲明白什么是自动化框架?
什么是自动化测试框架 01 什么是框架 框架是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法。它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间…...

数据结构与算法1: 链表
题目名称: 重排链表 链接: . - 力扣(LeetCode) 介绍:本题的目标是将链表进行重新组合,如下图。 如果按照标准的解法,我们需要实现三步 1. 链表中点的获取 2. 链表的反转 3. 链…...

【专题】2024年8月医药行业报告合集汇总PDF分享(附原数据表)
原文链接:https://tecdat.cn/?p37621 在科技飞速发展的当今时代,医药行业作为关乎人类生命健康的重要领域,正处于前所未有的变革浪潮之中。数智医疗服务的崛起,为医疗模式带来了全新的转变,开启了医疗服务的新时代。…...

这10种人不适合干项目经理,你在其中吗?
在一个项目中,项目经理扮演着至关重要的角色,他们需要协调各种资源、管理团队、制定计划以及应对各种挑战。然而,并非每个人都适合担任项目经理的角色。以下他们天生不适合当项目经理,你会在其中找到自己的类型吗? 1、…...

IT每日英语(三)
系列文章目录 IT每日英语(二) 文章目录 系列文章目录前言1.collie2.century3.farewell4.meme5.hall6.needle7.simulate8.emulate9.arbitray10.laboratory11.jest12.suite13.approach14.satellite15.instance16.representation 前言 这里给出的是本人在…...

【保姆级教程】如何创建一个vitepress项目?
文章目录 安装前的准备工作项目安装创建文件初始化文件安装依赖遇到了 missing peer deps 警告?命令行设置向导 完成 安装前的准备工作 Node.js 18 及以上版本。通过命令行界面 (CLI) 访问 VitePress 的终端。支持 Markdown 语法的编辑器。推荐 VSCode 及其官方 Vu…...

智能头盔语音识别声控芯片,AI离线语音识别ic方案,NRK3301
头盔是交通事故中保护电动车车主安全的最后一道屏障。为了增加骑行用户的安全保护,改善骑行用户的出行体验,让用户从被动使用头盔到主动佩戴头盔,头盔厂家与九芯电子合作,推出了语音智能头盔,它具备首家骑行专用的智能…...

【STM32】CAN总线基础入门
CAN总线基础入门 一、CAN简介二、主流通信协议对比三、CAN物理层1、CAN硬件电路2、CAN电平标准3、CAN收发器 – TJA1050(高速CAN)4、CAN物理层特性 四、帧格式1、CAN总线帧格式2、数据帧3、数据帧各部分用途简介4、数据帧的发展历…...

STM32F1+HAL库+FreeTOTS学习10——任务相关API函数使用
STM32F1HAL库FreeTOTS学习10——任务相关API函数使用 任务相关API函数1. uxTaskPriorityGet()2. vTaskPrioritySet()3. uxTaskGetNumberOfTasks()4. uxTaskGetSystemState()5. vTaskGetInfo()6. xTaskGetCurrentHandle()7. xTaskGetHandle()8. xTaskGetIdleTaskHandle()9. uxTa…...

华为 HCIP-Datacom H12-821 题库 (14)
有需要题库的可以加下方Q群 V群进行学习交流 1.以下哪一种工具可用于多种路由协议,并且是由 if-match 和appl y 子句组成的? A、community-filter B、as-path-filter C、route-policy D、ip-prefix 答案:C 解析: 暂无解析…...

java八股!2
IO流 好短 就三个问题(io流,区别,NIO实现) 文章目录 IO流io流基本认识字节流和字符流的区别(中文,底层设备,缓冲区,应用场景)I/O模型(4种(可以看做3种&…...

一分钟了解统一软件开发过程RUP的那点事
曾经几乎一统天下的统一软件开发过程RUP(Rational Unified Process)即使是现在看来,它也是一套非常先进并完整的理论体系加工具集合。虽然目前来看,敏捷开发方法似乎更优秀,但是到今天为止,几乎大部分的政府…...