Skip to content

Commit

Permalink
pipelimit: docs - more details about timer interval and limit values
Browse files Browse the repository at this point in the history
  • Loading branch information
miconda committed Jan 13, 2018
1 parent 1880f1f commit 93cfd4e
Showing 1 changed file with 18 additions and 12 deletions.
30 changes: 18 additions & 12 deletions src/modules/pipelimit/doc/pipelimit_admin.xml
Expand Up @@ -20,7 +20,7 @@
</para>
<para>
The module defines in an abstract mode the notion of 'pipe',
which can be a link to an IP address, to a network or a trunk.
which can be a reference to an IP address, to a network or a trunk.
The associtiation of traffic to a pipe is done in the config file,
therefore, a pipe could represent SIP traffic coming from a user or
the flow of specific SIP requests such as INVITE or REGISTER.
Expand All @@ -29,7 +29,8 @@
Pipelimit started from ratelimit module, adding support for definition
of pipes limits in database and dynamic names. Complexity of keeping
everything in a module and make it dual mode functional resulted in a
new module which is focused on just traffic shaping policies.
new module which is focused on just traffic shaping policies, the
implementation of queues was discarded.
</para>
<section>
<title>Algorithms</title>
Expand All @@ -45,7 +46,8 @@
This is a trivial algorithm that imposes some risks when used in
conjunction with long timer intervals. At the start of each interval an
internal counter is reset and incremented for each incoming message.
Once the counter hits the configured limit pl_check returns an error.
Once the counter hits the configured limit pl_check() returns false
(negative value).
</para>
<para>
<emphasis>Random Early Detection Algorithm (RED)</emphasis>
Expand All @@ -68,8 +70,8 @@
This algorithm relies on information provided by network interfaces.
The total amount of bytes waiting to be consumed on all the network
interfaces is retrieved once every timer_interval seconds. If the
returned amount exceeds the limit specified in the modparam, pl_check
returns an error.
returned amount exceeds the limit specified in the modparam, pl_check()
returns false (negative value).
</para>
<para>
<emphasis>Feedback Algorithm (FEEDBACK)</emphasis>
Expand Down Expand Up @@ -252,12 +254,14 @@ modparam("pipelimit", "plp_algorithm_column", "name")
<section id="pipelimit.p.timer_interval">
<title><varname>timer_interval</varname> (integer)</title>
<para>
The initial length of a timer interval in seconds. All amounts of
messages have to be divided by this timer to get a messages per second
value.
The length of the timer interval in seconds. Counted messages are reset
each timer_interval, therefore the amounts of messages have to be divided
by this timer_interval value to get the messages per second value. For
example, if you want to allow an average of 10 messages per second with
a timer inteval of 10 seconds, then the limit value has to be 100.
</para>
<para>
IMPORTANT: A too small value may lead to performance penalties due to
Note: A too small value may lead to performance penalties due to
timer process overloading.
</para>
<para>
Expand Down Expand Up @@ -347,8 +351,9 @@ modparam("pipelimit", "reply_reason", "Limiting")
</para>
<para>
If algorithm and limit are provided, the function attempts to create a
new pipe of one with that name doesn't exit. If it exists, no changes
to algorithm and limit are done. Algorithm is case sensitive.
new pipe if one with that name doesn't exit. If it exists, no changes
to algorithm is done and the pipe limit is set to the 'limit' parameter
value, if this is greater than 0. Algorithm is case sensitive.
</para>
<para>
The pipe name can be provided via a pseudo variabile.
Expand All @@ -372,7 +377,8 @@ modparam("pipelimit", "reply_reason", "Limiting")
readme of ratelimit module for details on each algorithm.
</para></listitem>
<listitem><para>
<emphasis>limit</emphasis> - the integer or pseudovariable with the limit value.
<emphasis>limit</emphasis> - the integer or pseudovariable with the limit value
per timer_interval.
</para></listitem>
</itemizedlist>
<para>
Expand Down

0 comments on commit 93cfd4e

Please sign in to comment.