打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
网络故障模拟
 一、模拟延迟传输
    netem  与  tc :
        netem  是  Linux 2.6  及以上内核版本提供的一个网络模拟功能模 块。
            该功能模块可以用来在性能良好的局域网中, 模拟出复杂的互联网传输性能, 诸如低带 宽、 传输延迟、 丢包等等情况。
            使用  Linux  2.6  ( 或以上 )  版本内核的很多发行版  Linux  都 开启了该内核功能, 比如 Fedora 、 Ubuntu 、 Redhat 、 OpenSuse 、 CentOS 、 Debian 等等。
        tc  是  Linux  系统中的一个工具, 全名为 traffic  control ( 流量控制) 。
            tc  可以用来控制  netem  的工作模式, 也就是说, 如果想使用  netem  , 需要至少两个条件, 一个是内核中的  netem  功 能被包含,另一个是要有  tc  。
        需要注意的是: 本文介绍的流控只能控制发包动作, 不能控制收包动作,同时,它直接 对物理接口生效,如果控制了物理的 eth0 ,那么逻辑网卡(比如 eth0:1 )也会受到影响, 反之,如果您在逻辑网卡上做控制,该控制可能是无效的。 (注:虚拟机中的多个网卡可以 在虚拟机中视为多个物理网卡) 。
二、模拟延迟传输  
    # tc    qdisc    add    dev    eth0    root    netem    delay    100ms  
        该命令将   eth0  网卡的传输设置为延迟 100 毫秒发送。    
         更真实的情况下, 延迟值不会这么精确, 会有一定的波动, 我们可以用下面的情况来模拟出 带有波动性的延迟值:
    # tc    qdisc    add    dev    eth0    root    netem    delay    100ms    10ms
        该 命令将   eth0  网卡的传输设置为延迟   100ms ±  10ms  ( 90 ~ 110 ms  之间的任意值)发送。    
        还可以更进一步加强这种波动的随机性:  
    # tc    qdisc    add    dev    eth0    root    netem    delay    100ms    10ms    30%
         该命令将   eth0  网卡的传输设置为   100ms  ,同时,大约有   30%  的包会延迟   ±  10ms  发送。    
三、模拟网络丢包:  
    # tc    qdisc    add    dev    eth0    root    netem    loss    1%
        该命令将   eth0  网卡的传输设置为随机丢掉   1%  的数据包。   也可以设置丢包的成功率:  
    # tc    qdisc    add    dev    eth0    root    netem    loss    1%    30%
        该命令将   eth0  网卡的传输设置为随机丢掉   1%  的数据包,成功率为   30%  。
四、模拟包重复:  
    # tc    qdisc    add    dev    eth0    root    netem    duplicate 1%
        该命令将   eth0  网卡的传输设置为随机产生   1%  的重复数据包   。    
五、模拟数据包损坏:   
    # tc    qdisc    add    dev    eth0    root    netem    corrupt    0.2%   
        该命令将   eth0  网卡的传输设置为随机产生   0.2%  的损坏的数据包   。   ( 内核版本需在 2.6.16 以上)  
六、模拟数据包乱序:   
    # tc    qdisc    change    dev    eth0    root    netem    delay    10ms      reorder    25%    50%  
        该命令将   eth0  网卡的传输设置为 : 有   25%  的数据包( 50% 相关)会被立即发送,其他的延 迟   10  秒。  
        新版本中,如下命令也会在一定程度上打乱发包的次序 :
    # tc    qdisc    add    dev    eth0    root    netem    delay    100ms    10ms
七、查看已经配置的网络条件:
    # tc    qdisc    show    dev    eth0  
        该命令将   查看并显示 eth0  网卡的相关传输配置   
八、删除网卡上面的相关配置:  
    # tc    qdisc    del    dev    eth0    root  
        该命令将   删除 eth0  网卡的相关传输配置 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Linux网络流量控制工具—Netem
Net:Netem - The Linux Foundation
How to Use the Linux Traffic Control
Linux下利用TC工具控制网络流量
linux流量控制HOW-TO(非常完整清楚)
Linux 性能测试与分析
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服