.TH TC 8 "January 2010" "iproute2" "Linux"
.SH NAME
drr \- deficit round robin scheduler
.SH SYNOPSIS
.B tc qdisc ... add drr
.B [ quantum
bytes
.B ]

.SH DESCRIPTION

The Deficit Round Robin Scheduler is a classful queuing discipline as
a more flexible replacement for Stochastic Fairness Queuing.

Unlike SFQ, there are no built-in queues \-\- you need to add classes
and then set up filters to classify packets accordingly.
This can be useful e.g. for using RED qdiscs with different settings for particular
traffic. There is no default class \-\- if a packet cannot be classified,
it is dropped.

.SH ALGORITHM
Each class is assigned a deficit counter, initialized to
.B quantum.

DRR maintains an (internal) ''active'' list of classes whose qdiscs are
non-empty. This list is used for dequeuing. A packet is dequeued from
the class at the head of the list if the packet size is smaller or equal
to the deficit counter. If the counter is too small, it is increased by
.B quantum
and the scheduler moves on to the next class in the active list.


.SH PARAMETERS
.TP
quantum
Amount of bytes a flow is allowed to dequeue before the scheduler moves to
the next class. Defaults to the MTU of the interface. The minimum value is 1.

.SH EXAMPLE & USAGE

To attach to device eth0, using the interface MTU as its quantum:
.P
# tc qdisc add dev eth0 handle 1 root drr
.P
Adding two classes:
.P
# tc class add dev eth0 parent 1: classid 1:1 drr
.br
# tc class add dev eth0 parent 1: classid 1:2 drr
.P
You also need to add at least one filter to classify packets.
.P
# tc filter add dev eth0 protocol .. classid 1:1
.P

Like SFQ, DRR is only useful when it owns the queue \-\- it is a pure scheduler and does
not delay packets. Attaching non-work-conserving qdiscs like tbf to it does not make
sense \-\- other qdiscs in the active list will also become inactive until the dequeue
operation succeeds. Embed DRR within another qdisc like HTB or HFSC to ensure it owns the queue.
.P
You can mimic SFQ behavior by assigning packets to the attached classes using the
flow filter:

.B tc qdisc add dev .. drr

.B for i in .. 1024;do
.br
.B "\ttc class add dev .. classid $handle:$(print %x $i)"
.br
.B "\ttc qdisc add dev .. fifo limit 16"
.br
.B done

.B tc filter add .. protocol ip .. $handle flow hash keys src,dst,proto,proto-src,proto-dst divisor 1024 perturb 10


.SH SOURCE
.TP
o
M. Shreedhar and George Varghese "Efficient Fair
Queuing using Deficit Round Robin", Proc. SIGCOMM 95.

.SH NOTES

This implementation does not drop packets from the longest queue on overrun,
as limits are handled by the individual child qdiscs.

.SH SEE ALSO
.BR tc (8),
.BR tc-htb (8),
.BR tc-sfq (8)

.SH AUTHOR
sched_drr was written by Patrick McHardy.
