簡體   English   中英

為什么會在 29 秒后使用 gosnmp 超時發出 snmpwalk 請求?

[英]Why would an snmpwalk request made using gosnmp timeout after 29 seconds?

我正在使用 gosnmp 來遍歷 snmp 接口表,1.3.6.1.2.1.2.2.1 和 1.3.6.1.2.1.31.1.1.1。 完成此任務所需的時間存在很大差異,我認為這取決於計算機的負載和網絡擁塞。 在針對 V1 設備的測試中,我在 29 秒后超時。 這是因為組成 snmpwalk 命令的 getnext 請求之一超過了超時嗎? 有沒有辦法區分調用繁忙的設備和許多 getnext 請求失敗(想要更長的超時)與調用死設備(想要更短的超時)。 snmpwalk中途超時后,是否只重試了最后一次getnext? 我假設 gosnmp 的 snmpwalk 包裝了標准的 snmpwalk。 重試和超時字段是否僅映射到 -r 和 -t 命令行參數? 這些是針對同一設備的三個連續測試的日志。

{"已用時間":28596.288132,"time":"2021-10-11T18:24:14-04:00","message":"testSnmpWalk 成功"}

{"error":"請求超時(0 次重試后)","Elapsed Time":29571.202639,"time":"2021-10-11T18:43:37-04:00","message":"testSnmpWalk failed" }

{"Elapsed Time":14645.645597,"time":"2021-10-11T18:44:40-04:00","message":"testSnmpWalk 成功"}

我的解決方案是使用 exec.Cmd 調用 net-SNMP。 有一些工作來管理和解析結果,但我對性能感到滿意。

這可能是由於制造商實施的。 您可以關閉內聯 SNMP 作為解決方案。 還有很多方法可以解決

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM