配置灵活QinQ
灵活QinQ是对QinQ的一种更灵活的实现,是一种可以针对用户不同VLAN封装外层VLAN Tag的二层技术。
配置基于VLAN ID的灵活QinQ
背景信息
基于VLAN ID的灵活QinQ功能可实现接口在接收到数据帧后,依据帧中不同VLAN ID添加不同的外层VLAN Tag。
- 配置基于VLAN ID的灵活QinQ功能的当前接口类型必须为Hybrid或Trunk,且只在当前接口的入方向生效。
- 接口类型建议为Hybrid untagged方式。如果配置为Trunk或者Hybrid tagged方式,需要配置port trunk pvid vlan或port hybrid pvid vlan。
- 叠加后的外层VLAN必须存在,且当前接口必须以Untagged方式加入叠加后的stack-vlan中。
- 接口学习MAC地址时,学习的是QinQ报文外层VLAN的MAC地址。
- 不能在同一接口上配置MUX VLAN和基于VLAN ID的灵活QinQ功能。
port vlan-stacking指定的叠加前的VLAN和QINQ二层子接口配置的外层VLAN不能重叠。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令interface interface-type interface-number,进入接口视图。
- 执行命令port link-type { hybrid | trunk },配置接口类型为Hybrid或Trunk。
缺省情况下,接口类型是Access。
- 配置接口加入VLAN。
以下步骤,请根据需要任选一种。
Trunk接口
执行命令port trunk allow-pass vlan { { vlan-id1 [ to vlan-id2 ] }&<1-40> | all },配置Trunk类型接口加入叠加后的VLAN。
Hybrid接口
执行命令port hybrid untagged vlan vlan-id,配置Hybrid接口以Untagged方式加入叠加后的VLAN。
叠加后的外层VLAN必须是设备上已经存在的VLAN,叠加前的VLAN可以不创建。
- 执行命令port vlan-stacking vlan vlan-id1 [ to vlan-id2 ] stack-vlan vlan-id3,配置基于VLAN ID的灵活QinQ。
如果配置三条以上指定VLAN范围段的port vlan-stacking,且配置会引起至少两次范围段合并,则需要每条命令都commit,否则可能导致流量丢包。例如,分别配置port vlan-stacking vlan 31 to 60 stack-vlan 100、port vlan-stacking vlan 20 to 30 stack-vlan 100、port vlan-stacking vlan 61 to 70 stack-vlan 100,会先后引起20~60和20~70两次范围段合并,此时就需要每条命令都commit。
对于CE12800E安装FD-X系列单板,qinq protocol与port vlan-stacking命令互斥,不可同时配置。
- 执行命令commit,提交配置。
配置基于MQC的灵活QinQ
背景信息
用户可以根据报文中VLAN ID进行流分类,然后将流分类与某种流行为关联,对符合流分类的报文进行相应的处理(添加外层VLAN Tag),从而实现基于MQC的灵活QinQ功能。
仅CE12800E支持配置基于MQC的灵活QinQ。
操作步骤
- 配置流分类
- 执行命令system-view,进入系统视图。
- 执行命令traffic classifier classifier-name [ type { and | or } ],创建一个流分类并进入流分类视图,或进入已存在的流分类视图。and表示流分类中各规则之间关系为“逻辑与”,指定该逻辑关系后:
当流分类中有ACL规则时,报文必须匹配其中一条ACL规则以及所有非ACL规则才属于该类;
当流分类中没有ACL规则时,则报文必须匹配所有非ACL规则才属于该类。
缺省情况下,流分类中各规则之间的关系为“逻辑或”。
执行命令if-match,定义流分类中的匹配规则。
流分类中可定义的规则有很多种,详细内容可参见《CloudEngine 12800, 12800E系列交换机QoS业务配置指南-MQC配置》中的“配置流分类”部分。
- 执行命令commit,提交配置。
- 执行命令quit,退出流分类视图。
- 配置流行为
- 执行命令traffic behavior behavior-name,创建一个流行为并进入流行为视图,或进入已存在的流行为视图。
- 执行命令vlan-stacking vlan vlan-id,配置流行为中添加外层VLAN Tag的动作,即为指定报文添加外层VLAN。
- 执行命令commit,提交配置。
- 执行命令quit,退出流行为视图。
- 执行命令quit,退出系统视图。
- 配置流策略
执行命令system-view,进入系统视图。
执行命令traffic policy policy-name,创建一个流策略并进入流策略视图,或进入已存在的流策略视图。
执行命令classifier classifier-name behavior behavior-name [ precedence precedence-value ],在流策略中为指定的流分类配置所需流行为,即绑定流分类和流行为。
执行命令commit,提交配置。
- 执行命令quit,退出流策略视图。
- 执行命令quit,退出系统视图。
- 应用流策略
- 包含vlan-stacking的流策略只能应用在入方向上。
对于CE12800,各视图下应用流策略的注意事项,请参见MQC配置注意事项(CE12800)。
对于CE12800E,各视图下应用流策略的注意事项,请参见MQC配置注意事项(CE12800E)。
对于CE12800、CE12800E安装FD-X系列单板后,提交配置前可以执行命令display traffic-policy pre-state { global [ slot slot-id ] | interface { interface-type interface-number } | vlan vlan-id | bridge-domain bd-id } policy-name { inbound | outbound },查看待应用的流策略所占用的资源信息,以确认配置提交后对应的流策略是否能应用成功。
- 当多个VLAN、接口要应用相同的流策略,或者匹配不同源IP地址的多个流分类需要绑定相同的流策略时,推荐将这些VLAN、源IP地址、接口加入同一个QoS组后,在QoS组下应用流策略。
- 在接口上应用流策略
执行命令system-view,进入系统视图。
执行命令interface interface-type interface-number,进入接口视图。
执行命令traffic-policy policy-name inbound,在接口入方向应用流策略。
- 执行命令commit,提交配置。
- 在VLAN上应用流策略
执行命令system-view,进入系统视图。
执行命令vlan vlan-id,进入VLAN视图。
执行命令traffic-policy policy-name inbound,在VLAN入方向应用流策略。
应用后,系统对属于该VLAN并匹配流分类中规则的入方向报文实施策略控制。
- 执行命令commit,提交配置。
- 在全局或单板上应用流策略
执行命令system-view,进入系统视图。
执行命令traffic-policy policy-name global [ slot slot-id ] inbound,在全局或单板的入方向应用流策略。
- 执行命令commit,提交配置。
检查配置结果
- 执行命令display traffic classifier [ classifier-name ],查看已配置的流分类信息。
- 执行命令display traffic behavior [ behavior-name ],查看已配置的流行为信息。
执行命令display traffic policy [ policy-name [ classifier classifier-name ] ],查看已配置的流策略信息。
执行命令display traffic-policy applied-record [ policy-name ] [ global [ slot slot-id ] | interface interface-type interface-number | vlan vlan-id | vsi vsi-name | vpn-instance vpn-instance-name | qos group group-id | bridge-domain bd-id ] [ inbound | outbound ],查看指定流策略的应用记录。
CE12800E设备不支持vsi vsi-name参数。
- 执行命令display system tcam fail-record [ slot slot-id ],查看TCAM下发失败的信息。
- 执行命令display system tcam service brief [ slot slot-id ],查看不同的业务占用的组索引和规则计数。
- 执行命令display system tcam service { cpcar slot slot-id | service-name slot slot-id [ chip chip-id ] },查看指定槽位指定芯片的业务下发的EntryId。
- 执行以下命令查看流策略的应用数据:
- display system tcam service traffic-policy { global | vlan vlan-id | interface interface-type interface-number | vsi vsi-name | vpn-instance vpn-instance-name | qos group group-id | bridge-domain bd-id } policy-name { inbound | outbound } [ slot slot-id [ chip chip-id ] ]
CE12800E设备不支持vsi vsi-name参数。
- display system tcam service traffic-policy slot slot-id policy-name { inbound | outbound } [ chip chip-id ]
- display system tcam service traffic-policy { global | vlan vlan-id | interface interface-type interface-number | vsi vsi-name | vpn-instance vpn-instance-name | qos group group-id | bridge-domain bd-id } policy-name { inbound | outbound } [ slot slot-id [ chip chip-id ] ]
- (对于CE12800)执行命令display system tcam match-rules slot slot-id [ [ ingress | egress | group group-id ] | [ chip chip-id ] ] *,查看规则命中的信息。
- (对于CE12800E安装FD-X系列单板后)执行命令display system tcam match-rules slot slot-id [ [ ingress | egress | group group-id ] | [ delay-time time-value ] ] *,查看规则命中的信息。
- (对于CE12800E安装ED-E/EG-E/EGA-E系列单板后)执行命令display system tcam match-rules slot slot-id chip chip-id index index-id,查看规则命中的信息。