.TH TC 8 "August 2011" "iproute2" "Linux"
.SH NAME
choke \- choose and keep scheduler
.SH SYNOPSIS
.B tc qdisc ... choke
.B limit
bytes
.B min
bytes
.B max
bytes
.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 the same as 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
.B max
, the new packet will always be marked (or dropped).
If the queue length exceeds
.B 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, 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.
