Взвешенный круглый Робин после того, как очередь пуста - PullRequest
0 голосов
/ 05 июня 2018

В реализации взвешенного циклического перебора пакетов, что мне делать, когда очередь пуста?Пример: предположим, что 4 очереди имеют веса 10%, 30%, 20%, 40%.Теперь предположим, что очередь на 30% пуста. Должен ли я перераспределить вес на другие очереди?Если да, то как его следует перераспределить в другие пакеты?

(мне нужна реализация, которая выполняется в ядрах Linux или других платформах, ранее в планировании Weighted Round Robin)

1 Ответ

0 голосов
/ 05 июня 2018

Если очередь пуста, одним из способов перераспределения весов является поддержание справедливости среди занятых очередей.Просто дайте дополнительную пропускную способность другим очередям пропорционально их весам.

Пример: если 30 пусто, другие могут быть приблизительно откорректированы следующим образом:

10 -> 14,3

20 -> 28,6

40 -> 57,1

...