All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ed W <lists@wildgooses.com>
To: netfilter-devel@vger.kernel.org
Subject: How to make netfilter modules communicate?
Date: Mon, 01 Oct 2012 19:17:40 +0100	[thread overview]
Message-ID: <5069DE44.6090306@wildgooses.com> (raw)

Hi, I'm plotting a custom accounting module which would give me some per 
device (MAC), per interface and per protocol bandwidth statistics, but I 
would quite like to decompose the module into several re-usable pieces 
and have them communicate.  I hope this isn't too dim a question, but 
how to make the modules communicate...?

For example some of my interfaces are attached to upstream connections 
which calculate bandwidth in a peculiar way (eg think ATM encapsulation, 
but even more wierd...).  I could create a new module which might match 
on interface and create a new per packet bandwidth computation based on 
the parameters for that upstream interface.  How then to make that 
computation available to other modules?

Also I'm trying to fixup the opendpi-netfilter module to work with nDPI 
and I would quite like to use that to classify all traffic such that the 
accounting module can then log per interface, per user and per 
protocol.  Again how to communicate between the accounting module and 
the ndpi module and tag that a certain connection is a particular protocol?

I already use connection marks quite extensively in this setup, so I 
would like to avoid crystalising this stuff into a conmark in some way, 
but is there a better way to say extend conntrack data to include things 
like custom protocol information, or are there other sensible ways to 
communicate between iptables modules?

Thanks for any thoughts

Ed W

                 reply	other threads:[~2012-10-01 18:27 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=5069DE44.6090306@wildgooses.com \
    --to=lists@wildgooses.com \
    --cc=netfilter-devel@vger.kernel.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.