Vyatta Network OS Documentation

Learn how to install, configure and operate the Vyatta NOS, which helps drive our virtual networking & physical platforms portfolio.

WRED algorithm

The weighted random early detection (WRED) algorithm is designed to prevent global TCP synchronization. You can configure the WRED algorithm to operate on profile queues.

The WRED algorithm is only designed for multiple streams of TCP traffic. For traffic of mixed UDP/TCP streams, the UDP streams will edge out the TCP streams.

The WRED algorithm drops random packets when the average queue length exceeds a defined threshold. The sender of the TCP stream detects the dropped packet and reduces its transmit credit window which in turn reduces the offered load.

Attributes
Figure 1. WRED random drop probability
Layer 1 1 2 3 4
  1. min-threshold

    If the average queue length value is below this threshold then the WRED algorithm will not randomly drop packets.

  2. max-threshold

    If the average queue length value is greater than this threshold then the WRED algorithm will drop all packets.

  3. 1/mark-probability
    The mark-probability attribute determines the gradient of the slope in the WRED probability graph.
  4. Random drops

    If the average queue length value is between the min-threshold and max-threshold values, then the WRED algorithm will drop a packet if a random selected number is less than the WRED probability value for the current average queue length value.

The filter-weight attribute controls how quickly, or how slowly, the average queue length will track the actual queue length.

Ways to configure the WRED algorithm on profile queues

On the software platforms, you can configure WRED at one of two different locations in the scheduling hierarchy:

  1. At the policy's traffic class level, so that all the profile queues assigned to a traffic class share the same configuration.
  2. At the individual profile queue level, so that each profile queue has its own individual WRED configuration.
Note: You cannot mix the two styles of WRED configuration in the same policy.

On hardware platforms you can only configure WRED at the individual profile queue level.

Note: If you configure WRED at the individual profile queue level, then you must use a dscp-group profile map.