• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

ComWare7.1.045Release3116交换机使用snmpWalk会使cpu飙升

3小时前提问
  • 0关注
  • 0收藏,42浏览
粉丝:0人 关注:0人

问题描述:

ComWare7.1.045Release3116交换机使用snmpWalk会使cpu飙升

3 个回答
粉丝:209人 关注:0人

您好,那就是版本的问题,升级版本到最新观察

暂无评论

粉丝:23人 关注:1人

是的,在 Comware V7 交换机上执行 snmpwalk 操作,尤其是在未指定具体 OID 的情况下,确实可能导致 CPU 使用率飙升。

这并非特定于 Release 3116 版本的缺陷,而是由 snmpwalk 的工作原理和交换机的资源限制共同导致的。

为什么 snmpwalk 会导致 CPU 飙升?

  1. 大量的 GetNext 请求snmpwalk 命令的本质是向设备发起一连串的 GetNext 请求,以遍历目标 MIB 视图下的所有节点。对于功能丰富的企业级交换机,其 MIB 库非常庞大,这意味着 snmpwalk 需要发送成百上千个请求。

  2. 消耗 CPU 资源:每一个 SNMP 请求都需要交换机 CPU 进行处理,包括解析报文、查询 MIB 库、构造响应等。当短时间内有大量请求涌入时,CPU 的 snmpd(SNMP 服务进程)占用率会急剧升高

  3. 默认获取全部信息:如果在执行 snmpwalk 时没有指定具体的 OID(对象标识符),交换机会默认尝试获取所有能访问的信息。这会导致数据传输量巨大,处理时间极长,CPU 使用率在任务期间会持续处于高位

  4. 请求队列积压:当设备同时收到来自多个网管系统的 SNMP 请求,或者 snmpwalk 的请求频率过高时,交换机的 SNMP 请求队列会积压。新来的请求等待时间变长,设备为了处理积压的任务,CPU 负载会进一步增加。

🛠️ 如何排查和解决?

  • 检查 CPU 占用进程:登录交换机,使用命令 display process cpu 查看 CPU 占用率高的进程。如果 snmpd 进程占用率明显偏高,即可确认是 SNMP 操作导致

  • 优化 SNMP 操作方式(治本)

    • 指定具体的 OID:在监控系统中,应配置为只采集所需的特定 OID 值,而不是对整个 MIB 树执行 snmpwalk。例如,只采集 CPU 利用率的 OID 1.3.6.1.4.1.25506.2.6.1.1.1.1.6

    • 降低采集频率:检查网管系统(如 Zabbix、iMC)的 SNMP 采集间隔,避免过于频繁地轮询设备

  • 调整设备侧配置(辅助)

    • 配置 SNMP View(视图):可以创建一个只包含特定 OID 的 SNMP 视图,并限制 SNMP 团体名(Community)只能访问该视图。这样即使执行 snmpwalk,也只能遍历到视图内有限的信息,从而减轻 CPU 负载

    • 配置 SNMP 信任主机(ACL):通过 ACL 限制只允许授权的网管服务器 IP 地址访问交换机的 SNMP 服务,避免来自未知来源的扫描或攻击。

暂无评论

粉丝:20人 关注:2人

