2

私のチームでは、SNMPSETが2週間に1回程度失敗するという状況があります。このセットは自動的に行われるため、失敗したときにすぐに気付くとは限りません。これにより、構成に一貫性がなくなり、関連する泣き声や歯ぎしりが発生する可能性があります。計画は、失敗したときにソフトウェアがSETを自動的に再試行することにより、これを修正することです。

問題は、なぜ障害が発生しているのかわからないということです。私の(非常に限られた)SNMPの知識は、この問題の診断には特に役立ちません。そのため、StackOverflowにアドバイスを求めたいと思いました。ネットワークトラフィックが急増すると、SETが失敗することがよくあると思います。SNMPは通信にUDPを使用しているため、トラフィックが短期間で多い場合、コマンドが比較的簡単に削除されると思います。しかし、これがどれほど一般的かはわかりません。単一のCiscoルーターを備えた小規模なネットワークがあり、そのネットワーク上にSNMP制御されたデバイスは12台未満です。SNMPトラフィックに加えて、さまざまなデバイスからロードされているいくつかのステータスWebページがあります。違いが生じる場合は、Java用のAdventNetSNMPAPIバージョン4.0.4を使用していると思います。

一部のSETコマンドがときどきドロップされるのは合理的に聞こえますか、それとも他の原因を探す必要がありますか?

4

1 に答える 1

3

SNMPは、信頼性が低くなるように設計されています。トランスポートプロトコルとしてUDPを使用します。ルーターは、優先度の高い作業を行うと、SNMPパケットをドロップします。そうです、SETコマンドが時々ドロップされるのは非常に合理的に聞こえます:)

SNMPライブラリがある場合は、最初に最新バージョンにアップグレードします。

次に、再試行メカニズムを設定できます。GETを使用して各SETを確認します。これが失敗した場合は、後で試行するためにSETをキューに入れます。これには、複雑なキューイングメカニズムが必要です。同じ設定の後のSETは、既存のキューに入れられたSETの後に、またはキューに入れられる必要があります。

もう1つのオプションは、状態全体を1時間ごとに同期することです。設定にはGETを使用し、変更されている場合はSETします。3時間以上経過しない変更は、アラートシステムを使用して報告できます。

他にも多くのオプションがありますが、週平均で1回だけ失敗する場合は、最も簡単な方法を使用します。GETを使用してSETを確認し、5回再試行します。それでも失敗する場合は、電子メールを送信します。

于 2010-04-02T20:45:12.690 に答える