Linux下用tc控制网络延时和丢包率 流量控制
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
免费下载资源
·
linux下的tc可以操纵网络,比如分配带宽给不同的应用、模拟网络时延、模拟糟糕网络环境下的丢包等。
tc中间需要用一个路由器。使用 tc 当中间的路由器,来接二个网卡,然后打开路由功能来测试。
于是我们拿一台linux机当router,单网卡,两个虚拟ip,让它连接两台服务器再试。更滑稽了,tc不起作用,两台服务器间的流量刷刷的走,tc却显示没有多少packet经过。tc不能用于router吗?
后来看了tc的详细手册(注意4.1节),终于知道了:tc标准用法是两台服务器中间一个双网卡的router,在router上用tc。
最后测试成功。丢包率越高,tcp传输的速度越慢;如果丢包率很高,tcp可能会顿住,但是只要改回去(去掉tc的netem配置),传输就会恢复。
tc修改网络延时:
sudo tc qdisc add dev eth0 root netem delay 1000ms
删除策略:
sudo tc qdisc del dev eth0 root netem delay 1000ms
验证效果:
PING myhost (192.168.0.2) 56(84) bytes of data.
64 bytes from myhost (192.168.0.2): icmp_seq=1 ttl=64 time=1000 ms
64 bytes from myhost (192.168.0.2): icmp_seq=1 ttl=64 time=1000 ms
64 bytes from myhost (192.168.0.2): icmp_seq=1 ttl=64 time=1000 ms
修改丢包率:
sudo tc qdisc add dev eth0 root netem loss 10%
删除策略:
sudo tc qdisc del dev eth0 root netem loss 10%
tc中间需要用一个路由器。使用 tc 当中间的路由器,来接二个网卡,然后打开路由功能来测试。
于是我们拿一台linux机当router,单网卡,两个虚拟ip,让它连接两台服务器再试。更滑稽了,tc不起作用,两台服务器间的流量刷刷的走,tc却显示没有多少packet经过。tc不能用于router吗?
后来看了tc的详细手册(注意4.1节),终于知道了:tc标准用法是两台服务器中间一个双网卡的router,在router上用tc。
最后测试成功。丢包率越高,tcp传输的速度越慢;如果丢包率很高,tcp可能会顿住,但是只要改回去(去掉tc的netem配置),传输就会恢复。
tc修改网络延时:
sudo tc qdisc add dev eth0 root netem delay 1000ms
删除策略:
sudo tc qdisc del dev eth0 root netem delay 1000ms
验证效果:
PING myhost (192.168.0.2) 56(84) bytes of data.
64 bytes from myhost (192.168.0.2): icmp_seq=1 ttl=64 time=1000 ms
64 bytes from myhost (192.168.0.2): icmp_seq=1 ttl=64 time=1000 ms
64 bytes from myhost (192.168.0.2): icmp_seq=1 ttl=64 time=1000 ms
修改丢包率:
sudo tc qdisc add dev eth0 root netem loss 10%
删除策略:
sudo tc qdisc del dev eth0 root netem loss 10%
tc流量控制
http://blog.163.com/wang_hui1009/blog/static/69113057201186434772/?latestBlog
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e
added ecosystem file for PM2 4 年前
5def40a3
Add host customization support for the NodeJS version 4 年前
更多推荐
已为社区贡献10条内容
所有评论(0)