我想测试一些网站和其他服务在使用慢速连接时的表现,比如最大带宽为 512 kBit/s,延迟为 500ms。
我如何在 OS X 中做到这一点?
答案1
另一个选择是使用网络链接调节器偏好设置窗格,该窗格在 10.7 及更高版本中与 Xcode 一起安装。
答案2
使用内置ipfw(8)
实用程序控制 ipfw 防火墙和 dummynet 流量整形器以创建新管道。此管道将用作数据包必须通过的虚拟链路。
我们可以设置有限的带宽、传播延迟、队列大小和数据包丢失率。
从以下位置启动终端/应用程序/实用程序/Terminal.app。然后输入以下内容,并准备输入您的管理员密码:
sudo ipfw pipe 1 config bw 512Kbit/s delay 500ms
这里使用的值是不言自明的。对于数据包丢失,添加plr <n>
,其中<n>
是 0 到 1 之间的浮点数(0 表示没有丢失,1 表示所有数据包都被丢弃)。例如,这将很好地模拟移动有损连接。
现在,让我们将此管道添加到任何往返于端口 80(用于 HTTP 流量的端口)的连接。
sudo ipfw add 1 pipe 1 src-port 80
sudo ipfw add 2 pipe 1 dst-port 80
享受你的慢速连接吧。如果你完成了,删除这些规则并删除管道:
sudo ipfw delete 1
sudo ipfw delete 2
sudo ipfw pipe 1 delete
答案3
http://slowyapp.com/是另一个(现在免费的)选项。
所有三个选项 - Network Link Conditioner、ipfw 和 Slowy - 都只是 OSX 网络堆栈部分的 UI,可以调整网络流量(dummynet),因此只需选择您最满意的那个即可。