Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 May 2008 07:06:16 -0700 (PDT)
From:      Diego Salvador <salvador_d13@yahoo.com.ph>
To:        Max Laier <max@love2party.net>, freebsd-pf@freebsd.org
Subject:   Re: Using ALTQ without PF in FreeBSD
Message-ID:  <694237.4939.qm@web76113.mail.sg1.yahoo.com>
In-Reply-To: <200805121453.32022.max@love2party.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi Max,

Thanks for your reply and explanation! I now understand why ALTQ is in PF-mode. What are the things needed to be done in order ALTQ to be SMPng compliant? What is the use of the option ALTQ_NOPCC in the kernel? This is described to be used for SMP kernels? Yes, I will look also on the pfil(9).

Thanks,

Diego Salvador

Max Laier <max@love2party.net> wrote: Hello Diego,

On Monday 12 May 2008 07:41:30 Diego Salvador wrote:
> Hi! Is it possible to use ALTQ in FreeBSD without PF? Because what I
> want to achieve is to build a QoS system/machine in a Diffserv or
> Intserv network without firewall. It seems like ALTQ is tightly coupled
> with PF. I have read this http://pf4freebsd.love2party.net/altq.html
> that ALTQ integration in FreeBSD is in PF-Mode not in COMPAT Mode? Can
> someone elaborate the difference between these types of modes? The info
> describes FreeBSD-5, Is it still affecting FreeBSD-6.2/6.3 and
> FreeBSD-7.0 releases? In NetBSD, ALTQ can be used without PF or other
> means of firewall.

basically there are two parts to traffic shaping:
 1) Classification of traffic
 2) The actual queuing

ALTQ used to do both, i.e. you could specify classifications based on 
src/dst/dscp/... in altqd and it would dig into the packets itself.  This 
classification, however, turned out to be absolutely incompatible with 
the SMPng goals and when I imported ALTQ it was decided to disable it 
(because nobody had interest in locking it down for SMPng compliance).

The classification in "PF-mode" is rather simple: any firewall (or other 
policy tool plugged into the pfil(9) API) can classify packets for ALTQ 
by adding a mbuf_tag to the packet.  ALTQ only takes care of the actual 
queuing.

Today, IPFW and PF are able to classify packets this way.  IIRC, there are 
patches floating around to teach IPFW about DSCP (they might even be in 
the tree already).  If neither tool meets your requirements, it should be 
easy enough to plug an application specific filter into pfil(9) that 
would do the classification.

-- 
/"\  Best regards,                      | mlaier@freebsd.org
\ /  Max Laier                          | ICQ #67774661
 X   http://pf4freebsd.love2party.net/  | mlaier@EFnet
/ \  ASCII Ribbon Campaign              | Against HTML Mail and News


       
---------------------------------
 Tired of spam? Yahoo! Mail has the best spam protection around
 http://ph.mail.yahoo.com



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?694237.4939.qm>