from small one page howto to huge articles all in one place
 

search text in:





Poll
Which kernel version do you use?





poll results

Last additions:
using iotop to find disk usage hogs

using iotop to find disk usage hogs

words:

887

views:

195651

userrating:

average rating: 1.7 (102 votes) (1=very good 6=terrible)


May 25th. 2007:
Words

486

Views

252057

why adblockers are bad


Workaround and fixes for the current Core Dump Handling vulnerability affected kernels

Workaround and fixes for the current Core Dump Handling vulnerability affected kernels

words:

161

views:

140921

userrating:

average rating: 1.4 (42 votes) (1=very good 6=terrible)


April, 26th. 2006:

Druckversion
You are here: manpages





PIE

Section: Linux (8)
Updated: 16 January 2014
Index Return to Main Contents
 

NAME

PIE - Proportional Integral controller-Enhanced AQM algorithm  

SYNOPSIS

tc qdisc ... pie [ limit PACKETS ] [ target TIME ] [ tupdate TIME ] [ alpha int ] [ beta int ] [ ecn | noecn ] [ bytemode | nobytemode ]

 

DESCRIPTION

Proportional Integral controller-Enhanced (PIE) is a control theoretic active queue management scheme. It is based on the proportional integral controller but aims to control delay. The main design goals are
 o Low latency control
 o High link utilization
 o Simple implementation
 o Guaranteed stability and fast responsiveness

 

ALGORITHM

PIE is designed to control delay effectively. First, an average dequeue rate is estimated based on the standing queue. The rate is used to calculate the current delay. Then, on a periodic basis, the delay is used to calculate the dropping probabilty. Finally, on arrival, a packet is dropped (or marked) based on this probability.

PIE makes adjustments to the probability based on the trend of the delay i.e. whether it is going up or down.The delay converges quickly to the target value specified.

alpha and beta are statically chosen parameters chosen to control the drop probability growth and are determined through control theoretic approaches. alpha determines how the deviation between the current and target latency changes probability. beta exerts additional adjustments depending on the latency trend.

The drop probabilty is used to mark packets in ecn mode. However, as in RED, beyond 10% packets are dropped based on this probability. The bytemode is used to drop packets proportional to the packet size.

Additional details can be found in the paper cited below.

 

PARAMETERS

 

limit

limit on the queue size in packets. Incoming packets are dropped when this limit is reached. Default is 1000 packets.

 

target

is the expected queue delay. The default target delay is 20ms.

 

tupdate

is the frequency at which the system drop probability is calculated. The default is 30ms.

 

alpha

 

beta

alpha and beta are parameters chosen to control the drop probability. These should be in the range between 0 and 32.

 

ecn | noecn

is used to mark packets instead of dropping ecn to turn on ecn mode, noecn to turn off ecn mode. By default, ecn is turned off.

 

bytemode | nobytemode

is used to scale drop probability proportional to packet size bytemode to turn on bytemode, nobytemode to turn off bytemode. By default, bytemode is turned off.

 

EXAMPLES


 # tc qdisc add dev eth0 root pie
 # tc -s qdisc show
   qdisc pie 8034: dev eth0 root refcnt 2 limit 200p target 19000us tupdate 29000us alpha 2 beta 20
   Sent 7443524 bytes 7204 pkt (dropped 900, overlimits 0 requeues 0)
   backlog 38998b 37p requeues 0
   prob 0.123384 delay 25000us avg_dq_rate 1464840
   pkts_in 7241 overlimit 900 dropped 0 maxq 186 ecn_mark 0


 # tc qdisc add dev eth0 root pie limit 100 target 20ms tupdate 30ms ecn
 # tc -s qdisc show
   qdisc pie 8036: dev eth0 root refcnt 2 limit 200p target 19000 tupdate 29000 alpha 2 beta 20 ecn
   Sent 2491922 bytes 2507 pkt (dropped 214, overlimits 0 requeues 0)
   backlog 33728b 32p requeues 0
   prob 0.102262 delay 24000us avg_dq_rate 1464840
   pkts_in 2468 overlimit 214 dropped 0 maxq 192 ecn_mark 71


 # tc qdisc add dev eth0 root pie limit 100 target 50ms tupdate 30ms bytemode
 # tc -s qdisc show
   qdisc pie 8036: dev eth0 root refcnt 2 limit 200p target 19000 tupdate 29000 alpha 2 beta 20 ecn
   Sent 2491922 bytes 2507 pkt (dropped 214, overlimits 0 requeues 0)
   backlog 33728b 32p requeues 0
   prob 0.102262 delay 24000us avg_dq_rate 1464840
   pkts_in 2468 overlimit 214 dropped 0 maxq 192 ecn_mark 71

 

SEE ALSO

tc(8), tc-codel(8) tc-red(8)

 

SOURCES


 o IETF draft submission is at http://tools.ietf.org/html/draft-pan-tsvwg-pie-00
 o IEEE  Conference on High Performance Switching and Routing 2013 : "PIE: A Lightweight Control Scheme to Address the Bufferbloat Problem"

 

AUTHORS

PIE was implemented by Vijay Subramanian and Mythili Prabhu, also the authors of this man page. Please report bugs and corrections to the Linux networking development mailing list at <netdev@vger.kernel.org>.


 

Index

NAME
SYNOPSIS
DESCRIPTION
ALGORITHM
PARAMETERS
limit
target
tupdate
alpha
beta
ecn | noecn
bytemode | nobytemode
EXAMPLES
SEE ALSO
SOURCES
AUTHORS





Support us on Content Nation
rdf newsfeed | rss newsfeed | Atom newsfeed
- Powered by LeopardCMS - Running on Gentoo -
Copyright 2004-2020 Sascha Nitsch Unternehmensberatung GmbH
Valid XHTML1.1 : Valid CSS : buttonmaker
- Level Triple-A Conformance to Web Content Accessibility Guidelines 1.0 -
- Copyright and legal notices -
Time to create this page: 17.4 ms