• linux 模拟延时和丢包


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

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

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

    tc 的最最基本的使用

    1
    2
    3
    4
    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 :

    1
    tc qdisc add dev eth0 root netem delay 3000ms

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

    Linux 中丢包模拟

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

    1
    tc qdisc change dev eth0 root netem loss 50%

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

     

  • 相关阅读:
    mySQL 重点
    JS代码预解析原理、函数相关、面向对象
    PHP中对数组进行操作的常用函数总结
    js函数和数组总结
    深入理解css网页布局细节
    AngularJS表单验证
    发送消息 缺少 更新的字段值
    springboot 下 logback + MDC的使用
    Mock的使用2
    StringUtils # split 的坑
  • 原文地址:https://www.cnblogs.com/onmyway20xx/p/4452719.html
Copyright © 2020-2023  润新知