# tc-choke(8) - man - phpman

[TC(8)](https://www.chedong.com/phpMan.php/man/TC/8/markdown)                                           Linux                                          [TC(8)](https://www.chedong.com/phpMan.php/man/TC/8/markdown)



## NAME
       choke - choose and keep scheduler

## SYNOPSIS
       **tc**  **qdisc** **...** **choke** **limit** packets **min** packets **max** packets **avpkt** bytes **burst** packets **[** **ecn** **]** **[**
       **bandwidth** rate **]** **probability** chance


## 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.


## 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  con‐
       figurable  chance of being marked (which may mean dropped).  If the queue length exceeds **max**,
       the new packet will always be marked (or dropped).  If the queue length  exceeds  **limit**,  the
       new packet is always dropped.

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


## PARAMETERS
       The parameters are the same as for RED, except that RED uses bytes whereas choke counts pack‐
       ets. See [**tc-red**(8)](https://www.chedong.com/phpMan.php/man/tc-red/8/markdown) for a description.


## SOURCE
       o      R. Pan, B. Prabhakar, and K. Psounis, "CHOKe,  A  Stateless  Active  Queue  Management
              Scheme for Approximating Fair Bandwidth Allocation", IEEE INFOCOM, 2000.

       o      A.  Tang,  J.  Wang, S. Low, "Understanding CHOKe: Throughput and Spatial Characteris‐
              tics", IEEE/ACM Transactions on Networking, 2004


## SEE ALSO
       [**tc**(8)](https://www.chedong.com/phpMan.php/man/tc/8/markdown), [**tc-red**(8)](https://www.chedong.com/phpMan.php/man/tc-red/8/markdown)


## AUTHOR
       sched_choke was contributed by Stephen Hemminger.



iproute2                                     August 2011                                       [TC(8)](https://www.chedong.com/phpMan.php/man/TC/8/markdown)
