Philippe Houdoin wrote:
Damned, in the post-Master mess, I totally miss these posts!
No problem. At least you did not totally forget it. ;)
the netstack of FreeBSD 5.3 will have some nice features and speed improvements. Additionally, their netstack is finally thread-safe (and multi-threaded). Our netstack is a port of an older version and thus not thread-safe.
I did not port that beast, so I do not know what is harder to do:
- port the new netstack
- make our netstack thread-safe and extend with functionality (non-blocking support, etc.)
Both imply to dive in BSD stack source code internal.
I guess it means both are hard to do, but at least their newest code may give us up-to-date knowlegde.
IMHO, it would be very useful if we had a nice port including documentation about changes made to the port. If we can create a layer around the stack's core and module layers around the protocols it might become rather easy to port new releases and always have an up-to-date and stable netstack. While we maintain the port we can also slowly write our own stack, compare speeds, and improve it until it is better and at the same time smaller and cleaner.
What do you think? How much work would a new port (we can reuse existing code and experience) and fixing/extending the current port mean?
Well, dunno, really.
Our current stack seems so near to reach a final alpha stage (DHCP is missing, mostly), it sounds radical to drop pretty much all the meat to start again. But maybe it's the momentum we, as a team (including me), need.
I guess it's time I give a look at FreeBSD 5.3 net stack code...