File:  [NetBSD Developer Wiki] / wikisrc / projects / project / nexthop_cache.mdwn
Revision 1.1: download - view: text, annotated - select for diffs
Thu Nov 10 03:06:51 2011 UTC (2 years, 5 months ago) by jmmv
Branches: MAIN
CVS tags: HEAD
Add a specific proposal for the SMP networking project.

This proposal is built on top of several individual, smaller projects, all
of which are related to achieve the goals of SMP support and modularity on
the network stack.  Keep in mind that this is just that: a proposal.
Applicants could still come up with their own ideas.

The text of all these new pages is mostly a copy/paste of the original
document written by matt@ (see http://www.netbsd.org/~matt/smpnet.html).
I have done some minor edits (hopefully not changing any of the technical
details) and added some preliminary texts to the pages.  (I was unable to
parse some of the sentences though, so they remain "as is"...)

[[!template id=project

title="Separate nexthop cache from the routing table"

contact="""
[tech-kern](mailto:tech-kern@NetBSD.org),
[tech-net](mailto:tech-net@NetBSD.org),
[board](mailto:board@NetBSD.org),
[core](mailto:core@NetBSD.org)
"""

category="networking"
difficulty="hard"
funded="The NetBSD Foundation"

description="""
This project proposal is a subtask of [[smp_networking]] and is elegible
for funding independently.

The goal of this project is to remove the ARP, AARP, ISO SNPA, and IPv6
Neighbors from the routing table.  Instead, the `ifnet` structure should
have a set of nexthop caches (usually implemented using
[[patricia trees|atomic_radix_patricia_trees]]), one per address family.
Each nexthop entry should contain the datalink header needed to reach the
neighbor.

This will remove cloneable routes from the routing table and remove the
need to maintain protocol-specific code in the common Ethernet, FDDI, PPP,
etc. code and put it back where it belongs, in the protocol itself.
"""
]]

[[!tag smp_networking]]

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb