由于在MPLS网络中,流量数据的转发寻址,依靠报文头中的MPLS标签字段,因此当MPLS网络中存在丢包问题时,如果采用传统以太网中的流量统计方式(及通过ACL规则匹配协议类型、源目IP地址、TCP/UDP端口号等)将无法统计到MPLS网络转发的流量。
传统以太网流量统计方法案例可参看:https://zhiliao.h3c.com/Theme/details/142620
那么,我们如何在MPLS网络中,对业务转发报文进行统计,以便判断定位丢包出现在哪台设备呢?请参考下面的说明方法。
由于MPLS网络中,业务数据流量,在网络节点设备上转发时,网络设备根据标签进行处理转发。对应MPLS标签,其结构如图1-1:
根据MPLS标签结构,我们发现,其中包含EXP字段,该EXP字段在我司交换机存在如下两个特性:
1、EXP与802.1p为1:1映射关系;
2、默认情况下,EXP数值如果修改后,报文在MPLS网络不同设备之间转发时,其数值不会改变。
因此在我司V7平台交换机上,针对MPLS标签转发报文进行流量统计的思路方法为:
1、PE设备上,在将以太网报文封装MPLS标签时,对应的标签EXP字段,填写管理员指定数值;
2、在MPLS网络中,其他转发设备,通过匹配EXP字段对应的数值,在进行流量统计。
通过如下举例,验证MPLS网络中流量统计的方法。
拓扑:
在上面的拓扑中,PE2内网中51.1.1.1地址 ping PE1内网中的8.8.8.8地址存在丢包 。ICMP流量经过了MPLS标签交换网络。
MPLS网络部署流量统计关键配置过程:
对源IP=51.1.1.1,目的IP=8.8.8.8,协议类型为ICMP的请求报文进行统计:
PE2设备配置:
#
acl advanced 3322
rule 1 permit icmp source 51.1.1.1 0 destination 8.8.8.8 0 //匹配以太网数据流
#
traffic classifier 3322 operator and
if-match acl 3322
#
traffic behavior 3322 //进行流量统计,同时将dot1p重标记为4(缺省为0),及MPLS标签中EXP字段为4
accounting
remark dot1p 4
#
qos policy 3322
classifier 3322 behavior 3322
#
interface GigabitEthernet2/0/23
port link-mode bridge
port access vlan 51
combo enable copper
qos apply policy 3322 inbound //在以太网请求报文进入PE设备的接口inbound方向部署MQC3322策略
#
#
traffic classifier 3122 operator and
if-match service-dot1p 4 //匹配外层MPLS EXP为4的流量
#
traffic behavior 3122 //进行流量统计
accounting
#
qos policy 3122
classifier 3122 behavior 3122
#
interface GigabitEthernet3/0/23
port link-mode bridge
port access vlan 58
combo enable copper
qos apply policy 3122 outbound //对MPLS报文从PE设备的接口outbound方向发出去的流量进行流量统计
#
P设备配置:
#
traffic classifier 3122 operator and
if-match service-dot1p 4 //匹配外层MPLS EXP为4的流量
#
traffic behavior 3122 //进行流量统计
accounting
#
qos policy 3122
classifier 3122 behavior 3122
#
interface GigabitEthernet2/0/2
port link-mode bridge
port access vlan 22 combo enable copper
qos apply policy 3122 inbound //对MPLS报文从P设备的接口inbound方向收到的流量进行流量统计
#
#
acl number 3121
rule 1 permit icmp source 51.1.1.1 0 destination 8.8.8.8 0
#
traffic classifier 3121 operator and
if-match acl 3121
#
traffic behavior 3121
accounting
#
qos policy 3121
classifier 3121 behavior 3121
#
interface GigabitEthernet2/0/1
port link-mode bridge
port access vlan 21
qos apply policy 3122 outbound //对MPLS报文从P设备的2/0/1接口outbound方向发出时,由于MPLS倒数第二跳的关系MPLS标签已经解封在,因此该接口仅对以太网流量进行统计
#
PE1设备配置
#
acl number 3122
rule 1 permit icmp source 51.1.1.1 0 destination 8.8.8.8 0
#
traffic classifier 3122 operator and
if-match acl 3122
#
traffic behavior 3122
accounting packet
#
qos policy 3122
classifier 3122 behavior 3122
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port access vlan 21
qos apply policy 3122 inbound //P设备发送来的为无MPLS标签的以太网报文,因此对以太网流量进行统计
#
interface Ten-GigabitEthernet1/0/11
port link-mode bridge
port access vlan 58
qos apply policy 3122 outbound
#
对源IP=8.8.8.8,目的IP=51.1.1.1,协议类型为ICMP的回应报文进行统计:
PE1设备配置
#
acl number 3111
rule 1 permit icmp source 8.8.8.8 0 destination 51.1.1.1 0
#
traffic classifier 3111operator and
if-match acl 3111
#
traffic behavior 3111 //进行流量统计,并重标记dot1p=4(MPLS EXP=4)
accounting packet
remark dot1p 4
#
qos policy 3111
classifier 3111 behavior 3111
#
interface Ten-GigabitEthernet1/0/11
port link-mode bridge
port access vlan 58
qos apply policy 3111 inbound
#
#
traffic classifier 3121 operator and
if-match service-dot1p 4 //匹配外层MPLS EXP为4的流量
#
traffic behavior 3121 //进行流量统计
accounting
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port access vlan 21
qos apply policy 3121 outbound //PE设备封装MPLS标签后回应的流量进行统计
#
P设备配置:
#
traffic classifier 3111 operator and
if-match service-dot1p 4 //匹配外层MPLS EXP为4的流量
#
traffic behavior 3111 //进行流量统计
accounting
#
qos policy 3111
classifier 3111 behavior 3111
#
interface GigabitEthernet2/0/1
port link-mode bridge
port access vlan 21
qos apply policy 3111 inbound //对MPLS报文从P设备的接口inbound方向收到的流量进行流量统计
#
#
acl number 3112
rule 1 permit icmp source 8.8.8.8 0 destination 51.1.1.1 0
#
traffic classifier 3121 operator and
if-match acl 3112
#
traffic behavior 3112
accounting
#
qos policy 3112
classifier 3112 behavior 3112
#
interface GigabitEthernet2/0/2
port link-mode bridge
port access vlan 22
qos apply policy 3112 outbound //对MPLS报文从P设备的2/0/2接口outbound方向发出时,由于MPLS倒数第二跳的关系MPLS标签已经解封在,因此该接口仅对以太网流量进行统计
#
PE2设备配置
#
acl number 3112
rule 1 permit icmp source 8.8.8.8 0 destination 51.1.1.1 0
#
traffic classifier 3112 operator and
if-match acl 3112
#
traffic behavior 3112
accounting packet
#
qos policy 3112
classifier 3112 behavior 3112
#
interface GigabitEthernet3/0/23
port link-mode bridge
port access vlan 58
combo enable copper
qos apply policy 3112 inbound //对从P设备发来的以太网ICMP回应报文进行流量统计
#
interface GigabitEthernet2/0/23
port link-mode bridge
port access vlan 51
combo enable copper
qos apply policy 3112 outbound //对以太网请求报文从PE设备的接口发出给CE时,做流量统计
#
到处为止,流量统计的配置便完成了。
当PE2内网中51.1.1.1地址 ping PE1内网中的8.8.8.8地址存在丢包时,通过display qos policy interface命令查看对比流量经过相关接口统计值,便可判断报文丢弃的位置。比如:
<PE2>display qos policy interface
Interface: GigabitEthernet2/0/23
Direction: Inbound
Policy: 3322
Classifier: 3322
Operator: AND
Rule(s) :
If-match acl 3322
Behavior: 3322
Accounting enable:
10 (Packets)
Marking:
Remark dot1p 4
Interface: GigabitEthernet2/0/23
Direction: Outbound
Policy: 3112
Classifier: 3112
Operator: AND
Rule(s) :
If-match acl 3112
Behavior: 3112
Accounting enable:
7 (Packets) //此统计结果,表示PE2设备从3/0/23接口收到ICMP回应包10个,但是从2/0/23接口仅转发出去了7个,存在3个丢包。因此可判断报文丢弃的设备位置为PE2
Interface: GigabitEthernet3/0/23
Direction: Inbound
Policy: 3112
Classifier: 3112
Operator: AND
Rule(s) :
If-match acl 3112
Behavior: 3112
Accounting enable:
10 (Packets)
Interface: GigabitEthernet3/0/23
Direction: Outbound
Policy: 3122
Classifier: 3122
Operator: AND
Rule(s) :
If-match service-dot1p 4
Behavior: 3122
Accounting enable:
10 (Packets)
1、EXP与802.1p为1:1映射关系;
2、默认情况下,EXP数值如果修改后,报文在MPLS网络不同设备之间转发时,其数值不会改变;
3、PE设备上,在将以太网报文封装MPLS标签时,对应的标签EXP字段数值进行remark动作,将封装后的报文转发出去时,针对EXP字段数值进行流量统计;
4、P设备,通过匹配EXP字段数值,进行流量统计;
5、P设备和PE设备,部署流量统计匹配规则时,注意考虑MPLS网络倒数第二跳标签弹出的机制。
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作