Man Linux: Main Page and Category List


       pfifo - Packet limited First In, First Out queue

       bfifo - Byte limited First In, First Out queue


       tc qdisc ... add pfifo [ limit packets ]

       tc qdisc ... add bfifo [ limit bytes ]


       The  pfifo  and  bfifo qdiscs are unadorned First In, First Out queues.
       They are the simplest queues possible and therefore have  no  overhead.
       pfifo  constrains the queue size as measured in packets.  bfifo does so
       as measured in bytes.

       Like all non-default qdiscs, they maintain statistics. This might be  a
       reason to prefer pfifo or bfifo over the default.


       A  list  of  packets  is  maintained, when a packet is enqueued it gets
       inserted at the tail of a list. When a packet needs to be sent  out  to
       the network, it is taken from the head of the list.

       If  the  list  is  too long, no further packets are allowed on. This is
       called ’tail drop’.


       limit  Maximum queue size. Specified in bytes for bfifo, in packets for
              pfifo.  For  pfifo,  defaults  to  the  interface txqueuelen, as
              specified with ifconfig(8) or ip(8).

              For bfifo, it defaults  to  the  txqueuelen  multiplied  by  the
              interface MTU.


       The  output  of tc -s qdisc ls contains the limit, either in packets or
       in bytes, and the number of bytes and packets actually sent. An  unsent
       and  dropped  packet  only appears between braces and is not counted as

       In this example, the queue length is 100 packets, 45894 bytes were sent
       over 681 packets.  No packets were dropped, and as the pfifo queue does
       not slow down packets, there were also no overlimits:

       # tc -s qdisc ls dev eth0
       qdisc pfifo 8001: dev eth0 limit 100p
        Sent 45894 bytes 681 pkts (dropped 0, overlimits 0)

       If a backlog occurs, this is displayed as well.




       Alexey N. Kuznetsov, <>

       This manpage maintained by bert hubert <>