10 09/2014

mac 下低网速测试 web 页面(Throttle)

最后更新: Wed Sep 10 2014 12:36:06 GMT+0800

经常需要模拟低网速下,页面加载效果

以前传说中的 Firefox Throttle 也彻底消失了。还好,mac 下默认已有 ipfw 命令。

限制带宽为 100k/s

sudo ipfw pipe 1 config bw 100Kbytes/s 管道1配置为100k/s
sudo ipfw add 1 pipe 1 tcp from any to me 规则 1 加到 管道 1 tcp 协议 任何 in(别人到我)的访问

取消限制

sudo ipfw delete 1 删除规则1

或者

sudo ipfw flush 删除全部规则

可以写个脚本

限制带宽

#!/bin/sh  

LIMITDOWN="30Kbytes/s"  
LIMITUP="10Kbytes/s"  

if [[ $EUID -ne 0 ]]; then  
 echo "This script must be run as root." 1>&2  
 exit 1  
fi  

ipfw pipe 1 config bw $LIMITDOWN  
ipfw pipe 2 config bw $LIMITUP  
ipfw add 1 pipe 1 tcp from any to me  
ipfw add 2 pipe 2 tcp from me to any  

取消带宽

#!/bin/sh  

if [[ $EUID -ne 0 ]]; then  
 echo "This script must be run as root." 1>&2  
 exit 1  
fi  

ipfw delete 1  
ipfw delete 2  

延伸

sudo ipfw add 1 pipe 1 tcp from any to me

也可换为(如果只是为了测试 80 的话)。

sudo ipfw add 1 pipe 1 src-port 80 表示只在 80 端口应用规则

sudo ipfw show 显示所有规则

再延伸

如果有后台的话,比如 ajax php,可在 php

sleep 300;

延迟响应时间。

其它类似的工具?