以下、本発発明の実施形態及び実施例について、図面を参照して説明する。各実施形態及び各実施例は、例示であり、本発明は各実施形態及び各実施例に限定されるものではない。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。
[第1の実施の形態]
[構成の説明]
本発明の第1の実施形態を、図面を参照して詳細に説明する。
図1は、第1の実施形態における通信システムの構成例である。第1の実施形態における通信システムは、集中管理型のネットワークであれば、どのようなネットワークであってもよい。第1の実施形態における通信システムは、例えば、OpenFlowネットワークである。
図1に示すように、第1の実施形態における通信システムは、制御装置100と、複数の中継装置210を有するネットワーク200とを含む。
制御装置100と中継装置210の間には、制御用リンク(図1の破線)を備えている。制御装置100及び中継装置210は、例えば、制御用リンクを介して通信を行う。
中継装置210−1、210−2、210−3、210−4の間には、データ転送用リンク(図1の実線)を備えている。中継装置210は、例えば、データ転送用リンクを用いて、データの送受信を行う。
ただし、制御装置100と中継装置210間には、例えば、制御用リンクとデータ転送用リンクが混在していてもよい。例えば、制御装置100と中継装置210の間にデータ転送用リンクを備えていた場合、制御装置100と中継装置210は、該データ転送用リンクを用いて、通信を行ってもよい。
なお、図1の例では、制御装置100が1つ、中継装置210が4つであるが、制御装置100及び中継装置210の数は、この例の数に限られず、いくつであってもよい。また、ネットワークのトポロジは、図1に限らず、タンデム、ツリー、リング、メッシュ状など、どのような形状であってもよい。
制御装置100は、例えば、中継装置210からDHCP(Dynamic Host Configuration Protocol)クエリーを受信すると、DHCPクエリーを送信した中継装置210に対応するDHCPレスポンスを行う。
制御装置100は、例えば、制御装置100の外部から中継装置210の中継装置識別情報と論理ネットワーク構成情報を取得する。制御装置100は、例えば、中継装置210の中継装置識別情報と論理ネットワーク構成情報を用いて、各中継装置210にダウンロードする中継装置OS(Operating System)を決定する。
制御装置100は、例えば、各中継装置210に、制御装置100が各中継装置210にダウンロードすると決定した中継装置OSの制御プログラムを保持しているか問い合わせる。
制御装置100は、各中継装置210が該中継装置OSを保持していない場合には、該中継装置OSの制御プログラムを、中継装置210へ送信する。
中継装置210は、例えば、制御装置100がダウンロードすると決定した中継装置OSの制御プログラムを保持しているか問い合わせを受信する。
中継装置210は、例えば、該中継装置OSを保持している場合には、該中継装置OSを起動する。
中継装置210は、該中継装置OSを保持していない場合には、ダウンロード用の中継装置OSを起動し、該中継装置OSをインストールする。
中継装置OSは、例えば、中継装置が用いるL2(レイヤ2)/L3(レイヤ3)スイッチで多種のルーティングプロトコルに対応するプログラム、VxLAN(Virtual eXtensible Local Area Network)などのトンネリングに対応するプログラム、OpenFlowなどの集中制御プロトコルに対応するプログラムである。
図2は、本願発明の第1の実施形態における制御装置100の構成例である。
制御装置100は、DHCPサーバ部101と、中継装置OSデータ保管部102と、中継装置OSダウンロードサーバ部103と、中継装置情報記憶部104と、中継装置情報入力部105と、論理ネットワーク構成記憶部106と、論理ネットワーク構成入力部107と、中継装置OS決定部108と、中継装置通信部109とを含む。
なお、図2の構成要素101から109を繋ぐ実線は論理的な通信ないし呼び出し可能な関係を示したものであり、本発明が構成要素101から109の実装は、この形状で接続されている構成やネットワークに限定されるものではない。
DHCPサーバ部101は、例えば、中継装置通信部109を介して、中継装置210からのDHCPクエリーを受信する。DHCPサーバ部101は、受信したDHCPクエリーに対して、DHCPレスポンスを生成し、中継装置通信部109を介して、該DHCPレスポンスを中継装置210へ送信する。
DHCPレスポンスは、中継装置210へ制御装置100が割り当てる情報であり、例えば、IP(Internet Protocol)アドレス、サブネットマスク、DNS(Domain Name System)サーバアドレスである。
また、DHCPレスポンスの生成するタイミングは、DHCPクエリーを受信時に限定されず、例えば、制御装置100と中継装置210接続時に作成してもよいし、ユーザや他のシステムによってあらかじめ設定されてもよい。
なお、DHCPサーバ部101は、例えば、制御装置100から独立した装置によって実行されてもよいし、中継装置通信部109の機能として実行されてもよい。
中継装置OSデータ保管部102は、中継装置210にダウンロード可能な、複数の中継装置OSの制御プログラムを保持する。中継装置OSデータ保管部102は、中継装置OSダウンロードサーバ部103の要求に対して、中継装置OSの制御プログラムを送信する。なお、中継装置OSデータ保管部102の保持する中継装置OSの情報は、同一の中継装置OSに関して複数のバージョンを保持してもよい。
中継装置OSダウンロードサーバ部103は、中継装置OS決定部108から、中継装置210にダウンロードする中継装置OSの情報を通知される。
中継装置OSダウンロードサーバ部103は、中継装置通信部109を介して、中継装置OS決定部108から通知された中継装置210にダウンロードする中継装置OSの制御プログラムが、中継装置210に保存されているか問い合わせる。なお、中継装置OSダウンロードサーバ部103は、例えば、問い合わせをせず、中継装置210に中継装置OSの制御プログラムを転送してもよい。また、中継装置OSダウンロードサーバ部103は、中継装置情報記憶部104を参照し、中継装置210が目的の中継装置OSの制御プログラムを保持しているかを判断してもよい。
中継装置OSダウンロードサーバ部103は、中継装置通信部109を介して、中継装置210から中継装置OSの制御プログラムのダウンロード要求を受信する。中継装置210から受信するダウンロード要求のプロトコルは、例えば、HTTP(HyperText Transfer Protocol)やIP、TCP、FTP(File Transfer Protocol)オープンフロープロトコルを用いる。
中継装置OSダウンロードサーバ部103は、例えば、受信したダウンロード要求から、ダウンロード要求を送信した中継装置210の中継装置識別情報を取得する。中継装置識別情報とは、例えば、MACアドレス(Media Access Control address)やIPアドレス、TCP(Transimission Control Protocol)アドレス、シリアル番号、IPアドレスを参照するURL(Uniform Resource Locator)である。なお、中継装置210を識別する情報(以下、中継装置識別情報)を取得する動作を行うのは中継装置OSダウンロードサーバ部103に限定されず、例えば、中継装置通信部109が中継装置識別情報を取得して、中継装置OSダウンロードサーバ部103へ転送してもよい。
中継装置OSダウンロードサーバ部103は、例えば、ダウンロード要求を送信した中継装置210が起動する中継装置OSの情報を、中継装置情報記憶部104から取得する。なお、中継装置OSダウンロードサーバ部103は、ダウンロード要求を送信した中継装置210が起動する中継装置OSの情報を、例えば、中継装置OS決定部108から直接受信してもよいし、中継装置OS決定部108から直接受信した中継装置OSの情報を一定期間自身で保持していてもよい。
中継装置OSダウンロードサーバ部103は、中継装置OSデータ保管部102から、該中継装置210にダウンロードする中継装置OSの制御プログラムを取得する。
中継装置OSダウンロードサーバ部103は、中継装置通信部109を介して、該中継装置OSの制御プログラムを、ダウンロード要求を送信した中継装置210へ送信する。
中継装置情報記憶部104は、中継装置210に関する情報(以下、中継装置情報)を保持する。中継装置情報は、例えば、中継装置情報入力部105に入力された情報を取得してもよいし、中継装置通信部109が受信したダウンロード要求等から生成してもよい。
図3は、中継装置情報記憶部104に保持される中継装置情報の例を示す図である。図3に例示するように、中継装置情報は、例えば、中継装置名称、中継装置識別情報、位置情報、トポロジ情報、中継装置OSの条件、保持している中継装置OSを保持する。中継装置識別情報とは、例えば、MACアドレスやIPアドレス、TCPアドレスやシリアル番号、IPアドレスを参照するURLである。位置情報とは、例えば、中継装置210が収容されているラックの番号や、ラックの置かれた建物の階である。中継装置OSの条件とは、例えば、該中継装置210にダウンロードする必要のある中継装置OSの名称や、該中継装置210が必要とする機能や、中継装置OSの識別番号である。中継装置OSの条件は、中継装置情報入力部105に入力された情報に限らず、例えば、中継装置OS決定部108が決定した中継装置OSの条件を中継装置OS決定部108から受信してもよい。保持している中継装置OSとは、既に該中継装置210が制御プログラムを保持している中継装置OSの名称である。
中継装置情報入力部105は、中継装置情報記憶部104が保持する中継装置情報の追加や変更、削除などを実行する。中継装置情報入力部105は、制御装置100の外部から中継装置情報の入力を受け付ける。中継装置情報の入力は、例えば、ユーザがユーザインタフェースを用いて入力してもよいし、REST APIを用いて上位サーバや他のシステムが入力してもよい。
中継装置情報入力部105は、例えば、制御装置100の外部から入力された中継装置情報を中継装置情報記憶部104へ追加する。中継装置情報入力部105は、例えば、中継装置情報記憶部104に同じ中継装置210の中継装置情報が存在した場合には、以前の中継装置情報を削除して、新しい中継装置情報を追加してもよいし、異なる項目を選択して変更してもよい。
論理ネットワーク構成記憶部106は、中継装置210で実現する論理ネットワーク構成情報を保持する。
図4は、論理ネットワーク構成記憶部106に保持される論理ネットワーク構成情報の例を示す図である。図4に例示するように、論理ネットワーク構成情報は、例えば、ネットワーク名称、ネットワークモデル、所属中継装置条件、所属中継装置、中継装置役割である。
ネットワークモデルとは、例えば、L2ネットワークや、L3ネットワーク、QinQ、VxLAN(Virtual eXtensible Local Area Network)によるトンネル通信のL2ネットワーク、OpenFlowネットワークである。なお、論理ネットワーク構成は、例えば、中継装置210の位置情報や、台数などの条件を指定して、中継装置情報記憶部104で記憶している未使用の中継装置210を自動で割り当てることも可能である。また、論理ネットワーク構成では、例えば、特定の中継装置210を指定して、VxLANゲートウェイなど特殊な用途に割り当てることも可能である。
所属中継装置は、例えば、ネットワーク200に所属する中継装置210の中継装置識別情報である。所属中継装置は、中継装置210の中継装置識別情報を用いて、特定の中継装置210を設定してもよい。所属中継装置条件とは、例えば、所属中継装置の位置情報や、IPアドレス、MACアドレス、TCPアドレスである。所属中継装置条件は、例えば、IPアドレスとマスクを用いて、ネットワーク200内の中継装置210全てを所属させることも可能である。
また、論理ネットワーク構成記憶部106は、入力された論理ネットワーク構成情報を全て保存する必要はなく、例えば、図4のように、ネットワーク名称と制御装置100が対応している複数のネットワークモデルから1つを選択し、該ネットワークに所属する中継装置210を登録してもよい。
論理ネットワーク構成入力部107は、論理ネットワーク構成記憶部106が保持する論理ネットワーク構成情報の追加や変更、削除などを実行する。
論理ネットワーク構成入力部107は、制御装置100の外部から論理ネットワーク構成情報の入力を受け付ける。
論理ネットワーク構成入力部107は、例えば、制御装置100の外部から受信した論理ネットワーク構成情報を、論理ネットワーク構成記憶部106に保存する。
論理ネットワーク構成入力部107は、例えば、制御装置100の外部から、論理ネットワークの作成指示を受け付ける。
論理ネットワーク構成入力部107は、例えば、制御装置100の外部から論理ネットワークの作成指示を受信すると、中継装置OS決定部108へ、中継装置OSの決定を要求する。
なお、論理ネットワーク構成入力部107への入力は、例えば、ユーザがユーザインタフェースによって入力してもよいし、REST APIを用いて上位サーバや他のシステムが入力してもよい。
中継装置OS決定部108は、論理ネットワーク構成入力部107から、中継装置OSの決定要求を受信する。
中継装置OS決定部108は、中継装置情報記憶部104から、中継装置情報を取得する。中継装置OS決定部108は、論理ネットワーク構成記憶部106から、論理ネットワーク構成情報を取得する。
中継装置OS決定部108は、中継装置情報と該論理ネットワーク構成情報から、ダウンロード要求を送信した中継装置210が起動する中継装置OSを決定する。
中継装置OS決定部108は、例えば、中継装置情報記憶部104に、中継装置210が起動する中継装置OSの情報を保存する。なお、中継装置OS決定部108は、中継装置210が起動する中継装置OSの情報を中継装置情報記憶部104に記憶するだけでなく、中継装置OSダウンロードサーバ部103へ直接通知してもよい。
中継装置通信部109は、制御用リンクを介して、中継装置210との通信を行う。
中継装置210からDHCPクエリーを受信する。中継装置通信部109は、中継装置210から受信したDHCPクエリーを、DHCPサーバ部101へ転送する。
中継装置通信部109は、DHCPサーバ部101からDHCPレスポンスを受信する。中継装置通信部109は、DHCPサーバ部101から受信したDHCPレスポンスを、制御用リンクを介して、中継装置210へ転送する。
中継装置通信部109は、中継装置OSダウンロードサーバ部103から、中継装置210が起動する中継装置OSが、中継装置210に保存されているか、という問い合わせを受信する。中継装置通信部109は、制御リンクを介して、該中継装置OSダウンロードサーバ部103からの問い合わせを、中継装置210へ転送する。
中継装置通信部109は、制御用リンクを介して、中継装置210から中継装置OSのダウンロード要求を受信する。中継装置通信部109は、中継装置210から受信したダウンロード要求を、中継装置OSダウンロードサーバ部103へ転送する。
中継装置通信部109は、中継装置OSダウンロードサーバ部103から中継装置OSの制御プログラムを受信する。中継装置通信部109は、中継装置OSダウンロードサーバ部103から受信した中継装置OSの制御プログラムを、制御用リンクを介して、中継装置210へ転送する。
なお、中継装置通信部109は、例えば、中継装置210から受信した中継装置OSのダウンロード要求から、中継装置210の中継装置識別情報を生成して、中継装置情報記憶部104へ転送してもよい。
図5は、本発明の第1の実施形態における中継装置210の構成例である。
中継装置210は、中継装置OS選択部211と、中継装置OS記憶部212と、制御装置通信部213とを含む。
なお、図5の構成要素211から213を繋ぐ実線は論理的な通信ないし呼び出し可能な関係を示したものであり、本発明が構成要素211から213の実装は、この形状で接続されている構成やネットワークに限定されるものではない。
中継装置OS選択部211は、例えば、制御装置100と中継装置210接続時に、制御装置通信部213を介して、制御装置100から中継装置210で起動する中継装置OSの情報を受信する。ただし、中継装置OSの情報の通知は、制御装置100と中継装置210接続時に限られず、例えば、中継装置210を起動時に通知されてもよいし、ユーザや他のシステムから要求を受けた時や、一定時間ごとに更新されてもよい。
中継装置OS選択部211は、制御装置100から受信した中継装置OSの情報を基に、中継装置OSの起動を試みる。
該中継装置OSの制御プログラムが中継装置OS記憶部212に保存されている場合、中継装置OS選択部211は、例えば、中継装置OS記憶部212から該中継装置OSの制御プログラムを読み出し、中継装置OS部を起動する。
該中継装置OSの制御プログラムが中継装置OS記憶部212に保存されていない場合、中継装置OS選択部211は、中継装置OS記憶部212からダウンロード用の中継装置OSの制御プログラムを読み出し、ダウンロード用の中継装置OS部310を起動する。
中継装置OS選択部211は、中継装置OSインストール部313からインストール完了通知を受信すると、インストールされた中継装置OSの制御プログラムから、中継装置OSを起動する。
中継装置OS記憶部212は、例えば、中継装置OS選択部211によって起動される中継装置OSの制御プログラムを保存する。中継装置OS記憶部212は、複数の中継装置OSの制御プログラムを保持することが可能である。なお、中継装置OS記憶部212には、あらかじめダウンロード用の中継装置OSの制御プログラムが保存されている。
制御装置通信部213は、制御用リンクを介して、制御装置100との通信を行う。
制御装置通信部213は、例えば、制御装置100から、制御装置100が中継装置210において起動すると決定した中継装置OSの制御プログラムを、中継装置210が保持しているかの問い合わせを受信する。
制御装置通信部213は、該問い合わせを、中継装置OS選択部211へ転送する。
制御装置通信部213は、制御用リンクを介して、DHCPクライアント部311から、DHCPクエリーを受信する。制御装置通信部213は、DHCPクライアント部311から受信したDHCPクエリーを、制御装置100へ転送する。
制御装置通信部213は、例えば、制御用リンクを介して、制御装置100から、DHCPレスポンスを受信する。制御装置通信部213は、制御装置100から受信したDHCPレスポンスを、DHCPクライアント部311へ転送する。
制御装置通信部213は、例えば、中継装置OSダウンロード部312から、中継装置OSのダウンロード要求を受信する。制御装置通信部213は、中継装置OSダウンロード部312から受信したダウンロード要求を、制御用リンクを介して、制御装置100へ転送する。
制御装置通信部213は、例えば、制御用リンクを介して、制御装置100から、中継装置OSの制御プログラムを受信する。制御装置通信部213は、制御装置100から受信した中継装置OSの制御プログラムを、中継装置OSダウンロード部312へ転送する。
なお、制御装置100のネットワーク設定として、中継装置通信部109の設定を行う。また、ネットワークの設定は、制御装置100に含まれる通信インタフェースの設定であってもよい。
図6は、本発明の第1の実施形態において、中継装置OS選択部211がダウンロード用の中継装置OS部310を起動後の構成例を示す。
本発明の第1の実施形態における中継装置210の構成要素211から213は、図5に例示する中継装置210の構成要素211から213と同様であるため、詳細な説明は省略される。
ダウンロード用の中継装置OS部310は、DHCPクライアント部311と、中継装置OSダウンロード部312と、中継装置OSインストール部313とを含む。
なお、図6の構成要素211から213、310から313を繋ぐ実線は論理的な通信ないし呼び出し可能な関係を示したものであり、本発明が構成要素211から213、310から313の実装は、この形状で接続されている構成やネットワークに限定されるものではない。
DHCPクライアント部311は、制御装置通信部213を介して、制御装置100へDHCPクエリーを送信する。
DHCPクライアント部311は、制御装置通信部213を介して、制御装置100からDHCPレスポンスを受信する。DHCPレスポンスは、例えば、IPアドレス、サブネットマスク、DNSサーバアドレス、デフォルトゲートウエイである。
DHCPクライアント部311は、制御装置100から受信したDHCPレスポンスをもとに、中継装置210のネットワーク設定を行う。中継装置210は、例えば、DHCPレスポンスの情報に基づいて、制御装置100と通信を行う。ただし、DHCPレスポンスの内容は、DHCPクライアント部311がDHCPクエリーを送信して得るだけでなく、あらかじめユーザや他のシステムによって設定されていてもよい。
なお、中継装置210のネットワーク設定として、制御装置通信部213の設定を行う。また、ネットワークの設定は、中継装置210に含まれる通信インタフェースの設定であってもよい。
中継装置OSダウンロード部312は、制御装置通信部213を介して、制御装置100へ、中継装置210において起動する中継装置OSのダウンロード要求を送信する。中継装置210から受信するダウンロード要求のプロトコルは、例えば、HTTPやIP、TCP、FTPを用いる。
中継装置OSダウンロード部312は、制御装置100から、中継装置210が起動する中継装置OSの制御プログラムを受信する。つまり、中継装置OSダウンロード部312は、中継装置210が起動する中継装置OSの制御プログラムを制御装置100からダウンロードする。
中継装置OSダウンロード部312は、ダウンロードした中継装置OSの制御プログラムを、中継装置OSインストール部313へ転送し、中継装置OSインストール部313に該中継装置OSのインストールを要求する。
中継装置OSインストール部313は、中継装置OSダウンロード部312から、中継装置OSの制御プログラムを受信する。
中継装置OSインストール部313は、例えば、中継装置OSダウンロード部312から受信した中継装置OSの制御プログラムを、中継装置210で使用可能な状態に変換し、中継装置OS記憶部212へ保存する。つまり、中継装置OSインストール部313は、中継装置OSをインストールする。
なお、中継装置OS記憶部212への制御プログラムの保存は、例えば、中継装置OSダウンロード部312によって行われてもよい。この場合には、目的の中継装置OSを起動するために、例えば、ダウンロード用の中継装置OS部310を立ち上げ、中継装置OSインストール部313によって、該プログラムを読み出す。
中継装置OSインストール部313は、中継装置OS記憶部212に保存された中継装置OSの制御プログラムを管理する。中継装置OSインストール部313は、例えば、中継装置OS記憶部212に保存された中継装置OSの制御プログラムの追加や変更、削除などを実行する。なお、中継装置OSインストール部313が中継装置OS記憶部212に保存された中継装置OSの制御プログラムの管理は、例えば、新しい中継装置OSの制御プログラムを追加する際に行ってもよいし、有効期限を設けて削除を行ってもよいし、定期的に削除してもよい。
なお、制御装置100は、中継装置OSダウンロード部312から受信した中継装置OSの制御プログラムにインストール用のプログラムを含ませて、中継装置OSインストール部313は該プログラムを読み出すことによってインストールを行ってもよい。
中継装置OSインストール部313は、中継装置OSのインストールが完了後に、中継装置OS選択部211へインストール完了通知を送信する。 図7は、本発明の第1の実施形態において、中継装置OS選択部211が通信中継用の中継装置OS部320を起動後の構成例を示す。なお、通信中継用の中継装置OS部320は、中継装置210に対して制御装置100からダウンロードされる中継装置OSの一例であり、これによって中継装置210へダウンロードされる中継装置OSを限定するものではない。中継装置210に対して制御装置100からダウンロードされる中継装置OSは、例えば、中継装置OSが中継装置210で実現する通信の中継・終端機能によって、構成が変化する。
通信中継用の中継装置OS部320は、マネジメント機能部321と、プロトコルスタック部322と、中継用ハードウェア制御部323とを含む。
マネジメント機能部321は、例えば、通信中継用のコンフィグレーションを実行する。マネジメント機能部321が行うコンフィグレーションは、例えば、IPアドレスやプロトコル、ホスト名の設定である。
マネジメント機能部321は、コンフィグレーションの結果を、中継用ハードウェア制御部323へ通知する。
プロトコルスタック部322は、通信中継用のプロトコルを階層状に積み上げたプロトコルスタックを保持する。プロトコルスタック部322は、例えば、中継装置210間でネットワークプロトコルを交換する。プロトコルスタック部322は、他の中継装置210から得たプロトコルを、プロトコルスタックに保存する。
プロトコルスタック部322は、プロトコルスタックに保存した内容を、中継用ハードウェア制御部323へ通知する。
中継用ハードウェア制御部323は、マネジメント機能部321から、コンフィグレーションの設定結果を受信する。中継用ハードウェア制御部323は、プロトコルスタック部322から、プロトコルの保存内容を受信する。
中継用ハードウェア制御部323は、コンフィグレーションの設定結果とプロトコルの保存内容から、中継装置210のハードウェア設定を行う。
[動作の説明]
本発明の第1実施形態において、制御装置100が、中継装置210を自動プロビジョニングする動作について、図8を参照して説明する。
図8は、本発明の第1実施形態の制御装置100の動作の例を示すフローチャートである。以下では、制御装置100が中継装置210に対して、通信中継用の中継装置OS部320を起動すると決定する場合を例にして説明する。
制御装置100は、中継装置210と接続される。
制御装置100は、論理ネットワーク構成入力部107を介して、ユーザや他のシステムから、論理ネットワーク構成情報を取得する。制御装置100は、中継装置情報入力部105を介して、ユーザや他のシステムから、中継装置情報を取得する(S101)。
制御装置100は、論理ネットワーク構成情報と中継装置情報から、中継装置210において起動する中継装置OSとして、通信中継用の中継装置OSを起動することを決定する(S102)。
制御装置100は、通信中継用の中継装置OSの制御プログラムを、中継装置210が保持しているかを問い合わせる(S103)。
中継装置210が、通信中継用の中継装置OSの制御プログラムを保持している場合(S104のYes)、中継装置210において、通信中継用の中継装置OS部320が起動される。
中継装置210が、通信中継用の中継装置OSの制御プログラムを保持していない場合(S104のNo)、制御装置100は、中継装置210からDHCPクエリーを受信し、応答として、DHCPレスポンスを送信する(S105)。
制御装置100は、中継装置210から通信中継用の中継装置OSのダウンロード要求を受信し、応答として、通信中継用の中継装置OSの制御プログラムを中継装置210へ転送する(S106)。
本発明の第1実施形態において、中継装置210が、制御装置100によって自動プロビジョニングされる動作について、図9を参照して説明する。
図9は、本発明の第1実施形態の中継装置210の動作の例を示すフローチャートである。
中継装置210は、制御装置100と接続される。
中継装置210は、制御装置100から、通信中継用の中継装置OSの制御プログラムを保持しているか問い合わせを受信する(S201)。
中継装置210が、通信中継用の中継装置OSの制御プログラムを保持している場合(S202のYes)、中継装置210は、通信中継用の中継装置OS部320を起動する。
中継装置210が、通信中継用の中継装置OSの制御プログラムを保持していない場合(S202のNo)、中継装置210は、ダウンロード用の中継装置OS部310を起動する(S203)。
中継装置210は、制御装置100に対してDHCPクエリーを送信し、応答として、DHCPレスポンスを取得する(S204)。
中継装置210は、制御装置100に対して、通信用の中継装置OSのダウンロードを要求する。中継装置210は、ダウンロード要求の応答として、制御装置100から通信用の中継装置OSの制御プログラムを取得し、インストールする(S205)。
中継装置210は、インストールした通信中継用の中継装置OSの制御プログラムから、通信中継用の中継装置OS部320を起動する(S206)。
本発明の第1実施形態における、制御装置100の動作について、図10を参照してより詳細に説明する。
図10は、本発明の第1実施形態における制御装置100のネットワーク構成登録の動作例を示すシーケンス図である。
中継装置情報入力部105は、例えば、ユーザまたは他のシステムから中継装置情報の入力を受け付ける(S301)。
中継装置情報入力部105は、ユーザまたは他のシステムから入力された中継装置情報を、中継装置情報記憶部104に保存する(S302)。
論理ネットワーク構成入力部107は、ユーザまたは他のシステムから論理ネットワーク構成情報の入力を受け付ける(S303)。
論理ネットワーク構成入力部107は、ユーザまたは他のシステムから入力された論理ネットワーク構成情報を、論理ネットワーク構成記憶部106に保存する(S304)。
論理ネットワーク構成入力部107は、ユーザまたは他のシステムから論理ネットワーク作成の指示を受け付ける(S305)。
論理ネットワーク構成入力部107は、ユーザまたは他のシステムから論理ネットワーク作成の指示を受信すると、中継装置OS決定部108に、中継装置OSの決定を要求する(S306)。
中継装置OS決定部108は、論理ネットワーク構成記憶部106から、論理ネットワーク構成情報を取得する(S307)。
中継装置OS決定部108は、中継装置情報記憶部104から、中継装置情報を取得する(S308)。
中継装置OS決定部108は、取得した論理ネットワーク構成情報と、中継装置情報とから、中継装置210において起動する中継装置OSを決定する(S309)。
中継装置OS決定部108は、中継装置OSダウンロードサーバ部103へ、中継装置210において起動する中継装置OSの情報を通知する(S310)。
中継装置OS決定部108は、中継装置情報記憶部104へ、中継装置210において起動する中継装置OSの情報を保存する(S311)。
本発明の第1実施形態において、中継装置210が制御装置100から中継装置OSをインストールする動作について、図11を参照して説明する。
図11は、本発明の第1実施形態において、中継装置210が制御装置100から中継装置OSをインストールする動作例を示すシーケンス図である。以下では、中継装置210が通信中継用の中継装置OSの制御プログラムを保持していない場合を例にして説明する。
中継装置OS選択部211は、制御装置100から、制御装置100が中継装置210において起動することを決定した中継装置OS(通信中継用の中継装置OS)の情報を受信する。中継装置OS選択部211は、通信中継用の中継装置OSの起動を試みる。この場合、中継装置210は、中継装置OS記憶部212に通信中継用の中継装置OSの制御プログラムを保持していないため、ダウンロード用の中継装置OSを起動することを決定する(S401)。
中継装置OS選択部211は、中継装置OS記憶部212から、ダウンロード用中継装置OSの制御プログラムを読み出す(S402)。
中継装置OS選択部211は、中継装置OS記憶部212から読み出したダウンロード用の中継装置OSの制御プログラムから、ダウンロード用の中継装置OS部310を起動する(S403)。
ダウンロード用の中継装置OS部310において、DHCPクライアント部311は、制御装置通信部213及び中継装置通信部109を介して、制御装置100のDHCPサーバ部101に、DHCPクエリーを送信する(S404)。
DHCPサーバ部101は、DHCPクライアント部311から受信したDHCPクエリーから、該DHCPクエリーを送信した中継装置210を特定する(S405)。
DHCPサーバ部101は、DHCPクエリーを送信した中継装置210に、通信に必要な情報を割り当ててDHCPレスポンスとしてまとめ、制御装置通信部213及び中継装置通信部109を介して、DHCPクライアント部311へ送信する(S406)。
中継装置OSダウンロード部312は、予め保存されているURLなどのダウンロード要求先(制御装置100)の情報に基づき、制御装置通信部213及び中継装置通信部109を介して、中継装置OSダウンロードサーバ部103に、中継装置OSのダウンロードを要求する(S407)。
中継装置OSダウンロードサーバ部103は、中継装置210から受信したダウンロード要求から、該ダウンロード要求を送信した中継装置210を特定する(S408)。
中継装置OSダウンロードサーバ部103は、中継装置OSのダウンロード要求を送信した中継装置210の中継装置情報を、中継装置情報記憶部104から取得する(S409)。中継装置OSダウンロードサーバ部103は、中継装置情報から、該中継装置210が起動する中継装置OSは、通信中継用の中継装置OSであることを判断する。
中継装置OSダウンロードサーバ部103は、中継装置OSデータ保管部102から、通信中継用の中継装置OSの制御プログラムを取得する(S410)。
中継装置OSダウンロードサーバ部103は、中継装置OSダウンロード部312へ、通信中継用の中継装置OSの制御プログラムを送信する。中継装置OSダウンロード部312は、制御装置通信部213及び中継装置通信部109を介して、中継装置OSダウンロードサーバ部103から通信中継用の中継装置OSの制御プログラムを受信(ダウンロード)する(S411)。
中継装置OSダウンロード部312は、中継装置OSインストール部313へ、中継装置OSダウンロードサーバ部103から受信した通信中継用の中継装置OSのインストールを要求する(S412)。
中継装置OSインストール部313は、中継装置OS記憶部212へ、通信中継用の中継装置OSの制御プログラムを保存(インストール)する(S413)。
中継装置OSインストール部313は、インストールが完了すると、中継装置OS選択部211へインストール完了通知を送信する(S414)。
中継装置OS選択部211は、中継装置OSインストール部313からインストール完了通知を受信すると、中継装置OS記憶部212から中継装置OSの制御プログラムを読み出す(S415)。
中継装置OS選択部211は、インストールした中継装置OSの制御プログラムから、通信中継用の中継装置OS部320を起動する(S416)。
以下では、中継装置210が、通信中継用の中継装置OS部320を起動した場合の動作例を説明する。
通信中継用の中継装置OS部320が起動後、マネジメント機能部321は、中継装置210のコンフィグレーションを実行する。
マネジメント機能部321は、コンフィグレーションの結果を、中継用ハードウェア制御部323へ転送する。
プロトコルスタック部322は、例えば、他の中継装置210と、プロトコルを交換する。
プロトコルスタック部322は、他の中継装置210から得られたプロトコルを保存する。
プロトコルスタック部322は、保存したプロトコルの内容を、中継用ハードウェア制御部323へ転送する。
中継用ハードウェア制御部323は、マネジメント機能部321から、コンフィグレーションの結果を受信する。
中継用ハードウェア制御部323は、プロトコルスタック部322から、プロトコルの保存内容を受信する。
中継用ハードウェア制御部323は、該コンフィグレーションの結果と該プロトコルの保存内容から、中継装置210のハードウェア設定を行う。
[効果の説明]
上記のとおり、本発明の第1の実施形態において、制御装置100に中継装置情報と論理ネットワーク構成情報が入力されることで、制御装置100は中継装置210で起動する中継装置OSを決定する。中継装置210は、該中継装置OSの制御プログラムが自装置にない場合には、制御装置100へ要求して、自装置へインストールする。これにより、制御装置100が中継装置210を自動プロビジョニングすることが可能になる。そのため、ユーザは自身で論理ネットワーク構築のための中継装置OS設定をする必要がなくなり、ネットワークの構築を簡素化することができる。
また、制御装置100によって自動的にプロビジョニングが可能になることから、ユーザが設定を行う場合よりも、迅速に中継装置210の役割を変更することが可能である。
また、本発明の第1の実施形態において、中継装置210は、自装置に必要な中継装置OSを選択してインストールすることが可能になる。そのため、中継装置210はあらかじめ使用する可能性のある中継装置OSの制御プログラムを全て保持している場合よりも少量のデータ容量で、各種処理を行うことが可能である。
[第2の実施の形態]
[構成の説明]
本発明の第2の実施形態を、図面を参照して詳細に説明する。なお、第2の実施形態の技術は、第1の実施形態、及び、後述の実施形態のいずれにも適用可能である。
第2の実施形態の通信システムの構成例は、図1に例示する第1の実施形態の通信システムの構成例と同様であるため、詳細な説明は省略される。
図12は、本願発明の第2の実施形態における制御装置100の構成例である。
制御装置100は、中継装置OSダウンロードサーバ部103と、中継装置OS決定部108と、中継装置通信部109とを含む。
なお、図12の構成要素103、108、109を繋ぐ実線は論理的な通信ないし呼び出し可能な関係を示したものであり、本発明が構成要素103、108、109の実装は、この形状で接続されている構成やネットワークに限定されるものではない。
中継装置OSダウンロードサーバ部103は、中継装置OS決定部108から、中継装置210にダウンロードする中継装置OSの情報を通知される。
中継装置OSダウンロードサーバ部103は、中継装置通信部109を介して、中継装置OS決定部108から通知された中継装置210にダウンロードする中継装置OSの制御プログラムが、中継装置210に保存されているか問い合わせる。
中継装置OSダウンロードサーバ部103は、中継装置通信部109を介して、中継装置210から中継装置OSの制御プログラムのダウンロード要求を受信する。中継装置210から受信するダウンロード要求のプロトコルは、例えば、HTTPやIP、TCP、FTPを用いる。
中継装置OSダウンロードサーバ部103は、例えば、受信したダウンロード要求から、ダウンロード要求を送信した中継装置210の中継装置識別情報を取得する。中継装置識別情報とは、例えば、MACアドレスやIPアドレス、TCPアドレス、シリアル番号、IPアドレスを参照するURLである。なお、中継装置識別情報を取得する動作を行うのは中継装置OSダウンロードサーバ部103に限定されず、例えば、中継装置通信部109が中継装置識別情報を取得して、中継装置OSダウンロードサーバ部103へ転送してもよい。
中継装置OSダウンロードサーバ部103は、中継装置通信部109を介して、該中継装置OSの制御プログラムを、ダウンロード要求を送信した中継装置210へ送信する。
中継装置OS決定部108は、例えば、ユーザや他のシステムから、中継装置情報の入力を受け付ける。
中継装置OS決定部108は、例えば、ユーザや他のシステムから、論理ネットワーク構成の入力を受け付ける。
中継装置OS決定部108は、例えば、ユーザや他のシステムから、論理ネットワークの作成指示を受け付ける。
中継装置OS決定部108は、例えば、ユーザや他のシステムから論理ネットワークの作成指示を受信した場合、中継装置情報と論理ネットワーク構成情報とから、中継装置210が起動する中継装置OSを決定する。
中継装置OS決定部108は、中継装置OSダウンロードサーバ部103へ中継装置210が起動する中継装置OSの情報を通知する。
中継装置通信部109は、制御用リンクを介して、中継装置210との通信を行う。
中継装置通信部109は、中継装置OSダウンロードサーバ部103から、中継装置210において起動する中継装置OSが、中継装置210に保存されているかの問い合わせを受信する。中継装置通信部109は、制御用リンクを介して、該中継装置OSダウンロードサーバ部103からの問い合わせを、中継装置210へ転送する。
中継装置通信部109は、制御用リンクを介して、中継装置210から中継装置OSのダウンロード要求を受信する。中継装置通信部109は、中継装置210から受信したダウンロード要求を、中継装置OSダウンロードサーバ部103へ転送する。
中継装置通信部109は、中継装置OSダウンロードサーバ部103から中継装置OSの制御プログラムを受信する。中継装置通信部109は、中継装置OSダウンロードサーバ部103から受信した中継装置OSの制御プログラムを、制御用リンクを介して、中継装置210へ転送する。
なお、中継装置通信部109は、例えば、中継装置210から受信した中継装置OSのダウンロード要求から、中継装置210の中継装置識別情報を取得して、中継装置OSダウンロードサーバ部103へ転送してもよい。
図13は、本発明の第2の実施形態における、中継装置210の構成例を示す。
中継装置210は、中継装置OS選択部211と、制御装置通信部213とを含む。
なお、図13の構成要素211と213を繋ぐ実線は、論理的な通信ないし呼び出し可能な関係を示したものであり、本発明が構成要素211と213の実装は、この形状で接続されている構成やネットワークに限定されるものではない。
中継装置OS選択部211は、例えば、制御装置100と中継装置210接続時に、制御装置通信部213を介して、制御装置100から中継装置210で起動する中継装置OSの情報を受信する。ただし、中継装置OSの情報の通知は、制御装置100と中継装置210接続時に限られず、例えば、中継装置210を起動時に通知されてもよいし、ユーザや他のシステムから要求を受けた時や、一定時間ごとに更新されてもよい。
中継装置OS選択部211は、制御装置100から受信した中継装置OSの情報に基づいて、中継装置210において起動する中継装置OSの制御プログラムの起動を試みる。
該中継装置OSの制御プログラムが中継装置210に保存されている場合、中継装置OS選択部211は、例えば、該中継装置OSの制御プログラムを読み出し、中継装置OS部を起動する。
該中継装置OSの情報が中継装置210に保存されていない場合、中継装置OS選択部211は、ダウンロード用の中継装置OSの制御プログラムを読み出し、ダウンロード用の中継装置OS部310を起動する。
中継装置OS選択部211は、中継装置OSインストール部313からインストール完了通知を受信すると、インストールされた中継装置OSの制御プログラムから、中継装置OSを起動する。
制御装置通信部213は、制御用リンクを介して、制御装置100との通信を行う。
制御装置通信部213は、例えば、制御装置100から、制御装置100が中継装置210において起動すると決定した中継装置OSの制御プログラムを、中継装置210が保持しているかの問い合わせを受信する。
制御装置通信部213は、該問い合わせを、中継装置OS選択部211へ転送する。
制御装置通信部213は、例えば、中継装置OSダウンロード部312から、中継装置OSのダウンロード要求を受信する。制御装置通信部213は、中継装置OSダウンロード部312から受信したダウンロード要求を、制御装置100へ転送する。
制御装置通信部213は、制御装置100から、中継装置OSの制御プログラムを受信する。制御装置通信部213は、制御装置100から受信した中継装置OSの制御プログラムを、中継装置OSダウンロード部312へ転送する。
図14は、本発明の第2の実施形態において、中継装置OS選択部211がダウンロード用の中継装置OS部310を起動後の構成例を示す。
中継装置210は、中継装置OS選択部211と、制御装置通信部213と、ダウンロード用の中継装置OS部310とを含む。
なお、図14の構成要素211、213、310、312、313、を繋ぐ実線は、論理的な通信ないし呼び出し可能な関係を示したものであり、本発明が構成要素211、213、310、312、313の実装は、この形状で接続されている構成やネットワークに限定されるものではない。
また、本発明の第2の実施形態における中継装置210の構成要素211、213は、図13に例示する中継装置210の構成要素211から213と同様であるため、詳細な説明は省略される。
ダウンロード用の中継装置OS部310は、中継装置OSダウンロード部312と、中継装置OSインストール部313と、を含む。
中継装置OSダウンロード部312は、制御装置通信部213を介して、制御装置100へ、中継装置210が起動する中継装置OSのダウンロード要求を送信する。中継装置210から受信するダウンロード要求のプロトコルは、例えば、HTTPやIP、TCP、FTPを用いる。
中継装置OSダウンロード部312は、制御装置100から、中継装置210が起動する中継装置OSの制御プログラムを受信する。つまり、中継装置OSダウンロード部312は、中継装置OSの制御プログラムを制御装置100からダウンロードする。
中継装置OSダウンロード部312は、ダウンロードした中継装置OSの制御プログラムを、中継装置OSインストール部313へ転送し、中継装置OSインストール部313に該中継装置OSのインストールを要求する。
なお、中継装置OSダウンロード部312は、例えば、図15のように、中継装置OSインストール部313の機能として実行されてもよい。
中継装置OSインストール部313は、中継装置OSダウンロード部312から、中継装置OSの制御プログラムを受信する。
中継装置OSインストール部313は、例えば、中継装置OSダウンロード部312から受信した中継装置OSの制御プログラムを、中継装置210で使用可能な状態に変換する。つまり、中継装置OSインストール部313は、中継装置OSをインストールする。
なお、制御装置100は、中継装置OSダウンロード部312から受信した中継装置OSの制御プログラムにインストール用のプログラムを含ませて、中継装置OSインストール部313は該プログラムを読み出すことによってインストールを行ってもよい。
中継装置OSインストール部313は、中継装置OSのインストールが完了後に、中継装置OS選択部211へインストール完了通知を送信する。
[動作の説明]
本発明の第2実施形態において、制御装置100が、中継装置210を自動プロビジョニングする動作について、図16を参照して説明する。
図16は、本発明の第2実施形態の制御装置100の動作の例を示すフローチャートである。以下では、制御装置100が中継装置210に対して、通信中継用の中継装置OS部320を起動すると決定する場合を例にして説明する。
制御装置100は、中継装置210と接続される。
制御装置100はユーザや他のシステムから、論理ネットワーク構成情報を取得する。制御装置100はユーザや他のシステムから、中継装置情報を取得する(S501)。
制御装置100は、論理ネットワーク構成情報と中継装置情報から、中継装置210において起動する中継装置OSとして、通信中継用の中継装置OSを起動することを決定する(S502)。
制御装置100は、通信中継用の中継装置OSの制御プログラムを、中継装置210が保持しているかを問い合わせる(S503)。
中継装置210が、通信中継用の中継装置OSの制御プログラムを保持している場合(S504のYes)、中継装置210において、通信中継用の中継装置OS部320が起動される。
中継装置210が、通信中継用の中継装置OSの制御プログラムを保持していない場合(S504のNo)、制御装置100は、中継装置210からダウンロード要求を受信し、応答として、通信中継用の中継装置OSの制御プログラムを転送する(S505)。
本発明の第2実施形態において、中継装置210が、制御装置100によって自動プロビジョニングされる動作について、図17を参照して説明する。
図17は、本発明の第2実施形態の中継装置210の動作の例を示すフローチャートである。
中継装置210は、制御装置100と接続される。
中継装置210は、制御装置100から、通信中継用の中継装置OSの制御プログラムを保持しているか問い合わせを受信する(S601)。
中継装置210が、通信中継用の中継装置OSの制御プログラムを保持している場合(S602のYes)、中継装置210は、通信中継用の中継装置OS部320を起動する。
中継装置210が、通信中継用の中継装置OSの制御プログラムを保持していない場合(S602のNo)、中継装置210は、ダウンロード用の中継装置OS部310を起動する(S603)。
中継装置210は、制御装置100に対して、通信用の中継装置OSのダウンロードを要求する。中継装置210は、ダウンロード要求の応答として、制御装置100から通信用の中継装置OSの制御プログラムを取得し、インストールする(S604)。
中継装置210は、インストールした通信中継用の中継装置OSの制御プログラムから、通信中継用の中継装置OS部320を起動する(S605)。
本発明の第2実施形態における、制御装置100の動作について、図18を参照してより詳細に説明する。
図18は、本発明の第1実施形態における制御装置100のネットワーク構成登録の動作例を示すシーケンス図である。
中継装置OS決定部108は、ユーザまたは他のシステムから中継装置情報の入力を受け付ける(S701)。
中継装置OS決定部108は、ユーザまたは他のシステムから論理ネットワーク構成情報の入力を受け付ける(S702)。
中継装置OS決定部108は、ユーザまたは他のシステムから論理ネットワーク作成の指示を受け付ける(S703)。
中継装置OS決定部108は、取得した中継装置情報と、論理ネットワーク構成情報とから、中継装置210において起動する中継装置OSを決定する(S704)。
中継装置OS決定部108は、中継装置OSダウンロードサーバ部103へ、中継装置210において起動する中継装置OSの情報を通知する(S705)。
本発明の第2実施形態において、中継装置210が制御装置100から中継装置OSをインストールする動作について、図19を参照して説明する。
図19は、本発明の第1実施形態において、中継装置210が制御装置100から中継装置OSをインストールする動作例を示すシーケンス図である。以下では、中継装置210が通信中継用の中継装置OSの制御プログラムを保持していない場合を例にして説明する。
中継装置OS選択部211は、制御装置100から、制御装置100が中継装置210において起動すると判断した中継装置OS(通信中継用の中継装置OS)の情報を受信する。中継装置OS選択部211は、通信中継用の中継装置OSの起動を試みる。この場合、中継装置210は、通信中継用の中継装置OSの制御プログラムを保持していないため、ダウンロード用の中継装置OSを起動することを決定する(S801)。
中継装置OS選択部211は、ダウンロード用の中継装置OS部310を起動する(S802)。
ダウンロード用の中継装置OS部310において、中継装置OSダウンロード部312は、制御装置通信部213及び中継装置通信部109を介して、制御装置100の中継装置OSダウンロードサーバ部103に、中継装置OSのダウンロードを要求する(S803)。
中継装置OSダウンロードサーバ部103は、中継装置210から受信したダウンロード要求から、該ダウンロード要求を送信した中継装置210を特定する(S804)。
中継装置OSダウンロードサーバ部103は、ダウンロード要求を送信した中継装置210に対応する、中継装置OS(通信中継用の中継装置OS)の制御プログラムを、該中継装置210へ送信する。中継装置OSダウンロード部312は、中継装置OSダウンロードサーバ部103から通信中継用の中継装置OSの制御プログラムを受信(ダウンロード)する(S805)。
中継装置OSダウンロード部312は、中継装置OSインストール部313へ、中継装置OSダウンロードサーバ部103から受信した通信中継用の中継装置OSのインストールを要求する(S806)。
中継装置OSインストール部313は、通信中継用の中継装置OSの制御プログラムを保存(インストール)する(S807)。
中継装置OSインストール部313は、インストールが完了すると、中継装置OS選択部211へインストール完了通知を送信する(S808)。
中継装置OS選択部211は、インストールした中継装置OSの制御プログラムから、通信中継用の中継装置OS部320を起動する(S809)。
第2の実施形態における通信中継用の中継装置OS部320を起動した場合の動作例は、第1の実施形態における通信中継用の中継装置OS部320を起動した場合の動作例と同様であるため、詳細な説明は省略される。
[効果の説明]
上記のとおり、本発明の第2の実施形態において、制御装置100に中継装置情報と論理ネットワーク構成情報が入力されることで、制御装置100は中継装置210で起動する中継装置OSを決定する。中継装置210は、該中継装置OSの制御プログラムが自装置にない場合には、制御装置100へ要求して、自装置へインストールする。これにより、制御装置100が中継装置210を自動プロビジョニングすることが可能になる。そのため、ユーザは自身で論理ネットワーク構築のための中継装置OS設定をする必要がなくなり、ネットワークの構築を簡素化することができる。
また、制御装置100によって自動的にプロビジョニングが可能になることから、ユーザが設定を行う場合よりも、迅速に中継装置210の役割を変更することが可能である。
また、本発明の第2の実施形態において、中継装置210は、自装置に必要な中継装置OSを選択してインストールすることが可能になる。そのため、中継装置210はあらかじめ使用する可能性のある中継装置OSの制御プログラムを全て保持している場合よりも少量のデータ容量で、各種処理を行うことが可能である。
[第3の実施の形態]
[構成の説明]
本発明の第3の実施形態を、図面を参照して詳細に説明する。なお、第3の実施形態の技術は、第1の実施形態、及び、第2の実施形態のいずれにも適用可能である。
第3の実施形態の通信システムの構成例は、図1に例示する第1の実施形態の通信システムの構成例と同様であるため、詳細な説明は省略される。
図20は、第3の実施形態の制御装置100の構成例を示すブロック図である。図20に示すように、第3の実施形態の制御装置100は、OS決定部410と、通信部420とを含む。なお、OS決定部410と、通信部420とは、図2や図12の制御装置100の中継装置OS決定部108と、中継装置通信部109とにそれぞれ対応する。
OS決定部410は、ネットワークの構成に関する情報に基づき、当該ネットワークに含まれる複数の中継装置の各々に対して、当該ネットワークにおける当該複数の中継装置の各々の機能に応じたOSを決定する。ネットワークの構成に関する情報は、例えば、図4に示す論理ネットワーク構成情報である。OS決定部410は、例えば、ネットワークの構成に関する情報に基づいて、当該ネットワークに必要な中継装置を決定する。
OS決定部410は、例えば、決定した中継装置に対して、当該中継装置で起動すべきOSを、当該中継装置の機能に応じて決定する。OS決定部410は、例えば、ネットワークにおいて、通信中継用として機能する中継装置に対しては、当該通信中継用のOSを決定する。また、OS決定部410は、例えば、ネットワークにおいて、ルータとして機能する中継装置に対しては、当該ルータ用のOSを決定する。また、OS決定部410は、例えば、ネットワークにおいて、ロードバランサとして機能する中継装置に対しては、当該ロードバランサ用のOSを決定する。
通信部420は、複数の中継装置の各々に対して、決定したOSに関する情報を通知する。通信部420は、例えば、複数の中継装置の各々に対して、中継装置OSの制御プログラムを通知する。
なお、通信部420は、複数の中継装置の各々に対して、決定したOSに関する情報の通知前に、当該決定したOSを保持しているか否かを問い合わせてもよい。この場合、通信部420は、当該問い合わせの応答として、決定したOSに関する情報の通知を要求された場合に、当該要求のあった中継装置に対して、当該決定したOSに関する情報を通知する。
図21は、第3の実施形態の中継装置210の構成例を示すブロック図である。図21に示すように、第3の実施形態の中継装置210は、OS選択部430と、通信部440とを含む。なお、OS選択部430と、通信部440とは、図5や図13などの中継装置210の中継装置OS選択部211と、制御装置通信部213とにそれぞれ対応する。
OS選択部430は、通信部440を介して、例えば、制御装置100から受信したOSに関する情報に基づいて、当該OSを起動する。OS選択部430は、例えば、所定のOSの制御プログラムを受信し、当該所定のOSを起動する。
なお、OS選択部430は、OSに関する情報の受信前に、通信部440を介して、当該OSに関する情報を中継装置210が保持しているか否かの問い合わせを受信してもよい。OS選択部430は、制御装置100から当該問い合わせを受信した場合、当該決定したOSに関する情報を保持していないことに応じて、当該決定したOSに関する情報を要求する。一方、OS選択部430は、当該決定したOSに関する情報を保持している場合に、当該保持しているOSに関する情報に基づいて、当該OSを起動する。
図22は、第3の実施形態における制御装置100の動作例を示すフローチャートである。
OS決定部410は、ネットワークの構成に関する情報に基づき、当該ネットワークに含まれる複数の中継装置の各々に対して、当該ネットワークにおける当該複数の中継装置の各々の機能に応じたOSを決定する(S901)。OS決定部410は、例えば、決定した中継装置に対して、当該中継装置で起動すべきOSを、当該中継装置の機能に応じて決定する。
通信部420は、複数の中継装置の各々に対して、決定したOSに関する情報を通知する(S902)。通信部420は、例えば、複数の中継装置の各々に対して、中継装置OSの制御プログラムを通知する。
[効果の説明]
上記のとおり、第3の実施形態において、制御装置100が中継装置210で起動する中継装置OSを決定し、当該中継装置210に決定した中継装置OSを通知する。そのため、制御装置100が、中継装置210を自動プロビジョニングすることが可能となる。その結果、例えばユーザなどがネットワーク構築のための中継装置OS設定をする必要がなくなり、当該ネットワーク構築を簡素化することができる。
また、制御装置100によって自動的にプロビジョニングが可能になることから、例えばユーザなどが設定を行う場合よりも、迅速に中継装置210の役割を変更することが可能となる。
本発明の実施形態の中継装置210及び制御装置100の各構成要素は、CPU(Central Processing Unit)又はMPU(Micro−Processing Unit)、メモリ等が、図5又は図2の構成要素を実現するソフトウェア(プログラム)を実行してもよい。また、そのプログラムを格納する記憶装置、通信用インタフェース、を備える上述した任意のコンピュータのハードウェアとソフトウェアの任意の組合せによって実行してもよい。図20及び図21は、ハードウェア単位の構成ではなく、論理的な機能単位のブロックを示している。
また、制御装置及び中継装置は、例えばCD−R(Compact Disc Recordable)等の各種記憶媒体又はネットワークを介して、上述した各実施形態の機能を実現するソフトウェア(プログラム)を取得してもよい。制御装置及び中継装置が取得するプログラムや該プログラムを記憶した記憶媒体は、本発明を構成することになる。なお、該ソフトウェア(プログラム)制御装置及び中継装置のコンピュータ、CPU又はMPU等は、例えば、制御装置及び中継装置に含まれる所定の記憶部に、予め記憶されていてもよい。制御装置及び中継装置のコンピュータ、CPU又はMPU等は、取得したソフトウェア(プログラム)のプログラムコードを読み出して実行してもよい。
なお、本発明は、上記したそれぞれの実施形態に限定されるものではない。本発明は、各実施形態の変形・置換・調整に基づいて実施できる。また、本発明は、各実施形態を任意に組み合わせて実施することもできる。即ち、本発明は、本明細書の全ての開示内容、技術的思想に従って実現できる各種変形、修正を含む。また、本発明は、SDN(Software−Defined Network)の技術分野にも適用可能である。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
[付記1]
ネットワークにおける通信を中継する複数の中継装置と、
前記複数の中継装置を制御する制御装置と、を含み、
前記制御装置は、
前記ネットワークの構成に関する情報に基づき、前記複数の中継装置の各々に対して、当該複数の中継装置の各々の機能に応じたOSを決定する
ことを特徴とする通信システム。
[付記2]
前記制御装置は、
前記複数の中継装置の各々に対して、前記決定したOSに関する情報を通知するメッセージを送信する
ことを特徴とする付記1に記載の通信システム。
[付記3]
前記制御装置は、
前記複数の中継装置の各々に対して、前記決定したOSに関する情報を保持しているか否かを問い合わせ、当該決定したOSに関する情報を保持していない中継装置に対して、当該決定したOSに関する情報を通知する
ことを特徴とする付記1または2のいずれかに記載の通信システム。
[付記4]
前記複数の中継装置の各々は、
前記制御装置から前記問い合わせを受信した場合、当該決定したOSに関する情報を保持していない場合に、当該決定したOSに関する情報を制御装置に制御装置に要求するメッセージを送信する
ことを特徴とする付記3に記載の通信システム。
[付記5]
前記複数の中継装置の各々は、
前記制御装置から前記問い合わせを受信した場合、前記決定したOSに関する情報を保持している場合に、当該決定したOSを起動する
ことを特徴とする付記3または4に記載の通信システム。
[付記6]
前記複数の中継装置の各々は、
前記制御装置から前記決定したOSに関する情報を受信したことに応じて、当該決定したOSを起動する
ことを特徴とする付記2乃至4のいずれかに記載の通信システム。
[付記7]
前記制御装置は、
前記複数の中継装置の各々に関する情報を記憶しており、
前記ネットワークの構成に関する情報と、前記記憶する複数の中継装置に関する情報とに基づき、前記複数の中継装置の各々に対して、当該複数の中継装置の各々の機能に応じた当該複数の中継装置の各々の機能に応じたOSを決定する
ことを特徴とする付記1乃至6に記載の通信システム。
[付記8]
ネットワークの構成に関する情報に基づき、当該ネットワークに含まれる複数の中継装置の各々に対して、当該複数の中継装置の各々の機能に応じたOSを決定するOS決定部と、
前記複数の中継装置の各々に対して、前記決定したOSに関する情報を通知するメッセージを送信する通信部と
を備える制御装置。
[付記9]
前記通信部は、
前記複数の中継装置の各々に対して、前記決定したOSに関する情報を通知するメッセージを送信する
ことを特徴とする付記8に記載の制御装置。
[付記10]
前記通信部は、
前記複数の中継装置の各々に対して、前記決定したOSに関する情報を保持しているか否かを問い合わせ、当該決定したOSに関する情報を保持していない中継装置に対して、当該決定したOSに関する情報を通知する
ことを特徴とする付記8または9のいずれかに記載の制御装置。
[付記11]
前記複数の中継装置の各々に関する情報を記憶する構成記憶部をさらに備え、
前記OS決定部は、
前記ネットワークの構成に関する情報と、前記記憶する複数の中継装置に関する情報とに基づき、前記複数の中継装置の各々に対して、当該複数の中継装置の各々の機能に応じたOSを決定する
ことを特徴とする付記8乃至10に記載の制御装置。
[付記12]
ネットワークにおける通信を中継する中継装置であって、
OSに関する情報を保持しているか否かの問い合わせを受信する通信部と、
前記決定したOSに関する情報を保持していない場合に、当該OSに関する情報を要求するOS選択部と、
を備えることを特徴とする中継装置。
[付記13]
前記OS選択部は、
前記OSに関する情報を受信したことに応じて、当該OSを起動する
ことを特徴とする付記12に記載の中継装置。
[付記14]
前記OS選択部は、
前記問い合わせを受信した場合、前記OSに関する情報を保持している場合に、当該OSを起動する
ことを特徴とする付記12または13に記載の中継装置。
[付記15]
ネットワークの構成に関する情報に基づき、当該ネットワークに含まれる複数の中継装置の各々に対して、当該複数の中継装置の各々の機能に応じたOSを決定するステップと、
前記複数の中継装置の各々に対して、前記決定したOSに関する情報を通知するメッセージを送信するステップと
を含むことを特徴とする制御方法。
[付記16]
前記複数の中継装置の各々に対して、前記決定したOSに関する情報を通知するメッセージを送信するステップ
をさらに含むことを特徴とする付記15に記載の制御方法。
[付記17]
ネットワークの構成に関する情報に基づき、当該ネットワークに含まれる複数の中継装置の各々に対して、当該複数の中継装置の各々の機能に応じたOSを決定する手段と、
前記複数の中継装置の各々に対して、前記決定したOSに関する情報を通知するメッセージを送信する手段とを、コンピュータに実行させることを特徴とするプログラム。
[付記18]
前記複数の中継装置の各々に対して、前記決定したOSに関する情報を通知するメッセージを送信する手段
をさらに含むことを特徴とする付記17に記載のプログラム。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2016年2月26日に出願された日本出願特願2016−035377を基礎とする優先権を主張し、その開示の全てをここに取り込む。