QinQ

7.3.1 QinQ技术诞生的背景

——《华为交换机学习指南》

QinQ最初主要是为扩展VLAN ID空间而产生的,但随着城域以太网的发展以及运营商精细化运作的要求,QinQ的双层标签又有了进一步的使用场景。它的内、外层标签可以代表不同的信息,如内层标签代表用户,外层标签代表业务。另外,QinQ数据帧带着两层标签穿越运营商网络,内层标签透明传送,也可以看作是一种简单、实用的VPN技术。因此它又可以作为核心MPLS VPN在城域以太网VPN的延伸,最终形成端到端的VPN技术。由于QinQ方便易用的特点,现在已经在各运营商中得到了广泛的应用,如QinQ技术在城域以太网解决方案中和多种业务相结合。特别是灵活QinQ(Selective QinQ/VLAN Stacking)的出现,使得QinQ业务更加受到了运营商的推崇和青睐。

我们知道,普通VLAN中的一个VLAN标签是用来区分用户的,但如果想要同时区分用户和业务类型,那么怎么办呢?如图7-11是一个总公司下面连接了两个分支子公司,而各分支子公司中已对不同部门的员工采用了VLAN进行区分,但两个子公司的部门VLAN ID规划是重叠的。这样如果数据帧中只采用一层VLAN标签,总公司就无法区分数据是来自哪个子公司的也就无法针对不同子公司的数据进行任何处理了。

图7-11 QinQ典型应用示例

为了解决这个问题,我们可以设想在总公司的交换机上为各子公司创建了不同的VLAN。这样当连接对应子公司的总公司交换机端口收到数据帧后再在数据帧外面添加一层VLAN标签(此时数据帧中就有两层VLAN标签了,原来的VLAN标签称之为内层VLAN标签,新添加的称之为外层VLAN标签),如为子公司1和子公司2的数据帧分别添加的外层VLAN标签为VLAN 10和VLAN 20,这样就可实现在总公司中对来自不同子公司的数据进行区分了,也可以对来自这两个子公司的数据提供不同的服务,即差分服务了。

另外,在基于传统的802.1Q协议的二层局域网互联模式中,当两个用户网络需要通过服务提供商(ISP)互相访问时(如在城域以太网中),ISP必须为每个接入用户创建不同的VLAN。这种配置方法一方面使得用户的VLAN在骨干网络上可见,存在一定的安全隐患,同时因为一一对应的VLAN ID,也消耗了大量服务提供商的VLAN ID资源。这对较大的ISP来说是无法承受的,因为只有4094个VLAN ID可用),当接入的用户数目很多时可能使ISP网络的VLAN ID不够用。另外,采用这种普通VLAN部署方式下,不同的ISP接入用户就不能使用相同的VLAN ID,否则就无法实现不同接入用户间的隔离,这时用户的VLAN ID只能由ISP统一规划,导致用户没有自己规划VLAN的权利。

通过QinQ技术可以有效地解决以上问题,因为它可以为许多不同内层VLAN标签用户使用同一个外层VLAN标签进行封装,解决了ISP的VLAN ID资源不足的问题。另外,通过外层VLAN标签对内层VLAN标签的屏蔽作用,使得用户自己的内层VLAN ID部署可以由用户自己作主,而不必由ISP来统一部署。

这个双层VLAN标签可以当作单层VLAN标签使用,即仅使用新添加的外层公网VLAN标签,内层私网VLAN可以作为数据来传输,如在本章后面将要介绍的2 to 1的VLAN映射中;当然也可以作为双层VLAN标签来使用(如在本章后面将要介绍的2 to 2的VLAN映射中),整个数据帧中的VLAN标签由内、外双层VLAN标签共同决定,这样一来,就相当于可以使用的VLAN ID数量达到了4094×4094个了,以此来达到扩展VLAN空间的目的。通过这样的双层VLAN标签封装,可以使私网VLAN ID可以在公网上透传,既解决了用户VLAN ID的安全性问题和由用户自己规划私网VLAN ID的需求问题,又解决了ISP的VLAN ID空间不足的问题,因为在ISP中可以为需要相互访问的用户配置相同的外层VLAN,也只需为来自同一用户网络的不同VLAN提供一个VLAN ID。

7.3.2 QinQ封装和终结

