知行合一:高端产品流量统计功能总结与配置指导
流量统计在网络日常维护与排错过程中应用广泛,让我们能方便的定位数据报文丢弃的位置。
S12500/S9500E/SR8800 V5平台的流量统计配置是相同的,都是通过QOS策略,与类关联,对符合匹配规则的流进行统计,可以指定统计报文数或字节数。
S12500/CR16000 V7平台的流量统计和V5的情况一致,没有变化。V5/V7平台的流量统计不仅可以统计接口下的流量,通过基于VLAN和全局应用QOS策略,还可以统计进出vlan的流量和进出设备的流量。而V3只能统计进入接口的流量。
S9500/S8500基于V3平台的流量统计与V5的是有差异的,它统计的是交换机转发的数据包中匹配已定义的访问控制列表的数据信息流量统计,虽然配置方法不一致,但是实现的效果都是一致的,能同时统计报文数和字节数。
一、 高端产品流量统计区别
流量统计的配置比较简单,但是不同的产品对能否统计的流量有差异,主要是对上送CPU的流量或者从CPU发出的流量的统计情况有些不同,对于经过设备转发的流量都能实现镜像和流量统计。
以下是高端产品流量统计的差异情况:
上送到CPU | CPU发送出来 | |||
镜像 | 流统计 | 镜像 | 流统计 | |
SR8800/CR16000(SPE) | √ | √ | X | X |
SR8800/CR16000(SPC) | √ | X | √(出方向流镜像不支持) | √ |
SR8800(MPE) | √ | X | X | X |
S9500/S8500 | √ | √ | √(出方向流镜像不支持) | X(不支持出方向流量统计) |
S12500/S9500E | √ | X | √(出方向流镜像不支持) | √ |
根据上表,我们可以总结出流量统计的几个要点:
1. SR8800/CR16000的SPE单板不能流量统计CPU发出的报文。
2. SR8800/CR16000的SPC单板不能流量统计上送CPU的报文。
3. S9500E/S12500不能流量统计上送CPU的报文。
4. S9500/S8500不支持出方向的流量统计。
5. SR8800 V3R7 MPE-1004单板均无法统计到上送CPU和CPU发出的报文。
流量统计跨设备转发的报文是不受限制的,但是有时候在定位数据包丢弃的过程中,我们需要对进入设备的流量进行统计,这些报文需要上送CPU,而由于芯片的限制,有些设备不能统计到上送CPU的报文,这时可以通过流镜像到其他空闲端口看端口计数来规避。
下面通过下面几个例子分别对V5/V7平台的流量统计和V3平台的流量统计进行说明,以及介绍如何通过流镜像法统计上送CPU的报文以及如何规避S95不能进行出方向流统。最后介绍在MPLS网络如何进行流量统计。
二、 V5/V7平台的S12500/S9500E/SR8800/CR16000配置指导
V5/V7平台的流量统计是通过基于类的QOS策略实现的。
流量统计需求
如下组网图所示,PC1的IP地址为1.1.1.1,它连接在高端设备的g9/1/1端口上,实现与其他设备的互连。高端设备对源IP为1.1.1.1的报文进行统计。
组网图
流量统计典型组网图1
主要配置
# 定义基本ACL 2000,对源IP地址为1.1.1.1的报文进行分类。
[H3C] acl number 2000
[H3C-acl-basic-2000] rule permit source 1.1.1.1 0
# 定义类Liutong,匹配基本ACL 2000。
[H3C] traffic classifier Liutong
[H3C-classifier-Liutong] if-match acl 2000
[H3C-classifier-Liutong] quit
# 定义流行为Liutong,动作为流量统计报文数或者字节数。
[H3C] traffic behavior Liutong
[H3C-behavior-Liutong] accounting packet
# 定义策略Liutong,为类Liutong指定流行为Liutong。
[H3C] qos policy Liutong
[H3C-qospolicy-Liutong] classifier Liutong behavior Liutong
# 将策略Liutong应用到端口GigabitEthernet9/1/1的入方向上。
[H3C] interface GigabitEthernet 9/1/1
[H3C-GigabitEthernet3/1/1] qos apply policy Liutong inbound
# 查看配置后流量统计的情况,只统计了报文数。
[H3C]dis qos policy interface GigabitEthernet 9/1/1 inbound
Interface: GigabitEthernet9/1/1
Direction: Inbound
Liutong: liutong
Classifier: liutong
Operator: AND
Rule(s) : If-match acl 3000
Behavior: liutong
Accounting Enable:
5 (Packets)
可以通过下面的方法来清除流量统计计数:
<H3C>reset counters interface GigabitEthernet 9/1/1
[H3C]dis qos Liutong interface GigabitEthernet 3/1/1 inbound
Interface: GigabitEthernet3/1/1
Direction: Inbound
Liutong: liutong
Classifier: liutong
Operator: AND
Rule(s) : If-match acl 3000
Behavior: liutong
Accounting Enable:
0 (Packets)
注意事项
1.在用户视图下reset counters interface命令清除流量统计信息。
2.基于VLAN应用的QoS策略不能应用在动态VLAN上。例如,在运行GVRP协议的情况下,设备可能会动态创建VLAN,QoS策略不能应用在该动态VLAN上。因此不能在动态vlan下进行基于VLAN的流量统计。
三、 V3平台的S9500/S8500配置指导
1. 基于IP的流量统计组网需求
如下组网图所示,PC1的ip地址为1.1.1.1,它连接在S9500的g9/1/1端口上,实现与其他设备的互连。交换机需要对源IP为1.1.1.1的报文进行统计。
流量统计典型组网图2
主要配置
# 定义ACL3000规则,允许所有的ip报文通过,对这个地址进行流统。
[H3C]acl num 3000
[H3C-acl-adv-3000]rule permit ip source 1.1.1.1 0
# 在端口GE9/1/1配置ACL 3000的流量统计
[H3C]interface GigabitEthernet 9/1/1
[H3C-GigabitEthernet9/1/1]traffic-statistic inbound ip-group 3000 rule 0
#查看流量统计信息,能同时统计报文数和字节数。
[H3C-GigabitEthernet9/1/1]display qos-interface traffic-statistic
GigabitEthernet9/1/1: traffic-statistic
Inbound:
Matches: Acl 3000 rule 0 running
6400 byte (green 0 byte(s), yellow 0 byte(s), red 0 byte(s) )
100 packet
可以通过下面的方法来清除流量统计计数:
[H3C-GigabitEthernet9/1/1] reset traffic-statistic inbound ip-group 3000 rule 0
[H3C-GigabitEthernet9/1/1]display qos-interface traffic-statistic
GigabitEthernet9/1/1: traffic-statistic
Inbound:
Matches: Acl 3000 rule 0 running
0 byte (green 0 byte(s), yellow 0 byte(s), red 0 byte(s) )
0 packet
有时候我们需要对符合某个源/目的mac的报文进行流量统计,这时我们需要在配置流量统计的时候配置自定义流模板,由于系统默认的流模板定义的元素包括ip-protocol、tcp-flag、sport、dport、icmp-type、icmp-code、sip、dip 、ethernet-protocol、vlanid 和exp,并不支持对mac地址的识别!因此,此时我们需要配置流模板,例如下面这个例子:
2. 基于MAC的流量统计组网需求
如下组网图所示,PC2的MAC地址为0-0-3,它连接在S9500的g9/1/1端口上,实现与其他设备的互连。交换机对源MAC为0-0-3的报文进行统计。
组网图
流量统计典型组网图3
主要配置
# 定义ACL4000规则,允许源MAC为D4C9-EFE8-1920的报文通过
[H3C] acl number 4000
[H3C-acl-link-4000] rule 0 permit ingress D4C9-EFE8-1920 0-0-0
# 定义5号槽位上的流模板,包括smac字段,并应用在GE9/1/1端口。
[H3C] flow-template user-defined slot 5 smac 0-0-0
[H3C] interface GigabitEthernet 5/1/1
[H3C-GigabitEthernet5/1/1] flow-template user-defined
# 在端口GE5/1/1配置ACL 4000的流量统计。
[H3C-GigabitEthernet5/1/1] traffic-statistic inbound link-group 4000 rule 0
[H3C-GigabitEthernet5/1/1] quit
[H3C] display qos-interface GigabitEthernet5/1/1 traffic-statistic
GigabitEthernet5/1/1: traffic-statistic
Inbound:
Matches: Acl 4000 rule 0 running
640000 bytes (green 640000 byte(s), yellow 0 byte(s), red 0 byte(s) )
10000 packets
1.在端口模式下使用reset traffic-statistic命令用来清除端口流量统计信息。reset counters interface命令并不能清除流量统计信息!
2.只支持入端口(Inbound)的流量统计,不支持出端口流量统计。
3.在XP4B/CA单板的端口0上执行traffic-statistic命令统计的是0和1端口上的流量统计信息;在端口2上执行traffic-statistic命令统计的是2和3端口上的流量统计信息。
四、 镜像法实现流统上送CPU报文配置实例
S12500/S9500E不能流量统计上送CPU的报文,但是有时候我们需要通过ping来找出数据包丢弃在什么地方的时候,就必须对上送CPU的icmp报文进行统计,我们可以通过镜像法解决。
流量统计组网需求
如下组网图所示,SWA的接口IP地址为100.0.0.2,它连接在S125/S95E的g5/0/47端口上。S125/S95E交换机对源IP为100.0.0.2,目的地址为自身接口地址100.0.0.1的报文进行统计。
组网图
流量统计典型组网图4
主要配置
1.采用流镜像法:
# 定义ACL3000,匹配进入设备的报文,即上送CPU的报文。
acl number 3000
rule 0 permit ip source 100.0.0.2 0 destination 100.0.0.1 0
#定义ACL3001,匹配出设备的报文.
acl number 3001
rule0 permit ip source 100.0.0.1 0 destination 100.0.0.2 0
#出方向做流量统计,入方向将流量镜像至一个内环口,然后在该内环口入方向做流统
traffic classifier 1 operator and
if-match acl 3000
traffic classifier 2 operator and
if-match acl 3000
traffic classifier 3 operator and
if-match acl 3001
#
traffic behavior 1
accounting packet
traffic behavior 2
mirror-to interface GigabitEthernet5/0/48
traffic behavior 3
accounting packet
#
qos policy 1
classifier 1 behavior 1
qos policy 2
classifier 2 behavior 2
qos policy 3
classifier 3 behavior 3
# QoS策略下发,将进入接口的报文镜像到内环口,流统出方向的报文。
interface GigabitEthernet5/0/47
port link-mode bridge
port access vlan 100
qos apply policy 2 inbound
qos apply policy 3 outbound
#选一个不用的端口做内环口,注意关闭stp及mac学习,通过此接口流统上送CPU的报文。
interface GigabitEthernet5/0/48
port link-mode bridge
undo stp enable
loopback internal
mac-address max-mac-count 0
qos apply policy 1 inbound
#结果测试,在SWA上ping S125/S95E直连接口地址
ping –a 100.0.0.2 100.0.0.1
#查看统计结果
[H3C]dis qos policy interface
Interface: GigabitEthernet5/0/47
Direction: Inbound
Policy: 2
Classifier: 2
Operator: AND
Rule(s) :
If-match acl 3000
Behavior: 2
Mirroring:
Mirror to the interface: GigabitEthernet5/0/48
Direction: Outbound
Policy: 3
Classifier: 3
Operator: AND
Rule(s) :
If-match acl 3001
Behavior: 3
Accounting enable:
5 (Packets) //icmp reply报文个数
Interface: GigabitEthernet5/0/47
Direction: Inbound
Policy: 1
Classifier: 1
Operator: AND
Rule(s) :
If-match acl 3000
Behavior: 1
Accounting enable:
5 (Packets) // icmp reply报文个数
2.采用端口镜像法:
# 流统的MQC配置。
acl number 3000
rule 0 permit ip source 100.0.0.0 0.0.0.255
traffic classifier 2 operator and
if-match acl 3000
traffic behavior 3
accounting packet
qos policy 3
classifier 3 behavior 3
# 在接口配置入方向端口镜像。
interface GigabitEthernet5/0/47
port link-mode bridge
port access vlan 100
qos apply policy liutong outbound
mirroring-group 1 mirroring-port inbound
# 在监控端口做内环口,注意关闭stp及mac学习,配置入方向流量统计,即流统上CPU的报文。
interface GigabitEthernet/5/0/48
port link-mode bridge
loopback internal
stp disable
qos apply policy liutong inbound
mac-address max-mac-count 0
mirroring-group 1 monitor-port
#查看统计结果
[H3C]dis qos policy interface
Interface: GigabitEthernet5/0/47
Direction: Outbound
Policy: liutong
Classifier: liutong
Operator: AND
Rule(s) : If-match acl 3000
Behavior: liutong
Accounting Enable:
5 (Packets) /icmp request报文个数,即统计了上送CPU的报文
Interface: GigabitEthernet5/0/48
Direction: Inbound
Policy: liutong
Classifier: liutong
Operator: AND
Rule(s) : If-match acl 3000
Behavior: liutong
Accounting Enable:
5 (Packets) /icmp request报文个数,即统计了上送CPU的报文
注意事项
1. 这个例子的镜像法只能统计入方向的报文,即上送CPU的报文。如果想通过镜像法来统计从CPU发出的报文,则设备需要支持镜像CPU发出的报文。
2. 同样通过reset counters interface来清除流量统计计数。
五、 镜像法实现S9500出方向流量统计配置实例
S9500不支持出方向的流量统计,我们可以通过镜像法规避,由于S9500可以镜像CPU发出的报文,因此镜像法既可以实现出方向流量统计,也可以统计CPU发出的报文。
流量统计组网需求
如下组网图所示,SWA的接口IP地址为10.0.0.2,它连接在S95的g5/0/47端口上。S95交换机对自己发出的源地址为10.0.0.1的报文进行统计。
组网图
流量统计典型组网图5
主要配置
# 定义ACL3000规则,允许所有的ip报文通过。
ACL 3000
rule permit ip source 10.0.0.1 0
# 做端口镜像把e5/1/15出方向的报文镜像到e5/1/1
mirroring-group 1 outbound Ethernet5/1/15 mirrored-to Ethernet5/1/1
#在监控端口做内环口,注意关闭stp及mac学习,配置入方向流量统计,即流统e5/1/15出方向报文,也流统了CPU发出的报文!。
interface Ethernet5/1/1
stp disable
mac-address max-mac-count 0
loopback internal
traffic-statistic inbound ip-group 3000 rule 0 system-index 2 tc-index2
#从S9500上ping对端,进行测试。
[H3C]ping 10.0.0.2
#查看统计结果。
[H3C]dis qos-interface traffic-statistic
Ethernet5/1/1: traffic-statistic
Inbound:
Matches: Acl 3000 rule 0 running
510 bytes (green 0 byte(s), yellow 0 byte(s), red 0 byte(s) )
5 packets
注意事项
1.这个例子的镜像法不仅可以统计出方向报文,由于S9500出方向端口镜像可以镜像CPU发出的报文,这样也可以统计了CPU发出的报文。
2.在端口模式下使用reset traffic-statistic命令用来清除端口流量统计信息。
六、 MPLS网络实现流量统计配置实例
由于在MPLS网络中,我们不能根据匹配IP的方式来进行统计,这时我们只有在进入MPLS网络的时候给报文重标记exp值,在MPLS公网中通过匹配给exp值来进行流量统计。
流量统计组网需求
如下组网图所示,这是一个mpls l3vpn网络,RTA的g0/1绑定了vpn实例,g0/2是公网口,运行MPLS。需要在RTA的g0/2上对10.0.0.1访问10.0.1.1的流量进行统计。
组网图
流量统计典型组网图6
主要配置
# 定义ACL3001规则,匹配需要统计的流量。
Acl number 3001
rule 0 permit ip source 10.0.0.1 0.0.0.0 destination 10.0.1.1 0.0.0.0
# 通过MQC,把需要统计的流量在入口打上exp值的标记
traffic classifier remark operator and
if-match acl 3001
traffic behavior remark
remark mpls-exp 2
qos policy remark
classifier remark behavior remark
#在入口处应用策略
interface GigabitEthernet0/1
qos trust auto
qos apply policy remark inbound
#定义流量统计MQC,如果匹配mpls-exp 2的流量就进行流量统计。
traffic classifier exp operator and
if-match mpls-exp 2
traffic behavior exp
accounting packet
qos policy exp
classifier exp behavior exp
#在运行MPLS的接口下发流量统计策略
interface GigabitEthernet0/2
qos apply policy exp outbound
#从PC1上ping PC2对端,进行测试。
[H3C]ping 10.0.1.1
#查看统计结果。
[H3C] dis qos policy interface GigabitEthernet0/2
Interface: GigabitEthernet0/2
Direction: Outbound
Policy: exp
Classifier: exp
Operator: AND
Rule(s) : If-match mpls-exp 2
Behavior: exp
Accounting Enable:
5 (Packets)
注意事项
1.在用户视图下reset counters interface命令清除流量统计信息。
2.由于是根据exp值进行的统计,而不是根据ip地址进行统计,如果网络中已经存在exp值和我们remark exp值相同的报文,会出现统计的报文个数比实际多的情况。