华为S系列交换机CPU占用率高问题排查与解决方案
问题概述
在华为S系列交换机(V100&V200版本)运行过程中,CPU占用率过高是一个常见问题,可能导致设备性能下降甚至业务中断。根据华为官方维护宝典,导致CPU占用率高的主要原因可分为四大类:网络攻击、网络震荡、网络环路和硬件故障。
网络攻击导致的CPU高问题
网络攻击的特征与类型
网络攻击是导致CPU占用率高的常见原因,主要表现为攻击源产生大量非正常网络交互请求,使交换机忙于处理这些请求而无法正常运行业务。常见的网络攻击类型包括:
ARP协议报文攻击
- ARP和ARP-Miss泛洪攻击
- ARP欺骗攻击
DHCP协议报文攻击
其他类型攻击
-
ICMP攻击
DDoS攻击
广播报文攻击
TTL-expired报文攻击
目的IP为设备IP的报文攻击
SSH/FTP/Telnet等应用层协议报文攻击
网络攻击的定位方法
1.查看设备基本信息
display version
display device
2.检查上送CPU报文统计
display cpu-defend statistics
reset cpu-defend statistics # 清除统计信息
display cpu-defend statistics all # 隔几秒后再次查看
示例输出分析:
Statistics on slot 2:
如果观察到某种协议报文异常增多,且现网不可能出现这么多报文,则可判断为协议报文攻击。
网络攻击的解决方案
1. 配置攻击溯源功能
system-view
acl number 2000rule 5 permit source 10.1.1.1 0 # 10.1.1.1为网关IP地址quit
cpu-defend policy policy1auto-defend enable # 使能攻击溯源功能undo auto-defend trace-type source-portvlan # 配置溯源模式undo auto-defend protocol 8021x dhcp icmp igmp tcp telnet ttl-expired udp # 删除不需要的溯源协议auto-defend whitelist 1 acl 2000 # 将网关IP加入白名单quit
对于V200R009之后版本:
cpu-defend policy policy1auto-defend protocol arp # 只溯源ARP报文auto-defend whitelist 1 acl 2000quit
2. 应用防攻击策略
框式交换机配置:
# 主控板应用策略
system-view
cpu-defend-policy policy1
quit# 所有接口板应用策略
system-view
cpu-defend-policy policy2 global# 指定接口板应用策略
system-view
slot 1
cpu-defend-policy policy2
盒式交换机配置:
# 非堆叠情况
system-view
cpu-defend-policy policy1 global# 堆叠情况
# 主设备应用策略
system-view
cpu-defend-policy policy1# 所有堆叠设备应用策略
system-view
cpu-defend-policy policy1 global
3. 查看攻击源信息
display auto-defend attack-source
display auto-defend attack-source slot slot-id
4. 网络攻击处理建议
配置ARP安全功能:参考产品文档"配置指南-安全配置-ARP安全配置"
启用攻击溯源惩罚功能:
cpu-defend policy policy1
auto-defend enable
auto-defend action deny timer 300 # 300秒内丢弃攻击报文
配置黑名单:
acl number 2001
rule permit source 1.1.1.0 0.0.0.255
quit
cpu-defend policy policy1
blacklist 1 acl 2001
关闭攻击源接口(谨慎使用):
cpu-defend policy policy1
auto-defend enable
auto-defend action error-down
网络震荡导致的CPU高问题
STP震荡问题
定位方法
查看STP拓扑变化信息
display stp topology-change
观察"Number of topology changes"是否有增长。
查看TC-BPDU统计
display stp tc-bpdu statistics
示例输出:
MSTID Port TC(Send/Receive) TCN(Send/Receive) 0
GigabitEthernet2/0/6 21/4 0/1
处理建议
开启TC保护告警
snmp-agent trap enable feature-name mstp
stp tc-protection
根据拓扑变化情况处理
接入侧端口Up/Down:配置为边缘端口并开启BPDU保护
stp edged-port enable
stp bpdu-protection
根桥非预期变化:开启根保护功能
stp root-protection
OSPF路由协议震荡
定位方法
查看OSPF邻居状态
display ospf peer last-nbr-down
display logbuffer
检查OSPF报文统计
display cpu-defend statistics packet-type ospf
处理建议
调整OSPF邻居失效时间
ospf timer dead interval # 建议设置为20s以上
使能sham-hello功能
sham-hello enable
检查OSPF认证配置
display ospf error如果"Bad authentication type"或"Bad authentication key"计数增长,需配置相同认证信息:ospf authentication-mode
网络环路导致的CPU高问题
定位方法
网络环路通常表现为:
- 设备CPU占用率超过80%
- VLAN接口指示灯频繁闪烁
- 频繁MAC漂移
- 管理操作延迟
- Ping测试严重丢包
- 接口收到大量广播报文
处理建议
- 通过接口指示灯和流量情况确认存在广播风暴的接口
- 根据链路拓扑逐跳排查环路设备
- 判断并断开产生环路的接口
硬件故障导致的CPU高问题
如果排除了网络攻击、震荡和环路等因素,仍存在CPU占用率高的问题,可能是硬件故障导致。此时建议:
收集设备日志信息
display logbuffer
联系华为技术支持或交换机经销商进行进一步诊断和处理
总结
华为S系列交换机CPU占用率高问题的解决需要系统性地排查可能的原因,并采取针对性的解决方案。网络管理员应熟练掌握相关诊断命令和处理方法,定期检查设备运行状态,及时防范和处理可能导致CPU高负载的各种情况,确保网络稳定运行。