Linux高级流量控制tc运用
发布时间:2023-05-19 11:35:18 所属栏目:Linux 来源:
导读: 在做MHA测试的时候,有一个重要的环节就是测试MHA Manager节点和Master节点的网络情况,如果产生了抖动,那么MHA本身提供了一个参数secondary_check来保证,但是如果你的部署环境中是一主一从的话,这个参数就不
在做MHA测试的时候,有一个重要的环节就是测试MHA Manager节点和Master节点的网络情况,如果产生了抖动,那么MHA本身提供了一个参数secondary_check来保证,但是如果你的部署环境中是一主一从的话,这个参数就不会起作用了,因为latest slave和oldest slave是同一个库,简单来说,连不上就是连不上了,至于切还是不切,这个还不好说。 Linux的网络流控,控发不控收 , 所以只能对产生瓶颈网卡处的发包速率进行控制 , 流量控制过程分二种(以下内容参考自https://www.ibm.com/developerworks/cn/linux/1412_xiehy_tc/index.html) 队列控制 即 QOS, 瓶颈处的发送队列的规则控制,常见的有 SFQ PRIO 流量控制 即带宽控制 , 队列的排队整形, 一般为 TBF HTB Linux 流量控制算法分二种: 无类算法 用于树叶级无分支的队列,例如:SFQ 分类算法 用于多分支的队列,例如:PRIO TBF HTB 而涉及到的流控算法SFQ和TBF都是需要简单了解的。 SFQ(Stochastic Fairness Queueing 随机公平队列 ) 是公平队列算法家族中的一个简单实现 . 它的精确性不如其它的方法 , 但实现了高度的公平 , 需要的计算量亦很少 . 其中SFQ 只会发生在数据发生拥堵 , 产生等待队列的网卡上,出口网卡若无等待队列 ,SFQ 也不起作用 ... 令牌桶过滤器 (TBF) 是一个简单的队列规定 : 只允许以不超过事先设定的速率到来的数据包通过 , 但可能允许短暂突发流量朝过设定值 . ping的结果如下: 64 bytes from 192.168.253.129: icmp_seq=278 ttl=64 time=98.3 ms 64 bytes from 192.168.253.129: icmp_seq=279 ttl=64 time=99.1 ms 64 bytes from 192.168.253.129: icmp_seq=280 ttl=64 time=93.4 ms 64 bytes from 192.168.253.129: icmp_seq=281 ttl=64 time=95.5 ms 还有几类网络情况需要考虑,比如丢包。在流量劫持的场景中,丢包率是一个需要重点关注的场景。 我们可以玩得大一些,丢包率10%,那是比较严重的问题了。 [root@oel642 ~]# tc qdisc add dev eth2 root netem loss 10% ping的结果如下,可以看到小结的部分,丢包率是基本在10%的基本范围内,目前是8%。 (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |