As mentioned in a previous tip, congestion management is a QoS component that prioritizes traffic using one of the many queuing methods based on the traffic's classification or characteristics. The queuing methods are used to control congestion as it transpires. Due to the special network performance requirements that are essential to transmitting voice traffic across a data infrastructure, congestion management techniques carve out highly available, low delay bandwidth across the data network. This tip provides the details of the basic queuing methods available today.
First In First Out (FIFO). This method actually has no queuing algorithm. Packets of traffic are transmitted in the order that that they arrive.
Priority Queuing (PQ). This method offers four queues (high, medium, normal, and low) which packets can be assigned based on their classification as they enter a device configured with PQ. When packets are to be transmitted, PQ requires all packets in the high queue are serviced before the medium packets can be serviced. Once the medium queue is empty, this algorithm will again start at the high queue to ensure there are no packets present before inspecting packets again in the medium queue. If the medium queue is empty, PQ will proceed then to the normal queue. Once this queue is empty, it will again return to the high, then medium, then normal, and then low queue. Although PQ provides a fast response time and superior treatment to the high queue, it introduces a high amount of overhead that is detrimental to high-speed links. In addition, traffic designated for the low queue might not get transmitted due to the strict priority policy.
Custom Queuing (CQ). This method offers sixteen queues which packets can be assigned based on their classification as they enter a device. Each queue has a designated byte count to be serviced before accessing the next queue. Once the byte limit is reached for a queue, the subsequent queues are serviced with their byte counts in a sequential or round robin fashion. This was intended to eliminate protocol starvation. Although the available bandwidth is divided among the configured queues, unused bandwidth designated for certain traffic types can be dynamically granted to other traffic types. Like PQ, custom queuing introduces a high amount of overhead that is detrimental on high-speed links. In addition, CQ and PQ cannot adapt to changes within the network due to their dependence on their respective configurations within network components.
Weighted Fair Queuing (WFQ). This method is able to dynamically assign a percentage of bandwidth based on the number of traffic flows and their respective weight or IP Precedence value within the ToS field of an IP header. Because all traffic is dynamically allocated a percentage of the traffic, even high priority traffic (voice) could experience unacceptable latency if the number of queues grew to a large number. However, for smaller bandwidth interfaces (router serial interfaces at or under T1 speed), this is an ideal queuing method to provide consistent response times by adapting to heavy or light network traffic.
Unfortunately, none of the described queuing methods meet the congestion management requirements for Voice over IP traffic. However, hybrid queuing methods were developed that combine some of the features of the methods explained above. These hybrid queuing technologies with their VoIP capabilities will be discussed in the next tip.
Richard Parsons (CCIE#5719) is a Principal Architect for SBC Communications with a focus on network planning, design, and implementation. He has built a solid foundation in networking concepts, advanced troubleshooting, and monitoring in areas such as optical, ATM, VoIP, routed, routing, and storage infrastructures. Rich resides in Atlanta GA, and is a graduate of Clemson University. His background includes consulting positions at International Network Services, Lucent, and Callisma.