S系列交换机CPU占用率高
简介
本文档介绍了S系列交换机CPU和CPU占用率的相关原理,描述了CPU占用率高时的定位方法和解决步骤,同时提供了相关的典型案例及参考信息,为维护工程师处理现网CPU占用率高的故障问题提供一些参考。
五张图快速掌握CPU占用率高相关知识
通过本节内容,您可以快速了解并掌握CPU占用率高的相关知识,包括CPU占用率高造成的影响、引起CPU占用率高的常见原因、如何定位CPU占用率高、如何解决CPU占用率高和如何尽量避免CPU占用率高,更多详细信息,请查看后续章节。
CPU和CPU占用率原理
CPU和CPU占用率简介
交换机的核心--CPU
交换机采用分布式架构,主要包括转发平面和控制平面。其中转发平面用于实现二三层转发;而控制平面主要用于实现转发的控制。
如图1-1所示,交换机的控制平面采用通用嵌入式CPU实现,转发平面采用转发芯片实现:
- 转发芯片完成主要的二三层转发功能,如更新用于二层转发的MAC地址表以及用于IP转发的三层转发表。转发芯片的特点是能够实现大吞吐量的数据转发。
- CPU主要维护软件表项(如路由表、ARP表等),并根据软件表项的转发信息来配置转发芯片的硬件三层转发表。同时,CPU本身也可以完成软件三层转发。CPU的特点是数据处理能力非常低。
在网络中,可将报文按照功能分为控制报文和数据报文。当交换机上还未建立任何硬件转发表项时,如果报文到达交换机,首包由CPU转发并建立三层转发硬件表项,后续包(即非首包)流量由入端口进入转发芯片,如图1-2所示:
- 后续包的部分流量1(一般为数据报文)直接由转发芯片转发出去这部分流量不经过CPU,所以该流量的处理也不消耗CPU。这部分流量一般为数据报文。
- 后续包的部分流量2(一般为控制报文和部分数据报文)经由转发芯片上送CPU,由CPU来决定是否需要将其转发出去或直接在CPU终结。该流量需要消耗CPU,不能进行高速转发。
总的来说,真正决定交换机高速交换转发的是转发芯片中的二三层硬件表项,而转发芯片的硬件表项来源于CPU维护的软件表项。可以看出,CPU是交换机的核心。
CPU占用率
交换机正常启动后,为了维持系统的正常运行,CPU上有大约超过200个活跃的任务用于完成对设备的管理、监控和三层表项学习,并且该任务数量与交换机形态相关。通常交换机支持的特性越多,系统运行的任务也越多。
设备的CPU占用率指一段时间内系统中非空闲任务占用CPU处理的时间比率,是对设备CPU使用情况的一个宏观统计,具有以下的几个重要特点:
- 持续变化性:系统的CPU占用率不是保持不变的,它是随着系统的运行和外部环境的变化而持续变化的。
- 非实时性:系统的CPU占用率反映的是一个CPU统计周期内的CPU使用情况,并不是特指某一个时间点的实时占用情况。
- 实体强相关性:CPU占用率是以物理CPU为粒度进行统计的,通常而言,设备上的每块业务板均有一个单独的物理CPU,因此它们的CPU占用率都是相互独立的。
CPU占用率表示交换机在某个时间点的运行任务情况。如图1-3所示,A任务占用10ms,B任务占用30ms,然后空闲60ms,再又是A任务占10ms,B任务占30ms,空闲60ms。如果在一段时间内都是如此,那么这段时间内的占用率为40%。CPU占用率越高,说明交换机在这个时间上运行了很多任务,反之则很少。
可以看出,CPU占用率的高低与CPU的强弱有直接关系,因此,CPU占用率是衡量设备性能的重要指标之一。
CPU处理报文原理(框式交换机)
华为交换机由转发芯片转发普通数据报文,无需CPU参与。以下场景会将报文发送给CPU处理:
- 需要交换机终结的协议报文
所有目的地址为本机的报文均需要上送CPU处理:
- 各种协议控制报文,如STP、LLDP、LNP、LACP、VCMP、DLDP、EFM、GVRP、VRRP等
- 路由更新报文,如RIP、OSPF、BGP、IS-IS等
- SNMP、Telnet、SSH报文
- ARP、ND回应报文
- 需要特殊处理的报文
- 带option选项的ICMP报文
- 带hop-by-hop选项的IPv6报文
- TTL小于或等于1的IPv4/IPv6数据报文
- 目的IP地址为本机的数据报文
- ARP/ND/FIB Miss报文
- 应用了ACL,需要CPU处理的报文
- 开启logging功能后,通过ACL deny动作丢弃的报文
- 流策略重定向到CPU的报文
- 组播特性相关的报文
- PIM、IGMP、MLD、MSDP协议报文
- 未知IP组播流
- 其他特性的相关报文
- DHCP协议报文
- ARP、ND广播请求报文
- L2PT软转发的L2协议报文(仅Tunnel两端的设备为软转发,中间设备使用芯片硬件转发)
如图1-4所示,报文最终送到主控板的CPU可能经过多次限速,包括:转发芯片的限速、交换网芯片的限速。多次限速逐层形成防护墙,保证主控板CPU的安全。
如图1-5所示,每个芯片/逻辑的限速主要分为三类:基于协议的限速、基于队列的限速、基于端口的所有报文统一限速。如下以V200R007版本S9300非X1E系列的业务板为例,介绍CPU限速等的缺省情况(其他款型、其他版本可以通过命令display cpu-defend configuration all查看)。
报文类型 |
业务板限速值(kbps) |
主控板限速值(kbps) |
---|---|---|
802.1x、arp-miss、mpls-ping、nd、nd-miss、loopbacktest、nd-redirect |
64 |
64 |
smart-link、lacp、lldp、dldp、ttl-expired、mpls-ttl-expired、ntp、hw-tacacs、fib-miss、hgmp-bc、smlk-rrpp、hotlimit、mpls-vccv-ping、arp-request、arp-reply、arp-mff、vpls-arp |
64 |
128 |
eoam-3ah、mpls-one-label |
64 |
256 |
vpls-igmp、mpls-rsvp、ipmc-invalid、bpdu |
64 |
512 |
vrrp、bgp4plus、vrrp6、hvrp、ssh、ftp、snmp、gvrp、eoam-1ag-lblt、pppoe、hopbyhop、hgmp-mc、hgmp-uc、nac-nd、nd-snp-rs、nd-snp-rans、nd-snp-na、mad、nac-arp |
128 |
128 |
mpls-oam、igmp、pim、rip、telnet、tcp、fib-hit、rrpp、udp-helper |
128 |
256 |
stp、mld、unknown-multicast、bpdu-tunnel、ipmc-miss |
128 |
512 |
fib6-hit、mpls-fib-hit |
128 |
1024 |
icmp |
192 |
256 |
http、pimv6、icmpv6、easy-operation、eoam-1ag、heart-packet |
256 |
256 |
isis、ospf、ospf-hello、bgp、bfd、mpls-ldp、ripng、ospfv3、nac-dhcp、vpls-dhcp-request、vpls-dhcp-reply、nac-dhcpv6、ospfv3-uc |
256 |
512 |
dhcp-client、dhcpv6-request、dhcpv6-reply、radius、y1731 |
512 |
512 |
dhcp-server |
512 |
1024 |
业务板上队列ID |
报文类型 |
说明 |
---|---|---|
7 |
lacp |
快协议报文(快协议指响应时间很短的协议,如BFD,响应时间在100ms以内,如果短暂丢包就可能导致协议震荡) |
6 |
vp(VRRP V2R10版本从队列5移到队列6) |
从业务板CPU上送的报文 |
5 |
stp、smart-link、ldt、lldp、dldp、vrrp、mpls-oam、isis、pim、rip、ospf、ospf-hello、bgp、bfd、mpls-rsvp、mpls-ldp、mpls-ttl-expired、ntp、ripng、ospfv3、bgp4plus、pimv6、vrrp6、hvrp、telnet、ssh、mpls-ping、gvrp、bpdu-tunnel、rrpp、eoam-3ah、eoam-1ag、eoam-1ag-lblt、nd、y1731、mpls-one-label、loopbacktest、bpdu、nap、hgmp-mc、hgmp-uc、hgmp-bc、nd-redirect、nd-snp-rs、nd-snp-rans、nd-snp-na、mad、smlk-rrpp、ospfv3-uc |
重要控制面协议报文 |
4 |
other |
- |
3 |
arp-request、arp-reply、dhcp-client、dhcp-server、igmp、vpls-igmp、icmp、8021x、http、dhcpv6-request、dhcpv6-reply、icmpv6、mld、ftp、snmp、radius、hw-tacacs、tcp、easy-operation、fib-hit、fib-miss、arp-miss、unknown-packet、udp-helper、arp-mff、pppoe、hopbyhop、mpls-vccv-ping、fib6-hit、nd-miss、nac-dhcp、vpls-arp、vpls-dhcp-request、vpls-dhcp-reply、nac-arp、icmp-ttl-expired、mpls-fib-hit、nac-nd、nac-dhcpv6、heart-packet |
重要控制面协议报文 |
2 |
ttl-expired、hotlimit |
次要控制面协议报文 |
1 |
unknown-multicast、ipmc-invalid、ipmc-miss |
次要控制面协议报文 |
0 |
other |
- |
主控板上队列ID |
报文类型 |
说明 |
---|---|---|
7 |
lacp |
快协议报文(快协议指响应时间很短的协议,如BFD,响应时间在100ms以内,如果短暂丢包就可能导致协议震荡) |
6 |
vp(V2R3开始VP报文跟原来的协议报文队列保持一致,VRRP V2R10版本从队列5移到队列6) |
从业务板CPU上送的报文 |
5 |
stp、smart-link、ldt、lldp、dldp、vrrp、mpls-oam、isis、pim、rip、ospf、ospf-hello、bgp、bfd、mpls-rsvp、mpls-ldp、mpls-ttl-expired、ntp、ripng、ospfv3、bgp4plus、pimv6、vrrp6、hvrp、telnet、ssh、mpls-ping、gvrp、bpdu-tunnel、rrpp、eoam-3ah、eoam-1ag、eoam-1ag-lblt、nd、y1731、loopbacktest、bpdu、nap、hgmp-mc、hgmp-uc、hgmp-bc、nd-redirect、nd-snp-rs、nd-snp-rans、nd-snp-na、mad、smlk-rrpp、ospfv3-uc |
重要控制面协议报文 |
4 |
other |
- |
3 |
arp-request、arp-reply、dhcp-client、dhcp-server、igmp、vpls-igmp、icmp、8021x、http、dhcpv6-request、dhcpv6-reply、icmpv6、mld、ftp、snmp、radius、hw-tacacs、tcp、easy-operation、fib-hit、fib-miss、arp-miss、unknown-packet、udp-helper、arp-mff、pppoe、hopbyhop、mpls-vccv-ping、fib6-hit、nd-miss、nac-dhcp、mpls-one-label、vpls-arp、vpls-dhcp-request、vpls-dhcp-reply、nac-arp、icmp-ttl-expired、mpls-fib-hit、nac-nd、nac-dhcpv6、heart-packet |
重要控制面协议报文 |
2 |
ttl-expired、hotlimit |
次要控制面协议报文 |
1 |
unknown-multicast、ipmc-invalid、ipmc-miss |
次要控制面协议报文 |
0 |
sFlow、NetStream |
数据报文或消息 |
交换机根据报文的层次(管理/控制/转发)及其重要性来指定将报文发送到哪个CPU队列。CPU队列具有相对优先级。例如,Telnet管理报文和dhcp-client协议报文同时排队,CPU将优先处理5号队列的Telnet管理报文,通过该机制确保CPU高负荷下设备稳定可管理。同时,CPU还通过加权调度机制防止低优先级队列的报文得不到处理。在稳定的网络环境下,上送CPU的报文数量控制在适当的范围内,CPU占用率也稳定在一个合理的区间。如果一段时间内上送CPU的报文数量过大,则CPU会因为忙于处理这些报文而表现为CPU占用率过高。
CPU处理报文原理(盒式交换机)
华为交换机由硬件转发普通数据报文,无需CPU参与。以下场景会将报文发送给CPU处理:
- 需要交换机终结的协议报文
所有目的地址为本机的报文均需要上送CPU处理:
- 各种协议控制报文,如STP、LLDP、LNP、LACP、VCMP、DLDP、EFM、GVRP、VRRP等
- 路由更新报文,如RIP、OSPF、BGP、IS-IS等
- SNMP、Telnet、SSH报文
- ARP、ND回应报文
- 需要特殊处理的数据报文
- 带option选项的ICMP报文
- 带hop-by-hop选项的IPv6报文
- TTL小于或等于1的IPv4/IPv6报文
- 目的IP地址为本机的报文
- ARP/ND/FIB Miss报文
- 基于ACL的特性
- 开启logging功能后,通过ACL deny动作丢弃的报文
- 流策略重定向到CPU的报文
- 组播特性
- PIM、IGMP、MLD、MSDP协议报文
- 未知IP组播流
- 其他特性
- DHCP协议报文
- ARP、ND广播请求报文,二层交换机配置动态ARP检测DAI(Dynamic ARP Inspection)时也发送ARP报文
- L2PT软转发的L2协议报文(仅Tunnel两端的设备为软转发,中间设备使用硬件转发)
- N:1 VLAN mapping第一个报文上送CPU,后续报文使用硬件转发
交换机采用QoS机制处理上送CPU的报文,确保重要报文优先处理。交换机将上送CPU的不同类型的报文划分到优先级不同的8个队列,不同交换机款型支持上送CPU的报文种类可能不同。以S5700LI形态为例,部分典型报文上送CPU的队列划分如表1-4和图1-6所示,队列ID值越大,优先级越高。
队列ID |
报文类型 |
说明 |
---|---|---|
7 |
IPC、RPC、LACP |
内部管理报文 |
6 |
VP(V2R3开始VP报文的队列跟原来的协议报文保持一致) |
内部软转发的协议报文 |
5 |
Telnet、SSH、LNP、DHCP |
管理面协议报文 |
4 |
ARP Request |
重要控制面协议报文 |
3 |
STP、SMLK、EOAM、VCMP |
重要控制面协议报文 |
2 |
LBDT、LLDP、DLDP、IGMP、ICMP、NTP、802.1x、GVRP、L2PT、ARP Miss、FTP、SNMP |
控制面协议报文 |
1 |
Other |
- |
0 |
sFlow、NetStream |
数据报文或消息 |
交换机根据报文的层次(管理/控制/转发)及其重要性来指定将报文发送到哪个CPU队列。CPU队列具有相对优先级。例如,Telnet管理报文和L2PT软件透传L2协议报文同时排队,CPU将优先处理5号队列的Telnet管理报文,通过该机制确保CPU高负荷下设备稳定可管理。同时,CPU还通过加权调度机制防止低优先级队列的报文得不到处理。在稳定的网络环境下,上送CPU的报文数量控制在适当的范围内,CPU占用率也稳定在一个合理的区间。如果一段时间内上送CPU的报文数量过大,则CPU会因为忙于处理这些报文而表现为CPU占用率过高。
CPU占用率高造成的影响
当设备转发面上送CPU的报文速率过快(如因网络环路导致CPU短时间内收到大量报文)或者某任务长时间占用CPU时,CPU将高负荷运行,可能无法及时调度其他任务,进而引发业务异常。
CPU占用率过高会影响系统处理能力,导致网络业务表现不如预期,可能导致出现的网络故障现象有:
- 交换机不能响应正常的管理请求
- Telnet或SSH会话不能建立,导致无法管理设备或者设备反应慢,命令执行有延迟等
- SNMP超时
- MAC/IP Ping耗时很长甚至超时
- 交换机不能及时转发或回应客户端请求,导致DHCP失败或IEEE 802.1x认证失败
- STP拓扑改变甚至出现网络环路
交换机通过CPU周期性的接收BPDU报文维持其Root/Alternate端口角色,如果因上游设备CPU繁忙导致BPDU报文不能及时发出或本机CPU繁忙不能及时处理收到的BPDU报文,交换机会认为到根桥的原路径故障而重新选择Root端口,引起网络重新收敛;如果交换机原来同时存在Alternate端口,则将Alternate端口作为新的Root端口,这时就可能导致网络出现环路。
- 路由拓扑改变
动态路由协议的保活由CPU完成,如果因CPU繁忙不能及时接收和发送hello报文,就会导致路由震荡,如OSPF震荡、BGP震荡、VRRP震荡。
- 可靠性检测协议震荡
802.3ah、802.1ag、DLDP、BFD、MPLS OAM等检测协议均由CPU完成定时保活,如果因为CPU繁忙不能及时接收和发送协议报文,将会导致协议震荡,进而影响相关业务流量转发。
- LACP类型的Eth-Trunk链路震荡
LACP的保活由CPU完成,如果因CPU繁忙不能及时接收和发送LACP报文,Eth-Trunk会将链路关闭,产生链路震荡。
- 通过CPU软转发的报文被丢弃或转发时延增大
- 交换机内存消耗增加
CPU占用率高属于正常现象的场景
在网络运行中,CPU占用率过高常常会导致业务异常,例如BGP震荡、VRRP频繁切换甚至用户无法登录交换机。但某些情况下,CPU占用率高并不会导致网络问题,例如,交换机在某一时刻集中读取光模块信息、瞬间流量增多等各种具体情况,导致CPU占用率暂时性高的现象是正常的、可接受的,所以不能简单的将CPU占用率高当作故障处理。只有当设备长时间不能正常处理业务时,才需要定位是否由于CPU占用率高而引起的。
如下一些场景可能导致CPU占用率高,属于正常现象,而不是故障场景。如果过了一段时间后,CPU占用率恢复到正常值,则可以不需要处理:
- 网络中瞬间流量增多
- 交换机单板刚启动
- 交换机在某一时间点集中读取光模块信息
- 交换机在进行生成树的计算
对于MSTP,CPU占用率同实例数和活跃端口数成正比。对于VBST,由于每个VLAN独立运行一个实例,因此在相同VLAN和端口数目下,VBST比MSTP占用更多的CPU资源。
- 交换机接收到路由更新信息,大规模更新路由表
当接收到路由更新消息时,设备需占用CPU资源将路由信息更新到转发面。对于集群/堆叠系统,路由信息还需要同步到其他成员交换机。
在路由表更新过程中影响CPU占用率大小的因素有:
- 路由表项的规模
- 更新的频率
- 接收更新的路由协议进程数
- 集群/堆叠系统成员交换机数量
- 交换机在执行copy cfcard:/或输出信息量大的debug等执行时间长的命令
- 网管系统在频繁操作交换机
- 导致CPU占用率高的其他事件
- 端口使能了Sticky MAC功能后,快速学习MAC
- 将大量端口同时加入大量VLAN(如通过端口组操作,将大批端口加入大量VLAN、修改大批端口的链路类型等)
- 频繁或大量的IGMP请求
- 大量并发的DHCP请求(如交换机作为DHCP服务器时,恢复与大量用户的连接)
- ARP广播风暴
- 以太网广播风暴
- 软转发大量并发协议报文(如短时间内L2PT透传大量BPDU报文,DHCP Relay/Snooping软转发DHCP报文等)
- 大量不能由转发芯片直接转发的数据报文上送CPU(如ARP-Miss)
- 端口频繁Up/Down
如何定位CPU占用率高
查看设备及版本信息
使用display version和display device命令查看交换机的版本信息及部件类型,将获取的信息记录下来,以供后续排查时使用。
- 通过display version命令的回显,查看交换机的版本信息。
# 使用display version查看交换机的版本信息。
<HUAWEI> display version Huawei Versatile Routing Platform Software VRP (R) software, Version 5.160 (S7700 V200R007C00) Copyright (C) 2000-2013 HUAWEI TECH CO., LTD Quidway S7703 Terabit Routing Switch uptime is 0 week, 0 day, 1 hour, 3 minutes BKP 0 version information: 1. PCB Version : LE02BAKB VER.A 2. Supporting PoE : No 3. Board Type : ES0B017712P0 4. MPU Slot Quantity : 2 5. LPU Slot Quantity : 3 ……
关注“VRP (R) software, Version 5.160”字段,可以看出这台S7700系列框式交换机为V200R007版本。
- 通过display device命令的回显,查看交换机的型号、是否是集群/堆叠系统、交换机上使用的业务板(仅框式交换机有业务板)有哪些类型等。
# 使用display device查看交换机的部件类型及状态信息。
<HUAWEI> display device S7712's Device status: Slot Sub Type Online Power Register Status Role ------------------------------------------------------------------------------- 6 - ES0D0X4UXC00 Present PowerOn Registered Normal NA 8 - ES0D0F48TC00 Present PowerOn Registered Normal NA 9 - ES0D0G24SC00 Present PowerOn Registered Normal NA 10 - - Present PowerOff Unregistered - NA 14 - ES0D00SRUA00 Present PowerOn Registered Normal Master PWR1 - - Present PowerOn Registered Normal NA CMU1 - LE0DCMUA0000 Present PowerOn Registered Normal Master FAN1 - - Present PowerOn Registered Normal NA FAN2 - - Present PowerOn Registered Normal NA FAN3 - - Present PowerOn Registered Normal NA FAN4 - - Present PowerOn Registered Normal NA
通过显示信息,可以看出这是台S7712交换机,非集群系统,并且交换机上有ES0D00SRUA00主控板、LE0DCMUA0000集中监控板、ES0D0X4UXC00、ES0D0F48TC00和ES0D0G24SC00三块单板。
查看CPU占用率
- 执行display cpu-usage命令,查看CPU占用率。
隔几秒连续执行display cpu-usage命令,观察“CPU Usage”字段是否持续保持较高百分比。
一般情况下,交换机长时间运行时CPU占用率不超过80%,短时间内CPU占用率不超过95%,可认为交换机状态是正常的。
执行命令
框式交换机命令描述
盒式交换机命令描述
display cpu-usage
查看(主用)主控板的CPU占用率。
说明:备用主控板的CPU占用率不会高,可以不关注。
查看设备的CPU占用率。
display cpu-usage slot slot-id
- 非集群:查看指定接口板的CPU占用率。
- 集群:查看集群设备的CPU占用率。
- 非堆叠:取值为0,表示设备。
- 堆叠:根据实际堆叠情况选取。
# 查看一台非集群状态下框式交换机的CPU占用率。
<HUAWEI> display cpu-usage CPU Usage Stat. Cycle: 10 (Second) CPU Usage : 88% Max: 92% CPU Usage Stat. Time : 2010-12-18 15:35:56 CPU utilization for five seconds: 68%: one minute: 60%: five minutes: 55%. Max CPU Usage Stat. Time : 2015-01-27 10:08:10. TaskName CPU Runtime(CPU Tick High/Tick Low) Task Explanation VIDL 82% 8/ 4c8b1ff DOPRA IDLE OS 12% 1/2c684bff Operation System ……
可以看出,这台交换机CPU占用率高达88%。
后续处理:通过显示信息,获取CPU占用率较高的任务,并重点关注占用率最高的前3个任务(V200R005及后续版本,显示信息中“TaskName”会以CPU占用率高低来排序),以判断引起CPU占用率高的初步原因,详细信息请参考根据任务的CPU占用率排序判断初步原因(框式交换机)和根据任务的CPU占用率排序判断初步原因(盒式交换机)。
- 在网管系统上查看是否有相关告警。
当交换机部署了网管系统时,可以在网管系统上查看CPU占用率高的相关告警。
当CPU占用率超过告警阈值(可在系统视图下通过set cpu-usage threshold配置,缺省情况下,CPU占用率监控告警过载阈值是80%),系统会向网管发送如下告警,管理用户可通过这些信息获取CPU占用率过高的记录。
- hwCPUUtilizationRising
- hwCPUUtilizationRisingAlarm
关于以上告警的具体信息,请查看告警信息。
- 查看日志是否有CPU占用率高的记录。
通过查看系统日志文件或执行display logbuffer命令查看设备的日志信息,查看设备是否产生了CPU占用率高的日志。
系统日志可以查看历史及当前是否有CPU占用率高的记录。
相关日志信息为:VOSCPU/4/CPU_USAGE_HIGH,关于该日志的具体信息,请查看日志信息。
根据任务的CPU占用率排序判断初步原因(框式交换机)
通过查看display cpu-usage命令的显示信息,获取CPU占用率较高的任务,并重点关注占用率最高的前3个任务(V200R005及后续版本,显示信息中“TaskName”会以CPU占用率高低来排序)。
请根据表1-5来查询引起CPU占用率高的原因及解决措施。
任务名称 |
任务描述 |
该任务导致CPU占用率高的原因 |
解决措施 |
---|---|---|---|
AGNT |
实现IPv4 SNMP协议栈,网管与设备使用SNMP协议链接均由此任务处理 |
网管操作频繁 |
结合网络管理事件进行分析。必要时降低网管请求速率或屏蔽网管请求 |
AGT6 |
实现IPv6 SNMP协议栈,网管与设备使用SNMP协议链接均由此任务处理 |
||
ARP |
实现ARP协议栈,管理协议状态机,维护协议相关的数据库 |
|
调整底层报文上送CAR和老化时间 |
bcmRx/bcmT/FTS/FBUF/VP/VPR/VPS/SOCK/ARPA |
报文接收和发送类任务 |
大量协议报文上送CPU时,该任务的CPU占用率就会出现显著的升高。 这通常是导致系统CPU占用率高的重要原因。 通常由以下原因引起:
|
|
bcmDPC |
芯片失效,中断上报任务 |
|
|
bcmL2MOD.0 |
芯片0 MAC表项学习任务 |
存在MAC漂移或HASH冲突 |
|
bcmL2MOD.2 |
芯片2 MAC表项学习任务 |
||
bmLINK.0 |
芯片0 linkscan任务,扫描端口状态,变化时通知应用模块处理 |
link中断上报过多或者miim访问耗时。Link中断由光模块LOS中断产生,非认证光模块以及光模块故障都会产生过多的异常中断(一般非标准光模块会引起此类情况) |
更换华为标准光模块 |
bmLINK.1 |
芯片1 linkscan任务,扫描端口状态,变化时通知应用模块处理 |
||
bmLINK.2 |
芯片2 linkscan任务,扫描端口状态,变化时通知应用模块处理 |
||
CFM |
配置管理任务,主要处理主控配置恢复、接口配置恢复等配置管理业务 |
配置恢复 |
无需处理 |
CWP_CWP |
CAPWAP业务分发任务,CAPWAP报文接收分发 |
消息队列维护,报文分发、统计,CAPWAP定时器处理(重传、分片、重组、状态机),报文量大时,持续性打流,攻击时会出现 |
降低业务并发,进行扩容或者更换高配置主控板,如SRUH等 |
CWP_FWD |
CAPWAP socket创建,socket报文收发,快速收发报文 |
CAPWAP控制报文业务量大时,持续性打流,或者遭遇CAPWAP攻击等 |
用户量大并发的情况下(大于20个/S接入)该任务在15%以内属于正常,只能通过扩容解决 |
DEV/HOTT/FMCK/SRMI |
设备管理任务 |
|
请联系华为交换机经销商确认是否为硬件故障并进行处理。 详细信息请参考判断为硬件故障引起 |
DHCP |
实现DHCP协议栈处理,完成DHCP Snooping及DHCP Relay等功能 |
CPU遭受DHCP协议报文攻击 |
详细信息请参考判断为网络攻击引起 |
FIB |
在主控板生成IPv4软转发表项并下发接口板,指导转发 |
下发大量路由时,路由持续震荡 |
无需处理 |
FIB6 |
IPv6 FIB表项管理,维护软件表项,并触发适配层维护芯片表项 |
||
FMAT |
告警管理任务,所有业务上报的告警均会经过此任务处理 |
大量告警触发,例如大量接口UP、DOWN |
告警触发量趋于平缓后自然恢复 |
FTPS |
提供FTP服务功能(FTP服务器),伴随FTP业务还会存在FC0 、FC1等任务 |
FC任务在大文件传输时会CPU冲高,例如传大包甚至并发传多个大包等 |
文件传输结束后自然恢复,或尽量减少并行多个大文件同时传输 |
HTTP |
HTTP协议任务,处理HTTP协议报文 |
外部大量HTTP报文需要处理时会CPU冲高(例如WEB网管频发操作等) |
降低外部操作触发的报文频率 |
INFO |
信息中心主任务,接收、输出业务模块产生的日志、告警、debug等 |
日志、debug触发频发,不常见CF卡性能差,写文件也可能会CPU冲高 |
降低日志、debug等触发操作的操作频率 |
IP |
负责IP协议任务统一调度 |
IPv6报文收发量很大 |
降低报文收发量,比如调整CPCAR |
L2MC |
组播产品接口板适配任务,二层组播适配下发表项 |
由于环网或者端口震荡,二层组播表项反复刷新 |
检查是否存在环网或者端口震荡的情况 |
LDP |
实现LDP协议栈,维护LDP LSP数据库 |
路由震荡引起该类任务对应的CPU占用率高 |
防止路由震荡,导致会话震荡 |
MCSW |
组播产品适配任务,处理组播协议收发包,以及三层组播适配下发表项 |
|
|
MFIB |
管理三层组播转发表项 |
接收大量数据/注册报文表项、接口频繁振荡导致不断刷新 |
配置策略过滤数据,查找震荡原因,并修复 |
MPSI |
MPLS业务接口板适配任务 |
|
检查端口震荡和协议状态 |
MPSM |
MPLS业务主控板适配任务 |
||
PAT |
管理补丁加载、激活、运行、删除等操作 |
加载补丁时,备板和接口板加载补丁会导致PAT任务CPU升高 |
在加载补丁过程中,CPU会升高一会,目前没有好的办法解决。建议在加载补丁过程中不要做大批量的业务操作,避免加载补丁对业务有影响 |
PM |
性能管理任务,性能统计数据处理、PM配置命令处理 |
PM配置较多时(统计数据较多),触发性能数据采集、处理则可能CPU较高 |
|
RSVP |
实现RSVP协议栈,维护CR-LSP数据库 |
RSVP LSP震荡或者有大量的RSVP协议报文收发处理 |
RSVP LSP震荡一般是链路或IGP震荡导致,可以消除链路或IGP震荡原因。大量RSVP协议报文收发可排查是否有非法RSVP报文 |
SFPM |
完成光模块生产信息和数字诊断信息的查询功能 |
设备上存在非认证光模块,导致I2C异常 |
替换出问题的非认证光模块 |
SNPG |
二层组播协议栈任务,处理二层组播协议收发包,以及二层组播表项下发 |
|
|
VIDL |
统计空闲业务的CPU使用率 |
该任务对应的取值越大,CPU越空闲 |
系统利用VIDL任务占用CPU的时间来统计设备的CPU占用率,因此无需处理 |
VT0 |
对编号为0的登录设备的用户进行认证、命令处理 |
用户操作,尤其输入输出操作频繁,例如黏贴命令到屏幕(输入)或执行大量回显命令(输出) |
降低输入输出频率,并且操作结束后会自然恢复 |
VT1 |
对编号为1的登录设备的用户进行认证、命令处理 |
||
VT2 |
对编号为2的登录设备的用户进行认证、命令处理 |
||
VTYD |
接收所有用户登录处理 |
大量用户输入会导致CPU高,例如黏贴命令到屏幕(输入) |
降低输入频率 |
WMT_DEV |
设备管理任务,主要负责:
|
AP批量上下线、升级、射频调优、终端定位时,并发处理大量来自AP的消息,会导致该任务占用CPU高 |
配置空口扫描周期为较大值,排查AP是否频繁掉线 |
WMT_SEC |
用户管理:
|
用户并发量大,漫游大并发(大于20个/S的接入或者漫游量) |
该任务在用户并发大于20个/S时会出现占用15%左右的情况,用来处理用户的接入、认证、漫游等。超过该规格时需要进行扩容 |
We0 |
WebServer任务 |
处理大量HTTP报文 |
禁止外界通过WEB访问来规避该问题。命令行:undo http server enable(关闭WEB用户通过HTTP协议登录)和 undo http secure-server enable(关闭WEB用户通过HTTPS协议登录) |
We1 |
|||
WT0 |
WEB业务处理任务,处理所有WEB用户的请求 |
WEB网管操作频繁 |
降低WEB网管操作频率 |
WT1 |
|||
WT2 |
|||
UCM/SAM |
用户上下线以及权限控制处理 |
用户并发量大或者上下线频繁 |
排查是否存在大量用户上下线操作,认证配置变更 |
如果您的交换机的CPU占用率高任务不在以上表格里,请参考CPU各任务名称及功能说明(框式交换机),查询是什么业务引起。
如果您的交换机CPU占用率高任务既不在以上表格里,也不在CPU各任务名称及功能说明(框式交换机)里面,请联系华为交换机经销商进行处理。
通过上述表格,只能大致判断出引起CPU占用率高的原因,具体原因还要结合后续排查手段进行问题定位并处理,详细信息请参考如何解决CPU占用率高。
根据任务的CPU占用率排序判断初步原因(盒式交换机)
通过查看display cpu-usage命令的显示信息,获取CPU占用率较高的任务,并重点关注占用率最高的前3个任务(V200R005及后续版本,显示信息中“TaskName”会以CPU占用率高低来排序)。
请根据表1-6来查询引起CPU占用率高的原因及解决措施。
任务名称 |
任务描述 |
该任务导致CPU占用率高的原因 |
解决措施 |
---|---|---|---|
VIDL |
统计空闲业务的CPU使用率 |
该任务对应的取值越大,CPU越空闲 |
系统利用VIDL任务占用CPU的时间来统计设备的CPU占用率,因此无需处理 |
bmLINK.0 |
linkscan任务,扫描端口状态,变化时通知应用模块处理 |
link中断上报过多或者miim访问耗时。Link中断由光模块LOS中断产生,非认证光模块以及光模块故障都会产生过多的异常中断(一般非标光模块会引起此类情况) |
更换华为标准光模块 |
linkscan |
|||
AGNT |
实现IPv4 SNMP协议栈,网管与设备使用SNMP协议链接均由此任务处理 |
网管操作频繁 |
结合网络管理事件进行分析,必要时降低网管请求速率或屏蔽网管请求 |
AGT6 |
实现IPv6 SNMP协议栈,网管与设备使用SNMP协议链接均由此任务处理 |
||
ARP |
实现ARP协议栈,管理协议状态机,维护协议相关的数据库 |
|
调整底层报文上送CAR和老化时间 |
CFM |
配置管理任务,主要处理主控配置恢复、接口配置恢复等配置管理业务 |
配置恢复 |
无需处理 |
CWP_CWP |
CAPWAP业务分发任务,CAPWAP报文接收分发 |
消息队列维护,报文分发、统计,CAPWAP定时器处理(重传、分片、重组、状态机),报文量大时,持续性打流,攻击时会出现 |
降低业务并发、进行扩容或者更换高配置主控板,如SRUH等 |
DEV/HOTT/FMCK/SRMI |
设备管理任务 |
|
请联系华为交换机经销商确认是否为硬件故障并进行处理,详细信息请参考判断为硬件故障引起 |
CWP_FWD |
CAPWAP socket创建,socket报文收发,快速收发包 |
CAPWAP控制报文业务量大时,持续性打流,或者遭遇CAPWAP攻击等 |
用户量大并发的情况下(大于20个/S接入)该任务在15%以内属于正常,只能通过扩容解决 |
DHCP |
实现DHCP协议栈处理,完成DHCP Snooping及DHCP Relay等功能 |
CPU遭受DHCP协议报文攻击 |
详细信息请参考判断为网络攻击引起 |
ETHA |
以太报文分发处理任务 |
大量协议报文上送CPU |
合理配置协议报文限速,并部署适当的防攻击功能 |
EpldIntTask |
处理CPLD中断的任务 |
CPLD中断产生过多,会造成任务处理加重,CPU占用率变高 |
排查CPLD中断是否过多 |
FIB |
在主控板生成IPv4软转发表项并下发接口板,指导转发 |
下发大量路由时,路由持续震荡 |
- |
FIB6 |
IPv6 FIB表项管理,维护软件表项,并触发适配层维护芯片表项 |
||
FMAT |
告警管理任务,所有业务上报的告警均会经过此任务处理 |
大量告警触发,例如大量接口UP/DOWN |
告警触发量趋于平缓后自然恢复 |
FTPS |
提供FTP服务功能,伴随FTP业务还会存在FC0、FC1等任务 |
FC任务在大文件传输时会CPU冲高,例如传大包甚至并发传多个大包等 |
文件传输结束后自然恢复,或尽量减少并行多个大文件同时传输 |
FTS |
上层收发包任务 |
大量协议报文上送CPU时,该任务的CPU占用率就会出现显著的升高。 这通常是导致系统CPU占用率高的重要原因。 通常由以下原因引起:
|
|
HTTP |
HTTP协议任务,处理HTTP协议报文 |
外部大量HTTP报文需要处理时会CPU冲高(例如WEB网管频发操作等) |
降低外部操作触发的报文频率 |
INFO |
信息中心主任务,接收、输出业务模块产生的日志、告警、debug等 |
日志、debug触发频发,不常见CF卡性能差,写文件也可能会CPU冲高 |
降低日志、debug等触发操作的操作频率 |
INT |
linux盒式处理内核上送的CPLD中断的任务 |
CPLD中断产生过多,会造成任务处理加重,CPU占用率变高 |
排查CPLD中断是否过多 |
LDP |
实现LDP协议栈,维护LDP LSP数据库 |
路由震荡引起该类任务对应的CPU占用率高 |
防止路由震荡,导致会话震荡 |
MCSW |
组播产品适配任务,处理组播协议收发包,以及三层组播适配下发表项 |
|
|
MFIB |
管理三层组播转发表项 |
接收大量数据/注册报文表项、接口频繁振荡,导致不断刷新 |
配置策略过滤数据,查找震荡原因,并修复 |
MPSI |
MPLS业务接口板适配任务 |
|
检查端口震荡和协议状态 |
MPSM |
MPLS业务主控板适配任务 |
||
PAT |
管理补丁加载、激活、运行、删除等操作 |
加载补丁时,备板和接口板加载补丁会导致PAT任务CPU升高 |
在加载补丁过程中,CPU会升高一会,目前没有好的办法解决。建议在加载补丁过程中不要做大批量的业务操作,避免加载补丁对业务有影响 |
PM |
性能管理任务,性能统计数据处理、PM配置命令处理 |
PM配置较多时(统计数据较多),触发性能数据采集、处理则可能CPU较高 |
|
SFPT |
盒式光模块任务处理 |
设备上存在非认证光模块,导致I2C异常 |
替换出问题的非认证光模块 |
SNPG |
二层组播协议栈任务,处理二层组播协议收发包,以及二层组播表项下发 |
|
|
SOCK |
IP协议栈报文调度和处理 |
大量协议报文上送CPU时,该任务的CPU占用率就会出现显著的升高。 这通常是导致系统CPU占用率高的重要原因。 通常由以下原因引起:
|
|
VT0 |
对编号为0的登录设备的用户进行认证、命令处理 |
用户操作,尤其输入输出操作频繁,例如黏贴命令到屏幕(输入)或执行大量回显命令(输出) |
降低输入输出频率,并且操作结束后会自然恢复 |
VTYD |
(VTY守护进程)接收所有用户登录处理 |
大量用户输入会导致CPU高,例如黏贴命令到屏幕(输入) |
降低输入频率 |
We0 |
WebServer任务 |
处理大量HTTP报文 |
禁止外界通过WEB访问来规避该问题。命令行:undo http server enable(关闭WEB用户通过HTTP协议登录)和 undo http secure-server enable(关闭WEB用户通过HTTPS协议登录) |
We1 |
|||
WT0 |
WEB业务处理任务,处理所有WEB用户的请求 |
WEB网管操作频繁 |
降低WEB网管操作频率 |
bcmDPC |
芯片失效,中断上报任务 |
|
|
bcmL2MOD.0 |
芯片0 MAC表项学习任务 |
存在MAC漂移或HASH冲突 |
|
l2au |
MAC学习任务 |
MAC漂移、HASH冲突 |
- |
l2sy |
MAC同步任务 |
||
WMT_DEV |
设备管理任务,主要负责:
|
AP批量上下线、升级、射频调优、终端定位时,并发处理大量来自AP的消息,会导致该任务占用CPU高 |
配置空口扫描周期为较大值,排查AP是否频繁掉线 |
WMT_SEC |
用户管理:
|
用户并发量大,漫游大并发(大于20个/S的接入或者漫游量) |
该任务在用户并发大于20个/S时会出现占用15%左右的情况,用来处理用户的接入、认证、漫游等。超过该规格时需要进行扩容 |
UCM/SAM |
用户上下线以及权限控制处理 |
用户并发量大或者上下线频繁 |
排查是否存在大量用户上下线操作,认证配置变更 |
如果您的交换机的CPU占用率高任务不在以上表格里,请参考CPU各任务名称及功能说明(盒式交换机),查询是什么业务引起。
如果您的交换机CPU占用率高任务既不在以上表格里,也不在CPU各任务名称及功能说明(盒式交换机)里面,请联系华为交换机经销商进行处理。
通过上述表格,只能大致判断出引起CPU占用率高的原因,具体原因还要结合后续排查手段进行问题定位并处理,详细信息请参考如何解决CPU占用率高。
如何解决CPU占用率高
根据任务和CPU占用率排序判断初步原因后,可以通过该原因进一步分析问题的根本原因并执行相应的故障处理措施。
判断为硬件故障引起
当通过根据任务的CPU占用率排序判断初步原因(框式交换机)或者根据任务的CPU占用率排序判断初步原因(盒式交换机)判断可能为硬件故障,即观察到DEV/HOTT/FMCK/SRMI任务CPU占用率高时,请联系华为交换机经销商确认是否为硬件故障并进行处理。
如果业务受影响时,请尝试下手工复位CPU占用率较高的单板(建议采用下电的方式进行复位)来紧急恢复。
判断为网络攻击引起
现网中导致CPU占用率高的原因,很大一部分是由于网络攻击引起。网络攻击是由于网络中的主机或者网络设备通过发起大量的非正常网络交互对交换机产生冲击,影响交换机的安全性和正常的业务运行。发生网络攻击时,交换机忙于处理来自于攻击源的非正常网络交互请求,具体表现均为某些任务大量占用CPU,导致CPU占用率高。
常见的网络攻击
常见的网络攻击包括ARP、ARP-Miss以及DHCP等协议报文攻击,这些攻击行为的共同特点是攻击源产生大量的协议报文对设备进行冲击,因此可以在设备上看到大量上送CPU的报文统计。
- ARP协议报文攻击和ARP-Miss协议报文攻击
- ARP和ARP-Miss泛洪攻击
- ARP欺骗攻击
- DHCP协议报文攻击
- 其他攻击
- ICMP攻击
- DDoS攻击
- 广播报文攻击
- TTL-expired报文攻击
- 目的IP为设备IP的报文攻击
- SSH/FTP/Telnet等应用层协议报文攻击
网络攻击的定位方法
- 使用display version和display device命令查看交换机的版本信息及部件类型,将获取的信息记录下来,以供后续排查时使用。
- 使用display cpu-defend statistics命令查看上送CPU报文的统计信息,判断是否存在过多由于来不及处理而丢弃的协议报文。
- 执行reset cpu-defend statistics命令,清除上送CPU报文的统计信息。
- 隔几秒display cpu-defend statistics命令,查看上送CPU报文的统计信息。
如果观察到某种协议报文过多,根据组网判断是否可能出现这么多的协议报文。如果不可能出现这么多协议报文,则可基本判断为协议报文的攻击。
<HUAWEI> reset cpu-defend statistics <HUAWEI> display cpu-defend statistics all Statistics on slot 2: ----------------------------------------------------------------------------------------------------------- Packet Type Pass(Bytes) Drop(Bytes) Pass(Packets) Drop(Packets) ----------------------------------------------------------------------------------------------------------- arp-miss 0 0 0 0 arp-request 40800 35768 600 52600 bgp 0 0 0 0 …… -----------------------------------------------------------------------------------------------------------
可以观察到这台设备出现过多被丢弃的ARP-Request报文,如果现网不可能出现这么多的ARP-Request报文,确定设备遭受到了ARP攻击。
- 使用本机防攻击的攻击溯源功能找出攻击源。设备提供本机防攻击功能来保护CPU,解决CPU因处理大量正常上送CPU的报文或者恶意攻击报文造成的业务中断问题。本机防攻击策略主要包括攻击溯源、端口防攻击、CPCAR和黑名单这四大功能。
- 创建基于攻击溯源的本机防攻击策略。
- 创建ACL,用于将网关IP加入攻击溯源的白名单。
<HUAWEI> system-view [HUAWEI] acl number 2000 [HUAWEI-acl-basic-2000] rule 5 permit source 10.1.1.1 0 //10.1.1.1为网关IP地址 [HUAWEI-acl-basic-2000] quit
- 创建基于攻击溯源的本机防攻击策略。
[HUAWEI] cpu-defend policy policy1 [HUAWEI-cpu-defend-policy-policy1] auto-defend enable //使能攻击溯源功能(缺省情况下,未使能该功能) [HUAWEI-cpu-defend-policy-policy1] undo auto-defend trace-type source-portvlan //配置攻击溯源的溯源模式为基于源MAC地址和源IP地址(缺省情况下,攻击溯源的溯源模式为基于源MAC地址、基于源IP地址和基于源接口+VLAN。一般是使用undo auto-defend trace-type命令来删除不需要的攻击溯源模式。) [HUAWEI-cpu-defend-policy-policy1] undo auto-defend protocol 8021x dhcp icmp igmp tcp telnet ttl-expired udp //删除攻击溯源防范的报文类型(缺省情况下,攻击溯源防范的报文类型为802.1x、ARP、DHCP、ICMP、IGMP、TCP、Telnet、TTL-expired和UDP。) [HUAWEI-cpu-defend-policy-policy1] auto-defend whitelist 1 acl 2000 //将网关IP加入白名单 [HUAWEI-cpu-defend-policy-policy1] quit
V200R009之后版本,攻击溯源的配置模型进行重新设计,攻击溯源默认使能,溯源的协议按照正常的使用习惯,设计成覆盖式。[HUAWEI] cpu-defend policy policy1 [HUAWEI-cpu-defend-policy-policy1] auto-defend protocol arp //只溯源攻击溯源ARP报文(缺省情况下,攻击溯源防范的报文类型为802.1x、ARP、DHCP、ICMP、IGMP、TCP、Telnet、TTL-expired和UDP。V200R010 新增支持IPv6类型的DHCPv6,ND,ICMPv6,MLD) [HUAWEI-cpu-defend-policy-policy1] auto-defend whitelist 1 acl 2000 //将网关IP加入白名单 [HUAWEI-cpu-defend-policy-policy1] quit
- 创建ACL,用于将网关IP加入攻击溯源的白名单。
- 应用本机防攻击策略。
- 框式交换机
对框式交换机来说,主控板和接口板上均有CPU,本机防攻击策略的配置和应用也需要按主控板和接口板来做区分。
先检查主控板和接口板的受报文攻击情况,再创建防攻击策略并应用。如果主控板和接口板上受报文攻击的情况相同,可以在主控板和接口板上应用相同的防攻击策略,否则需要应用不同的防攻击策略。
- 在主控板上应用防攻击策略。
<HUAWEI> system-view [HUAWEI] cpu-defend-policy policy1 [HUAWEI] quit
- 在接口板上应用防攻击策略。
如果在所有接口板上应用防攻击策略,则不能在指定接口板上应用该防攻击策略。反之亦然。
- 如果设备的接口板承载业务类似,在所有接口板上应用防攻击策略。
<HUAWEI> system-view [HUAWEI] cpu-defend-policy policy2 global
- 如果设备的接口板承载业务各有差异,在指定接口板上应用防攻击策略。
<HUAWEI> system-view [HUAWEI] slot 1 [HUAWEI-slot-1] cpu-defend-policy policy2
- 如果设备的接口板承载业务类似,在所有接口板上应用防攻击策略。
- 在主控板上应用防攻击策略。
- 盒式交换机
- 非堆叠情况下,在设备上应用防攻击策略。
<HUAWEI> system-view [HUAWEI] cpu-defend-policy policy1 global
- 堆叠情况下:
- 在主设备上应用防攻击策略
<HUAWEI> system-view [HUAWEI] cpu-defend-policy policy1
- 在所有堆叠设备上应用防攻击策略
<HUAWEI> system-view [HUAWEI] cpu-defend-policy policy1 global
- 在主设备上应用防攻击策略
- 非堆叠情况下,在设备上应用防攻击策略。
- 框式交换机
- 查看攻击源信息。
配置基于攻击溯源的本机防攻击功能后,可以执行display auto-defend attack-source和display auto-defend attack-source slot slot-id命令,查看攻击源信息。
识别的攻击源MAC中可能包含网关的MAC地址,需要注意剔除。
- 创建基于攻击溯源的本机防攻击策略。
网络攻击的处理建议
根据查看到的攻击源信息,结合现网情况,选择处理方法。
- 配置ARP安全功能,防范ARP协议攻击。
针对ARP和ARP-Miss协议报文攻击,可以部署ARP安全功能,来防止设备后续遭受这类攻击。
设备提供了多种ARP安全的解决方案,请参考产品文档的“配置指南-安全配置-ARP安全配置”的“ARP安全解决方案”进行配置。
- 配置攻击溯源的惩罚功能,在指定周期内丢弃识别为攻击的报文。
- 使能攻击溯源的惩罚功能,在300秒内,将识别为攻击的报文全部丢弃。
<HUAWEI> system-view [HUAWEI] cpu-defend policy policy1 [HUAWEI-cpu-defend-policy-policy1] auto-defend enable //使能攻击溯源功能(缺省情况下,未使能该功能) [HUAWEI-cpu-defend-policy-policy1] auto-defend action deny timer 300 //(缺省情况下,未使能攻击溯源的惩罚功能)
- 配置本机防攻击策略的黑名单,直接丢弃黑名单用户上送的报文。
如果判断攻击源为特定用户的恶意报文(假设攻击源为1.1.1.0/24)攻击,可以通过ACL把符合特定特征的用户纳入到黑名单中,被纳入黑名单的用户所发的报文到达设备后均会被丢弃。
# 配置ACL 2001匹配源1.1.1.0/24的报文,命中该ACL的特征报文将被设备直接丢弃。
[HUAWEI] acl number 2001 [HUAWEI-acl-basic-2001] rule permit source 1.1.1.0 0.0.0.255 [HUAWEI-acl-basic-2001] quit [HUAWEI] cpu-defend policy policy1 [HUAWEI-cpu-defend-policy-policy1] blacklist 1 acl 2001
- 配置攻击溯源的惩罚功能,将攻击报文进入的接口shutdown,避免攻击源继续攻击设备。
如果判断攻击报文来自某端口,并且将该端口shutdown,不会对设备业务造成影响,可以使用该方法。
如果配置攻击溯源的惩罚措施是将攻击报文进入的接口shutdown,有可能会造成设备业务的中断,接口下合法的用户会受牵连,请谨慎使用。
# 配置攻击溯源的惩罚措施为将攻击报文进入的端口shutdown。
<HUAWEI> system-view [HUAWEI] cpu-defend policy policy1 [HUAWEI-cpu-defend-policy-policy1] auto-defend enable //使能攻击溯源功能(缺省情况下,系统未使能该功能) [HUAWEI-cpu-defend-policy-policy1] auto-defend action error-down
- 使能攻击溯源的惩罚功能,在300秒内,将识别为攻击的报文全部丢弃。
判断为网络震荡引起
出现网络震荡时,网络频繁变动,设备忙于处理网络切换事件,导致CPU占用率高。常见的网络震荡情况包括STP震荡和OSPF路由协议震荡。
STP震荡
在STP频繁震荡时,设备需要不断进行STP拓扑计算,更新MAC表、ARP表等转发表,引起CPU占用率高。
- 定位方法
- 当怀疑网络中存在频繁的STP震荡时,可以通过隔几秒连续执行display stp topology-change命令查看当前STP的拓扑变化信息,也可以查看设备输出的告警和日志信息观察设备是否产生过STP拓扑变化。
# 隔几秒连续执行一次该命令,查看设备上STP拓扑变化统计信息,观察“Number of topology changes”是否有增长。
<HUAWEI> display stp topology-change CIST topology change information Number of topology changes :35 Time since last topology change :0 days 1h:7m:30s Topology change initiator(notified) :GigabitEthernet2/0/6 Topology change last received from :101b-5498-d3e0 Number of generated topologychange traps : 38 Number of suppressed topologychange traps: 8 MSTI 1 topology change information Number of topology changes :0
- 确认存在频繁的网络拓扑变化后,隔几秒连续执行display stp tc-bpdu statistics命令查看端口接收到的TC-BPDU统计,以确定TC(Topology Change)报文的来源,找到发送拓扑变化的设备。
- 如果显示信息中只有“TC(Send)”计数增长,表明是本设备发生拓扑变化,产生STP震荡。
- 如果只是单个接口的“TC(Send)”计数增长,确定是该接口产生震荡。
- 如果是多个接口的“TC(Send)”计数增长,请查看网管事件和日志信息分析STP拓扑变化的根因,确定是哪个端口产生震荡。
- 如果显示信息中“TC(Send/Receive)”计数均有增长,先查看本设备网管事件和日志信息排查本设备是否发生拓扑变化,产生STP震荡,再排查与发生问题的端口连接的设备是否产生STP震荡。
# 查看端口TC/TCN报文收发计数。
<HUAWEI> display stp tc-bpdu statistics -------------------------- STP TC/TCN information -------------------------- MSTID Port TC(Send/Receive) TCN(Send/Receive) 0 GigabitEthernet2/0/6 21/4 0/1 0 GigabitEthernet2/0/7 93/0 0/1 0 GigabitEthernet2/0/8 115/0 0/0 0 GigabitEthernet2/0/9 110/0 0/0 0 GigabitEthernet3/0/23 29/5 0/0
- 如果显示信息中只有“TC(Send)”计数增长,表明是本设备发生拓扑变化,产生STP震荡。
- 当怀疑网络中存在频繁的STP震荡时,可以通过隔几秒连续执行display stp topology-change命令查看当前STP的拓扑变化信息,也可以查看设备输出的告警和日志信息观察设备是否产生过STP拓扑变化。
- 处理建议
- 打开TC保护的告警开关,帮助管理用户了解设备对TC报文的具体处理情况。
系统视图下,执行命令snmp-agent trap enable feature-name mstp和stp tc-protection,打开TC保护的告警开关。
缺省情况下,设备已启用防拓扑变化攻击功能,在stp tc-protection interval命令指定的生成树协议处理最大数量的TC报文所需的时间内,设备只会处理stp tc-protection threshold指定的最大数量的TC报文。
告警开关打开后,设备会触发MSTP_1.3.6.1.4.1.2011.5.25.42.4.2.15 hwMstpiTcGuarded和MSTP_1.3.6.1.4.1.2011.5.25.42.4.2.16 hwMstpProTcGuarded两个告警。
关于以上告警的详细信息,请参考告警信息。
- 根据拓扑变化情况进行处理
- 接入侧端口Up/Down引起的STP拓扑变化
在接口视图下通过stp edged-port enable命令将接入侧端口配置为边缘端口,并在系统视图或STP进程视图下通过stp bpdu-protection命令开启BPDU保护功能。
- 根桥发生了非预期的变化,即“抢根”
执行display stp命令,观察“CIST Root/ERPC”是否为原预期的端口的MAC地址,如果不是则表示根桥发生了非预期的变化。
在端口视图下通过stp root-protection命令开启根保护功能,保证拓扑的正确性。
<HUAWEI> display stp -------[CIST Global Info][Mode MSTP]------- CIST Bridge:4096 .707b-e8c8-00e9 Config Times:Hello 2s MaxAge 20s FwDly 15s MaxHop 20 Active Times:Hello 2s MaxAge 20s FwDly 15s MaxHop 20 CIST Root/ERPC:4096 .707b-e8c8-00e9 / 0 (This bridge is the root) CIST RegRoot/IRPC:4096 .707b-e8c8-00e9 / 0 (This bridge is the root) CIST RootPortId:0.0 BPDU-Protection:Disabled CIST Root Type:Secondary root TC or TCN received:1 TC count per hello:0 STP Converge Mode:Normal Share region-configuration :Enabled Time since last TC:1 days 14h:25m:38s Number of TC:2 Last TC occurred:GigabitEthernet0/0/1 ----[Port18(GigabitEthernet0/0/1)][LEARNING]---- Port Protocol:Enabled Port Role:Designated Port Port Priority:128 Port Cost(Dot1T ):Config=auto / Active=20000 Designated Bridge/Port:4096.707b-e8c8-00e9 / 128.18 Port Edged:Config=default / Active=disabled Point-to-point:Config=auto / Active=true Transit Limit:6 packets/s Protection Type:None Port STP Mode:STP Port Protocol Type:Config=auto / Active=dot1s BPDU Encapsulation:Config=stp / Active=stp PortTimes:Hello 2s MaxAge 20s FwDly 15s RemHop 20 TC or TCN send:0 TC or TCN received:0 BPDU Sent:11 TCN: 0, Config: 12, RST: 0, MST: 1 BPDU Received:0 TCN: 0, Config: 1, RST: 0, MST: 0
- 接入侧端口Up/Down引起的STP拓扑变化
- 如果无法找到拓扑变化原因或者执行以上处理措施后故障依然存在,请收集组网信息(包括端口连接情况)和日志信息(可以是log.log日志文件,也可以是执行display logbuffer输出的信息),联系华为交换机经销商。
- 打开TC保护的告警开关,帮助管理用户了解设备对TC报文的具体处理情况。
OSPF路由协议震荡
- 定位方法
- 通过命令display ospf peer last-nbr-down查看OSPF邻居状态Down的原因。
根据输出信息的“Immediate Reason”字段和“Primary Reason”字段查看原因。
- 通过日志查看OSPF邻居状态Down的原因。
执行display logbuffer命令,查看如下日志信息:
OSPF/3/NBR_DOWN_REASON:Neighbor state leaves full or changed to Down. (ProcessId=[USHORT], NeighborRouterId=[IPADDR],NeighborAreaId=[ULONG], NeighborInterface=[STRING],NeighborDownImmediate reason=[STRING], NeighborDownPrimeReason=[STRING],NeighborChangeTime=[STRING])
NeighborDownImmediate reason关键字记录的是OSPF邻居Down的原因。
- 通过命令display ospf peer last-nbr-down查看OSPF邻居状态Down的原因。
- 处理建议
根据关键字段判断原因并采取相应措施。
OSPF邻居Down的原因一般会有以下几种:- Neighbor Down Due to Inactivity
表示在deadtime时间(在接口视图下通过ospf timer dead命令配置)内没有收到Hello报文导致OSPF邻居Down。
OSPF邻居Down一般包括OSPF邻居震荡和OSPF邻居建立不起来。持续执行display ospf peer brief 命令,查看当前是OSPF邻居震荡还是OSPF邻居无法建立。- OSPF邻居震荡
设备上OSPF CPCAR值过小、接口链路震荡或接口链路拥塞、大量LSA flooding都会导致OSPF邻居关系震荡。
- 执行命令display cpu-defend statistics packet-type ospf查看上送CPU的OSPF报文统计信息,如果OSPF丢包过多,请排查设备是否受到OSPF报文攻击或OSPF的CPCAR值设置过小。
- 通过日志信息查看接口Up/Down的记录情况。如果出现链路震荡或链路拥塞,请对接口链路进行检查。
- 如果配置的OSPF邻居失效时间小于20s,建议在接口视图下通过ospf timer dead interval命令将OSPF邻居失效时间配置为20s以上。
- 建议OSPF视图下通过sham-hello enable命令使能OSPF的sham-hello功能,允许设备通过LSU等非hello报文维持邻居关系,从而可以更灵敏的感知OSPF邻居的存在,使邻居关系更加稳定。
- 如果执行上述措施后仍然无法解决问题,建议联系华为交换机经销商。
- OSPF邻居无法建立
排查两端OSPF视图下的配置是否一致,如果区域ID,区域类型(NSSA区域、STUB区域、普通区域)等配置不一致,会导致邻居无法建立。
执行命令display ospf [ process-id ] interface查看Interface字段,检查对应的接口是否被成功使能OSPF。
<HUAWEI> display ospf 1 interface OSPF Process 1 with Router ID 2.2.2.2 Interfaces Area: 0.0.0.0 (MPLS TE not enabled) Interface IP Address Type State Cost Pri Eth0/1/1 10.1.1.2 Broadcast Waiting 1 1
- 如果对应的接口没有使能OSPF,请在接口视图下执行命令ospf enable [ process-id ] area area-id将接口使能OSPF。
- 如果对应的接口已经被使能到OSPF进程,请隔几秒连续执行display ospf error命令,查看Bad authentication type和Bad authentication key字段,确认两端设备的OSPF认证信息是否匹配:
<HUAWEI> display ospf 1 error OSPF Process 1 with Router ID 2.2.2.2 OSPF error statistics General packet errors: 0 : IP: received my own packet 3 : Bad packet 0 : Bad version 0 : Bad checksum 0 : Bad area id 0 : Drop on unnumbered interface 0 : Bad virtual link 3 : Bad authentication type 0 : Bad authentication key 0 : Packet too small 0 : Packet size > ip length 0 : Transmit error 0 : Interface down 0 : Unknown neighbor 0 : Bad net segment 0 : Extern option mismatch
- 如果Bad authentication type或者Bad authentication key计数持续增长,说明两端的OSPF认证信息不匹配,请在接口视图下执行ospf authentication-mode命令或者在OSPF区域视图下执行authentication-mode命令将两端设备配置相同的认证信息。
- 如果Bad authentication type或者Bad authentication key计数不增长,说明认证信息匹配,且多次执行命令display ospf peer显示邻居时有时无,有可能是OSPF邻居震荡,请参考“OSPF邻居震荡”进行处理。
- OSPF邻居震荡
- Neighbor Down Due to Kill Neighbor
表示因为接口Down、BFD Down或执行了reset ospf process操作。
请查看NeighborDownPrimeReason字段判断具体原因。
- Neighbor Down Due to 1-Wayhello Received或Neighbor Down Due to SequenceNum Mismatch
表示因为对端OSPF状态首先变成Down,从而向本端发送1-Wayhello,导致本端OSPF状态也变成Down。
请先排查对端设备的原因。
其它导致OSPF邻居Down的原因,请参考日志信息的“OSPF/3/NBR_DOWN_REASON”的日志详细信息。
- Neighbor Down Due to Inactivity
判断为网络环路引起
出现网络环路时,设备上MAC表频繁漂移,同时产生的广播风暴造成大量协议报文上送设备处理,导致CPU占用率高。
- 定位方法
网络出现环路后,一般会有如下现象产生:
- 设备CPU占用率超过80%。
- 设备上发生环路的VLAN的接口指示灯频繁闪烁。
- 设备出现频繁的MAC漂移。
- 管理用户无法远程登录设备,并且使用Console口登录设备进行操作时,操作比较慢。
- 通过Ping命令进行网络测试时丢包严重。
- 使用display interface命令查看接口统计信息时,发现接口收到大量广播报文。
- 部署环路检测功能后,设备出现环路告警。
- 设备下接的PC机上收到大量的广播报文或未知单播报文。
- 处理建议
- 通过接口指示灯的闪烁情况和接口流量情况,确认存在广播风暴的接口。
- 根据链路拓扑,逐跳排查产生环路的设备。
- 判断产生环路的接口并破环。
- 如果执行上述措施后仍然无法解决问题,请收集组网信息(包括端口连接情况)和日志信息(可以是log.log日志文件,也可以是执行display logbuffer输出的信息),联系华为交换机经销商。
这里仅介绍关于网络环路的简单定位方法和处理建议,详细信息请参考环路专题文档。
如何尽量避免CPU占用率高
- 合理规划网络,预先配置破环协议,同时使能环回检测功能,避免网络成环。
- 全局视图下配置loopback-detect untagged mac-address ffff-ffff-ffff,此命令保证设备环路探测报文BPDU报文为广播报文,不会被其他设备终结。
- 接口视图下配置loopback-detect enable,使能环回检测功能。
当设备所有使能环回检测功能的接口下的VLAN个数总和超过1024时,建议通过命令loopback-detect action shutdown配置接口检测到环路时的处理动作为shutdown。(对于每个端口,每加入到一个VLAN,VLAN个数就加1,即使是多个端口同时加入同一个VLAN。)
- 配置ARP安全功能,防止设备受到ARP和ARP-Miss协议报文攻击。
设备提供了多种ARP安全的解决方案,请参考产品文档的“配置指南-安全配置-ARP安全配置”的“ARP安全解决方案”进行配置。
- 在经常出现DHCP、ARP协议报文攻击的网络(如校园网),配置基于DHCP、ARP协议报文的本机防攻击策略。
下面给出通用情况下本机防攻击策略的建议配置,由于不同的设备和版本可能在少数地方存在差异,不同的场景也对各种协议报文的上送存在不同的要求,不能一概而论。在实际配置的时候请根据具体的设备型态、版本并按照现网实际的业务要求,对配置进行审视之后再操作,避免出现配置不成功甚至业务受损的问题。
- 框式主控板
# cpu-defend policy main-board auto-defend enable //V200R009后的版本为默认配置 undo auto-defend trace-type source-portvlan //V200R009后的版本为默认配置 undo auto-defend protocol tcp igmp telnet ttl-expired //V200R009版本为auto-defend protocol arp dhcp auto-defend action deny auto-defend whitelist 1 interface GigabitEthernet x/x/x //将互联口加入白名单 auto-defend whitelist 2 interface GigabitEthernet x/x/x //将上行口加入白名单 # cpu-defend-policy main-board #
- 框式接口板
# cpu-defend policy io-board auto-defend enable //V200R009后的版本为默认配置 undo auto-defend trace-type source-portvlan //V200R009后的版本为默认配置 undo auto-defend protocol tcp igmp telnet ttl-expired //V200R009版本为auto-defend protocol arp dhcp auto-defend action deny auto-defend whitelist 1 interface GigabitEthernet x/x/x //将互联口加入白名单 auto-defend whitelist 2 interface GigabitEthernet x/x/x //将上行口加入白名单 # cpu-defend-policy io-board global #
- 盒式交换机
# cpu-defend policy main auto-defend enable //V200R009后的版本为默认配置 undo auto-defend trace-type source-portvlan //V200R009后的版本为默认配置 undo auto-defend protocol tcp igmp telnet ttl-expired //V200R009版本为auto-defend protocol arp dhcp auto-defend action deny auto-defend whitelist 1 interface GigabitEthernet x/x/x //将互联口加入白名单 auto-defend whitelist 2 interface GigabitEthernet x/x/x //将上行口加入白名单 # cpu-defend-policy main global #
- 框式主控板
- 管理用户通过SSH、Telnet、SNMP等方式登录设备时,配置基于ACL的访问限制,只允许指定的管理用户登录设备。
# 在VTY0~14用户界面上,通过ACL指定只有源IP为10.1.1.1/32的用户可以登录到本设备。
<HUAWEI> system-view [HUAWEI] acl 2001 [HUAWEI-acl-adv-2001] rule 5 permit source 10.1.1.1 0 [HUAWEI-acl-adv-2001] quit [HUAWEI] user-interface vty 0 14 [HUAWEI-ui-vty0-14] acl 2001 inbound
- 当端口组成员个数超过40,批量加入4K VLAN时,可能导致CPU占用率短时间内超过80%,因此,建议该端口组批量加入的VLAN个数不超过500。
- 当超过20个端口同时切换类型时,可能导致CPU占用率短时间内超过80%,因此,建议逐个切换端口类型,避免批量切换。
- MAC频繁漂移可能导致CPU占用率高,因此,在可能产生MAC频繁漂移场景,建议通过命令mac-address flapping action error-down配置接口发生MAC漂移后的处理动作为error-down。
- 及时加载并激活版本对应最新的补丁文件。
请登录http://support.huawei.com/enterprise/网站获取补丁的软件和安装补丁需要参考的文档(包括补丁说明书和补丁安装指导书)。
- 定期给设备下接的PC或服务器杀毒,减少攻击。
- 设备针对每类协议报文都有缺省的CPCAR值,一般情况下,缺省的CPCAR值即可满足需要。如果存在正常业务的流量过大的问题,请联系华为交换机经销商根据实际业务规模和具体的用户网络环境进行调整。
附录
CPU占用率高相关命令/告警/日志/网管OID信息
命令信息
命令 |
描述 |
---|---|
display interface [ interface-type ] counters { inbound | outbound } |
查看设备上各接口收发报文统计信息。 |
display cpu-usage [ slave | slot slot-id ] |
查看设备CPU占用率的统计信息。 |
display cpu-defend statistics [ packet-type packet-type ] [ all | slot slot-id ] |
查看协议报文上送CPU的统计信息。 |
display arp packet statistics |
查看ARP报文统计信息。 |
display dhcp statistics |
查看DHCP报文统计信息。 |
display cpu-defend rate [ packet-type packet-type ] [ slot slot-id | all ] |
查看协议报文上送CPU的速率。 |
display cpu-defend policy [ policy-name ] |
查看防攻击策略的配置信息。 |
display auto-defend configuration [ cpu-defend policy policy-name | slot slot-id | mcu ] |
查看攻击溯源的配置信息。 |
display cpu-defend configuration |
查看CAR(包括上送CPU的报文限速信息,协议报文上送的CPU队列)的配置信息。 |
display logbuffer [ size value | slot slot-id | module module-name | security | level { severity | level } ] * |
查看设备日志信息。 |
display trapbuffer [ size value ] |
查看设备告警信息。 |
display stp [ process process-id ] [ instance instance-id ] topology-change |
查看STP拓扑变化信息。 |
display stp [ process process-id ] [ instance instance-id ] [ interface interface-type interface-number | slot slot-id ] tc-bpdu statistics |
查看STP TC BPDU统计信息。 |
reset cpu-defend statistics [ packet-type packet-type ] [ all | slot slot-id ] |
清除上送CPU报文的统计信息。 |
cpu-defend policy policy-name |
配置本机防攻击策略。 |
blacklist blacklist-id acl acl-number |
通过ACL配置本机防攻击策略的黑名单。 |
whitelist whitelist-id acl acl-number |
通过ACL配置本机防攻击策略的白名单。 |
queue packet-type packet-type queue-value |
配置协议报文上送CPU的队列号。 |
auto-defend enable |
使能攻击溯源功能。 |
undo auto-defend trace-type { source-mac | source-ip | source-portvlan } * |
删除攻击溯源的溯源模式。 |
undo auto-defend protocol { 8021x | arp | dhcp | dhcpv6 | icmp | icmpv6 | igmp | mld | nd | tcp | telnet | ttl-expired | udp }* |
删除攻击溯源防范的报文类型。 |
auto-defend whitelist whitelist-number { acl acl-number | interface interface-type interface-number } |
配置攻击溯源的白名单,对白名单用户不做溯源。 |
auto-defend alarm enable |
使能攻击溯源事件上报功能。 |
auto-defend action { deny [ timer time-length ] | error-down } |
使能攻击溯源的惩罚功能,并指定惩罚措施。 |
auto-port-defend whitelist whitelist-number { acl acl-number | interface interface-type interface-number } |
配置端口防攻击的白名单。 |
系统视图:cpu-defend-policy policy-name [ global ] 槽位视图:cpu-defend-policy policy-name |
应用防攻击策略。(该命令格式与设备形态、版本有关,此处仅以V200R007版本框式交换机为例) |
告警信息
- ENTITYTRAP_1.3.6.1.4.1.2011.5.25.219.2.14.1 hwCPUUtilizationRising //设备的CPU使用率超过门限阈值。
ENTITYTRAP/4/ENTITYCPUALARM:OID [oid] CPU utilization exceeded the pre-alarm threshold.(Index=[INTEGER], EntityPhysicalIndex=[INTEGER], PhysicalName=[OCTET], EntityThresholdType=[INTEGER], EntityThresholdValue=[INTEGER], EntityThresholdCurrent=[INTEGER], EntityTrapFaultID=[INTEGER].)
- BASETRAP_1.3.6.1.4.1.2011.5.25.129.2.4.1 hwCPUUtilizationRisingAlarm //设备的CPU使用率超过门限。
BASETRAP/2/CPUUSAGERISING: OID [oid] CPU utilization exceeded the pre-alarm threshold.(Index=[INTEGER], BaseUsagePhyIndex=[INTEGER], UsageType=[INTEGER], UsageIndex=[INTEGER], Severity=[INTEGER], ProbableCause=[INTEGER], EventType=[INTEGER], PhysicalName="[OCTET]", RelativeResource="[OCTET]", UsageValue=[INTEGER], UsageUnit=[INTEGER], UsageThreshold=[INTEGER])
- MSTP_1.3.6.1.4.1.2011.5.25.42.4.2.15 hwMstpiTcGuarded //在启用MSTP的设备上启用TC保护功能,单位时间内收到的TC报文超过阈值,超过阈值的TC消息将被延迟到TC保护时间超时后处理。
MSTP/4/TCGUARD:OID [OID] The instance received TC message exceeded the threshold will be deferred to deal with at the end of TC protection time. (InstanceID=[INTEGER])
- MSTP_1.3.6.1.4.1.2011.5.25.42.4.2.16 hwMstpProTcGuarded //MSTP进程启用TC保护功能,单位时间内收到的TC报文超过阈值,超过阈值的TC消息将被延迟到该MSTP进程TC保护时间超时后处理。
MSTP/1/PROTCGUARD:OID [OID] MSTP process's instance received TC message exceeded the threshold will be deferred to deal with at the end of TC protection time. (ProcessID=[INTEGER], InstanceID=[INTEGER])
日志信息
- DEFD/6/CPCAR_DROP_MPU //上送CPU的报文速率超出了主控板的CPCAR限制。
DEFD/6/CPCAR_DROP_MPU:Rate of packets to cpu exceeded the CPCAR limit on the MPU. (Protocol=[STRING], CIR/CBS=[ULONG]/[ULONG], ExceededPacketCount=[STRING])
参数名称
参数含义
Protocol
协议类型。
CIR/CBS
承诺信息速率和承诺突发尺寸。
ExceededPacketCount
超出报文计数。
- DEFD/6/CPCAR_DROP_LPU //上送CPU的报文速率超出了接口板的CPCAR限制。
DEFD/6/CPCAR_DROP_LPU:Rate of packets to cpu exceeded the CPCAR limit on the LPU in slot [STRING]. (Protocol=[STRING], CIR/CBS=[ULONG]/[ULONG], ExceededPacketCount=[STRING])
参数名称
参数含义
slot
槽位号。
Protocol
协议类型。
CIR/CBS
承诺信息速率和承诺突发尺寸。
ExceededPacketCount
超出报文计数。
- SECE/4/PORT_ATTACK //该端口上出现对应VLAN的大量攻击报文。
SECE/4/PORT_ATTACK:Port attack occurred.(Slot=[STRING], SourceAttackInterface=[STRING], OuterVlan/InnerVlan=[ULONG]/[ULONG], AttackProtocol=[STRING], AttackPackets=[ULONG] packets per second)
参数名称
参数含义
Slot
MPU或者LPU槽位。
SourceAttackInterface
攻击源接口。
OuterVlan
攻击源外层VLAN,如果只有单层VLAN也填写在此部分。
InnerVlan
攻击源内层VLAN。
AttackProtocol
攻击报文类型。
AttackPackets
攻击源报文速率(单位pps)。
- SECE/4/USER_ATTACK //主控板或者接口板出现用户攻击信息。
SECE/4/USER_ATTACK:User attack occurred.(Slot=[STRING], SourceAttackInterface=[STRING], OuterVlan/InnerVlan=[ULONG]/[ULONG], UserMacAddress=[STRING], AttackProtocol=[STRING], AttackPackets=[ULONG] packets per second)
参数名称
参数含义
Slot
MPU或者LPU槽位。
SourceAttackInterface
攻击源接口。
OuterVlan
攻击源外层VLAN,如果只有单层VLAN也填写在此部分。
InnerVlan
攻击源内层VLAN。
UserMacAddress
攻击源MAC地址。
AttackProtocol
攻击报文类型。
AttackPackets
攻击源报文速率(单位pps)。
- SECE/4/SPECIFY_SIP_ATTACK //设备受到攻击时,打印攻击源信息。
SECE/4/SPECIFY_SIP_ATTACK:The specified source IP address attack occurred.(Slot=[STRING], SourceAttackIP = [STRING], AttackProtocol=[STRING], AttackPackets=[ULONG] packets per second)
参数名称
参数含义
Slot
MPU或者LPU槽位。
SourceAttackIP
攻击源IP地址。
AttackProtocol
攻击报文类型。
AttackPackets
攻击源报文速率(单位pps)。
- SECE/4/PORT_ATTACK_OCCUR //设备检测到端口存在某种协议报文的攻击后,启动端口防攻击。
SECE/4/PORT_ATTACK_OCCUR:Auto port-defend started.(SourceAttackInterface=[STRING], AttackProtocol=[STRING])
参数名称
参数含义
SourceAttackInterface
攻击源接口。
AttackProtocol
攻击报文类型。
- SECE/6/PORT_ATTACK_END //管理用户排除端口攻击源后,设备解除端口防攻击。
SECE/6/PORT_ATTACK_END:Auto port-defend stop.(SourceAttackInterface=[STRING], AttackProtocol=[STRING],ExceededPacketCountInSlot=[STRING])
参数名称
参数含义
SourceAttackInterface
攻击源接口。
AttackProtocol
攻击报文类型。
ExceededPacketCountInSlot
丢包计数。多个端口触发端口防攻击后,丢包不一定只发生在日志记录的端口上。(R10新增)
- VOSCPU/4/CPU_USAGE_HIGH //提示CPU超载,并显示占用率前三位的任务及各任务的占用率。如果任务包含子任务,则同时列出子任务的名称和占用率。
VOSCPU/4/CPU_USAGE_HIGH:The CPU is overloaded (CpuUsage=[ULONG]%, Threshold=[ULONG]%), and the tasks with top three CPU occupancy are: [CPU-resources-usage]
参数名称
参数含义
[CPU-resources-usage]
占用率前三位的任务名称及各任务的CPU占用率。如果任务包含子任务,则同时列出子任务的名称和占用率。
CpuUsage
当前CPU占用率。
Threshold
CPU占用率阈值。
- OSPF/3/NBR_DOWN_REASON //邻居状态改变为Down。
OSPF/3/NBR_DOWN_REASON:Neighbor state leaves full or changed to Down. (ProcessId=[USHORT], NeighborRouterId=[IPADDR], NeighborAreaId=[ULONG], NeighborInterface=[STRING],NeighborDownImmediate reason=[STRING], NeighborDownPrimeReason=[STRING], NeighborChangeTime=[STRING])
参数名称
参数含义
ProcessId
进程号。
NeighborRouterId
邻居路由器标识。
NeighborAreaId
邻居区域ID。
NeighborInterface
邻居接口。
NeighborDownImmediate reason
OSPF邻居Down的直接原因,一般会有以下几种:
Neighbor Down Due to Inactivity:表示在Dead Time时间内没有收到Hello报文导致OSPF邻居状态为Down。
Neighbor Down Due to LL Down LLDown:表示在Dead Time时间内没有收到LLD报文导致OSPF邻居状态为Down。
Neighbor Down Due to Kill Neighbor:表示因为接口Down、BFD Down或执行了reset ospf process命令。此时,可以通过查看NeighborDownPrimeReason字段判断具体原因。
Neighbor Down Due to 1-Wayhello Received或Neighbor Down Due to SequenceNum Mismatch:表示因为对端OSPF状态首先变成Down,从而向本端发送1-Way Hello报文,导致本端OSPF状态也变成Down。
Neighbor Down Due to AdjOK?:表示AdjOK?事件超时导致邻居down。
Neighbor Down Due to BadLSreq:表示本接口的邻居状态机发生BadLSReq事件超时导致邻居down。
NeighborDownPrimeReason
邻居Down的根本原因,一般会有以下几种:
Hello Not Seen:没有收到Hello报文
Interface Parameter Mismatch:链路两端的接口配置参数不匹配
Logical Interface State Change:逻辑接口状态发生变化
Physical Interface State Change:物理接口状态发生变化
OSPF Process Reset:OSPF进程发生重启
Area reset:区域类型发生变化导致区域重启
Area Option Mis-match:链路两端接口所属的区域Option不匹配
Vlink Peer Not Reachable:虚连接邻居不可达
Sham-Link Unreachable:Sham-Link邻居不可达
Undo Network Command:network命令被删除
Undo NBMA Peer:NBMA类型接口上的邻居配置被删除
Passive Interface Down:由于本端配置了silent-interface命令,导致邻居关系Down
Opaque Capability Enabled:使能了opaque能力
Opaque Capability Disabled:去使能opaque能力
Virtual Interface State Change:虚连接的接口状态变化
BFD Session Down:BFD会话Down
Down Retransmission Limit Exceed:达到重传限制
1-Wayhello Received:收到1-Way的Hello报文
Router State Change from DR or BDR to DROTHER:接口状态机由DR或BDR变为DROTHER
Neighbor State Change from DR or BDR to DROTHER:接口状态机由DR或BDR变为DROTHER
NSSA Area Configure Change:NSSA区域配置发生变化
Stub Area Configure Change:Stub区域配置发生变化
Received Invalid DD Packet:收到无效的DD报文
Not Received DD during RouterDeadInterval:在Dead定时器启动期间,没有收到DD报文
M,I,MS bit or SequenceNum Incorrect:收到的DD报文中M、I、MS比特位与协议规定不符
Unable Opaque Capability,Find 9,10,11 Type Lsa:收到了9,10,11类型的LSA,但是Opaque能力并没有被使能
Not NSSA,Find 7 Type Lsa in Summary List:本区域不属于NSSA,却在Summary表中发现了Tpye-7 LSA
LSrequest Packet,Unknown Reason:由于未知原因收到LSR报文
NSSA or STUB Area,Find 5 ,11 Type Lsa:本区域属于NSSA或者Stub,却发现了Tpye-5、Tpye-11 LSA
LSrequest Packet,Request Lsa is Not in the Lsdb:邻居向本进程或区域通过LSR请求一条LSA,但该LSA不存在本进程的LSDB中
LSrequest Packet, exist same lsa in the Lsdb:本进程收到一条本地LSDB中已存在的相同LSA,该LSA在邻居的请求列表中
LSrequest Packet, exist newer lsa in the Lsdb:本进程收到一条更新的LSA,该LSA在本地LSDB中已存在,并且在邻居的请求列表中
Neighbor state was not full when LSDB overflow:LSDB已经溢出,但是邻居状态机还没有达到Full
Filter LSA configuration change:LSA filter配置发生变化
ACL changed for Filter LSA:LSA filter的ACL配置发生变化
Reset Ospf Peer:重启OSPF邻居
NeighborChangeTime
状态改变时间。
本机防攻击策略
系统提供了本机防攻击策略来保护CPU,解决CPU因处理大量正常上送CPU的报文或者恶意攻击报文造成的业务中断问题,保证攻击发生时CPU能够正常处理业务。
功能介绍
如图1-8所示,本机防攻击策略主要包括攻击溯源、端口防攻击、CPCAR和黑名单这四大功能。其中端口防攻击和CPCAR功能默认已使能。
调整CPCAR不当将会影响网络业务,如果需要调整CPCAR,建议联系华为交换机经销商处理。
攻击溯源
使能攻击溯源功能后,系统对上送CPU的报文进行分析统计,并对统计的报文设置检查阈值,将超过阈值的报文判定为攻击报文,再根据攻击报文信息找出攻击源的接口、IP等信息,最后通过日志上报管理用户,同时为了对攻击源进行惩罚,系统也可以直接丢弃攻击报文一段时间或者关闭受攻击的接口。
- 攻击溯源的溯源模式
系统支持三种溯源模式,分别适用于以下场景:
- 针对三层报文的攻击,则配置基于源IP地址进行溯源。
- 针对固定源MAC地址报文的攻击,则配置基于源MAC地址进行溯源。
- 针对变换源MAC地址报文的攻击,则配置基于源接口和VLAN进行溯源。
如果不确定报文的攻击方式,也可以按照缺省情况,基于以上三种模式来对攻击报文进行溯源。
- 攻击溯源的报文类型
系统支持针对报文类型包括802.1x、ARP、DHCP、ICMP、IGMP、TCP、Telnet、TTL为1、UDP,DHCPv6、mld、icmpv6 和 ND在内的报文单独进行溯源,也可以同时对这些类型的报文进行攻击溯源。
当攻击发生时,由于设备同时对多种类型的报文进行溯源,管理用户无法区分攻击报文的具体类型。通过灵活配置攻击溯源防范的报文类型,设备将针对所配置的报文类型进行溯源。
- 攻击溯源的惩罚措施
系统在识别出攻击源后,将对攻击源进行一定的惩罚,从而避免攻击源继续攻击设备:
- 在一定周期内,将识别为攻击的报文丢弃。
- 将识别为攻击的报文进入的接口Shutdown。
- 攻击溯源的白名单
当希望某些用户无论其是否存在攻击都不对其进行攻击溯源分析和攻击溯源惩罚时,则可以配置攻击溯源的白名单。系统将不对攻击溯源的白名单用户进行攻击溯源的惩罚。
通常将上行端口加入白名单,避免误惩罚后对业务造成影响。
- 攻击溯源的相关阈值
系统支持对检查阈值、采样比检查阈值和溯源事件上报阈值进行配置。
如图1-9所示,当溯源模式设置为基于源IP地址,检查阈值为4个/单位时间,惩罚动作为丢弃攻击报文一段时间时,如果单位时间内上送CPU的报文超过检查阈值,系统将其认定为攻击,输出显示攻击源为10.3.2.1的日志信息,并对其实施一段时间内丢弃该报文的惩罚动作。
端口防攻击
端口防攻击基于端口维度进行防御,可以有效控制从端口上送CPU处理的报文数量,避免如果从某个端口上送CPU的恶意攻击报文挤占带宽,导致其他端口的报文无法正常上送CPU处理而造成的业务中断。
通过配置端口防攻击,设备可以基于端口维度对上送CPU的报文进行溯源和限速,以防御针对CPU的DoS攻击。
缺省情况下,系统已使能端口防攻击功能。系统对端口收到的报文速率进行计算。在老化探测周期内,如果该值超过了端口防攻击的检查阈值,就认为该端口存在攻击,系统将对该端口的攻击报文进行溯源和限速处理,并通过日志通知管理用户。
设备的限速处理方式为:
- 交换机对端口收到的协议报文速率进行计算,并对该端口的攻击报文进行溯源和限速处理。当某端口收到的协议报文超过检查阈值时,系统认为检测到攻击,并发送日志,交换机将其移入低优先级队列(一般是2号队列,关于队列的介绍请参考CPCAR)后再上送CPU处理。
对于未超出限速值(该值等同于防攻击策略里协议报文的CPCAR值)的报文,设备将其移入低优先级队列后再上送CPU处理;
- 对于超出限速值的报文,直接丢弃。
端口防攻击的主要功能包括如下:
- 端口防攻击的防范报文类型
系统支持对报文类型为ARP Request、ARP Reply、DHCP、ICMP、IGMP和IP分片报文单独进行端口防攻击,也可以同时对这些类型的报文进行端口防攻击。
- 端口防攻击的白名单
当希望某些用户无论其是否存在攻击都不对其进行攻击溯源和限速处理时,则可以配置端口防攻击的白名单。
通常将上行端口加入白名单,避免因网络侧大量协议报文得不到CPU及时处理而影响正常业务,保证确定为合法用户的报文能够正常上送CPU处理。
- 端口防攻击的相关阈值
系统支持对检查阈值、采样比检查阈值和老化探测周期进行配置。
当攻击发生时,由于设备同时对多种类型的报文进行溯源,管理用户无法区分攻击报文的具体类型。通过灵活配置攻击溯源防范的报文类型,设备将针对所配置的报文类型进行溯源。
- 如图1-10所示,端口1和端口2均有ARP-request报文和DHCP报文上送,端口1的ARP-request报文和端口2的DHCP报文超过了检查阈值,系统将其检测为攻击,并移入2号队列, 做低优先级处理。
端口防攻击默认已使能。端口防攻击的限速处理方式相比较攻击溯源的惩罚措施,对设备正常业务造成的影响更小。
CPCAR
CPCAR(Control Plane Committed Access Rate)通过对上送CPU的报文分别进行限速,来保护控制平面的安全。报文上送CPU后,报文限速主要分为如下几类:
- 基于每个协议的限速
系统针对每种协议单独设置了限定速率值,对于超过该速率值的协议报文,设备直接丢弃,从而保证每种协议能够正常得到处理,避免因为某种协议报文流量过大而导致其它协议报文得不到处理。
- 基于队列的调度和限速
协议限速之后,系统根据报文的层次(按管理/控制/转发分类)及其重要性来指定将报文分入哪个队列,队列具有相对优先级。各个队列之间按照优先级方式调度,在有冲突的情况下保证高优先级业务优先处理。同时,可以针对每个队列进行限速,限制各个队列向CPU上送报文的最大速率,通过该机制确保CPU高负荷下设备的稳定。
交换机共有ID号为0~7共8个队列,其中队列ID值越大,优先级越高。报文对应的队列信息可以通过命令display cpu-defend configuration all查看。
- 所有报文统一限速
在稳定的网络环境下,上送CPU的报文数量控制在适当的范围内。如果一段时间内上送CPU的报文数量过大,则CPU会因为忙于处理这些报文而表现为CPU占用率过高。为了限制CPU处理的报文总数,系统将所有报文最后再做统一限速,保证了CPU的正常运行。
如图1-11所示,大量协议报文上送CPU:
- 系统先根据协议限速值来对不同的协议报文进行限速。
- 再根据协议所属队列将其移入不同的队列,队列号越大报文被处理的优先级越高。
- 最后系统再根据统一限速值对所有报文做限速,如果上送报文超过统一限速值,低优先级队列的报文有可能被系统直接丢弃。
CPCAR对交换机的管理网口不起作用。如果管理网口下的网络存在的攻击较为严重,可能会导致用户无法从管理网口登录并管理设备,此时建议用户对该网络上的PC进行杀毒或者重新规划组网。
设备针对每类协议报文都有缺省的CPCAR值,调整CPCAR不当将会影响网络业务,如果需要根据实际业务规模和具体的用户网络环境对部分协议报文的CPCAR进行调整,请联系华为交换机经销商。
一般情况下,设备上协议报文的CPCAR值采用默认值就可以满足应用。
黑名单
现网出现大量协议报文攻击交换机CPU,导致设备无法处理正常的协议报文或者CPU过载引发协议振荡。此时可以通过报文获取、攻击溯源等定位手段明确攻击源的特征(如攻击源的源MAC地址或者源IP地址),然后配置黑名单将此类攻击报文丢弃。
通过创建黑名单,把符合特定特征的用户纳入到黑名单中,设备将直接丢弃黑名单用户上送的报文。如图1-12所示,配置1号黑名单,匹配10.1.1.0/24的源报文;配置2号黑名单,匹配10.2.2.0/24的源报文,当这些报文上送CPU时,设备将直接丢弃该报文。
配置本机防攻击策略
- 创建本机防攻击策略。
- 执行命令system-view,进入系统视图。
- 执行命令cpu-defend policy policy-name,创建防攻击策略并进入防攻击策略视图。
- 配置攻击溯源。
- 执行命令auto-defend enable,使能攻击溯源功能。
- 执行命令auto-defend trace-type { source-ip | source-mac | source-portvlan }*,配置攻击溯源的溯源模式。
- 执行命令auto-defend protocol { all | { 8021x | arp | dhcp | icmp | igmp | tcp | telnet | ttl-expired | udp } * },配置攻击溯源防范的报文类型。
- 执行命令auto-defend whitelist whitelist-number { acl acl-number | interface interface-type interface-number },配置攻击溯源的白名单。
- 执行命令auto-defend action { deny [ timer time-length ] | error-down },使能攻击溯源的惩罚功能,并指定惩罚措施。
- 配置端口防攻击。
- 执行命令auto-port-defend enable,使能基于端口的防攻击功能。
缺省情况下,已使能基于端口的防攻击功能。
- 执行命令auto-port-defend protocol { all | { arp-request | arp-reply | dhcp | icmp | igmp | ip-fragment } * },配置端口防攻击可以防范的报文类型。
缺省情况下,端口防攻击支持防范的报文类型为ARP Request、ARP Reply、DHCP、ICMP、IGMP和IP分片报文。
- 执行命令auto-port-defend enable,使能基于端口的防攻击功能。
- 配置协议报文限速CPCAR。
协议报文上送CPU的上送规则包括car和deny两种。当先后配置同一报文类型的car命令和deny命令时,最后配置的命令生效。
- 执行命令car { packet-type packet-type | user-defined-flow flow-id } cir cir-value [ cbs cbs-value ],配置对上送CPU的报文进行CPCAR限速,并设置速率阈值。
- 执行命令deny { packet-type packet-type | user-defined-flow flow-id },配置对上送CPU的报文动作为丢弃。
- 执行命令blacklist blacklist-id acl acl-number,创建黑名单。
设备的一个防攻击策略最多可以配置8条黑名单。
黑名单中应用的ACL,无论其rule配置为permit还是deny,命中该ACL的报文均会被丢弃。
- 应用本机防攻击策略
创建了本机防攻击策略后,还需要应用该策略,本机防攻击策略才会生效。
框式交换机
对框式交换机来说,主控板和接口板上均有CPU,本机防攻击策略的配置和应用也需要按主控板和接口板来做区分。
先检查主控板和接口板的受报文攻击情况,再创建防攻击策略并应用。如果主控板和接口板上受报文攻击的情况相同,可以在主控板和接口板上应用相同的防攻击策略,否则需要应用不同的防攻击策略。
- 在主控板上应用防攻击策略。
- 执行命令system-view,进入系统视图。
- 执行命令cpu-defend-policy policy-name1,应用防攻击策略。
- 在接口板上应用防攻击策略。
如果在所有接口板上应用防攻击策略,则不能在指定接口板上应用该防攻击策略。反之亦然。
- 如果设备的接口板承载业务类似,在所有接口板上应用防攻击策略。
执行命令cpu-defend-policy policy-name2 global,应用防攻击策略。
- 如果设备的接口板承载业务各有差异,在指定接口板上应用防攻击策略。
- 执行命令slot slot-id,进入槽位视图。
- 执行命令cpu-defend-policy policy-name2,应用防攻击策略。
槽位视图下应用防攻击策略,只对当前接口板生效。
- 如果设备的接口板承载业务类似,在所有接口板上应用防攻击策略。
盒式交换机- 非堆叠情况下
- 执行命令system-view,进入系统视图。
- 执行命令cpu-defend-policy policy-name global,在设备上应用防攻击策略。
- 堆叠情况下
- 执行命令system-view,进入系统视图。
- 应用防攻击策略。
- 执行命令cpu-defend-policy policy-name global,在所有堆叠设备上应用防攻击策略。
- 执行命令cpu-defend-policy policy-name,在主设备上应用防攻击策略。
- 在主控板上应用防攻击策略。
CPU各任务名称及功能说明
任务名称 |
任务描述 |
---|---|
BUFM |
输出调试信息的任务 |
1731 |
实现Y.1731协议栈,管理协议状态机,维护协议相关的数据库 |
_EXC |
系统异常事件处理任务 |
_TIL |
监控、处理软件异常导致的死循环 |
AAA |
认证/计费/授权,实现与UCM、RADIUS等模块进行交互,处理用户认证消息,维护认证与授权表项信息 |
ACL |
访问控制列表 |
ADPG |
适配层任务,维护动态VLAN相关的芯片表项 |
ADPT |
实现EFM协议栈处理,管理协议状态机,维护协议相关的数据库 |
age_task |
MAC老化任务 |
AGNT |
实现IPv4 SNMP协议栈 |
AGT6 |
实现IPv6 SNMP协议栈 |
ALM |
告警信息的添加、清除、管理任务 |
ALS |
实现激光器自动关闭功能 |
AM |
负责地址池以及地址的管理,为DHCP等模块提供地址管理服务 |
AMCP |
应用层管理控制协议,用于SPU单板同步主控板数据 |
APP |
负责三层业务任务统一调度 |
ARP |
实现ARP协议栈,管理协议状态机,维护协议相关的数据库 |
au_msg_hnd |
AU消息处理任务,MAC学习和MAC表项下发使用AU消息方式 |
bcmC |
芯片端口报文计数 |
bcmD |
实现芯片的驱动软件异步处理消息 |
bcmR |
提供从芯片接收报文的功能 |
bcmT |
提供向芯片发送报文的功能 |
bcmX |
提供向特定型号芯片异步发送报文的功能 |
bcmL2MOD.0 |
MAC表项学习任务 |
BEAT |
板间心跳报文的发送和接收、监控板间通信是否异常 |
BFD |
实现双向链路检测(BFD)协议栈,管理协议状态机,维护协议相关的数据库 |
bmLI |
扫描端口状态,变化时通知应用模块处理 |
BOX |
输出黑盒子中存储的信息(黑盒子用于记录产品运行过程中出现的错误、异常等信息) |
BULK_CLASS |
USB设备类管理任务(操作系统任务) |
BULK_CLASS_IRP |
USB设备类I/O请求包管理任务(操作系统任务) |
BusM A |
USB总线管理任务(操作系统任务) |
CCTL |
批量性能采集调度任务 |
CDM |
管理配置相关数据 |
CFM |
配置恢复 |
CHAL |
完成硬件适配层功能 |
CKDV |
时钟卡控制和管理 |
CMD_Switching |
Socket侦听任务 |
CMDA |
提供批量执行命令的功能 |
cmdExec |
命令行执行任务 |
CSBR |
主备一致性检测 |
CSPF |
实现CSPF协议栈,进行路径计算 |
CssC |
处理集群产生的事件 |
CSSM |
实现集群协议栈,管理集群状态 |
DEFD |
负责监控上送CPU的流量,维护CPU防攻击相关数据 |
DELM |
STP删除MAC的任务 |
DEV |
管理设备上的硬件模块 |
DEVA |
处理子卡热插拔 |
DFSU |
逻辑卡逻辑文件加载 |
DHCP |
实现DHCP协议栈处理,完成DHCP Snooping及DHCP Relay等功能 |
DLDP |
实现完成DLDP协议栈处理,管理协议状态机,维护协议相关的数据库 |
DSMS |
处理环境监控系统发送的环境告警 |
EAP |
实现提供802.1x认证、MAC认证以及旁路认证功能,管理协议状态机,维护协议相关的数据库 |
Ecm |
低级板间通信管理 |
EFMT |
发送3AH的测试报文 |
EHCD_IH |
USB host控制器驱动任务(操作系统任务) |
ELAB |
管理设备电子标签 |
EOAM |
实现eoam-1ag协议栈,管理协议状态机,维护协议相关的数据库 |
Eout |
ECM任务的调试信息输出功能 |
FBUF |
提供报文发送功能 |
FCAT |
捕获CPU发送或接收的报文以辅助问题定位 |
FECD |
负责处理MOD同步信息 |
FIB |
在主控板生成IPv4软转发表项并下发接口板,指导转发 |
FIB6 |
IPv6 FIB表项管理,维护软件表项,并触发适配层维护芯片表项 |
FM93 |
输出监控到的故障信息 |
FMAT |
故障管理任务 |
FMCK |
设备故障监控检测 |
FMON |
实时监控逻辑卡故障 |
frag_add |
MAC分段同步硬表到软表,遍历硬表,将软表中不存在的表项添加到软表 |
frag_del |
MAC分段同步硬表到软表,遍历软表,如果表项在硬表中不存在,则从软表中删除 |
FTPS |
提供FTP服务功能 |
FTS |
FECD创建的收包任务,驱动收到报文后,若不是超级任务则把报文给FTS任务处理 |
GREP |
适配层任务,负责芯片GRE转发表项的管理 |
GTL |
用于为内存、字符串等公共数据提供统一的管理 |
GVRP |
实现GVRP协议栈处理,管理协议状态机,维护协议相关的数据库 |
HACK |
用于HA应答消息的处理 |
HOTT |
管理接口板卡的热插拔 |
HS2M |
完成主控板和备板之间数据同步,提供高可靠性 |
HVRP |
实现HVRP协议栈处理,管理协议状态机,维护协议相关的数据库 |
IFNT |
负责接口状态变化事件的处理 |
IFPD |
提供接口管理功能,维护设备的接口数据库,处理各种接口状态变化事件 |
INFO |
接收、输出业务模块产生的日志、告警 |
IP |
负责IP协议任务统一调度 |
IPCQ |
IPC消息发送失败时,进行消息报文的重传 |
IPCR |
IPC消息的发送、接收及分发到对应的业务模块进行处理 |
IPMC |
适配三层组播协议,相应控制层面变化,下发转发表项 |
ISSU |
提供系统固件平滑升级的功能 |
ITSK |
发送、接收及分发各种协议报文 |
L2 |
负责二层业务任务统一调度 |
L2MC |
在接口板实现IGMP/MLD协议的侦听,实现频道快速加入/离开 |
L2V |
VPLS、VLL业务管理,维护控制平面数据库,并通知适配层维护芯片转发表项 |
L3I4 |
接口板下发IPv4单播转发表项 |
L3IO |
接口板下发URPF、VRRP等三层协议表项 |
L3M4 |
主控板适配ARP协议处理,下发IPv4单播转发表项、响应控制层面变化 |
L3MB |
主控板适配URPF、VRRP等三层协议处理,下发转发表项 |
LACP |
实现LACP协议栈,管理协议状态机,维护协议相关的数据库 |
LCS |
License管理任务 |
LCSP |
根据License的内容,完成授权特性的加载 |
LDP |
实现LDP协议栈,维护LDP LSP数据库 |
LDRV |
提供主备板软件版本同步功能 |
LDT |
实现LDT协议栈,管理协议状态机,维护协议相关的数据库 |
LHAL |
为业务板提供硬件适配层,屏蔽硬件差异 |
LINK |
负责链路层任务统一调度 |
linkscan |
端口Link状态检测任务 |
LLDP |
实现LLDP协议栈,管理协议状态机,维护协议相关的数据库 |
LOAD |
提供业务板版本镜像文件、补丁包的加载功能 |
LSPA |
负责LSP软件转发表项的维护,并通知适配层维护芯片转发表项 |
LSPM |
负责LSP的创建、更新、删除 |
MCSW |
适配三层组播协议,相应控制层面变化,下发转发表项 |
MERX |
管理网口收包处理任务 |
MFF |
实现MFF功能 |
MFIB |
管理三层组播转发表项 |
MIRR |
端口镜像任务 |
MOD |
完成单板模块编号的管理,分配及回收 |
MPLS |
实现MPLS协议栈,完成标签的分配、管理及回收 |
MSYN |
负责MAC地址在各个单板间的同步 |
MTR |
实现内存使用状态定时统计功能 |
mv_rxX |
CPU X号(其中X取值为0~7的整数)收包队列处理任务 |
NDIO |
接口板下发IPv6单播转发表项 |
NDMB |
主控板适配ND协议处理,下发IPv6单播转发表项、响应控制层面变化 |
NQAC |
NQA客户端,响应并处理NQA报文 |
NQAS |
作为NQA Server端响应并处理NQA事件和报文 |
NSA |
VRP NET Stream适配层任务,完成芯片表项的管理 |
NTPT |
实现NTP协议栈,管理协议状态机,维护协议相关的数据库 |
OAM |
实现MPLS OAM协议栈,管理协议状态机,维护协议相关的数据库 |
OAM1 |
适配OAM 802.1ag协议,响应协议层变化,转发层面做相应的处理 |
OAMI |
处理从逻辑卡接收报文 |
OAMT |
适配层任务,响应协议变化,维护芯片表项 |
OS |
操作系统任务 |
Ping |
提供Ping快速响应功能 |
PNGI |
接口板Ping快回处理任务,提供Ping快速响应功能 |
PNGM |
主控板Ping快回处理,提供Ping快速响应功能 |
Port |
芯片调试命令处理 |
port_statistics |
端口统计 |
PPI |
适配层任务,维护芯片中各个接口的状态 |
PTAL |
实现重定向认证功能,完成认证授权,管理协议状态机,维护协议相关的数据库 |
QOSA |
实现QoS配置的管理,维护芯片表项 |
QOSB |
在接口板负责QoS表项的代理下发,维护已经下发的QoS表项 |
RACL |
负责根据TCP/UDP/ICMP首包建立流表,并对建立的流表进行流量实时监控与老化处理 |
RDS |
实现RADIUS协议栈处理,管理协议状态机,维护协议相关的数据库 |
RMON |
远程系统监控 |
root |
系统根任务 |
ROUT |
负责各路由协议路由选路以及路由学习,进行最优路由的选择并下发FIB |
RPCQ |
提供远程过程调用功能 |
RRPP |
在接口板实现RRPP协议栈,完成端口状态快速感知及硬件表项的下发 |
RSA |
计算RSA密钥 |
RSVP |
实现RSVP协议栈,维护CR-LSP数据库 |
RTMR |
用于定时任务的管理 |
SAM |
在接口板接入业务相关表项的代理下发,维护已经下发的表项 |
SAPP |
负责应用层协议字典以及白名单管理,维护软件表项并通知适配层设置芯片状态 |
SDKD |
检测连接背板的端口的状态及统计报文速率 |
SDKE |
用于查看LSW芯片相关表项信息 |
SECB |
在接口板负责设备安全表项的代理下发,维护已经下发的安全表项 |
SECE |
实现ARP安全、IP安全以及CPU安全等功能,管理协议状态机,维护协议相关的数据库信息 |
SERVER |
TCP/IP服务器任务 |
SFPM |
完成光模块生产信息和数字诊断信息的查询功能 |
SLAG |
实现E-TRUNK功能 |
SMAG |
智能链路代理,快速感知并处理端口状态变化事件 |
SMLK |
实现Smart Link协议栈,管理协议状态机,维护协议相关的数据库 |
smsL |
加载环境监控模块 |
smsR |
发送环境监控请求消息 |
smsT |
为环境监控系统提供报文发送功能 |
SNPG |
侦听并处理IGMP和MLD协议报文 |
SOCK |
IP协议栈报文调度和处理 |
SRMI |
外部中断处理任务 |
SRMT |
设备管理定时器任务 |
SRVC |
负责与IP Session功能相关的DHCP报文交互,通过和认证授权以及用户管理模块进行交互完成授权、计费功能 |
STFW |
超级转发任务,主要维护TRUNK内存中的转发表 |
STND |
协助操作系统完成任务、事件调度 |
STP |
实现STP协议栈,管理协议状态机,维护协议相关的数据库 |
STRA |
实现监控与识别攻击流量,并对攻击源进行惩罚的功能 |
STRB |
接口板监控与识别攻击流量 |
SUPP |
设备管理中断消息,定时器消息 |
t1 |
临时任务(操作系统任务) |
TACH |
实现HWTACACS协议栈处理,管理协议状态机,维护协议相关的数据库 |
TAD |
传输告警任务 |
TARP |
处理告警信息 |
tBulkClnt |
USB插拔驱动管理任务(操作系统任务) |
TCPKEEPALIVE |
TCP连接保持任务 |
TCTL |
批量性能采集上传控制任务 |
tDcacheUpd |
磁盘cache更新任务(操作系统任务) |
tExcTask |
异常处理任务(操作系统任务) |
TICK |
系统时钟处理任务 |
tLogTask |
日志任务(操作系统任务) |
TM |
为接入业务提供表项维护功能,维护芯片表项 |
tNetTask |
网络相关的处理任务(操作系统任务) |
TNLM |
隧道管理 |
TNQA |
负责NQA客户端任务统一调度 |
TRAF |
完成VLL、VPLS及L3VPN流量统计功能 |
TRAP |
处理告警信息 |
tRlogind |
虚拟终端远程登录任务(操作系统任务) |
tTelnetd |
Telnet服务端任务(操作系统任务) |
TTNQ |
负责NQA服务器端任务统一调度 |
tUsbPgs |
USB插拔设备管理任务(操作系统任务) |
tWdbTask |
调试代理任务(操作系统任务) |
U 34 |
用户命令处理任务 |
UCM |
与AAA等模块交互,共同处理用户状态,维护用户表 |
UDPH |
UDP Helper |
USB |
通过USB升级版本任务 |
usbPegasusLib |
USB host LIB库(操作系统任务) |
usbPegasusLib_IRP |
USB host I/O请求LIB库(操作系统任务) |
UTSK |
用户框架处理任务,用于优化协议栈的处理,保证协议处理的优先级 |
VCON |
业务板串口信息重定向任务 |
VFS |
用于管理虚拟文件系统 |
VIDL |
统计空闲业务的CPU使用率 |
VMON |
用于监控系统任务运行的轨迹 |
VOAM |
提供NQA VPLS MAC 诊断功能 |
VP |
接收、发送单板间VP报文 |
VPR |
接收单板间VP报文 |
VPRE |
VP消息处理任务 |
VPS |
发送单板间VP报文 |
VRPT |
定时器测试任务 |
VRRP |
实现VRRP协议栈,管理协议状态机,维护协议相关的数据库 |
VT |
虚拟终端任务 |
VT0 |
对第一个登录设备的用户进行认证、命令处理 |
VTRU |
处理V TRUNK的Up/Down事件 |
VTYD |
接收所有用户登录处理 |
WEB |
实现Web认证功能 |
WEBS |
提供用户通过Web访问设备的功能 |
XMON |
用于监控系统任务运行的轨迹 |
XQOS |
服务质量任务 |
CPU各任务名称及功能说明(框式交换机)
任务名称 |
任务描述 |
该任务导致CPU占用率高的原因 |
解决措施 |
---|---|---|---|
_EXC |
系统异常事件处理任务 |
正常不会高,只有产品业务exception才会调度此任务 |
- |
_IPC |
IPC接收任务,副核IPC接收 |
- |
- |
_VP |
VP接收任务,副核VP接收 |
- |
- |
_TIL |
监控、处理软件异常导致的死循环 |
正常不会高,只有产品业务出现任务得不到调度机会或deadloop才会调度此任务 |
- |
1AGA |
EOAM_1AG的超级任务,负责模块的事件分发处理 |
- |
- |
1AGAGT |
EOAM_1AG的超级任务,负责模块的事件分发处理 |
- |
- |
AAA |
用户认证、授权、计费管理任务 |
大量用户进行认证、授权、计费操作 |
减少上线用户 |
ACL |
访问控制列表 |
一次下发的ACL过多 |
配置ACL的时间间隔放长 |
ADPGVRP |
GVRP适配模块的任务 |
- |
- |
ADPT |
二层适配任务,处理BFD的vlanif down事件和CFD的逻辑中断事件,EFM模块的定时器 |
- |
- |
ALM |
告警信息的添加、清除、管理任务 |
- |
- |
AM |
负责地址池以及地址的管理,为DHCP等模块提供地址管理服务 |
大量业务进行地址申请 |
减少申请地址的用户 |
AMCP |
应用层管理控制协议,用于SPU单板同步主控板数据 |
- |
- |
APP |
负责三层业务任务统一调度 |
当业务发送的消息多,多任务处理耗时,会导致CPU高 |
可以通过命令行display utask-info utask-id slice-time,查看具体是哪个UTASK任务运行耗时 |
APS |
处理以太切换保护特性 |
- |
- |
ARPA |
ARP防攻击任务处理事件 |
设备ARP攻击过多时,处理任务加重 |
在端口对非法报文进行过滤 |
BES |
基础事务服务模块,副核任务 |
- |
- |
BGPMDT |
组播VPN MDT方式 |
- |
- |
BGPMVPN |
组播VPN MVPN方式 |
- |
- |
Boot |
转存驱动的诊断日志 |
- |
- |
BPDU |
BPDU模块任务,处理一些定时器消息,以及mpls通知ac up/down时,异步消息处理 |
- |
- |
CWP_BUP |
MAP消息处理 |
MAP消息处理和MAP定时器处理,一般情况不会出现CPU高 |
降低业务并发、进行扩容或者更换高配置主控板,如SRUH等 |
ASFI |
sflow接口板处理任务 |
大量端口配置sflow采样,采样比或采样间隔配置过小等 |
合理部署sflow业务,根据接口实际流量配置合理的采样比和采样间隔 |
ASFM |
sflow主控板处理任务 |
||
ASMN |
SVF AS接入管理等 |
- |
- |
bcmCNTR.0 |
芯片0流量统计 |
- |
- |
bcmCNTR.1 |
芯片1流量统计 |
- |
- |
bcmCNTR.2 |
芯片2流量统计 |
- |
- |
bcmD |
BCM Debug任务 |
debug调试信息打印过多 |
- |
bcmI |
bcmINTR任务,内核中断处理函数 |
内核中断上报过多 |
- |
bcmIbodSync.0 |
芯片0解决HG口异常缓存的任务 |
同步处理频繁 |
- |
bcmIbodSync.2 |
芯片2解决HG口异常缓存的任务 |
||
bcmIpfixDma.0 |
芯片0 Ipfix业务流量统计任务 |
频繁访问寄存器 |
- |
bcmIpfixDma.2 |
芯片2 Ipfix业务流量统计任务 |
||
bcmL2age.0 |
芯片0 MAC表项老化任务 |
- |
- |
bcmL2age.2 |
芯片2 MAC表项老化任务 |
- |
- |
bcmMEM_SCAN.0 |
定时检查芯片0上的内存 |
- |
- |
bcmMEM_SCAN.1 |
定时检查芯片1上的内存 |
- |
- |
bcmMEM_SCAN.2 |
定时检查芯片2上的内存 |
- |
- |
bcmPortMon.0 |
芯片0端口状态监测 |
端口状态变化频繁 |
- |
bcmPortMon.1 |
芯片1端FBUF口状态监测 |
||
bcmPortMon.2 |
芯片2端口状态监测 |
||
bcmXGS3AsyncTX |
发包信息获取同步任务 |
- |
- |
BEAT |
板间心跳报文的发送和接受、监控板间通信是否异常 |
- |
- |
BFD |
实现双向链路检测(BFD)协议栈,管理协议状态机,维护协议相关的数据库 |
大量BFD会话频繁震荡 |
删除或shutdown BFD会话 |
BFDA |
BFD适配任务,处理IPC消息和ARP、MAC变化消息 |
- |
- |
BFDS |
处理BFD的发送和检测定时器,还有各个事件的处理 |
- |
- |
BOX |
输出黑盒子中存储的信息(黑盒子用于记录产品运行过程中出现的错误、异常等信息) |
产品设备出现大量的error、断言、异常或deadloop等黑盒子信息 |
- |
BOX_Out |
|||
BTRC |
trace内部调试功能任务 |
开启了trace功能 |
关闭trace功能 |
BULK_CLASS_IRP |
USB设备类I/O请求包管理任务(操作系统任务) |
- |
- |
BusM A |
USB总线管理任务(操作系统任务) |
- |
- |
CAPM |
capwap事件处理任务 |
上线用户过多 |
减少上线用户的数量 |
CDRF |
Cdev restore factory |
- |
- |
CFGMGR |
配置管理模块 |
- |
- |
CMAI |
CMAINT,实现云管理的维护诊断功能 |
- |
- |
CMNG |
CMNGHA,实现云管理redis数据库的主备同步机制 |
- |
- |
CMP |
CMP任务,证书管理协议 |
- |
- |
CMPM |
智能运维数据上报 |
大量业务集中数据上报,概率性出现短时间的CPU过高 |
关闭部分业务的数据上报 |
CMREG |
云管理注册任务 |
- |
- |
CPMN |
COMP任务,副核组件管理 |
- |
- |
CSISSU |
ISSU快速升级处理模块 |
- |
- |
CSTP |
NETCONF模式下,配置STP相关配置时,耗时命令行做异步处理 |
- |
- |
CWPA |
WLAN处理任务 |
大量AP上下线、大量AP接入端口变化、大量无线用户并发上下线等情况可能会导致该任务对应的CPU占用率升高 |
网络承载能力有限,可能需要考虑重新规划网络,限制并发上线数量 |
CCTL |
批量性能采集调度任务 |
正在采集信息 |
无需处理 |
CHAL |
完成硬件适配层功能 |
- |
- |
CKDV |
时钟卡控制和管理 |
- |
- |
CLKI |
主控板时钟模块的定时器、IPC及中断消息的处理 |
- |
- |
CMDA |
提供批量执行命令的功能 |
业务批量下发命令较多 |
减少批量下发的命令 |
co0 |
串口任务 |
用户操作,尤其输入输出操作频繁,例如黏贴命令到屏幕(输入)或执行大量回显命令(输出) |
降低输入输出频率,并且操作结束后会自然恢复 |
COMT |
提交ACL配置到AP的任务 |
大量AP并发上线 |
合理规划网络,避免大量AP并发上线 |
CSBR |
主备一致性检测 |
当前使用较少,基本不可能出现CPU占用率高 |
无需处理 |
CSPF |
CSPF任务处理,为TE隧道提供路径计算服务 |
CSPF的TEDB频繁变化 |
排查是否存在链路或者IGP震荡 |
CSS |
集群主要任务,负责集群建立、状态维护、拓扑维护等 |
- |
- |
CSST |
集群链路测试功能任务,实现集群链路状态监测 |
- |
- |
CSSD |
集群端口延时down任务,实现集群口延时down功能,以保证在短暂时间内堆叠口的状态变化不会引发堆叠分裂 |
- |
- |
CSSF |
集群快速升级任务,实现集群环境跨版本升级的相关处理 |
- |
- |
CSSP |
集群协议报文管理任务,主要负责集群协议报文的发送接收 |
- |
- |
CWP_DTLS |
DTLS加密处理任务 |
创建/关闭DTLS链路、DTLS协商、AP批量DTLS建链时可能出现CPU高 |
AP通过DTLS上线,使用场景少,一般不会出现。如果出现可以评估网络具体情况,能否关闭DTLS |
LBS |
终端定位和频谱分析任务,终端定位功能,非WIFI设备的频谱分析 |
扫描时间间隔较小、射频环境复杂 |
适当增加空口扫描周期,调整空口扫描周期至合理值(根据实际情况,权衡定位精度和CPU任务占用率) |
DCPA |
DHCP任务 |
- |
- |
DELM |
删除所有槽位的MAC地址 |
- |
- |
DNSS |
为cfgmgr提供域名解析 |
- |
- |
DRIV |
框式交换机读取LSW的统计计数到诊断日志 |
- |
- |
DCPI |
IP流量监测协议(ipfpm) |
配置量大且统计周期配置间隔过短 |
避免大量配置和过短的统计周期 |
DEFD |
cpu-defend事件任务处理 |
上送CPU的报文过多 |
对上送CPU的报文进行限速 |
DEVA |
设备管理辅助任务,处理FSU加载初始化、同步实体树、主备倒换处理等 |
- |
- |
DFSU |
设备逻辑子卡处理任务,处理FSU加载初始化 |
- |
- |
DIAG |
主控板装备模块的任务处理 |
- |
- |
DLDP |
负责DLDP协议报文的收发和状态机 |
使能DLDP协议的端口过多且配置的发包间隔过短 |
|
DRVD |
处理驱动模块诊断消息的任务 |
- |
- |
DSMS |
处理环境监控系统发送的环境告警 |
- |
- |
EAGE |
主、副核之间以太报文分发处理任务 |
大量协议报文上送CPU |
合理配置协议报文限速,并部署适当的防攻击功能 |
EAP |
MAC和DOT1X认证协议处理任务 |
大量MAC和DOT1X用户进行认证 |
减少认证用户 |
Ecm |
低级板间通信管理 |
- |
- |
EFMT |
发送802.3ah的测试报文 |
- |
- |
EHCD_IH0 |
EHCI中断处理,vxworks操作系统任务 |
- |
- |
ELAB |
管理设备电子标签 |
- |
- |
EMDI |
EMID业务适配接口板任务 |
- |
- |
EMDM |
EMID业务适配主控板任务 |
- |
- |
ETHA |
以太报文分发处理任务 |
大量协议报文上送CPU |
合理配置协议报文限速,并部署适当的防攻击功能 |
ETHL |
副核相关以太报文分发处理任务 |
主核、副核之间有大量协议报文交互 |
合理配置协议报文限速,并部署适当的防攻击功能 |
EVC |
VXLAN接入配置模块任务 |
- |
- |
Even |
事件管理任务 |
- |
- |
EVPN |
EVPN业务适配主控板任务 |
- |
- |
EXTAgent |
OPS扩展代理模块 |
- |
- |
EZDT |
EZOP_Dtls |
- |
- |
EOAM |
实现eoam-1ag协议栈,管理协议状态机,维护协议相关的数据库 |
关联业务震荡 |
出现机率很小,如果出现,需要检查关联业务状态,避免震荡 |
Eout |
ECM任务的调试信息输出功能 |
- |
- |
ERPS |
ERPS协议的适配,主要进行ERPS的全局ACL初始化和各个事件注册 |
- |
- |
ESAP |
ESAP适配的相关处理任务 |
在线的AP,用户数量过多 |
减少在线的AP数量以及用户数 |
esm_recovery.0 |
芯片0外扩TCAM软失效修复任务 |
芯片存在外扩表项软失效 |
采集具体错误表项,重启单板 |
esm_recovery.2 |
芯片2外扩软TCAM失效修复任务 |
||
EZOP |
Easyoperation功能管理任务,该功能主要用于批量升级软件版本、加载配置、补丁等 |
- |
- |
EZPP |
Easyoperation报文管理任务,负责交互报文的处理 |
- |
- |
FCAT |
获取报文任务 |
获取报文过多,打印过于频繁 |
- |
FECD |
FECD层的消息处理的任务 |
诊断信息打印过于频繁 |
- |
FINT |
快速响应接口板插拔中断的超级任务 |
- |
- |
FMCK |
FMEA检测任务 |
底层检测接口耗时,一般不会导致CPU高 |
- |
FMEB |
故障检测任务 |
- |
- |
FTS |
上层收发包任务 |
- |
- |
FWRT |
flash抑制任务 |
- |
- |
FLOW |
流量统计的相关处理任务 |
需要统计分析的流量过大 |
网络流量过大时,不配置sflow相关业务 |
FMES |
设备故障信息输出任务,检测芯片、cpld等器件状态 |
- |
- |
FNTL |
快速通道任务,主要用于内核态与用户态报文交互 |
- |
- |
FTS_ |
CPU收发包任务 |
收发过多的协议报文 |
查看是否存在攻击 |
GEM |
事件通用管理 |
目前没有运行此任务 |
目前没有运行此任务 |
GEMR |
事件通用管理 |
目前没有运行此任务 |
目前没有运行此任务 |
GLRM |
License适配任务,包括注册license控制项注册等 |
- |
- |
GREI |
GRE模块接口板适配任务 |
- |
- |
GREM |
GRE模块主控板适配任务 |
- |
- |
GRES |
标签、Token资源管理模块对应的任务 |
CPU高一般体现在申请资源的APP,GRESM任务本身一般不会出现CPU高 |
排查申请标签或token资源的业务是否存在震荡 |
GRSA |
RSA任务,进行RSA、DSA密钥对创建 |
||
GTL |
用于为内存、字符串等公共数据提供统一的管理 |
时评估不会CPU冲高 |
时评估不会CPU冲高 |
GVRP |
GVRP协议,处理GVRP报文的收发,和GVRP协议内部消息的处理 |
当需要GARP动态注册的VLAN数量较多或网络半径较大时,会导致CPU升高 |
增大定时器值 |
H2CM |
http2 client主任务 |
- |
- |
H2CT |
http2 client timer任务 |
- |
- |
HACA |
HACA模块 |
- |
- |
HACK |
HA消息发送结果通告任务 |
- |
- |
HERB |
智能心跳任务 |
- |
- |
HGMP |
HGMP适配模块的任务 |
- |
- |
HOUP |
智能升级 |
- |
- |
HP2C |
HP2C任务 http2client管理任务 |
- |
- |
HS2M |
HA备份机制任务 |
- |
- |
HSB |
与VRRP联动提供双机热备份功能 |
- |
- |
HTPC |
http客户端任务 |
- |
- |
HTPS |
HTTP/HTTPS通道处理 |
- |
- |
HTPSRD |
处理用户HTTPS重定向业务的任务 |
- |
- |
HWTACACS |
HWTACACS模块 |
- |
- |
HVRP |
HVRP协议任务,处理HVRP模块命令行,报文收发和定时器等消息处理 |
- |
- |
IDE |
终端识别模块 |
- |
- |
IFMO |
|
- |
- |
IFOA |
统计端口MIB数据,获取端口up/down信息等 |
- |
- |
IKPI |
采集监控设备运行状态性能值的功能 |
- |
- |
IPCC |
云管理进程间通信任务 |
- |
- |
ISSU |
ISSU备份机制任务 |
- |
- |
IFAD |
VCT下发IPC消息的处理任务 |
频繁做VCT检测 |
- |
IFLP |
管理接口流量定时统计 |
大量接口,且配置的统计周期过小 |
- |
IFNT |
负责接口状态变化事件的处理 |
接口频繁震荡 |
- |
IFPD |
提供接口管理功能,维护设备的接口数据库,处理各种接口状态变化事件 |
在接口数量较多、接口link状态震荡、光模块异常等情况下可能会导致该任务对应的CPU占用率升高 |
- |
IFWL |
无线接口处理任务 |
大量AP上下线、大量AP接入端口变化、大量无线用户并发上下线等情况可能会导致该任务对应的CPU占用率升高 |
- |
INPT |
串口任务 |
- |
- |
IPCK |
处理收到的IPC消息,并且给对端业务回应ACK消息 |
回应ACK业务流程简单,不会导致CPU高 |
- |
IPCQ |
IPC消息发送失败时,进行消息报文的重传 |
发送失败进行消息重传,重传频率不高,不会导致CPU高 |
- |
IPCR |
IPC消息的发送、接收及分发到对应的业务模块进行处理 |
- |
- |
IPFP |
IP流量监测协议(ipfpm) |
配置量大且统计周期配置间隔过短 |
- |
IS2U |
ISSU功能适配 |
- |
- |
ISC6 |
处理IPSEC6的命令行和报文加密 |
不会导致CPU高 |
- |
ITSK |
发送、接收及分发各种协议报文 |
协议报文收发量高 |
- |
JOB |
维护助手任务 |
当维护助手满足触发条件时,执行的脚本中批量执行命令行较多,可能会CPU冲高 |
减少脚本中命令行数量 |
L2 |
负责二层业务任务统一调度,支持MGR、ErrorDown、BPTNL、LNP、VCMP、MFLP、VLAN、QinQ特性 |
LNP:接口较多 VCMP:VLAN删除创建频繁 BPTNL:透传报文数量较大 |
LNP:出现机率小,检查接口震荡原因,避免反复震荡 VCMP:不要频繁创建删除VLAN BPTNL:接口上配置协议透传功能 |
L2_E |
EOAM特性主任务 |
关联业务震荡 |
出现机率很小,如果出现,需要检查关联业务状态,避免震荡 |
L2_P |
支持LACP、HGMP、3AH、ELMI特性 |
- |
- |
L2_R |
支持ERPS、RRPP、SEP特性 |
部署协议之后,有错误连线,收到TC报文攻击 |
检查物理环路,确保物理环路闭合 |
L2_T |
支持Eth-Trunk特性 |
- |
- |
L2IF |
处理MAC与VLAN的实时备份和批量备份 |
- |
- |
L2MO |
MAC学习任务 |
- |
- |
l2st |
MVL的安全事件消息处理任务 |
- |
- |
lshelp |
延迟回调任务 |
- |
- |
LYNC |
识别lync会话,并根据流量类别设置不同优先级 |
- |
- |
L2PQ |
二层协议的IPC消息公共处理模块 |
- |
- |
L2V |
L2VPN协议处理任务,涉及VLL、VPLS业务等 |
公网震荡,大量业务发送Mapping报文,重建链接 |
解决公网震荡 |
L3I4 |
三层IPv4业务适配接口板任务 |
- |
- |
L3IO |
三层业务公共模块接口板处理任务 |
- |
- |
L3M4 |
三层IPv4业务适配主控板任务 |
- |
- |
L3MB |
三层业务公共模块主控板处理任务 |
- |
- |
LAGAGT |
LACP接口板代理任务,超级任务,处理LACP协商报文的发送和接收 |
收到大量LACP协商报文、LACP频繁震荡等情况,可能会导致该任务对应的CPU占用率升高 |
对端口配置和端口流量进行分析,排查Eth-Trunk业务是否异常 |
LBDT |
loopback-detect协议检测报文的收发与协议处理 |
设备上进行LBDT检测的VLAN和接口很多 |
关闭一些LBDT的检测VLAN和接口 |
WMT_PM |
eSight网管获取PM性能采集数据 |
eSight网管周期性采集AP数据时 |
调整PM性能采集周期 |
LCSP |
license适配任务,包括注册license、控制项注册等 |
- |
- |
LDCM |
load模块命令行任务 |
- |
- |
LDT |
Loop Detection协议处理和报文发送 |
- |
- |
LDTP |
接收Loop Detection的协议报文 |
设备上进行LDT检测的VLAN和接口很多 |
关闭一些LDT的检测VLAN和接口 |
LHAL |
为业务板提供硬件适配层,屏蔽硬件差异 |
- |
- |
LINK |
负责链路层任务统一调度 |
当业务发送的消息多,多任务处理耗时,会导致CPU高 |
可以通过命令行display utask-info utask-id slice-time,查看具体是哪个UTASK任务运行耗时 |
LLDP |
LLDP邻居发现协议的报文收发和处理 |
设备上LLDP邻居太多,导致收到LLDP协议报文比较多 |
减少设备上的LLDP邻居 |
LNP |
LNP协议任务 |
- |
- |
LOAD |
提供业务板版本镜像文件、补丁包的加载功能 |
- |
- |
LRCV |
主控板load模块收包任务 |
- |
- |
LSPA |
MPLS LSP进程(MPLS LSP AGENT)任务 |
- |
- |
LSPM |
LSP管理模块,处理LSP相关业务 |
LDP、RSVP、BGP等创建LSP的业务频繁震荡,触发建立、删除LSP |
先确认是哪类LSP震荡,比如LDP、BGP、RSVP LSP,一般是IGP路由或者BGP路由、VPN路由震荡导致 |
LT0 |
local telnet任务,现网使用较少 |
现网使用较少 |
评估不会CPU冲高 |
MACA |
tcam mac老化处理 |
- |
- |
MACC |
MAC学习控制 |
- |
- |
MBDS |
多核系统支撑轻量级的刷新数据到共享内存的任务,多核早期用; |
- |
- |
MCM |
McmDiag,多核诊断功能 |
- |
- |
McmDiag |
多核诊断 |
- |
- |
MCME |
多核监控其他核进程状态的任务 |
- |
- |
MDGW |
MDNS网关任务 |
- |
- |
MDRY |
MDNS中继任务 |
- |
- |
MDSP |
mDNS Snooping任务,提供mDNS报文的解析、侦听等功能 |
- |
- |
MPAT |
多核补丁处理 |
- |
- |
MSTP_ADP |
MSTP适配模块的任务 |
- |
- |
MTP |
维护探针协议管理任务 |
- |
- |
MACL |
MQC的流策略创建,刷新任务 |
创建流策略过多,刷新频率大 |
配置MQC的时间间隔放长 |
MACRESTORE |
底层MAC软表回收任务 |
- |
- |
MAD |
MAD直连检测处理 |
- |
- |
MADP |
MAD Relay检测处理 |
- |
- |
MCSF |
组播交换网板适配任务,处理组播在交换网板下发表项 |
由于路由或者端口震荡,组播表项反复刷新 |
检查是否存在路由或者端口震荡的情况 |
MDNS |
mDNS协议报文处理任务 |
大量的mDNS报文上送处理 |
对上送CPU的mDNS报文进行限速,检查是否有外部攻击、网络环路等情况引起mDNS报文过多 |
MERX |
管理网口收包处理任务 |
管理网口如果不断收到大量报文,可能会造成CPU占用率变高 |
管理网口已具有限速功能,可以避免大量报文的冲击 |
METH |
管理网口重定向任务 |
- |
- |
MFF |
MFF的处理任务 |
处理ARP报文软转发 |
合理配置arp-mff报文限速,并部署适当的防攻击功能 |
Mirr |
镜像的业务处理任务 |
批备阶段的大量配置同步流程 |
减少镜像的配置命令 |
MOD |
MAC表项学习任务 |
存在MAC漂移或HASH冲突 |
- |
MPSF |
MPLS业务交换网板适配任务 |
- |
- |
NDIO |
三层业务IPv6接口板适配任务 |
- |
- |
NDMB |
三层业务IPv6主控板适配任务 |
- |
- |
MTR |
实现内存使用状态定时统计功能 |
- |
- |
NFPT |
用于定时任务的管理 |
CPU不会升高 |
不会导致CPU高,无需处理 |
NPFM |
芯片故障检测处理 |
- |
- |
NVO3 |
vxlan隧道管理任务 |
- |
- |
NQAF |
提供NQA FTPR功能 |
网管频繁使用FTP方式获取NQA测试例结果 |
降低频繁操作速率 |
NSA |
Netstream处理任务 |
大量流信息上送接口板CPU |
采用灵活流减少流数量 |
NTLK |
Netlink快速通道,用户态和内核态之间的消息传输通道,例如将用户态消息发送到内核态,内核态回应用户态等 |
- |
- |
NTPT |
提供NTP时钟同步功能 |
收到大量的NTP协议报文攻击 |
配置NTP认证 |
OAM |
实现MPLS OAM协议栈,管理协议状态机,维护协议相关的数据库 |
- |
- |
OAM1 |
适配OAM 802.1ag协议,响应协议层变化,转发层面做相应的处理 |
- |
- |
OAMI |
处理从逻辑卡接收报文 |
- |
- |
OAMT |
适配层任务,响应协议变化,维护芯片表项 |
- |
- |
OCSP |
openssl |
- |
- |
OIDS |
对象管理任务 |
- |
- |
OMIN |
实现云管理plugin的配置下发、状态获取以及自定义操作 |
当设备与控制器交互报文量较大时可能短暂冲高CPU,但是交互完成之后会恢复正常 |
当控制器、设备的配置量较大可能短暂冲高,但处理完成之后会自动恢复正常 |
OMLG |
云管理通过此任务管理进程的syslog |
当日志量较大可能短期cpu冲高 |
业务完成之后会自愈,无需关注 |
OMMS |
系统最高级别监控进程monitor的bin补丁 |
- |
- |
OMNG |
诱捕和云管理模块的进程退出事件处理 |
- |
- |
OMSB |
云管理通过此任务管理进程的创建、退出事件并作相应的通知 |
可能短期cpu冲高 |
业务完成之后会自愈,无需关注 |
OOM1 |
cgroup发生oom kill的监控任务 |
- |
- |
OOM2 |
cgroup发生oom kill的监控任务 |
- |
- |
OPS |
OPS任务 |
- |
- |
OPSA |
EXTAgent |
- |
- |
OPSC |
ops命令行处理 |
- |
- |
OPSE |
执行ops脚本 |
- |
- |
OSPFv3-FRR |
OSPFv3 FRR功能 |
- |
- |
OS |
操作系统虚拟任务 |
CPU不会高 |
- |
PATB |
Patch任务 |
- |
- |
Pers |
持久化任务 |
- |
- |
PKIM |
PKI任务,公钥基础设施 |
- |
- |
PLRN |
RTK的MAC软学习任务 |
- |
- |
PMC |
性能管理命令行处理任务 |
- |
- |
PROC |
多核心跳监控 |
- |
- |
PARITY_CHECK |
表项软失效检测任务 |
表项出现软失效 |
- |
PATC |
补丁管理任务 |
- |
- |
PCAI |
IPCA业务接口板处理任务 |
- |
- |
PCAM |
IPCA业务主控板处理任务 |
- |
- |
PGMC |
业务随行XMPP侧connect任务 |
- |
- |
PGMP |
业务随行策略管理任务 |
- |
- |
PGMX |
业务随行功能xmpp侧任务 |
- |
- |
PMS |
性能统计文件上传(使能PM统计文件自动上传才会启用) |
文件上传频率不会很高,文件也较小,暂时评估不会CPU冲高 |
评估不会CPU冲高 |
PNGI |
三层快Ping接口板处理任务 |
- |
- |
PNGM |
三层快Ping主控板处理任务 |
- |
- |
POE |
以太网供电任务,包括检测PD在位、分级状态、上下电策略等 |
- |
- |
POE+ |
PPPoE plus协议处理任务 |
大量的PPPoE报文上送处理 |
|
PPI |
L2适配层任务,维护VLAN/MAC相关数据和表项下发 |
网络环路、网络震荡、多端口配置端口安全等情况下可能会导致该任务对应的CPU占用率升高 |
|
PPP |
PPPoE协议处理任务 |
大量的PPPoE报文上送处理 |
|
PTAL |
Portal认证任务 |
大量的Portal认证HTTP报文上送处理 |
|
QDIA |
智能诊断模块 |
- |
- |
QOSA |
主控板的QoS业务处理任务 |
批备阶段主控板通知备板的消息过多 |
减少QoS的相关配置 |
QOSB |
接口板的QoS业务处理任务 |
批备阶段主控板通知备板的消息过多 |
减少QoS的相关配置 |
RACL |
自反ACL的处理任务 |
配置的RACL的命令过多,刷新频率大 |
配置RACL的时间间隔放长 |
RDS |
RADIUS协议处理任务 |
大量的RADIUS报文上送处理 |
|
RMON |
远程系统监控 |
评估不会CPU冲高 |
评估不会CPU冲高 |
root |
系统根任务 |
- |
- |
ROUT |
负责各路由协议路由选路以及路由学习,进行最优路由的选择并下发FIB |
收到大量组播报文、存在路由变化或接口变化导致组播表项更新等 |
配置组播的各种过滤策略 |
RPCQ |
RPC消息的分发处理任务 |
- |
- |
RRPP_ADP |
RRPP适配模块的任务 |
- |
- |
RRPP |
在接口板实现RRPP协议栈,完成端口状态快速感知及硬件表项的下发 |
COMMON FDB报文攻击 |
检查组网中是否引入了HUB |
SAID |
设备启动完成后,SAID系统周期性地进行故障检测,包括:数据采集、数据诊断、故障处理 |
- |
- |
SCEP |
SCEP任务 简单证书注册协议 |
- |
- |
SCKA |
SOCKADP任务 |
- |
- |
SEA |
对RTP音频和视频类应用的服务质量进行实时监控 |
- |
- |
SFLOW |
sFlow任务 |
- |
- |
SMDG |
智能诊断 |
- |
- |
smspicmg |
VCMU热插拔和超时重发任务 |
- |
- |
smsvcmu |
电源风扇管理任务 |
- |
- |
smsvLd |
VCMU加载任务 |
- |
- |
smsvRq |
VCMU请求处理任务 |
- |
- |
smsvRs |
VCMU响应处理任务 |
- |
- |
smsvtimer |
VCMU定时器任务 |
定时处理耗时,一般不会导致CPU高 |
- |
SOCK |
IP协议栈报文调度和处理 |
- |
- |
SOTM |
处理协议栈的部分定时器消息 |
- |
- |
STA_TRACE_TASK |
用户全流程追踪任务,追踪AP上用户的关键报文流程,DFX定时使用 |
最大支持10个用户同时追踪,不会导致CPU冲高 |
关闭用户全流程追踪 |
SVXL |
注册SVXLAN任务 |
- |
- |
SAM |
处理认证表项下发接口板的任务 |
大量用户上线 |
减少认证用户 |
SAPP |
负责应用层协议字典以及白名单管理,维护软件表项并通知适配层设置芯片状态 |
评估不会CPU冲高 |
评估不会CPU冲高 |
SCFT |
给链路层屏蔽命令行的任务 |
当前该任务不处理任何消息 |
- |
SDKD |
HG互联口检测任务 |
检测任务处理异常 |
- |
SDKE |
SDK诊断任务 |
诊断信息打印过于频繁 |
- |
SECB |
安全模块接口板的处理任务 |
大量协议报文上送接口板CPU |
- |
SECE |
实现ARP安全、IP安全以及CPU安全等功能,管理协议状态机,维护协议相关的数据库信息 |
大量协议报文上送CPU |
- |
SEPP |
SEP协议代理任务,主要处理收到的IPC消息,进行实例状态的设置 |
- |
- |
SIMC |
模拟CPU利用率高的任务 |
- |
- |
SIMU |
模拟主任务,处理模拟CPU利用率高等的任务 |
- |
- |
SLAG |
处理E-Trunk特性的报文收发 |
配置大规格且状态震荡 |
出现机率小,出现时可以将E-Trunk所在接口shutdown,避免震荡 |
SMac |
根据主控的主备状态,动态设置静态MAC |
- |
- |
SMAG |
Smart Link的代理任务,处理link-down和shudown事件 |
- |
- |
SMLK |
负责Smart Link与Monitor Link协议的处理 |
- |
- |
smsLoad |
处理各类加载 |
- |
- |
smsRqDeal |
处理canbus上报的请求消息 |
- |
- |
smsRsDeal |
处理canbus回送的响应消息 |
- |
- |
smsRx |
处理网口接收到的canbus响应与请求 |
- |
- |
smsTimer |
处理SMS内部定时任务 |
- |
- |
smsTx |
处理SMS发送给canbus的响应与请求 |
- |
- |
socdmadesc.0 |
CPU通过SBUSDMA方式读取芯片0信息的任务 |
- |
- |
socdmadesc.2 |
CPU通过SBUSDMA方式读取芯片2信息的任务 |
- |
- |
SPM |
节能功能管理任务 |
- |
- |
SPTM |
超级任务管理 |
- |
- |
SRVC |
负责与IP SESSION功能相关的DHCP报文交互,通过和认证授权以及用户管理模块进行交互完成授权、计费功能 |
大量DHCP报文上送CPU或大量用户同时触发认证 |
合理配置协议报文限速,并部署适当的防攻击功能 |
STFW |
超级转发任务,主要维护Trunk内存中的转发表 |
频繁增加、删除Trunk成员口 |
频繁增加、删除Trunk成员口 |
STP |
实现STP协议栈,管理协议状态机,维护协议相关的数据库 |
部署协议之后,有错误连线,收到TC报文攻击 |
检查配置,需要配置TC抑制 |
STRA |
攻击溯源和端口防攻击的处理任务 |
大量协议报文上送CPU |
合理配置协议报文限速,并部署适当的防攻击功能 |
SUPP |
设备管理中断消息、定时器消息 |
- |