QinQ是在传统802.1Q VLAN标签头基础上再增加一层新的802.1Q VLAN标签头,如图7-12所示。由此可知,QinQ帧比传统的802.1Q帧多了四个字节,即新增的802.1Q VLAN标签。

图7-12 传统802.1Q帧和QinQ帧格式比较

QinQ帧封装的过程就是把单层802.1Q标签的数据帧转换成双层802.1Q标签的数据帧。封装过程主要发生在城域网侧连接用户的交换机端口上进行的。根据不同的VLAN标签封装依据,QinQ可以分为“基本QinQ”和“灵活QinQ”两种类型。具体说明如下。

1.    基本QinQ封装

“基本QinQ封装”是将进入一个端口的所有流量全部封装一个相同的外层VLAN标签,是一种基于端口的QinQ封装方式,也称“QinQ二层隧道”。开启端口的基本QinQ功能后,当该端口接收到已经带有VLAN标签的数据帧时,则该数据帧就将封装成双层标签的帧;如果接收到的是不带VLAN标签的数据帧,则该数据帧将封装成为带有端口缺省VLAN的一层标签的帧。

从以上介绍可以看出,基本QinQ的VLAN标签封装不够灵活,很难有效地区分不同的用户业务,因为它对进入同一个交换机端口的所有数据帧都封装相同的外层VLAN标签。但在需要较多的VLAN时,可以使用这个基本QinQ功能,这样可以减少对VLAN ID的需求,因为进入同一个端口的所有数据帧都封装同一个外层VLAN标签。

如在图7-13所示的网络中,企业部门1(Department1)有两个办公地,部门2(Department2)有三个办公地,两个部门的各办公地分别和网络中的PE1、PE2相连,部门1和部门2可以任意规划自己的VLAN。这样,可在PE1和PE2上通过如下思路配置QinQ二层隧道功能,使得每个部门的各个办公地网络可以互通,但两个部门之间不能互通。

l  在PE1上,对于进入端口Port1和Port2的用户(都属于部门1)数据帧都封装外层VLAN 10,对于进入端口Port3中用户(属于部门2)数据帧都封装外层VLAN 20。

l  在PE2上,对于进入端口Port1和Port2的用户(都属于部门2)数据帧都封装外层VLAN 20。

l  PE1上的端口Port4和PE2上的端口Port3允许VLAN 20的用户数据帧通过,以便实现连接在PE1的Port3上部门2的用户与连接在PE2的Port1和Port2上部门2的用户互通。

这种基本QinQ封装就相当于用一个外层的VLAN标签映射同类用户的多个内层VLAN标签,以减少ISP端设备VLAN ID的使用量。

图7-13 基本QinQ典型应用示例

2.    灵活QinQ封装

“灵活QinQ”是对QinQ的一种更灵活的实现,是基于端口封装与基于VLAN封装的结合方式。除了能实现所有基本QinQ的功能外,灵活QinQ对于同一个端口接收的数据帧还可以根据不同的内层VLAN标签执行不同的外层标签封装。它又可分为以下三个子类:

l  基于VLAN ID的灵活QinQ:它是基于数据帧中不同的内层标签的VLAN ID来添加不同的外层标签。即具有相同内层标签的帧添加相同的外层VLAN标签,具有不同内层标签的帧添加不同的外层VLAN标签。这就要求不同用户的内层VLAN ID或VLAN ID范围绝对不能重叠或交叉。华为S系列交换机中的S2700、S3700、S5700、S6700仅支持基于VLAN ID的灵活QinQ功能

l  基于802.1p优先级的灵活QinQ:它是基于数据帧中不同的内层标签的802.1p优先级来添加不同的外层标签。即具有相同内层VLAN 802.1p优先级的帧添加相同的外层标签,具有不同内层VLAN 802.1p优先级的帧添加不同的外层标签。这就要求不同用户的内层VLAN的802.1p优先级或802.1p优先级范围绝对不能重叠或交叉。基于802.1p优先级的灵活QinQ在华为S系列交换机中S7700、S9300和S9700系列支持

l  基于流策略的灵活QinQ:它是根据所定义的QoS策略为不同的数据帧添加不同的外层标签。基于流策略的灵活QinQ是基于端口与VLAN相结合的方式实现的,能够针对业务类型提供差别服务。基于流策略的灵活QinQ在华为S系列交换机中S7700、S9300和S9700系列支持

以上三种灵活QinQ的配置方法将在本章后面具体介绍。

