Double stacked VLANs (was Re: [VLAN] Question on header check)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Frederik Deweerdt wrote:
> On Fri, Jun 16, 2006 at 01:12:06PM +0100, Alex Zeffertt wrote:
>>>> Another possible problem:  what if you are trying to encapsulate vlan 7 inside
>>>> of vlan 7.  How do you know to double-encapsulate?  What if user-space is sending
>>>> a pre-built VLAN frame with a raw socket?  I'm not sure there is enough info as to
>>>> the intent to encapsulate or not once the VLAN code receives the packet.
>>> I see how my proposal was wrong. Let me wild guess again :). I wondered if the following
>>> code could be better. The idea being that the code could determine the need for
>>> encapsulating or not from the interface's nesting level and the actual number of VLAN tags in the packet.
>>
>>
>> I think we've had this conversation before.  Search the list archives for "vlan Q in Q"
> Thanks for the pointer. Do you know why your patch didn't get merged into mainline?
> 

A couple of reasons.  Firstly the patch means that the REORDER_HEADER flag (which is set by
default) cannot be unset.  Unsetting this flag provides a slight performance enhancement
when bridging between two interfaces and keeping the same tag.

Secondly, the current code allows you to send either untagged or tagged frames to a raw
socket and the result is the same, a tagged frame is sent.  The patch however, always
adds a tag irrespective of whether the frame was already tagged.  (This functionality
*had* to be ditched because if you allow q-in-q then you may *want* your frame double tagged.)

IMHO, raw sockets *should* always tag, rather than tag or not tag depending on whether the
frame is already tagged.  It just seems more logical and consistent.

Ciao,

Alex

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]     [Video 4 Linux]

  Powered by Linux