netdev
[Top] [All Lists]

routing table improvements

To: linux-net <linux-net@xxxxxxxxxxxxxxx>, netdev <netdev@xxxxxxxxxxx>, nf-devel <netfilter-devel@xxxxxxxxxxxxxxxxxxx>
Subject: routing table improvements
From: Tobias DiPasquale <codeslinger@xxxxxxxxx>
Date: Sun, 24 Oct 2004 20:19:55 -0400
Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:mime-version:content-type:content-transfer-encoding; b=DD8bV8Zuc0tYJ7TFwyJPMU90MV2poiqdAqIT2MjayAotUtJLl8XNhLUMfQfW+z5aQZEpTMPhSzXTg34wYuFbBhb/VQiFKLAqzkpbjN7QvGm5Me64+9ShQzes/YzANxp9CeCyF4H++hu9bek8HfxaUjPx5W8sXvGfqISrirQEGkg=
Reply-to: Tobias DiPasquale <codeslinger@xxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
Hi all,

I am starting work on improving the routing table in Linux by removing
the route cache altogether and reimplemting the FIB with a radix tree
search implementation. However, I have some questions/RFCs before I
get too deep into it.

First of all, is anyone else doing something in this area?

Second, it doesn't look (to me) as if the lib/radix-tree.c
implementation is sufficiently generic to be used in this capacity.
What I mean is, it appears as if this code can't be used in interrupt
context, which is sort of a necessity for this particular purpose. Am
I just out of my mind or is that the case?

Finally, can anyone think of a reason not use a radix tree search for
the FIB? I was going to implement a simple binary radix tree (similar
to what FreeBSD has). I had originally thought of using something like
CEF uses (a 256-way radix tree), but this would be too
memory-intensive, IMO.

Anyone have any comments?

-- 
[ Tobias DiPasquale ]
0x636f6465736c696e67657240676d61696c2e636f6d

<Prev in Thread] Current Thread [Next in Thread>