Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Dec 2006 11:13:05 +0300
From:      Yar Tikhiy <yar@comp.chem.msu.su>
To:        Julian Elischer <julian@elischer.org>
Cc:        FreeBSD Net <freebsd-net@freebsd.org>
Subject:   Re: bridging ethernets containing vlans,
Message-ID:  <20061222081304.GB92873@comp.chem.msu.su>
In-Reply-To: <458B2E19.2040708@elischer.org>
References:  <458B2E19.2040708@elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Dec 21, 2006 at 05:00:09PM -0800, Julian Elischer wrote:
> If I bridge two ethernets, one with HW_vlan tagging and the other 
> without, and there are vlans active on that network, am I right in 
> assuming that it requires that the two ethernets need to both have their
> HW_vlan capabilities on or off, but that it won't work if they are mixed?
> 
> The bridging code seems to turn on and off promiscuous mode for the 
> interfaces and bridge_mutecaps() seems to turn on the HX Checksup 
> capacity, but there doesn't seem to be any code whereby the
> VLAN tagging is enabled or disabled.
> 
> This means that bridging a HW-VLAN interface with one that
> doesn't support HW vlans will result in just the base packet being
> transmitted and the vlan header being dropped.
> 
> Am I reading this right?
> shouldn't the function bridge_mutecaps() also turn off HW vlan handling?
> and is it just a case of adding it to BRIDGE_IFCAPS_MASK?

I'd rather convert between the in-band and ouf-of-band representation
of the VLAN tag in software.  The problem with h/w capabilities is
that no one can promise you that a particular NIC+driver pair can
really control a particular capability; it can just stay always on
due to driver incompleteness or firmware bogosity.  On the output
path, well-tempered network interfaces with VLAN_HWTAG should be
able to accept both in-band and ouf-of-band tags, but real-world
NICs can fail to operate in such a mixed mode.  Many pitfalls lurk
in the hardware acceleration of networking operations.

-- 
Yar



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20061222081304.GB92873>