H3C Comware7.1.045 Release3116 执行 snmpWalk 整机 CPU 飙升 完整根因 + 优化方案
一、核心故障根源
低版本固件 SNMP 模块性能缺陷(根本)
CMW710-R3116 老旧补丁存在 SNMP 遍历性能 Bug:snmpWalk全量遍历 OID 时,snmpd 进程持续遍历全量端口、ARP、LLDP、路由 MIB,无缓存优化,控制核 CPU 直接打满;大量get-next报文串行处理,不做分片节流,单次全量遍历 CPU 直接冲到 80%~100%。
网管侧全量无限制遍历
网管工具一次性全树 walk(.1根节点),不做分段、不做过滤,设备需要递归遍历上万条 MIB 节点,CPU 开销成倍放大。
SNMP 无访问 ACL,存在外网 / 扫描机大量无效 SNMP 请求叠加负载
设备开启 LLDP、大量 ARP、多 VLAN、端口流量统计 MIB,遍历计算开销叠加
二、临时快速缓解配置(不用升级固件,立刻降 CPU)
1. 限制仅可信网管 IP 访问 SNMP,屏蔽无效扫描
bash
运行
system-view
# 只允许网管服务器192.168.1.10访问SNMP
acl number 3000
rule permit source 192.168.1.10 0
rule deny
# 绑定SNMP只读团体ACL
snmp-agent community read test acl 3000
2. 自定义 MIB 视图,屏蔽无用大开销 OID(大幅减少遍历计算量)
过滤端口流量统计、ARP 表、LLDP、接口大量历史计数节点,只开放业务监控必需 OID:
bash
运行
# 创建视图,排除高开销MIB分支
snmp-agent mib-view included MONITOR-VIEW iso
snmp-agent mib-view excluded MONITOR-VIEW iso.3.6.1.2.1.16 # RMON流量统计
snmp-agent mib-view excluded MONITOR-VIEW iso.3.6.1.2.1.22 # LLDP
snmp-agent mib-view excluded MONITOR-VIEW iso.3.6.1.2.1.4 # ARP/IP表
# 只读团体绑定精简视图
snmp-agent community read test mib-view MONITOR-VIEW
3. 重启 SNMP 进程释放卡死遍历线程
bash
运行
undo snmp-agent
snmp-agent
4. 网管侧优化(关键)
禁止全量 walk .1,分段遍历:系统、CPU 内存、端口表分开采集;
延长采集间隔,由 1 分钟改为 3~5 分钟;
关闭无用指标采集(端口进出字节历史统计、ARP 全表、LLDP 邻居全表);
不要并发多台网管同时遍历同一台设备。
三、中长期根治方案(彻底解决版本 Bug)
1. 固件升级(最优根治)
当前版本 R3116 存在 SNMP 遍历性能缺陷,升级同大版本 7.1 系列高稳定补丁 R6202P05 及以上:
联系 H3C 400 获取对应设备 IPE 升级包;
Web/TFTP 离线升级,升级前备份配置;
新版本优化 snmpd 遍历缓存、分片处理逻辑,全量 walk CPU 占用下降 70% 以上。
2. 切换 SNMPv3 替代 v2c
v3 增加报文校验、会话缓存,同等遍历量 CPU 开销低于 v2c,同时提升安全性:
bash
运行
# SNMPv3基础配置示例
snmp-agent usm-user v3 admin group-admin simple authentication-mode sha Admin@123 privacy-mode aes128 Admin@456
snmp-agent group v3 group-admin read-view MONITOR-VIEW
四、定位 CPU 占用验证命令
查看整机 CPU 利用率
bash
运行
display cpu-usage summary
查看占用 CPU 最高进程(确认 snmpd 进程高占用)
bash
运行
monitor process
查看正在执行的 SNMP 遍历任务
bash
运行
probe
display system internal snmp-agent operation in-progress
查看 SNMP 超时 / 卡死请求
bash
运行
display system internal snmp-agent operation timed-out
五、长效规避规范
生产网管禁止全根节点 snmpWalk,按需分段采集指标;
所有设备 SNMP 绑定 ACL,仅内网网管访问;
低版本 Comware7 交换机分批升级至 7.1 高补丁版本,修复 SNMP 性能缺陷;
业务量大的交换机,通过 MIB 视图屏蔽无用统计类 OID,减少遍历计算开销。
极简总结
核心根源:7.1.045 Release3116固件 SNMP 模块存在遍历性能 Bug,全量 walk 时 snmpd 进程占满控制核 CPU;
临时缓解:SNMP ACL + 精简 MIB 视图 + 网管分段采集;
彻底根治:升级 7.1 系列高版本固件,优化 SNMP 调度逻辑。

暂无评论

编辑答案

你正在编辑答案

如果你要对问题或其他回答进行点评或询问,请使用评论功能。

分享扩散:

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作

举报

×

侵犯我的权益 >
对根叔社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明