I'm trying to understand the use of queue priorities. I understand that a queue with a strict-high priority can starve other queues. However the scenario I'm describing doesn't contain a strict-high queue.
Let's say if have three queues with priorities High, MediumHigh, and Low.
When the interface first starts forwarding traffic, the queues will be serviced one by one, each till it goes out-of-profile in the order High, MediumHigh, Low, High, MediumHigh, Low, High, MediumHigh, Low……..etc in a circular fashion (i.e. round robin). Since the queues are being serviced in a circular, round-robin fashion, their priorities become irrelevant, don't they? So what benefit does a 'medium high' priority queue have over a 'low' priority queue?
After some reading .. found the answer.
If a lower-priority queue is already transmitting a packet, a high priority queue needs to wait only for that queue to finish transmitting the packet before it is scheduled again. Thus, a higher priority queue can 'interrupt' the scheduler and break its sequential round robin processing of queues.
Juniper Business Use Only