设为首页收藏本站language 语言切换
查看: 2590|回复: 11
收起左侧

[分享] QinQ(802.1Q-in-802.1Q)技术详解

[复制链接]
 成长值: 63385
发表于 2021-8-24 10:45:58 | 显示全部楼层 |阅读模式
QinQ简介
介绍QinQ的定义、目的和受益。

定义
QinQ(802.1Q-in-802.1Q)技术是一项扩展VLAN空间的技术,通过在802.1Q标签报文的基础上再增加一层802.1Q的Tag来达到扩展VLAN空间的功能,可以使私网VLAN透传公网。由于在骨干网中传递的报文有两层802.1Q Tag(一层公网Tag,一层私网Tag),即802.1Q-in-802.1Q,所以称之为QinQ协议。

目的
随着以太网技术在网络中的大量部署,利用802.1Q VLAN对用户进行隔离和标识受到很大限制。因为IEEE802.1Q中定义的VLAN Tag域只有12个比特,仅能表示4096个VLAN,无法满足以太网中标识大量用户的需求,于是QinQ技术应运而生。

QinQ是通过在原有的802.1Q报文的基础上增加一层802.1Q标签来实现的,使得VLAN数量增加到4094×4094,扩展了VLAN空间。

随着以太网的发展以及精细化运作的要求,QinQ的双层标签又有了进一步的使用场景。它的内外层标签可以代表不同的信息,如内层标签代表用户,外层标签代表业务。另外,QinQ报文带着两层Tag穿越公网时,内层Tag透明传送,也是一种简单、实用的VPN技术。

受益
QinQ通过增加一层802.1Q的标签头实现了扩展VLAN空间的功能,具有以下价值:
扩展VLAN,对用户进行隔离和标识不再受到限制。
QinQ内外层标签可以代表不同的信息,如内层标签代表用户,外层标签代表业务,更利于业务的部署。
QinQ封装、终结的方式很丰富,帮助运营商实现业务精细化运营。

基本原理
QinQ是指在802.1Q VLAN的基础上增加一层802.1Q VLAN标签,从而拓展VLAN的使用空间。在公网的传输过程中,设备只根据外层VLAN Tag转发报文,并根据报文的外层VLAN Tag进行MAC地址学习,而用户的私网VLAN Tag将被当作报文的数据部分进行传输。

QinQ报文封装格式
QinQ报文有固定的格式,就是在802.1Q的标签之上再打一层802.1Q标签,QinQ报文比802.1Q报文多四个字节。

图7-1  802.1Q封装

QinQ封装
QinQ封装是指如何把单层Q报文转换成双层Q报文。

根据不同的封装数据,QinQ可以分为几种不同类型,包括基本QinQ和灵活QinQ两大类。其中基本QinQ是指基于接口的QinQ,灵活QinQ包括基于VLAN ID的QinQ和基于802.1p优先级的QinQ,具体如下:

基于接口的QinQ封装

基于接口的封装是指进入一个接口的所有流量全部封装一个相同的外层VLAN Tag,封装方式不够灵活,用户业务区分不够细致,这种封装方式也称作基本QinQ。

基于VLAN ID的QinQ封装

基于VLAN ID的QinQ封装可以对不同的数据流选择是否封装外层Tag、封装何种外层Tag,因此这种封装方式也称作灵活QinQ。

例如:当同一用户的不同业务使用不同的VLAN ID时,可以根据VLAN ID区间进行分流。假设PC上网的VLAN ID范围是101~200;IPTV的VLAN ID范围是201~300;VoIP的VLAN ID范围是301~400。根据VLAN ID范围,对PC上网业务封装上外层Tag 100,对IPTV封装上外层Tag 300,对VoIP封装上外层Tag 500。

基于802.1p优先级的QinQ封装

基于802.1p优先级的QinQ封装可以对不同优先级的数据流选择是否封装外层Tag、封装何种外层Tag,因此这种封装方式也称作灵活QinQ。

例如:当同一用户的不同业务使用不同的优先级,如语音、视频、数据等。可以根据优先级为这些业务建立不同的数据传输通道,方便对业务进行区分。

QinQ的实现方式
QinQ的实现方式可分为以下两种:

基本QinQ
基本QinQ是基于端口方式实现的。当端口上配置了基本QinQ功能后,不论从该端口收到报文是否带有VLAN Tag,设备都会为该报文打上本端口缺省VLAN的Tag。
如果收到的是带有VLAN Tag的报文,该报文就成为带双Tag的报文。
如果收到的是不带VLAN Tag的报文,该报文就成为带有本端口缺省VLAN Tag的报文。
灵活QinQ
灵活QinQ是基于端口与VLAN相结合的方式实现的,即端口对接收的报文,可以通过单层VLAN tag转发,也可以通过双层VLAN tag转发。另外对于从同一个端口收到的报文,还可以根据VLAN的不同进行不同的操作,包括:
为具有不同内层VLAN ID的报文添加不同的外层VLAN Tag。
根据报文内层VLAN的802.1p优先级标记外层VLAN的802.1p优先级和添加不同的外层VLAN Tag。
通过使用灵活QinQ技术,在能够隔离运营商网络和用户网络的同时,又能够提供丰富的业务特性和更加灵活的组网能力。

QinQ/Dot1q终结子接口
终结主要是指设备对报文的单层或者双层Tag进行识别,然后根据后续的转发行为对单层或者双层Tag进行剥离或继续传送。

终结一般在路由子接口上执行,即:终结子接口。

QinQ终结子接口具体的实现方法、功能和具体的应用场景有一定关系,下文根据不同的场景进行说明。
基本QinQ
基本QinQ,是基于接口方式实现的。开启接口的基本QinQ功能后,当该接口接收到报文,设备会为该报文打上配置的外层Tag。如果接收到的是已经带有VLAN Tag的报文,则为其加上外层VLAN Tag;如果接收到的是不带VLAN Tag的报文,则先为其加上内层VLAN Tag,再加上外层Tag。
图7-2所示,企业A有两个分支,分别通过PE1和PE2接入到运营商网络。
图7-2  配置基本QinQ典型组网图

                               
登录/注册后可看大图


企业A内部存在不同业务,因此划分了不同VLAN。在CE设备的运营商侧配置基本QinQ功能,为通过该接口的报文统一添加VLAN ID为20的外层VLAN Tag,到达另一分支时统一剥掉外层VLAN Tag。这样两分支之间的流量就可以在公网中透明传输,使企业A两分支相同业务可以互通,不同业务之间互相隔离。

游客,如果您要查看本帖隐藏内容请回复


发表于 2021-9-28 16:53:48 | 显示全部楼层
谢谢楼主分享
5# 2021-9-28 16:53:48 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2021-9-29 17:20:30 | 显示全部楼层
谢谢技术上的分析
6# 2021-9-29 17:20:30 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2021-11-15 11:41:55 | 显示全部楼层
QinQ(802.1Q-in-802.1Q)技术详解
7# 2021-11-15 11:41:55 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2021-11-27 19:44:28 | 显示全部楼层
感谢楼主分享
9# 2021-11-27 19:44:28 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2021-11-30 13:55:13 | 显示全部楼层
谢谢分享优质资源
10# 2021-11-30 13:55:13 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2022-9-18 23:20:55 | 显示全部楼层

谢谢楼主分享
12# 2022-9-18 23:20:55 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-1 09:03 , Processed in 0.071028 second(s), 12 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表