mirror of
https://gitlab.com/shorewall/code.git
synced 2024-12-16 11:20:53 +01:00
da0f2ba5b7
git-svn-id: https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk@8611 fbd18981-670d-0410-9b5c-8dc0c1a9a2bb
225 lines
8.0 KiB
XML
225 lines
8.0 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<refentry>
|
|
<refmeta>
|
|
<refentrytitle>shorewall-tcdevices</refentrytitle>
|
|
|
|
<manvolnum>5</manvolnum>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>tcdevices</refname>
|
|
|
|
<refpurpose>Shorewall Traffic Shaping Devices file</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<cmdsynopsis>
|
|
<command>/etc/shorewall/tcdevices</command>
|
|
</cmdsynopsis>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
|
|
<para>Entries in this file define the bandwidth for interfaces on which
|
|
you want traffic shaping to be enabled.</para>
|
|
|
|
<para>If you do not plan to use traffic shaping for a device, don't put it
|
|
in here as it limits the troughput of that device to the limits you set
|
|
here.</para>
|
|
|
|
<para>A note on the <emphasis>bandwidth</emphasis> definitions used in
|
|
this file:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>don't use a space between the integer value and the unit: 30kbit
|
|
is valid while 30 kbit is not.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>you can use one of the following units:</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><emphasis role="bold">kpbs</emphasis></term>
|
|
|
|
<listitem>
|
|
<para>Kilobytes per second.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><emphasis role="bold">mbps</emphasis></term>
|
|
|
|
<listitem>
|
|
<para>Megabytes per second.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><emphasis role="bold">kbit</emphasis></term>
|
|
|
|
<listitem>
|
|
<para>Kilobits per second.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><emphasis role="bold">mbit</emphasis></term>
|
|
|
|
<listitem>
|
|
<para>Megabits per second.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><emphasis role="bold">bps</emphasis> or <emphasis
|
|
role="bold">number</emphasis></term>
|
|
|
|
<listitem>
|
|
<para>Bytes per second.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Only whole integers are allowed.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>The columns in the file are as follows.</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><emphasis role="bold">INTERFACE</emphasis> -
|
|
[<emphasis>number</emphasis>:]<emphasis>interface</emphasis></term>
|
|
|
|
<listitem>
|
|
<para>Name of <emphasis>interface</emphasis>. Each interface may be
|
|
listed only once in this file. You may NOT specify the name of an
|
|
alias (e.g., eth0:0) here; see <ulink
|
|
url="http://www.shorewall.net/FAQ.htm#faq18">http://www.shorewall.net/FAQ.htm#faq18</ulink></para>
|
|
|
|
<para>You may NOT specify wildcards here, e.g. if you have multiple
|
|
ppp interfaces, you need to put them all in here!</para>
|
|
|
|
<para>If the device doesn't exist, a warning message will be issued
|
|
during "shorewall [re]start" and "shorewall refresh" and traffic
|
|
shaping configuration will be skipped for that device.</para>
|
|
|
|
<para>Shorewall assigns a sequential <firstterm>interface
|
|
number</firstterm> to each interface (the first entry in the file is
|
|
interface 1, the second is interface 2 and so on) Beginning with
|
|
Shorewall-perl 4.1.6, you can explicitly specify the interface
|
|
number by prefixing the interface name with the number and a colon
|
|
(":"). Example: 1:eth0.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><emphasis role="bold">IN-BANDWIDTH</emphasis> -
|
|
<emphasis>bandwidth</emphasis></term>
|
|
|
|
<listitem>
|
|
<para>The incoming <emphasis>bandwidth</emphasis> of that interface.
|
|
Please note that you are not able to do traffic shaping on incoming
|
|
traffic, as the traffic is already received before you could do so.
|
|
But this allows you to define the maximum traffic allowed for this
|
|
interface in total, if the rate is exceeded, the packets are
|
|
dropped. You want this mainly if you have a DSL or Cable connection
|
|
to avoid queuing at your providers side.</para>
|
|
|
|
<para>If you don't want any traffic to be dropped, set this to a
|
|
value to zero in which case Shorewall will not create an ingress
|
|
qdisc.Must be set to zero if the REDIRECTED INTERFACES column is
|
|
non-empty.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><emphasis role="bold">OUT-BANDWIDTH</emphasis> -
|
|
<emphasis>bandwidth</emphasis></term>
|
|
|
|
<listitem>
|
|
<para>The outgoing <emphasis>bandwidth</emphasis> of that interface.
|
|
This is the maximum speed your connection can handle. It is also the
|
|
speed you can refer as "full" if you define the tc classes in <ulink
|
|
url="shorewall-tcclasses.html">shorewall-tcclasses</ulink>(5).
|
|
Outgoing traffic above this rate will be dropped.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><emphasis role="bold">OPTIONS</emphasis> - {<emphasis
|
|
role="bold">-</emphasis>|<emphasis
|
|
role="bold">classify</emphasis>}</term>
|
|
|
|
<listitem>
|
|
<para>classify ― When specified, Shorewall will not generate tc or
|
|
Netfilter rules to classify traffic based on packet marks. You must
|
|
do all classification using CLASSIFY rules in <ulink
|
|
url="shorewall-tcrules.html">shorewall-tcrules</ulink>(5).</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><emphasis role="bold">REDIRECTED INTERFACES</emphasis> -
|
|
[<emphasis>interface</emphasis>[,<emphasis>interface</emphasis>]...]</term>
|
|
|
|
<listitem>
|
|
<para>Added in Shorewall-perl 4.1.6. May only be specified if the
|
|
interface in the INTERFACE column is an Intermediate Frame Block
|
|
(IFB) device. Causes packets that enter each listed interface to be
|
|
passed through the egress filters defined for this device, thus
|
|
providing a form of incoming traffic shaping. When this column is
|
|
non-empty, the <emphasis role="bold">classify</emphasis> option is
|
|
assumed.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Examples</title>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term>Example 1:</term>
|
|
|
|
<listitem>
|
|
<para>Suppose you are using PPP over Ethernet (DSL) and ppp0 is the
|
|
interface for this. The device has an outgoing bandwidth of 500kbit
|
|
and an incoming bandwidth of 6000kbit</para>
|
|
|
|
<programlisting> #INTERFACE IN-BANDWIDTH OUT-BANDWIDTH OPTIONS REDIRECTED
|
|
# INTERFACES
|
|
1:ppp0 6000kbit 500kbit</programlisting>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>FILES</title>
|
|
|
|
<para>/etc/shorewall/tcdevices</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>See ALSO</title>
|
|
|
|
<para><ulink
|
|
url="http://shorewall.net/traffic_shaping.htm">http://shorewall.net/traffic_shaping.htm</ulink></para>
|
|
|
|
<para>shorewall(8), shorewall-accounting(5), shorewall-actions(5),
|
|
shorewall-blacklist(5), shorewall-hosts(5), shorewall-interfaces(5),
|
|
shorewall-ipsec(5), shorewall-maclist(5), shorewall-masq(5),
|
|
shorewall-nat(5), shorewall-netmap(5), shorewall-params(5),
|
|
shorewall-policy(5), shorewall-providers(5), shorewall-proxyarp(5),
|
|
shorewall-route_rules(5), shorewall-routestopped(5), shorewall-rules(5),
|
|
shorewall.conf(5), shorewall-tcclasses(5), shorewall-tcrules(5),
|
|
shorewall-tos(5), shorewall-tunnels(5), shorewall-zones(5)</para>
|
|
</refsect1>
|
|
</refentry> |