説明

ノード装置、サーバ装置およびノード接続管理方法

【課題】通信ネットワークのトポロジーも考慮して適切な機器の接続管理を行えるようにするノード装置、サーバ装置およびノード接続管理方法を提供する。
【解決手段】実施形態のノード装置は、取得部と、第1の送信部と、受信部と、接続制御部とを備える。取得部は、従属ノードとの間で論理接続を確立するのに先立ち、従属ノードから従属ノード認証情報および従属ノード識別情報を取得する。第1の送信部は、従属ノード認証情報を認証サーバに送信するとともに、トポロジー検証情報をトポロジー検証サーバに送信する。受信部は、認証サーバによる認証結果とトポロジー検証サーバによる検証結果を受信する。接続制御部は、認証サーバにより従属ノードが認証され、かつ、トポロジー検証サーバにより従属ノードとの間の論理接続が正当であると判断された場合に、従属ノードとの間の論理接続を確立する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施の形態は、ノード装置、サーバ装置およびノード接続管理方法に関する。
【背景技術】
【0002】
スマートグリッドと呼ばれる次世代エネルギー供給システムを構成する各種の通信ネットワークにおいては、不正な機器の使用が甚大な被害をもたらすため、通信ネットワークへの機器の接続が電力会社などによって管理されている。例えば、スマートメータをAMI(Advanced Metering Infrastructure)システムに接続する際には、電力会社がそのスマートメータに対する認証処理を行って正当性を検証する。そして、電力会社により正当性が認められたスマートメータのみが、AMIシステム上でアプリケーションデータの送受信を行えるようにしている。
【0003】
しかしながら、このような機器の接続管理方法では、機器の正当性が認められると通信ネットワークに接続可能となるため、正当な機器が、通信ネットワーク上の本来接続が意図されていない別の機器に誤って接続された場合であっても、その機器間の論理接続が許可されてしまう。例えば、隣家のHEMS(Home Energy Management System)が自宅のスマートメータに接続された場合であっても、隣家のHEMSの正当性が認められれば、隣家のHEMSと自宅のスマートメータとの間の論理接続が許可されて想定外の通信が行われることになってしまい、通信ネットワークに対する機器の接続管理を適切に行えないという問題点がある。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】“Guidelines for Smart Grid Cyber Security: Vol. 3, Supportive Analyses and References”, NIST Interoperability Requirements 7628, August 2010
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明が解決しようとする課題は、通信ネットワークのトポロジーも考慮して適切な機器の接続管理を行えるようにするノード装置、サーバ装置およびノード接続管理方法を提供することである。
【課題を解決するための手段】
【0006】
実施の形態のノード装置は、通信ネットワークを構成するノード装置である。このノード装置は、取得部と、第1の送信部と、受信部と、接続制御部と、を備える。取得部は、論理接続関係が下位の従属ノードとの間で論理接続を確立するのに先立ち、前記従属ノードから、前記従属ノードの認証に用いる従属ノード認証情報および前記従属ノードの識別情報を取得する。第1の送信部は、前記従属ノード認証情報を、前記通信ネットワーク上のノードの認証を行う第1のサーバ装置に送信するとともに、前記従属ノードの識別情報と自ノードの識別情報とを含むトポロジー検証情報を、前記通信ネットワーク上のノード間の論理接続が正当かどうかを判断する第2のサーバ装置に送信する。受信部は、前記従属ノード認証情報に基づいて前記第1のサーバ装置で行われた前記従属ノードの認証結果を受信するとともに、前記トポロジー検証情報に基づいて前記第2のサーバ装置で行われた前記従属ノードとの間の論理接続の正当性の判断結果を受信する。接続制御部は、前記第1のサーバ装置により前記従属ノードが認証され、かつ、前記第2のサーバ装置により前記従属ノードとの間の論理接続が正当であると判断された場合に、前記従属ノードとの間の論理接続を確立する。
【0007】
また、実施の形態のサーバ装置は、通信ネットワーク上のノード間の論理接続が正当かどうかの判断を行うサーバ装置である。このサーバ装置は、保持部と、受信部と、判断部と、送信部と、を備える。保持部は、前記通信ネットワークにおいて論理接続が許容されるノードの関係およびその論理接続を確立するための条件を示すトポロジー情報を保持する。受信部は、前記通信ネットワーク上の任意の主体ノードが当該主体ノードに対して論理接続関係が下位の従属ノードとの間で論理接続を確立するのに先立ち、前記主体ノードから、前記従属ノードの識別情報および前記主体ノードの識別情報を含むトポロジー検証情報を受信する。判断部は、前記トポロジー検証情報を前記トポロジー情報と照合し、前記従属ノードと前記主体ノードとの間の論理接続の正当性を判断する。送信部は、前記従属ノードと前記主体ノードとの間の論理接続の正当性の判断結果を、前記主体ノードに送信する。
【図面の簡単な説明】
【0008】
【図1】通信ネットワークの全体構成図。
【図2】ノード装置の内部的な機能構成を示す機能ブロック図。
【図3】トポロジー検証情報の一例を示す概念図。
【図4】ノード装置の動作を説明するフローチャート。
【図5】認証サーバの内部的な機能構成を示す機能ブロック図。
【図6】認証情報の一例を示す概念図。
【図7】認証サーバの動作を説明するフローチャート。
【図8】トポロジー検証サーバの内部的な機能構成を示す機能ブロック図。
【図9】トポロジー情報の一例を示す概念図。
【図10】トポロジー検証サーバの動作を説明するフローチャート。
【図11】通信ネットワーク全体における一連の動作の具体例を説明するシーケンス図。
【図12】通信ネットワーク全体における一連の動作の具体例を説明するシーケンス図。
【図13】トポロジー情報の他の例を示す概念図。
【図14】トポロジー情報の他の例を示す概念図。
【図15】トポロジー情報の他の例を示す概念図。
【発明を実施するための形態】
【0009】
(第1の実施形態)
図1は、第1の実施形態のノード装置およびサーバ装置を含む通信ネットワークの全体構成図である。この通信ネットワークは、複数のノード装置N11,N21,N22,N31,N32,N33と、各ノード装置の認証を行う認証サーバ(第1のサーバ装置)ASと、ネットワークトポロジーの検証を行ってノード間の論理接続が正当かどうかを判断するトポロジー検証サーバ(第2のサーバ装置)TSと、を備える。
【0010】
この図1に示す通信ネットワークにおいて、複数のノード装置は、論理接続の関係が階層構造となる無閉路有向グラフトポロジーを有する。階層の最上位となるノードが初段ノード装置N11であり、初段ノード装置N11の下位のノードとして、2つの第2段ノード装置N21,N22が初段ノード装置N11に対して論理接続される。また、第2段ノード装置N21の下位のノードとして、2つの第3段ノード装置N31,N32が第2段ノード装置N21に対して論理接続され、第2段ノードN22の下位のノードとして、2つの第3段ノード装置N32,N33が第2段ノードN22に対して論理接続される。
【0011】
一般に論理接続には方向性があり、図1中の矢印は、この論理接続の方向を示している。本明細書においては、2つのノード装置間で論理接続関係が上位のノード装置を「主体ノード」と呼び、論理接続関係が下位のノード装置を「従属ノード」と呼ぶ。すなわち、図1に示す通信ネットワークにおいて、初段ノード装置N11の従属ノードは第2段ノード装置N21,N22であり、第2段ノード装置N21の従属ノードは第3段ノード装置N31,N32であり、第2段ノード装置N22の従属ノードは第3段ノード装置N32,N33である。第3段ノード装置N31,N32,N33は、従属ノードを持たない。
【0012】
第3段ノード装置N31,N32,N33は、それぞれ、自ノードに対して主体ノードとなる第2段ノード装置N21,N22と、第2段ノード装置N21,N22に対して主体ノードとなる初段ノード装置N11とを経由することで、認証サーバASやトポロジー検証サーバTSとの間のデータ送受信が可能となる。また、第2段ノード装置N21,N22は、自ノードに対して主体ノードとなる初段ノード装置N11を経由することで、認証サーバASやトポロジー検証サーバTSとの間のデータ送受信が可能となる。なお、図1では、初段ノード装置N11に対して認証サーバASとトポロジー検証サーバTSとが直列に接続された構成を示しているが、認証サーバASとトポロジー検証サーバTSを初段ノード装置N11に対して並列に接続する構成であってもよい。また、図1に示す通信ネットワークでは、2つのノード装置間に論理接続は最大1つだけ存在するものとしているが、2つのノード装置間で方向の異なる2つの論理接続が存在することも可能である。この場合、論理接続の方向に従って、主体ノードと従属ノードとが入れ替わる。
【0013】
一般に、グラフトポロジーは階層化が可能である。第(N−1)階層のグラフトポロジーにおいて少なくとも1つの経路が存在するような任意の2つのノード間で第N階層の論理接続を定義することが可能であり、第N階層のある論理接続Xを構成する第(N−1)階層のグラフトポロジーの経路すべてが第(N−1)階層のある論理接続Yを経由する場合、論理接続Xは論理接続Yに依存すると呼ぶ。例えば、図1に示す通信ネットワークは第0階層のグラフトポロジーを表しており、この上位に、初段ノード装置N11を主体ノードとし第3段ノード装置N31を従属ノードとする論理接続を持つ第1階層のグラフトポロジーを定義することが可能である。この場合、初段ノード装置N11を主体ノードとし第3段ノード装置N31を従属ノードとする第1階層のグラフトポロジーの論理接続は、初段ノード装置N11を主体ノードとし第2段ノード装置N21を従属ノードとする第0階層のグラフトポロジーの論理接続、および、第2段ノード装置N21を主体ノードと第3段ノード装置N31を従属ノードとする第0階層のグラフトポロジーの論理接続の両方に依存する。第N階層のグラフトポロジーの論理接続は、単に第N階層の論理接続とも書き表される。
【0014】
図1に示す通信ネットワークは、例えば、スマートグリッドにおけるAMIシステムとして構成することができる。この場合、初段ノード装置N11の一例として、μEMS(Micro Energy Management System)や、MDMS(Meter Data Management System)サーバなどが挙げられる。また、第2段ノード装置N21の一例として、スマートメータが挙げられる。また、第2段ノード装置N22の一例として、CEMS(Community Energy Management System)が挙げられる。また、第3段ノード装置N31の一例として、電気自動車が挙げられる。また、第3段ノード装置N32の一例として、HEMS(Home Energy Management System)が挙げられる。また、第3段ノードN33の一例として、蓄電池が挙げられる。
【0015】
これらの各ノード装置は、それぞれ、他のノード装置との間でMAC層またはPHY層において物理的に直接接続するための機能を有する。MAC層での物理的な直接接続の一例としては、例えば、所定のデータリンクプロトコルフレームをノード装置間で送受信することが挙げられる。また、PHY層での物理的な直接接続の一例としては、例えば、ノード装置間で無線電波を送受信することが挙げられる。
【0016】
図2は、図1に示した通信ネットワークにおいて、従属ノードを有する(つまり、主体ノードとなり得る)初段ノード装置N11および第2段ノード装置N21,N22に共通の内部的な機能構成を示す機能ブロック図である。これら初段ノード装置N11および第2段ノード装置N21,N22(以下、特にこれらを区別する必要がない場合は、ノード装置Nxと総称する。)は、例えば、CPUやROM、RAM、入出力回路などを備えたマイクロコンピュータを備え、CPUがRAMをワークエリアとして利用して、ROMに格納された制御プログラムを実行することによって、従属ノードとの間の論理接続の確立に関わる主体ノードとしての制御機能として、取得部101、第1の送信部102、受信部103、接続制御部104および第2の送信部105の各機能を実現する。
【0017】
取得部101は、従属ノードとの間で論理接続を確立するのに先立ち、従属ノードから、従属ノードの認証に用いる従属ノード認証情報および従属ノードの識別情報を取得する。従属ノード認証情報としては、一般的なネットワークアクセス認証に用いる認証情報を利用することができる。また、従属ノードの識別情報としては、例えば、従属ノードのIPアドレスやMACアドレスを利用することができる。
【0018】
第1の送信部102は、取得部101が取得した従属ノード認証情報を認証サーバASに送信するとともに、取得部101が取得した従属ノードの識別情報と自ノードの識別情報とを含むトポロジー検証情報を、トポロジー検証サーバTSに送信する。
【0019】
図3は、トポロジー検証情報の一例を示す概念図である。トポロジー検証情報は、一例として、主体ノード識別情報と、従属ノード識別情報と、物理接続フラグとを含む。従属ノード識別情報は、上記の取得部101が取得した従属ノードの識別情報であり、主体ノード識別情報は、この従属ノードに対して主体ノードとなる自ノードの識別情報である。自ノードの識別情報としては、例えば、自ノードのIPアドレスやMACアドレスを利用することができる。また、物理接続フラグは、従属ノードが自ノードに対して物理的に直接接続されているか否かを示す1ビットの情報であり、従属ノードと自ノードとの間で上述したMAC層またはPHY層での物理的な直接接続が存在する場合には「1」、存在しない場合には「0」となる。なお、トポロジー検証サーバTSが複数のトポロジー階層を管理する場合には、物理フラグの代わりに、0以上の整数で表わされるトポロジー階層レベルを使用してもよく、その場合、トポロジー階層レベルの値「0」は物理接続フラグの値「1」に対応し、それ以外のトポロジー階層レベルの値は物理接続フラグの値「0」に対応する。
【0020】
第1の送信部102は、従属ノードが自ノードに対して物理的に直接接続されているか否かを判断し、自ノードの識別情報である主体ノード識別情報に、取得部101が取得した従属ノード識別情報と、従属ノードとの間の物理的な直接接続の有無を示す物理接続フラグとを付加してトポロジー検証情報を生成し、生成したトポロジー検証情報を、トポロジー検証サーバTSに送信する。
【0021】
受信部103は、従属ノード認証情報に基づいて認証サーバASで行われた従属ノードの認証結果を受信するとともに、トポロジー検証情報に基づいてトポロジー検証サーバTSで行われたトポロジー検証処理の結果、つまり、従属ノードと自ノードとの間の論理接続の正当性の判断結果を受信する。
【0022】
接続制御部104は、認証サーバASにより従属ノードが認証され、かつ、トポロジー検証サーバTSにより従属ノードと自ノードとの間の論理接続が正当であると判断された場合に、従属ノードとの間の論理接続を確立する。つまり、接続制御部104は、認証サーバASにより従属ノードが認証され、認証成功の認証結果を受信部103が受信した場合であっても、トポロジー検証サーバTSにより従属ノードと自ノードとの間の論理接続が正当でないと判断され、トポロジー検証失敗の検証結果を受信部103が受信すると、従属ノードとの間の論理接続を確立しない。接続制御部104は、この従属ノードの識別情報を一定時間記憶しておき、この間同じ従属ノードからの接続要求を直ちに拒否することも可能である。ここで、トポロジー検証サーバTSにより従属ノードと自ノードとの間の論理接続が正当でないと判断されるのは、例えば、従属ノードと自ノードとの論理接続が想定されていない場合や、従属ノードと自ノードとの間の論理接続を確立するための予め定められた制約条件(例えば、通信ネットワーク上の各ノード装置間の論理接続の順番や、物理的な直接接続の有無などの条件)を満たしていない場合などが挙げられる。なお、トポロジー検証サーバTSによるトポロジー検証の詳細は後述する。
【0023】
第2の送信部105は、接続制御部104によって従属ノードとの間の論理接続が確立された場合に、従属ノードとの間で論理接続が確立されている状態であることを示す接続状態更新情報をトポロジー検証サーバTSに送信するとともに、この従属ノードとの間の論理接続が解除された場合に、従属ノードとの間で論理接続が確立されていない状態であることを示す接続状態更新情報をトポロジー検証サーバTSに送信する。このように、第2の送信部105は、従属ノードとの間での論理接続の状態に関して、「確立」または「遮断」のいずれかを示すための接続状態更新情報を、トポロジー検証サーバTSに送信する。
【0024】
図4は、ノード装置Nxの動作を説明するフローチャートである。この図4のフローチャートで示す一連の処理は、ノード装置Nxが従属ノードとなる他のノード装置から論理接続要求を受信した場合に開始される。
【0025】
処理が開始されると、まずステップS101において、取得部101が、従属ノードから従属ノード認証情報と従属ノードの識別情報とを取得する。
【0026】
次に、ステップS102において、第1の送信部102が、自ノードの識別情報である主体ノード識別情報に、ステップS101で取得された従属ノード識別情報と、従属ノードとの間の物理的な直接接続の有無を示す物理接続フラグを付加して、トポロジー検証情報を生成する。そして、第1の送信部102は、ステップS101で取得された従属ノード認証情報を認証サーバASに送信するとともに、生成したトポロジー検証情報をトポロジー検証サーバTSに送信する。
【0027】
次に、ステップS103において、受信部103が、認証サーバASから従属ノードの認証結果Xを受信するとともに、トポロジー検証サーバTSからトポロジーの検証結果Yを受信する。
【0028】
次に、ステップS104において、接続制御部104が、ステップS103で受信した従属ノードの認証結果Xが認証成功を示すものであり、かつ、ステップS103で受信したトポロジーの検証結果Yがトポロジー検証成功を示すものであるか否かを判定する。そして、接続制御部104は、従属ノードの認証結果Xとトポロジーの検証結果Yのいずれかが失敗を示すものである場合には(ステップS104:No)、ステップS105において従属ノードとの間の論理接続の確立を拒否し、一連の処理を終了する。
【0029】
一方、従属ノードの認証結果Xとトポロジーの検証結果Yの双方が成功を示すものである場合には(ステップS104:Yes)、接続制御部104は、ステップS106において、従属ノードとの間の論理接続の確立を承認する。そして、所定時間が経過する前に従属ノードとの間の論理接続が確立されると(ステップS107:Yes、ステップS108:No)、ステップS109において、第2の送信部105が、従属ノードとの間で論理接続が確立されている状態であることを示す接続状態更新情報をトポロジー検証サーバTSに送信し、一連の処理を終了する。
【0030】
一方、接続制御部104が従属ノードとの間の論理接続の確立を承認したにも関わらず、従属ノードとの間の論理接続が確立することなく所定時間が経過した場合には(ステップS107:No、ステップS108:Yes)、そのまま処理を終了する。ここで、従属ノードとの間の論理接続が確立することなく所定時間が経過するのは、例えば、従属ノードからノード装置Nxに対して論理接続要求が誤って送信された場合などである。また、ノード装置Nxと従属ノードとの間で物理的な直接接続がない状態で、トポロジー検証サーバTSではトポロジー検証が成功したが、ノード装置Nxが、従属ノードとの間で論理接続を確立するにあたって物理的な直接接続が必要と判断して、論理接続を確立しない場合も想定される。このような場合にも、従属ノードとの間の論理接続が確立することなく所定時間が経過して、処理が終了する。
【0031】
次に、認証サーバASについて説明する。認証サーバASは、図1に示した通信ネットワーク上の各ノード装置に対する認証処理を行うサーバ装置である。
【0032】
図5は、認証サーバASの内部的な機能構成を示す機能ブロック図である。認証サーバASは、例えば、通信ネットワーク上で通信を行うための通信機能を備えた一般的なコンピュータを利用したハードウェア構成を有し、認証処理用のアプリケーションプログラムを実行することにより、認証情報保持部201、受信部202、認証処理部203および認証結果送信部204の各機能を実現する。
【0033】
認証情報保持部201は、通信ネットワーク上の各ノード装置に対する認証処理を行うための認証情報を保持する。
【0034】
図6は、認証情報保持部201が保持する認証情報の一例を示す概念図である。この図6に例示する認証情報は、通信ネットワーク上の正当なノードとして予め定められた各ノード装置の識別情報と、そのノード装置に対する認証鍵の2つの情報の組み合わせを1つのエントリとしてレコードするテーブルで表される。このうち、各ノード装置の識別情報は上述した従属ノード認証情報に含まれ、認証鍵は従属ノード認証情報には含まれない。図6に示す認証情報の例では、初段ノード装置N11の識別情報を「n11」、初段ノード装置N11に対する認証鍵を「k11」と表し、第2段ノード装置N21の識別情報を「n21」、第2段ノード装置N21に対する認証鍵を「k21」と表している。また、第2段ノード装置N22の識別情報を「n22」、第2段ノード装置N22に対する認証鍵を「k22」と表し、第3段ノード装置N31の識別情報を「n31」、第3段ノード装置N31に対する認証鍵を「k31」と表している。また、第3段ノード装置N32の識別情報を「n32」、第3段ノード装置N32に対する認証鍵を「k32」と表し、第3段ノード装置N33の識別情報を「n33」、第3段ノード装置N33に対する認証鍵を「k33」と表わしている。
【0035】
受信部202は、上記のノード装置Nxから、従属ノード認証情報を受信する。従属ノード認証情報は、上述したように、一般的なネットワークアクセス認証に用いる認証情報が利用できる。ここでは、従属ノード認証情報が、従属ノードの識別情報を含んでいるものとして説明する。
【0036】
認証処理部203は、受信部202がノード装置Nxから受信した従属ノード認証情報を、認証情報保持部201が保持する認証情報と照合し、ノード装置Nxに対して従属ノードとなるノード装置に対する認証処理を行う。認証情報の照合方法として、例えば共通鍵が認証鍵である場合には、ノード装置Nxから受信した従属ノード認証情報はノード装置Nxが自身の共通鍵を用いて計算した署名を含んでおり、認証処理部203は、受信した従属ノード認証情報に対してノード装置Nxに対する共通鍵を用いて計算した署名と、受信した従属ノード認証情報に含まれる署名が一致した場合に、照合が成功したとみなす。この場合、ノード装置Nxから受信する従属ノード認証情報には共通鍵は含まない。
【0037】
認証結果送信部204は、従属ノード認証情報に基づいて認証処理部203が実施した認証処理の結果、つまり、ノード装置Nxに対して従属ノードとなるノード装置の認証結果を、ノード装置Nxに対して送信する。
【0038】
図7は、認証サーバASの動作を説明するフローチャートである。まず、ステップS201において、受信部202が、ノード装置Nxから送信された従属ノード認証情報を受信する。次に、ステップS202において、認証処理部203が、ステップS201で受信した従属ノード認証情報を、認証情報保持部201が保持する認証情報と照合することで、従属ノードが通信ネットワーク上のノードとして正当かどうかの認証処理を行う。
【0039】
次に、ステップS203において、認証結果送信部204が、ステップS202で従属ノードが正当なノードとして認証されたか否かを判定し、従属ノードが認証されていれば(ステップS203:Yes)、ステップS204において、ノード装置Nxに対して認証成功を示す認証結果Xを送信する。一方、従属ノードが正当なノードとして認証されなかった場合には(ステップS203:No)、認証結果送信部204は、ステップS205において、ノード装置Nxに対して認証失敗を示す認証結果Xを送信する。
【0040】
次に、トポロジー検証サーバTSについて説明する。トポロジー検証サーバTSは、ネットワークトポロジーの検証により、通信ネットワーク上のノード間の論理接続が正当かどうかの判断を行うサーバ装置である。
【0041】
図8は、トポロジー検証サーバTSの内部的な機能構成を示す機能ブロック図である。トポロジー検証サーバTSは、例えば、通信ネットワーク上で通信を行うための通信機能を備えた一般的なコンピュータを利用したハードウェア構成を有し、トポロジー検証用のアプリケーションプログラムを実行することにより、トポロジー情報保持部301、更新部302、受信部303、判断部304および判断結果送信部305の各機能を実現する。
【0042】
トポロジー情報保持部301は、トポロジー検証サーバTSがトポロジーの検証を行う通信ネットワークにおいて、論理接続が許容されるノードの関係およびその論理接続を確立するための条件を示すトポロジー情報を保持する。
【0043】
図9は、トポロジー情報保持部301が保持するトポロジー情報の一例を示す概念図である。この図9に例示するトポロジー情報は、通信ネットワーク上で主体ノードとなり得るノード装置Nxの識別情報(主体ノード識別情報)と、この主体ノードに対して従属ノードとなるノード装置の識別情報(従属ノード識別情報)、物理接続性要求フラグ、接続グループ、接続順位および接続状態フラグの6つの情報の組み合わせを1つのエントリとしてレコードするテーブルで表わされる。図9の例では、初段ノード装置N11の識別情報を「n11」、第2段ノード装置N21の識別情報を「n21」、第2段ノード装置N22の識別情報を「n22」、第3段ノード装置N31の識別情報を「n31」、第3段ノード装置N32の識別情報を「n32」、第3段ノード装置N33の識別情報を「n33」と表わしている。
【0044】
図9に例示するトポロジー情報から、図1に示した通信ネットワークでは、初段ノード装置N11(主体ノード)と第2段ノード装置N21(従属ノード)、初段ノード装置N11(主体ノード)と第2段ノード装置N22(従属ノード)、第2段ノード装置N21(主体ノード)と第3段ノード装置N31(従属ノード)、第2段ノード装置N21(主体ノード)と第3段ノード装置N32(従属ノード)、第2段ノード装置N22(主体ノード)と第3段ノード装置N32(従属ノード)、第2段ノード装置N22(主体ノード)と第3段ノード装置N33(従属ノード)との間で、それぞれ論理接続が許容されることが分かる。
【0045】
物理接続性要求フラグは、主体ノードと従属ノードとの間の論理接続のためにこれら2つのノード間でMAC層またはPHY層での物理的な直接接続が存在している必要があるかどうかを示す1ビットの情報であり、それぞれのエントリの主体ノードと従属ノードとの間の論理接続のために物理的な直接接続が必要な場合に「1」、物理的な直接接続が必要でない場合に「0」となる。図9の例では、すべてのエントリの物理接続性要求フラグが「1」となっており、すべての論理接続において、主体ノードと従属ノードとの間で物理的な直接接続が存在することが、論理接続を確立するための条件となっていることが分かる。なお、トポロジー検証サーバTSが複数のトポロジー階層を管理する場合には、物理接続要求フラグの代わりに、0以上の整数で表わされるトポロジー階層レベルを使用してもよく、その場合、トポロジー階層レベルの値「0」は物理接続要求フラグの値「1」に対応し、それ以外のトポロジー階層レベルの値は物理接続要求フラグの値「0」に対応する。
【0046】
接続グループリストは、後述する接続順位が有効となる論理接続の集合である接続グループを表した情報であり、各接続グループに対応する0以上の整数の集合で表わされる。ここでは、図1に示した通信ネットワークに接続グループ「0」と接続グループ「1」の2つの接続グループが存在することを想定している。通信ネットワーク上の任意の主体ノードと従属ノードとの間の論理接続を(主体ノード識別情報,従属ノード識別情報)で表すと、図9に例示するトポロジー情報から、接続グループ「0」は、論理接続(n11,n21)、(n11,n22)、(n21,n31)、(n21,n32)、(n22,n32)で構成され、接続グループ「1」は、論理接続(n11,n22)、(n22,n33)で構成されることが分かる。
【0047】
接続順位は、接続グループリストで示される接続グループ内での論理接続の順序を指定する情報である。この接続順位には正数が入り、接続順位の値がxである主体ノードと従属ノードとの間の論理接続を確立するためには、同じ接続グループ内で接続順位の値がx未満である他の論理接続が確立されていることが条件となる。図9に示す例では、論理接続(n21,n32)を確立するには、同じ接続グループ「0」に属する論理接続(n21,n31)、(n22,n32)が確立されていることが条件となり、論理接続(n21,n31)、(n22,n32)を確立するには、同じ接続グループ「0」に属する論理接続(n11,n21)、(n11,n22)が確立されていることが条件となる。また、論理接続(n22,n33)を確立するには、同じ接続グループ「1」に属する論理接続(n11,n22)が確立されていることが条件となる。
【0048】
接続状態フラグは、主体ノードと従属ノードとの間で、現在、論理接続が確立された状態にあるか否かを示す1ビットの情報であり、それぞれのエントリの主体ノードと従属ノードとの間で論理接続が確立された状態にあれば「1」、論理接続が確立されていない状態であれば「0」となる。上記の接続順位による制約条件は、この接続状態フラグを参照することで判定することができる。
【0049】
更新部302は、上述したノード装置Nxから送信された接続状態更新情報に基づいて、トポロジー情報保持部301が保持するトポロジー情報のうち、接続状態フラグを更新する。つまり、更新部302は、上述したノード装置Nxが従属ノードとの間での論理接続を確立したことを示す接続状態更新情報を送信した場合には、トポロジー情報の接続状態フラグを「0」から「1」に書き換え、上述したノード装置Nxが従属ノードとの間での論理接続を遮断したことを示す接続状態更新情報を送信した場合には、トポロジー情報の接続状態フラグを「1」から「0」に書き換える。これにより、トポロジー情報の接続状態フラグは、常に通信ネットワークにおけるノード間の論理接続の最新の状態を反映したものとなる。さらに、トポロジー検証サーバTSが複数のトポロジー階層を管理する場合には、第(N−1)階層の論理接続に対するトポロジー情報の接続状態フラグが「1」から「0」に書き換えられると、この論理接続に依存しかつトポロジー情報の接続状態フラグが「1」であるような第N階層の論理接続のそれぞれに対するトポロジー情報の接続状態フラグを「0」に書き替える。このような隣接する階層間の論理接続の依存関係を考慮した接続状態フラグの書き換えを行う場合には、接続状態更新情報はトポロジー検証サーバTSが管理する最低階層の論理接続についてのみ送信すればよい。
【0050】
受信部303は、通信ネットワーク上の任意の主体ノードであるノード装置Nxが従属ノードとの間で論理接続を確立するのに先立って送信したトポロジー検証情報を受信する。このトポロジー検証情報には、上述したように、当該トポロジー情報を送信したノード装置Nxの識別情報である主体ノード識別情報と、このノード装置Nxが論理接続を確立しようとする従属ノードの識別情報である従属ノード識別情報と、これら主体ノードと従属ノードとの間での物理的な直接接続の有無を示す物理接続フラグとが含まれている。
【0051】
判断部304は、受信部303がノード装置Nxから受信したトポロジー検証情報を、トポロジー情報保持部301が保持するトポロジー情報と照合し、主体ノードであるノード装置Nxと従属ノードであるノード装置との論理接続の正当性の判断(ネットワークトポロジーの検証)を行う。
【0052】
具体的には、判断部304は、まず、トポロジー検証情報に含まれる主体ノード識別情報と従属ノード識別情報の組み合わせをキーとしてトポロジー情報を検索し、これら主体ノードと従属ノードとの間の論理接続に関するエントリの有無を確認する。ここで、トポロジー情報に該当するエントリがなければ、これら主体ノードと従属ノードとの間の論理接続は通信ネットワーク上で想定されていないものであるため、正当でないと判断する。
【0053】
また、判断部304は、該当するエントリがトポロジー情報に存在する場合は、これら主体ノードと従属ノードとの間の論理接続を確立するための制約条件を満足しているか否かの判断を行う。すなわち、判断部304は、該当するエントリの物理接続性要求フラグと、トポロジー検証情報に含まれる物理接続フラグとの照合を行い、物理接続性要求フラグの値が「1」、物理接続フラグの値が「0」の場合には、これら主体ノードと従属ノードとの間の論理接続を確立するのに必要な物理的な直接接続が存在しないため、正当でないと判断する。また、判断部304は、トポロジー情報の接続グループリストおよび接続順位を確認して、該当するエントリの論理接続が属する接続グループ内で、該当するエントリの論理接続よりも接続順位の値が小さい論理接続を特定する。そして、この特定した論理接続に関する接続状態フラグを参照して、接続状態フラグの値が「0」となるものがあれば、上記の主体ノードと従属ノードとの間の論理接続よりも前に確立されるべき論理接続が確立されていない状態にあるため、正当でないと判断する。
【0054】
判断結果送信部305は、トポロジー検証情報に基づいて判断部304が実施したネットワークトポロジーの検証結果、つまり、主体ノードであるノード装置Nxと従属ノードとの間の論理接続の正当性の判断結果を、ノード装置Nxに対して送信する。
【0055】
図10は、トポロジー検証サーバTSの動作を説明するフローチャートである。まず、ステップS301において、受信部303が、ノード装置Nxから送信されたトポロジー検証情報を受信する。次に、ステップS302において、判断部304が、ステップS301で受信したトポロジー検証情報を、トポロジー情報保持部301が保持するトポロジー情報と照合することで、主体ノードであるノード装置Nxと従属ノードとの間の論理接続が正当かどうかの検証を行う。
【0056】
次に、ステップS303において、判断結果送信部305が、ステップS302で主体ノードであるノード装置Nxと従属ノードとの間の論理接続が正当であると判断されたか否かを判定し、これらの間の論理接続が正当であると判断されていれば(ステップS303:Yes)、ステップS304において、ノード装置Nxに対して検証成功を示す検証結果Yを送信する。一方、ノード装置Nxと従属ノードとの間の論理接続が正当でないと判断された場合には(ステップS303:No)、判断結果送信部305は、ステップS305において、ノード装置Nxに対して検証失敗を示す認証結果Yを送信する。
【0057】
次に、ステップS306において、更新部302が、ノード装置Nxから接続状態更新情報が送信されたか否かを判定する。そして、ノード装置Nxから接続状態更新情報が送信された場合には(ステップS306:Yes)、更新部302は、ステップS307において、ノード装置Nxから送信された接続状態更新情報に従って、トポロジー情報保持部301が保持するトポロジー情報の接続状態フラグを書き換える。一方、ノード装置Nxから接続状態更新情報が送信されない場合は(ステップS306:No)、そのまま処理を終了する。
【0058】
次に、本実施形態の通信ネットワーク全体における一連の動作の具体例について説明する。図11は、図1に示した通信ネットワークにおいて、第2段ノード装置N21と初段ノード装置N11との間の論理接続を確立した後、第3段ノード装置N31と第2段ノード装置N21との間の論理接続を確立するまでの一連の動作を示すシーケンス図である。図1に示した通信ネットワークの構成では、初段ノード装置N11に対して、認証サーバASとトポロジー検証サーバTSとがこの順で直列に接続されているため、初段ノード装置N11とトポロジー検証サーバTSとの間のデータ送受信は、認証サーバASを介して行われる。
【0059】
図11において、まず、第2段ノード装置N21は、初段ノード装置N11に対して、論理接続の確立を要求する接続要求D101を送信する。この接続要求D101には、第2段ノード装置N21の正当性に関する従属ノード認証情報と、第2段ノード装置N21の識別情報である従属ノード識別情報が含まれる。
【0060】
初段ノード装置N11は、第2段ノード装置N21からの接続要求D101を受信すると、この接続要求D101から従属ノード認証情報と従属ノード識別情報を取り出す。そして、初段ノード装置N11は、接続要求D101から取り出した従属ノード識別情報に、自ノードの識別情報である主体ノード識別情報と、物理接続フラグとを含めたトポロジー検証情報を生成する。そして、初段ノード装置N11は、生成したトポロジー検証情報と、接続要求D101から取り出した従属ノード認証情報とを格納した接続要求D102を、認証サーバASに対して送信する。
【0061】
認証サーバASは、初段ノード装置N11からの接続要求D102を受信すると、この接続要求D102から従属ノード認証情報とトポロジー検証情報を取り出す。そして、認証サーバASは、従属ノード認証情報を用いて第2段ノード装置N21に対する認証を行い、認証に成功すると、接続要求D102から取り出したトポロジー検証情報を格納した検証要求D103を、トポロジー検証サーバTSに対して送信する。
【0062】
トポロジー検証サーバTSは、認証サーバASから検証要求D103を受信すると、この検証要求D103からトポロジー検証情報を取り出す。そして、トポロジー検証サーバTSは、このトポロジー検証情報を用いてネットワークトポロジーの検証を行い、第2段ノード装置N21と初段ノード装置N11との間の論理接続が正当であると判断すると、検証成功を示す検証結果R101を、認証サーバASに対して送信する。
【0063】
認証サーバASは、トポロジー検証サーバTSからの検証結果R101を受信すると、この検証結果R101に、認証成功を示す認証結果を付加して接続応答R102を生成し、この接続応答R102を、初段ノード装置N11に対して送信する。
【0064】
初段ノード装置N11は、認証サーバASからの接続応答R102を受信すると、第2段ノード装置N21との間での論理接続の確立を承認し、論理接続を許可することを示す接続応答R103を生成して、この接続応答R103を、第2段ノード装置N21に対して送信する。そして、初段ノード装置N11は、第2段ノード装置N21との間で論理接続が確立されると、トポロジー検証サーバTS宛に、第2段ノード装置N21との間で論理接続が確立された状態であることを示す接続状態更新情報D104を送信する。この接続状態更新情報D104は、認証サーバASを介してトポロジー検証サーバTSに送信される。
【0065】
トポロジー検証サーバTSは、初段ノード装置N11からの接続状態更新情報D104を受信すると、この接続状態更新情報D104に従ってトポロジー情報の接続状態フラグを更新する。
【0066】
次に、第3段ノード装置N31は、第2段ノード装置N21に対して、論理接続の確立を要求する接続要求D105を送信する。この接続要求D105には、第3段ノード装置N31の正当性に関する従属ノード認証情報と、第3段ノード装置N31の識別情報である従属ノード識別情報が含まれる。
【0067】
第2段ノード装置N21は、第3段ノード装置N31からの接続要求D105を受信すると、この接続要求D105から従属ノード認証情報と従属ノード識別情報を取り出す。そして、第2段ノード装置N21は、接続要求D105から取り出した従属ノード識別情報に、自ノードの識別情報である主体ノード識別情報と、物理接続フラグとを含めたトポロジー検証情報を生成する。そして、第2段ノード装置N21は、生成したトポロジー検証情報と、接続要求D105から取り出した従属ノード認証情報とを格納した接続要求D106を、初段ノード装置N11に対して送信する。
【0068】
初段ノード装置N11は、第2段ノード装置N21からの接続要求D106を受信すると、この接続要求D106からトポロジー検証情報と従属ノード識別情報を取り出す。そして、初段ノード装置N11は、接続要求D106から取り出したトポロジー検証情報と従属ノード識別情報を格納した接続要求D107を、認証サーバASに対して送信する。
【0069】
認証サーバASは、初段ノード装置N11からの接続要求D107を受信すると、この接続要求D107から従属ノード認証情報とトポロジー検証情報を取り出す。そして、認証サーバASは、従属ノード認証情報を用いて第3段ノード装置N31に対する認証を行い、認証に成功すると、接続要求D107から取り出したトポロジー検証情報を格納した検証要求D108を、トポロジー検証サーバTSに対して送信する。
【0070】
トポロジー検証サーバTSは、認証サーバASから検証要求D108を受信すると、この検証要求D108からトポロジー検証情報を取り出す。そして、トポロジー検証サーバTSは、このトポロジー検証情報を用いてネットワークトポロジーの検証を行い、第3段ノード装置N31と第2段ノード装置N21との間の論理接続が正当であると判断すると、検証成功を示す検証結果R104を、認証サーバASに対して送信する。
【0071】
認証サーバASは、トポロジー検証サーバTSからの検証結果R104を受信すると、この検証結果R104に、認証成功を示す認証結果を付加して接続応答R105を生成し、この接続応答R105を、初段ノード装置N11に対して送信する。
【0072】
初段ノード装置N11は、認証サーバASからの接続応答R105を受信すると、この接続応答R105から、認証成功を示す認証結果と検証成功を示す検証結果とを取り出す。そして、初段ノード装置N11は、接続応答R105から取り出した認証結果および検証結果を格納した接続応答R106を、第2段ノード装置N21に対して送信する。
【0073】
第2段ノード装置N21は、初段ノード装置N11からの接続応答R106を受信すると、第3段ノード装置N31との間での論理接続の確立を承認し、論理接続を許可することを示す接続応答R107を生成して、この接続応答R107を、第3段ノード装置N31に対して送信する。そして、第2段ノード装置N21は、第3段ノード装置N31との間で論理接続が確立されると、トポロジー検証サーバTS宛に、第3段ノード装置N31との間で論理接続が確立された状態であることを示す接続状態更新情報D109を送信する。この接続状態更新情報D109は、初段ノード装置N11および認証サーバASを介してトポロジー検証サーバTSに送信される。
【0074】
トポロジー検証サーバTSは、第2段ノード装置N21からの接続状態更新情報D109を受信すると、この接続状態更新情報D109に従ってトポロジー情報の接続状態フラグを更新する。なお、図9に例示したトポロジー情報は、この第2段ノード装置N21からの接続状態更新情報D109に従って接続状態フラグを更新した直後のトポロジー情報であり、論理接続(n11,n21)に関するエントリと論理接続(n21,n31)に関するエントリでは接続状態フラグの値が「1」、それ以外のエントリでは接続状態フラグの値が「0」となっている。
【0075】
図12は、トポロジー検証サーバTSが保持するトポロジー情報が図9の状態、つまり、第2段ノード装置N21と初段ノード装置N11との間の論理接続と、第3段ノード装置N31と第2段ノード装置N21との間の論理接続が確立された後に、第3段ノード装置N32が第2段ノード装置N21との間で論理接続を確立しようとした場合の一連の動作を示すシーケンス図である。
【0076】
図12において、まず、第3段ノード装置N32は、第2段ノード装置N21に対して、論理接続の確立を要求する接続要求D201を送信する。この接続要求D201には、第3段ノード装置N32の正当性に関する従属ノード認証情報と、第3段ノード装置N32の識別情報である従属ノード識別情報が含まれる。
【0077】
第2段ノード装置N21は、第3段ノード装置N32からの接続要求D201を受信すると、この接続要求D201から従属ノード認証情報と従属ノード識別情報を取り出す。そして、第2段ノード装置N21は、接続要求D201から取り出した従属ノード識別情報に、自ノードの識別情報である主体ノード識別情報と、物理接続フラグとを含めたトポロジー検証情報を生成する。そして、第2段ノード装置N21は、生成したトポロジー検証情報と、接続要求D201から取り出した従属ノード認証情報とを格納した接続要求D202を、初段ノード装置N11に対して送信する。
【0078】
初段ノード装置N11は、第2段ノード装置N21からの接続要求D202を受信すると、この接続要求D202からトポロジー検証情報と従属ノード識別情報を取り出す。そして、初段ノード装置N11は、接続要求D202から取り出したトポロジー検証情報と従属ノード識別情報を格納した接続要求D203を、認証サーバASに対して送信する。
【0079】
認証サーバASは、初段ノード装置N11からの接続要求D203を受信すると、この接続要求D203から従属ノード認証情報とトポロジー検証情報を取り出す。そして、認証サーバASは、従属ノード認証情報を用いて第3段ノード装置N32に対する認証を行い、認証に成功すると、接続要求D203から取り出したトポロジー検証情報を格納した検証要求D204を、トポロジー検証サーバTSに対して送信する。
【0080】
トポロジー検証サーバTSは、認証サーバASから検証要求D204を受信すると、この検証要求D204からトポロジー検証情報を取り出す。そして、トポロジー検証サーバTSは、このトポロジー検証情報を用いてネットワークトポロジーの検証を行い、第3段ノード装置N32と第2段ノード装置N21との間の論理接続の正当性を判断する。このとき、トポロジー検証サーバTSが保持するトポロジー情報は図9の状態であり、論理接続(n11,n21)に関するエントリと論理接続(n21,n31)に関するエントリでは接続状態フラグの値が1、それ以外のエントリでは接続状態フラグの値が0となっている。
【0081】
ここで、図9に示したトポロジー情報を参照すると、第3段ノード装置N32と第2段ノード装置N21との間の論理接続(n21,n32)は接続グループ「0」に属し、接続順位の値は「3」である。そして、この論理接続(n21,n32)と同じ接続グループ「0」に属し、論理接続(n21,n32)よりも接続順位の値が小さい論理接続として、論理接続(n22,n32)が存在し、この論理接続(n22,n32)に関するエントリの接続状態フラグの値は「0」となっている。したがって、トポロジー検証サーバTSは、第3段ノード装置N32と第2段ノード装置N21との間の論理接続は正当でないと判断し、検証失敗を示す検証結果R201を、認証サーバASに対して送信する。
【0082】
認証サーバASは、トポロジー検証サーバTSからの検証結果R201を受信すると、この検証結果R201に、認証成功を示す認証結果を付加して接続応答R202を生成し、この接続応答R202を、初段ノード装置N11に対して送信する。
【0083】
初段ノード装置N11は、認証サーバASからの接続応答R202を受信すると、この接続応答R202から、認証成功を示す認証結果と検証失敗を示す検証結果とを取り出す。そして、初段ノード装置N11は、接続応答R202から取り出した認証結果および検証結果を格納した接続応答R203を、第2段ノード装置N21に対して送信する。
【0084】
第2段ノード装置N21は、初段ノード装置N11からの接続応答R203を受信すると、第3段ノード装置N32との間での論理接続の確立を拒否することを示す接続応答R204を生成して、この接続応答R204を、第3段ノード装置N32に対して送信する。これにより、予め定められた所定の接続順序とは異なる順序での論理接続を、正当でない論理接続として拒否することが可能となる。
【0085】
なお、図11および図12のシーケンス図を用いて説明した具体例において、ノード装置間でやりとりされる接続要求および接続応答としては、例えば、RFC5191で規定されるPANA(Protocol for Carrying Authentication for Network Access)のメッセージを利用することができる。その場合、従属ノードはPANAクライアントとなり、初段ノード装置N11が主体ノードの場合は、初段ノード装置N11がPANA認証エージェントとなる。また、第2段ノード装置N21,N22が主体ノードの場合は、主体ノードである第2段ノード装置N21,N22がPANAリレー、初段ノード装置N11がPANA認証エージェントとなり、PANAリレーは、PANAクライアントとPANA認証エージェントとの間でPANAメッセージをフォワードする。なお、PANAリレーの動作は、インターネットドラフト“http://tools.ietf.org/html/draft-ohba-pana-relay-02”で規定されている。
【0086】
PANAメッセージを接続要求および接続応答に用いる場合、従属ノード認証情報は、PANAメッセージのEAP−Payload属性に含まれる。また、トポロジー検証情報に含まれる従属ノード識別情報は、PANAクライアントのIPアドレスまたはMACアドレスとなる。また、トポロジー検証情報に含まれる主体ノード識別情報は、主体ノードがPANA認証エージェントの場合には、PANA認証エージェントのIPアドレスまたはMACアドレスとなり、主体ノードがPANAリレーの場合には、PANAリレーのIPアドレスまたはMACアドレスとなる。また、従属ノードが正当かどうかの認証結果および主体ノードと従属ノードとの間の論理接続が正当かどうかの検証結果は、PANAメッセージのResult−Code属性に含まれる。
【0087】
さらに、PANA認証エージェントと認証サーバSAとの間の接続要求および接続応答としては、例えば、RFC2865で規定されるRADIUS(Remote Authentication Dial−In User Service)プロトコルメッセージを使用することができる。その場合、従属ノード認証情報は、RADIUSメッセージのEAP−Message属性に含まれる。また、トポロジー検証情報に含まれる従属ノード識別情報として、従属ノードのIPアドレスまたはMACアドレスが、RADIUSメッセージのCalling−Station−Id属性に含まれる。また、トポロジー検証情報に含まれる主体ノード識別情報として、主体ノードがPANA認証エージェントの場合にはPANA認証エージェントのIPアドレスまたはMACアドレスが、主体ノードがPANAリレーの場合にはPANAリレーのIPアドレスまたはMACアドレスが、RADIUSメッセージのCalled−Station−Id属性に含まれる。
【0088】
以上、具体例を挙げながら詳細に説明したように、本実施形態によれば、通信ネットワークを構成する複数のノード装置の間で論理接続を確立しようとする際に、ノード装置の正当性を判断する認証処理とともに、ネットワークトポロジーの検証を行って論理接続の正当性を判断する。そして、ノード装置が正当な装置として認証され、かつ、論理接続の正当性が認められた場合に、これらノード装置間の論理接続を確立させるようにしている。したがって、通信ネットワーク上のノード装置が、本来接続が意図されていない別のノード装置との間で論理接続を確立させてしまうことによるセキュリティ上の様々な問題を有効に防止することができる。
【0089】
また、本実施形態によれば、通信ネットワークを構成する各ノード装置の接続順序による制約条件や、物理的な直接接続の有無についての制約条件も加味して、ノード装置間の論理接続の正当性を判断するので、通信ネットワークを構成する各ノード装置の接続管理を適切に行って、通信システムの安全性を向上させることができる。また、隣接する階層間の論理接続の依存関係を利用することにより、論理接続の遮断を迅速かつ少ないメッセージ数で行うことができる。
【0090】
(第2の実施形態)
次に、第2の実施形態について説明する。本実施形態は、ノード装置間の論理接続を確立するための制約条件が、上述した第1の実施形態と一部相違している。なお、通信システムおよびそれを構成する各ノード装置、認証サーバAS、トポロジー検証サーバTSの構成や基本的な動作は、上述した第1の実施形態と同様である。以下では、本実施形態に特徴的な部分についてのみ説明する。
【0091】
図13は、本実施形態におけるトポロジー検証サーバTSのトポロジー情報保持部301が保持するトポロジー情報の一例を示す概念図である。この図13に例示するトポロジー情報は、論理接続番号と、通信ネットワーク上で主体ノードとなり得るノード装置Nxの識別情報(主体ノード識別情報)、この主体ノードに対して従属ノードとなるノード装置の識別情報(従属ノード識別情報)、物理接続性要求フラグ、接続制約ベクトル集合および接続順位フラグの6つの情報の組み合わせを1つのエントリとしてレコードするテーブルで表わされる。図13の例では、図9に示した例と同様に、初段ノード装置N11の識別情報を「n11」、第2段ノード装置N21の識別情報を「n21」、第2段ノード装置N22の識別情報を「n22」、第3段ノード装置N31の識別情報を「n31」、第3段ノード装置N32の識別情報を「n32」、第3段ノード装置N33の識別情報を「n33」と表わしている。
【0092】
論理接続番号は、トポロジー情報にレコードされた各エントリの論理接続関係の番号を示している。図13の例では、第1段ノード装置N11と第2段ノード装置N21との間の論理接続(n11,n21)に対して論理接続番号「1」が付与され、第1段ノード装置N11と第2段ノード装置N22との間の論理接続(n11,n22)に対して論理接続番号「2」が付与されている。また、第2段ノード装置N21と第3段ノード装置N31との間の論理接続(n21,n31)に対して論理接続番号「3」が付与され、第2段ノード装置N21と第3段ノード装置N32との間の論理接続(n21,n32)に対して論理接続番号「4」が付与されている。また、第2段ノード装置N22と第3段ノード装置N32との間の論理接続(n22,n32)に対して論理接続番号「5」が付与され、第2段ノード装置N22と第3段ノード装置N33との間の論理接続(n22,n33)に対して論理接続番号「6」が付与されている。
【0093】
物理接続性要求フラグおよび接続状態フラグは、図9に示した例と同様である。つまり、物理接続性要求フラグは、主体ノードと従属ノードとの間の論理接続のために、これらノード間で物理的な直接接続が必要であるか否かを示し、接続状態フラグは、主体ノードと従属ノードとの間で、現在、論理接続が確立された状態にあるか否かを示している。また、トポロジー検証サーバTSが複数のトポロジー階層を管理する場合には、図9に示した例と同様に、物理接続要求フラグの代わりに、0以上の整数で表わされるトポロジー階層レベルを使用してもよく、その場合、トポロジー階層レベルの値「0」は物理接続要求フラグの値「1」に対応し、それ以外のトポロジー階層レベルの値は物理接続要求フラグの値「0」に対応する。
【0094】
接続制約ベクトル集合は、各エントリの論理接続を確立するための制約条件に関する情報であり、通信ネットワーク上で許容される他のすべての論理接続との関係を表した情報である。ある論理接続番号の論理接続が正当かどうかを判断する際は、その論理接続番号に対応する接続制約ベクトル集合が参照される。
【0095】
接続制約ベクトル集合は、値「0」または「1」の要素を持つN次元ベクトルである接続制約ベクトルの集合で表わされる。ここで、Nはトポロジー情報テーブル内のレコードの総数である。ある論理接続に対する接続制約ベクトル集合における各接続制約ベクトルは要素制約条件を表し、これらの要素制約条件の論理和がこの論理接続に対する接続制約条件となる。接続制約ベクトルのi番目の要素の値が「1」のとき、論理接続番号iに対応する論理接続の接続状態フラグの値が「1」となっている必要があることを意味し、接続制約ベクトルのi番目の要素の値が「0」のとき、論理接続番号iに対応する論理接続の接続状態フラグの値が「1」となっている必要がないことを意味する。
【0096】
例えば、論理接続番号が「3」の論理接続(n21,n31)、つまり、主体ノードが第2段ノード装置N21、従属ノードが第3段ノード装置N31の場合の論理接続についての接続制約ベクトル集合は、{(1,1,0,0,0,0)}となっている。これは、論理接続番号が「3」の論理接続を確立するには、論理接続番号が「1」の論理接続(n11,n21)の接続フラグの値と、論理接続番号が「2」の論理接続(n11,n22)の接続状態フラグの値とが、ともに「1」となっている必要があることを意味する。
【0097】
また、論理接続番号が「4」の論理接続(n21,n32)、つまり、主体ノードが第2段ノード装置N21、従属ノードが第3段ノード装置N32の場合の論理接続についての接続制約ベクトル集合は、{(1,1,1,0,0,0)、(1,1,0,0,1,0)}となっている。これは、論理接続番号が「4」の論理接続を確立するには、論理接続番号が「1」の論理接続(n11,n21)の接続フラグの値と、論理接続番号が「2」の論理接続(n11,n22)の接続状態フラグの値とが、ともに「1」となっており、かつ、論理接続番号が「3」の論理接続(n21,n31)の接続フラグの値、あるいは、論理接続番号が「5」の論理接続(n22,n33)の接続状態フラグの値のいずれかが「1」となっている必要があることを意味する。
【0098】
本実施形態のトポロジー検証サーバTSは、ノード装置Nxからトポロジー検証情報を受信部303が受信すると、判断部304が、このトポロジー検証情報を図13に例示したような接続制約ベクトル集合の情報を含むトポロジー情報と照合し、主体ノードであるノード装置Nxと従属ノードであるノード装置との論理接続の正当性の判断(ネットワークトポロジーの検証)を行う。
【0099】
具体的には、判断部304は、まず、第1の実施形態と同様に、トポロジー検証情報に含まれる主体ノード識別情報と従属ノード識別情報の組み合わせをキーとしてトポロジー情報を検索し、これら主体ノードと従属ノードとの間の論理接続に関するエントリの有無を確認する。ここで、トポロジー情報に該当するエントリがなければ、これら主体ノードと従属ノードとの間の論理接続は通信ネットワーク上で想定されていないものであるため、正当でないと判断する。
【0100】
また、判断部304は、該当するエントリがトポロジー情報に存在する場合は、これら主体ノードと従属ノードとの間の論理接続を確立するための制約条件を満足しているか否かの判断を行う。すなわち、判断部304は、第1の実施形態と同様に、該当するエントリの物理接続性要求フラグと、トポロジー検証情報に含まれる物理接続フラグとの照合を行い、物理接続性要求フラグの値が「1」、物理接続フラグの値が「0」の場合には、これら主体ノードと従属ノードとの間の論理接続を確立するのに必要な物理的な直接接続が存在しないため、正当でないと判断する。
【0101】
また、判断部304は、該当するエントリの接続制約ベクトル集合を参照して、この論理接続を確立する前に確立されているべき他の論理接続の論理接続番号を特定する。そして、この特定した論理接続に関する接続状態フラグを参照して、接続状態フラグの値が「0」となるものがあれば、上記の主体ノードと従属ノードとの間の論理接続よりも前に確立されるべき論理接続が確立されていない状態にあるため、正当でないと判断する。
【0102】
以上のように、本実施形態によれば、任意のノード間の論理接続について、その論理接続を確立するための制約条件となる他の論理接続との関係も考慮してノード装置間の論理接続の正当性を判断するので、通信ネットワークを構成する各ノード装置の接続管理を適切に行って、通信システムの安全性を向上させることができる。
【0103】
(第3の実施形態)
次に、第3の実施形態について説明する。本実施形態は、トポロジー検証サーバTSのトポロジー情報保持部301が保持するトポロジー情報の構成が、上述した第1および第2の実施形態と相違している。なお、通信システムおよびそれを構成する各ノード装置、認証サーバAS、トポロジー検証サーバTSの構成や基本的な動作は、上述した第1の実施形態と同様である。以下では、本実施形態に特徴的な部分についてのみ説明する。
【0104】
図14は、トポロジー情報保持部301が保持するトポロジー情報の一例を示す概念図である。この図14に例示するトポロジー情報は、図9と同様に、通信ネットワーク上で主体ノードとなり得るノード装置Nxの識別情報(主体ノード識別情報)と、この主体ノードに対して従属ノードとなるノード装置の識別情報(従属ノード識別情報)、物理接続性要求フラグ、接続グループ、接続順位および接続順位フラグの6つの情報の組み合わせを1つのエントリとしてレコードするテーブルで表わされる。ただし、図9の例と異なり、テーブルの各エントリの従属ノード識別情報の値がワイルドカード(*)になっている。これは、同じ接続グループに属するエントリの主体ノード識別情報で識別されるノード装置はお互いにどのようなトポロジーで接続してもよい(メッシュ接続が可能)ことを表している。図14において、ノード装置n11、n12、n13はメッシュ接続が可能である。また、ノード装置n21、n22、n23もメッシュ接続が可能である。図14はまた論理接続がまだ一つも確立していない状態を表している。従属ノード識別情報の値がワイルドカードであるような論理接続のエントリは静的に作成され、これを基に従属ノード識別情報の値がワイルドカードでないような論理接続のエントリが動的に生成または削除される。また、図14において、接続順序はすべてのエントリで同じとなっている。これは、同じ接続グループに属する論理接続の接続順序は任意であることを示している。
【0105】
図15は、図14の状態から動的に作成された論理接続(n11、n12)に関するトポロジー情報テーブルのエントリを示している。このエントリの従属ノード識別情報の値がワイルドカードでないため、このエントリは動的に生成および削除されることを意味する。
【0106】
以上のように、本実施形態によれば、任意の接続順序、任意のトポロジーを許すような接続グループをエントリ数がより小さいテーブルで形成することが可能であり、これにより、メッシュネットワークのように接続トポロジーの制約が小さいネットワークにおいてノード装置の追加や削除を効率的に行うことができるようになる。
【0107】
以上述べた少なくとも一つの実施形態にかかるノード装置、サーバ装置およびノード接続管理方法によれば、通信ネットワークのトポロジーも考慮した適切な機器の接続管理を実現することができる。
【0108】
なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。
【0109】
例えば、ノード装置Nxは、認証サーバASまたはトポロジー検証サーバTSと同一装置上に実装されていてもよい。また、認証サーバASとトポロジー検証サーバTSは同一装置上に実装されていてもよい。
【0110】
また、従属ノード認証情報とトポロジー検証情報は1つのメッセージで運んでもよい。また、従属ノード認証情報は、複数のメッセージに分割して運んでもよく、その場合、従属ノード認証情報を運ぶためにノード装置Nxと認証サーバAS間で複数のメッセージ往復があってもよい。同様に、トポロジー検証情報は、複数のメッセージに分割して運んでもよく、その場合、トポロジー検証情報を運ぶためにノード装置Nxと認証サーバAS間で複数のメッセージ往復があってもよい。
【0111】
また、ノード装置Nxと認証サーバASは、中間ノードを介して通信を行ってもよい。その場合、ノード装置Nxと中間ノードとの間で従属ノード認証情報を運ぶプロトコルと、中間ノードと認証サーバASとの間で従属ノード認証情報を運ぶプロトコルは異なっていてもよい。また、中間ノードがトポロジー検証サーバTSであってもよい。
【0112】
同様に、ノード装置Nxとトポロジー検証サーバTSは、中間ノードを介して通信を行ってもよい。その場合、ノード装置Nxと中間ノードとの間でトポロジー検証情報を運ぶプロトコルと、中間ノードとトポロジー検証サーバTSとの間でトポロジー検証情報を運ぶプロトコルは異なっていてもよい。また、中間ノードが認証サーバASであってもよい。
【0113】
また、トポロジー検証サーバTSは複数のサーバ機器として実現してもよい。その場合、トポロジー情報はこれらのサーバ機器によって構成される分散データベースで保持してもよい。
【0114】
また、従属ノード認証情報が従属ノードの識別情報を含む場合には、このノード識別情報を従属ノード識別情報として使用してもよい。
【0115】
また、ノード装置Nxは、電力メータ、電気自動車、センサー、家電機器、および、蓄電池、太陽光発電装置、HEMS、BEMS(Building Energy Management System)、CEMS(Community Energy Management System)などのエネルギー機器の中に実装されていてもよい。
【0116】
また、ノード装置Nx、認証サーバAS、トポロジー検証サーバTSにおいて特徴的な機能は、コンピュータで実行するプログラムにより実現することができる。
【符号の説明】
【0117】
Nx ノード装置
AS 認証サーバ(第1のサーバ装置)
TS トポロジー検証サーバ(第2のサーバ装置)
101 取得部
102 第1の送信部
103 受信部
104 接続制御部
105 第2の送信部
301 トポロジー情報保持部
302 更新部
303 受信部
304 判断部
305 判断結果送信部

