Add two new proposal ideas: ipfw2 NAT support and libalias

improvement, and pluggable disk schedulers.

Submitted by:	luigi
This commit is contained in:
Murray Stokely 2005-06-08 13:01:54 +00:00
parent e3228f87c9
commit 51e7bdbba0
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/www/; revision=24779

View file

@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" [
<!ENTITY base CDATA "..">
<!ENTITY date "$FreeBSD: www/en/projects/summerofcode.sgml,v 1.29 2005/06/07 12:24:49 brueffer Exp $">
<!ENTITY date "$FreeBSD: www/en/projects/summerofcode.sgml,v 1.30 2005/06/07 13:58:01 mux Exp $">
<!ENTITY title "FreeBSD Summer Projects">
<!ENTITY % includes SYSTEM "../includes.sgml"> %includes;
<!ENTITY % developers SYSTEM "../developers.sgml"> %developers;
@ -209,6 +209,33 @@
interfaces. <a href="mailto:brooks@FreeBSD.org">&a.brooks;</a> is
coordinating.</li>
<li><p><strong>ipfw2 NAT support and libalias improvement</strong>: The
native FreeBSD firewall, ipfw2, does not currently have in-kernel
NAT support, though the architecture is extensible and the basic
mechanisms for dynamic rule creation and lookup are already
present in the kernel. At the same time, userland NAT is supported
by libalias, which has been recently made into a kernel module.
The project has the following two goals:
<ul>
<li>create hooks for ipfw2 to call LibAlias</li>
<li>revise LibAlias to improve its structures, specifically:<ul>
<li>instrument, evaluate and possibly optimize basic operations
(session creation, lookup and destruction; tcp flow
reassembly);</li>
<li>provide mechanisms to register/unregister protocol handlers
instead of having to manipulate the source code;</li>
<li>make a better match of the kernel and libalias data structure
to possibly reduce the number of copies.</li>
</ul>
</li>
</ul>
<p>The above should be applicable to 5.x and -current, and
possibly 4.x as well. Applicants should be familiar with
networking issues related to NAT, and with the network stack in
the kernel. <a href="mailto:rizzo@icir.org">Luigi Rizzo</a> is
the coordinator.</p></li>
</ul>
<a name="p-security"></a>
@ -297,7 +324,16 @@
with more information is available <a
href="http://wikitest.freebsd.org/moin.cgi/K">here</a>.</li>
</ul>
<li><strong>Pluggable Disk Schedulers</strong>: The project will
create hooks to implement pluggable disk schedulers, to replace
the standard elevator scheme used in FreeBSD, and then implement
at least one alternative mechanism (e.g. variants of proportional
share, etc.) to demonstrate the effectiveness of the new
interface. Applicants should be familiar with the disk scheduling
theory and, to some degree, with kernel programming. <a
href="mailto:rizzo@icir.org">Luigi Rizzo</a> is the coordinator.</li>
</ul>
<p>Additional projects may be found by browsing the <a
href="index.html">FreeBSD Development Projects</a> page or by