[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070222112451.47490630@freekitty>
Date: Thu, 22 Feb 2007 11:24:51 -0800
From: Stephen Hemminger <shemminger@...ux-foundation.org>
To: David Miller <davem@...emloft.net>
Cc: medwards.linux@...il.com, johnpol@....mipt.ru, dada1@...mosbay.com,
akepner@....com, linux@...izon.com, netdev@...r.kernel.org,
bcrl@...ck.org
Subject: Re: Extensible hashing and RCU
On Thu, 22 Feb 2007 03:07:55 -0800 (PST)
David Miller <davem@...emloft.net> wrote:
> From: "Michael K. Edwards" <medwards.linux@...il.com>
> Date: Thu, 22 Feb 2007 03:00:32 -0800
>
> > Besides, RCUing a hash of any sort sounds like a nightmare, whereas
> > something like a splay tree is reputed to be very straightforward to
> > make "persistent" in the functional-programming sense. I haven't
> > coded that one myself but surely it's in the current edition of Knuth.
>
> Knuth tends to be thorough, yet archaic. :-)
>
> > You are much better off obtaining all per-flow state with a
> > single data structure lookup. It would be kind of nice if state for
> > other layers like IPSec and NAT could live there too.
>
> This is the eventual idea.
>
> > By the way, are these flows unidirectional or bidirectional?
>
> The entries created by Robert's TRASH are unidirectional, they have to
> be because the path from remote to localhost is different than the
> path from localhost to remote :-)
>
> But we don't need to do a socket demux on packet output, we just
> need a plain route (+ firewall, IPSEC, etc.) destination cache
> entry for that.
> -
There are a number of other lock-less algorithms rather than simple RCU
that might be worth exploring. A number of them rely on a working implementation
of compare-exchange; that can be a problem since some architectures don't have
a fast way of doing that.
--
Stephen Hemminger <shemminger@...ux-foundation.org>
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists