Fiddler模拟弱网测试
一、Fiddler原理
Fiddler代理位于 Web 客户端和 Web 服务器之间,扮演“中间人”的角色。Fiddler既代理客户端向服务器发送请求,又代理服务器向客户端返回响应内容。
Fiddler官方地址:
https://www.telerik.com/download/fiddler/fiddler4
二、Fiddler弱网测试方法
Fiddler弱网测试是通过设置,上传和下载1KB数据所需要的时间,来控制上行和下行的速率。在实际测试过程中,只能修改延迟时间,需要我们事先确定模拟的网络传输速率,转换成延迟时间。
1.配置需要模拟的弱网环境
启动fiddler找到Rules—Customize Rules点击打开
在Fiddler script里搜索delay关键字,找到设置模拟延迟的代码,设置网络请求和响应延迟的时间(MS),点击保存
注意事项:
A. 此处设置的是时间,以毫秒(MS)为单位
B. request-trickle-delay 为上行延迟的时间,即请求延迟的时间
C. response-trickle-delay 为下行延迟的时间,即响应延迟的时间
D. 换算的规则,脚本中是1KB为数据大小,换算多少毫秒MS,完成请求和响应。
计算公式:(1KB*8/上下行速率kbps)*1000=延迟时间(MS)
公式解释:
数据存储的最小单位是Byte字节,数据传输的单位是bit比特,即位,1Byte=8bit。
通讯商网络上传和下载的速率是以kbps表示:千bit每秒,为了统一kb单位。把Fiddler中固定数据大小1KB换算成Kb,最后1KB*8=8Kb。
乘以1000是把秒S换算成毫秒MS,即我们在脚本文件中配置的时间。
举例:
Fiddler默认的上行延迟300ms,下行延迟150ms。换算成网络传输的速率为:
上行:8kb/(300ms/1000)=26.67kbps
下行:8kb/(150ms/1000)=53.33kbps
如果要模拟上行750kbps,下行1500kbps速率,Fiddler中需要设置的延迟时间为:
上行:(8kb/750kbps)*1000=10.67ms
下行:(8kb/1500kbps)*1000=5.33ms
2.启动限速开关
设置完延迟时间之后,返回Fiddler首页菜单。在Fiddler→Rules→Performance,勾选Simulate Modem Speed。
三、网络知识
1B(byte 字节)=8bit(位)
1KB(Kilobyte 千字节)=1024B,
1MB(Megabyte 兆字节 简称“兆”)=1024KB,
1GB(Gigabyte 吉字节 又称“千兆”)=1024MB,
1TB(Terabyte 万亿字节 太字节)=1024GB
网络通讯商,打广告说的百兆宽带,不是100MB,而是100Mb。换算成MB,实际带宽为100Mb/8=12.5MB。
参考上下行速率设置:
网络段 |
上行 |
下行 |
丢包 |
延迟 |
弱3G |
330kbps |
780kbps |
10% |
100ms |
强3G |
750kbps |
1500kbps |
5% |
40ms |