华为——QinQ详解

简介: 华为——QinQ详解

QinQ技术诞生的背景


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


QinQ封装和终结


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


640.jpg


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


01基本QinQ封装


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


02灵活QinQ封装


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


基于VLAN ID的灵活QinQ:


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


基于802.1p优先级的灵活QinQ:


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


基于流策略的灵活QinQ:


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


03QinQ/Dot1q终结子接口

 

QinQ/Dot1q终结是指设备对数据帧的双层或者单层VLAN标签进行识别,根据后续的转发行为对帧中的双层或者单层VLAN标签进行剥离,然后继续传送。

也就是这些VLAN标签仅在此之前生效,后面的数据传输和处理不再依据帧中的这些VLAN标签。


【经验之谈】VLAN终结的实质包括两个方面:


  • 对接口收到的VLAN报文,去除VLAN标签后进行三层转发或其他处理。从设备其它接口转发出去的报文是否带有VLAN标签由对应的端口类型及其数据发送规则决定。    
  • 对接口发送的报文,又将相应的VLAN标签信息添加到报文中后再发送。


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


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

实验


基本QinQ和灵活QinQ结合实验


拓扑:

640.png


实验步骤:


1.配置4台PC的IP地址,子网掩码。

640.png

640.png

640.png

640.png

2.在交换机sw5上创建VLAN 1000和VLAN 2000分别加入到GE0/0/1和GE0/0/2中,GE0/0/3配置为Trunk端口并放行对应的vlan

1. system-view
2. sysname sw5
3. Vlan batch 1000 2000
4.  interface GigabitEthernet0/0/1
5.    port link-type access
6.    port default vlan 1000
7.  interface GigabitEthernet0/0/2
8.    port link-type access
9.    port default vlan 2000
10.  interface GigabitEthernet0/0/3
11.    port link-type trunk
12.    port trunk allow-pass vlan 1000 2000

3.在交换机sw6上创建VLAN 1000和VLAN 2000分别加入到GE0/0/1和GE0/0/2中,GE0/0/3配置为Trunk端口并放行对应的vlan

1. system-view
2. sysname sw6
3. Vlan batch 1000 2000
4. interface GigabitEthernet0/0/1
5.   port link-type access
6.   port default vlan 2000
7. interface GigabitEthernet0/0/2
8.   port link-type access
9.   port default vlan 1000
10. interface GigabitEthernet0/0/3
11.   port link-type trunk
12.   port trunk allow-pass vlan 1000 2000

4.在交换机sw3上,创建VLAN 100、200,将GE0/0/2配置为Trunk端口并允许VLAN 100、200的流量通过,将G0/0/3设置为灵活QinQ

1. system-view
2. sysname sw3
3. Vlan batch 100 200
4. interface GigabitEthernet0/0/2
5.   port link-type trunk
6.   port trunk allow-pass vlan 100 200
7. interface GigabitEthernet0/0/3
8.   qinq vlan-translation enable
9.   port hybrid untagged vlan 100 200
10.   port vlan-stacking vlan 1000 stack-vlan 100
11.   port vlan-stacking vlan 2000 stack-vlan 200

5.在交换机sw4上,创建VLAN 100、200,将GE0/0/2配置为Trunk端口并允许VLAN 100、200的流量通过,将G0/0/3设置为灵活QinQ

1. system-view
2. sysname sw4   
3. Vlan batch 100 200
4. interface GigabitEthernet0/0/2
5.    port link-type trunk
6.    port trunk allow-pass vlan 100 200
7. interface GigabitEthernet0/0/3
8.    qinq vlan-translation enable
9.    port hybrid untagged vlan 100 200
10.    port vlan-stacking vlan 1000 stack-vlan 100
11.    port vlan-stacking vlan 2000 stack-vlan 200

6.在交换机sw1上,创建VLAN 500,将GE0/0/1配置为Trunk端口并允许VLAN 500的流量通过,将G0/0/2设置为接口QinQ

