(57)【要約】  ネットワークに接続されたエージェントを、ＳＮＭＰにより管理するマネジャに、自マネジャが備えるＣＰＵの負荷状態を示すＣＰＵ占有率と、エージェントにより送信された、該エージェントが搭載される機器内部の状態変化を通知する状態変化通知コマンドの単位時間あたりの受信数を示す状態変化通知コマンド受信状況と、自マネジャが定期的に実行する処理を実行するまでの時間を示す負荷事象発生時間に基づいて、自マネジャの負荷状態を示すマネジャ負荷情報を生成する負荷情報生成手段と、エージェントに送信するコマンドを生成するコマンド生成手段とを備え、コマンド生成手段は、マネジャ負荷情報を含むコマンドを生成し、エージェントは、コマンドに含まれるマネジャ負荷情報に基づいて、状態変化通知コマンドの送信を制御することにより達成される。
2008149455.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されたエージェントを、ＳＮＭＰにより管理するマネジャであって、
自マネジャが備えるＣＰＵの負荷状態を示すＣＰＵ占有率と、前記エージェントにより送信された、該エージェントが搭載される機器内部の状態変化を通知する状態変化通知コマンドの単位時間あたりの受信数を示す状態変化通知コマンド受信状況と、自マネジャが定期的に実行する処理を実行するまでの時間を示す負荷事象発生時間に基づいて、自マネジャの負荷状態を示すマネジャ負荷情報を生成する負荷情報生成手段と、
前記エージェントに送信するコマンドを生成するコマンド生成手段と
を備え、
前記コマンド生成手段は、前記マネジャ負荷情報を含むコマンドを生成し、
前記エージェントは、前記コマンドに含まれるマネジャ負荷情報に基づいて、前記状態変化通知コマンドの送信を制御することを特徴とするマネジャ。
【請求項２】
請求項１に記載のマネジャにおいて、
前記ＣＰＵ占有率及び前記状態変化通知コマンド受信状況は負荷に応じて複数に分類され、前記負荷事象発生時間は時間に応じて複数に分類され、
前記負荷情報生成手段は、前記分類に基づいて、最も負荷のかかる状態及び最も時間が短い状態のうちの一方をマネジャの負荷情報とすることを特徴とするマネジャ。
【請求項３】
請求項１又は２に記載のマネジャにおいて、
前記コマンド生成手段は、前記エージェントに送信する全コマンドのヘッダ部に前記マネジャ負荷情報を含めることを特徴とするマネジャ。
【請求項４】
ネットワークに接続され、該ネットワークを介してＳＮＭＰにより、マネジャにより管理されるエージェントであって、
前記マネジャは、自マネジャの負荷状態を示すマネジャ負荷情報を、コマンドに含めて送信し、
前記コマンドに含まれるマネジャ負荷情報を格納する負荷情報格納手段と、
前記負荷情報格納手段に格納されたマネジャ負荷情報に基づいて、自エージェントの状態が変化した場合、その状態変化を通知する状態変化通知コマンドの送信を制御する送信制御手段と
を備えることを特徴とするエージェント。
【請求項５】
請求項４に記載のエージェントにおいて、
前記状態変化通知コマンドを格納する状態変化通知コマンド格納手段
を備え、
前記送信制御手段は、前記負荷情報格納手段に格納されたマネジャ負荷情報に基づいて、前記状態変化通知コマンドの送信処理及び／又は保存処理を行うことを特徴とするエージェント。
【請求項６】
ネットワークに接続されたエージェントと、該エージェントを、ＳＮＭＰにより管理するマネジャとを備えるシステムであって、
前記マネジャは、
自マネジャが備えるＣＰＵの負荷状況を示すＣＰＵ占有率と、前記エージェントにより送信された、該エージェントが搭載される機器内部の状態変化を通知する状態変化通知コマンドの単位時間あたりの受信数を示す状態変化通知コマンド受信状況と、自マネジャが定期的に実行する処理を実行するまでの時間を示す負荷事象発生時間に基づいて、自マネジャの負荷状態を示すマネジャ負荷情報を生成する負荷情報生成手段と、
前記マネジャ負荷情報を含むコマンドを生成し、該コマンドを前記エージェントに送信するコマンド生成手段と
を備え、
前記エージェントは、
前記コマンドに含まれるマネジャ負荷情報を格納する負荷情報格納手段と、
前記負荷情報格納手段に格納されたマネジャ負荷情報に基づいて、前記状態変化通知コマンドの送信を制御する送信制御手段と
を備えることを特徴とするシステム。
【請求項７】
ネットワークに接続されたエージェントと、該エージェントを、ＳＮＭＰにより管理するマネジャとを備えるシステムにおける送信制御方法であって、
前記マネジャが、自マネジャが備えるＣＰＵの負荷状況を示すＣＰＵ占有率と、前記エージェントにより送信された、該エージェントが搭載される機器内部の状態変化を通知する状態変化通知コマンドの単位時間あたりの受信数を示す状態変化通知コマンド受信状況と、自マネジャが定期的に実行する処理を実行するまでの時間を示す負荷事象発生時間に基づいて、自マネジャの負荷状態を示すマネジャ負荷情報を生成する負荷情報生成ステップと、
前記マネジャが、前記マネジャ負荷情報を含むコマンドを生成するコマンドを生成するコマンド生成ステップと、
前記マネジャが、生成したコマンドを送信するコマンド送信ステップと、
前記エージェントが、前記コマンドを受信するコマンド受信ステップと、
前記エージェントが、前記コマンドに含まれるマネジャ負荷情報に基づいて、前記状態変化通知コマンドの送信を制御する状態変化通知コマンド送信制御ステップと
を有することを特徴とする送信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク装置と管理システムとの間が簡易ネットワーク管理プロトコル（SNMP:  Simple  Network  Management  Protocol)により接続されるシステムにおけるマネジャ、エージェント及びシステム並びに送信制御方法に関する。
【背景技術】
【０００２】
ネットワーク上の通信では、情報の抜け、漏れを無くし、効率良くデータを送信することが求められる。ネットワーク上の通信の中で簡易ネットワーク管理プロトコル（以下、ＳＮＭＰと呼ぶ）は、通信負荷の軽いデータ送信方法として注目されている。【０００３】
ＳＮＭＰは、エージェントのネットワーク管理情報を、マネジャに送る際の標準のプロトコルとして一般的に知られている。ＳＮＭＰの通信方式は大まかに、マネジャからの情報取得要求に対するエージェントの応答、エージェント側の状態変化に対するマネジャへの自発送信に分類することができる。【０００４】
ＳＮＭＰでは、ＴＣＰ／ＩＰなどで知られているような双方向通信は実施されない。従って、ＳＮＭＰでは、送信データが正しく宛先に届いたかどうかの確認や、送信データが宛先に届いていない場合に行われる再送などの動作は補償されない。【０００５】
そのため、マネジャからの情報取得要求に対するエージェントの応答処理を実行する際は、マネジャ側でタイマなどにより所定の応答待ち時間を設定し、該所定の応答待ち時間が経過してもエージェントからの応答がない場合に、リトライ処理を複数回繰り返す施策が講じられている。【０００６】
一方、エージェント側に状態変化が生じた場合に、エージェント側がマネジャへトラップ（Ｔｒａｐ）の自発送信を行う場合は、エージェント側からの自発発信のため、タイマなどによる所定の応答待ち時間を設定するなどの施策を施すことができず、マネジャが本当にトラップを受信したか否かをエージェントは知ることができない。そのため、たまたまマネジャが高負荷の状態にあり処理が輻輳している場合には、トラップデータを取りこぼしてしまう問題がある。【０００７】
上述したように、ＳＮＭＰには、マネジャ側の負荷状況によりトラップ受信を取りこぼす問題が懸念されており、それを解決するために、以下に示す改善策が提案されている。具体的には、送受信データに整理番号（以降、「シーケンス番号」と記述）を付与する方法、エージェント側にデータベース（以降、「ＤＢ」と記述）を作成し、その中にデータを保存する方法、エージェントに対して定期的にマネジャが情報取得を行うポーリング方法である。【０００８】
従来の改善策、すなわち、シーケンス番号を付与する方法、ＤＢにデータを保存する方法、定期的にポーリングを行う方法について説明する。【０００９】
シーケンス番号を付与する方法について、図１を参照して説明する。【００１０】
図１には、ＳＮＭＰによりネットワークを管理する機器上のマネジャと、管理対象となる各ネットワーク機器に常駐するエージェント（エージェントＡ、エージェントＢ及びエージェントＣ）が示される。【００１１】
マネジャとエージェントとの間では、定期的、例えばｎ秒毎（ｎは、ｎ>０の実数）にシーケンス番号の整合性のチェックが実施される。例えば、マネジャは、管理対象となるネットワーク機器に対して、定期的にシーケンス番号取得コマンドを送信する（ステップＳ２１、Ｓ２２、Ｓ２３）。エージェントは、シーケンス番号取得コマンドを受信すると、該シーケンス番号取得コマンドの応答として、自エージェントの保有するシーケンス番号をマネジャに通知する（ステップＳ４１、Ｓ４２、Ｓ４３）。マネジャは、エージェントから通知されたシーケンス番号を記憶する。図１では、一例として、エージェントＡからシーケンス番号１０１が通知され、エージェントＢからシーケンス番号２０１が通知され、エージェントＣからシーケンス番号３０１が通知される場合を示す。マネジャは、エージェントＡのシーケンス番号１０１を記憶し、エージェントＢのシーケンス番号２０１を記憶し、エージェントＣのシーケンス番号３０１を記憶する。【００１２】
エージェント側で状態変化が発生した場合は、シーケンス番号を付与して状態を通知する（ステップＳ６）。例えば、トラップパケットを送信する。マネジャは、通知された状態及びシーケンス番号を保存する。各エージェントが連続して状態を通知することにより、マネジャの負荷が上昇する。その結果、マネジャでは、トラップの取りこぼしが発生し得る。例えば、各エージェントは、状態変化が発生した場合、シーケンス番号を付与して状態情報を通知する。マネジャ側ではトラップを連続して受信することにより負荷が上昇する。その結果、マネジャ側ではトラップを取りこぼす。例えば、エージェントＡは、状態変化が発生した場合、シーケンス番号１０２を付与して状態情報の通知を行うが、マネジャ側では負荷が上昇しているため、そのトラップを取りこぼす（ステップＳ８）。【００１３】
その後、マネジャは、定期的に行っているシーケンス番号取得コマンドを送信する（ステップＳ１０）。エージェントは、シーケンス番号取得コマンドを受信すると、該シーケンス番号取得コマンドの応答として、自エージェントの保有するシーケンス番号をマネジャに通知する（ステップＳ１２）。【００１４】
マネジャは、自マネジャが記憶するシーケンス番号が、エージェントにより送信されたシーケンス番号に一致するか否かを判断する。マネジャは、負荷が上昇しているときにトラップを取りこぼしているため、マネジャ−エージェント間でシーケンス番号の不一致が生じる（ステップＳ１４）。【００１５】
マネジャは、エージェントとの間でシーケンス番号の不一致が生じた場合、エージェントに対し抜けている状態情報を獲得するコマンド（状態送信要求）を発信する。例えば、自マネジャが記憶しているシーケンス番号に対応する状態変化を示す状態情報を獲得するコマンドを発信する（ステップＳ１６）。【００１６】
エージェントは、状態送信要求を受信すると、現在発生中の状態情報をマネジャに通知する（状態送信要求応答）（ステップＳ１８）。この際、エージェントのシーケンス番号を合わせて通知する。このようにすることで、マネジャ−エージェント間のシーケンス番号を一致させることができる。【００１７】
図１において、例えばステップＳ８においてシーケンス番号１０２が付与された状態情報の通知を、マネジャで取りこぼさずに受信できた場合には、ステップＳ１４で、マネジャは、自マネジャが記憶するシーケンス番号と、エージェントにより送信されたシーケンス番号とが一致すると判断する。その後、定期的に整合性チェックが実施される。【００１８】
次に、ＤＢにデータを保存する方法について、図２を参照して説明する。【００１９】
図２には、ＳＮＭＰによりネットワークを管理する機器上のマネジャと、管理対象となる各ネットワーク機器に常駐するエージェント（エージェントＡ、エージェントＢ及びエージェントＣ）が示される。【００２０】
各エージェントでは、状態変化が発生すると、該状態情報を各エージェントが備えるＤＢにシーケンス番号と対応させて保存する。そして、各エージェントでは、シーケンス番号を付与して状態情報を通知する（ステップＳ２２１、Ｓ２２２及びＳ２２３）。例えば、エージェントＡでは発生した状態変化を示す状態情報をシーケンス番号１２２に対応させて保存し、シーケンス番号１２２を付与して状態情報の通知を行い（ステップＳ２２１）、エージェントＢでは発生した状態変化を示す状態情報をシーケンス番号２４７に対応させて保存し、シーケンス番号２４７を付与して状態情報の通知を行い（ステップＳ２２２）、エージェントＣでは発生した状態変化を示す状態情報をシーケンス番号３７１に対応させて保存し、シーケンス番号３７１を付与して状態情報の通知を行う（ステップＳ２２３）。【００２１】
マネジャとエージェントとの間では、定期的、例えばｎ秒毎（ｎは、ｎ>０の実数）にシーケンス番号の整合性のチェックが実施される。例えば、マネジャは、管理対象となるネットワーク機器に対して、定期的にシーケンス番号取得コマンドを送信する（ステップＳ２４１、Ｓ２４２、Ｓ２４３）。エージェントは、シーケンス番号取得コマンドを受信すると、該シーケンス番号取得コマンドの応答として、自エージェントの保有するシーケンス番号をマネジャに通知する（ステップＳ２６１、Ｓ２６２、Ｓ２６３）。マネジャは、エージェントから通知されたシーケンス番号を記憶する。【００２２】
上述したように、各エージェントでは、状態変化が発生すると、該状態変化を示す状態情報を各エージェントが備えるＤＢにシーケンス番号と対応させて保存する。そして、各エージェントでは、シーケンス番号を付与して状態情報を通知する。例えば、エージェントＡでは発生した状態変化を示す状態情報をシーケンス番号１２３に対応させて保存し、シーケンス番号１２３を付与して状態情報の通知を行う。さらに、エージェントＡにおいて状態変化が発生した場合、エージェントＡでは発生した状態変化を示す状態情報をシーケンス番号１２４に対応させて保存し、シーケンス番号１２４を付与して状態情報の通知を行う。しかし、マネジャではそれらのトラップを取りこぼす（ステップＳ２８、Ｓ３０）。【００２３】
その後、マネジャは、定期的に実施しているシーケンス番号の整合性チェックを行うためシーケンス番号取得コマンドを送信する（ステップＳ３２）。エージェントは、シーケンス番号取得コマンドを受信すると、該シーケンス番号取得コマンドの応答として、自エージェントの保有するシーケンス番号をマネジャに通知する（ステップＳ３４）。【００２４】
マネジャは、自マネジャが記憶するシーケンス番号が、エージェントにより送信されたシーケンス番号に一致するか否かを判断する。マネジャはトラップを取りこぼしているため、マネジャ−エージェント間でシーケンス番号の不一致が生じる（ステップＳ３６）。【００２５】
マネジャは、エージェントとの間にシーケンス番号の不一致が生じた場合、エージェントに対し抜けている状態情報を獲得するコマンド（状態送信要求）を発信する。例えば、自マネジャが記憶しているシーケンス番号に対応する状態変化を示す状態情報を獲得するコマンドを発信する（ステップＳ３８）。その際、マネジャは、保持しているシーケンス番号を付与する。ここでは、保持しているシーケンス番号１２２が付与された状態送信要求が、エージェントＡに送信される。【００２６】
エージェントＡは、状態送信要求を受信すると、通知されたシーケンス番号から自エージェントＡで保持されているシーケンス番号までの状態情報をＤＢから取り出し、シーケンス番号と併せて状態送信要求応答としてマネジャに通知する。この場合、エージェントＡは、シーケンス番号１２２−１２４に対応する状態情報をＤＢから取り出し、マネジャに通知する。【００２７】
次に、定期的にポーリングを行う方法について、図３を参照して説明する。【００２８】
図３には、ＳＮＭＰによりネットワークを管理する機器上のマネジャと、管理対象となる各ネットワーク機器に常駐するエージェント（エージェントＡ、エージェントＢ及びエージェントＣ）が示される。【００２９】
マネジャは、定期的にエージェントの状態確認を行う。例えば、マネジャは、定期的、例えばｎ秒毎（ｎは、ｎ>０の実数）に状態確認コマンドを送信する（ステップＳ３２１、Ｓ３２２、Ｓ３２３）。【００３０】
各エージェントでは、状態変化が生じた場合、ＤＢへ状態情報を保存する。また、各エージェントでは、状態変化が生じた場合、マネジャからの状態確認コマンドに対する応答を行う（ステップＳ３４２）。状態変化を検出する尺度として、例えばＤＢの差分を量る尺度が使用される。具体的には、シーケンス番号やＤＢのデータ番号などが使用される。【００３１】
マネジャが高負荷状態となった場合、エージェントにより送信された状態確認コマンドに対する応答を取りこぼす場合が生じる（ステップＳ３６）。この場合。次回の定期的なチェックにおいてエージェントの状態確認を行う際に、エージェントは、マネジャからの状態確認コマンドに対する応答として、ＤＢに保存された状態情報を通知する（ステップＳ３４２）。
【特許文献１】特開２００４−８０３９７号公報
【発明の開示】
【発明が解決しようとする課題】
【００３２】
しかし、上述した背景技術には以下に示すような問題点がある。【００３３】
シーケンス番号を付与する方法では、シーケンス番号の不一致をマネジャ側で認識した際、既にエージェント側で状態が変わっていた場合には、該当するシーケンス番号のデータを得ることができない問題がある。【００３４】
具体的には、図４に示すように、エージェントＡで状態変化が発生し（ステップＳ４１）、シーケンス番号１０２を付与して状態情報の通知を行うが、マネジャ側では、そのトラップを取りこぼす（ステップＳ４２）。【００３５】
マネジャが状態送信要求を行う前に、エージェントＡの状態が復旧する（ステップＳ４３）。すなわち、エージェントＡの状態が変化する。【００３６】
マネジャは、定期的に実施しているシーケンス番号の整合性チェックを行うため、シーケンス番号取得コマンドを送信する（ステップＳ４４）。エージェントは、シーケンス番号取得コマンドを受信すると、該シーケンス番号取得コマンドの応答として、自エージェントの保有するシーケンス番号をマネジャに通知する（ステップＳ４５）。【００３７】
マネジャは、自マネジャが記憶するシーケンス番号が、エージェントにより送信されたシーケンス番号に一致するか否かを判断する。マネジャはトラップを取りこぼしているため、マネジャ−エージェント間でシーケンス番号の不一致が生じる（ステップＳ４６）。【００３８】
マネジャは、エージェントとの間にシーケンス番号の不一致が生じた場合、エージェントに対し抜けている状態情報を獲得するコマンド（状態送信要求）を発信する。例えば、自マネジャが記憶しているシーケンス番号に対応する状態変化を示す状態情報を獲得するコマンドを発信する（ステップＳ４７）。【００３９】
エージェントＡは、状態送信要求を受信するが、既に状態が復旧しているため、どのような状態変化が発生していたのか分からない。従って、要求された状態情報を通知できない。【００４０】
ＤＢにデータを保存する方法については、エージェント単位に全ての状態変化を示す状態情報を保存する大容量のＤＢが必要となる問題がある。容量は、ＤＢの使用方法、保存するデータの件数、保存期間など、データ管理方法によりばらつくためシステム設計時に容量算出を誤ると、状態情報の蓄積処理に負荷が掛かる。【００４１】
具体的には、図５に示すように、各エージェントでは、状態変化が発生すると、該状態情報を各エージェントが備えるＤＢにシーケンス番号と対応させて保存する。そして、各エージェントでは、シーケンス番号を付与して状態情報を通知する（ステップＳ２２１、Ｓ２２２及びＳ２２３）。例えば、エージェントＡでは発生した状態変化を示す状態情報をシーケンス番号１２２に対応させて保存し、シーケンス番号１２２を付与して状態情報の通知を行い（ステップＳ２２１）、エージェントＢでは発生した状態変化を示す状態情報をシーケンス番号２４７に対応させて保存し、シーケンス番号２４７を付与して状態情報の通知を行い、（ステップＳ２２２）エージェントＣでは発生した状態変化を示す状態情報シーケンス番号３７１に対応させて保存し、シーケンス番号３７１を付与して状態情報の通知を行う（ステップＳ２２３）。このように、エージェント単位に全ての状態変化を示す状態情報を保存する大容量のＤＢが必要であるため、例えば、データの保存を効率よく実施しないと直ぐにＤＢが枯渇する問題がある。また、情報量が多くなった場合に、検索に非常に時間がかかる問題がある。【００４２】
定期的にポーリングを行う方法については、取りこぼし防止には有効であるが、状態変化を示す状態情報の通知がポーリング周期によるため、リアルタイム性に欠けてしまう問題がある。また、シーケンス番号やＤＢデータ保存と組み合わせて使用されることが多く、これらに付随する問題も抱えてしまう。【００４３】
具体的には、図６に示すように、マネジャが高負荷状態となる（ステップＳ６１）。エージェントにおいて状態変化が発生し、エージェントは状態情報を送信するが、マネジャはその状態情報を取りこぼす（ステップＳ６２）。マネジャは、次回の定期的なチェックにおいてエージェントの状態確認を行う（ステップＳ６３１、Ｓ６３２、Ｓ６３３）、エージェントは、マネジャからの状態確認コマンドに対する応答として、ＤＢに保存された状態情報を通知する（ステップＳ６４２）。従って、エージェントからの状態データ、例えばトラップを取りこぼすと、定期チェック以外に状態変化を示す状態情報を受信できないため、状態変化を示す状態情報をリアルタイムに把握できないこととなる。【００４４】
背景技術には以上のような問題点が指摘されており、取りこぼしを解決するには至っていない。【００４５】
また、マネジャ側でトラップを取りこぼす問題を解決するため、マネジャとエージェントの間のＬＡＮ通信が可能かどうかを監視し、ＬＡＮ通信が不可であることを検出した場合、それ以降、ＬＡＮ通信が可能になるまでに発行したトラップをエージェント内のローカルバッファに退避し、ＬＡＮ通信が可能であることを検出した時に、ローカルバッファに退避しておいたトラップをマネジャに向けて送信するエージェントが開示されている（例えば、特許文献１参照）。【００４６】
エージェントは、トラップを発信する側であるため、状態変化に応じてリアルタイムにマネジャへデータを通知することは必要である。しかし、マネジャの負荷を考慮せずにトラップを送信してしまっては、トラップの取りこぼし確率を上昇させることになる。【００４７】
このように、従来システムでは、マネジャの負荷を考慮せず、エージェント側の状態変化のタイミングでトラップ発信を実施していたことから、マネジャ側でのトラップ取りこぼしが発生していたと予想される。従って、現在のシステムを前提として、且つ可能な限り、比較的簡単で低コストで開発／短期間導入でき、その上で確かな効果を発揮できるトラップの送信を行うようにすることが望まれている。【００４８】
そこで、本発明は、上述した問題点の少なくとも１つを解決するためになされたものであり、その目的は、マネジャの負荷状態に基づいて、マネジャとエージェントとの間で通信を行うことができるシステムにおけるマネジャ、エージェント及びシステム並びに送信制御方法を提供することにある。【００４９】
本発明の他の目的は、マネジャの負荷状況に基づいて、トラップ取りこぼしを低減できるシステムにおけるマネジャ、エージェント及びシステム並びに送信制御方法を提供することにある。
【課題を解決するための手段】
【００５０】
上記課題を解決するため、本発明のマネジャは、
ネットワークに接続されたエージェントを、ＳＮＭＰにより管理するマネジャであって、
自マネジャが備えるＣＰＵの負荷状態を示すＣＰＵ占有率と、前記エージェントにより送信された、該エージェントが搭載される機器内部の状態変化を通知する状態変化通知コマンドの単位時間あたりの受信数を示す状態変化通知コマンド受信状況と、自マネジャが定期的に実行する処理を実行するまでの時間を示す負荷事象発生時間に基づいて、自マネジャの負荷状態を示すマネジャ負荷情報を生成する負荷情報生成手段と、
前記エージェントに送信するコマンドを生成するコマンド生成手段と
を備え、
前記コマンド生成手段は、前記マネジャ負荷情報を含むコマンドを生成し、
前記エージェントは、前記コマンドに含まれるマネジャ負荷情報に基づいて、前記状態変化通知コマンドの送信を制御することを特徴の１つとする。【００５１】
また、別の構成例では、
前記ＣＰＵ占有率及び前記状態変化通知コマンド受信状況は負荷に応じて複数に分類され、前記負荷事象発生時間は時間に応じて複数に分類され、
前記負荷情報生成手段は、前記分類に基づいて、最も負荷のかかる状態及び最も時間が短い状態のうちの一方をマネジャの負荷情報とするように構成される。【００５２】
また、別の構成例では、
前記コマンド生成手段は、前記エージェントに送信する全コマンドのヘッダ部に前記マネジャ負荷情報を含めるように構成される。【００５３】
本発明のエージェントは、
ネットワークに接続され、該ネットワークを介してＳＮＭＰにより、マネジャにより管理されるエージェントであって、
前記マネジャは、自マネジャの負荷状態を示すマネジャ負荷情報を、コマンドに含めて送信し、
前記コマンドに含まれるマネジャ負荷情報を格納する負荷情報格納手段と、
前記負荷情報格納手段に格納されたマネジャ負荷情報に基づいて、自エージェントの状態が変化した場合、その状態変化を通知する状態変化通知コマンドの送信を制御する送信制御手段と
を備えることを特徴の１つとする。【００５４】
また、別の構成例では、
前記状態変化通知コマンドを格納する状態変化通知コマンド格納手段
を備え、
前記送信制御手段は、前記負荷情報格納手段に格納されたマネジャ負荷情報に基づいて、前記状態変化通知コマンドの送信処理及び／又は保存処理を行うように構成される。【００５５】
本発明のシステムは、
ネットワークに接続されたエージェントと、該エージェントを、ＳＮＭＰにより管理するマネジャとを備えるシステムであって、
前記マネジャは、
自マネジャが備えるＣＰＵの負荷状況を示すＣＰＵ占有率と、前記エージェントにより送信された、該エージェントが搭載される機器内部の状態変化を通知する状態変化通知コマンドの単位時間あたりの受信数を示す状態変化通知コマンド受信状況と、自マネジャが定期的に実行する処理を実行するまでの時間を示す負荷事象発生時間に基づいて、自マネジャの負荷状態を示すマネジャ負荷情報を生成する負荷情報生成手段と、
前記マネジャ負荷情報を含むコマンドを生成し、該コマンドを前記エージェントに送信するコマンド生成手段と
を備え、
前記エージェントは、
前記コマンドに含まれるマネジャ負荷情報を格納する負荷情報格納手段と、
前記負荷情報格納手段に格納されたマネジャ負荷情報に基づいて、前記状態変化通知コマンドの送信を制御する送信制御手段と
を備えることを特徴の１つとする。【００５６】
本発明の送信制御方法は、
ネットワークに接続されたエージェントと、該エージェントを、ＳＮＭＰにより管理するマネジャとを備えるシステムにおける送信制御方法であって、
前記マネジャが、自マネジャが備えるＣＰＵの負荷状況を示すＣＰＵ占有率と、前記エージェントにより送信された、該エージェントが搭載される機器内部の状態変化を通知する状態変化通知コマンドの単位時間あたりの受信数を示す状態変化通知コマンド受信状況と、自マネジャが定期的に実行する処理を実行するまでの時間を示す負荷事象発生時間に基づいて、自マネジャの負荷状態を示すマネジャ負荷情報を生成する負荷情報生成ステップと、
前記マネジャが、前記マネジャ負荷情報を含むコマンドを生成するコマンドを生成するコマンド生成ステップと、
前記マネジャが、生成したコマンドを送信するコマンド送信ステップと、
前記エージェントが、前記コマンドを受信するコマンド受信ステップと、
前記エージェントが、前記コマンドに含まれるマネジャ負荷情報に基づいて、前記状態変化通知コマンドの送信を制御する状態変化通知コマンド送信制御ステップと
を有することを特徴の１つとする。
【発明の効果】
【００５７】
本発明によれば、マネジャの負荷状態に基づいて、マネジャとエージェントとの間で通信を行うことができるシステムにおけるマネジャ、エージェント及びシステム並びに送信制御方法を実現できる。【００５８】
また、本発明によれば、マネジャの負荷状況に基づいて、トラップ取りこぼしを低減できるシステムにおけるマネジャ、エージェント及びシステム並びに送信制御方法を実現できる。
【図面の簡単な説明】
【００５９】
【図１】トラップ受信を取りこぼす問題に対する一改善策を示すフロー図である。
【図２】トラップ受信を取りこぼす問題に対する一改善策を示すフロー図である。
【図３】トラップ受信を取りこぼす問題に対する一改善策を示すフロー図である。
【図４】トラップ受信を取りこぼす問題に対する一改善策の問題点を示すフロー図である。
【図５】トラップ受信を取りこぼす問題に対する一改善策の問題点を示すフロー図である。
【図６】トラップ受信を取りこぼす問題に対する一改善策の問題点を示すフロー図である。
【図７】本発明の一実施例に係るシステムの一例を示すブロック図である。
【図８】本発明の一実施例に係るＳＮＭＰマネジャを示す部分ブロック図である。
【図９】本発明の一実施例に係るＳＮＭＰマネジャが送信するコマンドの構成を示す説明図である。
【図１０】本発明の一実施例に係るＳＮＭＰエージェントを示す部分ブロック図である。
【図１１】本発明の一実施例に係るシステムの動作を示すフロー図である。
【図１２】本発明の一実施例に係るＳＮＭＰマネジャを示す部分ブロック図である。
【図１３】本発明の一実施例に係るＳＮＭＰエージェントを示す部分ブロック図である。
【図１４】本発明の一実施例に係るシステムの動作を示すフロー図である。
【符号の説明】
【００６０】
１００  ＳＮＭＰマネジャ
１０２  負荷情報生成部
１０４  コマンド生成部
１０６  情報取得部
２００（２００１、２００２、２００３、・・・、２００ｎ）  ＳＮＭＰエージェント
２０２  コマンド受信部
２０４  送信制御部
２０６  負荷情報格納部
２０８  トラップ生成部
２１０  データベース（ＤＢ：  ｄａｔａｂａｓｅ）
【発明を実施するための最良の形態】
【００６１】
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明する。
なお、実施例を説明するための全図において、同一機能を有するものは同一符号を用い、繰り返しの説明は省略する。【００６２】
本発明の実施例に係るＳＮＭＰマネジャ及びＳＮＭＰエージェントが適用される機器管理システムの構成例について、図７を参照して説明する。【００６３】
ＳＮＭＰマネジャは、ＳＮＭＰにより監視を行う機器側に搭載されるソフトウエアモジュールである。また、ＳＮＭＰエージェントはＳＮＭＰにより監視される機器側に搭載されるソフトウエアモジュールであり、ここにＳＮＭＰエージェントが搭載された機器の情報が集められＳＮＭＰプロトコルに翻訳されてＳＮＭＰマネジャに対して送付される。【００６４】
本実施例に係る機器管理システムは、単一又は複数のネットワーク機器(以下、ＳＮＭＰエージェントと呼ぶ）２００（２００１、２００２、２００３、・・・、２００ｎ；ｎは、ｎ>０の整数）と、管理システム（以下、ＳＮＭＰマネジャと呼ぶ）１００とを備え、ＳＮＭＰマネジャ１００とＳＮＭＰエージェント２００との間がＳＮＭＰにて接続される。ＳＮＭＰとは、ＴＣＰ／ＩＰネットワークにおいて、ルータやコンピュータ、端末などネットワークに接続された通信機器をネットワーク経由で監視・制御するためのプロトコルである。【００６５】
各ＳＮＭＰエージェント２００は、各ネットワークを介して通信路３００により、ＳＮＭＰマネジャ１００と接続される。ＳＮＭＰエージェント２００は、自ＳＮＭＰエージェントで発生したイベント／エラー情報を基に、その状態変化を通知するコマンド、例えばトラップを生成し、通信路３００を介して、ＳＮＭＰマネジャ１００に送信する。【００６６】
ＳＮＭＰマネジャ１００は、定期的にＳＮＭＰエージェント２００から情報収集を行う。この情報収集以外に、ＳＮＭＰマネジャ１００は、スケジュール登録機能を有し、定期的な情報収集をＳＮＭＰエージェント２００に対し行う。【００６７】
ＳＮＭＰエージェント２００は、ＳＮＭＰマネジャ１００からＧＥＴコマンド又はＳＥＴコマンドを受信した場合、応答を返信する。また、ＳＮＭＰエージェント２００は、自ＳＮＭＰエージェントが搭載されるネットワーク機器内部の状態変化を検出した場合、自発的にＳＮＭＰマネジャへ状態変化通知コマンドとしてのコマンド、例えばトラップを発行する。【００６８】
本実施例に係るＳＮＭＰマネジャ１００について、図８を参照して説明する。【００６９】
本実施例に係るＳＮＭＰマネジャ１００は、負荷情報生成部１０２と、コマンド生成部１０４と、コマンド受信１０８とエージェント情報格納部１１０を備える。【００７０】
負荷情報生成部１０２には、「ＣＰＵ占有率」、「トラップ受信状況」及び「負荷事象発生時間」が入力され、入力された「ＣＰＵ占有率」、「トラップ受信状況」及び「負荷事象発生時間」に基づいて、ＳＮＭＰマネジャの負荷を測定し、測定したＳＮＭＰマネジャの負荷を示す負荷情報を生成する。【００７１】
「ＣＰＵ占有率」とは、プログラムによってCPUがどの程度使用されているかを示す値である。ＣＰＵ占有率が高い場合には、多くのタスクが処理されていることを示し、各タスクの処理に時間がかかるため、プログラムがＳＮＭＰエージェントから受信したトラップを処理するのに時間がかかる。このため、処理最中に受信するトラップを取りこぼす現象が発生する場合がある。ＳＮＭＰマネジャ１００上で動作しているプログラムの動作状況によりＣＰＵ占有率の値は高低する。【００７２】
「トラップ受信状況」とは、ＳＮＭＰエージェントが発信するトラップをＳＮＭＰマネジャが単位秒当たりに受信する量（数）である。ＳＮＭＰエージェント側にて状態変化などが頻発すると、ＳＮＭＰマネジャは複数回トラップを受信する。単一のＳＮＭＰエージェントからの通知であれば問題となることは少ないが、複数のＳＮＭＰエージェントから複数回トラップを受信すると単位秒当たりのトラップ受信量が多くなるため、トラップを取りこぼす現象が発生する場合がある。この値は、「ＣＰＵ占有率」に影響を与え、単位秒当たりの「トラップ受信状況」が高くなるほど、「ＣＰＵ占有率」も高くなる傾向にある。【００７３】
「負荷事象発生時間」とは、定期的に実行する処理が、何秒後に実行されるかを示す値である。ネットワーク内では、定期的に装置の稼働状況のチェックやＤＢの整合処理などが実施される。これらの処理は、ネットワーク全体が高負荷状態となるため大抵スケジュール管理され、他のプログラムがあまり動作しない時間帯に実行される。この処理中、不慮の状態変化があった場合には、トラップ取りこぼしが発生する確率が高くなる。【００７４】
負荷情報生成部１０２は、入力された「ＣＰＵ占有率」、「トラップ受信状況」及び「負荷事象発生時間」の各パラメータを負荷情報に置き換える。例えば、負荷情報生成部１０２は、表１を参照し、各パラメータを負荷情報に置き換える。表１には、「ＣＰＵ占有率」、「トラップ受信状況」及び「負荷事象発生時間」の各パラメータについて、その負荷の値、すなわち各パラメータの値に応じて分類される複数の負荷情報を示す。【００７５】
【表１】
2008149455.tif 000003
具体的には、「ＣＰＵ占有率」については、負荷に応じて、ＣＰＵ占有率が「８１％〜１００％」は負荷情報「激高」に分類され、「６１％〜８０％」は負荷情報「高」に分類され、「４１％〜６０％」は負荷情報「中」に分類され、「２１％〜４０％」は負荷情報「低」に分類され、「２０％以下」は負荷情報「問題なし」に分類される。【００７６】
同様に、「トラップ受信状況」については、負荷に応じて、トラップ受信状況が「２０トラップ／ｓｅｃ以上」は負荷情報「激高」に分類され、「１６トラップ／ｓｅｃ〜１９トラップ／ｓｅｃ」は負荷情報「高」に分類され、「１２トラップ／ｓｅｃ〜１５トラップ／ｓｅｃ」は負荷情報「中」に分類され、「８トラップ／ｓｅｃ〜１１トラップ／ｓｅｃ」は負荷情報「低」に分類され、「７トラップ／ｓｅｃ以下」は負荷情報「問題なし」に分類される。【００７７】
同様に、「負荷事象発生時間」については、時間に応じて、負荷事象発生時間が「６０ｓｅｃ以内に有り」は負荷情報「激高」に分類され、「６１ｓｅｃ〜１２０ｓｅｃに有り」は負荷情報「高」に分類され、「１２１ｓｅｃ〜１８０ｓｅｃに有り」は負荷情報「中」に分類され、「１８１ｓｅｃ〜２４０ｓｅｃに有り」は負荷情報「低」に分類され、「２４１ｓｅｃ以上無し」は負荷情報「問題なし」に分類される。表１に示した分類、またその分類における数値は一例であり、適宜変更可能である。表１に示すようなテーブルを用いて各パラメータの値を分類し負荷の測定を行うことにより、処理を高速化できる。【００７８】
負荷情報生成部１０２は、各パラメータの値を負荷情報に置き換え、さらに、置き換えた負荷情報から、マネジャの負荷情報を生成する。具体的には、負荷情報生成部１０２は、各パラメータを置き換えることにより取得した負荷情報から、最も負荷のかかっている状態を示す負荷情報を、マネジャの負荷情報としてコマンド生成部１０４に入力する。【００７９】
例えば、各パラメータの値として、「ＣＰＵ占有率」が２３％、「トラップ受信状況」が５トラップ／ｓｅｃ、「負荷事象発生時間」が２８９ｓｅｃ以内、が入力された場合、負荷情報生成部１０２は、各パラメータにおける負荷情報として、「ＣＰＵ占有率」を負荷情報「低」に置き換え、「トラップ受信状況」を負荷情報「問題なし」に置き換え、「負荷事象発生時間」を負荷情報「問題なし」に置き換える。さらに、負荷情報生成部１０２は、各パラメータを置き換えることにより取得した負荷情報「低」、「問題なし」及び「問題無し」から、最も負荷のかかっている状態を示す負荷情報「低」を、マネジャの負荷情報としてコマンド生成部１０４に入力する。【００８０】
また、例えば、各パラメータの値として、「ＣＰＵ占有率」が５８％、「トラップ受信状況」が１７トラップ／ｓｅｃ、「負荷事象発生時間」が１９０ｓｅｃ以内、が入力された場合、負荷情報生成部１０２は、各パラメータにおける負荷情報として、「ＣＰＵ占有率」を負荷情報「中」に置き換え、「トラップ受信状況」を負荷情報「高」に置き換え、「負荷事象発生時間」を負荷情報「低」に置き換える。さらに、負荷情報生成部１０２は、各パラメータを置き換えることにより取得した負荷情報「中」、「高」及び「低」から、最も負荷のかかっている状態を示す負荷情報「高」を、マネジャの負荷情報としてコマンド生成部１０４に入力する。【００８１】
また、例えば、各パラメータの値として「ＣＰＵ占有率」が３３％、「トラップ受信状況」が１１トラップ／ｓｅｃ、「負荷事象発生時間」が４４ｓｅｃ以内、が入力された場合、負荷情報生成部１０２は、各パラメータにおける負荷情報として、「ＣＰＵ占有率」を負荷情報「低」に置き換え、「トラップ受信状況」を負荷情報「低」に置き換え、「負荷事象発生時間」を負荷情報「激高」に置き換える。さらに、負荷情報生成部１０２は、各パラメータを置き換えることにより取得した負荷情報「低」、「低」及び「激高」から、最も負荷のかかっている状態を示す負荷情報「激高」を、マネジャの負荷情報としてコマンド生成部１０４に入力する。【００８２】
コマンド生成部１０４は、入力されたマネジャの負荷情報を含むコマンド（ＰＤＵ：  Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ）を生成する。例えば、コマンド生成部１０４は、入力されたマネジャの負荷情報を、自ＳＮＭＰマネジャが発行するコマンドのヘッダ部、例えばＵＤＰヘッダに含めて送信する。従って、本実施例に係るＳＮＭＰマネジャ１００が発行するコマンドのヘッダには、図９に示すように、アドレス情報、例えば送信元のポート番号及び宛先のポート番号と、コマンドコードと、データ情報量、例えばＵＤＰデータ長と、負荷情報とが含まれる。ここで、コマンドコードは、プロトコル  データ  ユニット（ＰＤＵ）データフォーマットに含まれるようにしてもよい。例えば、コマンド生成部１０４は、ＳＮＭＰエージェントが保有する監視情報の収集コマンドと、ＳＮＭＰエージェントに対する制御コマンドと、装置のヘルスチェックコマンドとをＳＮＭＰエージェントに向けて発行する。すなわち、コマンド生成部１０４は、マネジャの負荷情報を、自ＳＮＭＰマネジャ１００が発行する全コマンドに含め、ＳＮＭＰエージェントに通知する。【００８３】
コマンド受信部１０８は、ＳＮＭＰマネジャが発行するコマンドに対するＳＮＭＰエージェントの応答やＳＮＭＰエージェントが発信するトラップを受信する。受信したＳＮＭＰエージェントの応答やトラップにシーケンス番号や状態データなどの情報が含まれている場合、エージェント情報としてエージェント情報格納部１１０に入力する。【００８４】
エージェント情報格納部１１０は、ＳＮＭＰマネジャが管理するＳＮＭＰエージェントのシーケンス番号や状態データを格納する。【００８５】
ＳＮＭＰエージェントが保有する監視情報の収集コマンドは、上述したシーケンス番号を取得するためのシーケンス番号取得コマンドや定期ポーリング処理のためのコマンドである。このＳＮＭＰエージェントが保有する監視情報の収集コマンドは、手動操作により発行されたり、ある所定の間隔で定期的に発行されたりするコマンドである。【００８６】
ＳＮＭＰエージェントに対する制御コマンドは、ネットワークの運用に関わる制御や何らかの試験を実施するための制御コマンドである。ＳＮＭＰエージェントに対する制御コマンドは、常時使用されるわけではないが、保守時に使用頻度が高くなる。【００８７】
装置のヘルスチェックコマンドは、ネットワーク内に存在する全てのＳＮＭＰエージェントを対象に、ＳＮＭＰエージェントが動作しているか否かを確認するためのコマンドである。装置のヘルスチェックコマンドは、ＳＮＭＰエージェントが保有する監視情報の収集コマンドと異なり、発行間隔の短いコマンドである。【００８８】
上述したようにＳＮＭＰマネジャ１００が発行するコマンドには、保守や定期情報収集などＳＮＭＰエージェント側に負荷がかかる直前に発行されるコマンド、具体的にはＳＮＭＰエージェントが保有する監視情報の収集コマンドやＳＮＭＰエージェントに対する制御コマンドと、極短い間隔で発行されているコマンド、具体的には装置のヘルスチェックコマンドがある。【００８９】
これらのコマンドにマネジャの負荷情報を含めて送信することにより、ＳＮＭＰエージェントに対して常に最新の負荷情報を通知することが可能である。ＳＮＭＰエージェント２００は、ＳＮＭＰマネジャ１００の負荷状況を常時認識できる。ＳＮＭＰエージェント２００は、ＳＮＭＰマネジャ１００により送信されたコマンドに含まれるマネジャの負荷情報に応じて、トラップの発行を制御する。例えば、コマンドを受信したＳＮＭＰエージェント２００は、該コマンドのヘッダに含まれるマネジャの負荷情報を取り出し、内部に格納する。ＳＮＭＰエージェント２００は、コマンドを受信した場合に、毎回この格納処理を実行し、格納されているマネジャの負荷情報を更新する。このようにすることにより、ＳＮＭＰエージェント２００は、常に最新のマネジャの負荷情報を認識することが可能となる。【００９０】
本実施例に係るＳＮＭＰエージェント２００について、図１０を参照して説明する。【００９１】
本実施例に係るＳＮＭＰエージェント２００は、コマンド受信部２０２と、送信制御部２０４と、負荷情報格納部２０６と、トラップ生成部２０８とを備える。【００９２】
コマンド受信部２０２は、ＳＮＭＰマネジャ１００から送信されたコマンドの受信処理を行い、受信したコマンドを送信制御部２０４に入力する。【００９３】
送信制御部２０４は、入力されたコマンドのヘッダ部に含まれるマネジャの負荷情報を取り出し、負荷情報格納部２０６に入力する。【００９４】
負荷情報格納部２０６は、入力されたマネジャの負荷情報を格納する。【００９５】
トラップ生成部２０８は、自ＳＮＭＰエージェントの状態が変化した場合に、その状態変化を通知する状態変化通知コマンドとしてのコマンド、例えばトラップを生成し、送信制御部２０４に入力する。【００９６】
送信制御部２０４は、トラップ生成部２０８からトラップが入力された場合、負荷情報格納部２０６に格納された負荷情報に基づいて、該トラップを送信する。例えば、負荷情報格納部２０６に格納された負荷情報が「低」及び「問題無し」である場合にトラップを送信する。すなわち、負荷情報格納部２０６に格納された負荷情報が「中」、「高」及び「激高」である場合には、トラップの送信を行わない。【００９７】
次に、本実施例に係る機器管理システムの動作について、図１１を参照して説明する。【００９８】
本実施例では、ＳＮＭＰマネジャ１００により管理されるＳＮＭＰエージェントが３台（エージェントＡ、Ｂ及びＣ）の場合について説明するが、ＳＮＭＰエージェントが２台の場合及び４台以上の場合においても適用できる。また、本実施例では、ＳＮＭＰマネジャ１００が、定期的に監視情報の収集コマンド、制御コマンド及びヘルスチェックコマンドを、ＳＮＭＰエージェント２００に送信する場合について説明するが、不定期に送信する場合にも適用できる。【００９９】
ＳＮＭＰマネジャ１００は、負荷情報生成部１０２において、「ＣＰＵ占有率」、「トラップ受信状況」及び「負荷事象発生時間」に基づいて、マネジャの負荷情報を生成する（ステップＳ１１０２）。例えば、マネジャの負荷情報「低」を生成する。【０１００】
ＳＮＭＰマネジャ１００は、コマンド生成部１０４において、コマンドを生成し、そのヘッダにマネジャの負荷情報「低」を含めて送信する（ステップＳ１１０４１、Ｓ１１０４２、Ｓ１１０４３）例えば、コマンド生成部１０４は、そのヘッダにマネジャの負荷情報「低」を含む監視情報の収集コマンドを生成し、エージェントＡ、Ｂ及びＣに送信する。【０１０１】
各エージェントＡ、Ｂ及びＣでは、保有する監視情報をＳＮＭＰマネジャ１００に送信する（ステップＳ１１０６１、Ｓ１１０６２、Ｓ１１０６３）。また、送信制御部２０４は、監視情報収集コマンドのヘッダに含まれるマネジャの負荷情報を負荷情報格納部２０６に格納する（ステップＳ１１０８１、Ｓ１１０８２、Ｓ１１０８３）。【０１０２】
各エージェントのトラップ生成部２０８は、自エージェントの状態が変化した場合に、トラップを生成し、送信制御部２０４に入力する。送信制御部２０４は、トラップ生成部２０８からトラップが入力された場合、負荷情報格納部２０６に格納されたマネジャの負荷情報に基づいて、負荷情報格納部２０６に格納されたマネジャの負荷情報が「低」であるので、該トラップを送信する（ステップＳ１１１０）。【０１０３】
ＳＮＭＰマネジャ１００は、ＳＮＭＰエージェントＡ、Ｂ及びＣから送信されたトラップを受信する。その結果、ＣＰＵ占有率及びトラップ受信状況が上昇する。【０１０４】
ＳＮＭＰマネジャ１００は、負荷情報生成部１０２において、「ＣＰＵ占有率」、「トラップ受信状況」及び「負荷事象発生時間」に基づいて、マネジャの負荷情報を生成する（ステップＳ１１１２）。この状況では、ＣＰＵ占有率及びトラップ受信状況が上昇しているため、マネジャの負荷情報は「高」となる。【０１０５】
ＳＮＭＰマネジャ１００は、コマンド生成部１０４において、コマンドを生成し、そのヘッダに負荷情報「高」を含めて送信する（ステップＳ１１１４１、Ｓ１１１４２、Ｓ１１１４３）例えば、コマンド生成部１０４は、そのヘッダに負荷情報「高」を含む制御コマンドを生成し、エージェントＡ、Ｂ及びＣに送信する。【０１０６】
各ＳＮＭＰエージェントＡ、Ｂ及びＣでは、受信した制御コマンドに対する応答をＳＮＭＰマネジャ１００に送信する（ステップＳ１１１６１、Ｓ１１１６２、Ｓ１１１６３）。また、送信制御部２０４は、制御コマンドのヘッダに含まれる負荷情報を負荷情報格納部２０６に格納する（ステップＳ１１１８１、Ｓ１１１８２、Ｓ１１１８３）。その結果、マネジャの負荷情報が「高」に更新される。【０１０７】
各ＳＮＭＰエージェントのトラップ生成部２０８は、自エージェントの状態が変化した場合に、トラップを生成し、送信制御部２０４に入力する。送信制御部２０４は、トラップ生成部２０８からトラップが入力された場合、負荷情報格納部２０６に格納された負荷情報に基づいて、負荷情報格納部２０６に格納された負荷情報が「高」であるので、該トラップを送信しない。各ＳＮＭＰエージェントは、例えば、負荷情報が「低」又は「問題なし」など、ＳＮＭＰマネジャにおいて、トラップが受信される確率高いと判断される場合に、トラップを送信する。【０１０８】
しばらくの時間経過後、負荷が低い状態となる。【０１０９】
ＳＮＭＰマネジャ１００は、負荷情報生成部１０２において、「ＣＰＵ占有率」、「トラップ受信状況」及び「負荷事象発生時間」に基づいて、マネジャの負荷情報を生成する（ステップＳ１１２０）。例えば、負荷情報生成部１０２には、「負荷事象発生時間」として、高負荷となる情報収集コマンドの発行が１分後に迫っている情報が入力される。この場合、マネジャの負荷情報は「激高」となる。【０１１０】
ＳＮＭＰマネジャ１００は、コマンド生成部１０４において、コマンドを生成し、そのヘッダに負荷情報「激高」を含めて送信する（ステップＳ１１２２１、Ｓ１１２２２、Ｓ１１２２３）例えば、コマンド生成部１０４は、そのヘッダに負荷情報「激高」を含むヘルスチェックコマンドを生成し、エージェントＡ、Ｂ及びＣに送信する。【０１１１】
各エージェントＡ、Ｂ及びＣでは、受信したヘルスチェックコマンドに対する応答をＳＮＭＰマネジャ１００に送信する（ステップＳ１１２４１、Ｓ１１２４２、Ｓ１１２４３）。また、送信制御部２０４は、ヘルスチェックコマンドのヘッダに含まれるマネジャの負荷情報「激高」を負荷情報格納部２０６に格納する（ステップＳ１１２６１、Ｓ１１２６２、Ｓ１１２６３）。その結果、マネジャの負荷情報が「激高」に更新される。【０１１２】
各ＳＮＭＰエージェントのトラップ生成部２０８は、自エージェントの状態が変化した場合に、トラップを生成し、送信制御部２０４に入力する。送信制御部２０４は、トラップ生成部２０８からトラップが入力された場合、負荷情報格納部２０６に格納された負荷情報に基づいて、負荷情報格納部２０６に格納された負荷情報が「激高」であるので、該トラップを送信しない。各ＳＮＭＰエージェントは、例えば、負荷情報が「低」又は「問題なし」など、ＳＮＭＰマネジャにおいて、トラップが受信される確率高いと判断される場合に、トラップを送信する。【０１１３】
本実施例によれば、ＳＮＭＰマネジャの負荷情報をＳＮＭＰエージェントに通知することにより、ＳＮＭＰエージェントは、ＳＮＭＰマネジャの負荷情報に基づいてトラップ発信処理を制御することができる。このため、ＳＮＭＰマネジャにおけるトラップの取りこぼしを低減することができる。【０１１４】
次に、本発明の他の実施例に係る機器管理システムについて説明する。【０１１５】
本実施例に係る機器管理システムでは、ＳＮＭＰエージェントは、通知されたマネジャの負荷情報を用いて、トラップ発行を制御する。さらに、ＳＮＭＰエージェントは、ＳＮＭＰマネジャの負荷状況に応じて、後述する動作決定テーブルを参照し、トラップの送信遅延処理及び／又はDB保存処理を実行する。DB保存処理が選択された場合、ＳＮＭＰマネジャ１００における負荷低減後にＳＮＭＰマネジャがＳＮＭＰエージェントに対し、DB内参照コマンドを発行し、DB内の状態情報を取得する。このようにすることで、ＳＮＭＰマネジャ１００は、状態情報の補間を図ることができる。ＳＮＭＰマネジャにおける状態情報取得後に、ＳＮＭＰエージェントは、内部のＤＢに格納されている状態情報を全削除する。このようにすることにより、ＳＮＭＰエージェントの備えるＤＢの枯渇を低減できる。【０１１６】
本実施例に係る機器管理システムの構成は、図７を参照して説明した構成と同様である。【０１１７】
本実施例に係るＳＮＭＰマネジャの構成について、図１２を参照して説明する。本実施例に係るＳＮＭＰマネジャ１００は、図８を参照して説明したＳＮＭＰマネジャの構成において、負荷情報生成部１０２と接続された情報取得部１０６を備える。【０１１８】
情報取得部１０６は、負荷情報生成部１０２から入力されたマネジャの負荷情報に基づいて、そのマネジャの負荷情報が「低」又は「問題なし」である場合に、抜けているトラップの補完を行う。具体的には、マネジャの負荷情報が「激高」、「高」又は「中」から、「低」又は「問題なし」に変化した場合に、ＳＮＭＰエージェント２００から送信され、ＳＮＭＰマネジャ１００において取りこぼしされ、抜けているトラップの補完を行う。例えば、情報取得部１０６は、ＤＢ内の状態情報を要求するためのＤＢ内状態送信要求コマンドをＳＮＭＰエージェントに送信する。ＳＮＭＰマネジャ１００では、トラップの抜けや漏れを検出できない。このため、ＳＮＭＰエージェント２００に格納されている状態情報を取得するＤＢ内状態送信要求コマンドを発行する。このＤＢ内状態送信要求コマンドには、ＳＮＭＰマネジャ１００に記憶されているシーケンス番号が付与される。このようにすることにより、ＳＮＭＰマネジャ１００は、付与したシーケンス番号以降に状態変化があったか否かをＳＮＭＰエージェント２００に問い合わせることができる。【０１１９】
本実施例に係るＳＮＭＰエージェントの構成について、図１３を参照して説明する。本実施例に係るＳＮＭＰエージェントは、図１０を参照して説明したＳＮＭＰエージェントに、送信制御部２０４と接続された状態変化通知コマンド格納手段としてのデータベース（ＤＢ：  database）２１０を備える。【０１２０】
送信制御部２０４は、トラップを発行する契機を迎えた場合に、負荷情報格納部２０６に格納された負荷情報に基づいて、トラップ発行処理及び／又はＤＢへのトラップ保存処理の実行を行う。例えば、送信制御部２０４は、表２に示すマネジャの負荷情報に対するＳＮＭＰエージェント側動作を示すテーブルを参照し、マネジャの負荷情報が「激高」である場合には、トラップ送信を停止しトラップをＤＢ２１０に保存し、負荷情報が「高」である場合には、トラップ送信を間欠的、例えば数ｍｓ間隔で送信し、トラップをＤＢ２１０に保存し、負荷情報が「中」である場合には、トラップを送信するとともにトラップをＤＢ２１０に保存し、負荷情報が「低」である場合には、トラップを送信するとともにトラップをＤＢ２１０に保存しない、負荷情報が「問題なし」である場合には、トラップを送信しトラップをＤＢ２１０に保存しない。【０１２１】
【表２】
2008149455.tif 000004
すなわち、マネジャの負荷情報が「問題なし」及び「低」である場合、問題は発生しないと想定されるため、施策を施すことなくトラップの送信を実施する。この場合、ＤＢ２１０へのデータ（トラップ）保存処理も実施しない。マネジャの負荷情報が「中」である場合、状況により、トラップ受信の取りこぼしが発生する可能性がある。そのため、トラップ送信は通常通り実施するが、ＤＢ２１０へのデータ保存処理を実施する。マネジャ負荷情報が「高」である場合、トラップ受信の取りこぼしが生じる確率は、負荷情報が「中」である場合より高いため、ＤＢ２１０へのデータ保存処理の実施とともに、トラップを間欠的に送信、すなわち、トラップの配信量を制御する。例えばトラップの発信間隔を通常時より数ms程空ける。このようにすることにより、ＳＮＭＰマネジャがトラップを受信できるようにする。マネジャの負荷情報が「激高」である場合、取りこぼしが発生する確率が高いため、トラップ発行自体を停止させ、ＤＢ２１０へのデータ保存処理を実施する。【０１２２】
また、送信制御部２０４は、ＳＮＭＰマネジャ１００からＤＢ内状態送信要求コマンドを受信した場合、通知されたシーケンス番号以降に発生している状態変化を示す状態情報をＳＮＭＰマネジャ１００に通知する。そして、通知した状態変化を示す状態情報をＤＢ２１０から削除する。このようにすることにより、ＳＮＭＰマネジャ１００では抜けている情報の補完が可能となり、ＳＮＭＰエージェント２００ではＤＢの容量を削減できるとともに、ＤＢの枯渇を低減できる。【０１２３】
次に、本実施例に係る機器管理システムの動作について、図１４を参照して説明する。【０１２４】
本実施例では、ＳＮＭＰマネジャ１００により管理されるＳＮＭＰエージェントが３台（エージェントＡ、Ｂ及びＣ）の場合について説明するが、ＳＮＭＰエージェントが２台の場合及び４台以上の場合においても適用できる。【０１２５】
ＳＮＭＰマネジャ１００における負荷状況が「低」から「高」に変化する。【０１２６】
負荷情報生成部１０２は、負荷情報を生成する（ステップＳ１４０２）。例えば、負荷情報生成部１０２は、負荷情報「高」を生成する。【０１２７】
ＳＮＭＰマネジャ１００からコマンドが送信される前に、ＳＮＭＰエージェントＡ、Ｂ及びＣのトラップ生成部２０８は、自エージェントの状態が変化したので、トラップを生成し、送信制御部２０４に入力する。送信制御部２０４は、トラップ生成部２０８からトラップが入力された場合、負荷情報格納部２０６に格納された負荷情報に基づいて、負荷情報格納部２０６に格納された負荷情報が「低」であるので、該トラップを送信する（ステップＳ１４０４）。その結果、ＳＮＭＰマネジャ１００は、連続的にトラップを受信するため、負荷がさらに上昇する。【０１２８】
さらに、ＳＮＭＰエージェントＡ、Ｂ及びＣによりトラップが送信される（ステップＳ１４０６）。その結果、ＳＮＭＰマネジャ１００では、トラップの取りこぼしが発生する（ステップＳ１４０８）。【０１２９】
しばらくの時間が経過後、ＳＮＭＰマネジャ１００における負荷状況が「高」から「低」に変化する。負荷情報生成部１０２は、マネジャの負荷情報を生成する（ステップＳ１４１０）。例えば、負荷情報生成部１０２は、負荷情報「低」を生成する。【０１３０】
情報取得部１０６は、負荷情報生成部１０２において生成された負荷情報が「低」に移行したので、ＳＮＭＰエージェントＡ、Ｂ及びＣに対して、ＤＢ内状態送信要求を送信する（ステップＳ１４１２１、Ｓ１４１２２、Ｓ１４１２３）。各ＤＢ内状態送信要求には、各エージェントに対するシーケンス番号が含まれる。【０１３１】
ＳＮＭＰエージェントＡ、Ｂ及びＣは、ＳＮＭＰマネジャ１００からＤＢ内状態送信要求を受信すると、該ＤＢ内状態送信要求に含まれるシーケンス番号に基づいて、該シーケンス番号以降の状態データを送信する（ステップＳ１４１４１、Ｓ１４１４２、Ｓ１４１４３）。その後、各ＳＮＭＰエージェントＡ、Ｂ及びＣの送信制御部２０４は、送信した状態データを、ＤＢ２１０から削除する（ステップＳ１４１６１、Ｓ１４１６２、Ｓ１４１６３）。【０１３２】
本実施例によれば、ＳＮＭＰマネジャ１００の負荷情報に基づいて、ＳＮＭＰエージェント２００は、トラップの送信処理及び／又はトラップの保存処理を行うことができる。【０１３３】
これまでは、ＳＮＭＰエージェント側におけるトラップの発行処理の制御は行われていない。すなわち、ＳＮＭＰエージェント側では、常にトラップを保存する処理、また、ＳＮＭＰマネジャからのシーケンス番号による問い合わせに応じて該当するトラップを送信する処理が行われている。【０１３４】
本実施例では、ＤＢに保存する処理が行われるが、全てを保存するとＤＢの枯渇、すなわち容量が足りない場合が生じるので、ある一定の期間だけ保存する。具体的には、マネジャの負荷情報が「低」又は「問題なし」の場合に、ＳＮＭＰマネジャ１００からＳＮＭＰエージェント２００に対してシーケンス番号を含むＤＢ情報送信要求コマンドを発行する。このコマンドにより、シーケンス番号以降に生じた状態の変化を問い合わせることができる。ＳＮＭＰエージェント２００では、ＤＢ情報送信要求コマンドに含まれるシーケンス番号以降の状態情報を送信した後に、該送信した状態情報をＤＢから削除する。このようにすることにより、ＳＮＭＰエージェント２００に備えるＤＢの容量を低減できる。また、ＳＮＭＰマネジャ側では、状態情報の補完を行うことができ、取りこぼしの無いＳＮＭＰ通信を確立できる。【０１３５】
上述した実施例における改善効果を示す。【０１３６】
一例として、ＳＮＭＰマネジャにおいて同様の負荷状態が６００ｓｅｃの間継続した場合におけるトラップ取りこぼし量の変化を示す。【０１３７】
ＳＮＭＰエージェントからのトラップによる輻輳を契機に負荷状態が発生した場合について、表３に示す。【０１３８】
【表３】
2008149455.tif 000005
同様の負荷状態が６００ｓｅｃ継続するので、各負荷状態において負荷がかかればかかるほど、言い換えれば、トラップ量が増加すればするほど、従来法ではトラップ取りこぼし量が増加する。一方、本手法を導入した場合、負荷状態発生直後のトラップのみ取りこぼす可能性があるが、それ以外はトラップの取りこぼしは発生しない。表３において、「＊１」は、負荷状態発生直後のトラップのみ取りこぼす可能性があることを示す。【０１３９】
次に、スケジュール登録された情報収集を契機として負荷状態が発生する場合について、表４に示す。【０１４０】
【表４】
2008149455.tif 000006
ＳＮＭＰマネジャは情報収集コマンドを送信し、その応答量を予測できる。しかし、従来法では、応答の処理については分かっていないため、上述したＳＮＭＰエージェントからのトラップによる輻輳を契機に負荷状態が発生した場合と同様にトラップの取りこぼしが発生する。一方、本手法を導入した場合、間欠的に送信したり、送信を停止したりするなどの処理を行うことができるため、トラップの取りこぼしは発生しない。【０１４１】
つぎに、ＳＮＭＰマネジャが１秒間に受信するトラップ量と、負荷低減後に補完が必要となる最大情報量との関係について、表５に示す。表５には、１トラップが５０バイトとした場合を示す。【０１４２】
【表５】
2008149455.tif 000007
本手法を導入した場合、「激高」である負荷状態が１日継続し、その後負荷が低減した場合でも、８６．４Ｍｂｙｔｅの情報補完によりトラップの取りこぼしを防止することができることが分かる。
【図１】
2008149455.tif 000008
【図２】
2008149455.tif 000009
【図３】
2008149455.tif 000010
【図４】
2008149455.tif 000011
【図５】
2008149455.tif 000012
【図６】
2008149455.tif 000013
【図７】
2008149455.tif 000014
【図８】
2008149455.tif 000015
【図９】
2008149455.tif 000016
【図１０】
2008149455.tif 000017
【図１１】
2008149455.tif 000018
【図１２】
2008149455.tif 000019
【図１３】
2008149455.tif 000020
【図１４】
2008149455.tif 000021
【国際調査報告】
2008149455.tif 000022
2008149455.tif 000023
2008149455.tif 000024
2008149455.tif 000025