【実施例1】
【0015】
第1の実施例は、複数のパケット中継装置と、ネットワーク管理装置が接続されるネットワーク管理システムの一実施例である。以下、
図1〜
図9を用いて、本実施例のネットワーク構成、パケット中継装置の構成、ネットワーク管理システムの構成、パケット中継装置の情報を取得する手順、及び計算機の位置を推定する手順を順次説明する。
【0016】
図1は、実施例1のネットワーク管理システムを示す図である。
図1に示すネットワークは、インターネット60に3台のパケット中継装置10a、10b、10c、4台の物理計算機30a、30b、30c,30d、およびネットワーク管理装置50がイーサネット(登録商標)ケーブルによって連結する構成となっている。各装置には,IPアドレスが割り当てられており、IPアドレスを指定することによって装置の場所を特定する。
【0017】
各パケット中継装置10a、10b、10c は、自身を仮想的に複数台の装置に分割できる機能、或いは仮想的に複数のルーティングテーブルを動作できる機能を有しており、パケット中継装置10aでは、仮想パケット中継装置20a,20b,20c が動作している。ネットワーク管理装置50が,各仮想パケット中継装置の設定,および情報参照をする際,仮想パケット中継装置を識別するための識別子が必要である。図では, 仮想パケット中継装置20a,20b,20cに,ぞれぞれ,識別子1,2,3が付与されており,ネットワーク管理装置50は、この識別子を指定することで,所望の仮想パケット中継装置を設定および情報参照する。
【0018】
仮想パケット中継装置を動作させることで、1つの物理ネットワーク上に仮想的に複数のネットワークを構築できる。図の場合,仮想パケット中継装置20a、20b、20cは,それぞれ別の仮想ネットワークを構築しており,以降それらを仮想ネットワークA,仮想ネットワークB,仮想ネットワークCと呼ぶことにする。
【0019】
仮想ネットワークA内には,VLAN(Virtual Local Area Network)10,11が設定されており,パケット中継装置10bが接続している。パケット中継装置10bには,物理計算機30a、30bが接続しているが,VLAN10と同じサブネットワークを利用しているのは仮想計算機40aのみであり,仮想計算機40aのみが仮想ネットワークA内に含まれる。
【0020】
仮想ネットワークB内には,VLAN20が設定されており,パケット中継装置10b,10cが接続している。パケット中継装置10b,10cには,それぞれ物理計算機30a,30b、30c,30dが接続しているが,VLAN20と同じサブネットワークを利用しているのは物理計算機30b,仮想計算機40b, 40cであることから,これらの計算機が仮想ネットワークB内に含まれる。
【0021】
仮想ネットワークC内には,VLAN30,31が設定されており,パケット中継装置10cが接続している。パケット中継装置10cには,物理計算機30dが接続しているが,VLAN30と同じサブネットワークを利用しているのは物理計算機30dのみであることから,物理計算機30dのみが仮想ネットワークC内に含まれる。
【0022】
以上のような仮想ネットワークが構築されていた場合,その構成を物理的な配線から読み取るのは難しい。また,仮想計算機が接続する仮想ネットワーク,およびその場所を,物理的な配線から読み取るのは難しい。以下、仮想ネットワークが構築されている場合に、そのネットワーク構成を特定し,また各種の計算機が所属する仮想ネットワーク,およびその位置を推定し,ネットワーク管理者に提示できるネットワーク管理方式について詳細に説明する。
【0023】
なお、ネットワークの構成や、パケット中継装置10内の仮想パケット中継装置20の数,物理計算機30内の仮想計算機40の数は、
図1に示した例に限らず、適宜、他の態様とすることが可能である。
【0024】
図2は、実施例1のパケット中継装置10の概略構成を示す図である。
図1のパケット中継装置10a、10b、10cに対応するパケット中継装置10の構成は、複数のネットワークインタフェースモジュール11a、11bと、スイッチングモジュール12と、制御モジュール13を備えている。
【0025】
ネットワークインタフェースモジュール11a、11bは、複数のパケット送受信ポート14a、14b、14c、14dと、コントローラ15a、15bと、メモリ16a、16bとを備えている。各パケット送受信ポート14には、イーサネットケーブルが物理的に接続する。各コントローラ15は、各パケット送受信ポート14から受信したパケットを解析して、そのパケットの宛先を識別する。宛先が他装置宛であった場合、送信先のネットワークインタフェースモジュール11、および送信先のパケット送受信ポート14を特定し,スイッチングモジュール12へ転送する。一方、宛先が自装置宛であった場合、制御モジュール13を宛先として特定し,スイッチングモジュール12へ転送する。
【0026】
以上の処理をする際,ネットワークインタフェースモジュール11は,それぞれのパケットがどの装置から送られて来たのかを把握するため,パケットに記載されている送信元MAC(Media Access Control)アドレスを,そのパケットを受信した送受信ポート番号とともに記録する。メモリ16a、16bは、パケット送受信ポート14を通じて送受信されるパケットが一時的に記憶されるバッファとして機能する。
【0027】
スイッチングモジュール12は、パケットを受信すると,各パケットに対して各コントローラ15が指示した命令に従い,パケットをネットワークインタフェースモジュール11,または制御モジュール13へ送信するためのスイッチである。
【0028】
制御モジュール13は、メモリ16cとCPU(Central Processing Unit)17aを備えている。メモリ16cにはソフトウェア処理部18の各種のプログラムが記憶されており、CPU17は、記憶されたプログラムを実行することで、ソフトウェア処理部18として機能する。
【0029】
ソフトウェア処理部18には、パケット送受信部19、装置情報管理部21、運用管理部23が存在する。パケット送受信部19は、自装置宛てのパケットの受信や、ソフトウェア処理部18内で作成された、他装置宛てのパケットの送信を司る。自装置宛てのパケットを受信し、そのパケットが
図1に示したネットワーク管理装置50から送られてきた設定・情報参照要求であった場合、そのパケットを運用管理部23へ送り届ける。一方、ソフトウェア処理部18内部からのパケットを受信し、そのパケットが運用管理部23から送られてきたパケットであった場合、そのパケットを所望のネットワーク管理装置50へ向けて送信する。
【0030】
運用管理部23は、ネットワーク管理装置50から送られて来た設定・情報参照要求をパケット送受信部19経由で受信すると、受信した設定・情報参照要求を解析する。設定・情報参照要求の内容は、自身の動作に関する種々の項目であり、例えば、仮想的な領域の作成や削除、VLANの情報参照などである。運用管理部23は、設定・情報参照要求を解析すると、装置情報管理部21に設定・情報参照を要求する。
【0031】
装置情報管理部21は、その内部にコンフィグレーション24,およびMAC学習テーブル25を有す。コンフィグレーション24には、パケット中継装置全体の設定・状態情報が記録されており、例えば、パケット中継装置10で動作している各仮想パケット中継装置の設定・状態情報、各VLANの設定・状態情報が記録されている。また,MAC学習テーブル25には,ネットワークインタフェースモジュール11で学習した送信元MACアドレスが,パケット送受信ポート番号とともに記録されている。例えば,パケット中継装置10bの場合,仮想計算機40bのMACアドレス「cc:dd…」が,パケット送受信ポート番号「0/2」とともに記録されている。装置情報管理部21は,運用管理部23が要求した設定・情報参照要求に基づいて,コンフィグレーション23やMAC学習テーブル25を設定・参照し,結果を運用管理部23に返却する。なお、本明細書において、コンフィグレーション、MAC学習テーブルは、
図2に示すような情報の記録領域、あるいは各記憶領域に記録された情報自身を意味するものとする。
【0032】
図3は、実施例1のネットワーク管理装置50の概略構成を示す図である。ネットワーク管理装置50は、汎用のコンピュータで動作し,パケット送受信ポート14e、ハードディスク31、メモリ16d、CPU17b 等を備えている。ハードディスク31には、ソフトウェア処理部32のプログラムが記憶されており、CPU17b は、そのプログラムを実行することで、ソフトウェア処理部32、即ちパケット送受信部33やネットワーク管理部34として機能する処理部である。パケット送受信部33は、パケット送受信ポート14eを通じたパケットの送受信を司る。43、44、45は、それぞれ、ネットワーク管理装置50に付属する表示装置、キーボード、マウスである。
【0033】
ネットワーク管理部34は、パケット中継装置10を管理するためのフロントエンドとして動作するアプリケーションであり、パケット中継装置情報取得部35と仮想ネットワーク構成管理部36と計算機位置管理部37とユーザインタフェース部38と仮想ネットワーク構成テーブル39とMAC学習データベース41と変換MAC学習データベース42とを備えている。なお、仮想ネットワーク構成テーブル39とMAC学習データベース41と変換MAC学習データベース42は、記憶部であるメモリ16dに蓄積、記憶される。
【0034】
パケット中継装置情報取得部35は、仮想ネットワーク構成管理部36,および計算機位置管理部37の要求に応じて,情報取得要求メッセージを作成し,パケット中継装置10に送信する。情報取得要求の内容は、例えば、パケット中継装置のコンフィグレーション、パケット中継装置が学習したMACアドレスの情報などである。情報を取得する処理の詳細については後述する。パケット中継装置情報取得部35は、所望の情報を取得すると,要求元である仮想ネットワーク構成管理部36,あるいは計算機位置管理部37へ転送する。
【0035】
仮想ネットワーク構成管理部36は、パケット中継装置情報取得部35を介して得られた各パケット中継装置のコンフィグレーションから,仮想ネットワークの構成に関する情報を抽出し,仮想ネットワーク構成テーブル39を作成する。この仮想ネットワーク構成テーブル39により,各仮想ネットワーク全体の接続関係が明らかとなり,その構成の特定が可能となる。特定する処理の詳細については後述する。ユーザインタフェース部38は,例えば表示装置43を用いて特定した各仮想ネットワークの構成を提示可能であり,これによりネットワーク管理者は,各仮想ネットワークの構成を確認できる。
【0036】
一方、計算機位置管理部37は、パケット中継装置情報取得部35を介して、管理対象の全パケット中継装置のMAC学習テーブル25を転送履歴情報として取得し,MAC学習データベース41を作成する。また、転送履歴情報を記録したMAC学習テーブル41の内容を、パケット送受信ポート毎に整列させた、変換MAC学習データベース42を作成する。これらの情報により,各仮想ネットワークに接続する計算機の特定と,その計算機の位置を推定できるようになる。推定する処理の詳細については後述する。ユーザインタフェース部38は,例えば表示装置43を用いて推定した計算機の位置を提示可能であり,これによりネットワーク管理者は,各仮想ネットワークに接続する計算機の位置を確認できる。
【0037】
ユーザインタフェース部38は、パケット中継装置を管理するためのGUI(Graphical User Interface)を表示装置43に表示し、ネットワーク管理者がキーボード44やマウス45を操作することによって、種々の指示を受け付ける。
【0038】
図4は、実施例1のネットワーク管理装置50の表示装置43に表示されるGUIの一例であるネットワーク管理システムを示す図である。このネットワーク管理システムのGUI430の左側のペイン431には、ネットワーク管理装置50が管理している全仮想ネットワークが一覧で表示される。右側のペイン432には,左側のペイン431で選択された仮想ネットワークの構成(ネットワークトポロジ)が、パケット中継装置10や計算機30、40やイーサネット回線を表すアイコンによって描画されている。
【0039】
図4の場合、左側のペイン431において、仮想ネットワークBが選択され、その構成がネットワーク管理装置50によって推定された結果、右側のペイン432に、パケット中継装置10aとパケット中継装置10bとパケット中継装置10cがVLAN20で繋がり,パケット中継装置10bの先に物理計算機30aと40b,パケット中継装置10cの先に物理計算機40cが繋がる構成として表示される。推定する処理の詳細については後述する。
【0040】
図5は、本実施例における、ネットワーク管理装置50がパケット中継装置10に情報取得要求をする際の処理の流れを示すシーケンス図である。各パケット中継装置10は,パケットを受信するとその送信元MACアドレスを参照し,そのパケットを受信したパケット送受信ポート番号とともにMAC学習テーブル25に記録する。
【0041】
図6は、パケット中継装置10aのMAC学習テーブル25を示す図である。701〜705は各エントリを示す。他のテーブルにおいても同様にテーブル中の数番は各エントリを示すものとする。
図5の場合,エントリ701から、MACアドレス「aa:bb..」を送信元とするパケットが,パケット送受信ポート番号「0/2」で受信されていることが分かる。
図1の構成においては、MACアドレス「aa:bb..」は、送信元が仮想計算機40aであることを示している。
【0042】
このときパケット中継装置10は、付加情報として、パケット送受信ポート番号に関連付くVLAN識別子を記録する。また、パケット中継装置10は、MACアドレスを学習するたびにエージングタイマ(MACアドレスをメモリから消去するまでの時間)を更新しており、付加情報として,所定時間内のエージングタイマの更新回数も記録する。
図6の場合,装置情報管理部21は、内部のMAC学習テーブル25の上記エントリ701に,付加情報としてVLAN識別子「10」,エージングタイマ更新回数「5」を記録している(
図5中のステップS101)。
【0043】
図5に示すように、ネットワーク管理装置50内の仮想ネットワーク構成管理部36は、定期的にパケット中継装置10に対して,コンフィグレーション情報の取得要求を発行する(ステップS102)。取得要求は,パケット中継装置10内の装置情報管理部21に届けられ,装置情報管理部21は,コンフィグレーション24の内容を記したメッセージを作成し,取得応答をネットワーク管理装置50に返信する(ステップS103)。
【0044】
仮想ネットワーク構成管理部36は、取得応答によりパケット中継装置のコンフィグレーションを受信すると、そこから仮想パケット中継装置識別子, VLAN識別子, パケット送受信ポート番号の情報を抽出し,仮想ネットワーク構成テーブルに記載する(ステップS104)。
図7は、作成された仮想ネットワーク構成テーブル39を示す図である。同図において明らかなように、仮想ネットワーク構成テーブル39は、仮想ネットワーク識別子A,B,Cに対応し、エントリ101〜110が記録される。
【0045】
ネットワーク管理装置50内の計算機位置管理部37も,パケット中継装置情報取得部35を介し、定期的にパケット中継装置10に対して,MAC学習テーブル25の取得要求を発行する(ステップS105)。取得要求は,パケット中継装置10内の装置情報管理部21に届けられ,装置情報管理部21は,MAC学習テーブル25の内容を記したメッセージを作成し,取得応答をネットワーク管理装置50に返信する(ステップS106)。
【0046】
計算機位置管理部37は,取得応答によりMAC学習テーブル25の情報を受信すると,そこからMACアドレス,それを学習したパケット送受信ポート番号、およびそのパケット送受信ポートに関連付くVLAN識別子,およびエージングタイマ更新回数を抽出し,MAC学習データベース41に記載する(ステップS107)。
図8は,作成されたMAC学習データベース41を示す図である。同図において、MAC学習データベース41は、パケット中継装置10a、10b、10cに対応し、エントリ201〜215が記録されている。
【0047】
更に、計算機位置管理部37は,
図8のMAC学習データベース41を、各パケット中継装置10のパケット送受信ポート毎に整列させた、変換MAC学習データベース42を作成する(ステップS108)。
図9は,作成された変換MAC学習データベース42を示す図である。パケット中継装置10a、10b、10cのポート番号に対応し、エントリ301〜316が記録される。ネットワーク管理装置50の計算機位置管理部37は,
図7の仮想ネットワーク構成テーブル39,
図8のMAC学習データベース41,
図9の変換MAC学習データベース42を参照することで,計算機が所属する仮想ネットワークと,仮想ネットワークにおける位置を推定する。推定する処理の詳細については後述する。
【0048】
以上、ネットワーク管理装置50がパケット中継装置10の情報を取得する手順を説明した。続いて、上記で取得した情報をもとに、本実施例のネットワーク管理装置50が、仮想ネットワークの構成を特定し、計算機の仮想ネットワークにおける位置を推定する手順について説明する。
【0049】
図10は、実施例1におけるネットワーク管理装置50内の計算機位置管理部37が、計算機の所属する仮想ネットワークを特定する流れを示すフローチャートである。計算機位置管理部37は,はじめに
図8のMAC学習テーブル41を参照し(401),各MACアドレスとともに記載されているVLAN識別子を取得する(403)。計算機位置管理部37は,取得したVLAN識別子をキーとして,
図7の仮想ネットワーク構成テーブル39を参照し(404),VLAN識別子に関連付く仮想ネットワーク識別子を取得する(405)。
【0050】
例えば,
図8のMAC学習テーブル41を参照し,
図1の構成の場合、仮想計算機40bのMACアドレス「cc:dd…」のエントリを学習すると,そのMACアドレスに関連付くVLAN識別子は「20」である(エントリ202,207,211)。このVLAN識別子「20」をキーとして,
図7の仮想ネットワーク構成テーブル39を参照すると,VLAN識別子「20」に関連付く仮想ネットワーク識別子は仮想ネットワーク「B」である(エントリ104〜107)。これにより,MACアドレス「cc:dd…」を持つ計算機は,仮想ネットワークBに所属することを特定できる。
【0051】
次に、
図11は,ネットワーク管理装置50内の計算機位置管理部37が,計算機の位置を推定する流れを示すフローチャートである。計算機位置管理部37は,
図8のMAC学習テーブル41を参照し(501),各MACアドレスとともに記載されているパケット中継装置名とパケット送受信ポート番号とエージングタイマ更新回数の組み合わせを取得する(503)。本実施例の計算機位置管理部37は,エージングタイマ更新回数の最も大きいパケット中継装置名,およびパケット送受信ポート番号を選出し(504),そのパケット中継装置を、計算機に最も近いパケット中継装置と推定する(505)。
【0052】
例えば,
図8のMAC学習テーブル41を参照し,MACアドレス「cc:dd…」のエントリを学習すると,そのMACアドレスを学習したパケット中継装置,パケット送受信ポート番号、およびエージングタイマ更新回数の組み合わせは,次の3つである。1つ目が、パケット中継装置10a、パケット送受信ポート番号「0/2」、エージングタイマ更新回数5回の組み合わせ(エントリ202)、2つ目が、パケット中継装置10b、パケット送受信ポート番号「0/2」、エージングタイマ更新回数10回の組み合わせ(エントリ207),3つ目が、パケット中継装置10c、パケット送受信ポート番号「0/1」、エージングタイマ更新回数1回の組み合わせ(エントリ211)である。
【0053】
以上の中でエージングタイマ更新回数が最も大きいパケット送受信ポートを持つパケット中継装置が,MACアドレス「cc:dd…」を持つ計算機に最も近いと言って良い。従って,MACアドレス「cc:dd…」を持つ仮想計算機40bは,MACアドレスのエージングタイマを10回更新しているパケット中継装置10bのパケット送受信ポート番号「0/2」に,最も近いと推定する。
【0054】
図10,
図11に示した処理により,MACアドレス「cc:dd…」を持つ仮想計算機は,仮想ネットワークBに所属することが特定でき,パケット中継装置10bのパケット送受信ポート番号「0/2」の先に存在することが推定できる。計算機位置管理部37が,この情報をもとに計算機の位置を表示装置43に描画するようユーザインタフェース部を制御することで,ネットワーク管理者は,計算機の仮想ネットワークにおける位置を容易に確認できる。
【0055】
本実施例においては、仮想ネットワークの構成を特定でき、計算機の仮想ネットワークにおける位置を推定できることで、例えばある仮想ネットワークにループが発生したときに、そのループを発生させている仮想ネットワークの構成を確認し、またループの影響が及ぶ計算機を確認することができる。計算機を確認できることで、ネットワーク管理者のみならず、それらの計算機の使用者にアラームを通知することも可能である。
【0056】
なお、以上の計算機の位置を推定する手順の説明を、MACアドレス「cc:dd…」を持つ仮想計算機40bを例示して説明したが、MACアドレス「gg:hh…」を持つ仮想計算機40cやMACアドレス「ee:ff…」を持つ物理計算機30b等においても同様に各計算機の位置を推定することができる。
【実施例2】
【0057】
次に、第2の実施例の仮想ネットワーク管理システムを
図10、
図12を用いて説明する。
図10は、実施例1でも説明したように、ネットワーク管理装置50内の計算機位置管理部37が、計算機の所属する仮想ネットワークを特定する流れを示すフローチャートである。
【0058】
計算機位置管理部37は,はじめに
図8のMAC学習テーブル41を参照し(401),各MACアドレスとともに記載されているVLAN識別子を取得する(403)。計算機位置管理部37は,取得したVLAN識別子をキーとして,
図7の仮想ネットワーク構成テーブル39を参照し(404),VLAN識別子に関連付く仮想ネットワーク識別子を取得する(405)。
【0059】
例えば,
図8のMAC学習テーブル41を参照し,MACアドレス「cc:dd…」のエントリを学習すると,そのMACアドレスに関連付くVLAN識別子は「20」である(202,207,211)。このVLAN識別子をキーとして,
図7の仮想ネットワーク構成テーブル39を参照すると,VLAN識別子「20」に関連付く仮想ネットワーク識別子は仮想ネットワーク「B」である(104〜107)。これにより,MACアドレス「cc:dd…」を持つ計算機は,仮想ネットワークBに所属することを特定できる。
【0060】
図12は,実施例2のネットワーク管理装置50内の計算機位置管理部37が,計算機の位置を推定する流れを示すフローチャートである。本実施例の場合、計算機位置管理部37は,
図8のMAC学習テーブル41を参照し(601),各MACアドレスとともに記載されているパケット中継装置名とパケット送受信ポート番号の組み合わせを取得する(603)。
【0061】
計算機位置管理部37は,取得したパケット中継装置名とパケット送受信ポート番号の組み合わせを指定して,
図9の変換MAC学習データベース42を参照し(605),パケット送受信ポート番号で学習したMACアドレスの数を取得する(606)。計算機位置管理部37は,学習したMACアドレスの数が最も小さいパケット中継装置名,およびパケット送受信ポート番号の組み合わせを選出し(607),それを計算機に最も近いパケット中継装置と推定する(608)。
【0062】
例えば,
図8のMAC学習テーブル41を参照し,MACアドレス「cc:dd…」のエントリを学習すると,そのMACアドレスを学習したパケット中継装置名,およびそのパケット送受信ポート番号の組み合わせは、次の3つである。1つ目は,パケット中継装置10aのパケット送受信ポート番号「0/2」(202),2つ目は、パケット中継装置10bのパケット送受信ポート番号「0/2」(207),3つ目は、パケット中継装置10cのパケット送受信ポート番号「0/1」(211)である。これらの組み合わせを指定して,
図9の変換MAC学習データベース42を参照すると,それぞれのパケット送受信ポートで学んだMACアドレスの数は,次のようになる。
【0063】
パケット中継装置10aのパケット送受信ポート番号「0/2」は、仮想計算機40a,仮想計算機40b,物理計算機30bからパケットを受信した結果、3つのMACアドレスを学んでいる(302,303,304)。パケット中継装置10bのパケット送受信ポート番号「0/2」は、仮想計算機40a,仮想計算機40bからパケットを受信した結果、2つのMACアドレスを学んでいる(310,311)。パケット中継装置10cのパケット送受信ポート番号「0/1」は、仮想計算機40b,物理計算機30b,およびパケット中継装置10aからパケットを受信した結果、3つのMACアドレスを学んでいる(312、313,314)。パケット中継装置10aのMACアドレスを学んでいる理由は、パケット中継装置10cが属するサブネットと異なるサブネットに属する装置から送られたパケットが,パケット中継装置10aに到達し,ルーティングされた結果,パケット中継装置10cに到達したからである。
【0064】
以上の中で,学んだMACアドレスの数が最も小さいパケット送受信ポートを持つパケット中継装置が,MACアドレス「cc:dd…」を持つ計算機に最も近いと言って良い。従って,MACアドレス「cc:dd…」を持つ仮想計算機40bは,MACアドレスを2つ学んでいるパケット中継装置10bのパケット送受信ポート番号「0/2」に,最も近いと推定する。
【0065】
実施例2においては、
図10,
図12に示した処理により,MACアドレス「cc:dd…」を持つ計算機は,仮想ネットワークBに所属することが特定でき,パケット中継装置10bのパケット送受信ポート番号「0/2」の先に存在すること推定できる。計算機位置管理部37が,この情報をもとに計算機の位置を表示装置43に描画することで,ネットワーク管理者は,計算機の仮想ネットワークにおける位置を容易に確認できる。
【0066】
仮想ネットワークの構成を特定でき、計算機の仮想ネットワークにおける位置を推定できることで、例えばある仮想ネットワークにループが発生したときに、そのループを発生させている仮想ネットワークの構成を確認し、またループの影響が及ぶ計算機を確認することができる。計算機を確認できることで、ネットワーク管理者のみならず、それらの計算機の使用者にアラームを通知することも可能である。
【実施例3】
【0067】
次に、第3の実施例である、ネットワークの管理機能を備えたパケット中継装置を用いた仮想ネットワーク管理システムの実施例を
図13、
図14を用いて説明する。
図13は、ネットワークの管理機能を備えたパケット中継装置である,ネットワーク管理パケット中継装置70の概略構成を示す図である。
【0068】
まず、ネットワーク管理パケット中継装置70は、上述したパケット中継装置10と同様に,複数のネットワークインタフェースモジュール11と、スイッチングモジュール12と、制御モジュール13を備えている。また、制御モジュール13内のソフトウェア処理部18は、パケット中継装置10と同様にパケット送受信部19、装置情報管理部21,運用管理部23を備えている。
【0069】
そして、本実施例のネットワーク管理パケット中継装置70は、更に,実施例1のネットワーク管理装置50が備えていたネットワーク管理部34の機能を備えている。このネットワーク管理部34は、ネットワーク管理パケット中継装置70自身、およびパケット中継装置10を管理するためのフロントエンドとして動作するアプリケーションであり、パケット中継装置情報取得部35と仮想ネットワーク構成管理部36と計算機位置管理部37とユーザインタフェース部38と仮想ネットワーク構成テーブル39とMAC学習データベース41と変換MAC学習データベース42とを備えている。
【0070】
本実施例において、パケット中継装置情報取得部35は、仮想ネットワーク構成管理部36,および計算機位置管理部37の要求に応じて,情報取得要求メッセージを作成し,自身の運用管理部23、およびネットワークに接続された他のパケット中継装置10の運用管理部23に送信する。情報取得要求の内容は、例えば、パケット中継装置10のコンフィグレーション、パケット中継装置10が学習したMACアドレスの情報などである。情報を取得する処理の詳細については後述する。パケット中継装置情報取得部35は、所望の情報を取得すると,仮想ネットワーク構成管理部36,および計算機位置管理部37へ転送する。
【0071】
仮想ネットワーク構成管理部36は、パケット中継装置情報取得部35を介して得られた自身のコンフィグレーションおよび各パケット中継装置10のコンフィグレーションから,仮想ネットワークの構成に関する情報を抽出し,仮想ネットワーク構成テーブル39を作成する。この仮想ネットワーク構成テーブル39により,各仮想ネットワーク全体の接続関係が明らかとなり,その構成の特定が可能となる。ユーザインタフェース部38は,特定した各仮想ネットワークの構成を提示可能であり,これによりネットワーク管理者は,各仮想ネットワークの構成を確認できる。
【0072】
一方の計算機位置管理部37は、パケット中継装置情報取得部35を介して、自身のMAC学習テーブル25および管理対象の全パケット中継装置10のMAC学習テーブル25を取得し,MAC学習データベース41を作成する。また、MAC学習テーブル41の内容を、パケット送受信ポート毎に整列させた、変換MAC学習データベース42を作成する。これらの情報により,各仮想ネットワークに接続する計算機の特定と,その計算機の位置を推定できるようになる。ユーザインタフェース部38は,推定した計算機の位置を提示可能であり,これによりネットワーク管理者は,各仮想ネットワークに接続する計算機の位置を確認できる。
【0073】
本実施例においては、ユーザインタフェース部38は、パケット中継装置を管理するためのGUI(グラフィカルユーザインタフェース)を表示装置46に表示し、ネットワーク管理者からの種々の指示を受け付ける。
【0074】
図14は、実施例3のネットワーク管理パケット中継装置70が,自身およびパケット中継装置10に情報取得要求をする際の処理の流れを示すシーケンス図である。図示の都合上、パケット中継装置10に装置情報管理部21が存在するように示してあるが、本実施例においては、
図13に示した、ネットワーク管理パケット中継装置70内部の装置情報管理部21との間で同様の要求・応答処理が実行されることは言うまでもない。
【0075】
装置情報管理部21は、パケットを受信するとその送信元MACアドレスを参照し,そのパケットを受信したパケット送受信ポート番号とともにMAC学習テーブル25に記録している。
図6は、パケット中継装置10aのMAC学習テーブル25を示す図である。図の場合,MACアドレス「aa:bb…」を送信元とするパケットが,パケット送受信ポート番号「0/2」で受信されていることが分かる(701)。このときパケット中継装置10は、付加情報として、パケット送受信ポート番号に関連付くVLAN識別子を記録する。更にパケット中継装置10は、MACアドレスを学習するたびにエージングタイマ(MACアドレスをメモリから消去するまでの時間)を更新しており、付加情報として,所定時間内のエージングタイマの更新回数も記録する。図の場合,上記エントリに,付加情報としてVLAN識別子「10」,エージングタイマ更新回数「5」を記録している(ステップS101)。
ネットワーク管理パケット中継装置70内の仮想ネットワーク構成管理部36は、定期的に自身およびパケット中継装置10に対して,コンフィグレーション情報の取得要求を発行する(ステップS102)。取得要求は,パケット中継装置10内の装置情報管理部21に届けられ,装置情報管理部21は,コンフィグレーション24の内容を記したメッセージを作成し,取得応答をネットワーク管理パケット中継装置70に返信する(ステップS103)。
仮想ネットワーク構成管理部36は、取得応答によりパケット中継装置のコンフィグレーションを受信すると、そこから仮想パケット中継装置識別子, VLAN識別子, パケット送受信ポート番号の情報を抽出し,仮想ネットワーク構成テーブルに記載する(ステップS104)。
図7は、作成された仮想ネットワーク構成テーブル39を示す図である。
【0076】
ネットワーク管理装置50内の計算機位置管理部37も,定期的に自身およびパケット中継装置10に対して,MAC学習テーブル25の取得要求を発行する(ステップS105)。取得要求は,パケット中継装置10内の装置情報管理部21に届けられ,装置情報管理部21は,MAC学習テーブル25の内容を記したメッセージを作成し,取得応答をネットワーク管理パケット中継装置70に返信する(ステップS106)。
【0077】
計算機位置管理部37は,取得応答によりMAC学習テーブル25の情報を受信すると,そこからMACアドレス,それを学習したパケット送受信ポート番号、およびそのパケット送受信ポートに関連付くVLAN識別子,およびエージングタイマ更新回数を抽出し,MAC学習データベース41に記載する(ステップS107)。
図8は,作成されたMAC学習データベース41を示す図である。
【0078】
計算機位置管理部37は,
図8のMAC学習データベース41を、パケット送受信ポート毎に整列させた、変換MAC学習データベース42を作成する(ステップS108)。
図9は,作成された変換MAC学習データベース42を示す図である。
【0079】
計算機位置管理部37は,
図7の仮想ネットワーク構成テーブル39,
図8のMAC学習データベース41,
図9の変換MAC学習データベース42を参照することで,計算機が所属する仮想ネットワークと,仮想ネットワークにおける位置を推定する。
以上、実施例3として、ネットワーク管理パケット中継装置70が、ネットワークに繋がれた他のパケット中継装置10の情報を取得する手順を説明した。上記で取得した情報をもとに仮想ネットワークの構成を特定し、計算機の仮想ネットワークにおける位置を推定する手順については,実施例1,2に準ずる。実施例3のネットワーク管理システムにおいては、ネットワーク上に専用のネットワーク管理装置を配置する必要がなく、システムのハードウェア構成を軽量化できるという効果がある。
【0080】
以上、本発明の種々の実施例を説明してきたが、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることが可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。更に、本発明は、上述したパケット中継装置およびネットワーク管理システムとしての構成のほか、ネットワーク管理方法や、コンピュータプログラムとしても構成することができる。
【0081】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、それぞれの機能を実現するプログラムを実行することによりソフトウェアで実現する場合を例示して説明したが、各機能を実現するプログラム、テーブル、ファイル等の情報はメモリのみならず、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体におくことができるし、必要に応じてネットワーク等を介してダウンロード、インストロールすることも可能である。
【0082】
なお、以上説明した本明細書の記載によれば、特許請求の範囲に記載の各請求項の発明に加え、種々の発明を包含しており、その例を以下に示す。
【0083】
複数のパケット中継装置を管理するネットワーク管理システムであって、
ネットワークを介して前記パケット中継装置の情報を参照するパケット中継装置情報取得部と、取得して得られた情報から仮想パケット中継装置識別子、VLAN識別子、パケット送受信ポート番号を抽出し、仮想ネットワークの構成を管理する仮想ネットワーク構成管理部と、前記仮想ネットワーク構成を記憶する仮想ネットワーク構成テーブルと、取得して得られた情報からMACアドレス、VLAN識別子、パケット送受信ポート番号を抽出し、計算機の位置を管理する計算機位置管理部と、前記MACアドレス、VLAN識別子、パケット送受信ポート番号の一覧を記憶するMAC学習データベースを備え、
前記MAC学習データベース内のMACアドレス毎に、対で記録されているVLAN識別子を検索キーとして、仮想ネットワーク構成テーブルを参照し、仮想ネットワーク識別子を検索することで、MACアドレスを有する計算機の所属する仮想ネットワークを特定し、またMACアドレスを検索キーとしてMAC学習テーブルを参照し、エージングタイマ更新回数が最も多いパケット中継装置を検索することで、計算機に近接するパケット中継装置を推定し、仮想ネットワークの構成と計算機の仮想ネットワーク内における位置をネットワーク管理システムの表示装置に画面描画するネットワーク管理システムが提供される。
【0084】
また、前記ネットワーク管理システムは、前記MACアドレス、VLAN識別子、パケット送受信ポート番号の一覧を記憶するMAC学習データベース、およびMAC学習テーブルをパケット送受信ポート毎に整列させた変換MAC学習データベースを備え、前記MAC学習データベース内のMACアドレス毎に、対で記録されているVLAN識別子を検索キーとして、仮想ネットワーク構成テーブルを参照し、仮想ネットワーク識別子を検索することで、MACアドレスを有する計算機の所属する仮想ネットワークを特定し、また対で記録されているパケット送受信ポート番号を検索キーとして変換MAC学習データベースを参照し、学習したMACアドレスの数が最も少ないパケット中継装置を検索することで、計算機に近接するパケット中継装置を推定し、仮想ネットワークの構成と計算機の仮想ネットワーク内における位置をネットワーク管理システムの表示装置に画面描画するネットワーク管理システムが提供される。
【0085】
更に、複数のパケット中継装置を管理するネットワーク管理計算機であって、
ネットワークを介して前記パケット中継装置の情報を参照するパケット中継装置情報取得部と、取得して得られた情報から仮想パケット中継装置識別子、VLAN識別子、パケット送受信ポート番号を抽出し、仮想ネットワークの構成を管理する仮想ネットワーク構成管理部と、前記仮想ネットワーク構成を記憶する仮想ネットワーク構成テーブルと、取得して得られた情報からMACアドレス、VLAN識別子、パケット送受信ポート番号を抽出し、計算機の位置を管理する計算機位置管理部と、前記MACアドレス、VLAN識別子、パケット送受信ポート番号の一覧を記憶するMAC学習データベースを備え、
前記MAC学習データベース内のMACアドレス毎に、対で記録されているVLAN識別子を検索キーとして、仮想ネットワーク構成テーブルを参照し、仮想ネットワーク識別子を検索することで、MACアドレスを有する計算機の所属する仮想ネットワークを特定し、またMACアドレスを検索キーとしてMAC学習テーブルを参照し、エージングタイマ更新回数が最も多いパケット中継装置を検索することで、計算機に近接するパケット中継装置を推定し、仮想ネットワークの構成と計算機の仮想ネットワーク内における位置をネットワーク管理計算機の表示装置に画面描画するネットワーク管理計算機が提供される。
【0086】
また更に、前記ネットワーク管理計算機は、
前記MACアドレス、VLAN識別子、パケット送受信ポート番号の一覧を記憶するMAC学習データベース、およびMAC学習テーブルをパケット送受信ポート毎に整列させた変換MAC学習データベースを備え、前記MAC学習データベース内のMACアドレス毎に、対で記録されているVLAN識別子を検索キーとして、仮想ネットワーク構成テーブルを参照し、仮想ネットワーク識別子を検索することで、MACアドレスを有する計算機の所属する仮想ネットワークを特定し、また対で記録されているパケット送受信ポート番号を検索キーとして変換MAC学習データベースを参照し、学習したMACアドレスの数が最も少ないパケット中継装置を検索することで、計算機に近接するパケット中継装置を推定し、仮想ネットワークの構成と計算機の仮想ネットワーク内における位置をネットワーク管理計算機の表示装置に画面描画するネットワーク管理計算機が提供される。