(57)【要約】【課題】  管理装置と被管理装置とを有するネットワーク管理システムにおいて、ネットワークへの負荷を必要以上にかけず、また、管理装置の処理負荷を低減させる、ＳＮＭＰトラップ抜けの防止方法を提供することを課題とする。【解決手段】  上記課題を解決するために、被管理装置は、トラップ情報に連続したシーケンス番号を付加して管理装置に送信すると共に、送信したトラップを送信トラップ格納手段に格納する。管理装置は、一定期間毎に、受信したトラップ情報から、被管理装置毎に、シーケンス番号が抜けているトラップのシーケンス番号と、最後に受信したトラップのシーケンス番号とを含むトラップリストを作成し、被管理装置に送信する。被管理装置は、受信したトラップリストを用いて再送信する必要があるトラップの有無を判定し、再送信の必要があるトラップ情報を再送信するトラップリスト処理手段を備える。【選択図】図１
2012019336.tif 000002
【特許請求の範囲】
【請求項１】
管理装置及び被管理装置がネットワークに接続されたネットワーク管理システムであって、
前記被管理装置は、連続したシーケンス番号を付加したトラップ情報を前記管理装置に送信する送信手段と、
管理装置に送信したトラップ情報を格納する送信トラップ格納手段とを備え、
前記管理装置は、
前記被管理装置から受信したトラップ情報を格納する受信トラップ格納手段と、
前記受信トラップ格納手段に格納されたトラップ情報から、抜けたシーケンス番号に対応するトラップ情報のシーケンス番号である未受信トラップ番号と、最後に被監視装置から受信したトラップ情報のシーケンス番号とを有するトラップリストを被管理装置毎に作成するトラップリスト処理手段と、前記トラップリスト処理手段により作成したトラップリストを対応する被管理装置に送信する、トラップリスト送信手段とを備え、
前記管理装置から送信されたトラップリストを受信した被管理装置が、前記送信トラップ格納手段に格納された送信済みのトラップ情報と、管理装置から受信したトラップリストとに基づいて、再送信する必要があるトラップ情報の有無を判定し、再送信の必要があるトラップ情報を管理装置に再送信するトラップリスト処理手段を備える
ことを特徴とするネットワーク管理システム。
【請求項２】
前記トラップリスト処理手段は、一定期間毎に前記トラップリストを作成することを特徴とする請求項１記載のネットワーク管理システム。
【請求項３】
前記管理装置は、被管理装置毎に、抜けたシーケンス番号に対応するトラップ情報のシーケンス番号のうち、最小のシーケンス番号である最小未受信トラップ番号を記録する記録手段を備え、
前記管理装置のトラップリスト処理手段は、前記記録手段に記録された被管理装置の最小未受信トラップ番号に係るシーケンス番号以上のシーケンス番号を有するトラップ情報に対して、シーケンス番号の抜けがあるか否かを判定してトラップリストを作成することを特徴とする請求項１又は２のいずれか一つに記載のネットワーク管理システム。
【請求項４】
前記管理装置のトラップリスト処理手段は、
被管理装置毎に作成するトラップリストに含まれる未受信トラップ番号のうち最も小さい未受信トラップ番号を、該トラップリストに対応する被管理装置についての新たな最小未受信トラップ番号として前記記録手段に記録する
ことを特徴とする請求項３記載のネットワーク管理システム。
【請求項５】
前記管理装置のトラップリスト処理手段は、
被管理装置毎に作成するトラップリストに未受信トラップ番号がない場合に、被管理装置から受信したトラップ情報のシーケンス番号のうち、一番大きいシーケンス番号に続くシーケンス番号を、該トラップリストに対応する被管理装置についての新たな最小未受信トラップ番号として前記記録手段に記録する
ことを特徴とする請求項３記載のネットワーク管理システム。
【請求項６】
ネットワークに接続された被管理装置を管理する管理装置であって、
前記被管理装置から受信したトラップ情報を格納する受信トラップ格納手段と、
前記受信トラップ格納手段に格納されたトラップ情報から、抜けたシーケンス番号に対応するトラップ情報のシーケンス番号である未受信トラップ番号と、最後に被監視装置から受信したトラップ情報のシーケンス番号とを有するトラップリストを被管理装置毎に作成するトラップリスト処理手段と、
前記トラップリスト処理手段により作成したトラップリストを対応する被管理装置に送信する、トラップリスト送信手段とを備え、
前記トラップリスト送信手段により被管理装置毎に送信したトラップリストにより、前記被管理装置に再送信する必要があるトラップ情報があるか否かを判定させ、再送信の必要があるトラップ情報を再送信させる
ことを特徴とする管理装置。
【請求項７】
ネットワークに接続された管理装置にトラップ情報を送信する被管理装置であって、
連続したシーケンス番号を付加したトラップ情報を前記管理装置に送信する送信手段と、
送信したトラップ情報を格納する送信トラップ格納手段と、
前記管理装置から送信された、前記管理装置が受信したトラップ情報の中で抜けたシーケンス番号に対応するトラップ情報のシーケンス番号である未受信トラップ番号と前記管理装置が最後に被管理装置から受信したトラップ情報のシーケンス番号とを有するトラップリストを受信し、前記送信トラップ格納手段に格納された送信済みのトラップ情報と受信したトラップリストとに基づいて再送信する必要があるトラップ情報の有無を判定し、再送信の必要があるトラップ情報を管理装置に再送信するトラップリスト処理手段と
を有することを特徴とする被管理装置。
【請求項８】
ネットワークに接続された被管理装置を管理装置により管理するネットワーク管理方法であって、
前記被管理装置に、連続したシーケンス番号を付加したトラップ情報を前記管理装置に送信する送信工程と、送信したトラップ情報を送信トラップ格納手段に格納する送信トラップ格納工程とを実行させ、
前記管理装置に、前記被管理装置から受信したトラップ情報を格納する受信トラップ格納工程と、前記受信トラップ格納手段に格納された受信したトラップ情報から、抜けたシーケンス番号に対応するトラップ情報のシーケンス番号である未受信トラップ番号と、最後に被管理装置から受信したトラップ情報のシーケンス番号とを有するトラップリストを被管理装置毎に作成するトラップリスト処理工程と、前記トラップリスト処理工程により作成したトラップリストを被管理装置に送信する、トラップリスト送信工程とを実行させ、
前記管理装置から送信されたトラップリストを受信した被管理装置に、前記送信トラップ格納手段に格納された送信済みのトラップ情報と、管理装置から受信したトラップリストとに基づいて再送信する必要があるトラップ情報の有無を判定し、再送信の必要があるトラップ情報を管理装置に再送信するトラップリスト処理工程を実行させる
ことを特徴とするネットワーク管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、管理装置及び被管理装置がネットワークに接続されたネットワーク管理システムに関する。
【背景技術】
【０００２】
従来から、サーバシステムやネットワークシステム等における管理システムでは、ＳＮＭＰ（Simple Network Management Protocol）が広く利用されている。ＳＮＭＰを使用したネットワーク管理システムは、例えば、ネットワークを介して互いに接続された被管理装置と管理装置とを有し、被管理装置におけるイベント発生時には、被管理装置から管理装置に対してイベント情報としてのＳＮＭＰトラップを送信することにより、管理装置にイベントを通知する。
【０００３】
しかし、ＳＮＭＰトラップはＵＤＰ（User Datagram Protocol）による通信方式で通信されるが、ＵＤＰによる通信方式では通信経路の確立を行なわないため、ＳＮＭＰトラップが損失する可能性がある。すなわち、ＳＮＭＰトラップの損失によって、管理装置が被管理装置からのイベント通知を確認できないおそれがある。そのため、ＳＮＭＰトラップの損失を防止する技術が考えられている。
【０００４】
図１２は、ＳＮＭＰトラップ抜けを防止する技術の一例を説明する図である。図１２の例では、管理装置２０と被管理装置４０とが通信ネットワーク１０を介して接続されている。ここで、通信ネットワーク１０は、ＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network）等の通信回線である（以下、同じ）。
【０００５】
図１２の例では、被管理装置４０が管理装置２０へＳＮＭＰトラップを送信した場合、管理装置２０から被管理装置４０へ応答を返すことにより、ＳＮＭＰトラップ抜けを防止する。被管理装置４０がＳＮＭＰトラップを管理装置２０へ送信した際に、何らかの理由により通信ネットワーク１０上で送信したＳＮＭＰトラップが損失したものとして説明する。
【０００６】
被管理装置４０は、ＳＮＭＰトラップを送信した後、一定時間、管理装置２０からの応答を待つ。一定時間が経過しても管理装置２０からの応答が返って来ない場合、すなわち、タイムアウトした場合、被管理装置４０は、送信済みのＳＮＭＰトラップと同じＳＮＭＰトラップを再度管理装置２０へ送信する。管理装置２０が、被管理装置４０から再送信されたＳＮＭＰトラップを受信すると、ＳＮＭＰトラップを受信した旨のトラップ応答（ＳｅｔＲｅｑｕｅｓｔ）を被管理装置４０に返送する。そして、トラップ応答を受信した被管理装置４０が、管理装置２０へトラップ応答に対する応答（ＧｅｔＲｅｓｐｏｎｓｅ）を返送して、一連のトラップ送受信処理が完了する。
【０００７】
このように、図１２に示す例では、ＳＮＭＰトラップを送信した被管理装置４０が、一定時間管理装置２０からの応答を待ち、その一定時間内に応答が返らないときにはＳＮＭＰトラップを再送信することにより、ＳＮＭＰトラップ抜けを防止するものである。
【０００８】
図１３は、図１２の例とは異なるＳＮＭＰトラップ抜けを防止する技術の例を説明する図である。図１３に示す例では、被管理装置４０がＳＮＭＰトラップを送信する際に、トラップ情報に連続したシーケンス番号を付加し、トラップを受信した管理装置２０側でシーケンス番号に抜けがないかを確認する。シーケンス番号に抜けがあった場合には、管理装置２０は、被管理装置４０に対して損失したトラップを再送信するように要求する。
【０００９】
図１３の例において、被管理装置４０からシーケンス番号１及び２の２つのＳＮＭＰトラップを送信した際に、シーケンス番号１のトラップが通信ネットワーク１０上で損失したものとする。この場合、管理装置２０では、シーケンス番号１のトラップを受信することなくシーケンス番号２のトラップを受信するので、シーケンス番号１のトラップが抜けていることが分かる。従って、管理装置２０は、シーケンス番号１のトラップについて、被管理装置４０へ再送要求を出し、損失したシーケンス番号１のトラップを再送させる。
【００１０】
なお、上記方法だと、あるトラップを受信して、その受信したトラップ以前のトラップの抜けを検出する。そのため、被管理装置４０から送信した最終トラップが通信ネットワーク１０上で損失してしまった場合（例えば、図１３におけるシーケンス番号３のトラップ）、最終トラップの損失を検出することはできない。
【００１１】
この問題を解決するための方法としては、管理装置２０が最後に受信したトラップの受信時刻から一定期間経過した場合に、管理装置２０から被管理装置４０に対して、被管理装置４０が最後に送信したトラップのシーケンス番号を問い合わせる。そして、管理装置２０が受信した最後のトラップのシーケンス番号と、被管理装置４０が最後に送信したトラップのシーケンス番号が一致しない場合、管理装置２０は、最終トラップの損失が発生したことを知り、損失した最終トラップの再送を被管理装置４０へ要求する。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開平８−３３１２０６号公報
【特許文献２】特開平９−２４７１４６号公報
【特許文献３】特開２００３−２４４１４２号公報
【特許文献４】特開２００１−１６００１３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
前述の通り、従来技術では、管理装置２０と被管理装置４０との間で、トラップの送信が行われる度に、通信ネットワーク１０を介してトラップの送受信に関する確認及び応答が行われる。しかし、トラップ抜けが発生するような状況では、通信ネットワーク１０に輻輳が発生している場合が多い。このような場合、上述の従来技術では、トラップの送信の度にトラップ応答の送信や再送要求の送信等を行うため、通信ネットワーク１０の輻輳状態をさらに悪化させてしまい、さらなるトラップの損失を発生させてしまうという問題がある。
【００１４】
また、被管理装置の数が例えば数百台や数千台といった数まで増加してくると、管理装置２０でトラップ受信のたびに再送要否の判断や再送要求を行う処理方法では、管理装置２０側の負荷が大きく、処理が追いつかなくなってしまうという問題もある。
【００１５】
そのため、本発明では、通信ネットワーク１０への負荷を必要以上にかけず、かつ、管理装置２０の処理負荷も低減できるトラップ抜けの防止を図ることを課題とする。
【課題を解決するための手段】
【００１６】
管理装置及び被管理装置がネットワークに接続されたネットワーク管理システムにおいて、前記被管理装置は、連続したシーケンス番号を付加したトラップ情報を前記管理装置に送信する送信手段と、管理装置に送信したトラップ情報を格納する送信トラップ格納手段とを備える。
【００１７】
前記管理装置は、前記被管理装置から受信したトラップ情報を格納する受信トラップ格納手段と、前記受信トラップ格納手段に格納されたトラップ情報から、抜けたシーケンス番号に対応するトラップ情報のシーケンス番号である未受信トラップ番号と、最後に被監視装置から受信したトラップ情報のシーケンス番号とを有するトラップリストを被管理装置毎に作成するトラップリスト処理手段と、前記トラップリスト処理手段により作成したトラップリストを対応する被管理装置に送信する、トラップリスト送信手段とを備える。
【００１８】
前記管理装置から送信されたトラップリストを受信した被管理装置は、前記送信トラップ格納手段に格納された送信済みのトラップ情報と、管理装置から受信したトラップリストとに基づいて、再送信する必要があるトラップ情報の有無を判定し、再送信の必要があるトラップ情報を管理装置に再送信するトラップリスト処理手段を備える。
【発明の効果】
【００１９】
上記課題解決手段により、管理装置と被管理装置とを有する、ＳＮＭＰを使用したネットワーク管理システムにおいて、通信ネットワークへの負荷を必要以上にかけることなく、被管理装置から送信するＳＮＭＰトラップの抜けを防止するための再送信機能が得られる。また、被管理装置の数が増加した場合においても、管理装置の処理負荷を低減することが可能となる。
【図面の簡単な説明】
【００２０】
【図１】図１は、実施例に係るシステム構成例を示す。
【図２】図２は、実施例に係る管理装置の構成例を示す。
【図３】図３は、実施例に係る被管理装置の構成例を示す。
【図４】図４は、実施例に係るＳＮＭＰトラップの再送シーケンスの例を示す。
【図５】図５は、実施例に係る被管理装置から管理装置へのＳＮＭＰトラップ送信処理フローの例を示す。
【図６】図６は、実施例に係るＳＮＭＰトラップリストの送受信及びＳＮＭＰトラップの再送処理のフローの例を示す。
【図７】図７は、被管理装置のＳＮＭＰトラップ送信処理フローの例を示す。
【図８】図８は、管理装置でのＳＮＭＰトラップ受信処理フローの例を示す。
【図９】図９は、管理装置のトラップリスト作成処理からトラップリスト送信までのフローの例を示す。
【図１０】図１０は、図９のフローの続きの部分を示す。
【図１１】図１１は、被管理装置のトラップリスト受信からＳＮＭＰトラップ再送処理までのフローの例を示す。
【図１２】図１２は、従来技術に係るＳＮＭＰトラップ抜けを防止する技術の例を示す。
【図１３】図１３は、従来技術に係るＳＮＭＰトラップ抜けを防止する技術の例を示す。
【発明を実施するための形態】
【００２１】
以下、本発明を実施するための形態について詳細に説明する。
【００２２】
図１は、実施例に係るシステム構成例を示す。図１の構成例では、管理装置２０と、複数の被管理装置４０〜４２が通信ネットワーク１０を介して接続されている。ここで、被管理装置としては、被管理装置４０〜４２の３つが描かれているが、被管理装置の数は３つに限られない。
【００２３】
図１に示すように、管理装置２０は、ＳＮＭＰ処理部３０と、トラップ管理部３１と、トラップリスト作成部３２と、トラップリスト送信部３３と、受信トラップデータベース（ＤＢ）３４とを有する。また、被管理装置４０は、ＳＮＭＰ処理部５０と、シーケンス番号付加部５１と、トラップリスト処理部５２と、トラップ管理部５３と、送信トラップＤＢ５４とを有する。以下、図２を用いて実施例に係る管理装置の構成例を説明し、また、図３を用いて実施例に係る被管理装置の構成例を説明する。
【００２４】
図２は、実施例に係る管理装置の構成例を示す。管理装置２０は、通信ネットワーク１０に接続される被管理装置の管理を行う装置であり、前述の通り、ＳＮＭＰ処理部３０と、トラップ管理部３１と、トラップリスト作成部３２と、トラップリスト送信部３３と、受信トラップデータベース（ＤＢ）３４とを有する。
【００２５】
受信トラップＤＢ３４は、被管理装置から受信したトラップを被管理装置毎に格納するためのデータベースである。受信トラップＤＢ３４には、各被管理装置（４０〜４２）から送られてきたトラップに関する、発生日時、シーケンス番号、メッセージ内容等のトラップ情報２００が格納される。また、これらの情報に加えて、各被管理装置からトラップを受信した時刻を合わせて受信トラップＤＢ３４に格納するようにしてもよい。
【００２６】
ＳＮＭＰ処理部３０は、ＳＮＭＰトラップの受信又は送信の各処理を行う。トラップ管理部３１は、被管理装置から受信したトラップについて、受信トラップＤＢ３４への格納、受信トラップＤＢ３４からの読み出し、受信トラップＤＢ３４に格納されたトラップ情報の検索等を行う。
【００２７】
トラップリスト作成部３２は、一定期間毎に、受信トラップＤＢ３４に格納されたトラップ情報に関するリストであるトラップリスト３００を作成する。ここで、トラップリスト３００には、被管理装置毎に、一定期間内に管理装置２０が受信していないトラップのシーケンス番号、すなわち、受信したトラップのシーケンス番号に抜けがある場合の抜けている番号が記録される。また、トラップリスト３００には、最後に受信したトラップのシーケンス番号も記録される。トラップリスト送信部３３は、トラップリスト作成部３２で作成したトラップリストを被管理装置に送信する。
【００２８】
被管理装置４０は、図３に示すようにＳＮＭＰ処理部５０と、シーケンス番号付加部５１と、トラップリスト処理部５２と、トラップ管理部５３と、送信トラップＤＢ５４とを有する。各被管理装置はほぼ同様の構成を有するので、被管理装置の構成については、被管理装置４０を例に説明する。
【００２９】
送信トラップＤＢ５４は、管理装置へ送信したＳＮＭＰトラップの情報である送信済みトラップ情報４００を格納しておくデータベースである。送信トラップＤＢ５４には、管理装置へ送信したトラップに関する、発生日時、シーケンス番号、メッセージ内容等を有する送信済みトラップ情報４００が格納される。
【００３０】
ＳＮＭＰ処理部５０は、ＳＮＭＰトラップの送信又は受信の各処理を行う。シーケンス番号付加部５１は、管理装置２０へ送信するＳＮＭＰトラップに連続したシーケンス番号を付加する。トラップ管理部５３は、管理装置２０へ送信したトラップについて、送信トラップＤＢ５４への格納、送信トラップＤＢ５４からの読み出し、送信トラップＤＢ５４に格納されたトラップ情報の検索等を行う。
【００３１】
トラップリスト処理部５２は、管理装置２０から受信したトラップリスト３００から、トラップ抜けによる再送が必要なトラップがあるか否かの判断を行い、必要に応じてＳＮＭＰ処理部５０にトラップの再送を指示する。
図１〜図３に示すような構成を有するネットワーク管理システムでは、管理装置２０に一定期間毎に、被管理装置ごとにトラップリスト作成部３２によりトラップリスト３００を作成し、作成したトラップリスト３００を対応する被管理装置へ送信する。被管理装置毎に作成されるトラップリスト３００には、所定の期間内に管理装置２０が受信できなかったトラップのシーケンス番号、及び、最後に被管理装置から受信したトラップのシーケンス番号に関する情報が含まれる。被管理装置４０〜４２は、トラップリスト処理部５２により、管理装置から受信したトラップリスト３００の情報と送信トラップＤＢ５４に格納された情報とに基づいて、管理装置に再送信する必要があるトラップがあるか否かを判断する。そして、被管理装置４０〜４２は、再送信する必要があるトラップを管理装置２０へ再送信する。
【００３２】
このような方式を採ることにより、従来行われていたような、ＳＮＭＰトラップを送信する度に行われていた管理装置と被管理装置との間のＳＮＭＰトラップ受信に関する応答や、最終トラップのシーケンス番号通知要求・応答等の処理が不要となる。言い換えれば、図１〜図３のネットワーク管理システムでは、通信ネットワーク１０への負荷を減らすことができる。また、従来技術では、ＳＮＭＰトラップの再送信が必要か否かを管理装置で判断していたが、実施例ではこの判断を各々の被管理装置に行わせることにより、被管理装置の台数が増加した場合の管理装置の負荷低減を図ることが可能となる。
以下、図４に実施例に係るＳＮＭＰトラップの再送シーケンス図の例を示し、この例における被管理装置４０及び管理装置２０の各処理について図５及び図６を用いて説明する。
【００３３】
図４は、実施例に係るＳＮＭＰトラップの再送シーケンスの例を示した図である。具体的には、図４は、被管理装置４０から、シーケンス番号１〜１０の１０個のＳＮＭＰトラップを管理装置２０へ送信しようとした場合に、シーケンス番号２とシーケンス番号１０のＳＮＭＰトラップが通信ネットワーク１０上で損失した場合の例を示す。
【００３４】
被管理装置４０がシーケンス番号１０までのＳＮＭＰトラップを送信したものとする。管理装置２０は、前回被管理装置４０に対するトラップリスト３００の作成を行なって一定期間が経過した特定のタイミングで、被管理装置４０に対するトラップリスト３００の作成を行う。管理装置２０は、前回のトラップリスト３００の作成時点以降に被管理装置４０から受信したＳＮＭＰトラップの情報に基づいてトラップリスト３００を作成し、被管理装置４０に送信する。被管理装置４０は、管理装置２０から送信されたトラップリスト３００の内容を確認し、シーケンス番号が２と１０のＳＮＭＰトラップが管理装置２０に到達しなかったことを認識し、これら管理装置に到達しなかったＳＮＭＰトラップを再送する。
図５は、図４の例における被管理装置４０から管理装置２０へのＳＮＭＰトラップ送信処理、及び管理装置２０でのＳＮＭＰトラップの受信処理の流れを示す。
【００３５】
被管理装置４０では、何らかのエラー、ハードウェアに対するリセット等の制御、あるいは、装置状態の変化等によってトラップ送信要因が発生する。被管理装置４０でトラップ送信要因が発生すると（図５（Ａ））、シーケンス番号付加部５１は、発生した要因に応じて生成されたトラップに対して一連のシーケンス番号を付加する。シーケンス番号付加部５１によりシーケンス番号が付加されたトラップは、ＳＮＭＰ処理部５０により管理装置２０へ送信される（図５（Ｂ））。また、ＳＮＭＰ処理部５０により管理装置２０に送信されたトラップは、トラップ管理部５３により、被管理装置４０の送信トラップＤＢ５４に格納される（図５（Ｃ））。
【００３６】
管理装置２０では、ＳＮＭＰ処理部３０が被管理装置４０から送信されたＳＮＭＰトラップを受信する。被管理装置４０から受信したトラップは、トラップ管理部３１により、被管理装置毎に受信トラップＤＢ３４に格納される（図５（Ｄ））。
【００３７】
このようにして、被管理装置４０の送信トラップＤＢ５４や管理装置２０の受信トラップＤＢ３４に、被管理装置毎のトラップ情報が記録されていく。しかし、被管理装置４０が送信したＳＮＭＰトラップが通信ネットワーク１０の輻輳などにより管理装置２０まで到達しなかった場合には、管理装置２０側の受信トラップＤＢ３４には、該当するトラップ情報が記録されないことになる（図５（Ｅ）の「Ｔｒａｐ（Ｎｏ．２）」）。
図６は、管理装置２０でのトラップリスト３００の作成、送信処理、及び、被管理装置４０でのトラップリスト３００の受信ならびにトラップの再送処理の流れを示す。
【００３８】
管理装置２０は、定期的に、例えば１時間毎に、トラップリスト作成処理を実行する。トラップリスト作成処理が開始されると、トラップリスト作成部３２は、トラップ管理部３１を通して受信トラップＤＢ３４を検索し、一定期間内（ここでは、１時間以内）に受信したトラップのうち、受信していないトラップ、すなわち、シーケンス番号が抜けているトラップのシーケンス番号を抽出する。トラップリスト作成部３２はまた、被管理装置４０から最後に受信したトラップのシーケンス番号を抽出する。そして、これらの抽出したシーケンス番号の情報から、トラップリスト３００を作成する（図６（Ａ））。図６の例では、被管理装置４０がＮｏ．１０のシーケンス番号までのトラップを送信している状態で、トラップリスト作成部３２が、未受信トラップ番号Ｎｏ．２及び最終トラップ番号Ｎｏ．９をトラップリスト３００に記録する。作成したトラップリスト３００は、トラップリスト送信部３３により、対応する被管理装置、この場合、被管理装置４０に送信される（図６（Ｂ））。
【００３９】
被管理装置４０では、トラップリスト処理部５２によりトラップリスト３００を受信する（図６（Ｃ））。受信したトラップリスト３００には、管理装置２０で未受信のトラップがある場合には、その未受信のトラップのシーケンス番号が記載される。そのため、トラップリスト３００の未受信トラップ番号の欄に、シーケンス番号２が記載されている場合には、トラップリスト処理部５２は、ＳＮＭＰ処理部５０に、シーケンス番号２のトラップを再送するように指示し（図６（Ｃ））、管理装置２０に未到達となったトラップＮｏ．２を再送する（図６（Ｄ））。
【００４０】
また、トラップリスト処理部５２は、トラップ管理部５３を通して送信トラップＤＢ５４から被管理装置４０が送信した最終トラップのシーケンス番号を取得する（図６（Ｅ））。送信トラップＤＢ５４から取得した送信済み最終トラップのシーケンス番号と、管理装置２０から受信したトラップリスト３００に含まれている最終トラップのシーケンス番号とを比較する。これらのシーケンス番号を比較した結果、トラップリスト３００の最終トラップのシーケンス番号の方が小さい場合には、「トラップリスト３００の最終トラップのシーケンス番号＋１」のシーケンス番号から管理装置２０に送信した最終のシーケンス番号までのトラップを再送するようＳＮＭＰ処理部５０に指示し、再送処理を行う（図６（Ｆ））。図６では、トラップリスト３００の最終トラップのシーケンス番号に１を加えた番号（Ｎｏ．９＋１）で、かつ、被管理装置４０が最後に送信した番号であるＮｏ．１０が再送処理の対象となる。
ところで、上述のように管理装置２０が、定期的にトラップリスト３００を作成する場合、管理装置２０がトラップリストを作成中、あるいは作成直後に、被管理装置４０からＳＮＭＰトラップが送信される場合があり得る。このような場合、被管理装置４０から最後に送信されたＳＮＭＰトラップのシーケンス番号が、トラップリスト３００の最終トラップ番号として反映されないことになる。そうすると、被管理装置４０がトラップリスト３００を受信した際に、トラップリスト３００に記録された最終トラップ番号と、被管理装置４０が送信した最後のトラップのシーケンス番号とが一致しないので、被管理装置４０は、最後のトラップを再送信することになる。すなわち、被管理装置４０が最後に送信したトラップと同じ内容のトラップが２つ管理装置に送信されることになる。
【００４１】
しかし、管理装置２０が同じ内容のトラップを２つ受信したとしても、被管理装置４０から送信されたトラップが損失する訳ではないので、特に問題とはならない。管理装置２０が同じシーケンス番号のトラップを２通受信した場合、管理装置２０は、例えば、最初に受信した方のトラップを削除してもよいし、２つのトラップを受信トラップＤＢ３４に残しておいて、いずれか一方のトラップを使用するようにしてもよい。
【００４２】
また、上述のように管理装置２０が定期的にトラップリスト３００を作成して、各被管理装置に送信する際、ＳＮＭＰトラップと同様にＵＤＰによる通信方式で送信すると、トラップリスト３００自体も通信ネットワーク１０上で損失してしまう可能性が出てくる。管理装置２０から送信されたトラップリスト３００が通信ネットワーク１０上で損失して、被管理装置４０に到達しない場合には、被管理装置から送信したＳＮＭＰトラップに抜けがあっても、この抜けを被管理装置が検出することができなくなってしまう。従って、管理装置２０から被管理装置４０へ送信するトラップリスト３００については、確実に送信できるプロトコル、例えば、ＴＣＰ（Transmission Control Protocol）を用いて送信するとよい。ＴＣＰを用いると、送信データを確実に送信するための確認応答及び再送を行うので、確実にトラップリスト３００を送信することが可能となる。ＴＣＰを用いずにＵＤＰによる通信方式を用いてトラップリスト３００を送信する場合には、管理装置２０から送信したトラップリスト３００が被管理装置４０に届いたか否かを確認するための確認応答及び再送の処理を行うようにすればよい（不図示）。
以下、被管理装置４０及び管理装置２０における各処理のフローについて図７〜図１１を用いて説明する。
【００４３】
図７は、被管理装置４０におけるＳＮＭＰトラップ送信処理フローの例を示す。被管理装置４０は、装置内の何らかの要因によりトラップ送信要因の発生を検知すると（Ｓ１００）、発生した要因に応じて生成されたトラップに対してシーケンス番号付加部５１によりシーケンス番号を付加する（Ｓ１０１）。そして、被管理装置４０のＳＮＭＰ処理部５０は、シーケンス番号を付加したＳＮＭＰトラップを管理装置２０へ送信し（Ｓ１０２）、送信したＳＮＭＰトラップの情報（発生日時、シーケンス番号、メッセージ内容等）をトラップ管理部５３を通して送信トラップＤＢ５４に格納する（Ｓ１０３）。
【００４４】
図８は、管理装置２０でのＳＮＭＰトラップ受信処理フローの例を示す。管理装置２０は、被管理装置４０から送信されたＳＮＭＰトラップを受信すると（Ｓ１１０）、受信したトラップを、送信元の被管理装置ごとに受信トラップＤＢ３４に格納して記録する（Ｓ１１１）。
図９及び図１０は、管理装置２０のトラップリスト３００の作成処理からトラップリスト３００の送信までのフローの例を２つの図面に分けて示した図である。図９の“Ａ”の部分と図１０の“Ａ”の部分はフローにおける同じ箇所であるものとする。
【００４５】
管理装置２０は、定期的に、図９及び図１０に示すフロー例のように、被管理装置ごとにトラップリスト３００を作成する。具体的には、まず、図９のＳ１２０と図１０のＳ１４５で囲まれたループ１において、１から被管理装置の台数分まで順にループ変数"Ｘ"（“Ｘ”は正の整数）に値を設定して、順次、被管理装置を選択する。
【００４６】
ループ変数“Ｘ”に特定の値が設定されて被管理装置が選択されると、選択された被管理装置に対応する未受信トラップのシーケンス番号のうち最小の番号である「最小未受信トラップ番号」を、受信トラップＤＢ３４に格納された情報から取得する。そして、取得した“Ｘ”番目の被管理装置の最小未受信トラップ番号を、変数“ＭｉｎＴｒａｐＮｏ”に設定する（Ｓ１２１）。ここで、変数“ＭｉｎＴｒａｐＮｏ”は、トラップリスト３００の作成において用いる受信トラップＤＢ３４に格納されたトラップ情報のシーケンス番号のうち、最も小さい値のシーケンス番号である。
【００４７】
なお、各被管理装置に対する最小未受信トラップ番号は、あらかじめ適切な値に初期化しておく。ここでいう適切な値とは、管理装置が稼動を開始する時点において各被管理装置が次に使用するトラップのシーケンス番号をいい、管理装置及び被管理装置が同時に稼動開始するような場合には、通常は１を設定する。最小未受信トラップ番号は、図２の受信トラップＤＢ３４の所定の領域に、被管理装置ごとに格納するようにしてもよいし、その他の特定のメモリやレジスタ等に格納してもよい。
【００４８】
変数“ＭｉｎＴｒａｐＮｏ”への最小未受信トラップ番号の設定（Ｓ１２１）が行われた後、受信トラップＤＢ３４に格納された受信トラップ情報の中から、変数“ＭｉｎＴｒａｐＮｏ”の値に対応したシーケンス番号以上の受信トラップ情報を抽出する（Ｓ１２２）。Ｓ１２２で抽出した受信トラップ情報が０件である場合（Ｓ１２３  Ｙｅｓ）、すなわち、“Ｘ”番目の被管理装置からまだトラップを受信していない場合、変数“ＬａｓｔＮｏ”に（ＭｉｎＴｒａｐＮｏ−１）の値（ここでは、“０”）を設定する（Ｓ１２４）。ここで、変数“ＬａｓｔＮｏ”は、トラップリスト３００の作成において用いる受信トラップＤＢ３４に格納されたトラップ情報のシーケンス番号のうち、最も大きい値のシーケンス番号である。そして、トラップリスト３００を初期化し（Ｓ１２５）、図１０のＳ１４０の処理へ進む。
【００４９】
Ｓ１２２で抽出した最小未受信トラップ番号よりもシーケンス番号が大きい受信トラップ情報が０件でない場合（Ｓ１２３  Ｎｏ）、すなわち、“Ｘ”番目の被管理装置から受信したトラップが存在する場合、Ｓ１２６以降の処理に進む。Ｓ１２６の処理では、Ｓ１２２で抽出した受信トラップ情報に含まれるシーケンス番号で昇順に受信トラップ情報をソートしたソート済みリストを作成する（Ｓ１２６）。ソート済みリストの内容としては、受信トラップ情報に含まれる情報のうち、シーケンス番号に関する情報のみを抜き出して昇順にソートした内容とすることができる。
【００５０】
Ｓ１２６でソート済みリストが作成されると、ソート済みリストの最後のシーケンス番号を、変数“ＬａｓｔＮｏ”に設定する（Ｓ１２７）。そして、Ｓ１２１で設定した“ＭｉｎＴｒａｐＮｏ”の値を、変数“ＣｕｒｒｅｎｔＮｏ”に設定し（Ｓ１２８）、トラップリスト３００の内容を初期化する（Ｓ１２９）。ここで、変数“ＣｕｒｒｅｎｔＮｏ”は、Ｓ１２６で作成したソート済みリストに含まれるシーケンス番号に抜けがないか否かを確認するために用いる変数である。
【００５１】
次に、Ｓ１３０とＳ１３８で囲まれたループ２において、ループ変数“ｉ”を１からソート済みリストの最後まで、すなわち、ソート済みリストに含まれるリスト数まで、順次、１ずつ増加させながらＳ１３１〜Ｓ１３７の処理を実行していく。Ｓ１３１〜Ｓ１３７の処理では、以下に説明するように、Ｓ１２６で作成したソート済みリストに含まれる一連のシーケンス番号に抜けがないかを確認していく。
【００５２】
Ｓ１３１の処理では、ループ変数“ｉ”の値の分だけ、すなわち、Ｓ１３０でのループ回数の増加分だけ、ソート済みリストの最初から数えた位置にあるリストのシーケンス番号を、変数“ＳｏｒｔＮｏ”に設定する（Ｓ１３１）。そして、Ｓ１３１で設定したシーケンス番号の値と、“ＣｕｒｒｅｎｔＮｏ”に設定されたシーケンス番号の値が一致するか否かを判断する（Ｓ１３２）。ここで、被管理装置から受信したＳＮＭＰトラップに抜けがあった場合、すなわち、通信ネットワーク１０等においてＳＮＭＰトラップが損失してしまった場合には、Ｓ１３２での比較結果は一致しないことになる。
【００５３】
Ｓ１３２で比較した結果が一致していた場合には（Ｓ１３２  Ｙｅｓ）、Ｓ１３３の処理に進んで、変数“ＣｕｒｒｅｎｔＮｏ”の値を１だけ増加させる。そして、Ｓ１３８のループ２の最後に進み、再度Ｓ１３０に戻ってループ変数“ｉ”を１増加させて、ソート済みリストの次のシーケンス番号の抜けを確認する。
【００５４】
Ｓ１３２で比較した結果が不一致、すなわち、未受信トラップが存在する場合（Ｓ１３２  Ｎｏ）、Ｓ１３４以降の処理へ進む。Ｓ１３４とＳ１３６で囲まれたループ３では、未受信トラップのシーケンス番号、すなわち、ソート済みリストから抜けているシーケンス番号を未受信トラップ番号としてトラップリスト３００に記録する。具体的には、ループ３のループ変数“ｎ”を“ＣｕｒｒｅｎｔＮｏ”から（ＳｏｒｔＮｏ−１）まで順に増加させつつ（Ｓ１３４）、変数“ｎ”の値を未受信トラップ番号として、トラップリスト３００に追加していく（Ｓ１３５）。
【００５５】
抜けているシーケンス番号をトラップリスト３００に追加した後（Ｓ１３４〜Ｓ１３６）、“ＣｕｒｒｅｎｔＮｏ”に（ＳｏｒｔＮｏ＋１）を設定し（Ｓ１３７）、Ｓ１３８を介して再度ループ２の初め（Ｓ１３０）に戻って、現状のＳｏｒｔＮｏの次のシーケンス番号に抜けがないかを確認していく。
【００５６】
Ｓ１３０〜Ｓ１３８でソート済みリストに含まれる全てのシーケンス番号に抜けがないか否かを確認した後は、図１０のＳ１４０の処理に進む。Ｓ１４０では、変数“ＬａｓｔＮｏ”をソート済みリストに含まれる最終トラップのシーケンス番号としてトラップリスト３００に記録する。Ｓ１４０の処理が完了すると、ループ変数“Ｘ”の値により特定される被管理装置へ送信すべきトラップリスト３００の作成が完了するので、作成したトラップリスト３００をループ変数“Ｘ”の値により特定される被管理装置へ送信する（Ｓ１４１）。
【００５７】
ところで、Ｓ１２２で最小未受信トラップ番号のシーケンス番号まで遡って、受信トラップ情報を抽出した理由としては、過去に被管理装置が再送信したトラップ情報がある場合に、その再送信したトラップ情報が正しく受信されたか否かを確認するためである。すなわち、被管理装置から送信されたトラップのうち、通信ネットワーク１０等で損失したトラップがある場合に、管理装置２０から送信したトラップリスト３００により、被管理装置が損失したトラップを正しく再送信したか否かを確認するためである。
【００５８】
そのため、作成したトラップリスト３００内に未受信トラップ番号が無い場合には、「最小未受信トラップ番号」に、現時点以降に受信するトラップに対応するシーケンス番号に設定しておけばよい。具体的には、作成したトラップリスト３００内に未受信トラップ番号がない場合には（Ｓ１４３  Ｎｏ）、（ＬａｓｔＮｏ＋１）を“Ｘ”番目の被管理装置の最小未受信トラップ番号として、受信トラップＤＢ３４等の所定の格納場所に記録する（Ｓ１４３）。また、作成したトラップリスト３００内に未受信トラップ番号が存在する場合には（Ｓ１４３  Ｙｅｓ）、作成したトラップリスト３００内の未受信トラップ番号のうち、一番小さい番号を“Ｘ”番目の被管理装置の最小未受信トラップ番号として、所定の格納場所に記録する（Ｓ１４４）。Ｓ１４３又はＳ１４４で記録した最小未受信トラップ番号は、次にトラップリスト３００を作成する際のＭｉｎＴｒａｐＮｏとして使用される。このようにトラップリスト３００を作成する度に、未受信トラップ番号を更新していくようにすることで、管理装置２０が定期的に調査すべき受信トラップ情報を最小限に抑えることができ、管理装置２０の処理負荷を軽減することが可能となる。
【００５９】
尚、被管理装置から受信するトラップの数が多くないことが予め分かっているような場合等においては、Ｓ１４２〜Ｓ１４４での最小未受信トラップ番号の更新処理を省略して、最小未受信トラップ番号を初期値のままにしておき、管理装置２０の処理を簡略化してもよい。
【００６０】
Ｓ１４３又はＳ１４４の処理で最小未受信トラップ番号が更新されると、“Ｘ”番目の被管理装置に対するトラップリスト３００の作成及び送信処理が完了する。その後、Ｓ１４５を介して再度Ｓ１２０のループ１の初めに戻り、ループ変数“Ｘ”の値を１増加させて、次の被管理装置に関するトラップリスト３００の作成及び送信を行う。そして、全ての被管理装置についてのトラップリスト３００の作成及び送信が完了すると、図９及び図１０の一連の処理が完了する。
図１１は、被管理装置のトラップリスト３００の受信からＳＮＭＰトラップ再送処理までのフローの例を示す。すなわち、図１１は、図９の一連の処理により作成されたトラップリスト３００が被管理装置へ送信された後の、被管理装置側での処理フローの例を示した図である。
【００６１】
管理装置２０から被管理装置にトラップリスト３００が送信されると、被管理装置内のトラップリスト処理部５２が、管理装置２０から送られてきたトラップリスト３００を受信する（Ｓ１５０）。そして、トラップリスト処理部５２は、受信したトラップリスト３００に記録された未受信トラップ番号の情報から、未受信トラップ番号の一覧を作成する（Ｓ１５１）。
【００６２】
次に、Ｓ１５２とＳ１５５で囲まれたループ１において、Ｓ１５１で作成した未受信トラップ番号の一覧の先頭から最後までのそれぞれのシーケンス番号に関して、Ｓ１５３及びＳ１５４の処理を行う。具体的には、未受信トラップ番号ごとに、送信トラップＤＢ５４から、未受信トラップ番号に対応したトラップ情報を取り出し（Ｓ１５３）、取り出したトラップ情報をＳＮＭＰ処理部５０により管理装置２０へ再送信する（Ｓ１５４）。
【００６３】
Ｓ１５１で作成した未受信トラップ番号の一覧に含まれる全てのシーケンス番号について、対応するトラップを管理装置２０へ再送信した後は、被管理装置から送信した最終トラップを含む一連のトラップについて再送する必要があるか否かを判定する（Ｓ１５６〜Ｓ１６２）。
【００６４】
具体的には、変数“ＬａｓｔＮｏ”にトラップリスト３００に含まれる最終トラップのシーケンス番号を設定する（Ｓ１５６）。また、変数“ＳｅｎｄＮｏ”に、被管理装置が最後に送信したトラップのシーケンス番号を設定する（Ｓ１５７）。そして、これらの変数“ＬａｓｔＮｏ”と“ＳｅｎｄＮｏ”に設定されたシーケンス番号どうしを比較し（Ｓ１５８）、比較した結果が一致すれば（Ｓ１５８  Ｙｅｓ）、被管理装置が最後に送信したトラップが管理装置に到達していることになるので、図１１の一連の処理を終了する。
【００６５】
Ｓ１５８の比較結果が不一致の場合（Ｓ１５８  Ｎｏ）、被管理装置から送信した最終トラップを含む一連のトラップが管理装置２０に到達していないと考えられるため、Ｓ１５９〜Ｓ１６２の処理によって、未到達となっているトラップを再送信する。すなわち、Ｓ１５９とＳ１６２で囲まれたループ２において、ループ変数“ｋ”を（ＬａｓｔＮｏ＋１）からＳｅｎｄＮｏまで順に「１」増加させながら、Ｓ１６０及びＳ１６１の処理を行う。具体的には、変数“ｋ”で示されるシーケンス番号に対応したトラップについて、送信トラップＤＢ５４から取り出し（Ｓ１６０）、Ｓ１６０で取り出したトラップ情報を管理装置へ再送信する（Ｓ１６１）。
【００６６】
Ｓ１６２において、ループ２のループ変数“ｋ”の値がＳｅｎｄＮｏに一致すると、全ての再送信すべきトラップを送信し終えたことになるので、図１１の一連の処理が完了する。
以上に述べた管理装置及び被管理装置の機能、構成により、ＳＮＭＰを使用したネットワーク管理システムにおいて、通信ネットワークへの負荷を必要以上にかけることなく、通信ネットワークを介して送信されるＳＮＭＰトラップの抜けを防止することが可能となる。また、被管理装置の数が増加した場合においても、管理装置の処理負荷を低減することが可能となる。
【００６７】
尚、管理装置及び被管理装置の各々は、ＣＰＵ、メモリ、記憶装置、通信ネットワークのインターフェース回路等を有し、上記図７〜図１１の各フローに示される処理は、管理装置及び被管理装置内のＣＰＵにより実行される。尚、これら各処理は、管理装置及び被管理装置内のＣＰＵに替えて、各処理を実行するためのハードウェア回路により行うようにしてもよい。
【００６８】
前記受信トラップ情報２００、トラップリスト３００、送信済みトラップ情報４００、及び上記各処理を行うためのプログラムは、管理装置及び被管理装置内の記憶装置やメモリ等に格納され、各々の装置内のＣＰＵにより実行される。これらの情報やプログラムは、コンピュータが読み取り可能な記録媒体に格納するようにしてもよい。
【産業上の利用可能性】
【００６９】
本発明は、ネットワークに接続された管理装置及び被管理装置をＳＮＭＰを利用して管理するネットワーク管理システムに利用することができる。
【符号の説明】
【００７０】
１０        通信ネットワーク
２０        管理装置
３０        ＳＮＭＰ処理部
３１        トラップ管理部
３２        トラップリスト作成部
３３        トラップリスト送信部
３４        受信トラップＤＢ
４０〜４２  被管理装置
５０        ＳＮＭＰ処理部
５１        シーケンス番号付加部
５２        トラップリスト処理部
５３        トラップ管理部
５４        送信トラップＤＢ
２００      被管理装置から受信したトラップ情報
３００      トラップリスト
４００      送信済みトラップ情報
【図１】
2012019336.tif 000003
【図２】
2012019336.tif 000004
【図３】
2012019336.tif 000005
【図４】
2012019336.tif 000006
【図５】
2012019336.tif 000007
【図６】
2012019336.tif 000008
【図７】
2012019336.tif 000009
【図８】
2012019336.tif 000010
【図９】
2012019336.tif 000011
【図１０】
2012019336.tif 000012
【図１１】
2012019336.tif 000013
【図１２】
2012019336.tif 000014
【図１３】
2012019336.tif 000015