<div dir="ltr">I should add that some switches will only accept QinQ using an SVID of 0x88a8 and a CVID of 0x8100. Which is why support for it was needed on Linux. <div><br></div><div>A lot of switches will allow you to specify the SVID type, either globally, per port or per vlan.</div>
<div><br></div><div><br></div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Jan 14, 2014 at 10:42 AM, Andrew Thrift <span dir="ltr"><<a href="mailto:andrew@networklabs.co.nz" target="_blank">andrew@networklabs.co.nz</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Ok, so in my example of <span style="font-family:arial,sans-serif;font-size:13px">eth0,eth1,eth2,eth3---->bond0-</span><span style="font-family:arial,sans-serif;font-size:13px">--->bond0.101---->vmbr0----></span><span style="font-family:arial,sans-serif;font-size:13px">vmbr0.201<----tap interface</span><div>
<span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">The packet is DOUBLE TAGGED with 0x8100 tags. So the outer tag (SVID) is 101 with an inner (CVID) tag of 201. </span></div>
<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">802.1ad support adds the capability to have an SVID of 0x88a8 with a CVID of 0x8100. Before this support was added you could only do QinQ using the "stacked" 0x8100 tags.</span></div>
<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra">
<br><br><div class="gmail_quote">
On Mon, Jan 13, 2014 at 9:31 PM, Alexandre DERUMIER <span dir="ltr"><<a href="mailto:aderumier@odiso.com" target="_blank">aderumier@odiso.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Also,I see that support of 802.1ad has been added to kernel since 3.10 only. So how do is work before ?<br>
<br>
<a href="http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=8ad227ff89a7e6f05d07cd0acfd95ed3a24450ca" target="_blank">http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=8ad227ff89a7e6f05d07cd0acfd95ed3a24450ca</a><br>
<br>
<br>
# ip link add link eth0 eth0.1000 \<br>
type vlan proto 802.1ad id 1000<br>
<br>
----- Mail original -----<br>
<br>
De: "Alexandre DERUMIER" <<a href="mailto:aderumier@odiso.com" target="_blank">aderumier@odiso.com</a>><br>
<div>À: "Stefan Priebe - Profihost AG" <<a href="mailto:s.priebe@profihost.ag" target="_blank">s.priebe@profihost.ag</a>><br>
</div>Cc: <a href="mailto:pve-devel@pve.proxmox.com" target="_blank">pve-devel@pve.proxmox.com</a><br>
Envoyé: Lundi 13 Janvier 2014 09:10:59<br>
<div><div>Objet: Re: [pve-devel] [PATCH] Virtual vlan tagging to bridge interface<br>
<br>
>>this should explain it:<br>
>><a href="http://en.wikipedia.org/wiki/IEEE_802.1ad" target="_blank">http://en.wikipedia.org/wiki/IEEE_802.1ad</a><br>
<br>
Thanks, I understand now.<br>
<br>
So, for this setup:<br>
<br>
bond0.101---->vmbr0---->vmbr0.201<----tap interface<br>
<br>
<br>
when the packet from tap (tagged 201) is going out through bond0.101,<br>
<br>
what happen ?<br>
<br>
is the packet vlan retagged 101 ?<br>
or is the packet vlan 201 encapsuled in vlan101 ?<br>
<br>
<br>
<br>
<br>
<br>
----- Mail original -----<br>
<br>
De: "Stefan Priebe - Profihost AG" <<a href="mailto:s.priebe@profihost.ag" target="_blank">s.priebe@profihost.ag</a>><br>
À: "Alexandre DERUMIER" <<a href="mailto:aderumier@odiso.com" target="_blank">aderumier@odiso.com</a>>, "Andrew Thrift" <<a href="mailto:andrew@networklabs.co.nz" target="_blank">andrew@networklabs.co.nz</a>><br>
Cc: <a href="mailto:pve-devel@pve.proxmox.com" target="_blank">pve-devel@pve.proxmox.com</a><br>
Envoyé: Lundi 13 Janvier 2014 08:24:19<br>
Objet: Re: [pve-devel] [PATCH] Virtual vlan tagging to bridge interface<br>
<br>
Am 13.01.2014 07:54, schrieb Alexandre DERUMIER:<br>
>>> QinQ vlan tagging.<br>
><br>
> can somebody explain me how qinq works exactly ? (I'm reading cisco doc, but I'm not sure to understand how tagging is working exactly)<br>
<br>
this should explain it:<br>
<a href="http://en.wikipedia.org/wiki/IEEE_802.1ad" target="_blank">http://en.wikipedia.org/wiki/IEEE_802.1ad</a><br>
<br>
<br>
> ----- Mail original -----<br>
><br>
> De: "Andrew Thrift" <<a href="mailto:andrew@networklabs.co.nz" target="_blank">andrew@networklabs.co.nz</a>><br>
> À: <a href="mailto:pve-devel@pve.proxmox.com" target="_blank">pve-devel@pve.proxmox.com</a><br>
> Envoyé: Lundi 13 Janvier 2014 01:33:24<br>
> Objet: Re: [pve-devel] [PATCH] Virtual vlan tagging to bridge interface<br>
><br>
><br>
> FYI we are using vlan tagging on bridges with Proxmox in production for over a year now, initially on 2.6.32 kernel and then on 3.10. We are using Intel gigabit and 10gigabit adapters.<br>
><br>
><br>
> We posted the patches to the list a few months back, I believe these are very similar to Alexandre's patches. We have a more complex config in that we are also doing bonding and QinQ vlan tagging.<br>
><br>
><br>
> Our setup looks like this:<br>
><br>
><br>
> eth0,eth1,eth2,eth3---->bond0---->bond0.101---->vmbr0---->vmbr0.201<----tap interface<br>
><br>
><br>
><br>
> That is using an outer tag of 101 and an inner tag of 201.<br>
><br>
><br>
><br>
><br>
><br>
><br>
><br>
><br>
><br>
> On Sat, Jan 11, 2014 at 7:59 AM, Alexandre DERUMIER < <a href="mailto:aderumier@odiso.com" target="_blank">aderumier@odiso.com</a> > wrote:<br>
><br>
><br>
><br>
>>> If alexandre’s patch don’t work with any devices it isn’t really interesting because it addressing other functionality and devices. I checked the patch and it use the same problematic part with eth*, wifi* and >>bond* check which fails with virtual devices like gre, ipsec,..<br>
><br>
> What do you mean by "don't work with any devices" ?<br>
><br>
> My patch is to manage vlan tags on the bridge, not eth interface.<br>
><br>
> eth0---->vmbr0<------tap interface<br>
><br>
> vlan are tagged on tap interfaces plugged on vmbr0, with new "bridge" cmd. (like an access port on a cisco switch)<br>
> and vlans are allowed to pass through eth0.(like a trunk port on cisco switch)<br>
><br>
> So I think it should work with gre,ipsec,...(But I don't have tested it yet)<br>
><br>
><br>
><br>
><br>
><br>
><br>
> ----- Mail original -----<br>
><br>
> De: "Johannes Ernst" < <a href="mailto:info@filemedia.de" target="_blank">info@filemedia.de</a> ><br>
> À: <a href="mailto:pve-devel@pve.proxmox.com" target="_blank">pve-devel@pve.proxmox.com</a><br>
> Envoyé: Vendredi 10 Janvier 2014 18:16:30<br>
><br>
> Objet: Re: [pve-devel] [PATCH] Virtual vlan tagging to bridge interface<br>
><br>
><br>
><br>
> Thus, it’s a configuration issue and NOT a kernel issue.<br>
><br>
> If alexandre’s patch don’t work with any devices it isn’t really interesting because it addressing other functionality and devices. I checked the patch and it use the same problematic part with eth*, wifi* and bond* check which fails with virtual devices like gre, ipsec,..<br>
><br>
> Am 10.01.2014 um 17:18 schrieb Dietmar Maurer < <a href="mailto:dietmar@proxmox.com" target="_blank">dietmar@proxmox.com</a> >:<br>
><br>
>>> Sure? Do you have additional information? I think it's not correct and it works!<br>
>><br>
>> We tested that a few times (and failed), so nobody is keen to test that again.<br>
>><br>
>> We currently try to use the new bridge VLAN features - that looks more promising (see patches from Alexandre).<br>
>><br>
><br>
><br>
><br>
><br>
> _______________________________________________<br>
> pve-devel mailing list<br>
> <a href="mailto:pve-devel@pve.proxmox.com" target="_blank">pve-devel@pve.proxmox.com</a><br>
> <a href="http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel" target="_blank">http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel</a><br>
> _______________________________________________<br>
> pve-devel mailing list<br>
> <a href="mailto:pve-devel@pve.proxmox.com" target="_blank">pve-devel@pve.proxmox.com</a><br>
> <a href="http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel" target="_blank">http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel</a><br>
><br>
><br>
><br>
><br>
> _______________________________________________<br>
> pve-devel mailing list<br>
> <a href="mailto:pve-devel@pve.proxmox.com" target="_blank">pve-devel@pve.proxmox.com</a><br>
> <a href="http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel" target="_blank">http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel</a><br>
> _______________________________________________<br>
> pve-devel mailing list<br>
> <a href="mailto:pve-devel@pve.proxmox.com" target="_blank">pve-devel@pve.proxmox.com</a><br>
> <a href="http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel" target="_blank">http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel</a><br>
><br>
_______________________________________________<br>
pve-devel mailing list<br>
<a href="mailto:pve-devel@pve.proxmox.com" target="_blank">pve-devel@pve.proxmox.com</a><br>
<a href="http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel" target="_blank">http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel</a><br>
_______________________________________________<br>
pve-devel mailing list<br>
<a href="mailto:pve-devel@pve.proxmox.com" target="_blank">pve-devel@pve.proxmox.com</a><br>
<a href="http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel" target="_blank">http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel</a><br>
</div></div></blockquote></div><br></div>
</div></div></blockquote></div><br></div>