1. system-view
2. sysname sw1
3. Vlan 500
4. interface GigabitEthernet0/0/1
5.   port link-type trunk
6.   port trunk allow-pass vlan 500
7. interface GigabitEthernet0/0/2
8.   port link-type dot1q-tunnel
9.  port default vlan 500

7.在交换机sw2上,创建VLAN 500,将GE0/0/1配置为Trunk端口并允许VLAN 500的流量通过,将G0/0/2设置为接口QinQ

1. system-view
2. sysname sw2
3. Vlan 500
4. interface GigabitEthernet0/0/1
5.   port link-type trunk
6.   port trunk allow-pass vlan 500
7. interface GigabitEthernet0/0/2
8.   port link-type dot1q-tunnel
9.  port default vlan 500


实验结果:


要求同一VLAN内的PC可以互相通信

PC1  ping PC4 通,反之也可以。


640.png


PC2  ping PC3 通,反之也可以。


640.png

640.png


 

p1 ping不同PC2、3

640.png

p2 ping不同PC1、4


640.png

相关文章
|
网络协议 数据安全/隐私保护 网络虚拟化
深入了解OSI模型:计算机网络的七大层次
OSI模型 OSI模型是一个网络通信的概念模型,用于描述计算机网络中各个不同层次之间的通信和功能。它将网络通信分为七个不同的层次,每个层次负责不同的任务,使得网络通信的设计、开发和管理更加模块化和可维护。以下是OSI模型的七个层次以及它们的主要功能: 1、物理层(Physical Layer): 功能:处理物理传输介质上的原始比特流,确保数据在传输媒体上能够以适当的方式传输。 示例设备:集线器、中继器、网线等。 主要任务:比特编码、电压规范、物理拓扑等。 2、数据链路层(Data Link Layer): 功能:负责将原始比特流分割成帧并添加地址信息,以便在直接连接的设备之间传输数据。 示例设
3493 0
|
小程序 数据安全/隐私保护 Android开发
八米云-N1盒子、机顶盒等设备-小白保姆式超详细刷机教程
这里以魔百盒CM211-1为例,本次刷机用到的零碎工具比较多,不过都是常见刚需设备,大家可以按照清单核对一下。 目前只支持S905 L3、L3a、L2 系列的各种盒子
1862 1
八米云-N1盒子、机顶盒等设备-小白保姆式超详细刷机教程
|
存储 运维 安全
|
存储 人工智能 运维
深度解析 | 什么是超融合数据中心网络?
深度解析 | 什么是超融合数据中心网络?
5993 1
|
网络虚拟化 数据安全/隐私保护 数据格式
网络技术基础(9)—— VLAN原理与配置
【3月更文挑战第1天】网络基础笔记(加班了几天,中途耽搁了,预计推迟6天),这篇借鉴了之前师兄的笔记,边听边记笔记实在是太慢了。
|
11月前
|
机器学习/深度学习 人工智能 算法
AI框架的赢者法则:生态繁荣的昇思MindSpore,成为大模型时代的新选择
2024年被视为大模型应用的元年。昇思MindSpore AI框架凭借其强大的开源社区和技术创新,在全球范围内迅速崛起。截至2024年11月,该框架的下载量已超过1100万次,覆盖130多个国家和地区的2400多个城市,拥有3.7万名贡献者。昇思MindSpore不仅在人才培养和社区治理方面表现出色,还在大模型的开发、训练和应用中发挥了关键作用,支持了50多个主流大模型,覆盖15个行业。随着其市场份额预计达到30%,昇思MindSpore正逐步成为行业共识,推动大模型在各领域的广泛应用。
348 12
|
安全 网络安全
生成树 BPDUGuard:保护网络免受 BPDU 攻击
【4月更文挑战第22天】
1235 0
|
存储 网络协议 算法
【华为HCIP | 高级网络工程师】刷题日记(3)
【华为HCIP | 高级网络工程师】刷题日记(3)
1096 0
|
存储 网络协议 算法
|
安全 网络安全 数据安全/隐私保护
手把手教你用eNSP模拟器配置防火墙源NAT
手把手教你用eNSP模拟器配置防火墙源NAT
1758 4