Linux Netfilter development
 help / color / mirror / Atom feed
From: Patrick McHardy <kaber@trash.net>
To: Fabian Hugelshofer <hugelshofer2006@gmx.ch>
Cc: netfilter-devel@vger.kernel.org, Pablo Neira Ayuso <pablo@netfilter.org>
Subject: Re: Conntrack Events Performance - Multipart Messages?
Date: Wed, 23 Jul 2008 19:32:56 +0200	[thread overview]
Message-ID: <48876B48.4060605@trash.net> (raw)
In-Reply-To: <48876AAA.9020609@gmx.ch>

Fabian Hugelshofer wrote:
> Patrick McHardy wrote:
>> Patrick McHardy wrote:
>>> Fabian Hugelshofer wrote:
>>>> Is the zeroing of the inverted tuple in nf_ct_invert_tuple really 
>>>> required? As far as I can see all fields are set by the subsequent 
>>>> code.
>>>
>>> It dependfs on the protocol family. For IPv6 its completely
>>> unnecessary, for IPv4 the last 12 bytes of each address need
>>> to be zeroes. We could push this down to the protocols to
>>> behave more optimally (actually something I started and didn't
>>> finish some time ago).
>>
>> Actually that really is necessary because we have padding in the
>> tuple on at least ARM.
> 
> As you write the remaining 12 bytes for IPv4 can easily be handled in 
> the l3protocol. The original tuple is already initialised properly and 
> one would just have to replace things like
> tuple->src.u3.ip = orig->dst.u3.ip;
> with
> tuple->src.u3.all = orig->dst.u3.all;
> in nf_conntrack_l3proto_ipv4.c.

Correct.

> Why do you think the padding causes problems? For hashing e.g. src/dst 
> .u3 and .u are referenced independently of potential padding. Where does 
> access to the padding data occur?

The hash function hashes the entire tuple in one go.
The padding needs to have deterministic content for
that.

  reply	other threads:[~2008-07-23 17:33 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-16 16:42 Conntrack Events Performance - Multipart Messages? Fabian Hugelshofer
2008-07-17  9:16 ` Patrick McHardy
2008-07-17 10:03 ` Pablo Neira Ayuso
2008-07-17 14:34   ` Fabian Hugelshofer
2008-07-17 15:15     ` Fabian Hugelshofer
2008-07-18 15:56     ` Fabian Hugelshofer
2008-07-18  2:11   ` Patrick McHardy
2008-07-21 15:51     ` Fabian Hugelshofer
2008-07-21 15:59       ` Patrick McHardy
2008-07-21 17:49         ` Fabian Hugelshofer
2008-07-23 14:32           ` Fabian Hugelshofer
2008-07-23 14:38             ` Patrick McHardy
2008-07-23 16:12               ` Fabian Hugelshofer
2008-07-23 17:01                 ` Patrick McHardy
2008-07-23 17:07                   ` Patrick McHardy
2008-07-23 17:30                     ` Fabian Hugelshofer
2008-07-23 17:32                       ` Patrick McHardy [this message]
2008-07-23 17:38                         ` Fabian Hugelshofer
2008-07-23 17:40                           ` Patrick McHardy
2008-07-23 17:15                   ` Fabian Hugelshofer
2008-07-23 17:20                     ` Patrick McHardy
2008-07-24 13:21                       ` Fabian Hugelshofer
2008-07-25  8:51                         ` Fabian Hugelshofer
2008-07-25  9:32                         ` Pablo Neira Ayuso
2008-07-25 11:15                           ` Pablo Neira Ayuso
2008-07-27 17:23                             ` Fabian Hugelshofer
2008-07-28 18:31                             ` Pablo Neira Ayuso
2008-07-28 23:12                               ` Fabian Hugelshofer
2008-07-29 17:11                                 ` Pablo Neira Ayuso
2008-07-25  8:44                 ` Fabian Hugelshofer

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=48876B48.4060605@trash.net \
    --to=kaber@trash.net \
    --cc=hugelshofer2006@gmx.ch \
    --cc=netfilter-devel@vger.kernel.org \
    --cc=pablo@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox