QinQ技术是一项扩展VLAN空间的技术,通过在802.1Q标签报文的基础上再增加一层802.1Q的标签头来达到扩展VLAN空间的功能,可以使私网VLAN透传公网。
在基于传统的802.1Q协议的二层局域网互联模式中,当两个用户网络需要通过服务提供商(ISP)互相访问时,ISP必须为每个接入用户的不同VLAN分配不同的VLAN ID,如图1所示。假设用户的网络1和网络2位于两个不同地点,并分别通过ISP的PE1、PE2接
入骨干网。
如果用户需要将网络1的VLAN100~VLAN200和网络2的VLAN100~VLAN200互联起来,那么必须将CE1、PE1、P和PE2、CE2的相连端口都配置为Trunk属性,并允许VLAN100~VLAN200通过。这种配置方法使得用户的VLAN在骨干网络上可见,而非透明传输。这不仅耗费服务提供商的VLAN ID资源(一般只有4094个VLAN ID),而且还需要服务提供商管理用户的VLAN号,用户也没有自己规划VLAN的权利。
当接入的用户数目很多时,可能使ISP网络的VLAN ID不够用(只允许有4094个VLANID)。另外,不同的用户也不能使用相同的VLAN ID,用户的VLAN ID需要由ISP统一规划。
QinQ技术是一项扩展VLAN空间的技术,通过在802.1Q标签报文的基础上再增加一层802.1Q的标签头来达到扩展VLAN空间的功能,可以使私网VLAN透传公网,有效的解决了上述问题。
QinQ协议是基于IEEE 802.1Q技术的一种二层隧道协议。由于在骨干网中传递的报文有两层802.1Q Tag头(一层公网Tag,一层私网Tag),即802.1Q-in-802.1Q所以称之为QinQ协议。
QinQ技术由于其方便易用的特点,现在已经在各运营商中得到了广泛的应用。如QinQ技术在城域以太网解决方案中和多种业务相结合。特别是灵活QinQ(VLAN Stacking)的出现,使得QinQ业务更加受到了运营商的推崇和青睐,它具有不同用户之间的VLAN与公网VLAN有效分离、最大限度节省运营商网络的VLAN资源等特点。随着城域以太网的大力发展,各个设备提供商都提出了各自的城域以太网的解决方案,QinQ因为其自身简单灵活的特点,在各解决方案中扮演着重要的角色。
基本QinQ
基本QinQ又称为QinQ二层隧道,是基于端口方式实现的。开启端口的基本QinQ功能后,当该端口接收到报文,设备会为该报文打上本端口缺省VLAN的VLAN Tag。如果接收到的是已经带有VLAN Tag的报文,该报文就成为双Tag的报文;如果接收到的是不
带VLAN Tag的报文,该报文就成为带有端口缺省VLAN Tag的报文。
灵活QinQ
灵活QinQ是对QinQ的一种更灵活的实现,它是基于端口与VLAN相结合的方式实现的。除了能实现所有基本QinQ的功能外,对于同一个端口接收的报文还可以根据不同的VLAN做不同的动作,可以实现以下功能:
1. 基于VLAN ID的灵活QinQ:为具有不同内层VLAN ID的报文添加不同的外层VLANTag。
如图2所示,是IEEE802.1Q协议定义的以太网帧的VLAN Tag结构。标签协议标识TPID(Tag Protocol Identifier)是VLAN Tag中的一个字段,用于表示VLAN Tag的协议类型,IEEE 802.1Q协议规定该字段的取值为0x8100。
不同厂商的设备可能将QinQ报文外层VLAN Tag的TPID字段设为不同的值,为了和其他厂商的设备兼容,设备提供了QinQ报文外层VLAN Tag的TPID值可修改功能。用户通过配置TPID的值,使得发送到公网中的QinQ报文携带的TPID值与其他厂商相同,就可以实现与其他厂商的设备互通。
以太网帧的TPID与不带VLAN标记的帧的协议类型字段位置相同。为避免在网络中转发和处理数据包时出现问题,不可将 TPID 值设置为下表中的任意值:
协议类型及对应值描述表
配置举例请参看:http://www.elvhome.com/html/2013-5-20/201352011463288207.html





