Subject: Re: [PATCH] EtherIP tunnel driver (RFC 3378)

From: Joerg Roedel <[email-masked]>
Date: Tue, 19 Sep 2006 09:08:48 +0200

On Mon, Sep 18, 2006 at 10:52:52PM +0200, Lennert Buytenhek wrote:

> Check out the thread "[PATCH][RFC] etherip: Ethernet-in-IPv4 tunneling"
> that was on netdev in January of 2005 -- a number of arguments against
> etherip (and for tunneling ethernet in GRE) were raised back then.

I read this thread some weeks ago.  I think there are reasons to have
both variants in the kernel. Since both versions are implemented in
different operatins systems and devices, having both will Linux make
interoperable with all of them.  In fact, the only implementers for
EtherIP I found were various BSD derivates. I actually implemented this
driver upon request of a BSD user who wanted interoperability of the
NetBSD EtherIP implementation with Linux.

> 
> One of the most significant ones, IMHO:
> 
> > Another argument against etherip would be that OpenBSD apparently
> > mis-implemented etherip by putting the etherip version nibble in the
> > second nibble of the etherip header instead of the first, which would
> > probably prevent the linux and OpenBSD versions from interoperating,
> > negating the advantage of using etherip in the first place.

I think this is not really a mistake in the OpenBSD implementation. In
my opinion, the RFC is unclear at this point. I focused on
interoperability in my implementation and did it the same way as OpenBSD
(as NetBSD does also, AFAIK FreeBSD has also an EtherIP implementation,
 but I don't tested it). This is the reason why my driver does not check
the value of the incoming EtherIP header too.

Regards,
	Joerg Roedel