【文献】
中村直毅,移動ネットワーク環境におけるSNMPを用いた情報収集手法,情報処理学会論文誌 論文誌ジャーナル[CD−ROM],日本,一般社団法人情報処理学会,2011年 3月15日,第52巻,第3号,p.1021−1032
(58)【調査した分野】(Int.Cl.,DB名)
SNMPのエージェント装置から、MIBで定義されたオブジェクトの値であり、複数の警報それぞれの内容を示すオブジェクトの値を識別可能なオブジェクト値識別情報が集約された単一のトラップメッセージを取得する取得部と、
前記単一のトラップメッセージから、前記複数の警報のそれぞれに対応するオブジェクト値識別情報を抽出し、MIBの定義にしたがって、前記複数の警報それぞれの内容を特定する特定部と、
を備え、
前記特定部は、前記単一のトラップメッセージが含む複数のオブジェクト値識別情報のうち1つのオブジェクト値識別情報を1つの警報の内容を示すオブジェクトの値として識別する一方、他のオブジェクト値識別情報を、前記1つの警報の内容を示すオブジェクトの値と、他の警報の内容を示すオブジェクトの値との関係を示すオフセット値として識別し、そのオフセット値に基づいて前記他の警報の内容を示すオブジェクトの値を識別することを特徴とするSNMPのマネージャ装置。
複数の警報をSNMPのマネージャ装置へ通知すべき場合に、MIBで定義されたオブジェクトの値であり、前記複数の警報それぞれの内容を示すオブジェクトの値を識別可能なオブジェクト値識別情報を、単一のトラップメッセージに集約して前記マネージャ装置へ通知するトラップ処理部を備え、
前記トラップ処理部は、前記複数の警報のうち1つの警報については当該警報の内容を示すオブジェクトの値を前記オブジェクト値識別情報とする一方、他の警報については、前記1つの警報の内容を示すオブジェクトの値と、前記他の警報の内容を示すオブジェクトの値との関係を示すオフセット値を前記オブジェクト値識別情報とすることを特徴とするSNMPのエージェント装置。
【発明を実施するための形態】
【0012】
図1は、実施の形態の通信システム100の構成を示す。通信システム100は、通信装置10と網管理装置12を備える。これらの装置は、LAN・WAN・インターネット等を含む通信網14を介して接続される。
【0013】
通信装置10は、SNMPのエージェントプログラムがインストールされた情報処理装置であり、例えばレイヤ2スイッチや、レイヤ3スイッチ、各種サーバであってもよい。網管理装置12は、SNMPのマネージャプログラムがインストールされた情報処理装置である。典型的に通信システム100は、網管理装置12による管理対象となる複数の通信装置を備えるが、実施の形態では説明の簡明化のため1つの通信装置10を示す。
【0014】
図2は、
図1の通信装置10の機能構成を示すブロック図である。通信装置10は、MIB20と、ログ22と、メモリ24と、警報収集部26と、警報管理部28と、トラップ処理部30を備える。本明細書のブロック図において示される各ブロックは、ハードウェア的には、コンピュータのCPUやメモリをはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。
【0015】
MIB(Management Information Base、管理情報ベース)20は、SNMPにより管理される情報のデータベースである。例えば、管理対象となる複数の情報項目のそれぞれを一意に示すOIDと、各情報項目の値とを対応づけて保持する。ログ22は、通信装置10において検出された警報の内容が記録されるログファイルである。
【0016】
メモリ24は、障害が発生したパッケージ(例えば制御盤)等により、障害の発生を示す情報が設定される記憶領域である。例えば、障害が発生したパッケージは、メモリ24の予め定められたビットを「1」に設定してもよい。なお
図2ではMIB20とメモリ24を異なるものとして描いているが、MIB20とメモリ24とは物理的に同じものでもよい。この場合、障害発生パッケージは、MIB20の予め定められた情報項目を、障害の発生を示す所定値に設定してもよい。
【0017】
警報収集部26は、通信装置10のパッケージやポートにおける障害の発生状況を収集する。具体的には、メモリ24の予め定められた領域のデータを、200ミリ秒周期で定期的にポーリングして取得し、取得データが障害の発生を示す値であるか否かを判定することにより、障害の発生状況を収集する。言い換えれば、警報収集部26は、通信装置10の各種構成機器が障害の発生に伴って発した警報を収集する。以下の説明では、「警報」の表現で統一するが、「障害」や「障害を示す情報」等に適宜置き換えてよいことはもちろんである。
【0018】
警報管理部28は、障害の発生状況を通知するよう要求するデータであり、言い換えれば、警報の取得を要求するデータ(以下、「警報取得要求」とも呼ぶ)を、1秒周期で定期的に警報収集部26へ通知する。警報収集部26は、警報取得要求への応答として、警報の発生状況を示す警報収集結果を警報管理部28へ通知する。警報収集結果には、先の警報取得要求に応答してから、今回の警報取得要求を受け付けるまでに警報収集部26が収集した複数の警報の情報が含まれる場合がある。この場合、警報収集部26は、複数の警報の情報を、警報の発生順を示す情報であり、言い換えれば、複数の警報の検出順を示す情報とともに警報管理部28へ通知する。
【0019】
警報管理部28は、警報収集部26から通知された警報収集結果に警報の発生を示す情報が含まれる場合、その警報の内容を、ログ22およびMIB20へそれぞれのフォーマットに則して記録する。そして警報管理部28は、警報の内容をトラップ処理部30に渡す。警報収集部26から受け付けた警報収集結果に複数の警報の情報が含まれる場合、
警報管理部28は、それら複数の警報の内容と、警報の発生順を示す情報をトラップ処理部30に渡す。
【0020】
トラップ処理部30は、警報管理部28から警報の情報が通知された場合に、その警報を網管理装置12へ通知するためのトラップメッセージを設定し、そのトラップメッセージを網管理装置12へ送信する。複数の警報の情報が同時に通知された場合、言い換えれば、複数の警報を網管理装置12へ通知すべき場合、トラップ処理部30は、各警報の内容を単一のトラップメッセージに集約して設定し、その単一のトラップメッセージを網管理装置12へ通知する。
【0021】
トラップ処理部30は、トラップリスト32とトラップ設定部34とトラップ通知部36を含む。トラップリスト32は、通信装置10と網管理装置12とのSNMPによる機器管理のために予め定められたMIB定義ファイルで規定されたトラップメッセージの形式が記録されたファイルである。例えば、トラップメッセージの各オブジェクトのデータとして設定可能な値が記録される。
【0022】
本実施の形態では、トラップメッセージのオブジェクト1として、警報を検出したシステム日時である「SysUpTime」が設定される。「SysUpTime」として、トラップメッセージ設定時のシステム時刻(現在時刻)が設定されてもよい。またオブジェクト2として、警報の種類を示す情報が設定される。またオブジェクト3として、警報送出元のパッケージの種類を示す情報が設定される。例えば、GbE(Giga-bit Ethernet(「Ethernet」は登録商標))のインタフェース盤や、CONT盤、PWR盤等、障害が発生した制御盤の種類を示す情報が設定される。
【0023】
またオブジェクト4として、警報送出元のパッケージの位置を示す情報が設定される。例えば、障害が発生した制御盤がどのインタフェースに位置するものかを示す情報が設定される。またオブジェクト5として、警報対象のポートの種類を示す情報が設定される。例えば、障害が発生したポートの通信速度を示す情報が設定される。またオブジェクト6として、警報対象のポートの位置を示す情報が設定される。例えば、障害が発生したポートに関わるクライアントのパス情報が設定される。
【0024】
図3および
図4は、トラップリスト32の内容を示す。
図3の(a)は、トラップメッセージにおけるオブジェクト2の定義(具体的にはオブジェクト識別子とオブジェクト値との組み合わせ)を示し、
図3の(b)は、トラップメッセージにおけるオブジェクト3の定義を示し、
図3の(c)は、トラップメッセージにおけるオブジェクト4の定義を示している。
図4の(a)は、トラップメッセージにおけるオブジェクト5の定義を示し、
図4の(b)は、トラップメッセージにおけるオブジェクト6の定義を示している。
【0025】
図2に戻り、トラップ設定部34は、トラップリストを参照して警報の内容に対応する各オブジェクトの値を特定し、各オブジェクトの値を設定したトラップメッセージを設定する。例えば、警報をあげた制御盤が「CONT」である場合、オブジェクト3の値として「4」を設定する。
【0026】
また複数の警報の情報が警報管理部28から通知された場合、トラップ設定部34は、各オブジェクトの値として、複数の警報それぞれの内容に対応するオブジェクトの値を特定する。そして、各警報に対応するオブジェクト値を識別可能な情報(以下、「オブジェクト値識別情報」とも呼ぶ。)を、警報の発生順に連結した文字列を設定する。本実施の形態では、カンマ「,」を区切り文字とし、複数の警報に対応する複数のオブジェクト値識別情報を、カンマ区切りで連結させた文字列を設定する。
【0027】
またトラップ設定部34は、複数の警報のうち最初に発生した警報については、その警報の内容を示すオブジェクトの値(以下、「基準オブジェクト値」とも呼ぶ。)をオブジェクト値識別情報として設定する。その一方、他の警報については、その警報の内容を示すオブジェクトの値と、基準オブジェクト値との大小関係を示す値(以下、「オフセット値」とも呼ぶ。)をオブジェクト値識別情報として設定する。
【0028】
トラップ通知部36は、トラップ設定部34により設定されたトラップメッセージ、例えば、複数の警報の内容が集約された1つのトラップメッセージを、網管理装置12へ送信する。
【0029】
図5は、
図1の網管理装置12の機能構成を示すブロック図である。網管理装置12は、MIB定義ファイル40と、トラップ取得部42と、抽出部44と、警報特定部46と、警報出力部48を備える。
【0030】
MIB定義ファイル40は、通信装置10と網管理装置12とのSNMPによる機器管理のために予め定められたMIB定義ファイルである。
図6および
図7は、MIB定義ファイル40におけるトラップメッセージに関する定義を示す。具体的には、トラップメッセージの各オブジェクト値に対応する警報情報を示している。
【0031】
図6の(a)は、トラップメッセージにおけるオブジェクト2の定義を示し、具体的にはトラップの種類を示すトラップ名とオブジェクト値(図のOID)との対応関係を示している。
図6の(b)は、トラップメッセージにおけるオブジェクト3の定義を示し、具体的にはパッケージの種類とオブジェクト値(INTEGER)との対応関係を示している。
図6の(c)は、トラップメッセージにおけるオブジェクト4の定義を示し、具体的にはパッケージの位置とオブジェクト値(INTEGER)との対応関係を示している。
図7の(a)は、トラップメッセージにおけるオブジェクト5の定義を示し、具体的にはポートの種類とオブジェクト値(INTEGER)との対応関係を示している。
図7の(b)は、トラップメッセージにおけるオブジェクト6の定義を示し、具体的にはポートの位置とオブジェクト値(INTEGER)との対応関係を示している。
【0032】
図5に戻り、トラップ取得部42は、通信装置10から送信されたトラップメッセージを受信する。
【0033】
抽出部44は、トラップメッセージから、当該トラップメッセージに設定された各警報のデータを抽出する。抽出部44は、トラップメッセージの各オブジェクト値に、カンマ区切りの文字列が設定されていることを検出すると、カンマ区切りで連結されたオブジェクト値識別情報のそれぞれを、その並び順に各警報のオブジェクト値識別情報として抽出する。例えば、各オブジェクト値における1番目のオブジェクト値識別情報を、通信装置10において1番目に発生した(検出された)警報のオブジェクト値識別情報として抽出する。また各オブジェクト値における2番目のオブジェクト値識別情報を、通信装置10において2番目に発生した(検出された)警報のオブジェクト値識別情報として抽出する。
【0034】
警報特定部46は、MIB定義ファイル40を参照して、トラップメッセージから抽出された各オブジェクト値識別情報に対応づけられた警報情報を特定することにより、通信装置10で発生した(検出された)警報の内容を特定する。
【0035】
トラップメッセージから複数の警報のオブジェクト値識別情報が抽出された場合、警報特定部46は、1番目の警報については、そのオブジェクト値識別情報をオブジェクト値そのものとして扱い、警報情報を特定する。2番目以降の警報については、そのオブジェクト値識別情報を、1番目の警報のオブジェクト値からのオフセット値として扱い、そのオフセット値により1番目の警報のオブジェクト値を調整した結果の値を、2番目以降の警報のオブジェクト値として特定する。そしてそのオブジェクト値にしたがって警報情報を特定する。
【0036】
例えば、トラップメッセージのあるオブジェクトについて、1番目の警報のオブジェクト値が「3」、2番目の警報のオフセット値が「−2」の場合、1番目の警報のオブジェクト値から2を減じた「1」を、2番目の警報のオブジェクト値として特定してもよい。また、1番目の警報のオブジェクト値が「3」、2番目の警報のオフセット値が「+2」の場合、1番目の警報のオブジェクト値に2を加算した「5」を、2番目の警報のオブジェクト値として特定してもよい。
【0037】
警報出力部48は、警報特定部46により特定された警報の内容を外部へ出力する。例えば、警報の内容として障害発生部位を示す情報を、ローカルもしくはリモートのログファイルに記録してもよい。また、これらの情報を所定のデータベースサーバに格納してもよく、所定の表示装置に表示させてもよい。障害発生部位を示す情報には、トラップメッセージのオブジェクト3の警報情報であるパッケージ種別や、オブジェクト4の警報情報であるパッケージ位置、オブジェクト5の警報情報であるポート種別、オブジェクト6の警報情報であるポート位置が含まれる。複数の警報の内容が特定された場合、警報出力部48は、各警報の内容を警報の発生順にログに記録してもよく、発生順序を示す情報とともに表示装置に表示させてもよい。
【0038】
以上の構成による通信システム100の動作を以下説明する。
図8は、これまでの通信システムにおけるトラップメッセージの例を示す。SNMPエージェント装置が3個の警報が同時に検出した場合、
図8の(a)〜(c)のそれぞれが示す3個のトラップメッセージをSNMPマネージャ装置へ送信していた。以下では、本実施の形態の通信装置10が、
図8の3つのトラップメッセージを集約した単一のトラップメッセージを網管理装置12に送信し、網管理装置12がその単一のトラップメッセージから3つの警報の内容を特定する例を示す。
【0039】
通信装置10の警報収集部26は、定期的にメモリ24を監視して各構成機器が通知した警報を収集する。警報管理部28は、警報収集部26に対して警報取得要求を定期的に通知し、警報収集部26は、警報の収集結果として、複数の警報の情報と警報の発生順序を警報管理部28へ通知する。これらの情報はトラップ処理部30に渡される。
【0040】
トラップ設定部34は、複数の警報の発生が検出された場合、トラップメッセージの各オブジェクト(オブジェクト2〜オブジェクト6)について、各警報のオブジェクト値を特定する。そして、2番目以降の各警報のオブジェクト値と1番目の警報のオブジェクト値にもとづいて、2番目以降の各警報のオフセット値を決定し、各々発生順序と対応づける。例えば、2番目以降の各警報のオブジェクト値が示す数値から、1番目の警報のオブジェクト値が示す数値を減算した結果を、2番目以降の各警報のオフセット値として決定してもよい。
【0041】
変形例として、トラップリスト32における2番目以降の各警報のオブジェクト値が格納(定義)された位置と、1番目の警報のオブジェクト値が格納(定義)された位置との関係にもとづいて、2番目以降の各警報のオフセット値を決定してもよい。例えば、
図9の(a)において、1番目の警報のオブジェクト値の格納位置は同図のテーブルの3行目であり、2番目の警報のオブジェクト値の格納位置は同図のテーブルの1行目であるため、「1」行目から「3」行目を減算した結果である「−2」を、オフセット値として決定してもよい。この変形例によると、通信装置10のトラップリスト32のテーブル構成と、網管理装置12のMIB定義ファイル40のテーブル構成とが対応する必要があり、言い換えれば、同一のオブジェクト値はテーブル上の同じ位置に格納される必要があるが、オブジェクト値は算術演算が可能な数値に限らず、様々な種類のデータを許容できる。
【0042】
図9および
図10は、複数警報発生時に設定されるオフセット値の例を示す。具体的には
図8の3つの警報について、
図9の(a)はオブジェクト2のオフセット値、
図9の(b)はオブジェクト3のオフセット値、
図9の(c)はオブジェクト4のオフセット値、
図10の(a)はオブジェクト5のオフセット値、
図10の(b)はオブジェクト6のオフセット値を示している。なお
図9の(a)におけるオフセット値は、オブジェクト値の最後の桁の数値の差が設定されている。また
図10の(b)における3番目の警報は、そのオブジェクト値が1番目の警報のオブジェクト値と同じであるため、オフセット値は「0」に設定されている。
【0043】
トラップ設定部34は、トラップメッセージの各オブジェクト値として、「1番目の警報のオブジェクト値」、「,」、「2番目の警報のオフセット値」、「,」、「3番目の警報のオフセット値」を連結した文字列を設定する。これにより、3つの警報の内容を集約した単一のトラップメッセージのデータを設定する。
【0044】
図11は、
図8の3つのトラップメッセージを集約した単一のトラップメッセージを示す。なおオブジェクト1の「SysUpTime」には、複数の警報に共通の日時(例えば、トラップメッセージ設定時のシステム時刻)を設定してもよい。トラップ通知部36は、トラップ設定部34により設定されたトラップメッセージを網管理装置12へ送信する。
【0045】
網管理装置12のトラップ取得部42は、複数の警報が集約された単一のトラップメッセージを受け付ける。抽出部44は、トラップメッセージの各オブジェクト値を、カンマをデリミタ文字として分割することにより、各オブジェクト値から3つのオブジェクト値識別情報を抽出する。抽出部44は、各オブジェクト値における同じ並び位置のオブジェクト値識別情報を、同じ警報に関するオブジェクト値識別情報として抽出する。例えば
図11のトラップメッセージの場合、最初の「,」までの文字列を1番目の警報のオブジェクト値識別情報、最初の「,」から2番目の「,」までの文字列を2番目の警報のオブジェクト値識別情報、2番目の「,」以降の文字列を3番目の警報のオブジェクト値識別情報として抽出する。
【0046】
網管理装置12の警報特定部46は、1番目の警報のオブジェクト値識別情報を、MIBに定義されたオブジェクト値そのものとして扱い、1番目の警報における各オブジェクトの警報情報を特定して警報全体の内容を特定する。その一方、2番目以降の警報のオブジェクト値識別情報を、1番目の警報のオブジェクト値に対するオフセット値として扱い、2番目以降の警報における各オブジェクトの警報情報を特定して警報全体の内容を特定する。
【0047】
図12〜16は、複数の警報それぞれの警報情報を特定する処理を模式的に示す。これらの各図は、
図11のトラップメッセージから、
図6および
図7で示したMIBに定義された警報情報を特定する処理を示している。
図12はオブジェクト2の警報情報の特定を示し、
図13はオブジェクト3の警報情報の特定を示し、
図14はオブジェクト4の警報情報の特定を示し、
図15はオブジェクト5の警報情報の特定を示し、
図16はオブジェクト6の警報情報の特定を示している。
【0048】
図13を例に説明する。警報特定部46は、1番目の警報については、オブジェクト値識別情報「2」をオブジェクト値そのものとして、オブジェクト値「2」に対応づけられたパッケージ種類「GbE−IF」を、オブジェクト2の警報情報として特定する。また2番目の警報については、オブジェクト値識別情報「+2」を1番目の警報のオブジェクト値に対するオフセット値として、オブジェクト値「4」に対応づけられたパッケージ種類「CONT」を、オブジェクト2の警報情報として特定する。3番目の警報については、オブジェクト値識別情報「−1」を1番目の警報のオブジェクト値に対するオフセット値として、オブジェクト値「1」に対応づけられたパッケージ種類「10GU−IF」を、オブジェクト2の警報情報として特定する。
【0049】
網管理装置12の警報出力部48は、警報特定部46により特定された警報の内容を外部へ出力する。例えば、
図11のトラップメッセージにおける1番目の警報について、そのSysUpTime、オブジェクト2〜6の警報情報を示す文字列を表示装置に表示させ、続いて、2番目の警報、3番目の警報について順次表示させてもよい。
【0050】
なお、網管理装置12において単一のトラップメッセージから複数の警報の内容が特定された以降は、個別の警報を示す複数のトラップメッセージが受け付けられた場合と同じ処理が実行されてもよい。例えば、警報出力部48は、網管理装置12において単一のトラップメッセージから複数の警報の内容が特定された場合と、個別の警報を示す複数のトラップメッセージが受け付けられて各警報の内容が特定された場合とで、同じ情報をログや表示装置へ出力してもよい。
【0051】
本実施の形態の通信システム100によれば、SNMPのエージェント装置は、複数の警報をマネージャ装置へ通知すべき場合に、複数の警報の内容を集約した単一のトラップメッセージをマネージャ装置へ送信する。そして、マネージャ装置は、単一のトラップメッセージから、複数の警報の内容を特定する。これにより、SNMPのエージェント装置からマネージャ装置へのトラップメッセージの数が低減され、通信網のトラヒックを低減することができる。言い換えれば、SNMPのエージェント装置からマネージャ装置へ複数の警報の内容を、通信網のトラヒックの観点において効率的に伝達できる。
【0052】
また通信システム100によれば、トラップメッセージの各オブジェクト値として設定されたオブジェクト値識別情報の並びにより、警報の発生順をマネージャ装置において特定できる。また複数の警報を単一のトラップメッセージに集約しつつも、マネージャ装置において個々の警報の内容を特定できる。
【0053】
また通信システム100によれば、複数の警報のうち2番目以降の警報については、トラップメッセージにオフセット値を設定するため、オブジェクト値そのものを設定する場合と比べて、トラップメッセージのデータ量を低減させやすくなる。大きな桁数の数値等、大きなデータ量のオブジェクト値が定義される場合に特に好適な態様である。
【0054】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0055】
上記実施の形態では、単一のトラップメッセージに複数の警報の内容を集約する場合に、各オブジェクト値として、各警報に対応するオブジェクト値識別情報を、早く検出された警報ほど前になるよう並べた。しかし、必ずしも早く検出された警報を前に並べる必要はなく、通信装置10と網管理装置12間で予め規定された順序で並べてよい。例えば、各警報に対応するオブジェクト値識別情報を、3番目の警報・2番目の警報・1番目の警報の順に並べてもよい。
【0056】
また上記実施の形態では、1番目の警報のオブジェクト値識別情報をオブジェクト値とし、2番目以降の警報のオブジェクト値識別情報をオフセット値とした。変形例として、3番目(最後)の警報のオブジェクト値識別情報をオブジェクト値とし、それ以前の警報のオブジェクト値識別情報をオフセット値としてもよい。すなわち、通信装置10と網管理装置12間で予め規定された1つの警報のオブジェクト値識別情報をオブジェクト値とし、他の警報のオブジェクト値識別情報をオフセット値としてもよい。
【0057】
請求項に記載の各構成要件が果たすべき機能は、実施の形態および変形例において示された各構成要素の単体もしくはそれらの連携によって実現されることも当業者には理解されるところである。