用Linux操作系统中流量控制器(TC)来模拟Linux机器网络之间情况

Traffic Control ,简称TC,主要是在输出端口处建立一个队列进行流量控制,控制的方式是基于路由,亦即基于目的IP地址或目的子网的网络号的流量控制。流量控制器TC, 其基本的功能模块为队列、分类和过滤器。Linux内核中支持的队列有,Class Based Queue ,Token Bucket Flow ,CSZ ,First In First Out ,Priority ,TEQL ,SFQ ,ATM ,RED。这里我们讨论的队列与分类都是基于CBQ(Class Based Queue)的,而过滤器是基于路由(Route)的。

TC的一些常用命令

网卡限速:

ethtool -s eth0 speed 10 autoneg off

取消限速

ethtool -s eth0 autoneg on

监视

tc qdisc ls dev eth0

简单显示指定设备(eth0)的分类情况

tc class ls dev eth0

详细显示指定设备(eth0)的分类情况

tc -s class ls dev eth0

tc -s filter ls dev eth0

显示路由情况

ip route show

删除网卡上的过滤器

tc qdisc del dev eth0 root

增加网卡上的过滤器

tc qdisc add dev eth0 root handle 1:0 netem delay 5ms loss 5%

这条命令的作用是让网络产生5ms的延时,丢包率为5%

结合控制网卡速度的命令,tc可以模拟Linux机器网络之间的任何情况,为通信程序的测试提供了有力工具。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值