Weighted Fair Queuing (WFQ)
Weighted Fair Queuing or WFQ is a QoS queuing technique that provides traffic prioritization by automatically managing individual traffic streams without the need for predefined Access Lists.
WFQ sessions are categorized into two types: high-bandwidth and low-bandwidth. Low-bandwidth traffic is given effective priority over high-bandwidth traffic, while high-bandwidth traffic shares transmission resources proportionally based on assigned weights.
When WFQ is enabled on an interface, new packets for high-bandwidth streams are dropped if the configured or default congestion threshold is reached. In contrast, low-bandwidth conversations, including control message exchanges, are allowed to continue queuing data. As a result, the fair queue may occasionally exceed its configured threshold.
Standard WFQ classifies packets by flow, grouping packets with the same source and destination IP addresses, and source and destination TCP or UDP ports into the same flow. WFQ then allocates an equal share of bandwidth to each flow. This flow-based approach, also known as "fair queuing," ensures equal weighting across all flows.
See Class Based Weighted Fair Queuing for a more advanced queuing technique based on WFQ. Also, see WFQ and CBWFQ Comparison for a comparison of these two queuing techniques.