]>
Commit | Line | Data |
---|---|---|
09bba68c SH |
1 | .TH PBFIFO 8 "10 January 2002" "iproute2" "Linux" |
2 | .SH NAME | |
3 | pfifo \- Packet limited First In, First Out queue | |
4 | .P | |
5 | bfifo \- Byte limited First In, First Out queue | |
6 | ||
7 | .SH SYNOPSIS | |
8 | .B tc qdisc ... add pfifo | |
5699275b | 9 | .B [ limit |
09bba68c SH |
10 | packets |
11 | .B ] | |
12 | .P | |
13 | .B tc qdisc ... add bfifo | |
5699275b | 14 | .B [ limit |
09bba68c SH |
15 | bytes |
16 | .B ] | |
17 | ||
18 | .SH DESCRIPTION | |
19 | The pfifo and bfifo qdiscs are unadorned First In, First Out queues. They are the | |
5699275b | 20 | simplest queues possible and therefore have no overhead. |
09bba68c | 21 | .B pfifo |
5699275b | 22 | constrains the queue size as measured in packets. |
09bba68c SH |
23 | .B bfifo |
24 | does so as measured in bytes. | |
25 | ||
5699275b | 26 | Like all non-default qdiscs, they maintain statistics. This might be a reason to prefer |
09bba68c SH |
27 | pfifo or bfifo over the default. |
28 | ||
29 | .SH ALGORITHM | |
30 | A list of packets is maintained, when a packet is enqueued it gets inserted at the tail of | |
5699275b | 31 | a list. When a packet needs to be sent out to the network, it is taken from the head of the list. |
09bba68c SH |
32 | |
33 | If the list is too long, no further packets are allowed on. This is called 'tail drop'. | |
34 | ||
35 | .SH PARAMETERS | |
5699275b | 36 | .TP |
09bba68c | 37 | limit |
5699275b SH |
38 | Maximum queue size. Specified in bytes for bfifo, in packets for pfifo. For pfifo, defaults |
39 | to the interface txqueuelen, as specified with | |
09bba68c SH |
40 | .BR ifconfig (8) |
41 | or | |
42 | .BR ip (8). | |
524de027 | 43 | The range for this parameter is [0, UINT32_MAX]. |
09bba68c SH |
44 | |
45 | For bfifo, it defaults to the txqueuelen multiplied by the interface MTU. | |
524de027 LW |
46 | The range for this parameter is [0, UINT32_MAX] bytes. |
47 | ||
48 | Note: The link layer header was considered when counting packets length. | |
09bba68c SH |
49 | |
50 | .SH OUTPUT | |
5699275b | 51 | The output of |
09bba68c | 52 | .B tc -s qdisc ls |
5699275b SH |
53 | contains the limit, either in packets or in bytes, and the number of bytes |
54 | and packets actually sent. An unsent and dropped packet only appears between braces | |
09bba68c SH |
55 | and is not counted as 'Sent'. |
56 | ||
5699275b | 57 | In this example, the queue length is 100 packets, 45894 bytes were sent over 681 packets. |
09bba68c SH |
58 | No packets were dropped, and as the pfifo queue does not slow down packets, there were also no |
59 | overlimits: | |
60 | .P | |
61 | .nf | |
5699275b | 62 | # tc -s qdisc ls dev eth0 |
09bba68c | 63 | qdisc pfifo 8001: dev eth0 limit 100p |
5699275b | 64 | Sent 45894 bytes 681 pkts (dropped 0, overlimits 0) |
09bba68c SH |
65 | .fi |
66 | ||
67 | If a backlog occurs, this is displayed as well. | |
68 | .SH SEE ALSO | |
69 | .BR tc (8) | |
70 | ||
71 | .SH AUTHORS | |
72 | Alexey N. Kuznetsov, <kuznet@ms2.inr.ac.ru> | |
73 | ||
74 | This manpage maintained by bert hubert <ahu@ds9a.nl> |