(第1実施形態)
第1実施形態について図1〜図11を用いて説明する。
図1は、本発明の第1実施形態のネットワーク管理システムのネットワーク構成図である。
ネットワーク管理システムは、複数のパケット中継装置10a〜10d(以下、総称してパケット中継装置10という)、及び管理計算機30を備える。複数のパケット中継装置10及び管理計算機30は、インターネット40に接続される。
複数のパケット中継装置10及び管理計算機30は、イーサネット(登録商標)ケーブルによって接続される。また、複数のパケット中継装置10及び管理計算機30には、IPアドレスが割り当てられ、IPアドレスによって各装置の場所の特定が可能となる。
図1では、パケット中継装置10aとパケット中継装置10bとが相互に接続され、パケット中継装置10cはパケット中継装置10aに接続され、パケット中継装置10dはパケット中継装置10bに接続される。
パケット中継装置10は、自身に仮想的な仮想パケット中継装置20a〜20d(以下、総称して、仮想パケット中継装置20という)を生成する。仮想パケット中継装置20は、パケット中継装置10を複数台の装置に分割することによって実現されてもよいし、パケット中継装置10が複数の仮想的なルーティングテーブルを保持することによって実現されてもよい。
図1では、パケット中継装置10a上で仮想パケット中継装置20a及び20bが動作し、パケット中継装置10b上で仮想パケット中継装置20c及び20dが動作し、パケット中継装置10c上で仮想パケット中継装置20eが動作している。
各仮想パケット中継装置20同士が接続されることによって、一つの物理ネットワーク上に仮想的な複数のネットワーク(第1ネットワーク)が構築される。
図1では、仮想パケット中継装置20a、20c、及び20eが接続され、一つの仮想ネットワーク(以下、仮想ネットワークAという)が構築される。具体的には、仮想パケット中継装置20aと仮想パケット中継装置20cとが相互に接続され、仮想パケット中継装置20eは仮想パケット中継装置20aに接続される。
また、図1では、仮想パケット中継装置20b、20d、及びパケット中継装置10dが接続され、一つの仮想ネットワーク(以下、仮想ネットワークBという)が構築される。具体的には、仮想パケット中継装置20bと仮想パケット中継装置20dとが接続され、パケット中継装置10dは、仮想パケット中継装置20dに接続される。
以上によって、図1では、一つの物理ネットワーク上に、二つの仮想ネットワークが構築される。
ネットワーク管理者は、一の仮想ネットワークを一つの物理ネットワークのように運用できる。また、一つの仮想ネットワークには、少なくとも一つ以上の仮想的なネットワーク(第2ネットワーク)が設定可能である。ここで、第2ネットワークは、例えば、仮想パケット中継装置に設定されるVLAN(Virtual Local Area Network)識別子(VLAN ID)によって構築されるVLANであってもよいし、仮想パケット中継装置20とパケット送受信ポート14(図2参照)とが対応付けられることによって構築される仮想的なネットワークであってもよい。
なお、第2ネットワークがVLANである場合について本実施形態で説明し、第2ネットワークが、仮想パケット中継装置20とパケット送受信ポート14とが対応付けられることによって構築される場合については、第2実施形態で説明する。
図1では、仮想ネットワークA内にはVLAN ID10及び100によって識別される二つのVLANが設定される。仮想パケット中継装置20aにはVLAN ID10及び100が設定され、仮想パケット中継装置20cにはVLAN ID10が設定され、仮想パケット中継装置20cにはVLAN ID100が設定される。
また、仮想ネットワークB内にはVLAN ID20及び200によって識別される二つのVLANが設定される。仮想パケット中継装置20bにはVLAN ID20及び200が設定され、仮想パケット中継装置20dにはVLAN ID20及び200が設定され、パケット中継装置10dにはVLAN ID200が設定される。
VLAN IDが設定された仮想パケット中継装置20又はパケット中継装置10は、自身に設定されたVLAN IDを含むパケットのみを受信し、自身に設定されたVLAN IDをパケットに含ませてパケットを送信する。これによって、一つの仮想ネットワークがVLAN IDによって少なくとも一つ以上のVLANに分割される。
管理計算機30は、インターネット40を介してパケット中継装置10にアクセスし、パケット中継装置10に設定された構成情報(図2に示すコンフィグレーション23)を取得し、又はパケット中継装置10の構成情報を設定する。構成情報は、例えば、パケット中継装置10に生成された仮想パケット中継装置20に付与された仮想パケット中継装置識別子、及び、仮想パケット中継装置20に設定されたVLAN IDを含む。
なお、仮想パケット中継装置識別子は、仮想パケット中継装置が生成される場合に付与され、管理計算機30は、仮想パケット中継装置に関する構成情報(VLAN ID)を設定する場合、当該仮想パケット中継装置の仮想パケット中継装置識別子を指定することによって、特定の仮想パケット中継装置を特定する。
仮想ネットワークAを構成する仮想パケット中継装置20aには仮想パケット中継装置識別子100が付与され、仮想ネットワークAを構成する仮想パケット中継装置20cには仮想パケット中継装置識別子100が付与され、仮想ネットワークAを構成する仮想パケット中継装置20eには仮想パケット中継装置識別子200が付与される。
一方、仮想ネットワークBを構成する仮想パケット中継装置20bには仮想パケット中継装置識別子200が付与され、仮想ネットワークBを構成する仮想パケット中継装置20dには仮想パケット中継装置識別子300が付与される。
なお、仮想パケット中継装置識別子は、同一のパケット中継装置10内で一意でなければならず、また、パケット中継装置10に予め設定された付与可能なパケット中継装置識別子でなければならない。
同一の仮想ネットワークを構成する仮想パケット中継装置に同一の仮想パケット中継装置識別子を付与できれば、仮想ネットワークを識別するために仮想パケット中継装置識別子を用いることができるので、最も効率的である。しかし、上述した事情等によって、同一の仮想ネットワークを構成する仮想パケット中継装置に同一の仮想パケット中継装置識別子を付与できない場合がある。
例えば、図1では、仮想ネットワークAを構成する仮想パケット中継装置20a及び20eの仮想パケット中継装置識別子は「100」と「200」とで相違しており、仮想ネットワークBを構成する仮想パケット中継装置20b及び20dの仮想パケット中継装置識別子は「200」と「300」とで相違している。
この場合、仮想パケット中継装置識別子を仮想ネットワークの識別子と用いることはできず、ネットワーク管理者は、仮想ネットワークを識別するための情報を利用できず、VLAN IDを確認しながら、仮想ネットワークの構成を把握することになる。
本実施形態では、仮想ネットワークを構成する仮想パケット中継装置の仮想パケット中継装置識別子が異なる場合であっても、仮想パケット中継装置と当該仮想パケット中継装置によって構成される仮想ネットワークとの関係をネットワーク管理者が容易に把握できるネットワーク管理システムについて詳細に説明する。
また、本実施形態では、新たなパケット中継装置10をある仮想ネットワークに追加し、追加したパケット中継装置10に生成される仮想パケット中継装置20の識別子を自動的に設定するネットワーク管理システムについても説明する。
さらに、ある仮想ネットワークのVLAN IDを設定する場合、当該VLAN IDが既に別の仮想ネットワークに設定されている場合、それを検知し、設定を中止できるネットワーク管理システムについても説明する。
なお、ネットワークの構成、物理ネットワークに構築される仮想ネットワークの数、仮想ネットワークに生成されるVLANの数、及びパケット中継装置10に生成される仮想パケット中継装置20の数は、図1に図示した例に限定されない。
また、管理計算機30は、一つの計算機で実現されてもよく、複数の計算機によって実現されてもよい。さらに、管理計算機30は、一又は複数のパケット中継装置10によって実現されもよい。
図2は、本発明の第1実施形態のパケット中継装置10の構成を示すブロック図である。
パケット中継装置10は、ネットワークインタフェースモジュール11a及び11b(以下、総称してネットワークインタフェースモジュール11)、スイッチングモジュール12、並びに制御モジュール13を備える。
ネットワークインタフェースモジュール11について、ネットワークインタフェースモジュール11aを例に説明する。
ネットワークインタフェースモジュール11aは、パケット送受信ポート14a及び14b(以下、総称してパケット送受信ポート14)、コントローラ15a、並びにメモリ16aを備える。パケット送受信ポート14には、イーサネットケーブルが物理的に接続される。コントローラ15aは、パケット送受信ポート14を介して受信したパケットを解析し、受信したパケットの宛先を特定する。メモリ16aは、パケット送受信ポート14を介して送受信されるパケットが一時的に記憶されるバッファとして機能する。
なお、ネットワークインタフェースモジュール11bは、ネットワークインタフェースモジュール11aと同じ構成であり、パケット送受信ポート14b及び14c、コントローラ15b、並びにメモリ16bを備える。パケット送受信ポート14b及び14cは、パケット送受信ポート14に対応し、コントローラ15bはコントローラ15aに対応し、メモリ16bはメモリ16aに対応する。コントローラ15a及び15bを総称してコントローラ15とする。
コントローラ15は、ネットワークインタフェースモジュール11が受信したパケットの宛先が他の装置宛てであるか否かを判定する。
コントローラ15は、受信したパケットが他の装置宛てであると判定した場合、宛先となる装置とパケットの出力するネットワークインタフェースモジュール11及びパケット送受信ポート14とが対応付けられたアドレステーブルを参照し、受信したパケットを出力するネットワークインタフェースモジュール11及びパケット送受信ポート14を特定する。
そして、コントローラ15は、特定したネットワークインタフェースモジュール11及びパケット送受信ポート14から受信したパケットを転送する。
一方、コントローラ15は、受信したパケットが他の装置宛てでないと判定した場合、つまり、受信したパケットが自装置宛てであると判定した場合、受信したパケットを自装置に備わる制御モジュール13に渡す。
スイッチングモジュール12は、ネットワークインタフェースモジュール11及び制御モジュール13からの指示に基づいて、ネットワークインタフェースモジュール11間、及びネットワークインタフェースモジュール11と制御モジュール13との間の通信路を切り換える。
制御モジュール13は、メモリ16c及びCPU17aを備える。メモリ16cは、ソフトウェア処理部18を実現するためのプログラムを記憶し、CPU17aは、メモリ16cに記憶されたプログラムを実行することによって、ソフトウェア処理部18として機能する。
ソフトウェア処理部18は、パケット送受信部19、コンフィグレーション管理部21、及びパケット中継装置管理部22を備える。
パケット送受信部19は、自装置宛てのパケットの受信、及び、他の装置宛てのパケットの送信の制御を司る。例えば、パケット送受信部19は、自装置宛てのパケットが渡され、当該パケットが管理計算機30から送信された構成情報参照要求(図7参照)又は構成情報設定要求(図9参照)である場合、渡されたパケットをパケット中継装置管理部22に渡す。
一方、パケット送受信部19は、パケット中継装置管理部22からパケットが渡された場合、当該パケットを所望の管理計算機30に転送する。なお、パケット中継装置管理部22から渡されるパケットは、構成情報参照要求に対する構成情報参照応答、又は、構成情報設定要求に対する構成情報設定応答である。
パケット中継装置管理部22は、管理計算機30から送信された構成情報設定要求をパケット送受信部19を介して受信した場合、当該構成情報設定要求を解析し、コンフィグレーション管理部21に構成情報の設定をさせる。なお、構成情報設定要求は、パケット中継装置10の動作に関する種々の項目を設定する要求であり、例えば、仮想パケット中継装置20を新たに生成する要求、仮想パケット中継装置20を削除する要求、VLANを新たに設定する要求、VLANを削除する要求等がある。
コンフィグレーション管理部21は、コンフィグレーション(構成情報)23を保持し、パケット中継装置管理部22に渡された構成情報設定要求に基づいて、パケット中継装置10の設定を施した後に、当該設定内容をコンフィグレーション23に記録する。
コンフィグレーション23には、パケット中継装置10全体の設定情報及びパケット中継装置10全体の状態情報(構成情報)が記録され、例えば、パケット中継装置10で動作する各仮想パケット中継装置の情報、各VLANの情報が記録される。
図3は、本発明の第1実施形態の管理計算機30の構成を示すブロック図である。
管理計算機30は、例えば汎用の計算機によって構成され、ネットワークインタフェース31、ハードディスク32、メモリ16d、CPU17bを備える。
ネットワークインタフェース31は、パケットを送受信する物理的なインタフェースである。ハードディスク32は、プログラム等の各種情報を記憶する。
メモリ16dは、ソフトウェア処理部33を実現するためのプログラムを記憶し、CPU17bは、メモリ16dに記憶されたプログラムを実行することによって、ソフトウェア処理部33として機能する。
パケット送受信部34は、ネットワークインタフェース31を介したパケットの送受信を司る。
ネットワーク管理部35は、ネットワーク管理者がパケット中継装置10を管理するためのフロントエンドとして動作するアプリケーションである。ネットワーク管理部35は、パケット中継装置参照部36、仮想ネットワーク構成計算部37、パケット中継装置設定部38、コンフィグレーション生成部39、ユーザインタフェース部41、コンフィグレーション管理データベース42a、及び仮想ネットワーク構成テーブル43aを備える。
ユーザインタフェース部41は、ネットワーク管理者が仮想ネットワークの構成を管理するために表示装置44に表示するGUI(グラフィカルユーザインタフェース)の表示データを生成するネットワーク構成表示部であるとともに、ネットワーク管理者による指示をキーボード45及びマウス46を介して受け付ける。ネットワーク管理者による指示には、例えば、ネットワーク構成参照指示、及びパケット中継装置10の構成情報を設定する設定指示等がある。
パケット中継装置参照部36は、パケット中継装置10のコンフィグレーション23に記憶された構成情報を取得する要求である参照要求を、パケット中継装置10に送信する。参照要求の送信タイミングは、例えば、新たなパケット中継装置10がネットワークに追加されたことを管理計算機30が検出したタイミングであってもよいし、周期的に送信されてもよいし、管理計算機30がネットワーク管理者からネットワーク構成参照指示を受け付けたタイミングであってもよい。なお、管理計算機30がパケット中継装置10の構成情報を取得する処理の詳細は図7で詳細を説明する。
また、パケット中継装置参照部36は、パケット中継装置10からコンフィグレーション23に記憶された構成情報を取得した場合、取得した構成情報に基づいてコンフィグレーション管理データベース42a(構成情報管理テーブル)を更新する。
このように、パケット中継装置参照部36は、パケット中継装置10から構成情報を取得し、取得した構成情報をコンフィグレーション管理データベース42aに登録するため、構成情報取得部として機能する。
仮想ネットワーク構成計算部37は、コンフィグレーション管理データベース42a及び仮想ネットワーク構成テーブル43aを参照し、各仮想ネットワークを構成する仮想パケット中継装置、及び当該仮想パケット中継装置の接続関係を特定する。これらの特定処理については、図8A及び図8Bで詳細を説明する。
仮想ネットワーク構成計算部37は、同じ仮想ネットワークを構成する仮想パケット中継装置20に同じ仮想ネットワーク識別子を付与し、当該仮想ネットワーク識別子と当該仮想ネットワーク識別子が付与された仮想パケット中継装置20の構成情報とを対応付けて仮想ネットワーク構成テーブル43aに登録する。
仮想ネットワーク構成計算部37が、仮想ネットワーク構成テーブル43aを参照し、各仮想ネットワークの構成を特定し、ユーザインタフェース部41が、仮想ネットワーク構成計算部37によって特定された仮想ネットワークの構成を表示装置44に描画することによって、ネットワーク管理者が仮想ネットワーク識別子を意識せず、各仮想ネットワークの構成を把握できる。
仮想ネットワーク構成計算部37は、パケット中継装置10から取得した構成情報に含まれる仮想パケット中継装置識別子が属する第1ネットワークを特定し、取得した構成情報と特定した第1ネットワークの識別子である第1ネットワーク識別子(仮想ネットワーク識別子)とを対応付けて第1ネットワーク構成テーブル(仮想ネットワーク構成テーブル43)に登録する第1ネットワーク特定部として機能する。
パケット中継装置設定部38は、ユーザインタフェース部41がネットワーク管理者からのパケット中継装置10の設定指示を受け付けた場合、受け付けた設定指示に対応する設定要求を、パケット中継装置10に送信する。
設定要求は、パケット中継装置10の構成情報を設定する要求であり、例えば、仮想パケット中継装置20の生成要求、仮想パケット中継装置20の削除要求、VLANの設定要求、及びVLANの削除要求等である。パケット中継装置10の構成情報を設定する処理の詳細は、図8〜図10で説明する。
また、パケット中継装置設定部38は、設定要求に基づいて構成情報を設定したパケット中継装置10から送信された応答を受信した場合、受信した応答に基づいて、コンフィグレーション管理データベース42aを更新する。
コンフィグレーション生成部39は、ユーザインタフェース部41がネットワーク管理者からパケット中継装置10の追加指示を受け付けた場合、つまり、既存のパケット中継装置10に新たなパケット中継装置10を追加する指示を受け付けた場合、新たに追加するパケット中継装置10に付与される仮想ネットワーク識別子、及びVLAN IDを決定する。これによって、ネットワーク管理者は、仮想パケット中継装置に付与される仮想ネットワーク識別子及びVLAN IDを意識せず、仮想ネットワークに新たなパケット中継装置10を追加できる。
なお、パケット中継装置設定部38は、コンフィグレーション生成部39によって決定された仮想ネットワーク識別子及びVLAN IDが、新たに追加されるパケット中継装置10に設定されるよう、構成情報の設定要求を当該パケット中継装置10に送信する。
そして、コンフィグレーション生成部39は、パケット中継装置設定部38が送信した構成情報の設定要求に対する応答を受信した場合、コンフィグレーション管理データベース42a及び仮想ネットワーク構成テーブル43aを更新する。
図4は、本発明の第1実施形態のコンフィグレーション管理データベース42aの説明図である。
コンフィグレーション管理データベース42aは、パケット中継装置10から取得した構成情報を管理するデータベースであり、パケット中継装置識別子421、仮想パケット中継装置識別子422、及びVLAN ID423を含む。
パケット中継装置識別子421には、構成情報を取得したパケット中継装置10の識別子であるパケット中継装置識別子が登録される。仮想パケット中継装置識別子422には、構成情報を取得したパケット中継装置10に生成される仮想パケット中継装置20の識別子である仮想パケット中継装置識別子が登録される。VLAN ID423には、仮想パケット中継装置20に設定されるVLANの識別子であるVLAN IDが登録される。
図5は、本発明の第1実施形態の仮想ネットワーク構成テーブル43aの説明図である。
仮想ネットワーク構成テーブル43aは、仮想ネットワーク識別子と、当該仮想ネットワーク識別子によって識別される仮想ネットワークを構成する仮想パケット中継装置の仮想パケット中継装置識別子と、を対応付けて管理するテーブルである。仮想ネットワーク構成テーブル43aは、仮想ネットワーク識別子431、パケット中継装置識別子432、仮想パケット中継装置識別子433、及びVLAN ID434を含む。
仮想ネットワーク識別子431には、仮想ネットワークの識別子である仮想ネットワーク識別子が登録される。
パケット中継装置識別子432には、当該エントリの仮想ネットワーク識別子に対応付けられた仮想パケット中継装置識別子の仮想パケット中継装置が生成されるパケット中継装置のパケット中継装置識別子が登録される。
仮想パケット中継装置識別子433には、当該エントリの仮想ネットワーク識別子に対応付けられた仮想パケット中継装置識別子が登録される。
VLAN ID434には、当該エントリの仮想ネットワーク識別子に対応付けられた仮想パケット中継装置識別子の仮想パケット中継装置に設定されたVLANの識別子であるVLAN IDが登録される。
図6は、本発明の第1実施形態の管理計算機30の表示装置44に表示されるネットワーク構成表示画面800の説明図である。
ネットワーク構成表示画面800には、図1に示すネットワーク内に構築される仮想ネットワークの構成が表示され、具体的には、パケット中継装置10を示すアイコン及びイーサネットケーブルを示すアイコンによって仮想ネットワークのネットワークトポロジが表示される。
ネットワーク構成表示画面800は、仮想ネットワーク一覧表示領域810、ネットワークトポロジ表示領域820、追加ボタン831、削除ボタン832、及びログ表示領域880を含む。
仮想ネットワーク一覧表示領域810は、ネットワーク構成表示画面800の左側に表示され、図1に示すネットワーク内で構築されるすべての仮想ネットワークの一覧を表示する。仮想ネットワーク一覧表示領域810では、一覧表示された仮想ネットワークは、ネットワーク管理者によって選択可能であって、選択された仮想ネットワークを構成する仮想パケット中継装置20が生成されるパケット中継装置10が表示される。以下、説明を簡略化するために、仮想ネットワークを構成する仮想パケット中継装置20が生成されるパケット中継装置10を、単に、仮想ネットワークに属するパケット中継装置10という。
図6では、仮想ネットワーク50bが選択され、仮想ネットワーク50bに属するパケット中継装置10a、10b及び10dが表示される。
ネットワークトポロジ表示領域820は、ネットワーク構成表示画面800の中央に表示され、仮想ネットワーク一覧表示領域810で選択された仮想ネットワークのネットワークトポロジを表示する。
図6では、仮想ネットワーク一覧表示領域810で仮想ネットワーク50bが選択されるので、ネットワーク構成表示画面800では、仮想ネットワーク50bに属するパケット中継装置10a、10b及び10dが表示され、パケット中継装置10aとパケット中継装置10bとがVLAN20及び200によって接続され、パケット中継装置10bとパケット中継装置10dとがVLAN200によって接続されることが表示される。
ネットワーク管理者によって選択された仮想ネットワークに属するパケット中継装置10の特定処理、及び、パケット中継装置10間の接続関係の特定処理について説明する。
まず、仮想ネットワーク構成計算部37が、図5に示す仮想ネットワーク構成テーブル43aを参照し、仮想ネットワーク識別子431に選択された仮想ネットワークの識別子が登録されるエントリを取得する。そして、仮想ネットワーク構成計算部37は、取得したエントリのパケット中継装置識別子432に登録されたパケット中継装置識別子を当該仮想ネットワークに属するパケット中継装置10の識別子として特定する。
さらに、仮想ネットワーク構成計算部37は、取得したエントリのVLAN ID434に同じVLAN IDが登録されているパケット中継装置10間が接続されていると特定する。
これによって、仮想ネットワークを構成する仮想パケット中継装置20に同一の仮想パケット中継装置識別子が付与されていなくても、仮想パケット中継識別子は表示装置44に表示されないので、ネットワーク管理者は仮想パケット中継装置識別子を意識せず、各仮想ネットワークの構成を確認できる。
追加ボタン831及び削除ボタン832は、ネットワーク構成表示画面800の左側に表示される。追加ボタン831が操作され、ネットワークトポロジ表示領域820に表示されるパケット中継装置10から新たなパケット中継装置10を接続する接続先パケット中継装置10が選択されると、仮想ネットワーク一覧表示領域810で選択された仮想ネットワークに新たなパケット中継装置10が追加される。
なお、接続先パケット中継装置10が選択される場合、接続先パケット中継装置10に備わるパケット送受信ポート14のうち、新たなパケット中継装置10が接続される接続先パケット送受信ポート14も選択される。
また、ネットワークトポロジ表示領域820に表示されるパケット中継装置10から任意のパケット中継装置10が選択され、削除ボタン832が操作されると、選択されたパケット中継装置10が仮想ネットワーク一覧表示領域810で選択された仮想ネットワークから削除される。
なお、ネットワーク管理者が、キーボード45及びマウス46等によって、追加ボタン831又は削除ボタン832を操作すると、パケット中継装置10の追加又は削除に伴って各パケット中継装置10に設定が必要な構成情報(仮想パケット中継装置識別子、及びVLAN ID)が生成される。なお、構成情報の生成処理については、図9及び図10で詳細を説明する。
このため、仮想ネットワークの構成を変更する場合、ネットワーク管理者が、構成変更に伴って設定が必要となる構成情報を設定しなくてもよい。
ログ表示領域440は、ネットワーク構成表示画面800の下方に表示され、パケット中継装置10の追加又は削除等の操作のログを表示する。
当該ログは、操作の日付、操作の時刻、操作したパケット中継装置10のIPアドレス、及び操作内容を示すメッセージを含む。
図7は、本発明の第1実施形態の管理計算機30がパケット中継装置10からコンフィグレーション23に格納された構成情報を取得する構成情報取得処理のシーケンス図である。
管理計算機30のパケット中継装置参照部36は、所定の条件が成立すると、すべてのパケット中継装置10のパケット中継装置管理部22にセッション確立要求を送信する(S101)。
なお、所定の条件とは、ネットワーク管理者が参照要求をキーボード45及びマウス46を介して指示した場合、及び、周期的に構成情報取得処理が実行されるのであれば所定のタイミングになった場合である。
パケット中継装置管理部22は、セッション確立要求を受信した場合、セッションを確立できるか否かを判定し、セッションを確立できると判定された場合、セッション識別子を含むセッション確立応答を、管理計算機30のパケット中継装置参照部36に送信する(S102)。
以降、管理計算機30と当該パケット中継装置10との間で通信されるパケットには当該セッション識別子が付与される。これによって、管理計算機30及びパケット中継装置10は、連続する要求を、一貫性を保ちながら処理できる。
一方、セッションを確立できないと判定された場合、管理計算機30と当該パケット中継装置10との間にセッションが確立されないので、構成情報取得処理を終了する。
なお、セッションを確立できるか否かの判定処理は、パケット中継装置10が確立することができるセッション数の上限を超えてないか否か、及びセッション確立要求の送信元が信頼できる送信元であるか否かを基準に実行される。
管理計算機30のパケット中継装置参照部36は、パケット中継装置10からセッション確立応答を受信した場合、当該パケット中継装置10のコンフィグレーション23に格納された構成情報を取得する要求である構成情報参照要求を、当該パケット中継装置10に送信する(S103)。
パケット中継装置10のパケット中継装置管理部22は、管理計算機30から構成情報参照要求を受信した場合、受信した構成情報参照要求をコンフィグレーション管理部21に渡す(S104)。
コンフィグレーション管理部21は、パケット中継装置管理部22から構成情報参照要求を渡された場合、コンフィグレーション23を参照し(S105)、コンフィグレーション23に格納された構成情報を取得し、取得した構成情報を含めた構成情報参照応答を、パケット中継装置管理部22に渡す(S106)。パケット中継装置管理部22は、渡された構成情報参照応答を管理計算機30のパケット中継装置36に送信する(S107)。
パケット中継装置管理部22は、パケット中継装置10から構成情報参照応答を受信した場合、受信した構成情報参照応答に含まれる構成情報を、コンフィグレーション管理データベース42aに登録し(S108)、構成情報参照応答を送信したパケット中継装置10のパケット中継装置管理部22に、セッションを切断する要求であるセッション切断要求を送信する(S109)。
パケット中継装置管理部22は、管理計算機30からセッション切断要求を受信した場合、セッションを切断し、セッション切断応答を、管理計算機30のパケット中継装置参照部36に送信する(S110)。
以上、管理計算機30がパケット中継装置10の構成情報を取得する手順について説明した。
この後、仮想ネットワーク構成計算部37は、コンフィグレーション管理データベース42aを参照し(S111)、構成情報を取得したパケット中継装置10に生成された仮想パケット中継装置20が構成する仮想ネットワークを特定し、当該仮想パケット中継装置20の仮想パケット中継装置識別子と特定した仮想ネットワークの仮想ネットワーク識別子とを対応付け、仮想ネットワーク構成テーブル43aに登録する(S112)。
なお、S111及びS112の処理は、仮想ネットワーク特定処理といい、図8A及び図8Bで詳細を説明する。
図8Aは、本発明の第1実施形態の仮想ネットワーク構成計算部37によって実行される仮想ネットワーク特定処理のフローチャートである。
仮想ネットワーク構成計算部37は、コンフィグレーション管理データベース42aに格納されたすべてのパケット中継装置10の構成情報に対して、ステップ302〜315の処理を実行する(301)。
まず、仮想ネットワーク構成計算部37は、コンフィグレーション管理データベース42aに格納された一のパケット中継装置10の構成情報を取得する(302)。そして、仮想ネットワーク構成計算部37は、取得した構成情報から仮想パケット中継装置識別子及びVLAN IDを抽出する(303)。
次に、仮想ネットワーク構成計算部37は、ステップ303の処理で仮想パケット中継装置識別子が抽出されたか否かを判定する(304)。
これは、図1に示すパケット中継装置10dのように、仮想パケット中継装置20を生成せずに、パケット中継装置10d自体が仮想ネットワークを構成する場合もあり、当該パケット中継装置10dの場合、仮想ネットワーク識別子と仮想パケット中継装置識別子とを対応付けることができないため、仮想ネットワーク識別子と仮想パケット中継装置識別子とを対応付けるステップ306〜310の処理と異なる処理(ステップ311〜315の処理)が必要となるからである。
ステップ303の処理で仮想パケット中継装置識別子が抽出されたとステップ304の処理で判定された場合、仮想ネットワーク構成計算部37は、ステップ303の処理で抽出された仮想パケット中継装置識別子から処理対象となる一の仮想パケット中継装置識別子を選択し、ステップ303〜310の処理を実行する(305)。なお、仮想ネットワーク構成計算部37は、ステップ303の処理で抽出されたすべての仮想パケット中継装置識別子に対してステップ306〜310の処理を実行する。
まず、仮想ネットワーク構成計算部37は、処理対象の仮想パケット中継装置識別子に対応付けられたVLAN IDから処理対象となる一のVLAN IDを選択し、選択した処理対象のVLAN IDが仮想ネットワーク構成テーブル43aに登録されているか否かを判定する(306)。
ステップ306の処理で、処理対象のVLAN IDが仮想ネットワーク構成テーブル43aに登録されていると判定された場合、仮想ネットワーク構成計算部37は、仮想ネットワーク構成テーブル43aを参照し、処理対象のVLAN IDと同一のVLAN IDに対応付けられた仮想ネットワーク識別子を、処理対象の仮想パケット中継装置識別子の仮想パケット中継装置20によって構成される仮想ネットワークの仮想ネットワーク識別子に設定する(307)。
そして、仮想ネットワーク構成計算部37は、ステップ307の処理で設定された仮想ネットワーク識別子と、処理対象の仮想パケット中継装置識別子及び当該処理対象の仮想パケット中継装置識別子に対応付けられたすべてのVLAN IDとを対応付けて仮想ネットワーク構成テーブル43aに新たなエントリとして登録する(310)。
一方、ステップ306の処理で、処理対象のVLAN IDが仮想ネットワーク構成テーブル43aに登録されていないと判定された場合、仮想ネットワーク構成計算部37は、処理対象の仮想パケット中継装置識別子に対応付けられたすべてのVLAN IDを選択したか否かを判定する(308)。
ステップ308の処理で、処理対象の仮想パケット中継装置識別子に対応付けられたすべてのVLAN IDを選択したと判定された場合、仮想ネットワーク構成計算部37は、新たな仮想ネットワーク識別子を生成し、生成した仮想ネットワーク識別子を、処理対象の仮想パケット中継装置識別子の仮想パケット中継装置20によって構成される仮想ネットワークの仮想ネットワーク識別子に設定する(309)。
これは、処理対象の仮想パケット中継装置識別子によって識別される仮想パケット中継装置20に設定されたすべてのVLANと同じVLANがネットワークに存在しないため、当該仮想パケット中継装置20によって構成される仮想ネットワークは未登録の仮想ネットワークであり、当該仮想ネットワークに対して仮想ネットワーク識別子を新たに生成する必要があるためである。
そして、仮想ネットワーク構成計算部37は、ステップ310の処理に進み、ステップ309の処理で設定された仮想ネットワーク識別子と、処理対象の仮想パケット中継装置識別子及び当該処理対象の仮想パケット中継装置識別子に対応付けられたすべてのVLAN IDとを対応付けて仮想ネットワーク構成テーブル43aに新たなエントリとして登録する。
一方、ステップ308の処理で、処理対象の仮想パケット中継装置識別子に対応付けられたすべてのVLAN IDを選択していないと判定された場合、処理対象の仮想パケット中継装置識別子に対応付けられたVLAN IDから他の一のVLAN IDを処理対象のVLAN IDとして選択し、ステップ306の処理に戻る。
ステップ303の処理で抽出されたすべての仮想パケット中継装置識別子に対してステップ306〜310の処理が実行されていない場合、仮想ネットワーク構成計算部37は、ステップ306の処理に戻り、次のパケット中継装置識別子と当該パケット中継装置識別子に対応付けられるVLAN IDを選択し、ステップ306〜310の処理を実行する。
一方、ステップ303の処理で抽出されたすべての仮想パケット中継装置識別子に対してステップ306〜310の処理が実行された場合であって、かつ、コンフィグレーション管理データベース42aに格納されたすべてのパケット中継装置10の構成情報に対してステップ302〜315の処理が実行された場合、仮想ネットワーク特定処理を終了する。
また、ステップ303の処理で抽出されたすべての仮想パケット中継装置識別子に対してステップ306〜310の処理を実行された場合であって、かつ、コンフィグレーション管理データベース42aに格納されたすべてのパケット中継装置10の構成情報に対してステップ302〜315の処理が実行されていない場合、仮想ネットワーク構成計算部37は、ステップ302の処理に戻り、コンフィグレーション管理データベース42aに格納されたパケット中継装置10の構成情報から次のパケット中継装置10の構成情報を取得し、ステップ303〜ステップ315の処理を実行する。
次に、ステップ303の処理で仮想パケット中継装置識別子が抽出されなかったとステップ304の処理で判定された場合の仮想ネットワーク特定処理を、図8Bを用いて説明する。図8Bは、本発明の第1実施形態の仮想ネットワーク特定処理のフローチャートである。
まず、仮想ネットワーク構成計算部37は、ステップ303の処理で抽出されたVLAN IDから処理対象となる一のVLAN IDを選択し、選択した処理対象のVLAN IDが仮想ネットワーク構成テーブル43aに登録されているか否かを判定する(311)。
ステップ311の処理で、処理対象のVLAN IDが仮想ネットワーク構成テーブル43aに登録されていると判定された場合、仮想ネットワーク構成計算部37は、仮想ネットワーク構成テーブル43aを参照し、処理対象のVLAN IDと同一のVLAN IDに対応付けられた仮想ネットワーク識別子を、処理対象のVLAN IDが設定されるパケット中継装置10によって構成される仮想ネットワークの仮想ネットワーク識別子に設定する(312)。
そして、仮想ネットワーク構成計算部37は、ステップ312の処理で設定された仮想ネットワーク識別子と、ステップ302の処理で構成情報を取得したパケット中継装置10のパケット中継装置識別子及び当該パケット中継装置識別子に対応付けられたすべてのVLAN IDとを対応付けて仮想ネットワーク構成テーブル43aに新たなエントリとして登録する(315)。
一方、ステップ311の処理で、処理対象のVLAN IDが仮想ネットワーク構成テーブル43aに登録されていないと判定された場合、仮想ネットワーク構成計算部37は、ステップ303の処理で抽出されたすべてのVLAN IDを選択したか否かを判定する(313)。
ステップ303の処理で抽出されたすべてのVLAN IDを選択したとステップ313の処理で判定された場合、仮想ネットワーク構成計算部37は、新たな仮想ネットワーク識別子を生成し、生成した仮想ネットワーク識別子を、処理対象のVLAN IDが設定されるパケット中継装置10によって構成される仮想ネットワークの仮想ネットワーク識別子に設定する(314)。
これは、ステップ302の処理で構成情報を取得したパケット中継装置10に設定されたすべてのVLANと同じVLANがネットワークに存在しないため、当該パケット中継装置10によって構成される仮想ネットワークは未登録の仮想ネットワークであり、当該仮想ネットワークに対して仮想ネットワーク識別子を新たに生成する必要があるためである。
そして、仮想ネットワーク構成計算部37は、ステップ315の処理に進み、ステップ314の処理で設定された仮想ネットワーク識別子と、ステップ302の処理で構成情報を取得したパケット中継装置10のパケット中継装置識別子及び当該パケット中継装置識別子に対応付けられたすべてのVLAN IDとを対応付けて仮想ネットワーク構成テーブル43aに新たなエントリとして登録する。
一方、ステップ303の処理で抽出されたすべてのVLAN IDを選択していないと、ステップ313の処理で判定された場合、ステップ303の処理で抽出されたVLAN IDから他の一のVLAN IDを処理対象のVLAN IDとして選択し、ステップ311の処理に戻る。
次に、図8A及び図8Bを用いて説明した仮想ネットワーク特定処理を、図4に示すコンフィグレーション管理データベース42a及び図5に示す仮想ネットワーク構成テーブル43aを例にして、より具体的に説明する。
まず、ステップ302の処理で、仮想ネットワーク構成計算部37は、コンフィグレーション管理データベース42aからパケット中継装置10aの構成情報を取得したとする。そして、仮想ネットワーク構成計算部37は、ステップ303の処理で、取得した構成情報から、「仮想パケット中継装置識別子:100、VLAN ID:10」、「100、100」、「200、20」、及び「200、200」を抽出する。
ステップ303の処理で仮想パケット中継装置識別子「100」及び「200」が抽出されているので、ステップ304の処理では、仮想パケット中継装置識別子が抽出されていると判定され、ステップ305の処理に進む。
ステップ305の処理では、処理対象の仮想パケット中継装置識別子として仮想パケット中継装置識別子「100」が選択されるものとする。
次に、ステップ306の処理では、処理対象のVLAN IDとしてVLAN ID「10」が選択され、VLAN ID「10」が仮想ネットワーク構成テーブル43aに登録されているか否かが判定される。
ここで、仮想ネットワーク構成テーブル43aには何も登録されていないものとする。このため、ステップ306の処理では、VLAN ID「10」が仮想ネットワーク構成テーブル43aに登録されていないと判定され、ステップ308の処理に進み、処理対象の仮想パケット中継装置識別子「100」に対応付けられたすべてのVLAN ID「10」及び「100」が選択されたか否かが判定される。
VLAN ID「100」は未だ処理対象のVLAN IDとして選択されていないので、VLAN ID「100」を処理対象のVLAN IDとして選択し、ステップ306の処理に戻る。
ステップ306の処理では、VLAN ID「100」が仮想ネットワーク構成テーブル43aに登録されていないと判定され、ステップ308の処理に進む。
ステップ308の処理では、処理対象の仮想パケット中継装置識別子「100」に対応付けられたすべてのVLAN ID「10」及び「100」が選択されたと判定され、ステップ309の処理に進む。
ステップ309の処理で仮想ネットワーク識別子「50a」が新たに生成され、ステップ310の処理では、仮想ネットワーク識別子「50a」と、パケット中継装置識別子「100」と、VLAN ID「10」及び「100」とが対応付けられ、仮想ネットワーク構成テーブル43aに登録される(図5に示すエントリ501及び502参照)。
次に、仮想パケット中継装置識別子「200」についても、ステップ305〜310の処理を実行する。仮想パケット中継装置識別子「200」のVLAN ID「20」及び「200」は仮想ネットワーク構成テーブル43aに登録されていないので、ステップ309の処理で、仮想ネットワーク識別子「50b」が新たに生成される。そして、ステップ310の処理で、仮想ネットワーク識別子「50b」と、パケット中継装置識別子「200」と、VLAN ID「20」及び「200」とが対応付けられ、仮想ネットワーク構成テーブル43aに登録される(図5に示すエントリ505及び506参照)。
次に、ステップ302の処理で、仮想ネットワーク構成計算部37は、コンフィグレーション管理データベース42aからパケット中継装置10bの構成情報を取得したとする。そして、仮想ネットワーク構成計算部37は、ステップ303の処理で、取得した構成情報から、「仮想パケット中継装置識別子:100、VLAN ID:10」、「300、20」、及び「300、200」を抽出する。
ステップ303の処理で仮想パケット中継装置識別子「100」及び「300」が抽出されているので、ステップ304の処理では、仮想パケット中継装置識別子が抽出されていると判定され、ステップ305の処理に進む。
ステップ305の処理では、処理対象の仮想パケット中継装置識別子として仮想パケット中継装置識別子「100」が選択されるものとする。
次に、ステップ306の処理では、処理対象のVLAN IDとしてVLAN ID「10」が選択され、VLAN ID「10」が仮想ネットワーク構成テーブル43aに登録されているか否かが判定される。
この場合、仮想ネットワーク構成テーブル43aには、エントリ501、502、505、及び506が登録されているものとする。
したがって、仮想ネットワーク構成テーブル43aにVLAN ID「10」がエントリ501に登録されているので、ステップ307の処理に進み、VLAN ID「10」に対応付けられた仮想ネットワーク識別子「50a」をパケット中継装置10bの仮想パケット中継装置「100」が属する仮想ネットワークの仮想ネットワーク識別子として取得する。そして、ステップ310の処理では、仮想ネットワーク識別子「50a」と、仮想パケット中継装置識別子「100」及びVLAN ID「10」とが対応付けられ、仮想ネットワーク構成テーブル43aに登録される(図5に示すエントリ503参照)。
仮想ネットワーク構成計算部37は、仮想パケット中継装置識別子「300」についても、ステップ305〜310の処理を実行する。仮想パケット中継装置識別子「300」のVLAN ID「20」及び「200」は仮想ネットワーク構成テーブル43aのエントリ505及び506に登録されているので、ステップ307の処理で、仮想パケット中継装置識別子「300」とVLAN ID「20」、「200」とが対応付けられ、仮想ネットワーク構成テーブル43aに登録される(図5に示すエントリ507及び508参照)。
次に、ステップ302の処理で、仮想ネットワーク構成計算部37は、コンフィグレーション管理データベース42aからパケット中継装置10dの構成情報を取得したとする。そして、仮想ネットワーク構成計算部37は、ステップ303の処理で、取得した構成情報から、「VLAN ID:200」を抽出する。
ステップ303の処理で仮想パケット中継装置識別子が抽出されていないので、ステップ304の処理では、仮想パケット中継装置識別子が抽出されていないと判定され、ステップ311の処理に進む。
ステップ311の処理では、処理対象のVLAN IDとしてVLAN ID「200」が選択され、VLAN ID「200」が仮想ネットワーク構成テーブル43aに登録されているか否かが判定される。
この場合、仮想ネットワーク構成テーブル43aには、エントリ506、及び508が登録されているので、ステップ312の処理に進み、VLAN ID「200」に対応付けられた仮想ネットワーク識別子「50b」をパケット中継装置10dが属する仮想ネットワークの仮想ネットワーク識別子として取得する。そして、ステップ315の処理では、仮想ネットワーク識別子「50b」と、パケット中継装置識別子「10d」及びVLAN ID「200」とが対応付けられ、仮想ネットワーク構成テーブル43aに登録される(図5に示すエントリ509参照)。
以上の処理を管理計算機30が管理するすべてのパケット中継装置10に実行することによって、図5に示す仮想ネットワーク構成テーブル43aが生成される。
図8A及び図8Bに示す仮想ネットワーク特定処理を実行することによって、異なる仮想パケット中継装置識別子が設定される仮想パケット中継装置20によって仮想ネットワークが構築された場合であっても、同じ仮想ネットワークを構成する仮想パケット中継装置20の仮想パケット中継装置識別子は同じ仮想ネットワーク識別子と対応付けられる。これによって、仮想ネットワーク識別子を参照することによって、同じ仮想ネットワークを構成する仮想パケット中継装置を特定できる。
また、仮想ネットワーク識別子に対応付けられたVLAN IDが設定されたパケット中継装置10を接続して表示装置44に描画することによって、ネットワーク管理者は、各仮想ネットワークの構成を、同じ仮想ネットワークを構成するパケット中継装置10の接続関係を容易に確認できる。
次に、管理計算機30がパケット中継装置10に構成情報を設定する構成情報設定処理について、図9を用いて説明する。
図9は、本発明の第1実施形態の構成情報設定処理のシーケンス図である。
ネットワーク管理者又はコンフィグレーション生成部39はパケット中継装置10の設定要求をパケット中継装置設定部38に入力する(S202)。
コンフィグレーション生成部39は、例えば、ネットワーク管理者から図6に示すネットワーク構成表示画面800を介してパケット中継装置10の追加指示を受け付けた場合、仮想ネットワーク構成テーブル43aを参照し、新たに追加されるパケット中継装置10に設定される仮想パケット中継装置識別子及びVLAN IDを決定し(S201)、決定した仮想パケット中継装置識別子及びVLAN IDを新たに追加されるパケット中継装置10の構成情報に設定する設定要求をパケット中継装置設定部38に入力する。
なお、S201の処理は、図10で詳細を説明する。
パケット中継装置設定部38は、設定要求が入力されると、構成情報を設定するパケット中継装置10のパケット中継装置管理部22にセッション確立要求を送信する(S203)。
パケット中継装置管理部22は、図7に示すS102の処理と同じく、セッションを確立できるか否かを判定し、セッションを確立できると判定された場合、セッション確立応答を管理計算機のパケット中継装置設定部38に送信する(S204)。なお、図7に示すS102の処理のように、これ以降に管理計算機30と当該パケット中継装置10との間で通信されるパケットにはセッション識別子が付与される。
管理計算機30のパケット中継装置設定部38は、パケット中継装置10からセッション確立応答を受信した場合、セッションを確立したパケット中継装置10のコンフィグレーション23に対して排他的設定権を設定する要求であるロック取得要求をパケット中継装置10のパケット中継装置10のパケット中継装置管理部22に送信する(S205)。コンフィグレーション23に対して排他的設定権(ロック)が設定された場合、排他的設定権が設定された管理計算機30以外の装置は当該コンフィグレーション23を設定できず、排他的設定権が設定された管理計算機30のみが当該コンフィグレーション23を設定できる。
パケット中継装置管理部22は、コンフィグレーション23に対して排他的設定権が設定できるか否かを判定し、コンフィグレーション23に対して排他的設定権が設定できると判定された場合、ロック取得応答を管理計算機30のパケット中継装置設定部38に送信する(S206)。
例えば、コンフィグレーション23に対してすでに排他的設定権が設定されている場合、コンフィグレーション23に対して排他的設定権が設定できないと判定し、コンフィグレーション23に対して排他的設定権が設定されていない場合、コンフィグレーション23に対して排他的設定権が設定できると判定する。
パケット中継装置設定部38は、パケット中継装置10からロック取得応答を受信した場合、S202の処理で入力された設定要求をパケット中継装置10のパケット中継装置管理部22に送信する(S207)。
パケット中継装置管理部22は、管理計算機30から設定要求を受信した場合、受信した設定要求をコンフィグレーション管理部21に入力する(S208)。
コンフィグレーション管理部21は、設定要求が入力された場合、入力された設定要求に基づいて、コンフィグレーション23を更新する(S209)。そして、コンフィグレーション管理部21は、更新した構成情報を含む設定応答をパケット中継装置管理部22に入力する(S210)。
パケット中継装置管理部22は、設定応答が入力された場合、入力された応答を、管理計算機30のパケット中継装置設定部38に送信する(S211)。
管理計算機30のパケット中継装置設定部38は、設定応答を受信した場合、受信した設定応答に含まれる更新した構成情報に基づいて、コンフィグレーション管理データベース42aを更新する(S212)。
また、パケット中継装置設定部38は、パケット中継装置10のコンフィグレーション23に対して設定された排他的設定権を解除する要求であるロック開放要求をパケット中継装置10のパケット中継装置管理部22に送信する(S213)。
パケット中継管理部22は、コンフィグレーション23に対して設定された排他的設定権を解除できるか否かを判定し、排他的設定権を解除できると判定された場合、排他的設定権を解除し、ロック開放応答をパケット中継装置設定部38に送信する(S214)。
パケット中継装置設定部38は、パケット中継装置10からロック開放応答を受信した場合、セッションを切断する要求であるセッション切断要求を、パケット中継装置10のパケット中継装置管理部22に送信する(S215)。
パケット中継装置管理部22は、管理計算機30からセッション切断要求を受信した場合、セッションを切断し、セッション切断応答を管理計算機30のパケット中継装置設定部38に送信する(S216)。
この後、コンフィグレーション生成部38は、コンフィグレーション管理データベース42aを参照し、パケット中継装置10の構成した構成情報に基づいて、仮想ネットワーク構成テーブル43aを更新する(S217)。
具体的には、パケット中継装置識別子10cに、仮想パケット中継装置識別子200とVLAN識別子100とを設定した場合、S212の処理で、設定後のパケット中継装置10cに仮想パケット中継装置識別子200とVLAN識別子100とを設定したことをコンフィグレーション管理データベース42aに登録し、S217の処理で、パケット中継装置10cの仮想パケット中継装置200に関するエントリを、仮想ネットワーク構成テーブル43aに新たなエントリとして登録する。
次に、図9に示すS201の処理、つまり、新たに追加するパケット中継装置10に設定する構成情報(仮想パケット中継装置識別子及びVLAN ID)を決定する構成情報決定処理について図10を用いて説明する。
図10は、本発明の第1実施形態の構成情報決定処理のフローチャートである。
構成情報決定処理は、管理計算機30のコンフィグレーション生成部39によって実行される。
まず、コンフィグレーション生成部39は、ネットワーク管理者からのネットワーク構成表示画面800(図6参照)を介して入力されたパケット中継装置Xの追加指示を受け付ける(601)。追加指示は、パケット中継装置Xを追加する仮想ネットワーク識別子、新たに追加されるパケット中継装置Xの接続先となる接続先パケット中継装置のパケット中継装置識別子(接続先パケット中継装置識別子)、及び、接続先パケット中継装置に備わるパケット送受信ポート14のうち新たにパケット中継装置Xが接続される接続先パケット送受信ポートの識別子(接続先パケット送受信ポート識別子)を含む。
当該仮想ネットワーク識別子は、図6に示すネットワーク構成表示画面800において追加ボタン831が操作された場合、仮想ネットワーク一覧表示領域810にて選択されていた仮想ネットワークの識別子である。
また、接続先パケット中継装置識別子は、追加ボタン831が操作された場合にネットワークトポロジ表示領域820にて選択されていたパケット中継装置10のパケット中継装置識別子である。
また、接続先パケット送受信ポート識別子は、追加ボタン831が操作された場合にネットワークトポロジ表示領域820にてパケット送受信ポート14のパケット送受信ポート識別子である。
次に、コンフィグレーション生成部39は、受け付けた追加指示を参照し、パケット中継装置Xを追加する仮想ネットワーク識別子を特定する(602)。
そして、コンフィグレーション生成部39は、仮想ネットワーク構成テーブル43aのエントリのうち、仮想ネットワーク識別子431に登録された仮想ネットワーク識別子が、ステップ602の処理で特定された仮想パケット中継装置識別子と一致するエントリを特定し、特定したエントリの仮想パケット中継装置識別子433に登録された仮想パケット中継装置識別子を取得する(603)。
そして、コンフィグレーション生成部39は、ステップ603の処理で取得した仮想パケット中継装置識別子を配列に格納する(604)。
次に、コンフィグレーション生成部39は、ステップ604の処理で配列に格納された一の仮想パケット中継装置識別子を処理対象の仮想パケット中継装置識別子として選択し、ステップ604の処理で配列に格納されたすべての仮想パケット中継装置識別子に対して、ステップ606〜608の処理を実行する(605)。
まず、コンフィグレーション生成部39は、コンフィグレーション管理データベース42aを参照し、新たに追加されるパケット中継装置Xの構成情報を取得する。そして、コンフィグレーション生成部39は、取得したパケット中継装置Xの構成情報を参照し、処理対象の仮想パケット中継装置識別子がパケット中継装置Xに設定できるか否かを判定する(606)。
具体的には、コンフィグレーション生成部39は、処理対象の仮想パケット中継装置がパケット中継装置Xに生成された仮想パケット中継装置識別子にすでに使用されているか否か、及び処理対象の仮想パケット中継装置識別子は、パケット中継装置Xが設定可能な仮想パケット中継装置識別子であるか否かを判定する。
なお、パケット中継装置Xが設定可能な仮想パケット中継装置識別子は、パケット中継装置Xの型番によって特定される。
ステップ606の処理で、処理対象の仮想パケット中継装置識別子がパケット中継装置Xに設定できると判定された場合、コンフィグレーション生成部39は、処理対象の仮想パケット中継装置識別子を、パケット中継装置Xが新たに生成する仮想パケット中継装置に割り当てることを決定する(607)。
一方、ステップ606の処理で、処理対象の仮想パケット中継装置識別子がパケット中継装置Xに設定できないと判定された場合、コンフィグレーション生成部39は、新たな仮想パケット中継装置識別子を生成し、生成した仮想パケット中継装置識別子を、パケット中継装置Xが新たに生成する仮想パケット中継装置に割り当てることを決定する(608)。
ステップ604の処理で配列に格納されたすべての仮想パケット中継装置識別子に対して、ステップ606〜608の処理が実行されると、コンフィグレーション生成部39は、コンフィグレーション管理データベース42aを参照し、追加指示に含まれる接続先パケット中継装置識別子によって識別される接続先パケット中継装置Yの構成情報を取得する。そして、コンフィグレーション生成部39は、取得した接続先パケット中継装置Yの構成情報を参照し、接続先パケット中継装置Yに備わるパケット送受信ポート14のうち、新たに追加される接続パケット中継装置Yが接続される接続先パケット送受信ポートに設定されるVLAN IDを取得し、パケット中継装置Xに設定するVLAN IDを取得したVLAN IDに決定する(609)。
ここで、コンフィグレーション管理データベース42aでは、VLAN IDと当該VLAN IDが設定されたパケット中継装置10に備わるパケット送受信ポート14のポート識別子とが対応付けられているものとする。このため、コンフィグレーション生成部39は、取得した接続先パケット中継装置Yの構成情報のうち、追加指示に含まれる接続先パケット送受信ポート識別子と一致するパケット送受信ポート識別子に対応するVLAN IDを取得する。
次に、コンフィグレーション生成部39は、ステップ607又は608の処理で決定された仮想パケット中継装置識別子、及び、ステップ609の処理で決定されたVLAN IDをパケット中継装置Xの構成情報に設定する設定要求を、パケット中継装置設定部38に入力し(610)、構成情報決定処理を終了する。
以上によって、仮想ネットワークに新たにパケット中継装置10を追加する場合、当該パケット中継装置10に生成される仮想パケット中継装置20の仮想パケット中継装置識別子及びVLAN IDを自動的に設定するので、ネットワーク管理者は新たに追加されるパケット中継装置10に生成される仮想パケット中継装置20の仮想パケット中継装置識別子及びVLAN IDを意識することなく、仮想ネットワークを構築できる。
次に、構成情報決定処理を、仮想ネットワーク50aにパケット中継装置10cが追加される場合を例に説明する。
ステップ602の処理で、コンフィグレーション生成部39は、パケット中継装置10cが追加される仮想ネットワーク識別子が「50a」であると特定する。
次に、ステップ603の処理で、コンフィグレーション生成部39は、仮想ネットワーク構成テーブル43aを参照し、仮想ネットワーク識別子「50a」が登録されたエントリ(図5に示す501〜503)を特定し、特定したエントリの仮想パケット中継装置識別子「100」を取得する。そして、ステップ604の処理で、仮想パケット中継装置識別子「100」が配列に格納される。
ステップ606の処理では、コンフィグレーション生成部39は、仮想パケット中継装置識別子「100」が仮想パケット中継装置20cに設定できるか否かを判定する。ここでは、仮想パケット中継装置識別子「100」はパケット中継装置10cに設定できないと判定されるものとし、ステップ608の処理に進む。
ステップ608の処理では、コンフィグレーション生成部39は、新たな仮想パケット中継装置識別子「200」を生成し、仮想パケット中継装置識別子「200」をパケット中継装置10cに生成される仮想パケット中継装置に割り当てる仮想パケット中継装置識別子とする。
そして、ステップ609の処理で、コンフィグレーション生成部39は、パケット中継装置10cの接続先パケット中継装置10aに備わるパケット送受信ポート14のうちパケット中継装置10cに接続される接続先パケット送受信ポートに対応付けられたVLAN ID「100」を取得する。
ステップ610の処理では、コンフィグレーション生成部39は、パケット中継装置10cに仮想パケット中継装置識別子「200」及びVLAN ID「100」を設定する設定要求をパケット中継装置設定部38に入力する。
次に、ネットワーク管理者からの設定要求をコンフィグレーション生成部39が受け付けた場合に実行される誤設定検出処理について図11を用いて説明する。
図11は、本発明の第1実施形態の誤設定検出処理のフローチャートである。
ネットワーク管理者は、図示しない設定画面を介して、所定の仮想ネットワークを構成する仮想パケット中継装置20にVLAN IDを設定する設定要求を管理計算機30に入力できる。
ここで、設定対象となる仮想ネットワーク以外の仮想ネットワークを構成する仮想パケット中継装置20に当該設定するVLAN IDが設定されている場合には、当該VLAN IDを設定対象となる仮想パケット中継装置20に設定できない。これは、異なる仮想ネットワークに属し、通信できない仮想パケット中継装置20に同じVLAN IDを付与することになり、当該設定はネットワーク管理者の誤設定である。
図1を例に説明すると、例えば、仮想ネットワーク50aを構成するパケット中継装置10a(仮想パケット中継装置20a、仮想パケット中継装置識別子100)にVLAN300が設定されている状態で、ネットワーク管理者が仮想ネットワーク50bを構成するパケット中継装置10b(仮想パケット中継装置20d、仮想パケット中継装置識別子300)にVLAN300を設定する要求をしたとする。この場合、VLAN300を介して、本来異なる仮想ネットワークに属する仮想パケット中継装置20aと仮想パケット中継装置20dとの間で情報が通信される可能性がある。つまり、本来分離しているはずの仮想ネットワーク50aの情報と仮想ネットワーク50bの情報とが、混在してしまう可能性がある。
誤設定検出処理は、上述したネットワーク管理者の誤設定を検出するための処理である。
まず、コンフィグレーション生成部39は、ネットワーク管理者からの設定要求を受け付ける(701)。当該設定要求は、設定対象となる仮想パケット中継装置20の仮想パケット中継装置識別子(設定対象仮想パケット中継装置識別子)、設定対象となる仮想パケット中継装置20が生成されたパケット中継装置10のパケット中継装置識別子(設定対象パケット中継装置識別子)、及び当該仮想パケット中継装置に設定されるVLAN ID(設定VLAN ID)を含む。
次に、コンフィグレーション生成部39は、仮想ネットワーク構成テーブル42を参照し、設定対象となる仮想パケット中継装置20が構成する仮想ネットワークの仮想ネットワーク識別子を特定し、設定要求に含まれる設定VLAN IDを特定する(702)。
次に、コンフィグレーション生成部39は、仮想ネットワーク構成テーブル43aを参照し、設定対象仮想ネットワーク識別子に対応付けられたパケット中継装置識別子を検索する(703)。
コンフィグレーション生成部39は、ステップ703の処理で検索されたパケット中継装置識別子から、設定対象パケット中継装置以外のパケット中継装置識別子を配列に格納する(704)。
次に、コンフィグレーション生成部39は、配列に格納されたパケット中継装置識別子から処理対象となる一のパケット中継装置識別子を選択し、ステップ706〜709の処理を実行する(705)。なお、いずれかのパケット中継装置識別子について設定中止と判定されるか、配列に格納されたすべてのパケット中継装置識別子について設定継続と判定されるまで、ステップ706〜709の処理は繰り返し実行される。
コンフィグレーション生成部39は、仮想ネットワーク構成テーブル43aを参照し、処理対象のパケット中継装置識別子にステップ702の処理で特定された仮想ネットワーク識別子以外の仮想ネットワーク識別子が対応付けられているか否かを判定する(706)。
ステップ706の処理で、ステップ702の処理で特定された仮想ネットワーク識別子以外の仮想ネットワーク識別子(他の仮想ネットワーク識別子)が処理対象のパケット中継装置識別子に対応付けられてないと判定された場合、コンフィグレーション生成部39は、設定継続と判定し(707)、配列に格納されたすべてのパケット中継装置識別子にステップ706〜708の処理が実行されていない場合、他のパケット中継装置識別子を処理対象のパケット中継装置識別子として選択し、ステップ706の処理を実行する。また、配列に格納されたすべてのパケット中継装置識別子に設定継続と判定された場合、コンフィグレーション生成部39は、設定VLAN IDを設定対象の仮想パケット中継装置20が生成されたパケット中継装置10の構成情報に設定する設定要求を、パケット中継装置設定部38に入力し(710)、誤設定検出処理を終了する。
一方、ステップ706の処理で、他の仮想ネットワーク識別子が処理対象のパケット中継装置識別子に対応付けられていると判定された場合、コンフィグレーション生成部39は、仮想ネットワーク構成テーブル43aを参照し、処理対象のパケット中継装置識別子によって識別されるパケット中継装置10に生成された仮想パケット中継装置(処理対象の仮想パケット中継装置)20のうち、他の仮想ネットワーク識別子によって識別される仮想ネットワーク(他の仮想ネットワーク)を構成する仮想パケット中継装置20に設定VLAN IDが設定されているか否かを判定する(708)。
具体的には、コンフィグレーション生成部39は、仮想ネットワーク構成テーブル43aに登録されたエントリのうち、仮想ネットワーク識別子431に他の仮想ネットワーク識別子が登録され、かつ、パケット中継装置識別子432に処理対象のパケット中継装置識別子が登録されたエントリを特定する。そして、コンフィグレーション生成部39は、特定したエントリのVLAN ID434に設定VLAN IDが登録されているか否かを判定する。
ステップ708の処理で、処理対象の仮想パケット中継装置20のうち他の仮想ネットワークを構成する仮想パケット中継装置20に設定VLAN IDが設定されていると判定された場合、コンフィグレーション生成部39は、設定対象の仮想ネットワーク以外の仮想ネットワークに設定VLAN IDが設定されているので、当該設定VLAN IDの設定は誤設定であり、設定中止と判定し(709)、誤設定検出処理を終了する。
一方、ステップ708の処理で、処理対象の仮想パケット中継装置20のうち他の仮想ネットワークを構成する仮想パケット中継装置20に設定VLAN IDが設定されていないと判定された場合、コンフィグレーション生成部39は、ステップ707の処理に進み、設定継続と判定する。
以上によって、仮想パケット中継装置にVLAN IDの誤設定を防止することができる。
次に、図1に示すパケット中継装置10bに生成された仮想パケット中継装置20d(仮想パケット中継装置識別子300)にVLAN ID100を設定する場合を例に誤設定検出処理を説明する。
ステップ702の処理で、コンフィグレーション生成部39は、仮想パケット中継装置20dが構成する仮想ネットワークは仮想ネットワーク50bであり、設定VLAN IDが「100」であることを特定する。
ステップ703の処理で、コンフィグレーション生成部39は、設定対象仮想ネットワーク識別子「50b」に対応付けられたパケット中継装置識別子「10a」、「10b」、「10d」を検索する。
ステップ704の処理で、コンフィグレーション生成部39は、ステップ703の処理で検索されたパケット中継装置識別子「10a」、「10b」、「10d」から設定対象パケット中継装置識別子「10b」以外のパケット中継装置識別子「10a」、「10d」を配列に格納する。
ステップ705の処理で、コンフィグレーション生成部39は、処理対象のパケット中継装置識別子「10a」を選択する。
ステップ706の処理では、コンフィグレーション生成部39は、パケット中継装置識別子「10a」に他の仮想ネットワーク識別子50aが対応付けられていると判定し、ステップ708の処理に進む。
ステップ708の処理では、コンフィグレーション生成部39は、パケット中継装置10aに生成される仮想パケット中継装置20a(仮想パケット中継装置識別子100)には、設定VLAN ID「100」が登録されていると判定し、ステップ709の処理に進み、設定中止と判定し、誤設定検出処理を終了する。
仮想ネットワーク50bを構成する仮想パケット中継装置20d(仮想パケット中継装置識別子300)にVLAN ID100が設定されれば、当該VLAN100を介して仮想ネットワーク50aと仮想ネットワーク50bとの情報が混在してしまう可能性があるので、ステップ709の処理で設定中止と判定し、ステップ710の処理を実行しないようにしている。
(第2実施形態)
第2実施形態について図12〜図21を用いて説明する。
第1実施形態では、一の仮想ネットワークは、設定される仮想的なネットワーク(第2ネットワーク)がVLANである場合について説明したが、第2実施形態では、仮想パケット中継装置20とパケット送受信ポート14とが対応付けられることによって、第2ネットワークが構築される場合について説明する。
図12は、本発明の第2実施形態のネットワーク管理システムのネットワーク構成図である。なお、本実施形態のネットワーク管理システムは、図1に示す第1実施形態のネットワーク管理システムと異なる箇所のみを説明する。
ネットワーク管理システムは、パケット中継装置10e〜10h及び管理計算機30を備える。
パケット中継装置10e上で、仮想パケット中継装置20f及び20gが動作し、パケット中継装置10f上で、仮想パケット中継装置20h及び20iが動作し、パケット中継装置10g上で、仮想パケット中継装置20jが動作している。
仮想パケット中継装置20fとパケット中継装置10eに備わるパケット送受信ポート「10」及び「11」とが対応付けられ、仮想パケット中継装置20gとパケット中継装置10eに備わるパケット送受信ポート「20」及び「21」とが対応付けられる。
また、仮想パケット中継装置20gとパケット中継装置10gに備わるパケット送受信ポート「10」とが対応付けられる。
さらに、仮想パケット中継装置20hとパケット中継装置10fに備わるパケット送受信ポート「10」とが対応付けられ、仮想パケット中継装置20iとパケット中継装置10fに備わるパケット送受信ポート「20」及び「21」とが対応付けられる。
なお、パケット送受信ポート14の直後にかっこ書きした数字は、パケット送受信ポート14の識別子であるパケット送受信ポート識別子である。パケット送受信ポート識別子は、当該パケット送受信ポート14を備えるパケット中継装置10内で一意な識別子である。
また、仮想パケット中継装置20に対応付けられたパケット送受信ポート14を、仮想パケット中継装置20に属するパケット送受信ポート14という。
仮想パケット中継装置20に属するパケット送受信ポート14を他の仮想パケット中継装置20に属するパケット送受信ポート14に接続することによって、仮想パケット中継装置20同士を連結する。これによって、一つの物理ネットワーク上に複数の仮想的なネットワーク(第1ネットワーク)を構築できる。
図12では、仮想パケット中継装置20f、仮想パケット中継装置20h、仮想パケット中継装置20jが一つの仮想ネットワーク(以降、仮想ネットワークC)を構成する。また、仮想パケット中継装置20g、仮想パケット中継装置20i、パケット中継装置10hが、一つの仮想ネットワーク(以降、仮想ネットワークD)を構成する。以上により、一つの物理ネットワーク上に、二つの仮想ネットワーク(第1ネットワーク)が構築される。
仮想ネットワークCでは、仮想パケット中継装置20fに属するパケット送受信ポート「11」と仮想パケット中継装置20jに属するパケット送受信ポート「10」とが接続され、仮想パケット中継装置20fに属するパケット送受信ポート「10」と仮想パケット中継装置20hに属するパケット送受信ポート「10」とが接続される。このため、仮想ネットワークCは、仮想パケット中継装置20fに属するパケット送受信ポート「11」と仮想パケット中継装置20jに属するパケット送受信ポート「10」との間のネットワーク(第2ネットワーク)、及び、仮想パケット中継装置20fに属するパケット送受信ポート「10」と仮想パケット中継装置20hに属するパケット送受信ポート「10」との間のネットワークに分割される。
また、仮想ネットワークDでは、仮想パケット中継装置20gに属するパケット送受信ポート「20」と仮想パケット中継装置20iに属するパケット送受信ポート「20」とが接続され、仮想パケット中継装置20iに属するパケット送受信ポート「21」とパケット中継装置10hに属するパケット送受信ポート「20」とが接続される。このため、仮想ネットワークDは、仮想パケット中継装置20gに属するパケット送受信ポート「20」と仮想パケット中継装置20iに属するパケット送受信ポート「20」との間のネットワーク、及び、仮想パケット中継装置20iに属するパケット送受信ポート「21」とパケット中継装置10hに属するパケット送受信ポート「20」との間のネットワークに分割される。
図13は、本発明の第2実施形態のパケット中継装置10の構成を示すブロック図である。なお、図13では、図2に示す第1実施形態のパケット中継装置10と同じ構成は同じ符号を付与し、説明を省略する。
本実施形態のパケット中継装置10は、第1実施形態のパケット中継装置10の構成に隣接装置情報管理部24及び隣接装置情報25を追加したものである。
隣接装置情報管理部24は、隣接装置情報25を管理する。隣接装置情報25は、自身に備わるパケット送受信ポート14の接続先のパケット中継装置10(隣接パケット中継装置)の識別子である隣接パケット中継装置識別子、及び、接続先のパケット送受信ポート14の識別子であるパケット送受信ポート識別子の関係を保持する。
なお、隣接装置情報25は、パケット中継装置10が隣接パケット中継装置とパケット中継装置識別子及びパケット送受信ポート識別子を含む情報を交換することによって収集される。
図14は、本発明の第2実施形態の管理計算機30の構成を示すブロック図である。なお、図14では、図3に示す第1実施形態の管理計算機30と同じ構成は同じ符号を付与し、説明を省略する。
本実施形態の管理計算機30は、第1実施形態の管理計算機30の構成に隣接装置情報データベース47を追加したものである。
隣接装置情報データベース47には、管理計算機30によって取得された各パケット中継装置10の隣接装置情報25が格納される。隣接装置情報データベース47の詳細は図16で詳細を説明する。
図15は、本発明の第2実施形態のコンフィグレーション管理データベース42bの説明図である。
コンフィグレーション管理データベース42bは、図4に示すコンフィグレーション管理データベース42aのVLAN ID423の代わりにパケット送受信ポート424を含む。
パケット送受信ポート424には、仮想パケット中継装置20に属するパケット送受信ポート14のパケット送受信ポート識別子が登録される。
図16は、本発明の第2実施形態の隣接装置情報データベース47の説明図である。
隣接装置情報データベース47は、パケット中継装置471、パケット送受信ポート472、隣接パケット中継装置473、及びパケット送受信ポート474を含む。
パケット中継装置471には、隣接装置情報25を取得したパケット中継装置10の識別子が登録される。パケット送受信ポート372には、隣接装置情報25を取得したパケット中継装置10のパケット送受信ポート14の識別子が登録される。
隣接パケット中継装置473には、隣接装置情報25を取得したパケット中継装置10のパケット送受信ポート14に接続される隣接パケット中継装置の識別子が登録される。パケット送受信ポート474には、隣接パケット中継装置に備わるパケット送受信ポート14のうち、隣接装置情報25を取得したパケット中継装置10のパケット送受信ポート14に接続されるパケット送受信ポート14の識別子が登録される。
図17は、本発明の第2実施形態の仮想ネットワーク構成テーブル43bの説明図である。
仮想ネットワーク構成テーブル43bは、図5に示す第1実施形態の仮想ネットワーク構成テーブル43baのVLAN ID434の代わりにパケット送受信ポート435を含む。
パケット送受信ポート435には、仮想ネットワーク識別子に対応するパケット送受信ポート識別子が登録される。
図18は、本発明の第2実施形態の管理計算機30の表示装置44に表示されるネットワーク構成表示画面800の説明図である。
本実施形態のネットワーク構成表示画面800は、図6に示すネットワーク構成表示画面800と、ネットワークトポロジ表示領域820でVLAN IDを表示せず、パケット送受信ポート識別子を表示する点で異なる。
図15では、仮想ネットワーク一覧表示領域810で仮想ネットワーク50dが選択されるので、ネットワーク構成表示画面800では、仮想ネットワーク50dに属するパケット中継装置10e、10f及び10hが表示され、パケット中継装置10eのパケット送受信ポート「20」とパケット中継装置10fのパケット送受信ポート「20」とが接続され、パケット中継装置10fのパケット送受信ポート「21」とパケット中継装置10hのパケット送受信ポート「20」とが接続されることが表示される。
ネットワーク管理者によって選択された仮想ネットワークに属するパケット中継装置10の特定処理、及び、パケット中継装置10間の接続関係の特定処理について説明する。
まず、仮想ネットワーク構成計算部37が、図17に示す仮想ネットワーク構成テーブル43bを参照し、仮想ネットワーク識別子431に選択された仮想ネットワークの識別子が登録されるエントリを取得する。そして、仮想ネットワーク構成計算部37は、取得したエントリのパケット中継装置識別子432に登録されたパケット中継装置識別子を当該仮想ネットワークに属するパケット中継装置10の識別子として特定する。
さらに、仮想ネットワーク構成計算部37は、取得したエントリのパケット送受信ポート435に同じVLAN IDが登録されているパケット中継装置10間が接続されていると特定する。
このため、仮想ネットワークが異なる識別子を有する仮想パケット中継装置によって構成されている場合であっても、仮想ネットワーク識別子は表示装置44には表示されないので、ネットワーク管理者は識別子を意識することなく、各仮想ネットワークの構成を確認できる。
図19は、本発明の第2実施形態の管理計算機30がパケット中継装置10から隣接装置情報25を取得する隣接装置情報取得処理のシーケンス図である。
隣接装置情報取得処理は、図7に示す第1実施形態の構成情報取得処理と、管理計算機30が隣接装置情報25をパケット中継装置10から取得し、取得した隣接装置情報25を隣接装置情報データベース47に格納する点で異なるが、他の点では同じ処理である。
管理計算機30のパケット中継装置参照部36は、すべてのパケット中継装置10のパケット中継装置管理部22にセッション確立要求を送信する(S301)。S301の処理は、図7に示すS101の処理に対応する。
パケット中継装置管理部22は、セッションを確立できる場合、セッション識別子を含むセッション確立応答を、管理計算機30のパケット中継装置参照部36に送信する(S302)。S302の処理は、図7に示すS102の処理に対応する。
管理計算機30のパケット中継装置参照部36は、パケット中継装置10からセッション確立応答を受信した場合、当該パケット中継装置10の隣接装置情報25を取得する要求である隣接装置情報参照要求を、当該パケット中継装置10に送信する(S303)。S303の処理は、図7に示すS103の処理に対応する。
パケット中継装置10のパケット中継装置管理部22は、管理計算機30から隣接装置情報参照要求を受信した場合、受信した隣接装置情報参照要求をコンフィグレーション管理部21に渡す(S304)。S304の処理は、図7に示すS104の処理に対応する。
コンフィグレーション管理部21は、パケット中継装置管理部22から隣接装置情報参照要求を渡された場合、隣接装置情報25を参照し(S305)、隣接装置情報25を取得し、取得した隣接装置情報25を含めた隣接装置情報参照応答を、パケット中継装置管理部22に渡す(S306)。パケット中継装置管理部22は、渡された隣接装置情報参照応答を管理計算機30のパケット中継装置参照部36に送信する(S307)。S305〜S307の処理は、図7に示すS105〜S107の処理に対応する。
パケット中継装置管理部22は、パケット中継装置10から隣接装置情報参照応答を受信した場合、受信した隣接装置情報参照応答に含まれる隣接装置情報25を、隣接装置情報データベース47に登録し(S308)、隣接装置情報参照応答を送信したパケット中継装置10のパケット中継装置管理部22に、セッションを切断する要求であるセッション切断要求を送信する(S309)。S308及びS309の処理は、図7に示すS108及びS109の処理に対応する。
パケット中継装置管理部22は、管理計算機30からセッション切断要求を受信した場合、セッションを切断し、セッション切断応答を、管理計算機30のパケット中継装置参照部36に送信する(S310)。S310の処理は、図7に示すS110の処理に対応する。
以上、管理計算機30がパケット中継装置10の隣接装置情報25を取得する手順について説明した。
この後、仮想ネットワーク構成計算部37は、隣接装置情報データベース47を参照し(S311)、仮想パケット中継装置20が構成する仮想ネットワークを特定し、当該仮想パケット中継装置20の仮想パケット中継装置識別子と特定した仮想ネットワークの仮想ネットワーク識別子とを対応付け、仮想ネットワーク構成テーブル43bに登録する(S312)。
なお、S311及びS312の処理は、仮想ネットワーク特定処理といい、図20A及び図20Bで詳細を説明する。
図20Aは、本発明の第2実施形態の仮想ネットワーク構成計算部37によって実行される仮想ネットワーク特定処理のフローチャートである。図20Aでは、図8Aに示す仮想ネットワーク特定処理と同じ処理は同じ符号を付与し、説明を省略する。
仮想ネットワーク構成計算部37は、ステップ302の処理で、コンフィグレーション管理データベース42bに格納された一のパケット中継装置10の構成情報を取得した後、仮想ネットワーク構成計算部37は、取得した構成情報から仮想パケット中継装置識別子及びパケット送受信ポート識別子を抽出する(1101)。
ステップ305の処理で、処理対象となる一の仮想パケット中継装置識別子を選択した後、仮想ネットワーク構成計算部37は、処理対象の仮想パケット中継装置識別子によって識別される仮想パケット中継装置20に備わるパケット送受信ポート14のパケット送受信ポート識別子の中から、処理対象となる一のパケット送受信ポート識別子を選択する。そして、仮想ネットワーク構成計算部37は、隣接装置情報データベース47を参照し、処理対象のパケット送受信ポート識別子によって識別されるパケット送受信ポート14に接続される隣接パケット中継装置Yの隣接パケット中継装置識別子、及び隣接パケット送受信ポート識別子を特定する(1102)。
そして、仮想ネットワーク構成計算部37は、ステップ1102の処理で特定した隣接パケット中継装置識別子、及び隣接パケット送受信ポート識別子が仮想ネットワーク構成テーブル43bに登録されているか否かを判定する(1103)。
ステップ1103の処理で、隣接パケット中継装置識別子、及び隣接パケット送受信ポート識別子が仮想ネットワーク構成テーブル43bに登録されていると判定された場合、仮想ネットワーク構成計算部37は、仮想ネットワーク構成テーブル43bを参照し、隣接パケット中継装置識別子、及び隣接パケット送受信ポート識別子に対応付けられた仮想ネットワーク識別子を、処理対象の仮想パケット中継装置識別子の仮想パケット中継装置20によって構成される仮想ネットワークの仮想ネットワーク識別子に設定する(1104)。
そして、仮想ネットワーク構成計算部37は、ステップ1104の処理で設定された仮想ネットワーク識別子と、処理対象の仮想パケット中継装置識別子及び当該処理対象の仮想パケット中継装置識別子に対応付けられたすべてのパケット送受信ポート識別子とを対応付けて仮想ネットワーク構成テーブル43bに新たなエントリとして登録する(1106)。
一方、ステップ1103の処理で、隣接パケット中継装置識別子、及び隣接パケット送受信ポート識別子が仮想ネットワーク構成テーブル43bに登録されていないと判定された場合、仮想ネットワーク構成計算部37は、処理対象の仮想パケット中継装置識別子によって識別される仮想パケット中継装置20に備わるすべてのパケット送受信ポート14のパケット送受信ポート識別子を処理対象のパケット送受信ポート識別子として選択したか否かを判定する(1105)。
ステップ1105の処理で、処理対象の仮想パケット中継装置識別子によって識別される仮想パケット中継装置20に備わるすべてのパケット送受信ポート14のパケット送受信ポート識別子を処理対象のパケット送受信ポート識別子として選択したと判定された場合、ステップ309の処理に進み、仮想ネットワーク構成計算部37は、新たな仮想ネットワーク識別子を生成し、生成した仮想ネットワーク識別子を、処理対象の仮想パケット中継装置識別子の仮想パケット中継装置20によって構成される仮想ネットワークの仮想ネットワーク識別子に設定する。
一方、ステップ1105の処理で、処理対象の仮想パケット中継装置識別子によって識別される仮想パケット中継装置20に備わるすべてのパケット送受信ポート14のパケット送受信ポート識別子を処理対象のパケット送受信ポート識別子として選択していないと判定された場合、ステップ1103の処理に戻り、処理対象のパケット送受信ポート識別子を新たに選択する。
次に、ステップ1101の処理で仮想パケット中継装置識別子が抽出されなかったとステップ304の処理で判定された場合の仮想ネットワーク特定処理を、図20Bを用いて説明する。図20Bは、本発明の第2実施形態の仮想ネットワーク特定処理のフローチャートである。
まず、仮想ネットワーク構成計算部37は、処理対象となるパケット中継装置10に備わるパケット送受信ポート14のパケット送受信ポート識別子の中から、処理対象となる一のパケット送受信ポート識別子を選択する。そして、仮想ネットワーク構成計算部37は、隣接装置情報データベース47を参照し、処理対象のパケット送受信ポート識別子によって識別されるパケット送受信ポート14に接続される隣接パケット中継装置Yの隣接パケット中継装置識別子、及び隣接パケット送受信ポート識別子を特定する(1107)。
そして、仮想ネットワーク構成計算部37は、ステップ1107の処理で特定した隣接パケット中継装置識別子、及び隣接パケット送受信ポート識別子が仮想ネットワーク構成テーブル43bに登録されているか否かを判定する(1108)。
ステップ1108の処理で、隣接パケット中継装置識別子、及び隣接パケット送受信ポート識別子が仮想ネットワーク構成テーブル43bに登録されていると判定された場合、仮想ネットワーク構成計算部37は、仮想ネットワーク構成テーブル43bを参照し、隣接パケット中継装置識別子、及び隣接パケット送受信ポート識別子に対応付けられた仮想ネットワーク識別子を、処理対象のパケット中継装置10によって構成される仮想ネットワークの仮想ネットワーク識別子に設定する(1109)。
そして、仮想ネットワーク構成計算部37は、ステップ1109の処理で設定された仮想ネットワーク識別子と、処理対象のパケット中継装置識別子及び当該処理対象のパケット中継装置識別子に対応付けられたすべてのパケット送受信ポート識別子とを対応付けて仮想ネットワーク構成テーブル43bに新たなエントリとして登録する(1111)。
一方、ステップ1108の処理で、隣接パケット中継装置識別子、及び隣接パケット送受信ポート識別子が仮想ネットワーク構成テーブル43bに登録されていないと判定された場合、仮想ネットワーク構成計算部37は、処理対象のパケット中継装置識別子によって識別されるパケット中継装置10に備わるすべてのパケット送受信ポート14のパケット送受信ポート識別子を処理対象のパケット送受信ポート識別子として選択したか否かを判定する(1110)。
ステップ1110の処理で、処理対象のパケット中継装置識別子によって識別されるパケット中継装置10に備わるすべてのパケット送受信ポート14のパケット送受信ポート識別子を処理対象のパケット送受信ポート識別子として選択したと判定された場合、ステップ314の処理に進み、仮想ネットワーク構成計算部37は、新たな仮想ネットワーク識別子を生成し、生成した仮想ネットワーク識別子を、処理対象のパケット中継装置識別子のパケット中継装置10によって構成される仮想ネットワークの仮想ネットワーク識別子に設定する。
一方、ステップ1110の処理で、処理対象のパケット中継装置識別子によって識別されるパケット中継装置10に備わるすべてのパケット送受信ポート14のパケット送受信ポート識別子を処理対象のパケット送受信ポート識別子として選択していないと判定された場合、ステップ1103の処理に戻り、処理対象のパケット送受信ポート識別子を新たに選択する。
次に、図20A及び図20Bを用いて説明した仮想ネットワーク特定処理を、図15に示すコンフィグレーション管理データベース42b、図16に示す隣接装置情報データベース47、及び図17に示す仮想ネットワーク構成テーブル43bを例にして、より具体的に説明する。
まず、ステップ302の処理で、仮想ネットワーク構成計算部37は、コンフィグレーション管理データベース42bからパケット中継装置10eの構成情報を取得したとする。そして、仮想ネットワーク構成計算部37は、ステップ1101の処理で、取得した構成情報から、「仮想パケット中継装置識別子:100、パケット送受信ポート識別子:10」、「100、11」、「200、20」、及び「200、21」を抽出する。
ステップ1101の処理で仮想パケット中継装置識別子「100」及び「200」が抽出されているので、ステップ304の処理では、仮想パケット中継装置識別子が抽出されていると判定され、ステップ305の処理に進む。
ステップ305の処理では、処理対象の仮想パケット中継装置識別子として仮想パケット中継装置識別子「100」が選択されるものとする。
次に、ステップ1105の処理では、処理対象のパケット送受信ポート識別子としてパケット送受信ポート識別子「10」が選択される。ステップ1102の処理では、パケット送受信ポート識別子「10」の隣接パケット中継装置識別子「10f」及び隣接パケット送受信ポート識別子「10」が特定される。
そして、ステップ1103の処理で、隣接パケット中継装置識別子「10f」及び隣接パケット送受信ポート識別子「10」が仮想ネットワーク構成テーブル43bに登録されているか否かが判定される。
ここでは、隣接パケット中継装置識別子「10f」及び隣接パケット送受信ポート識別子「10」が仮想ネットワーク構成テーブル43bに登録されているものとする(図17に示すエントリ1003参照)。当該エントリ1003の仮想ネットワーク識別子は「50c」である。
そして、ステップ1104の処理に進み、仮想ネットワーク識別子「50c」をパケット中継装置10eの仮想パケット中継装置「100」が属する仮想ネットワークの仮想ネットワーク識別子として取得する。そして、ステップ1110の処理では、仮想ネットワーク識別子「50c」と、仮想パケット中継装置識別子「100」及びパケット送受信ポート識別子「10」及び「11」とが対応付けられ、仮想ネットワーク構成テーブル43bに登録される(図17に示すエントリ1001及び1002参照)。
仮想ネットワーク構成計算部37は、パケット中継装置10eの仮想パケット中継装置識別子「200」についても、上述した処理を実行する。この場合、図16に示す隣接装置情報データベース47を参照すると、パケット中継装置10eのパケット送受信ポート「20」には隣接パケット中継装置10f及び隣接パケット送受信ポート「20」が接続される。そして、図17に示す仮想ネットワーク構成テーブル43bには、隣接パケット中継装置10f及び隣接パケット送受信ポート「20」には、仮想ネットワーク識別子「50d」が対応付けられているので、仮想ネットワーク識別子「50d」と、仮想パケット中継装置識別子「200」及びパケット送受信ポート識別子「20」及び「21」とが対応付けられ、仮想ネットワーク構成テーブル43bに登録される(図17に示すエントリ1005及び1006参照)。
次に、ステップ302の処理で、仮想ネットワーク構成計算部37は、コンフィグレーション管理データベース42bからパケット中継装置10hの構成情報を取得したとする。パケット中継装置10hの構成情報(パケット送受信ポート識別子「20」)には、仮想パケット中継装置識別子が登録されていないので、ステップ1107の処理に進む。
ステップ1107の処理では、仮想ネットワーク構成計算部37は、隣接装置情報データベース47を参照すると、パケット中継装置10hのパケット送受信ポート「20」には隣接パケット中継装置10fの隣接パケット送受信ポート「21」が接続されていると特定する。
次に、仮想ネットワーク構成計算部37は、ステップ1108の処理で、隣接パケット中継装置識別子10fの隣接パケット送受信ポート識別子「21」が仮想ネットワーク構成テーブル43bに登録されているか否かを判定する。
ここでは、隣接パケット中継装置識別子10fの隣接パケット送受信ポート識別子「21」が仮想ネットワーク構成テーブル43bに登録されているものとする(図17に示すエントリ1008)。
そして、ステップ1109の処理で、図17に示すエントリ1008の仮想ネットワーク識別子「50d」をパケット中継装置10hが属する仮想ネットワークの仮想ネットワーク識別子として取得する。
次に、ステップ1111の処理で、仮想ネットワーク識別子「50d」とパケット中継装置10hのパケット送受信ポート識別子「20」とを対応付けて、仮想ネットワーク構成テーブル43bに登録する(1009)。
以上の処理を管理計算機30が管理するパケット中継装置10の数だけ繰り返し実行することによって、図17に示す仮想ネットワーク構成テーブル43bが生成される。
図21は、本発明の第2実施形態の構成情報決定処理のフローチャートである。図21では、図10に示す第1実施形態の構成情報決定処理と同じ処理は同じ符号を付与し、説明を省略する。
本実施形態の構成情報決定処理では、仮想パケット中継識別子を決定するまでの処理(ステップ601〜608の処理)は、図10に示す第1実施形態の構成情報決定処理と同じである。なお、第2実施形態での追加指示には、新たに追加されるパケット中継装置Xの接続先パケット中継装置に接続されるパケット送受信ポート14(接続元パケット送受信ポート)の識別子(接続元パケット送受信ポート識別子)も含まれる。
なお、接続元パケット送受信ポート識別子は、追加ボタン831が操作された場合にネットワークトポロジ表示領域820にて選択されていた新たに追加されるパケット中継装置10のパケット送受信ポート14のパケット送受信ポート識別子である。
ステップ604の処理で配列に格納されたすべての仮想パケット中継識別子に対して、ステップ606〜608の処理を実行した後、コンフィグレーション生成部39は、追加指示に含まれる接続元パケット送受信ポート識別子を取得し(1201)、ステップ607又は608の処理でパケット中継装置Xが新たに生成する仮想パケット中継装置に割り当てると決定された仮想パケット中継装置識別子と、取得した接続元パケット送受信ポート識別子とを対応付ける。
次に、コンフィグレーション生成部39は、ステップ607又は608の処理で決定された仮想パケット中継装置識別子、及び、ステップ1201の処理で取得した接続元パケット送受信ポート識別子をパケット中継装置Xの構成情報に設定する設定要求を、パケット中継装置設定部38に入力し(1202)、構成情報決定処理を終了する。
以上によって、仮想ネットワークに新たなパケット中継装置10を追加する場合であっても、管理計算機30が、ネットワーク管理者に代わって、仮想パケット中継識別子の設定をするので、ネットワーク管理者は仮想パケット中継装置識別子を意識することなく、仮想ネットワークを構築することが可能となる。
なお、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。