| Summary: | Add info on setting up ATLQ | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Documentation | Reporter: | Brad Davis <so14k> | ||||
| Component: | Books & Articles | Assignee: | Simon L. B. Nielsen <simon> | ||||
| Status: | Closed FIXED | ||||||
| Severity: | Affects Only Me | ||||||
| Priority: | Normal | ||||||
| Version: | Latest | ||||||
| Hardware: | Any | ||||||
| OS: | Any | ||||||
| Attachments: |
|
||||||
|
Description
Brad Davis
2005-02-25 21:20:08 UTC
Hi Brad,
Just one small nit,
> + <para><literal>options ALTQ_CBQ</literal> enables Class Based
> + Queuing (CBQ). CBQ allows you to divide a connections's
s/connections's/connection's/
David Adam
zanchey@
Hi Brad,
This is extremely useful and I agree we need it in the docs, but
I have some comments on it.
--- doc-ori/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml Fri Feb 25 13:31:41 2005
+++ doc/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml Fri Feb 25 14:05:54 2005
@@ -198,7 +198,7 @@
</sect1>
<sect1 id="firewalls-pf">
- <title>The Packet Filter (PF) Firewall</title>
+ <title>The Packet Filter (PF) Firewall and ALTQ</title>
<indexterm>
<primary>firewall</primary>
@@ -211,9 +211,9 @@
contained <acronym>PF</acronym> as an integrated part of the
base system was &os; 5.3 in November 2004.
<acronym>PF</acronym> is a complete, fully featured firewall
- that contains <acronym>ALTQ</acronym> for bandwidth usage
- management in a way similar to what DUMMYNET provides in
- <acronym>IPFW</acronym>. The OpenBSD project does an
+ that contains <acronym>ALTQ</acronym> (Alternate Queuing) for
+ bandwidth usage management in a way similar to what DUMMYNET
+ provides in <acronym>IPFW</acronym>. The OpenBSD project does an
outstanding job of maintaining the PF users' guide that it will
not be made part of this handbook firewall section as that would
just be duplicated effort.</para>
Good, here is where we introduce what ALTQ stands for. Now, I
may be out of context, but what does it do? :)
@@ -356,6 +356,61 @@
enable the following option as well:</para>
<programlisting>gateway_enable="YES" # Enable as Lan gateway</programlisting>
+
+ </sect2>
+ <sect2>
+ <title>Enabling ALTQ</title>
+
+ <para>ALTQ is only avaliable by compiling the options into the
+ &os; Kernel.</para>
+
+ <para>ALTQ is not supported by all of the avaliable network card
+ drivers. Please see the &man.altq.4; manual page for a list of
+ drivers that are supported in your release of &os;.
Missing <para>, <acronym> tags here.
These two can probably be merged together, something like:
While <acronym>ALTQ</acronym> is a useful option ... explain why
... it is not yet supported by all network interface card
drivers. Please see the &man.altq.4; manual page for an up
to date list on supported drivers. To gain <acronym>ALTQ</acronym>
support, the following options must be compiled into the kernel:
Then list the kernel options, like you do here:
+
+ <programlisting>options ALTQ
+options ALTQ_CBQ # Class Bases Queuing
+options ALTQ_RED # Random Early Detection
+options ALTQ_RIO # RED In/Out
+options ALTQ_HFSC # Hierarchical Packet Scheduler
+options ALTQ_PRIQ # Priority Queuing
+options ALTQ_NOPCC # Required for SMP build</programlisting>
+
+ <para><literal>options ALTQ</literal> enables the ALTQ framework.</para>
+
+ <para><literal>options ALTQ_CBQ</literal> enables Class Based
+ Queuing (CBQ). CBQ allows you to divide a connections's
+ bandwidth into different classes or queues.</para>
+
+ <para><literal>options ALTQ_RED</literal> enables Random Early
+ Detection (RED). RED is used to avoid network congestion. RED
+ does this by measuring the length of the queue and comparing
+ it to the minimum and maximum thresholds for the queue. If the
+ queue is over the maximum all new packets will be dropped. True
+ to its name, RED drops packets from different connections
+ randomly.</para>
+
+ <para><literal>options ALTQ_RIO</literal> enables Random Early
+ Detection In and Out.</para>
+
+ <para><literal>options ALTQ_HFSC</literal> enables Hierarchical
+ Fair Service Curve Packet Scheduler. See <ulink
+ url="http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html"></ulink>
+ for more info.</para>
+
+ <para><literal>options ALTQ_PRIQ</literal> enables Priority
+ Queuing (PRIQ). PRIQ will always pass traffic that is in a
+ higher queue first.</para>
+
+ <para><literal>options ALTQ_NOPCC</literal> enables SMP support
+ for ALTQ. This option is required on SMP systems.</para>
This will give you better content in a single section in place
of scattered information.
And don't forget the other comment in the PR trail. :)
--
Tom Rhodes
Ok... How about this...
--- doc-ori/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml Fri Feb 25 13:31:41 2005
+++ doc/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml Sat Feb 26 04:13:55 2005
@@ -198,7 +198,7 @@
</sect1>
<sect1 id="firewalls-pf">
- <title>The Packet Filter (PF) Firewall</title>
+ <title>The Packet Filter (PF) Firewall and ALTQ</title>
<indexterm>
<primary>firewall</primary>
@@ -211,12 +211,12 @@
contained <acronym>PF</acronym> as an integrated part of the
base system was &os; 5.3 in November 2004.
<acronym>PF</acronym> is a complete, fully featured firewall
- that contains <acronym>ALTQ</acronym> for bandwidth usage
- management in a way similar to what DUMMYNET provides in
- <acronym>IPFW</acronym>. The OpenBSD project does an
- outstanding job of maintaining the PF users' guide that it will
- not be made part of this handbook firewall section as that would
- just be duplicated effort.</para>
+ that contains <acronym>ALTQ</acronym> (Alternate Queuing). ALTQ
+ provides Quality of Service (QoS) bandwidth shaping that allows
+ guaranteeing bandwidth to different services based on filtering
+ rules. The OpenBSD project does an outstanding job of maintaining
+ the PF users' guide that it will not be made part of this handbook
+ firewall section as that would just be duplicated effort.</para>
<para>The availability of PF for the various &os; releases and versions is
summarized below:</para>
@@ -356,6 +356,55 @@
enable the following option as well:</para>
<programlisting>gateway_enable="YES" # Enable as Lan gateway</programlisting>
+
+ </sect2>
+ <sect2>
+ <title>Enabling ALTQ</title>
+
+ <para><acronym>ALTQ</acronym> is only avaliable by compiling the
+ options into the &os; Kernel. <acronym>ALTQ</acronym> is not
+ supported by all of the avaliable network card drivers. Please
+ see the &man.altq.4; manual page for a list of drivers that are
+ supported in your release of &os;. The following options will
+ enable <acronym>ALTQ</acronym> and add additional functionality.
+ </para>
+
+ <programlisting>options ALTQ
+options ALTQ_CBQ # Class Bases Queuing
+options ALTQ_RED # Random Early Detection
+options ALTQ_RIO # RED In/Out
+options ALTQ_HFSC # Hierarchical Packet Scheduler
+options ALTQ_PRIQ # Priority Queuing
+options ALTQ_NOPCC # Required for SMP build</programlisting>
+
+ <para><literal>options ALTQ</literal> enables the ALTQ framework.</para>
+
+ <para><literal>options ALTQ_CBQ</literal> enables Class Based
+ Queuing (CBQ). CBQ allows you to divide a connection's
+ bandwidth into different classes or queues.</para>
+
+ <para><literal>options ALTQ_RED</literal> enables Random Early
+ Detection (RED). RED is used to avoid network congestion. RED
+ does this by measuring the length of the queue and comparing
+ it to the minimum and maximum thresholds for the queue. If the
+ queue is over the maximum all new packets will be dropped. True
+ to its name, RED drops packets from different connections
+ randomly.</para>
+
+ <para><literal>options ALTQ_RIO</literal> enables Random Early
+ Detection In and Out.</para>
+
+ <para><literal>options ALTQ_HFSC</literal> enables Hierarchical
+ Fair Service Curve Packet Scheduler. See <ulink
+ url="http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html"></ulink>
+ for more info.</para>
+
+ <para><literal>options ALTQ_PRIQ</literal> enables Priority
+ Queuing (PRIQ). PRIQ will always pass traffic that is in a
+ higher queue first.</para>
+
+ <para><literal>options ALTQ_NOPCC</literal> enables SMP support
+ for ALTQ. This option is required on SMP systems.</para>
</sect2>
</sect1>
After going over it again with remko@, here is a new diff.
Brad
--- doc-ori/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml Fri Feb 25 13:31:41 2005
+++ doc/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml Sat Feb 26 08:54:37 2005
@@ -198,7 +198,7 @@
</sect1>
<sect1 id="firewalls-pf">
- <title>The Packet Filter (PF) Firewall</title>
+ <title>The OpenBSD Packet Filter (PF) and ALTQ</title>
<indexterm>
<primary>firewall</primary>
@@ -211,12 +211,13 @@
contained <acronym>PF</acronym> as an integrated part of the
base system was &os; 5.3 in November 2004.
<acronym>PF</acronym> is a complete, fully featured firewall
- that contains <acronym>ALTQ</acronym> for bandwidth usage
- management in a way similar to what DUMMYNET provides in
- <acronym>IPFW</acronym>. The OpenBSD project does an
- outstanding job of maintaining the PF users' guide that it will
- not be made part of this handbook firewall section as that would
- just be duplicated effort.</para>
+ that has optional support for <acronym>ALTQ</acronym> (Alternate
+ Queuing). <acronym>ALTQ</acronym> provides Quality of Service
+ (QoS) bandwidth shaping that allows guaranteeing bandwidth to
+ different services based on filtering rules. The OpenBSD
+ project does an outstanding job of maintaining the PF User's
+ Guide that it will not be made part of this handbook firewall
+ section as that would just be duplicated effort.</para>
<para>The availability of PF for the various &os; releases and versions is
summarized below:</para>
@@ -356,6 +357,57 @@
enable the following option as well:</para>
<programlisting>gateway_enable="YES" # Enable as Lan gateway</programlisting>
+
+ </sect2>
+ <sect2>
+ <title>Enabling ALTQ</title>
+
+ <para><acronym>ALTQ</acronym> is only available by compiling the
+ options into the &os; Kernel. <acronym>ALTQ</acronym> is not
+ supported by all of the available network card drivers. Please
+ see the &man.altq.4; manual page for a list of drivers that are
+ supported in your release of &os;. The following options will
+ enable <acronym>ALTQ</acronym> and add additional functionality.
+ </para>
+
+ <programlisting>options ALTQ
+options ALTQ_CBQ # Class Bases Queuing (CBQ)
+options ALTQ_RED # Random Early Detection (RED)
+options ALTQ_RIO # RED In/Out
+options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC)
+options ALTQ_PRIQ # Priority Queuing (PRIQ)
+options ALTQ_NOPCC # Required for SMP build</programlisting>
+
+ <para><literal>options ALTQ</literal> enables the ALTQ framework.</para>
+
+ <para><literal>options ALTQ_CBQ</literal> enables Class Based
+ Queuing (CBQ). CBQ allows you to divide a connection's
+ bandwidth into different classes or queues to prioritize
+ traffic based on filter rules.</para>
+
+ <para><literal>options ALTQ_RED</literal> enables Random Early
+ Detection (RED). RED is used to avoid network congestion. RED
+ does this by measuring the length of the queue and comparing
+ it to the minimum and maximum thresholds for the queue. If the
+ queue is over the maximum all new packets will be dropped. True
+ to its name, RED drops packets from different connections
+ randomly.</para>
+
+ <para><literal>options ALTQ_RIO</literal> enables Random Early
+ Detection In and Out.</para>
+
+ <para><literal>options ALTQ_HFSC</literal> enables the
+ Hierarchical Fair Service Curve Packet Scheduler. For more
+ information about HFSC see: <ulink
+ url="http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html"></ulink>.
+ </para>
+
+ <para><literal>options ALTQ_PRIQ</literal> enables Priority
+ Queuing (PRIQ). PRIQ will always pass traffic that is in a
+ higher queue first.</para>
+
+ <para><literal>options ALTQ_NOPCC</literal> enables SMP support
+ for ALTQ. This option is required on SMP systems.</para>
</sect2>
</sect1>
More changes prodded by simon@...
-Brad
--- doc-ori/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml Fri Feb 25 13:31:41 2005
+++ doc/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml Sat Feb 26 12:42:54 2005
@@ -198,7 +198,7 @@
</sect1>
<sect1 id="firewalls-pf">
- <title>The Packet Filter (PF) Firewall</title>
+ <title>The OpenBSD Packet Filter (PF) and ALTQ</title>
<indexterm>
<primary>firewall</primary>
@@ -211,12 +211,13 @@
contained <acronym>PF</acronym> as an integrated part of the
base system was &os; 5.3 in November 2004.
<acronym>PF</acronym> is a complete, fully featured firewall
- that contains <acronym>ALTQ</acronym> for bandwidth usage
- management in a way similar to what DUMMYNET provides in
- <acronym>IPFW</acronym>. The OpenBSD project does an
- outstanding job of maintaining the PF users' guide that it will
- not be made part of this handbook firewall section as that would
- just be duplicated effort.</para>
+ that has optional support for <acronym>ALTQ</acronym> (Alternate
+ Queuing). <acronym>ALTQ</acronym> provides Quality of Service
+ (<acronym>QoS</acronym>) bandwidth shaping that allows
+ guaranteeing bandwidth to different services based on filtering
+ rules. The OpenBSD Project does an outstanding job of maintaining
+ the PF User's Guide that it will not be made part of this handbook
+ firewall section as that would just be duplicated effort.</para>
<para>The availability of PF for the various &os; releases and versions is
summarized below:</para>
@@ -356,6 +357,57 @@
enable the following option as well:</para>
<programlisting>gateway_enable="YES" # Enable as Lan gateway</programlisting>
+
+ </sect2>
+ <sect2>
+ <title>Enabling ALTQ</title>
+
+ <para><acronym>ALTQ</acronym> is only available by compiling the
+ options into the &os; Kernel. <acronym>ALTQ</acronym> is not
+ supported by all of the available network card drivers. Please
+ see the &man.altq.4; manual page for a list of drivers that are
+ supported in your release of &os;. The following options will
+ enable <acronym>ALTQ</acronym> and add additional functionality.
+ </para>
+
+ <programlisting>options ALTQ
+options ALTQ_CBQ # Class Bases Queuing (CBQ)
+options ALTQ_RED # Random Early Detection (RED)
+options ALTQ_RIO # RED In/Out
+options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC)
+options ALTQ_PRIQ # Priority Queuing (PRIQ)
+options ALTQ_NOPCC # Required for SMP build</programlisting>
+
+ <para><literal>options ALTQ</literal> enables the ALTQ framework.</para>
+
+ <para><literal>options ALTQ_CBQ</literal> enables Class Based
+ Queuing (CBQ). CBQ allows you to divide a connection's
+ bandwidth into different classes or queues to prioritize
+ traffic based on filter rules.</para>
+
+ <para><literal>options ALTQ_RED</literal> enables Random Early
+ Detection (<acronym>RED</acronym>). <acronym>RED</acronym> is
+ used to avoid network congestion. <acronym>RED</acronym> does
+ this by measuring the length of the queue and comparing it to
+ the minimum and maximum thresholds for the queue. If the queue
+ is over the maximum all new packets will be dropped. True to
+ its name, RED drops packets from different connections randomly.</para>
+
+ <para><literal>options ALTQ_RIO</literal> enables Random Early
+ Detection In and Out.</para>
+
+ <para><literal>options ALTQ_HFSC</literal> enables the
+ Hierarchical Fair Service Curve Packet Scheduler. For more
+ information about HFSC see: <ulink
+ url="http://www-2.cs.cmu.edu/~hzhang/HFSC/main.html"></ulink>.
+ </para>
+
+ <para><literal>options ALTQ_PRIQ</literal> enables Priority
+ Queuing (PRIQ). PRIQ will always pass traffic that is in a
+ higher queue first.</para>
+
+ <para><literal>options ALTQ_NOPCC</literal> enables SMP support
+ for ALTQ. This option is required on SMP systems.</para>
</sect2>
</sect1>
On Sat, 26 Feb 2005 12:47:15 -0700 Brad Davis <so14k@so14k.com> wrote: > More changes prodded by simon@... Wow, this reminds me of when I was a submitter. I'll review in a bit, thanks!! -- Tom Rhodes On 2005.02.26 12:47:15 -0700, Brad Davis wrote:
> More changes prodded by simon@...
[snip patch]
This one does not apply for me... "Hunk #3 failed at 357.".. Could you
recheck that it's good, and/or put it somewhere where it does not get
mangled?
--
Simon L. Nielsen
Hi Simon, The latest version is here too: http://freebsd.so14k.com/firewall/altq-2005-02-26-12-43-22.patch Let me know if you have problems with this one. Regards, Brad Davis On 2005.02.28 03:20:07 -0700, Brad Davis wrote:
> The latest version is here too:
> http://freebsd.so14k.com/firewall/altq-2005-02-26-12-43-22.patch
>
> Let me know if you have problems with this one.
It still fails, are you sure it's generated against the latest CVS
version? (1.46)
--
Simon L. Nielsen
Responsible Changed From-To: freebsd-doc->simon I will get this committed. State Changed From-To: open->closed Committed, thanks! |