.TH TC 8 "August 2011" "iproute2" "Linux"
.SH NAME
choke \- choose and keep scheduler
.SH SYNOPSIS
.B tc qdisc ... choke
.B limit
packets
.B min
packets
.B max
packets
.B avpkt
bytes
.B burst
packets
.B [ ecn ] [ bandwidth
rate
.B ] probability
chance

.SH DESCRIPTION

CHOKe (CHOose and Keep for responsive flows, CHOose and Kill for unresponsive flows)
is a classless qdisc designed to both identify and penalize flows that monopolize the
queue.  CHOKe is a variation of RED, and the configuration is similar to RED.

.SH ALGORITHM
Once the queue hits a certain average length, a random packet is drawn from the
queue.  If both the to-be-queued and the drawn packet belong to the same flow,
both packets are dropped.  Otherwise, if the queue length is still below the maximum length,
the new packet has a configurable chance of being marked (which may mean dropped).
If the queue length exceeds
.BR max ,
the new packet will always be marked (or dropped).
If the queue length exceeds
.BR limit ,
the new packet is always dropped.

The marking probability computation is the same as used by the RED qdisc.

.SH PARAMETERS
The parameters are the same as for RED, except that RED uses bytes whereas choke
counts packets. See
.BR tc-red (8)
for a description.

.SH SOURCE
.TP
o
R. Pan, B. Prabhakar, and K. Psounis, "CHOKe, A Stateless
Active Queue Management Scheme for Approximating Fair Bandwidth Allocation",
IEEE INFOCOM, 2000.
.TP
o
A. Tang, J. Wang, S. Low, "Understanding CHOKe: Throughput and Spatial
Characteristics", IEEE/ACM Transactions on Networking, 2004

.SH SEE ALSO
.BR tc (8),
.BR tc-red (8)

.SH AUTHOR
sched_choke was contributed by Stephen Hemminger.
