服务端的性能测试一直是比较棘手的问题。一. Iperf 概述Iperf 是一个网络性能测试工具。Iperf可以测试最大TCP和UDP带宽性能。Iperf具有多种参数和UDP特性,可以根据需要调整。Iperf可以报告带宽,延迟抖动和数据包丢失。iperf 分为两种版本,unix/linux版和windows版,unix/linux版更新比较快,版本最新。windows版更新慢。windows版的iperf叫jperf,或者xjperf。jperf是在iperf基础上开发了更好的UI和新的功能。二. 测试环境搭建了解测试需求(如果是对802.11n,了解测试模块的MIMO--也就是有几个天线),以及有线网口的规格(笔记本/AP是百兆网卡吗?因为802.11n的速率可以达到100Mbps以上,如果是百兆网口,肯定会成为测试速率的瓶紧)事先确定HW 基础。测试环境:因为wifi是空中传播原因,为避免环境中其他无线AP 的信道干扰,请尽量在干净环境测试throughputA: 请尽量选择屏蔽房(Shield Room)中测试B: 地下车库往往也是一个不错的选择(地下车库可搜索到的AP网络往往很少)C: 目前5G AP 尚少,亦可应用5G频带测试;(能够连上5G AP为准)D: 若上述条件均不可得,可尝试用Cable 直连,取代空中传播,但为避免打坏设备,需要加衰减器; 测试AP (Access Point无线路由)设定:无线模式选择”802.11b/g/n”信道带宽选择”20/40”开启”Guard Interval”注A, 双频带(20-MHz和40-MHz带宽)IEEE 802.11n通过将两个相邻的20MHz带宽捆绑在一起组成一个40MHz通讯带宽,在实际工作时可以作为两个20MHz的带宽使用(一个为主带宽,一个为次带宽,收发数据时既可以40MHz的带宽工作,也可以单个20MHz带宽工作)。注B: Short Guard Interval(Short GI)Short GI(Guard Interval)是802.11n针对802.11a/g所做的改进。射频芯片在使用OFDM调制方式发送数据时,整个帧是被划分成不同的数据块进行发送的。为了数据传输的可靠性,数据块之间会有GI,用以保证接收侧能够正确的解析出各个数据块。无线信号在空间传输会因多径等因素在接收侧形成时延,如果后续数据块发送过快,会和前一个数据块形成干扰。而GI就是用来规避这个干扰的。11a/g的GI时长为800us,而Short GI时长为400us,在使用Short GI的情况下,可提高10%的速率。另外,Short GI与带宽无关,支持20MHz、40MHz带宽。注C:关于理论吞吐量:a:不同标准理论传送吞吐量不同;b:实际传送带宽视环境,wifi系统会不同选择,40M带宽可获得更大throughput)附:不同网络的理论最大吞吐量参考:802.11n的理论速率由于MIMO、Short GI 以及频宽的区别,会有不同是速率:三. 网络连线设定:1.  Infra Network(基础网络构架):a. PC 通过Cable 连接AP Lan口,然后AP wifi连接待测Platform注,请注意网口规格,是百兆或吉兆?b. PC 通过wifi 连接AP,然后AP wifi 连接待测Platform:选择合适测试无线网卡,不能选择MIMO 规格低于测试AP的无线网卡;(比如测试用2x2的AP,就不能选择1x1 的无线网卡,应该选择2x2或者3x的无线网卡)2. 请在PC1/Platform 运行相应版本的iperf;分别运行下面表格命令即可,由命令决定哪个平台做Server,哪个平台做Client。注:a. 在TV 端,需要测试CPU loading,请在TV端iperf命令后加’&’b. linux/Android 平台,测试CPU loading 用top 命令,会每隔5秒刷新CPU loading:(如下图是Android 平台截图,各项解释如下)。User 35%, System 13%, IOW 0%, IRQ 0% // CPU占用率 User 109 + Nice 0 + Sys 40 + Idle 156 + IOW 0 + IRQ 0 + SIRQ 1 = 306 // CPU使用情况 PID CPU% S #THR VSS RSS PCY UID Name // 进程属性 xx  xx% x   xx  xx  xx  xx  xx   xx CPU占用率:User    用户进程 System  系统进程 IOW IO等待时间 IRQ 硬中断时间 CPU使用情况(指一个最小时间片内所占时间,单位jiffies。或者指所占进程数):User    处于用户态的运行时间,不包含优先值为负进程 Nice    优先值为负的进程所占用的CPU时间 Sys 处于核心态的运行时间 Idle    除IO等待时间以外的其它等待时间 IOW IO等待时间 IRQ 硬中断时间 SIRQ    软中断时间 进程属性:PID 进程在系统中的ID CPU%    当前瞬时所以使用CPU占用率 S   进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。#THR    程序当前所用的线程数 VSS Virtual Set Size 虚拟耗用内存(包含共享库占用的内存) RSS Resident Set Size 实际使用物理内存(包含共享库占用的内存) PCY OOXX,不知道什么东东 。UID 运行当前进程的用户id Name 程序名称android.process.media // ps:内存占用大小有如下规律:VSS >= RSS >= PSS >= USS// PSS  Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存) // USS  Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存c.  记录数据,请用平均值记录,如下图,选用0.0-300.0sec 的数据:

