Priority queuing is interesting in how it schedules packets, but isn’t very practical for real-world networks. The PQ scheduler has 4 queues: high, medium, normal and low. The PQ scheduler services those queues in that order. If there is a packet in a given queue, that packet is forwarded, and then the PQ schedulers starts all over again, going back to the top of queue hierarchy with the “high” queue. Consequently, if there’s a lot of traffic classified as “high”, the “high” queue can dominate all the other queues, filling the pipe. The lesser queues may endure “queue starvation” in the sense that they are starved of bandwidth because the PQ scheduler is constantly servicing the “high” queue.
PQ uses “tail-drop”, meaning that if a packet is classified as belonging to a particular queue, and that queue is full, the packet will be dropped. If you made it into the queue, you’ll stay in the queue, but those arriving at the tail-end will drop. PQ assigns default queue lengths of 20/high, 40/medium, 60/normal and 80/low.