On Sat, Mar 16, 2002 at 03:35:29PM -0800, Americo Melara wrote:

> Yeap! here it is!  Sorry, but I can't make it any shorter.

No problem, the more details, the better.

> I am using a dual Pentium II 400MHz but I have turned the SMP option OFF in
> the kernel configuration (I hope that the second one is not working).  I'm
> using a modular 2.4.7 kernel with, but before I do the tests I load the
> modules, these are the modules that I use:
>  ipt_mac,  ipt_REJECT, iptable_mangle, ipt_limit, iptable_filter,
> ip_conntrack
> 
> The rule sets.
> I do independent tests for each type of match, for example, (test1) drop 10
> IP addresses, (test 2) drop 40 IP addresses.  I do not do any connection
> tracking at all.  

But above you are stating that you are using the ip_conntrack module?

> The tests are performed as followed:
> PHASE 1
> INPUT policy: ACCEPT
> Protocol:  TCP - send one packet every 4 seconds (send 40 of them)
> Payload size:
>  64 bytes  (I do the same tests for payloads of 1400 bytes to compare
> results)
> 
> Test A.1 --- Drop 10 IP addresses  (e.g.   iptables -A INPUT -s X.X.X.X -j
> DROP)
> Test A.2 --- Drop 40 IP addresses
> Test B.1 --- Drop 10 MAC addresses  (e.g. iptables -A INPUT -m
> mac -mac-source XX:XX:XX:XX:XX:XX -j DROP)
> Test B.2 --- Drop 40 MAC addresses
> Test C.1 --- Drop 10 TCP ports (e.g. iptables -A INPUT -proto tcp -dport
> X -j DROP)
> Test C.2 --- Drop 40 TCP ports
> 
> Repeat the process for
> Protocol: UDP
> INPUT policy DROP
> Same number of rules but instead of dropping IP/MAC/TCP I accept them
> 
> Where do I take the timestamps to track the packet throughout the stack?
> here:
> 1. netif_rx    @ (net/core/dev.c)
> 2. ip_local_deliver @ (net/ipv4/ip_input.c) before it calls NF_HOOK
> 3. ip_local_deliver_finish @ (net/ipv4/ip_input.c)  at the beginning of the
> function
> 4. tcp_rcv_established @ (net/ipv4/tcp_input.c) at the end of the function
> 5. sock_recvmsg @ (net/socket.c) before it exits the function
> How do I take timestamps?  Specifically using rdtscl( ) but there is a lot
> of code in between to grab other information about the packet (e.g
> 'skb->stamp' used as an ID to match the time with the time as it travels
> throughout the layers)

so you are benchmarking filtering of local packets?  That isn't too
interesting, sorry. Most people are interested in the traditional firewall 
case, where packets get forwarded.

> -- Personal question, would the community be interested in seeing these
> results?

Definitely.

> Americo Melara

-- 
Live long and prosper
- Harald Welte / [EMAIL PROTECTED]               http://www.gnumonks.org/
============================================================================
GCS/E/IT d- s-: a-- C+++ UL++++$ P+++ L++++$ E--- W- N++ o? K- w--- O- M+ 
V-- PS++ PE-- Y++ PGP++ t+ 5-- !X !R tv-- b+++ !DI !D G+ e* h--- r++ y+(*)

Reply via email to