首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模拟不好的internet连接

模拟不好的internet连接
EN

Stack Overflow用户
提问于 2012-08-06 12:28:48
回答 4查看 14.3K关注 0票数 40

我正在开发一个可以通过局域网接入互联网的嵌入式设备。我现在正处于测试阶段,我想测试一下设备在互联网连接不良时的表现。目前,该设备通过集线器连接到路由器,我使用集线器通过Wireshark监控数据包。为了模拟可能发生的情况,降低设备网速的最好方法是什么?

我可以通过一台PC来做吗?我需要访问路由器吗?如果是,是否可以限制路由器接口中每个IP的速度?

实际上,一位朋友建议我购买一块usb2lan以太网卡,然后使用软件QoS限制器来桥接PC lan连接到嵌入式设备。你认为它会起作用吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-04-09 18:05:30

你可以试着用"Fiddler

您可以选择模拟坏的网络(如旧的调制解调器33k或56k)

您需要将您的设备连接到PC并打开代理(每个请求都将通过Fiddler传输)

然后你可以用坏的网络测试你的代码,然后看看会发生什么;)

票数 18
EN

Stack Overflow用户

发布于 2012-08-06 13:52:10

如果您手头有一台Mac机,那么您可以通过ipfw控制Mac内置名为dummynet的内核工具。它允许你模拟一个慢速连接,以一定的概率随机丢弃数据包,等等。

同样的工具也存在于Linux和其他OSes中。

dummynet homepage

截至2010年2月,我们已经发布了dummynet的第三个主要版本,它现在可以在所有主要平台上运行: FreeBSD,major作为本地分发的一部分,你可以在这里找到

,OpenWRT和Windows版本。

它可以为您做很多事情:

将传入TCP总流量限制为2Mbit/s,将UDP总流量限制为300Kbit/s

代码语言:javascript
复制
ipfw add pipe 2 in proto tcp
ipfw add pipe 3 in proto udp
ipfw pipe 2 config bw 2Mbit/s
ipfw pipe 3 config bw 300Kbit/s

将网络10.1.2.0/24上每台主机的传入流量限制为300Kbit/s。

代码语言:javascript
复制
ipfw add pipe 4 src-ip 10.1.2.0/24 in
ipfw pipe 4 config bw 300Kbit/s queue 20 mask dst-ip 0x000000ff

模拟到月球的ADSL链路:

代码语言:javascript
复制
ipfw add pipe 3 out
ipfw add pipe 4 in
ipfw pipe 3 config bw 128Kbit/s queue 10 delay 1000ms
ipfw pipe 4 config bw 640Kbit/s queue 30 delay 1000ms
票数 24
EN

Stack Overflow用户

发布于 2013-04-05 08:37:27

您可以(几乎)使用liveCd的任何linux发行版(如ubuntu、mandriva等)在您想要的任何硬件上运行它,并使用基于内核的工具netem,也就是带有"iproute2“包工具的”网络仿真“。它可以控制广域网中可能出现的延迟、丢包、损坏、复制等问题。

这里有最常用的模拟列表,例如:

使用令牌桶过滤器进行

  • 速率控制:

tc qdisc add dev eth0根句柄1:0网络延迟100ms tc qdisc add dev eth0父节点1:1句柄10: tbf速率256kbit缓冲区1600限制3000

  • 按固定时间延迟所有数据包:tc qdisc add dev eth0 root netem delay 100ms

  • Package

:tbf

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11832505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档