具体参数,欢迎加入QQ群,或者微信来交流。

d.  关于iperf 各项命令的意思:(重点解释与性能相关的命令)通用参数-f [kmKM] 分别表示以Kbits, Mbits, KBytes, MBytes显示报告,默认以Mbits为单位,eg:iperf -c 222.35.11.23 -f K-i sec 以秒为单位显示报告间隔,eg:iperf -c 222.35.11.23 -i 2-l 缓冲区大小,默认是8KB,eg:iperf -c 222.35.11.23 -l 16-m 显示tcp最大mtu值-o 将报告和错误信息输出到文件eg:iperf -c 222.35.11.23 -o ciperflog.txt-p 指定服务器端使用的端口或客户端所连接的端口eg:iperf -s -p 9999;iperf -c 222.35.11.23 -p 9999-u 使用udp协议-w 指定TCP窗口大小,默认是8KB-B 绑定一个主机地址或接口(当主机有多个地址或接口时使用该参数)-C 兼容旧版本(当server端和client端版本不一样时使用)-M 设定TCP数据包的最大mtu值-N 设定TCP不延时-V 传输ipv6数据包server专用参数-D 以服务方式运行iperf,eg:iperf -s -D-R 停止iperf服务,针对-D,eg:iperf -s -Rclient端专用参数-d 同时进行双向传输测试-n 指定传输的字节数,eg:iperf -c 222.35.11.23 -n 100000-r 单独进行双向传输测试-t 测试时间,默认10秒,eg:iperf -c 222.35.11.23 -t 5-F 指定需要传输的文件-T 指定ttl值附:

Iperf apk 界面:需要遥控在APK软键盘输入命令:

更多技术问题,可以扫码加入知识星球「细说测试」来跟大咖们交流。

