IT技术博客大学习 共学习 共进步

在 Linux 的应用中测试中的延时和丢包模拟

扶凯 2010-12-30 22:46:10 浏览 4,502 次

这是 RHCA 中的一个 BDP 的测试,这也是公司很常用的一种延时和丢包的模拟,现在分享给大家。

我们做的应用软件,还有测试 TCP/UDP  对比,测试 BDP 对 TCP/IP 的影响时,我们都需要一些网络中的延时和丢包模拟,很多商业的软件可以做这个事,其实完美的 Linux 本身就可以使用 TC 来实现这个功能. TC 中的 Netem 可以模拟时延,丢包,重复包,乱序等功能

建议大家如果测试的话,使用 tc 当中间的路由器,来接二个网卡,然后打开路由功能来测试。

tc 的最最基本的使用

tc qdisc show    # 显示
tc qdisc  add dev eth0 root ...... # 加入
tc qdisc  change  dev eth0 root ...... # 修改存在的 qdisc ,记的,加入同一条后只能用 change 来修改
tc qdisc del dev eth0 root  # 删除

Linux 中延时模拟

设置延时 3s :

tc qdisc add dev eth0 root netem delay 3000ms

可以在 3000ms 后面在加上一个延时,比如 ’3000ms 200ms‘表示 3000ms ± 200ms ,延时范围 2800 - 3200 之间.
结果显示如下

Linux 中丢包模拟

设置丢包 50% ,iptables 也可以模拟这个,但一下不记的命令了,下次放上来:

tc qdisc change dev eth0 root netem loss 50%

上面的设丢包,如果给后面的 50% 的丢包比率修改成 ’50% 80%’ 时,这时和上面的延时不一样,这是指丢包比率为 50-80% 之间。
显示如下

建议继续学习

  1. Xvfb+YSlow+ShowSlow搭建前端性能测试框架 (阅读 55,344)
  2. 安全测试与渗透测试区别 (阅读 24,825)
  3. 使用Fiddler对手机应用进行抓包测试 (阅读 8,463)
  4. 服务器性能测试工具推荐 (阅读 7,903)
  5. 给Apache做压力测试时遇到的问题 (阅读 7,183)
  6. WEB性能测试工具推荐 (阅读 6,944)
  7. 可用性测试好助手——Morae软件的应用 (阅读 6,683)
  8. 记一次丢包网络故障 (阅读 6,388)
  9. 12款很棒的浏览器兼容性测试工具推荐 (阅读 6,146)
  10. 性能测试工具sysbench简介 (阅读 5,905)