Linux QoS:空闲时的批量数据传输
如何在某个低优先级数据流达到X Mbps带宽的情况下进行QoS设置,但前提是此接口上的当前总带宽(所有流/类)不超过X?同时,其他数据流/类不得限于X. 用例是ISP通过计算5分钟间隔的平均带宽并计费最大值来计费流量.我希望将最大使用量保持在最低限度(即在接口忙碌时间内解除批量传输),但在空闲/低流量时间内获取数据. 查看经常使用的有类调度程序CBQ,HTB和HSFC,我看不到一种直接的方法来实现这一点. 解决方法我让它在hfsc中工作.我假设你的例子中的“X”是100mbit,但那当然可以是任何东西.这里的技巧是创建一个像这样的树类: +--------------------------------------------------------------+ +---------------------+ | | | 1:1 | | root | |---------------------| | + | | Rate: 100mbit | | | | | Upper Rate: 100mbit | | | | | | | | | | | | | | | | | +----v------+ | +---------------------+ | | 1:1 | | | | | | +---------------------+ | +--+---+----+ | | 1:10 | | | | | |---------------------| | | | | | Rate: 100mbit | | | | | | Upper Rate: 100mbit | | | | | | | | +----------+------+ +--------+----------+ | | | | | 1:10 | | 1:11 | | | | | | | | | | +---------------------+ | +----------+ +----------+ | | | +---------------------+ | | | 1:11 | | | |---------------------| | | | Rate: 10kbit | +--------------------------------------------------------------+ | Upper Rate: 100mbit | | | | | | | +---------------------+ 神奇之所以发生,因为类1:10(默认类)设置为始终获得100mbit的保证带宽,而“慢”类1:11提供的保证带宽仅为10kbit,突发为100mbit. 这迫使根类(1:1)总是在1:11之前满足1:10的需要. 注意事项: >不要使用iptables CLASSIFY目标将流量放入1:11.它的 我测试了这个有两个竞争应用程序尽可能快地将数据发送到2个服务的相邻主机.其中一项服务是在班级1:11.他们都传输了超过100mbit的5秒流量(因此流传输了60MB的数据).当运行无类别时,正如预期的那样都在10秒内完成(两者共享链接,因此时间平均分配). 使用此QoS设置,优先服务在5秒内完成,而低优先级服务在10中完成(好像低优先级等待高优先级首先完成),我认为这是您想要的. (编辑:开发网_开封站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |