灵活QinQ配置
是基于端口与VLAN相结合的方式实现的,可以对进入同一端口的数据帧依据帧中原来的内层VLAN ID的不同来添加不同的外层VLAN标签。在发送数据帧时也会剥离帧中的外层VLAN标签。
配置基于VLAN ID的灵活QinQ,可实现端口在接收到数据帧后,依据帧中不同内层VLAN ID添加不同的外层VLAN标签。通过一条qinq vlan-translation enable命令在端口上使能VLAN转换功能
配置基于VLAN ID的灵活QinQ功能的端口类型必须是Hybrid类型,且只在入方向上生效,同时必须以Untagged方式加入添加后的外层VLAN中(此外层VLAN必须事先创建),这样就可使得该端口在发送数据帧时去掉帧中的外层VLAN,实现外层标签的剥离目的。在端口学习MAC地址时,所学习到的MAC地址是QinQ数据帧外层VLAN的MAC地址,与数据帧原来的内层VLAN无关。
基于VLANID的灵活QinQ配置实验:
LSW3和LSW4交换机模拟本地交换机,按照不同业务划分不同的本地VLAN,这里假设VLAN10~20是PC业务,VLAN30~40是VoIP业务,在SwitchA和SwitchB上的GE0/0/2口配置基于VLANID的灵活QinQ配置。
基于802.1p优先级的灵活QinQ(模拟器不支持,只有S7700、S9300S9700系列支持,无法实验)
基于802.1p优先级(即通常所说的VLAN优先级)的灵活QinQ功能可根据进入端口的数据帧的802.1p优先级和VLANID灵活的添加外层VLAN标签,优先保证重要用户的正常通信。
基于802.1p优先级的灵活QinQ功能仅对入方向的数据帧生效,且配置此功能的端口类型必须为Trunk或Hybrid类型
与基于VLANID的灵活QinQ配置相比,只是在端口配置上使用如下命令:
port vlan-stacking 8021p 8021p-value stack-vlan vlan-id
教材上说这里的8021p-value是指定添加外层VLAN标签后帧的优先级,我感觉说明是错误的,这里的8021p-value应该是内层VLAN标签的优先级,端口根据这个优先级值进行外层VLAN的添加,至于添加后的外层VLAN的优先级,可能是0,也可能是与内层相同(个人理解)。
或者
port vlan-stacking vlan vlan-id1 [ to vlan-id2] 8021p 8021p-value1 [to 8021p-value2] stack-vlan vlan-id3 [remark-8021p 8021p-value3]
这条命令是先限制内层VLAN,即在vlan-id1 [ to vlan-id2]的内层VLAN范围内,同时其优先级在8021p-value1 [to 8021p-value2]之间的VLAN帧,添加外层VLAN标签vlan-id3,同时修改外层标签的优先级为8021p-value3。
如果端口上同时配置了portvlan-stacking vlan vlan-id1 [to vlan-id2] 8021p 8021p-value1 [ to 8021p-value2]stack-vlan vlan-id3命令(没有指定remark-8021p 8021p-value3)与port vlan-mappingvlan 8021p 8021p-value1 [to 8021p-value2] map-vlan vlan-id3命令(指定了映射后802.1p的优先级)。此时启用灵活QinQ功能后帧的802.1p优先级按照portvlan-mapping vlan 8021p命令配置生效。
如果在入端口上创建了DiffServ(差分服务)域,并配置VLAN帧的802.1p优先级映射,则此时交换机的内部优先级(是指不同的服务级别)配置就会与帧中原来的802.1p优先级不一样。这时就需要在出端口上再次配置802.1p优先级映射,重新恢复帧中原来的优先级。
这是在出端口上要进行配置802.1p优先级映射。(需要结合差分服务知识)
基本步骤:
DiffServ domain domain-name
8021p-outbound af1 yellow map 2
int g/0/1
port link-type hybrid
port Hybrid Tagged vlan 20 或 port trunk allow-pass vlan 20
trust upstream domain-name
基于流策略的灵活QinQ
“流策略”是指将流分类和流行为关联后形成的完整的QoS策略。用户可以根据数据帧中的VLANID进行流分类,然后将流分类与某种流行为关联,对符合流分类的数据帧进行相应的处理(添加外层VLAN标签),从而实现灵活QinQ功能。基于流策略的灵活QinQ功能能够针对业务类型提供差别服务。
基于流策略的灵活QinQ配置包括以下4个基本任务:
(1)定义流分类:针对数据帧中的内层VLANID进行分类。
(2)定义流行为:根据不同的内层VLANID添加不同的外层VLANID。
(3)创建QoS策略,将以上定义的流分类与流行为关联。
(4)在端口(必须是Hybrid类型端口)的入方向上应用以上创建QoS策略。
应用流策略的端口只能是不带标签的Hybrid类型。
实验:拓扑同上面的实验,就是在SwitchA\B端口上采用基于策略的灵活QinQ
(1)在SwitchA和SwitchB上创建所需的外层VLAN,然后定义基于内层VLANID的流分类,定义对应的流行为。
(2)在SwitchA和SwitchB下行端口设为不带标签的Hybrid类型并加入所需的外层VLAN中,然后应用流策略来实现灵活QinQ功能。
(3)在SwitchA和SwitchB连接运营商网络的端口上配置为Trunk或带有标签的Hybrid类型,并允许所有的外层VLAN通过。
经过上述配置后,测试连通性,发现网络不通,判定的原因可能就是流行为中配置nest top-most vlan-id命令不成功。
在LSW3与SwitchA的链路上抓包,显示有VLAN10的广播包通过,但在SwitchAB之间没有数据包通过。