测带宽的工具_iperf:服务端吞吐量测试工具相关推荐

  1. 热血江湖服务端 linux,热血江湖V2.0商业服务端百宝阁 GM工具+客户端+架设教程

    热血江湖V2.0商业服务端百宝阁 GM工具+客户端+架设教程 本人没有测试过!!!本人没有测试过!!!本人没有测试过!!! 可升级120级,个别服升150级8转 爆率低 特别是强化石 强化石可以叠加 ...

  2. php热血江湖怎么安装,端游【热血江湖】V2.0商业服务端百宝阁 GM工具+客户端+架设教程...

    热血江湖V2.0商业服务端百宝阁 GM工具+客户端+架设教程 本人没有测试过!!!本人没有测试过!!!本人没有测试过!!! 可升级120级,个别服升150级8转 爆率低 特别是强化石 强化石可以叠加 ...

  3. 【分享】Vue 资源典藏(UI组件、开发框架、服务端、辅助工具、应用实例、Demo示例)...

    Vue 资源典藏,包括:UI组件 开发框架 服务端 辅助工具 应用实例 Demo示例 element ★11612 - 饿了么出品的Vue2的web UI工具套件 Vux ★7503 - 基于Vue和 ...

  4. 魔力宝贝服务器修改器装备,【法兰城的回忆】魔力宝贝游戏手工架设服务端+客户端修改工具+流程说明...

    [法兰城的回忆]魔力宝贝游戏手工架设服务端+客户端修改工具+流程说明_站长网(Downzz.com) 安装说明: 1.安装宝塔 yum install -y wget && wget ...

  5. 服务端安全测试体系概括

    服务端安全测试体系概括 一.引言 二.安全漏洞TOP10 三.OWASP解决方案的问题 四.测试工程师的安全测试体系 五.常用的安全测试工具 六.安全测试关注维度 七.业务安全常见的checklist ...

  6. Sign in with Apple(苹果授权登陆)服务端验证-测试通过版

    Sign in with Apple(苹果授权登陆)服务端验证-测试通过版 1.先引用2个jwt用到的jar包 2.算法的工具类 三方登录调用验证工具类 苹果登录方式有2种,这里介绍基于JWT算法验证 ...

  7. live http工具下载_使用通用测试工具探索Blueworks Live REST API资源

    live http工具下载 本系列的第1部分介绍了5个一般用例,它们是使用IBM®Blueworks Live的代表性状态转移(REST)应用程序编程接口(API)的最佳方法. 您还为每种用例学习了不 ...

  8. 虚拟服务器安装ibm mq,IBM MQ 客户端查看服务端消息的工具 WMQTool

    大家好,由于时间问题,好长时间没有写博客了,表示歉意,今后有时间,会把自己的工作经验分享给大家! 最近一直在调试关于IBM MQ的接口,把相关的工作经验分享给大家, 首先说一下前提: IBM MQ S ...

  9. JAVA进阶案例 TCP编程之网络聊天工具(服务端)

    实现分析. 1.开启服务端 客户端选择'登录以后'后,提示输入用户名和密码,验证成功则进入好友列表界面 2.用户聊天 双击好友,进入好友聊天界面.在信息框编辑信息 点击发送 当客户端向服务端发送数据时 ...

最新文章

  1. php 头部utf8,PHP去掉utf8格式文件中的bom头部_PHP教程
  2. javadrawstring设置字符大小_LaTex学术写作——编辑文档格式 设置论文标题与摘要...
  3. Socket.IO for Unity 简要介绍
  4. 1-18Linux内核空间和用户空间
  5. js 根据公历日期 算出农历_一招教会你公历换算成农历,要不要试试看
  6. mysql分页插件springboot_SpringBoot--使用Mybatis分页插件
  7. hfss螺旋平面_利用HFSS设计平面等角螺旋天线
  8. C# OpenFileDialog 使用
  9. HP P2000 G3阵列故障经历
  10. 基于Python的视频解析器
  11. UEFI原理与编程(十):UEFI的基础服务-系统表
  12. 快速制作机房3D效果图教程
  13. 感性负载,容性负载,阻性负载
  14. 电视盒是计算机网络连接设备,电视盒子怎么连接电脑
  15. Visual Studio 2013 旗舰版正式版密钥
  16. SpringBoot 项目鉴权的 4 种方式
  17. Vulkan层的简要说明
  18. 删除无效的“设备和驱动器”
  19. 论文投稿指南——中文核心期刊推荐(自然科学总论)
  20. ClickHouse vs Elasticsearch谁更胜一筹?

热门文章

  1. python如何做散点图-Python-如何为散点图制作动画?
  2. python映射类型-Python中的映射数据类型 dict
  3. python装饰器实例-Python 装饰器简单示例
  4. python3.6.4安装教程-Python3.6.4官方版
  5. python代码示例下载-python下xml解析库lxml最新版下载安装以及代码示例
  6. python用途与前景-python能用来干什么
  7. python与excel结合-Python与Excel之间的交互
  8. DS-1. 数据结构(data structure)
  9. mybatis-plus中的问题总结
  10. shell中基本正则表达式的元字符