• Eric Dumazet's avatar
    pkt_sched: fq: Fair Queue packet scheduler · bc113e46
    Eric Dumazet authored
    Support for FQ packet scheduler
    
    $ tc qd add dev eth0 root fq help
    Usage: ... fq [ limit PACKETS ] [ flow_limit PACKETS ]
                  [ quantum BYTES ] [ initial_quantum BYTES ]
                  [ maxrate RATE  ] [ buckets NUMBER ]
                  [ [no]pacing ]
    
    $ tc -s -d qd
    qdisc fq 8002: dev eth0 root refcnt 32 limit 10000p flow_limit 100p
    buckets 256 quantum 3028 initial_quantum 15140
     Sent 216532416 bytes 148395 pkt (dropped 0, overlimits 0 requeues 14)
     backlog 0b 0p requeues 14
      511 flows (511 inactive, 0 throttled)
      110 gc, 0 highprio, 0 retrans, 1143 throttled, 0 flows_plimit
    
    limit	: max number of packets on whole Qdisc (default 10000)
    
    flow_limit : max number of packets per flow (default 100)
    
    quantum : the max deficit per RR round (default is 2 MTU)
    
    initial_quantum : initial credit for new flows (default is 10 MTU)
    
    maxrate : max per flow rate (default : unlimited)
    
    buckets : number of RB trees (default : 1024) in hash table.
                   (consumes 8 bytes per bucket)
    
    [no]pacing : disable/enable pacing (default is enable)
    
    Usage :
    
    tc qdisc add dev $ETH root fq
    
    tc qdisc del dev $ETH root 2>/dev/null
    tc qdisc add dev $ETH root handle 1: mq
    for i in `seq 1 4`
    do
      tc qdisc add dev $ETH parent 1:$i est 1sec 4sec fq
    done
    Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
    bc113e46
Makefile 3.67 KB