当同一用户的不同业务需要使用不同的VLAN ID时,可以根据VLAN ID区间进行分流。现假设PC上网的VLAN ID范围是101~200;IPTV的VLAN ID范围是201~300;大客户的VLAN ID范围是301~400。面向用户的端口在收到用户数据后根据用户VLAN ID范围,对PC上网业务封装上外层标签100,对IPTV封装上外层标签300,对大客户封装上外层标签500。

【说明】QinQ封装一般在交换式端口上进行,但也可以在路由子接口上进行(QinQ终结只能在路由子接口上进行)。此种方法可以通过一个子接口来透传多个标识用户的VLAN ID,这种子接口也叫QinQ Stacking子接口。这种封装方式也是基于流的QinQ封装方式,但QinQ Stacking子接口只能和L2VPN业务结合起来才有意义,不支持三层转发功能。

在如图7-14所示的网络中,企业的部门1有多个办公地,部门2也有多个办公地。部门1的网络中使用VLAN 2~VLAN 500;部门2的网络中使用VLAN 500~VLAN 4094。PE1的Port1端口会同时收到两个部门不同VLAN区间的用户数据帧。

图7-14 灵活QinQ典型应用示例

此时可根据图中标识的各办公地的用户VLAN ID范围在PE1和PE2上通过如下思路配置基于VLAN的灵活QinQ功能,使得每个部门的各个办公地网络可以互通,但两个部门之间不能互通。具体配置思路如下:

l  对于进入PE1的Port1端口的用户数据帧,依据其VLAN ID的不同添加对应的外层VLAN标签。如VLAN ID在2~500之间,则封装VLAN ID为10的外层标签;如VLAN ID在1000~2000之间,则封装VLAN ID为20的外层标签;

l  对于进入PE1的Port2端口的用户数据帧,如果VLAN ID在100~500之间,则封装VLAN ID为10的外层标签;

l  对于进入PE2的Port1端口的用户数据帧,如VLAN ID在1000~4094之间,则封装VLAN ID为20的外层标签;

l  对于进入PE2的Port2端口的用户数据帧,如果VLAN ID在500~2500之间,则封装VLAN ID为20的外层标签;

l  在PE1和PE2的Port3端口上允许VLAN 20的帧通过,以便实现连接在PE1的Port1端口下连接的部门2用户与连接在PE2的Port1和Port2的部门2的用户互通。

从以上可以看出,灵活QinQ比基本QinQ的外层标签封装更加灵活,可可以根据用户数据帧中的原来的VLAN ID范围来确定封装不同的外层标签,这样更有方便了对相同网络中不同业务的用户数据流提供差分服务。

3.    QinQ/Dot1q终结子接口

QinQ/Dot1q终结是指设备对数据帧的双层或者单层VLAN标签进行识别,根据后续的转发行为对帧中的双层或者单层VLAN标签进行剥离,然后继续传送。也就是这些VLAN标签仅在此之前生效,后面的数据传输和处理不再依据帧中的这些VLAN标签。
 【经验之谈】VLAN终结的实质包括两个方面:
      l  对接口收到的VLAN报文,去除VLAN标签后进行三层转发或其他处理。从设备其它接口转发出去的报文是否带有VLAN标签由对应的端口类型及其数据发送规则决定。
      l  对接口发送的报文,又将相应的VLAN标签信息添加到报文中后再发送。

终结一般在路由子接口上执行,即终结子接口,如我们在单臂路由中就要配置路由子接口的802.1Q的VLAN终结。如果路由子接口是对数据帧的单层VLAN标签终结,那么该子接口称为Dot1q 终结子接口;如果路由子接口是对数据帧的双层VLAN标签终结,那么该子接口称为QinQ终结子接口。QinQ终结子接口根据终结的用户VLAN标签的类型,通常分为两种子接口:

l  明确的QinQ终结子接口:两层VLAN标签为固定的值。

l  模糊的QinQ终结子接口:两层VLAN标签为范围值,即:终结的内、外层标签都为一个VLAN ID范围值。

时间: 2024-10-08 07:32:31

QinQ的相关文章

Qinq技术介绍与实战

说明:本文介绍部分是我在网络收集整理并添加提供. Qinq技术介绍与实战 Qinq介绍 Qinq就是为用户提供一种较为简单的二层VPN隧道.最核心的思想就是将用户私网VLAN tag封装到公网VLANtag上,报文带着两层tag穿越服务商的骨干网络.在用户端口上使QinQ功能时,都会为每个用户分配一个Customer-ID.其中报文中的两层tag标签包括内层ce-vid--VLAN标签和外层pe-vid-Qint标签. 那么问题来了,为什么要带两层标签呢? 我们知道,普通VLAN中的一个VLAN

