(57)【特許請求の範囲】
【請求項１】
複数のSpine装置と複数のLeaf装置とを有するＣＬＯＳネットワークを複数備えるネットワークにおいて、前記Spine装置と前記Leaf装置のアドレス設定を行うネットワーク管理装置であって、
前記Spine装置と前記Leaf装置に設定するアドレスの始点となる始点アドレス、および、前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数を記憶する記憶部と、
前記始点アドレス、および、前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数に基づいて、前記ＣＬＯＳネットワークごとのアドレスの始点となるＣＬＯＳネットワーク別始点アドレスを決定し、
前記ＣＬＯＳネットワークごとに、前記ＣＬＯＳネットワーク別始点アドレス、および、前記Spine装置の台数と前記Leaf装置の台数に基づいて、前記Spine装置と前記Leaf装置のアドレスを設定する処理部と、
を備え、
前記処理部は、
前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数の積の降順順位に基づいて、前記ＣＬＯＳネットワークのクラスタＩＤを決定し、
前記降順順位が高い前記ＣＬＯＳネットワークから順に並ぶように、前記ＣＬＯＳネットワーク別始点アドレスを決定し、
一の前記ＣＬＯＳネットワークの前記Spine装置と前記Leaf装置のアドレスを、当該ＣＬＯＳネットワークのネットワーク別始点アドレス以降であって、次のクラスタＩＤの前記ＣＬＯＳネットワークのネットワーク別始点アドレスよりも前に設定する
ことを特徴とするネットワーク管理装置。
【請求項２】
請求項１におけるネットワーク管理装置によって管理される前記ＣＬＯＳネットワークごとに設置されるＣＬＯＳネットワーク管理装置であって、
自身の前記ＣＬＯＳネットワークにおいて、前記Spine装置および前記Leaf装置のいずれかが増設される場合、
自身の前記ＣＬＯＳネットワークにおける前記Spine装置の台数と前記Leaf装置の台数に基づいて、当該増設される装置のアドレスを決定し、
当該増設される装置に対して、前記決定したアドレスを通知し、
既存の前記Spine装置および前記Leaf装置のうち、当該増設される装置と接続されている装置に対して、当該増設される装置との通信用の設定情報を通知する
ことを特徴とするＣＬＯＳネットワーク管理装置。
【請求項３】
前記記憶部は、前記ＣＬＯＳネットワーク同士の接続に用いるＣＬＯＳネットワーク別インタフェースアドレスを決定するための始点となるＣＬＯＳネットワーク間始点インタフェースアドレスを記憶しており、
前記処理部は、
前記ＣＬＯＳネットワーク間始点インタフェースアドレス、および、前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数に基づいて、それぞれの前記ＣＬＯＳネットワーク別インタフェースアドレスを決定し、
前記決定したＣＬＯＳネットワーク別インタフェースアドレスを、前記ＣＬＯＳネットワークごとに設置されるそれぞれのＣＬＯＳネットワーク管理装置に送信し、当該ＣＬＯＳネットワーク管理装置に配下の前記Spine装置および前記Leaf装置に通知させることで、前記ＣＬＯＳネットワーク同士の接続を行う
ことを特徴とする請求項１に記載のネットワーク管理装置。
【請求項４】
複数のSpine装置と複数のLeaf装置とを有するＣＬＯＳネットワークを複数備えるネットワークにおいて、前記Spine装置と前記Leaf装置のアドレス設定を行うネットワーク管理装置によるアドレス設定方法であって、
前記ネットワーク管理装置は、
前記Spine装置と前記Leaf装置に設定するアドレスの始点となる始点アドレス、および、前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数を記憶する記憶部と、処理部と、を備えており、
前記処理部は、
前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数の積の降順順位に基づいて、前記ＣＬＯＳネットワークのクラスタＩＤを決定し、
前記始点アドレス、および、前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数に基づいて、前記ＣＬＯＳネットワークごとのアドレスの始点となるＣＬＯＳネットワーク別始点アドレスを、前記降順順位が高いＣＬＯＳネットワークから順に並ぶように決定し、
前記ＣＬＯＳネットワークごとに、前記ＣＬＯＳネットワーク別始点アドレス、および、前記Spine装置の台数と前記Leaf装置の台数に基づいて、一の前記ＣＬＯＳネットワークの前記Spine装置と前記Leaf装置のアドレスが、当該ＣＬＯＳネットワークのネットワーク別始点アドレス以降であって、次のクラスタＩＤの前記ＣＬＯＳネットワークのネットワーク別始点アドレスよりも前となるように、前記Spine装置と前記Leaf装置のアドレスを設定する
ことを特徴とするアドレス設定方法。
【請求項５】
請求項４のアドレス設定方法を行う前記ネットワーク管理装置によって管理される前記ＣＬＯＳネットワークごとに設置されるＣＬＯＳネットワーク管理装置によるアドレス設定方法であって、
前記ＣＬＯＳネットワーク管理装置は、
自身の前記ＣＬＯＳネットワークにおいて、前記Spine装置および前記Leaf装置のいずれかが増設される場合、
自身の前記ＣＬＯＳネットワークにおける前記Spine装置の台数と前記Leaf装置の台数に基づいて、当該増設される装置のアドレスを決定し、
当該増設される装置に対して、前記決定したアドレスを通知し、
既存の前記Spine装置および前記Leaf装置のうち、当該増設される装置と接続されている装置に対して、当該増設される装置との通信用の設定情報を通知する
ことを特徴とするアドレス設定方法。
【請求項６】
前記記憶部は、前記ＣＬＯＳネットワーク同士の接続に用いるＣＬＯＳネットワーク別インタフェースアドレスを決定するための始点となるＣＬＯＳネットワーク間始点インタフェースアドレスを記憶しており、
前記処理部は、
前記ＣＬＯＳネットワーク間始点インタフェースアドレス、および、前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数に基づいて、それぞれの前記ＣＬＯＳネットワーク別インタフェースアドレスを決定し、
前記決定したＣＬＯＳネットワーク別インタフェースアドレスを、前記ＣＬＯＳネットワークごとに設置されるそれぞれのＣＬＯＳネットワーク管理装置に送信し、当該ＣＬＯＳネットワーク管理装置に配下の前記Spine装置および前記Leaf装置に通知させることで、前記ＣＬＯＳネットワーク同士の接続を行う
ことを特徴とする請求項４に記載のアドレス設定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＬＯＳネットワークを複数備えるネットワークにおけるネットワーク装置のアドレス設定に関する。
【背景技術】
【０００２】
近年、通信用のネットワークは、巨大化、複雑化が進んでいる。つまり、ネットワーク装置の数が増え、また、それらの接続関係が複雑になってきている。そのため、ネットワーク装置の設定や管理が煩雑になってきている。
【０００３】
そこで、例えば、ＳＤＮ（Software Defined Networking）の技術によりネットワーク装置の設定の自動化が図られている。ＳＤＮとしては、例えば、オープンソースで公開されているOpenContrail（非特許文献１）では、仮想的なネットワークを、ユーザからの指示に従い自由に半自動的に設定することができる。また、このOpenContrailについて、非特許文献２には具体的な内容が開示されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】「OpenContrail - An open-source network virtualization platform for the cloud.」、[online]、OpenContrail、[２０１５年７月３０日検索]、インターネット＜ＵＲＬ：http://www.opencontrail.org/＞
【非特許文献２】「ＣＯＮＴＲＡＩＬアーキテクチャ」、[online]、ＪＵＮＩＰＥＲ  ＮＥＴＷＯＲＫＳ、[２０１５年６月２２日検索]、インターネット＜ＵＲＬ：http://www.juniper.net/jp/jp/local/pdf/whitepapers/2000535-jp.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、前記した従来技術では、ネットワーク装置の設定の自動化は、オーバレイネットワーク部分を対象としている。つまり、既に物理的なネットワーク装置が構成されていて疎通性が確保されている環境があることを前提に、ソフトウェアを用いてその上に仮想的なネットワークを構成するための設定を行う。
【０００６】
一方、近年では、いわゆるSpine&Leaf型の２階層構成で複数のSpine装置と複数のLeaf装置とを有するＣＬＯＳネットワークを複数備えるネットワークが、高スケーラビリティ等の観点から、多く用いられている。そして、そのようなネットワークにおいて、物理的なネットワーク装置のアドレスを自動設定する技術は、今までになかった。
【０００７】
そこで、本発明は、ＣＬＯＳネットワークを複数備えるネットワークにおいて、物理的なネットワーク装置のアドレスを自動設定することを課題とする。
【課題を解決するための手段】
【０００８】
前記課題を解決するために、本発明は、複数のSpine装置と複数のLeaf装置とを有するＣＬＯＳネットワークを複数備えるネットワークにおいて、前記Spine装置と前記Leaf装置のアドレス設定を行うネットワーク管理装置であって、前記Spine装置と前記Leaf装置に設定するアドレスの始点となる始点アドレス、および、前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数を記憶する記憶部と、前記始点アドレス、および、前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数に基づいて、前記ＣＬＯＳネットワークごとのアドレスの始点となるＣＬＯＳネットワーク別始点アドレスを決定し、前記ＣＬＯＳネットワークごとに、前記ＣＬＯＳネットワーク別始点アドレス、および、前記Spine装置の台数と前記Leaf装置の台数に基づいて、前記Spine装置と前記Leaf装置のアドレスを設定する処理部と、を備え、前記処理部は、前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数の積の降順順位に基づいて、前記ＣＬＯＳネットワークのクラスタＩＤを決定し、前記降順順位が高い前記ＣＬＯＳネットワークから順に並ぶように、前記ＣＬＯＳネットワーク別始点アドレスを決定し、一の前記ＣＬＯＳネットワークの前記Spine装置と前記Leaf装置のアドレスを、当該ＣＬＯＳネットワークのネットワーク別始点アドレス以降であって、次のクラスタＩＤの前記ＣＬＯＳネットワークのネットワーク別始点アドレスよりも前に設定することを特徴とする。
【０００９】
これにより、始点アドレス、および、ＣＬＯＳネットワークごとのSpine装置の台数とLeaf装置の台数を登録しておくだけで、自動的にSpine装置とLeaf装置のアドレスを設定することができる。
【００１０】
また、本発明は、前記ネットワーク管理装置によって管理される前記ＣＬＯＳネットワークごとに設置されるＣＬＯＳネットワーク管理装置であって、自身の前記ＣＬＯＳネットワークにおいて、前記Spine装置および前記Leaf装置のいずれかが増設される場合、自身の前記ＣＬＯＳネットワークにおける前記Spine装置の台数と前記Leaf装置の台数に基づいて、当該増設される装置のアドレスを決定し、当該増設される装置に対して、前記決定したアドレスを通知し、既存の前記Spine装置および前記Leaf装置のうち、当該増設される装置と接続されている装置に対して、当該増設される装置との通信用の設定情報を通知することを特徴とする。
【００１１】
これにより、Spine装置、Leaf装置の増設時に、増設される装置のアドレスを決定し、当該増設される装置にその決定したアドレスを通知するとともに、既存のSpine装置、Leaf装置に対して当該増設される装置との通信用の設定情報を通知することができる。
【００１２】
また、本発明は、前記記憶部が、前記ＣＬＯＳネットワーク同士の接続に用いるＣＬＯＳネットワーク別インタフェースアドレスを決定するための始点となるＣＬＯＳネットワーク間始点インタフェースアドレスを記憶しており、前記処理部が、前記ＣＬＯＳネットワーク間始点インタフェースアドレス、および、前記ＣＬＯＳネットワークごとの前記Spine装置の台数と前記Leaf装置の台数に基づいて、それぞれの前記ＣＬＯＳネットワーク別インタフェースアドレスを決定し、前記決定したＣＬＯＳネットワーク別インタフェースアドレスを、前記ＣＬＯＳネットワークごとに設置されるそれぞれのＣＬＯＳネットワーク管理装置に送信し、当該ＣＬＯＳネットワーク管理装置に配下の前記Spine装置および前記Leaf装置に通知させることで、前記ＣＬＯＳネットワーク同士の接続を行うことを特徴とする。
【００１３】
これにより、ＣＬＯＳネットワーク同士の接続を自動的に行うことができる。
【発明の効果】
【００１４】
本発明によれば、ＣＬＯＳネットワークを複数備えるネットワークにおいて、物理的なネットワーク装置のアドレスを自動設定することができる。
【図面の簡単な説明】
【００１５】
【図１】本実施形態のネットワークの構成例を示す図である。
【図２】クラスタ内の通信等についての説明図である。
【図３】１つのクラスタについてのアドレス計算結果例を示す図である。
【図４】事前の情報登録に関する説明図である。
【図５Ａ】アドレスを計算、配布する処理のシーケンス図である。
【図５Ｂ】図５Ａの処理で用いる各情報の構成例である。
【図６Ａ】（ａ）は、接続情報テーブル、論理ＩＦ情報テーブルを生成する処理のシーケンス図である。（ｂ）は、１つのクラスタについてのアドレス計算結果例を示す図である。
【図６Ｂ】（ａ）は、論理ＩＦ情報テーブルの構成例である。（ｂ）は、接続情報テーブルの構成例である。
【図７】ネットワーク装置を増設する処理のシーケンス図である。
【図８Ａ】１つのクラスタと中継装置の構成例を示す図である。
【図８Ｂ】（ａ）は、論理ＩＦ情報テーブルの構成例である。（ｂ）は、接続情報テーブルの構成例である。
【図９】クラスタ間を接続する処理のシーケンス図である。
【発明を実施するための形態】
【００１６】
以下、本発明を実施するための形態について、説明する。本実施形態では、複数のSpine装置と複数のLeaf装置とを有するＣＬＯＳネットワークを複数備えるネットワークにおいて、Spine装置とLeaf装置のアドレス設定を行うネットワーク管理装置等について説明する。なお、ＣＬＯＳネットワークは、近年、データセンタ等で多く用いられ、例えば、ＥＣＭＰ（Equal Cost Multi Path。「https://tools.ietf.org/html/rfc2992」参照）を用いて通信する。
【００１７】
図１は、本実施形態のネットワークＳの構成例を示す図である。ネットワークＳは、上位コントローラ１（ネットワーク管理装置）、バックボーンネットワーク２、および、複数のクラスタ３（ＣＬＯＳネットワーク）から構成される。
【００１８】
上位コントローラ１は、処理部１１、記憶部１２等を備え、ネットワークＳ全体を管理、制御する（詳細は後記）。
バックボーンネットワーク２は、複数の伝送装置やレイヤ２スイッチなどの通信を中継する中継装置２１を備えている。中継装置２１は、異なる２つのクラスタ３のスパインスイッチ３２（Spine装置）同士の通信を仲介する。
【００１９】
クラスタ３は、いわゆるSpine&Leaf型の２階層構成で複数のSpine装置（第１階層装置）と複数のLeaf装置（第２階層装置）とを有するＣＬＯＳネットワークであり、図１の例では、Cluster1〜4の４つのクラスタが設けられている。以下、クラスタ３について、「Cluster1〜4」、「Cluster1」等と記載する場合がある。
【００２０】
クラスタ３のうち、代表してCluster1について説明すると、Cluster1は、コントローラ３１（ＣＬＯＳネットワーク管理装置）、複数のスパインスイッチ３２（Spine1,2）（ネットワーク装置）、複数のリーフスイッチ３３（Leaf1〜4）（Leaf装置。ネットワーク装置）、複数のサーバ３４を備えている。なお、図１におけるクラスタ３ごとのスパインスイッチ３２の数、リーフスイッチ３３の数は例示であり、これらに限定されず、この例示より多くても少なくてもよい。
【００２１】
コントローラ３１は、すべてのリーフスイッチ３３と接続されている。また、複数のスパインスイッチ３２と、複数のリーフスイッチ３３とは、フルメッシュで接続されている。また、複数のサーバ３４それぞれは、いずれかのリーフスイッチ３３と接続されている。
【００２２】
なお、経路広告、Ｍ（Management）プレーン、Ｕ（User）プレーンについては、図示の通りである。
【００２３】
次に、図２を参照して、クラスタ内の通信等について説明する。クラスタ３（図２では代表してCluster1）のコントローラ３１は、ＤＢ（Data Base）３１１、設定制御部３１２、ＤＨＣＰ（Dynamic Host Configuration Protocol）サーバ部３１３、Syslogサーバ部３１４を備える。なお、ＤＨＣＰサーバ部３１３は、ここではコントローラ３１に物理的に内包されているものとするが、これに限定されず、物理的に外部に分離されていてもよい。ＤＢ３１１についても同様である。
【００２４】
ＤＢ３１１、ＤＨＣＰサーバ部３１３を含むコントローラ３１は、クラスタ３ごとに存在し、ＩＰアドレスを用いて接続できるＩＰ接続性で上位コントローラ１と通信する。
【００２５】
また、スパインスイッチ３２とリーフスイッチ３３の間の接続（データトラフィックが流通する接続）と独立に、スパインスイッチ３２とリーフスイッチ３３は、それぞれ、コントローラ３１と接続する（図２の例ではスイッチ３５を介して）。
【００２６】
また、ＤＨＣＰサーバ部３１３は、ＤＨＣＰデータを受信するために、スパインスイッチ３２、リーフスイッチ３３と同じレイヤ２セグメントに存在する。
なお、本実施形態では、スパインスイッチ３２、リーフスイッチ３３は、例としてＬ３スイッチとして説明するが、同等機能を持つルータ、ＰＣ、サーバなどのホスト・ノードとして実現してもよい。
【００２７】
本実施形態では、リーフスイッチ３３を増設する際に、上位コントローラ１で自動的にそのアドレスを計算してコントローラ３１に通知する仕組みについて説明する。
【００２８】
まず、使用するパラメータについて説明する。
・インタフェースアドレス始点ＩＰアドレス：Ｘ（入力値）
・ループバックアドレス始点ＩＰアドレス：Ｙ（入力値。入力値がない場合、式（４）による）
・マネジメントアドレス始点ＩＰアドレス：Ｚ（入力値。入力値がない場合、式（６）による）
なお、各始点ＩＰアドレスにおける「始点」とは、計算の始点の意味である。
【００２９】
・クラスタＩＤ：Ｃ（開始値：１）
（Ｃは最大Spine台数と最大Leaf台数の積の降順順位)
図１の例では、Cluster1〜4の最大Spine台数と最大Leaf台数の積は、それぞれ、２×４＝８、２×５＝１０、２×２０＝４０、２×３＝６である。よって、Cluster1〜4の積の降順順位は、３，２，１，４である。
したがって、Cluster1〜4のクラスタＩＤは、それぞれ、「３」、「２」、「１」、「４」となる。
【００３０】
・最大Spine台数:SmaxC
・最大Leaf台数:LmaxC
・最大クラスタＩＤ:Cmax
【００３１】
なお、ここでは、インタフェースアドレス、ループバックアドレス、マネジメントアドレスの各始点ＩＰアドレスを使用するものとしたが、そのうち必須の情報はインタフェースアドレス始点ＩＰアドレスである。これを上位コントローラ１が記憶部１２の上位ＤＢに他の情報（上記パラメータ等）とともに保持する。
【００３２】
そして、上位コントローラ１は、以下の計算を行う。
【数１】
0006471066.tif 000002
（但し、Ｃ＞１の場合のみ。Ｃ＝１の場合ＵＣ＝０）。
なお、log2(Smaxi×Lmaxi)の両側の記号は、天井関数を表す。
【００３３】
【数２】
0006471066.tif 000003
（但し、Ｃ＞１の場合のみ。Ｃ＝１の場合ＶＣ＝０）
【００３４】
ＸＣ＝Ｘ＋ＵＣ  ・・・式（３）
Ｙ＝ＸＣｍａｘ＋１  ・・・式（４）
ＹＣ＝Ｙ＋ＶＣ  ・・・式（５）
Ｚ＝ＹＣｍａｘ＋１  ・・・式（６）
ＺＣ＝Ｚ＋ＶＣ  ・・・式（７）
但しＳｍａｘ０＝０，  Ｌｍａｘ０＝０
【００３５】
ここで、クラスタＩＤが「Ｃ」のクラスタ３に着目すると、使用するパラメータは次の通りである。
・インタフェースアドレス始点ＩＰアドレス：ＸＣ（ＣＬＯＳネットワーク別始点アドレス）
・ループバックアドレス始点ＩＰアドレス：ＹＣ
・マネジメントアドレス始点ＩＰアドレス：ＺＣ
・最大Spine台数：SmaxC
・最大Leaf台数：LmaxC
・Spine装置番号（開始値：１）：Ｓｎ（ｎ＝１，２，３，・・・，SmaxC）
・Leaf装置番号（開始値：１）：Ｌｋ（ｋ＝１，２，３，・・・，LmaxC）
【００３６】
そして、Ｓｎ−Ｌｋ間リンクＳｎ側ＩＰアドレスは、次の式（８）により計算する。
ＸＣ＋（（Ｓｎ−１）＊ＬｍａｘＣ＋（Ｌｋ−１））＊２  ・・・式（８）
【００３７】
また、Ｓｎ−Ｌｋ間リンクＬｋ側ＩＰアドレスは、次の式（９）により計算する。
ＸＣ＋（（Ｓｎ−１）＊ＬｍａｘＣ＋（Ｌｋ−１））＊２＋１  ・・・式（９）
【００３８】
また、以下の式（１０）〜（１３）の通り、各アドレスを計算する。
・ＳｎループバックＩＰアドレス＝ＹＣ＋Ｓｎ  ・・・式（１０）
・ＳｎマネージメントＩＰアドレス＝ＺＣ＋Ｓｎ  ・・・式（１１）
・ＬｋループバックＩＰアドレス＝ＹＣ＋ＳｍａｘＣ＋Ｌｋ  ・・・式（１２）
・ＬｋマネージメントＩＰアドレス＝ＺＣ＋ＳｍａｘＣ＋Ｌｋ  ・・・式（１３）
【００３９】
計算結果例を図３に示す。図３では、図１のCluster1に関し、ＸＣ＝10.0.0.0とする。式（８）、（９）による番号付与の考え方としては、Spine装置番号の昇順の先頭の装置のポート番号の先頭のポートから偶数アドレスを付与し、各Spine装置のポートの対向のLeaf装置のポートに＋１のアドレスを付与する、というものである。
【００４０】
例えば、Spine1において、ポート「１」にはインタフェースアドレス「10.0.0.0（図３では「.0」と表記。以下同様）」が付与され、ポート「２」にはインタフェースアドレス「10.0.0.2」が付与されている。また、Leaf1において、ポート「１」にはインタフェースアドレス「10.0.0.1」が付与されている。また、Leaf2において、ポート「１」にはインタフェースアドレス「10.0.0.3」が付与されている。
【００４１】
図４以降に、処理シーケンス、各コントローラが保有するデータ例等を示す。
図４は、事前の情報登録に関する説明図である。
まず、上位コントローラ管理者１Ｍが上位コントローラ１を用いて各クラスタ３内で使用するネットワーク機器を識別するスイッチ機種情報５（図４（ｂ））を登録すると（図４（ａ）のステップＳ１）、上位コントローラ１の記憶部１２の上位ＤＢ（図２）が更新される（ステップＳ２）。
【００４２】
図４（ｂ）に示す例のスイッチ機種情報５では、機種ＩＤ、機種名に対応して、起動完了判定メッセージとして、その装置が起動したときに最後に送信すると想定されるメッセージを登録する。また、起動イメージファイルパスや起動コンフィグファイルも設定可能であれば設定する。
【００４３】
次に、上位コントローラ管理者１Ｍが上位コントローラ１を用いてスイッチ機種情報５の配布指示をすると（ステップＳ３）、上位コントローラ１は各コントローラ３１にスイッチ機種情報５を配布する（ステップＳ４）。
【００４４】
次に、コントローラ管理者３１Ｍがコントローラ３１を用いてクラスタ内装置情報を登録すると（ステップＳ５）、コントローラ３１はＤＢ３１１を更新する（ステップＳ６）。具体的には、図４（ｃ）に示すクラスタ内装置情報テーブル６において、装置種別ＩＤ、装置番号、機種ＩＤ、ＭＡＣ（Media Access Control）アドレス（装置の個体識別用）、フラグ（ネットワークに存在している場合「１」、存在していない場合「０」）の各情報を登録する。
【００４５】
次に、図５Ａ，５Ｂを参照して、アドレスの配布方法について説明する。
まず、上位コントローラ管理者１Ｍが上位コントローラ１を用いてＷＡＮ情報７（図５Ｂ（ａ)）を登録すると（図５Ａ（ａ）のステップＳ１１）、上位コントローラ１の上位ＤＢ（図２）が更新される（ステップＳ１２）。
【００４６】
図５Ｂ（ａ）に示す例のＷＡＮ情報７では、インタフェースアドレス始点ＩＰアドレス（始点ＩＦ（Interface）アドレス：「Ｘ」に相当する値）、ループバックアドレス始点ＩＰアドレス（始点Ｌｏアドレス：「Ｙ」に相当する値）、マネジメントアドレス始点ＩＰアドレス（始点マネジメントアドレス：「Ｚ」に相当する値）、クラスタ間始点ＩＦアドレス（ＣＬＯＳネットワーク間始点インタフェースアドレス）を入力値として指定している。
【００４７】
次に、上位コントローラ管理者１Ｍが上位コントローラ１を用いてクラスタ情報８（図５Ｂ（ｂ)）を登録すると（ステップＳ１３）、コントローラ３１のＤＢ３１１が更新される（ステップＳ１４）。
【００４８】
図５Ｂ（ｂ）に示す例のクラスタ情報８は、クラスタＩＤ、クラスタ最大Spine数、クラスタ最大Leaf数、コントローラアドレスの各項目を備えている。このようなクラスタ情報８がコントローラ３１のＤＢ３１１に格納される。
【００４９】
次に、上位コントローラ管理者１Ｍが上位コントローラ１を用いてクラスタ始点アドレス等の計算を指示すると（ステップＳ１５）、上位コントローラ１は当該計算等を行い、各コントローラ３１に計算結果を配布する（ステップＳ１６）。
【００５０】
図５Ｂ（ｃ）は、計算結果としての例のCluster1に関するクラスタ情報８ａで、Cluster1のコントローラ３１に格納される。クラスタ情報８ａは、クラスタ最大Spine数、クラスタ最大Leaf数、始点ＩＦアドレス（ＣＬＯＳネットワーク別始点アドレス）、始点Ｌｏアドレス、始点マネジメントアドレスの各情報を有している。図５Ｂの（ｄ）（ｅ）（ｆ）のクラスタ情報８ｂ、８ｃ、８ｄについても同様である。
【００５１】
次に、図６Ａ，６Ｂを参照して、接続情報テーブルと論理ＩＦ情報テーブルの作成について説明する。上位コントローラ１が各コントローラ３１に計算結果を配布すると（図６Ａ（ａ)のステップＳ２１。図５のステップＳ１６に相当）、クラスタ情報（図５（ｃ）〜（ｆ））を得たコントローラ３１はＤＢ３１１内に自動的に図６Ｂ（ｂ）の接続情報テーブル９２と図６Ｂ（ａ）の論理ＩＦ情報テーブル９１を作成する（ステップＳ２２、Ｓ２３）。
【００５２】
なお、図６Ｂ（ａ）の論理ＩＦ情報テーブル９１では、論理ＩＦＩＤ、装置種別ＩＤ，装置番号、物理ＩＦに対応付けられるＩＰアドレス（インタフェースＩＰアドレス）は、図６Ａ（ｂ)に示す場合（始点アドレスが10.0.0.160、Spine数２、Leaf数４のCluster1）を前提とした値となっている。
【００５３】
論理ＩＦ情報テーブル９１では、各装置（Spine装置、Leaf装置）の物理ＩＦの番号の昇順に論理ＩＦを付与していく。この物理ＩＦの番号を昇順に取得する方法としては、例えば、ＳＮＭＰ（Simple Network Management Protocol）のＭＩＢ（Management Information Base）でifIndexを取得しその昇順で用いる方法が考えられる。利用環境によっては図６Ｂ（ａ）のように物理ＩＦが「１」から開始するとは限らず、図６Ｂ（ａ）の物理ＩＦの値は一例に過ぎない。例えば、利用したいインタフェースの名前のルール（例：図４（ｂ）のスイッチ機種情報５における機種ＩＤ「２」の行と同様に、Gigabit0,Gigabit1,・・・のようにGigabitが先頭につく）が決まっているならば、ＭＩＢでifNameを取得してifNameをその名前に抽出し、そのifIndexを昇順で使うという方法も考えられる。
【００５４】
また、図６Ｂ（ａ）の論理ＩＦ情報テーブル９１での表記と異なり、実際には、物理ＩＦにはクラスタで一意な番号を登録する。
【００５５】
また、図６Ｂ（ｂ）の接続情報テーブル９２では、図６Ａ（ｂ)に示す場合を前提として、装置種別ＩＤ、装置番号、物理ＩＦ、対向装置種別ＩＤ、対向装置番号、対向物理ＩＦの各情報が格納される。
【００５６】
次に、図７を参照して、上述のアルゴリズムを活用した装置増設の方法について説明する。なお、図７は、図４〜６に示した動作が実施済みであることを前提とする。ここで、図１のCluster1において、Leaf5を増設したものとする。
【００５７】
まず、コントローラ管理者３１Ｍはコントローラ３１を用いて装置情報を登録する、つまり、クラスタ内装置情報テーブル６を更新する（ステップＳ３０１）。具体的には、図７のクラスタ内装置情報テーブル６に示すように、最下行にLeaf5の装置種別ＩＤ、装置番号、機種ＩＤ、ＭＡＣアドレスが登録される。
【００５８】
装置情報が登録されると、ＤＨＣＰサーバ部３１３が動作するＤＨＣＰ設定を更新し（ステップＳ３０２）、ＭＡＣアドレス（またはマネジメントアドレス）とＩＰアドレス（式（９）で計算）を関連づける。なお、スイッチ機種情報５（図４）における起動イメージファイルパスや、起動コンフィグファイルを利用してもよい。
【００５９】
次に、保守者Ｍは、増設対象装置Ａ（Leaf5）の結線および起動を実施する（ステップＳ３０３）。
そうすると、増設対象装置Ａ（Leaf5）はＤＨＣＰ要求をし（ステップＳ３０４）、コントローラ３１内のＤＨＣＰサーバ部３１３はＤＨＣＰ応答する（ステップＳ３０５）。
【００６０】
また、Syslogサーバ部３１４の設定としてコントローラ３１のマネジメントアドレスを増設対象装置Ａ（Leaf5）に付与する（ステップＳ３０６）この方法としては、例えばＤＨＣＰのoption7（http://www.iana.org/assignments/bootp-dhcp-parameters/bootp-dhcp-parameters.xhtml）を用いる。
【００６１】
ステップＳ３０６の付与による設定を行った後、増設対象装置Ａ（Leaf5）はコントローラ３１に対して起動通知（起動完了判定メッセージを含む）を行う（ステップＳ３０７）。
【００６２】
次に、コントローラ３１は、ＤＢ３１１内のクラスタ内装置情報テーブル６（図４）のフラグを更新する、つまり、既にネットワークに存在していることを示すように「０」から「１」に書き換える（ステップＳ３０８）。
【００６３】
ステップＳ３０８の後、以下の設定を行う。
ステップＳ３０９では、コントローラ３１は、増設対象装置Ａ（Leaf5）に対して、本格設定として、インタフェースアドレスを設定するとともに、インタフェースへのＩＧＰ（Interior Gateway Protocol）有効化等を行う。
ステップＳ３０９では、増設対象装置Ａ（Leaf5）は、コントローラ３１に完了応答を行う。
【００６４】
また、ステップＳ３１１では、コントローラ３１は、既設対象装置Ｂ（Spine1,2）に対して、設定として、増設対象装置Ａ（Leaf5）と接続されているインタフェースへのインタフェースアドレスの設定とＩＧＰ（Interior Gateway Protocol）有効化等を行う。
ステップＳ３１１では、既設対象装置Ｂ（Spine1,2）は、コントローラ３１に完了応答を行う。
【００６５】
ステップＳ３０９〜Ｓ３１２は、例えば、ＣＬＩ（Command Line Interface）による設定や、NetConfプロトコルを用いての設定により、実現することができる。そして、論理ＩＦ情報テーブル９１（図６Ｂ（ａ)）を用いることで、前記計算した装置個々のインタフェースのＩＰアドレスを付与し、また、必要に応じてループバックのＩＰアドレスを付与することができる。
【００６６】
ステップＳ３１３で、コントローラ３１は、コントローラ管理者３１Ｍに対して結果を応答（表示）する。
【００６７】
以上の仕組みによって、ネットワークＳにおいて、始点となるインタフェースＩＰアドレス、装置（Spine装置、Leaf装置）台数を定めておくこと、及び、装置個体を識別する情報を持つのみで、クラスタ３内の接続性を確立することができる。
【００６８】
次に、クラスタ３間を接続する方法について説明する。
図８Ａに示すクラスタ３（図１のCluster1）の構成に関し、クラスタ３間を接続するための中継装置２１に接続するための情報として、図８Ｂ（ａ）の論理ＩＦ情報テーブル９１における下２行の情報と、図８Ｂ（ｂ）の接続情報テーブル９２における下２行の情報を、登録する。
【００６９】
この登録は、手作業で行ってもよいし、または、図６Ａ（ａ）に記載するシーケンスにおけるステップＳ２２、Ｓ２３における初期情報に含めることで自動的に行ってもよい。このようにして、中継装置２１に接続されているインタフェースと論理管理している論理インタフェースが関連付けられる。
【００７０】
次に、図９を参照して各装置の処理について説明する。ここでは、Cluster1とCluster2を接続する場合を例にとる。
まず、上位コントローラ管理者１Ｍは、上位コントローラ１に論理リンク情報を登録する（ステップＳ４０１）。論理リンク情報とは、各クラスタ３のコントローラ３１で管理する論理インタフェース同士の接続を示す情報である。
【００７１】
図９に示す例では、クラスタＩＤ「１」の論理インタフェース番号「１７」（内部接続用インタフェースが２（Ｓｐｉｎｅ台数）×４（Ｌｅａｆ台数）×２（両端点）＝１６の次の番号）と、対向するクラスタＩＤ「２」の論理インタフェース番号「２１」（内部接続用インタフェースが２（Ｓｐｉｎｅ台数）×５（Ｌｅａｆ台数）×２（両端点）＝２０の次の番号）を接続する。
【００７２】
上位コントローラ１は、図５Ｂ(ａ)のＷＡＮ情報７において、クラスタ間始点ＩＦアドレスを保持している、つまり、クラスタ間のインタフェースに対して割り振るアドレス（ＣＬＯＳネットワーク別インタフェースアドレス）の始点を保持している。これにより、上位コントローラ１は、以下の計算によりアドレスを自動決定し、Cluster1のコントローラ３１ａに通知する（ステップＳ４０２）。
【００７３】
（アドレス決定の考え方）
同一系の接続でアドレスを割り振る。
リンクは/31(IPv4), /127(IPv6)で割り振る。
（変数）
・自クラスタＩＤ：Ａ（「１」始まり）[クラスタ情報８（図５Ｂ（ｂ））から取得]
・対向クラスタＩＤ：Ｂ（「１」始まり）[クラスタ情報８（図５Ｂ（ｂ））から取得]
・総クラスタ数:Cmax[クラスタ情報８（図５Ｂ（ｂ））から取得、最大値をとる]
・設定系数：Ｗ（「０」始まり）[最大値はクラスタ情報８（図５Ｂ（ｂ））から取得、クラスタ内最大Spineの最大値]
・始点アドレス：Ｉ（０系面のアドレス範囲に連続して１系面、２系面と続く。）
【００７４】
（計算式）
・if (Ａ＜Ｂ)
{Ｉ＋Ｗ×Cmax×(Cmax-1)＋式（１４）
}
else if (Ａ>Ｂ)
{
Ｉ＋Ｗ×Cmax×(Cmax-1)＋式（１５）
}
【００７５】
【数３】
0006471066.tif 000004
ただし、ａ０＝０、ａｋ＝Ｃｍａｘ−ｋ
【００７６】
【数４】
0006471066.tif 000005
ただし、ａ０＝０、ａｋ＝Ｃｍａｘ−ｋ
【００７７】
なお、ここでの系（設定系数Ｗ）は、特定のクラスタ間の何本目のレイヤ３対地接続かということを指しており、１本目であれば０系、２本目であれば１系として計算する。
【００７８】
ステップＳ４０２で上位コントローラ１からCluster1コントローラ３１ａにアドレス（クラスタ番号、論理ＩＦ番号、Ipv4_addr/Ipv6_addr=上位コントローラ１の計算結果）通知があると、Cluster1コントローラ３１ａは、該当する論理インタフェースに対してＩＰアドレスを付与して自身のＤＢ３１１を更新（図８Ｂ（ａ）の論理ＩＦ情報テーブル９１ａの論理インタフェース「１７」「１８」を更新）し（ステップＳ４０３）、Cluster1対象装置３ａ（各Spine、各Leaf）にアドレス設定を行う（ステップＳ４０４）。
【００７９】
Cluster1コントローラ３１ａは、Cluster1対象装置３ａからアドレス設定の完了応答を受けると（ステップＳ４０５）、上位コントローラ１に完了応答を行う（ステップＳ４０６）。
【００８０】
ステップＳ４０７〜Ｓ４１１は、ステップＳ４０２〜Ｓ４０６と比べて、Cluster1コントローラ３１ａ、Cluster1対象装置３ａがCluster2コントローラ３１ｂ、Cluster2対象装置３ｂに変わっている以外は同様であるので、説明を省略する。
【００８１】
上位コントローラ１は、ステップＳ４０６、Ｓ４１１の完了応答を受けて、記憶部１２の上位ＤＢを更新する。
【００８２】
このように、本実施形態に係る上位コントローラ１等によれば、始点アドレス（インタフェースアドレス始点ＩＰアドレス）、および、ＣＬＯＳネットワークごとのSpine装置の台数とLeaf装置の台数を上位コントローラ１に登録しておくだけで、自動的にSpine装置とLeaf装置のアドレスを設定することができる。
【００８３】
したがって、ネットワーク装置（Spine装置、Leaf装置）の増設時や、ネットワーク装置の故障交換時において、保守者が詳細な設定を投入することなく装置個体を識別する情報のみを登録すれば、自動的にネットワーク装置に設定が投入され接続性を確立することができる。また、それらの接続性を確立するために用いられるＩＰアドレスは集約可能となるため、ＣＬＯＳネットワーク間の相互の接続を行う際に経路の増加を抑制することができる。
【００８４】
また、Spine装置、Leaf装置の増設時に、増設される装置のアドレスを決定し、当該増設される装置にその決定したアドレスを通知するとともに、既存のSpine装置、Leaf装置に対して当該増設される装置との通信用の設定情報を通知することができる。
【００８５】
また、図８Ａ〜図９を参照して説明したように、クラスタ３（ＣＬＯＳネットワーク）同士の接続を自動的に行うことができる。
【００８６】
以上で実施形態の説明を終えるが、本発明の態様はこれらに限定されるものではない。
例えば、本実施形態ではもっとも単純な例として、物理インタフェースでの接続を想定したが、実際にはＶＬＡＮ(Virtual Local Area Network)やＬＡＧ（Link Aggregation）などの仮想的なインタフェースを利用して対地間接続する場合もある。この場合については、論理ＩＦ情報テーブル９１（図６Ｂ(ａ)）、論理ＩＦ情報テーブル９１ａ（図８Ｂ（ａ））において物理ＩＦの代わりに上述の仮想的なインタフェースを管理すれば、同様の技術が実現できる。
その他、具体的な構成について、本発明の主旨を逸脱しない範囲で適宜変更が可能である。
【符号の説明】
【００８７】
１      上位コントローラ（ネットワーク管理装置）
２      バックボーンネットワーク
３      クラスタ
５      スイッチ機種情報
６      クラスタ内装置情報テーブル
７      ＷＡＮ情報
８      クラスタ情報
１２    記憶部
２１    中継装置
３１    コントローラ（ＣＬＯＳネットワーク管理装置）
３２    スパインスイッチ
３３    リーフスイッチ
３４    サーバ
３５    スイッチ
９１    論理ＩＦ情報テーブル
９２    接続情報テーブル
３１２  設定制御部
３１３  ＤＨＣＰサーバ部
３１４  Syslogサーバ部
【図１】
0006471066.tif 000006
【図２】
0006471066.tif 000007
【図３】
0006471066.tif 000008
【図４】
0006471066.tif 000009
【図５Ａ】
0006471066.tif 000010
【図５Ｂ】
0006471066.tif 000011
【図６Ａ】
0006471066.tif 000012
【図６Ｂ】
0006471066.tif 000013
【図７】
0006471066.tif 000014
【図８Ａ】
0006471066.tif 000015
【図８Ｂ】
0006471066.tif 000016
【図９】
0006471066.tif 000017