Go to file
Eric Dumazet bc113e46a3 pkt_sched: fq: Fair Queue packet scheduler
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: Eric Dumazet <edumazet@google.com>
2013-09-20 09:43:40 -07:00
bridge iproute vxlan add support for fdb replace command 2013-08-04 11:56:54 -07:00
doc ip: Add label option to ip monitor 2013-08-19 08:57:24 -07:00
etc/iproute2 tc: add canid ematch to ematch_map 2012-11-30 08:27:58 -08:00
examples dhcp-client-script: don't use /tmp 2012-02-15 10:05:45 -08:00
genl Fix build when shared libraries are disabled 2013-03-13 08:29:59 -07:00
include Update to 3.11 net-next kernel headers 2013-09-03 08:46:40 -07:00
ip Merge branch 'master' into net-next-3.11 2013-09-03 08:45:27 -07:00
lib ip link: fix display of interface groups 2013-08-04 11:50:38 -07:00
man Merge branch 'master' into net-next-3.11 2013-09-03 08:45:27 -07:00
misc ss: add more TCP_INFO components 2013-06-25 13:33:07 -07:00
netem netem: fix installs of dist files 2010-07-31 19:31:04 -07:00
tc pkt_sched: fq: Fair Queue packet scheduler 2013-09-20 09:43:40 -07:00
testsuite Fix modes of test files 2007-09-05 12:00:01 +01:00
.gitignore Don't put configure files in /tmp 2012-02-15 10:03:39 -08:00
configure configure: restore old behaviour 2012-12-19 16:01:39 -08:00
COPYING Update address of FSF in license 2008-03-08 13:31:03 -08:00
Makefile Remove -Werror 2013-07-31 17:42:39 -07:00
README README: update mail address and download location 2013-01-18 09:54:58 -08:00
README.decnet Decnet documentation update 2005-06-13 18:47:56 +00:00
README.devel iproute2: fix minor typo in comments 2011-07-11 10:11:09 -07:00
README.distribution README cleanup's 2012-01-03 15:04:55 -08:00
README.iproute2+tc README cleanup's 2012-01-03 15:04:55 -08:00
README.lnstat Rename: misc/README.lnstat -> README.lnstat 2004-10-19 20:24:47 +00:00

This is a set of utilities for Linux networking.

Information:
    http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2

Download:
    http://www.kernel.org/pub/linux/utils/net/iproute2/

Repository:
    git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git

How to compile this.
--------------------
1. libdbm

arpd needs to have the db4 development libraries. For Debian
users this is the package with a name like libdb4.x-dev.
DBM_INCLUDE points to the directory with db_185.h which
is the include file used by arpd to get to the old format Berkeley
database routines.  Often this is in the db-devel package.

2. make

The makefile will automatically build a Config file which
contains whether or not ATM is available, etc.

3. To make documentation, cd to doc/ directory , then
   look at start of Makefile and set correct values for
   PAGESIZE=a4		, ie: a4 , letter ...	(string)
   PAGESPERPAGE=2	, ie: 1 , 2 ...		(numeric)
   and make there. It assumes, that latex, dvips and psnup
   are in your path.

4. This package includes matching sanitized kernel headers because
   the build environment may not have up to date versions. See Makefile
   if you have special requirements and need to point at different
   kernel include files.

Stephen Hemminger
stephen@networkplumber.org

Alexey Kuznetsov
kuznet@ms2.inr.ac.ru