A queuing model used for Packet Scheduling in which Packets are classified into priority classes upon arrival in the queue.

Such classification could be to give packets with network management information or real-time voice-over-IP content higher priority than other user traffic.

Each priority class has its own queue. The packets chosen to be transmitted will be the ones that belong to the highest priority class that has a non-empty queue. Choices among packets in the same priority class is typically done in a FIFO manner.

If implemented with a non-preemptive priority queuing discipline, then the transmission of a packet is not interrupted once it starts, even if a higher-priority packet is arriving while it is being transmitted.

Examples

Here packet 1,3, and 4 belong to high-priority class (dark blue) and packet 2 and 5 belong to the low-priority class (light blue).

Here we see that we are using non-preemptive priority discipline, since packet 2 keeps being transmitted even though the higher-priority packet 4 arrives while it is being transmitted.