我知道这是个奇怪的问题。因为我通常基于“假设”所有用户的网络连接都很慢来开发应用程序。但是,有没有人认为有一种方法可以通过编程模拟慢速互联网连接,这样我就可以“看到”应用程序在不同“连接速度”下的表现?

我不担心使用哪种语言。我不是在寻找代码示例或其他东西,只是对它背后的逻辑感兴趣。


当前回答

现在有一些TCP代理,比如iprelay和草率,它们可以进行带宽整形来模拟慢速连接。您还可以使用ipfw和iptables等IP过滤工具进行带宽整形和模拟丢包。

其他回答

谷歌建议:

OSX上的网络链路调节器 笨拙的窗户 Linux上的Dummynet

Mac OSX从10.10开始就有了一个名为Murus Firewall的应用程序,它作为pf的GUI,替代了ipfw。

它适用于系统范围或特定领域的节流。我只能用它把我的下载速度在300Kbps到30Mbps之间滑动,以测试流媒体视频播放器是如何调整的。

使用具有节流功能的web调试代理,如Charles或Fiddler。

你会发现它们在一般的web开发中很有用。主要的区别是Charles是共享软件,而Fiddler是免费的。

此外,为了在某些*nix上模拟慢速连接,您可以尝试使用ipfw。更多信息由Ben Newman在Quora上的回答提供

现在有一些TCP代理,比如iprelay和草率,它们可以进行带宽整形来模拟慢速连接。您还可以使用ipfw和iptables等IP过滤工具进行带宽整形和模拟丢包。