
|
[openbeosnetteam]
||
[Date Prev]
[06-2006 Date Index]
[Date Next]
||
[Thread Prev]
[06-2006 Thread Index]
[Thread Next]
[openbeosnetteam] Networking Next Steps
- From: "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx>
- To: "Haiku Net-Team" <openbeosnetteam@xxxxxxxxxxxxx>
- Date: Sat, 17 Jun 2006 13:44:19 +0200 CEST
Hi there,
since we're several people wanting to work on the networking stack now,
we should lay out a plan on how we proceed, so that everyone can start
to contribute in a useful way.
Since we are a bit under time pressure to not waste Andrew's work
force, I think the best way to start is probably to begin with a very
BONE like architecture. That is, I think should start with a
replacement for bone_data and start working on the interface level and
the stuff that brings it all together (previously called "core").
Following the route set by David's Marrow, I would also like to name
the structures net_data, etc. (or in this case, net_buffer would do as
well). His docs and design overviews are worth a look:
http://www.david-reid.com/projects/marrow/design.html
- even though I don't agree with many things of that design, he also
discusses some BONE issues.
Anyway, there are a couple of things I don't like about BONE, and that
is the following:
- the headers are just badly organized, there is no distinction between
public and private, between userland and kernel headers, it's all just
thrown together. That example shouldn't set a standard, and we
shouldn't follow it from the start
- I would like to get rid of acronyms like "if" and "dl" and use their
full names for structure names and fields; I would also like to remove
the "if_" or similar prefixes in the structure fields names
- BONE relies on the bone.conf file to build the module "paths" - since
I can hardly see a reason to ever change this (only if new modules and
their functionality is added), I would like to hard code this
information in the respective modules. Having said that, I think we
should ignore this matter for now, and have the information hardcoded
into the "core".
- I would also don't mind if protocol modules would end up in a
different directory than the rest; the BONE directory hierarchy is
rather flat - but that's also something we don't need to bang our head
against now.
If no one else does, I would volunteer to start with implementing a
naive net_data module. If Philippe wants to send me his start, I'd
prefer to have a look at that, too (maybe we have a similar idea of
"naive" :-)).
I'll open a new branch for the stack by simply renaming the FreeBSD
branch, okay?
Does anyone feel like writing a script that lets you switch between the
branch and the current version of the stack (so that a "jam haiku-
image" will build either one)? If not, I would do that as well, and
place it in the main branch directory.
Complaints and suggestions are welcome, as always.
Bye,
Axel.
|

|