Add entry on projects/routing from melifaro
This commit is contained in:
parent
40c9986d11
commit
6e3f56e771
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=48038
1 changed files with 38 additions and 0 deletions
|
@ -2631,4 +2631,42 @@
|
|||
the project more effectively.</p>
|
||||
</body>
|
||||
</project>
|
||||
|
||||
<project cat='proj'>
|
||||
<title>Routing Stack Update</title>
|
||||
|
||||
<contact>
|
||||
<person>
|
||||
<name>
|
||||
<given>Alexander</given>
|
||||
<common>Chernikov</common>
|
||||
</name>
|
||||
<email>melifaro@FreeBSD.org</email>
|
||||
</person>
|
||||
</contact>
|
||||
|
||||
<links>
|
||||
<url href="http://wiki.freebsd.org/ProjectsRoutingProposal">Initial Proposal</url>
|
||||
</links>
|
||||
|
||||
<body>
|
||||
<p>The <tt>projects/routing</tt> Subversion branch is a
|
||||
FreeBSD routing system rework aimed at providing performance,
|
||||
scalability and the ability to add advanced features to the
|
||||
routing stack.</p>
|
||||
|
||||
<p>Currently, the packet output path suffers from excessive
|
||||
locking, acquiring and releasing 4 distinct contested locks is
|
||||
required in order to convert a packet to a frame suitable to put
|
||||
on the wire. The first project goal is to reduce the number of
|
||||
locks needed to just two <tt>rmlock(9)</tt>s for the output path,
|
||||
which permits close-to-linear scaling.</p>
|
||||
|
||||
<p>Since September, one of the locks (used to protect
|
||||
link-level entries) is completely eliminated from the packet data
|
||||
path. A new routing API was introduced, featuring better
|
||||
scalability and hiding routing internals. Most of the consumers
|
||||
of the old routing API were converted to use the new API.</p>
|
||||
</body>
|
||||
</project>
|
||||
</report>
|
||||
|
|
Loading…
Reference in a new issue