Fiddler弱网测试

1、进行弱网设置 

  

2、设置成功

  

 

 3、Fiddler弱网的原理

  选中 Rules>Customize Rules

  

4、点击确认

   Rules—>Cutomize Rules打开CustomRules.js 文档

  

  在文件中搜索关键字,m_SimulateModem

   

让我们来分析一下这几行代码:

注释说明: request-trickle-delay中的值代表每KB的数据被上传时会被延时多少毫秒;response-trickle-delay则对应下载时每KB的数据会被延时多少毫秒。比如你要模拟上传速度100KBps的网络,那上传延迟就是1KB/100KBps=0.01s=10ms,就改成10。

当勾选了Simulate Modem Speeds时,request-trickle-delay与response-trickle-delay就会被设置,如果本身网速已经相当快的话,这里设置的值就可以近似地推算出开启模拟后的上传和下载带宽了,比如默认设置下上传延时为300ms下载延时为150ms,可以推算出大致的模拟带宽为:

上传带宽 = 1KB/300ms = (1 * 8/1000) /0.300 ≈ 0.027Mbps
下载带宽 = 1KB/150ms = (1 * 8/1000) /0.150 ≈ 0.053Mbps
(1MB = 1024 KB ≈ 1000 KB 这里为了运算简便就用了1000的倍数,忽略误差)

实际情况下得到的带宽可能会有误差,受各种外因影响不会这么精确。

不懂公式换算的可以去看https://www.jianshu.com/p/492a1564d16dhttps://www.jianshu.com/p/f417d328e0df
由此可见下载带宽是上传的两倍,也就是延时越小,带宽越大。带宽和这里的延时是成反比的

 5、调整网络环境参数

Fiddler默认的Simulate Modem Speeds速度实在太慢了,而这个限速的参数是可以调整的,如果需要再快一点可以修改配置文件\Fiddler2\Scripts\CustomRules.js。(如若修改勿忘备份原文件)在fiddler官网http://www.fiddlerbook.com/Fiddler/dev/ScriptSamples.asp可以找到参考示例

查找到if (m_SimulateModem)语句,修改代码。下面的脚本实现了一个随机延时量设置,使得网络带宽不是恒定为一个低速的值,而是会在一定范围内随机抖动:

static function randInt(min, max) {

    return Math.round(Math.random()*(max-min)+min);

}if (m_SimulateModem) {

    // Delay sends by 300ms per KB uploaded.

    oSession["request-trickle-delay"] = ""+randInt(1,50);

    // Delay receives by 150ms per KB downloaded.

    oSession["response-trickle-delay"] = ""+randInt(1,50);

}

修改后保存配置文件(Ctrl+S)或者清掉缓存(Rules –> Performances –>Disable Caching),再次勾选Rules –> Performances –> Simulate Modem Speeds 进行测速。注意:每次编辑并保存配置文件后,Simulate Modem Speeds选项会被取消,请重新勾选。
限速完毕一定要取消勾选,不然会影响上网。像第二种方法由于请求和响应都延迟3秒,会导致访问网页很慢。

 

posted @ 2020-12-02 20:14  晟森正茂时  阅读(106)  评论(0编辑  收藏  举报