networking - 队列为空后的加权循环
问题描述
在数据包的加权循环实现中,当队列为空时我该怎么办?示例:假设 4 个队列的权重分别为 10%、30%、20%、40%。现在假设 30% 的队列是空的 - 我应该将权重重新分配给其他队列吗?如果是,那么它应该如何重新分配给其他数据包?
(我需要一个以前在加权循环调度中在 linux 内核或其他平台中完成的实现)
解决方案
如果队列为空,重新分配权重的一种方法是在繁忙队列中保持公平。只需按照权重的比例将额外的带宽分配给其他队列。
示例:如果 30 为空,其他可以大致调整如下:
10 -> 14.3
20 -> 28.6
40 -> 57.1
推荐阅读
- android - 我在firebase上做循环和新的我没有从firebase/firestore接收数据尝试从我的keyValue获取数据
- sql - Access SQL - 是否可以按开关值分组?
- r - 在 kable 之后在 markdown 中重新设置粗体标题
- json - 运行 npm install 命令时 JSON 输入错误意外结束。此问题有什么解决办法吗?
- android - Android:在哪里安排工作?
- reactjs - 如何修复“反应:预期分配或函数调用,而是看到一个表达式”(状态分配)?
- google-maps - 自动完成以返回半径内的结果
- html - 可以在 HTML 元素上声明 CSS 伪类吗?
- mysql - 将根据搜索条件过滤的行从一个表复制到 MySQL 中的另一个表
- android - 如何修复 startKoin() 方法上的 NoSuchMethodError