The third-generation Ethernet adapter cards and platforms use payload-based WRED rather than buffer-based WRED (see WRED MinThreshold and MaxThreshold Computation). Payload-based WRED does not count the unused overhead space (empty space in the buffer) when making discard decisions, whereas buffer-based WRED counts the unused overhead space. Payload-based WRED is also referred to as byte-based WRED.
When a queue on an adapter card that uses payload-based WRED reaches its maximum fill (that is, the total byte count exceeds the configured maximum threshold), tail drop begins and operates in the same way as it does on any other adapter card or platform.
With payload-based WRED, the discard decision is based on the number of bytes in the queue instead of the number of buffers in the queue. For example, to accumulate 512 bytes of payload in a queue will take four buffers if the frame size is 128 bytes, but will take one buffer if the frame size is 512 bytes or more. Basing discards on bytes rather than buffers improves the efficient use of queues. In either case, byte- or buffer-based WRED, random discards begin at the minimum threshold (minT) point.
For example, assume a queue has MBS set to 512 kilobytes (converts to 1000 buffers), minT (start-avg) is set to 10% (100 buffers), and maxT (max-avg) is set to 80% (800 buffers). Table: Payload-Based WRED: Discard and Tail Drop Start shows when discards and tail drop start when payload-based WRED is used.
Frame Size |
Discards Start |
Tail Drop Starts |
---|---|---|
128 bytes |
400 buffers in the queue (100 x 4) |
3200 buffers in the queue (800 x 4) |
512 bytes |
100 buffers in the queue |
800 buffers in the queue |
1024 bytes |
100 buffers in the queue |
800 buffers in the queue |
For tail drop, if the high-priority-only threshold is set to 10%:
when any frame size is greater than or equal to 512 bytes, tail drop starts after 900 buffers are in use for low-priority traffic
If an adapter card or platform other than a third-generation adapter card or platform is used in the previous example (that is, an adapter card or platform with buffer-based WRED), both WRED and tail drop start after 100 buffers are consumed, because both 128-byte and 512-byte frames fill one buffer (512 bytes).
Since tail drop (which is buffer-based) and WRED (which is payload-based) operate differently, it is not recommended that tail drop and WRED be used in the same queue.