基于FTTH组网的qinq业务的配置

OLT的基本查看命令 showrunning-config //查看正在运行的配置文件 show card//查看主控板和线卡的在线状态,和版本信息 show gpononu uncfg//查看OLT所有未配置的ONU show gpononu uncfg gpon-olt_1/3/2 //查看端口下未配置的ONU show gpononu state  //查看OLT所有已经配置的ONU 其中,参数"PhaseState"可能有如下几种取值: (1) offline,表示该 ONU

Qinq Vlan mapping 和DHCP 服务器

拓扑如下: DHCP server(vlan 101)-------G0/0/1-S5700-G0/0/2-------client1(vlan101)   | G0/0/3 Client2(vlan 110) 主要配置如下: #interface Vlanif101 ip address 192.168.1.1 255.255.255.0 dhcp select global#interface MEth0/0/1#interface GigabitEthernet0/0/1 port lin

华为9300 、华三5500 传输网Qinq配置

如上图,要将CE-c的vlan 20 通过P网络传输到CE-a ,大大网中使用vlan为1000 只要在PE端配置相关数据即可,CE端无需操作可以是hybird 或者trunk都可以 华三5500配置 interface Ten-GigabitEthernet1/2/1 port link-mode bridge description nbdx port link-type hybrid undo port hybrid vlan 1 port hybrid vlan 77 88 91 to

博达3616系列OLT河北广电Qinq配置

广电常用配置总结 1      Qinq相关配置 1.1    基于内层vlan添加外层标签(静态方式) 以唐山市广电配置为例 policy-map      iptv                 IPTV内层200,外层2001-2100 classify ivlan 200 action vlanIDadd 2001 ! policy-map      ppoe                PPOE内层500-1524,外层2101-2200 classify ivlan 500- 1

电信运营商城域网架构关键技术-QinQ双层标签

QinQ技术的应用场景: 在运营商的网络中每一个用户都需要放入一个单独的VLAN中,以便实现进行各用户之间的隔离,但是由于802.1q中VLAN TAG只有12比特,导致 vlan数量最多只能有4096个无法满足城域网中大量用户的隔离需求,这时就用到了QinQ技术. QinQ技术是通过在原有的802.1q的基础上增加了一层802.1q标签来实现的,使得VLAN数量扩展到4094 * 4094个.如下图: 下面通过实验来详细说明,通过华为设备在运营商城域网中如何部署QINQ技术. 实验拓扑 使用e

灵活QinQ配置

华为交换机灵活QinQ配置列子 #用户端 Gi 0/0/1 qinq vlan-translation enable port hybrid untagged vlan 100 port vlan-stacking untagged stack-vlan 100 stack-inner-vlan 2 #路由端 Gi 0/0/11 port link-type trunk port tunk allow-pass vlan 100 q save 参考:交换机在江湖:http://support.h

QinQ技术〔也称Stacked VLAN 或Double VLAN〕

原理 在公网中,设备只根据外层VLAN Tag对报文进行转发,并将报文的源MAC地址表项学习到外层Tag所在VLAN的MAC地址表中,而用户的私网VLANTag在传输过程中将被当做报文中的数据部分来进行传输.QinQ使得运营商可以用一个VLAN为含有多个VLAN的用户网络服务.举例来说,用户网络A的私网VLAN为VLAN1~10,用户网络B的私网为VLAN1~20.运营商为用户网络A分配的VLAN为VLAN3,为用户网络B分配的VLAN为VLAN 4.当用户网络A的带VLAN Tag的报文进入运

使用eNSP配置端口QinQ

参考链接:https://blog.csdn.net/alone_map/article/details/52217094 本文主要记录使用华为eNSP模拟器来实现配置QinQ,并对QinQ的报文进行简单分析. QinQ简介:QinQ技术(也称Stacked VLAN 或Double VLAN)是指将用户私网VLAN标签封装在公网VLAN标签中,使报文带着两层VLAN标签穿越运营商的骨干网络,在公网中只根据外层VLAN标签传播,私网VLAN标签被屏蔽,这样,不仅对数据流进行了区分,而且由于私网V