Взвешенная справедливая очередь (F[fyoyuugx vhjgfy;lnfgx kcyjy;,)
Взвешенная справедливая очередь (англ. Weighted fair queuing, WFQ) — механизм планирования пакетных потоков данных с различными приоритетами. Его целью является регулировать использования одного канала передачи данных несколькими конкурирующими потоками. В данном случае под потоком понимается очередь пакетов данных.
Это обобщение алгоритма честных планировщиков (англ. Fair Queuing) (FQ). Оба планировщика имеют отдельные FIFO-очереди для каждого потока данных. Так, если канал со скоростью используется для потоков, то скорость обработки каждого из них будет при использовании честного планировщика. Честный планировщик с приоритетными коэффициентами позволяет регулировать долю каждого потока. Если имеется активных потоков, с приоритетами , то -й поток будет иметь скорость .
Теория
[править | править код]Каждому пришедшему пакету присваивается виртуальное время начала и конца обработки , где — это номер пакета, а i — номер потока. Время начала и конца вычисляются по следующим формулам:
- ,
где и — время прихода и длина пакета соответственно.
— виртуальная функция времени, которая определяется как , где j — все активные сессии, r — скорость j-го канала.
Пример
[править | править код]Пусть у нас есть три очереди: первые две с приоритетом 1 и третья имеет приоритет 2. С самого начала мы имеем 1 пакет в первой, два во второй и 5 в третьей. Пусть все пакеты одинакового размера.
0 | 1/4 | 1 | 0 | 1 | 2 | 0 | 1 | 5 | 0 | 1/2 |
1/4 | 1/4 | 1 | 0 | 1 | 2 | 0 | 1 | 4 | 0 | 1 |
1/2 | 1/4 | 1 | 0 | 1 | 2 | 0 | 1 | 3 | 0 | 1.5 |
3/4 | 1/4 | 1 | 0 | 1 | 1 | 0 | 1 | 3 | 0 | 1.5 |
1 | 1/3 | 0 | — | — | 1 | 1 | 2 | 3 | 1 | 1.5 |
1 1/3 | 1/3 | 0 | — | — | 1 | 1 | 2 | 2 | 1 | 2 |
1 2/3 | 1/3 | 0 | — | — | 1 | 1 | 2 | 1 | 1 | 2.5 |
1 2/3 | 1/3 | 0 | — | — | 0 | — | — | 1 | 1 | 2.5 |
Ссылки
[править | править код]- https://web.archive.org/web/20091230065403/http://www.sics.se/~ianm/WFQ/wfq_descrip/
- http://www.mathcs.emory.edu/~cheung/Courses/558/Syllabus/11-Fairness/WFQ.html
Для улучшения этой статьи желательно:
|
На эту статью не ссылаются другие статьи Википедии. |