[EMAIL PROTECTED] wrote:

* [EMAIL PROTECTED] [2006-04-05 10:06:34]

...

If I want to make a new NIC to experiment with a protocol like CARP
or VRRP, where would I go for how to start on such a project?  Do we
have sufficient interfaces to support this?


Is there something specific about CARP or VRRP that would require
special features of a NIC driver?


...

Ideally I'd expect the IPMP code to be a model of how to do this.


IPMP is, in reality, a strange beast.  Why you'd expect it to set any
kind of precedent for how to write NIC drivers is something of a
mystery to me, as IPMP operates almost entirely at layer 3.  Hiding
some of the implementation details of IPMP, as the Clearview project
will do, seems like a good thing and isn't really related to the
stability level of NIC driver interfaces.


My view of IPMP is that it is functionality that is layered on
top of NICs - it is a virtual NIC that has the backing of real
ones behind it.  It isn't doing any real I/O itself, it is
passing off packets to real NICs for sending and similarly,
packets received via an IPMP interface come via a real NIC first.

Maybe this mental picture is a bit premature, given that no
detailed or implementation picture has been presented.
It is also built on how you can build software NICs on BSD:
just write some skeleton code to do something special with
packets passed on to other NICs "behind" the software one
for further IO.  While I don't expect us to necessarily
adopt the BSD model, I can't see why we shouldn't make it
easier to write software-only NICs.  e.g. the faith NIC
in NetBSD:

http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/net/if_faith.c?rev=1.34&content-type=text/plain

Darren

_______________________________________________
networking-discuss mailing list
[email protected]

Reply via email to