【特許請求の範囲】
【請求項1】
通信ネットワークを構成するノード装置であって、
論理接続関係が下位の従属ノードとの間で論理接続を確立するのに先立ち、前記従属ノードから、前記従属ノードの認証に用いる従属ノード認証情報および前記従属ノードの識別情報を取得する取得部と、
前記従属ノード認証情報を、前記通信ネットワーク上のノードの認証を行う第1のサーバ装置に送信するとともに、前記従属ノードの識別情報と自ノードの識別情報とを含むトポロジー検証情報を、前記通信ネットワーク上のノード間の論理接続が正当かどうかを判断する第2のサーバ装置に送信する第1の送信部と、
前記従属ノード認証情報に基づいて前記第1のサーバ装置で行われた前記従属ノードの認証結果を受信するとともに、前記トポロジー検証情報に基づいて前記第2のサーバ装置で行われた前記従属ノードとの間の論理接続の正当性の判断結果を受信する受信部と、
前記第1のサーバ装置により前記従属ノードが認証され、かつ、前記第2のサーバ装置により前記従属ノードとの間の論理接続が正当であると判断された場合に、前記従属ノードとの間の論理接続を確立する接続制御部と、を備えることを特徴とするノード装置。
【請求項2】
前記従属ノードとの間の論理接続を確立した場合に、前記従属ノードとの間で論理接続が確立されている状態であることを示す情報を前記第2のサーバ装置に送信するとともに、前記従属ノードとの間で論理接続を解除した場合に、前記従属ノードとの間で論理接続が確立されていない状態であることを示す情報を前記第2のサーバ装置に送信する第2の送信部をさらに備えることを特徴とする請求項1に記載のノード装置。
【請求項3】
前記接続制御部は、前記従属ノードが物理的に直接接続されていない場合には、前記従属ノードとの間の論理接続を確立しないことを特徴とする請求項1または2に記載のノード装置。
【請求項4】
前記トポロジー検証情報は、前記従属ノードが物理的に直接接続されているか否かを示す物理接続情報を含み、
前記トポロジー検証情報に含まれる前記物理接続情報が、前記従属ノードが物理的に直接接続されていないことを示す場合、前記第2のサーバ装置により、前記従属ノードとの間の論理接続が正当でないと判断されることを特徴とする請求項3に記載のノード装置。
【請求項5】
前記取得部は、RFC5191の規格で規定されるプロトコルに従って、前記従属ノードから、前記従属ノード認証情報および前記従属ノードの識別情報を取得することを特徴とする請求項1〜4のいずれか一項に記載のノード装置。
【請求項6】
通信ネットワーク上のノード間の論理接続が正当かどうかの判断を行うサーバ装置であって、
前記通信ネットワークにおいて論理接続が許容されるノードの関係およびその論理接続を確立するための条件を示すトポロジー情報を保持する保持部と、
前記通信ネットワーク上の任意の主体ノードが当該主体ノードに対して論理接続関係が下位の従属ノードとの間で論理接続を確立するのに先立ち、前記主体ノードから、前記従属ノードの識別情報および前記主体ノードの識別情報を含むトポロジー検証情報を受信する受信部と、
前記トポロジー検証情報を前記トポロジー情報と照合し、前記従属ノードと前記主体ノードとの間の論理接続の正当性を判断する判断部と、
前記従属ノードと前記主体ノードとの間の論理接続の正当性の判断結果を、前記主体ノードに送信する送信部と、を備えることを特徴とするサーバ装置。
【請求項7】
前記トポロジー情報は、前記通信ネットワークにおいて論理接続が許容されるノード間で、現在、論理接続が確立された状態にあるか否かを示す接続状態情報を含み、
前記判断部は、前記従属ノードと前記主体ノードとの間の論理接続が前記接続状態情報に基づいて判断される制約条件を満たさない場合に、前記従属ノードと前記主体ノードとの間の論理接続を正当でないと判断することを特徴とする請求項6に記載のサーバ装置。
【請求項8】
前記トポロジー情報は、前記制約条件に関する情報としてノード間の論理接続の順序を指定する接続順序情報を含み、
前記判断部は、前記従属ノードと前記主体ノードとの間の論理接続よりも先に確立されるべき他のノード間の論理接続が、前記接続状態情報に基づいて確立されていないと判断される場合に、前記従属ノードと前記主体ノードとの間の論理接続を正当でないと判断することを特徴とする請求項7に記載のサーバ装置。
【請求項9】
前記トポロジー情報は、前記接続順序情報が有効な論理接続の集合である接続グループを表した接続グループ情報をさらに含み、
前記判断部は、前記従属ノードと前記主体ノードとの間の論理接続よりも先に確立されるべき、同一接続グループ内における他のノード間の論理接続が、前記接続状態情報に基づいて確立されていないと判断される場合に、前記従属ノードと前記主体ノードとの間の論理接続を正当でないと判断することを特徴とする請求項8に記載のサーバ装置。
【請求項10】
前記トポロジー情報は、前記制約条件に関する情報として、前記通信ネットワークにおいて許容される他のすべての論理接続との関係を表した接続制約ベクトル集合情報をさらに含み、
前記判断部は、前記接続制約ベクトル集合情報に基づいて、前記従属ノードと前記主体ノードとの間の論理接続を確立する際に確立されているべき他のノード間の論理接続を特定し、特定した他のノード間の論理接続が、前記接続状態情報に基づいて確立されていないと判断される場合に、前記従属ノードと前記主体ノードとの間の論理接続を正当でないと判断することを特徴とする請求項7に記載のサーバ装置。
【請求項11】
前記トポロジー情報は、前記通信ネットワークにおいて論理接続が許容されるノード間で論理接続を確立するための条件として物理的な直接接続が必要であるか否かを示す物理接続性要求情報を含み、
前記トポロジー検証情報は、前記従属ノードが前記主体ノードに対して物理的に直接接続されているか否かを示す物理接続情報を含み、
前記判断部は、前記従属ノードと前記主体ノードとの間の論理接続を確立するために前記従属ノードと前記主体ノードとが物理的に直接接続されている必要があると前記物理接続性要求情報に基づいて判断され、前記トポロジー検証情報に含まれる前記物理接続情報が、前記従属ノードが前記主体ノードに対して物理的に直接接続されていないことを示す場合に、前記従属ノードと前記主体ノードとの間の論理接続が正当でないと判断することを特徴とする請求項6〜10のいずれか一項に記載のサーバ装置。
【請求項12】
通信ネットワークを構成するノード装置において実行される方法であって、
論理接続関係が下位の従属ノードとの間で論理接続を確立するのに先立ち、前記従属ノードから、前記従属ノードの認証に用いる従属ノード認証情報および前記従属ノードの識別情報を取得するステップと、
前記従属ノード認証情報を、前記通信ネットワーク上のノードの認証を行う第1のサーバ装置に送信するとともに、前記従属ノードの識別情報と自ノードの識別情報とを含むトポロジー検証情報を、前記通信ネットワーク上のノード間の論理接続が正当かどうかの判断を行う第2のサーバ装置に送信するステップと、
前記従属ノード認証情報に基づいて前記第1のサーバ装置で行われた前記従属ノードの認証結果を受信するとともに、前記トポロジー検証情報に基づいて前記第2のサーバ装置で行われた前記従属ノードとの間の論理接続の正当性の判断結果を受信するステップと、
前記第1のサーバ装置により前記従属ノードが認証され、かつ、前記第2のサーバ装置により前記従属ノードとの間の論理接続が正当であると判断された場合に、前記従属ノードとの間の論理接続を確立するステップと、を含むことを特徴とするノード接続管理方法。
【請求項13】
通信ネットワーク上のノード間の論理接続が正当かどうかの判断を行うサーバ装置において実行される方法であって、
前記サーバ装置は、前記通信ネットワークにおいて論理接続が許容されるノードの関係およびその論理接続を確立するための条件を示すトポロジー情報を保持し、
前記通信ネットワーク上の任意の主体ノードが当該主体ノードに対して論理接続関係が下位の従属ノードとの間で論理接続を確立するのに先立ち、前記主体ノードから、前記従属ノードの識別情報および前記主体ノードの識別情報を含むトポロジー検証情報を受信するステップと、
前記トポロジー検証情報を前記トポロジー情報と照合し、前記従属ノードと前記主体ノードとの間の論理接続の正当性を判断するステップと、
前記従属ノードと前記主体ノードとの間の論理接続の正当性の判断結果を、前記主体ノードに送信するステップと、を含むことを特徴とするノード接続管理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate