From: Jan Du Caju <Jan.DuCaju@kuleuven.net>
To: MauroTablo' <m.tablo@libero.it>
Cc: netfilter@lists.netfilter.org
Subject: Re: netfilter efficiency
Date: Sat, 22 Jan 2005 11:12:05 +0100 [thread overview]
Message-ID: <20050122101205.GC7171@kuleuven.net> (raw)
In-Reply-To: <005c01c4ff19$508ade80$c0de623e@MAURO>
Hi,
On Thu, Jan 20, 2005 at 06:56:04PM +0100, MauroTablo' wrote:
> Hi all.
> My Linux (+ iptables) based firewall has about 90 forward filtering rules, for tcp packets (about 30 rules), udp datagram (about 40 rules) and icmp messages(about 20 rules).
> Suppose that it comes a transit tcp packet that doesn't match anyone of my rules. So, the last rule will be applied, because it is the first one that matches the packet (/sbin/iptables -A FORWARD -j DROP)
>
> The question is: iptables confronts the TCP packet with all my 90 rules, or it confronts the packet ONLY WITH rules for tcp packets (-p tcp)?
> In other words, is there a function in netfilter that looks up to the protocol type of a transit packet and decides which rules to confront the packet with?
You should consider hipac (http://www.hipac.org)
Quote from their webside:
iptables, like most packet filters, uses a simple packet classification
algorithm which traverses the rules in a chain linearly per packet
until a matching rule is found (or not). Clearly, this approach lacks
efficiency. As networks grow more and more complex and offer a wider
bandwidth linear packet filtering is no longer an option if many rules
have to be matched per packet. Higher bandwidth means more packets per
second which leads to shorter process times per packet.
With nf-HiPAC we offer a novel framework for packet classification which
uses an advanced algorithm to reduce the number of memory lookups per
packet. It is ideal for environments where large rulesets and/or high
bandwidth networks are involved. Thereby, the iptables' semantics of the
rules is preserved, i.e. you can construct your rules like you're used
to. From a user's point of view there is no need to understand anything
about the HiPAC algorithm.
At the hipac site you will find a comparison with iptables. The central
firewall of our university ( http://www.kuleuven.ac.be/english/ ) uses
hipac and we are very pleased with it. At the moment there is only an
implementation for a 2.4 kernel but the developers are working on a
2.6 version :-)
Hope this helps,
Jan.
--------------------------------------------------- KULeuvenNet -------
Jan.DuCaju@kuleuven.net http://www.kuleuven.net/e_index.html
K.U.Leuven http://www.kuleuven.ac.be/english/
LUDIT - KULeuvenNet http://ludit.kuleuven.be/index_en.html
de Croylaan 52A 3001 Leuven Belgium
-----------------------------------------------------------------------
prev parent reply other threads:[~2005-01-22 10:12 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-01-20 17:56 netfilter efficiency MauroTablo'
2005-01-21 13:30 ` Peter Surda
2005-01-21 13:39 ` Samuel Jean
2005-01-21 13:42 ` Sven-Haegar Koch
2005-01-21 19:35 ` Maxime Ducharme
2005-01-22 10:12 ` Jan Du Caju [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20050122101205.GC7171@kuleuven.net \
--to=jan.ducaju@kuleuven.net \
--cc=m.tablo@libero.it \
--cc=netfilter@lists.netfilter.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.