Fiddler弱网设置
设置
打开fiddler,默认情况下Rules->Performance->Simulate Modem Speeds是未勾选状态,此时网络正常。当选中此选项后,网速就会变慢,打开网页就会加载很久,这样就实现了弱网效果。

备注:如果想了解(上传/下载)网速具体数值,可以访问http://www.speedtest.cn/网站,进行测试
限速原理
Fiddler限速是以网络延迟的方式实现的,网络延迟时间*网速=传输字节数
点击Rules – Customize Rules(快捷键Ctrl + R)打开Fiddler ScriptEditor,或者直接点开右侧主页签的FiddlerScript。


打开该文件后,Ctrl + F 查找m_SimulateModem标志位,可以看到如下代码
if (m_SimulateModem) {
// Delay sends by 300ms per KB uploaded.
oSession["request-trickle-delay"] = "300";
// Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = "150";
}
注释说明:
request-trickle-delay中的值代表每KB的数据被上传时会被延时多少毫秒;
response-trickle-delay则对应下载时每KB的数据会被延时多少毫秒。
比如你要模拟上传速度100KBps的网络,那上传延迟就是1KB/100KBps=0.01s=10ms,就改成10
默认设置下上传延时为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的倍数,忽略误差)
实际带宽是在计算所得的基础上乘2,至于原因,没有深究
上传带宽=((1*8/1000)/0.300)*2.0≈0.106Mbps
下载带宽=((1*8/1000)/0.150)*2.0≈0.053Mbps
假如我们要模拟2M左右的宽带((1* 8/1000)/ x )*2.0=2
if (m_SimulateModem) {
// Delay sends by 300ms per KB uploaded.
oSession["request-trickle-delay"] = "8";
// Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = "8";
设置网络环境参数
1、查找到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(100,200);
// Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = ""+randInt(1,50);
}
2、在代码里找到onBeforeRequest,这里定义了在发送请求前做什么。加入如下代码可以实现延迟:
oSession["request-trickle-delay"]="3000"; //请求阶段延迟3秒
oSession["response-trickle-delay"]="3000"; //响应阶段延迟3秒

备注:每次编辑并保存配置文件后,Simulate Modem Speeds选项会被取消,需要重新勾选。
作者:小鱿鱼Gun神
链接:https://www.jianshu.com/p/a9e5605bb454
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!