设备上没有告警,cpu几分钟就跳满一次,然后就降下去了,是什么问题呢
<HCH-MAN-CO-NP01>dis cpu-usage
Slot 0 CPU 0 CPU usage:
4% in last 5 seconds
3% in last 1 minute
5% in last 5 minutes
<HCH-MAN-CO-NP01>dis cpu-usage
Slot 0 CPU 0 CPU usage:
3% in last 5 seconds
3% in last 1 minute
5% in last 5 minutes
<HCH-MAN-CO-NP01>dis cpu-usage
Slot 0 CPU 0 CPU usage:
3% in last 5 seconds
3% in last 1 minute
5% in last 5 minutes
<HCH-MAN-CO-NP01>dis cpu-usage
Slot 0 CPU 0 CPU usage:
79% in last 5 seconds
3% in last 1 minute
5% in last 5 minutes
<HCH-MAN-CO-NP01>dis cpu-usage
Slot 0 CPU 0 CPU usage:
79% in last 5 seconds
3% in last 1 minute
5% in last 5 minutes
<HCH-MAN-CO-NP01>dis cpu-usage
Slot 0 CPU 0 CPU usage:
79% in last 5 seconds
3% in last 1 minute
5% in last 5 minutes
<HCH-MAN-CO-NP01>dis cpu-usage
Slot 0 CPU 0 CPU usage:
2% in last 5 seconds
17% in last 1 minute
5% in last 5 minutes
最佳答案
根据你描述的 SR6602-X1 路由器 CPU 周期性跳满(5 秒内达 79%)、无告警、快速回落 的现象,结合设备架构(主控 CPU 负责控制层面,NP 负责转发层面),核心结论是:大概率是控制层面的 “周期性突发任务” 导致,而非持续过载或硬件故障(无告警、均值正常可排除后者)。
一、核心原因分析(按概率从高到低)
SR6602-X1 的 CPU 高占用仅出现在 “5 秒瞬时”,1 分钟 / 5 分钟均值正常,说明是 短时间、周期性执行的控制层面任务 消耗 CPU,而非转发层面过载(普通 IP 转发由 NP 承担,不占主控 CPU)。常见原因如下:
1. 周期性系统任务触发
路由器默认或手动配置的定时任务,执行时会短暂占用 CPU,符合 “几分钟一次” 的规律:
系统自带任务:日志清理、配置备份、设备巡检(如风扇 / 温度检测、硬件状态自检)、软件版本自动校验;
手动配置任务:通过 schedule task 配置的定时脚本(如批量采集数据、定时重启接口)。
2. 路由协议周期性计算 / 更新
动态路由协议(OSPF/BGP/IS-IS)的周期性操作,会触发 CPU 计算:
OSPF:邻居保活(Hello 包)、拓扑变化后的 SPF 计算(若网络中有频繁波动的接口,会导致 SPF 周期性触发);
BGP:路由刷新(如邻居周期性发送路由更新、路由聚合计算);
检测协议:BFD(双向转发检测)、NQA(网络质量检测)的短间隔检测(如 BFD 检测间隔设为 100ms,会频繁占用 CPU)。
3. 特殊流量突发(需 CPU 参与转发)
普通 IP 转发由 NP 处理,但以下流量需主控 CPU 介入,若周期性突发会导致 CPU 冲高:
带 ACL 过滤的流量(如 ACL 规则复杂、匹配次数多);
NAT 转换流量(如大量内网主机周期性访问外网,触发 NAT 会话建立 / 释放);
QoS 队列调度(如复杂的队列算法、流量整形配置);
广播 / 组播流量(如局域网内周期性广播风暴、组播流转发)。
4. 管理层面高频操作
SNMP 轮询:监控系统(如 Zabbix、Nagios)高频轮询设备(如每秒 1 次),CPU 需频繁响应 SNMP 请求;
日志输出:开启了 debug 日志(未关闭)、日志级别设为 “debug” 或 “info”,周期性产生大量日志,消耗 CPU;
远程操作:管理员周期性通过 SSH/Telnet 批量执行命令(如脚本采集数据)。
5. 软件版本 bug(概率较低)
部分 SR6602-X1 的历史版本存在 “周期性 CPU 冲高” 的 bug(如特定场景下的协议栈内存泄漏、任务调度异常),需核对版本兼容性。
二、分步排查步骤(从易到难,优先定位周期性任务)
第一步:排查周期性系统任务(最可能原因)
查看定时任务配置:
<HCH-MAN-CO-NP01>display schedule task # 查看所有定时任务(执行时间、周期、任务内容)
重点关注:周期为 “几分钟” 的任务(如备份、日志清理),查看任务执行时间是否与 CPU 跳满时间吻合。
查看系统任务执行日志:
<HCH-MAN-CO-NP01>display logbuffer | include schedule # 过滤定时任务执行日志
<HCH-MAN-CO-NP01>display logbuffer | include task # 查看任务执行结果
第二步:排查路由协议 / 检测协议的周期性操作
排查 OSPF 周期性 SPF 计算:
<HCH-MAN-CO-NP01>display ospf spf-statistics # 查看OSPF SPF计算次数、触发原因
# 若“SPF计算次数”频繁增加(如每分钟多次),说明网络拓扑有波动(如接口频繁up/down)
排查 BFD/NQA 的检测间隔:
<HCH-MAN-CO-NP01>display bfd session all # 查看BFD会话的检测间隔(若设为<1s,会高频占用CPU)
<HCH-MAN-CO-NP01>display nqa result # 查看NQA检测任务的周期、执行状态
建议:BFD 检测间隔默认≥1s(若为 100ms 等短间隔,改为 1s 以上);NQA 周期设为≥60s。
排查 BGP 邻居状态:
<HCH-MAN-CO-NP01>display bgp peer # 查看BGP邻居是否稳定(无频繁连接/断开)
<HCH-MAN-CO-NP01>display bgp update-statistics # 查看BGP路由更新频率
第三步:排查需 CPU 参与的特殊流量
查看接口流量突发:
<HCH-MAN-CO-NP01>display interface brief # 查看各接口的输入/输出速率(是否有周期性峰值)
<HCH-MAN-CO-NP01>display interface GigabitEthernet X/X/X # 查看具体接口的流量统计(重点看广播/组播包数)
排查 ACL/NAT/QoS 的资源占用:
<HCH-MAN-CO-NP01>display acl statistics all # 查看ACL规则匹配次数(若某条规则匹配量突增,说明对应流量突发)
<HCH-MAN-CO-NP01>display nat session all # 查看NAT会话数(是否周期性暴涨)
<HCH-MAN-CO-NP01>display qos queue statistics interface X/X/X # 查看QoS队列调度情况
第四步:排查管理层面高频操作
排查 SNMP 轮询频率:
<HCH-MAN-CO-NP01>display snmp-agent sys-info version # 查看SNMP版本
<HCH-MAN-CO-NP01>display snmp-agent trap all # 查看SNMP Trap配置
联系监控管理员:确认 SNMP 轮询周期(建议≥30 秒,避免每秒轮询)。
排查 debug 日志是否开启:
<HCH-MAN-CO-NP01>display debug-info # 查看是否有debug开关未关闭(debug会严重占用CPU)
<HCH-MAN-CO-NP01>undo debug all # 若有,立即关闭
第五步:排查软件版本 bug
查看设备当前版本:
<HCH-MAN-CO-NP01>display version # 记录版本号(如V200R019C10SPC500)
核对华为官网的 版本缺陷列表(需登录华为企业业务支持平台),搜索是否有 “周期性 CPU 冲高” 的相关 bug,若有则升级到稳定版本。
三、临时处理与优化建议
若定位到 “定时任务” 导致:
调整任务周期(如备份从 “每 5 分钟” 改为 “每小时”);
迁移任务到业务低峰期执行(如凌晨 2 点)。
若定位到 “路由协议 / BFD” 导致:
OSPF:优化网络拓扑(减少接口波动),调整 SPF 计算间隔(ospf spf-schedule-interval delay 500);
BFD:将检测间隔从 “100ms” 改为 “1s”(bfd min-transmit-interval 1000 min-receive-interval 1000)。
若定位到 “SNMP 高频轮询”:
通知监控系统降低轮询频率(≥30 秒);
关闭不必要的 SNMP Trap 项(只保留关键告警)。
若定位到 “特殊流量” 导致:
ACL:简化规则(合并重复规则、删除无用规则);
NAT:限制单 IP 最大 NAT 会话数(nat session limit per-user 1000);
广播风暴:在接入层交换机开启风暴抑制(storm-control broadcast cir 1024)。
若未定位到原因:
开启 CPU 占用详情监控(持续 10 分钟),捕捉跳满时的进程:
<HCH-MAN-CO-NP01>display cpu-usage process # 查看各进程CPU占用(跳满时执行,重点看“占用率最高”的进程)
<HCH-MAN-CO-NP01>display cpu-usage history # 查看CPU占用历史曲线(确认周期)
收集日志(display logbuffer、display trapbuffer)联系华为 TAC 分析(需提供设备版本、配置文件、CPU 占用详情)。
四、关键结论
当前 1 分钟 / 5 分钟 CPU 均值正常(3%/5%),说明设备整体负载无压力,瞬时跳满大概率是良性的周期性任务导致(如定时备份、OSPF SPF 计算),无需紧急处理,但需排查是否影响业务(如 CPU 跳满时是否出现路由收敛延迟、SSH 登录卡顿)。
若排查后发现是 “非必要任务”(如高频 SNMP 轮询、无用定时任务),建议优化配置;若为 “必要任务”(如路由协议正常计算),且未影响业务,可暂时观察,无需调整。
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论