bor*_*yer 33
该netem内核模块,通过iproute控制。
你需要用内核编译Netem:
Networking -->
Networking Options -->
QoS and/or fair queuing -->
Network emulator
Run Code Online (Sandbox Code Playgroud)
加载 netem 模块后,iproute 的 tc 允许您执行以下操作:
tc qdisc add dev tap0 root netem delay 50ms loss 50%
Run Code Online (Sandbox Code Playgroud)
(50% 丢包,额外延迟 50 毫秒)
小智 17
我找到了一种方法来避免我的盒子使用 ubuntu 中名为“wondershaper”的工具占用网络上的所有可用带宽。我希望它也存在于其他 linux destro 中。我可以使用以下命令限制我的 linux 家用电脑可以消耗的带宽。
sudo wondershaper eth0 1000 200
Run Code Online (Sandbox Code Playgroud)
这将下载限制限制为 1000 KB,上传限制为 200 KB。有关更多信息/选项,请参阅 Wondershaper 的手册页。
NIST 制作了一个名为 NistNet 的网络模拟器。
http://snad.ncsl.nist.gov/nistnet/(链接似乎已失效)
http://cs.ecs.baylor.edu/~donahoo/tools/nistnet/
NistNet 可让您制作一个模拟您选择的通信链接的路由器。
对于最简单的操作,您将它放在一个盒子上,在两个网络之间有两个 NIC。
例如,我有一个必须通过卫星链接工作的应用程序。
数据可以通过 2Mbps 的链路传输,延迟很大。控制必须通过 128kbps 的链路,具有相同的延迟。
NistNet 帮助它以 128kbps 的速度运行。
使用 NistNet,我不仅可以模拟带宽,还可以模拟延迟,它还会为您丢弃数据包,模拟繁忙或不可靠的链接。
如果您想模拟任意连接,请不要只限制带宽,还要增加延迟。
也不要忘记对数据包进行分段。您可以在虚假链接上设置漂亮的小型 MTU。
IIRC 添加数据包抖动将让您了解是否可以处理乱序数据包。
归档时间: |
|
查看次数: |
56523 次 |
最近记录: |