Skip to content
Eddie Kohler edited this page Oct 17, 2017 · 3 revisions

CoDel Element Documentation

NAME

CoDel — Click element; drops packets according to CoDel

SYNOPSIS

CoDel([, KEYWORDS])

Ports: 1 input, 1 output
Processing: pull

DESCRIPTION

Implements CoDel (Controlled Delay) active queue management mechanism.

A CoDel element is associated with one or more Storage elements (usually Queues). It tracks the sojourn time of every packet in the queue, and increases the frequency of dropping packets until the queue is controlled, i.e. the sojourn time goes below the threshold. The sojourn time is tracked based on the "first timestamp" annotation, which must be set using the SetTimestamp element just before the packet is enqueued. Later, CoDel overwrites this annotation with the sojourn time experienced by the corresponding packet for (possible) statistical use thereafter.

By default, the Queues are found with flow-based router context and only the upstream queues are searched. CoDel is a pull element.

Arguments are:

  • TARGET — Integer. Target sojourn time of the packet in the queue, default value is 5 ms.
  • INTERVAL — Integer. Sliding minimum window width, the default value is 100 ms.
  • QUEUES — This argument is a space-separated list of Storage element names. CoDel will use those elements' queue lengths, rather than any elements found via flow-based router context.

EXAMPLES

  ... -> SetTimestamp(FIRST true) -> Queue(200) -> CoDel(5, 100) -> ...

ELEMENT HANDLERS

  • target (read/write) — Returns or sets the TARGET configuration parameter.
  • interval (read/write) — Returns or sets the INTERVAL configuration parameter.
  • queues (read-only) — Returns the Queues associated with this CoDel element, listed one per line.
  • drops (read-only) — Returns the number of packets dropped so far.
  • stats (read-only) — Returns some human-readable statistics.

SEE ALSO

Queue, SetTimestamp

Kathleen Nichols and Van Jacobson. Controlling Queue Delay. ACM Queue, 2012, vol.10, no.5. http://queue.acm.org/detail.cfm?id=2209336

Appendix: CoDel Pseudocode. http://queue.acm.org/appendices/codel.html.

Generated by click-elem2man from ../elements/aqm/codel.hh:9 on 2017/10/17.

Clone this wiki locally