説明

通信装置、通信方法及びプログラム

【課題】利用するネットワーク資源を効果的に分散させることにより耐障害性を向上させる。
【解決手段】通信ネットワーク上のノード間の通信を行う通信装置は、通信ネットワークのトポロジ情報に基づいてノードごとに計算された中心性に基づく第1のメトリックと、第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択するメトリック切替制御部と、通信相手となるノードごとに、第1のメトリックと第2のメトリックとを保持するデータ転送テーブルと、データ転送テーブルを参照し、メトリック切替制御部の制御に基づき第1のメトリック及び第2のメトリックのいずれかを用いて転送先のノードを決定し、決定したノードにデータを転送するデータ転送部と、を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信ネットワーク上のノード間の通信を行う通信装置、通信方法及びプログラムに関する。
【背景技術】
【0002】
近年、将来の新世代ネットワーク基盤を構成する方式の候補の一つとして、オーバーレイ・ネットワークが研究されている。オーバーレイ・ネットワークは、下位層となる物理ネットワーク上に論理的に構築されたネットワークであり、下位層のネットワークでのノード配置における物理的なトポロジを意識することなく、柔軟なネットワーク通信を可能にするという特長を有する。
【0003】
図7は、関連技術におけるオーバーレイ・ネットワーク通信のためのネットワーク構成例を示している。図7では、合計で11個の通信ノードが設けられており、図示実線で示すように物理的な接続構成を有している。隣接する通信ノード間の接続をリンクと呼ぶ。説明の都合上、これらの通信ノードのうち、2つが送信ノード101(すなわち送信ノードAと送信ノードB)であり、別の2つが宛先ノード102(すなわち宛先ノードAと宛先ノードB)であるとする。通信ノードのうち、送信ノード101と宛先ノード102を除いた7個の通信ノードには、それぞれ、符号1001〜1007が付与されている。
【0004】
ここで上述のように11個の通信ノード(2個の送信ノード101と、2個の宛先ノード102と、送信ノードでも宛先ノードでもない7個の通信ノード1001〜1007)からなる物理ネットワーク上にオーバーレイ・ネットワークを構築して、送信ノードAから宛先ノードAに情報を伝達し、送信ノードBから宛先ノードBに情報を伝達する場合を考える。送信ノードAは、図示点線で示すように、送信ノードAから通信ノード1001〜1005及び宛先ノードBをこの順で経由して宛先ノードAに接続するオーバーレイ・ネットワークを形成し、送信ノードBは、図示一点鎖線で示すように、送信ノードBから通信ノード1003〜1005をこの順で経由して宛先ノードBに接続するオーバーレイ・ネットワークを形成する。このとき、一部の通信ノードやリンクは、これら2つのオーバーレイ・ネットワークで共有される物理リソースということになる。このようなオーバーレイ・ネットワークを説明する先行技術文献の一例として、非特許文献1を挙げる。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】David G. Andersen, Hari Balakrishnan, M. Frans Kaashoek, Robert Morris, "Resilient Overlay Networks," Proc. 18th ACM SOSP, Banff, Canada, October 2001.
【非特許文献2】F. Tutzauer, "Entropy as a measure of centrality in networks characterized by path-transfer flow,'' Social Networks, Social Networks, 29, pp. 249-265, 2007.
【発明の開示】
【発明が解決しようとする課題】
【0006】
このように、同一の物理的なネットワーク基盤の上に仮想的な論理ネットワークを複数重畳させて設定し、オーバーレイ・ネットワークを形成して通信を行う場合、オーバーレイ・ネットワークとしては論理的に独立していても、複数のオーバーレイ・ネットワークはノードやリンクといった物理的な資源を共有しているのが一般的である。その際、物理ネットワークでのトポロジに依存して、使われやすいノードやリンクと、使われにくいノードやリンクとが生じ、ノードやリンクにおいて使用頻度の偏りが出やすくなる。使用頻度が高く、利用が集中するノードやリンクは、より高い確率で故障しやすくなり、また、利用が集中しているノードやリンクが障害となった場合に、通信ネットワーク・システムへ与えるインパクトは非常に大きなものとなってしまう。このように、関連技術でのオーバーレイ・ネットワークでは、ノードやリンクの使用頻度に偏りがあることに起因して、耐障害性が向上しないという課題がある。ノードを構成するネットワーク機器やリンクに障害が発生した場合においても高品位な通信サービスをユーザに提供でき、かつ、ネットワーク資源の効率的な利用が可能であるようにすることが、望まれている。
【0007】
そこで本発明の目的は、例えばオーバーレイ・ネットワークを重畳的に構成する場合などに、利用するネットワーク資源を効果的に分散させることにより耐障害性を向上させることが可能な通信システム基盤を構成するための通信装置、通信方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0008】
本発明の通信装置は、通信ネットワーク上のノード間の通信を行う通信装置であって、通信ネットワークのトポロジ情報に基づいてノードごとに計算された中心性に基づく第1のメトリックと、第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択するメトリック切替制御部と、通信相手となるノードごとに、第1のメトリックと第2のメトリックとを保持するデータ転送テーブルと、データ転送テーブルを参照し、メトリック切替制御部の制御に基づき第1のメトリック及び第2のメトリックのいずれかを用いて転送先のノードを決定し、その決定したノードにデータを転送するデータ転送部と、を有する。
【0009】
本発明の通信方法は、通信ネットワーク上のノード間の通信を行う通信方法であって、通信ネットワークのトポロジ情報に基づいてノードごとに計算された中心性に基づく第1のメトリックと、第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択することと、通信相手となるノードごとに第1のメトリックと第2のメトリックとを保持するデータ転送テーブルを参照し、選択に基づき第1のメトリック及び第2のメトリックのいずれかを用いて転送先のノードを決定し、その決定したノードにデータを転送することと、を有する。
【0010】
本発明のプログラムは、通信ネットワーク上のノード間の通信を行うコンピュータに、通信ネットワークのトポロジ情報に基づいてノードごとに計算された中心性に基づく第1のメトリックと、第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択する処理と、通信相手となるノードごとに第1のメトリックと第2のメトリックとを保持するデータ転送テーブルを参照し、選択に基づき前記第1のメトリック及び第2のメトリックのいずれかを用いて転送先のノードを決定し、その決定したノードにデータを転送する処理と、を実行させる。
【発明の効果】
【0011】
本発明では、物理的なネットワークの構成情報や既設の論理ネットワークの構成情報に基づくトポロジ情報からノードごとに計算された中心性に基づくメトリックを活用する。中心性に基づくメトリックは、後述するように、グラフ理論等でCentrality値(中心性値)として知られている値に基づくものであり、本発明では、中心性に基づくメトリックを第1のメトリックとして使用することによって、例えばオーバーレイ・ネットワークで利用するネットワーク資源や通信トラヒックがトポロジの中心方向へ集中しないように制御し、かつ、中心性に基づくメトリックとは異なる第2のメトリックを用いるデータ転送制御との併用を行うことによって、耐障害性を向上させている。第2のメトリックとしては、例えば、最短ホップ数に基づくメトリックなどを用いることができる。このような本発明によれば、ネットワーク資源及び通信トラヒックが分散され、耐障害性を向上させた通信サービスを提供することができる。
【図面の簡単な説明】
【0012】
【図1】本発明の第1の実施形態の通信装置の機能構成を示すブロック図である。
【図2】本発明の第2の実施形態が適用される通信ネットワークの構成の一例を示す図である。
【図3】第2の実施形態の通信装置の機能構成を示すブロック図である。
【図4】Centrality値計算処理を示すフローチャートである。
【図5】図2及び図3に示す通信装置での通信データ転送処理を示すフローチャートである。
【図6】データ転送テーブルの内容の一例を示すである。
【図7】関連技術における通信ネットワークの構成の一例を示す図である。
【発明を実施するための形態】
【0013】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【0014】
《第1の実施形態》
図1は、本発明の第1の実施形態の通信装置を示している。一般に通信ネットワークは、複数個の通信ノードとこれらの通信ノード間を接続するリンクとから構成されているが、図1に示す通信装置は、通信ネットワーク上で、隣接する通信ノードとの間で通信を行う通信ノードにおいてデータの送受信処理を行うものとして構成されるものであり、例えば、経路制御(ルーティング)を行って、物理ネットワーク上に重畳されるオーバーレイ・ネットワークにおける通信を媒介する。
【0015】
この通信装置は、通信ネットワークのトポロジ情報に基づいて通信ノードごとに計算された中心性すなわちCentrality値に基づく第1のメトリックと、第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択するメトリック切替制御部203と、通信相手となる通信ノードごとに、第1のメトリックと第2のメトリックとを保持するデータ転送テーブル200と、データ転送テーブル200を参照し、メトリック切替制御部203の制御に基づき第1のメトリック及び第2のメトリックのいずれかを用いて転送先の通信ノードを決定し、その決定した通信ノードにデータを転送するデータ転送部206と、を備えている。データ転送部206は、隣接する1以上の通信ノードに対し、隣接する通信ノードごとのリンクを介して接続するものである。第2のメトリックとしては、例えば、通信相手となる通信ノードまでの最短ホップ数を用いることができる。
【0016】
通信ネットワークの構成が動的に変化しないとすれば、第1のメトリック及び第2のメトリックとも通信ネットワークの構成時に通信ノードごとに確定するものであるから、予めデータ転送テーブル200に書き込んでおくことができる。通信ネットワークの構成が動的に変化する場合には、例えば、定期的に通信ネットワークのトポロジ情報を収集し、第1のメトリック及び第2のメトリックを算出してデータ転送テーブル200を更新したり、他の通信ノードによって算出された第1のメトリック及び第2のメトリックを受信して、受信値によってデータ転送テーブル200を更新したりすればよい。
【0017】
本実施形態の通信装置は、物理的なネットワークや既設の論理ネットワークの構成情報を基にして、そのトポロジのCentrality値を第1のメトリックとして活用し、オーバーレイネットワークで利用するネットワーク資源や通信トラヒックがトポロジの中心方向へ集中しないように制御し、かつ、第2のメトリックによる通常のデータ転送制御との併用を行うことによって、耐障害性を向上させている。
【0018】
《第2の実施形態》
図2は、第2の実施形態の通信装置が適用される通信ネットワークの構成の一例を示している。通信ネットワークでは、複数個の通信ノードがリンクを介して相互に接続している。通信ノードは、通信データを転送することが可能な端末であり、図2では、合計で11個の通信ノードが設けられており、図示実線で示すように物理的な接続構成を有している。通信ノードの中には、データを送信する2個の送信ノード101(すなわち送信ノードAと送信ノードB)、通信データの最終到達先である2個の宛先ノード102(すなわち宛先ノードAと宛先ノードB)、Centrality値を計算する代表ノード103が含まれている。送信ノード101でも宛先ノード102でも代表ノード103でもない通信ノードには、符号1001〜1003,1005〜1007が付与されている。また、送信ノード101、宛先ノード102及び代表ノード103も含めて通信ノードを総称する場合には、符号100を用いることとする。
【0019】
本実施形態の通信装置は、各通信ノード100において通信データの送受信処理を行う部分として構成されるものである。Centrality値とは、グラフ理論によって、通信ネットワークのトポロジ構成での中心性(Centrality)を示す値として算出されるものである。図2において、各通信ノードの下側に括弧書きで付記されている値が、ここで示した通信ネットワークのトポロジ構成における、各通信ノードのCentrality値の例を示している。
【0020】
図3は、通信ノード100の機能構成を示している。
【0021】
通信ノード100は、通信相手となる通信ノードとその通信ノードに対するCentrality値(第1のメトリック)と他の種類のメトリック(第2のメトリック)とを記載するデータ転送テーブル200と、データ転送デーブル200を管理し、特にデータ転送時にデータ転送テーブル200へのアクセスを制御するデータ転送テーブル管理部201と、隣接する通信ノードおよび自通信ノードのCentrality値を保有して管理し、データ転送テーブル200に書き込むCentrality値制御部202、データ転送をCentrality値ベースの制御を行うか、あるいは第2のメトリックをベースに制御するかの切り替えを制御するメトリック切替制御部203と、リーフノードに対してのデータ転送処理の制御などの例外的なデータ転送処理の制御を行う例外処理制御部204と、メトリック切り替え処理や例外処理のために利用するシステムパラメータなどの各種情報を保存する情報記憶部205と、他の通信ノードからデータを受信し、受信したデータを転送するデータ転送部206と、を備えている。データ転送テーブル200及び情報記憶部205は、例えば、通信ノード100に備えられるメモリ内の記憶領域として設けられる。データ転送テーブル200には、通信相手となる通信ノードが、例えば、そのアドレスとその属するネットワークとによって示され、さらに、通信相手となる通信ノードごとに、Centrality値と第2のメトリックと、さらにどのインタフェースがそのネクストホップになるかが記録される。第2のメトリックとしては、例えば、最短ホップ数が用いられる。
【0022】
データ転送部206は、データ転送制御部207と、リンクを介して他の通信ノードと接続する1または複数のインタフェース208と、を備えている。インタフェース208は、例えば、イーサネット(登録商標)によるインタフェースである。図示したものでは、E0〜E2の3つのインタフェース208が設けられており、このことは、図示した通信ノード100が、最大3個の隣接する通信ノードと接続できることを意味している。データ転送制御部207は、いずれかのインタフェース208からデータを受信して転送するものであり、データを受信したときに、転送テーブル管理部201を介してデータ転送テーブル200を参照し、メトリック切替制御部203及び例外処理制御部204の制御に基づきCentrality値及び第2のメトリックのいずれかを用いて転送先の通信ノードを決定し、その決定した通信ノードに対応するインタフェース208を介して転送する。
【0023】
次に、本実施形態における具体的な処理について説明する。
【0024】
まず、本実施形態における基本制御の一つとなるCentrality値の算出について説明する。Centrality値の計算処理は、図4に示すように、最初に通信ネットワーク内から代表ノード103を選定する処理(ステップS101)と、ステップS101の実行後、代表ノード103がトポロジ情報を収集する処理(ステップS102)と、ステップS102の実行後、代表ノード103がCentrality値を計算する処理(ステップS103)と、ステップS103の実行後、計算したCentrality値を他の各通信ノードへ配布する処理(ステップS104)と、ステップS104の実行後、各通信ノードが隣接する通信ノード間でCentrality値を情報交換する処理(ステップS105)とから構成される。
【0025】
最初にステップS101では、通信ネットワークの中から、一つ以上の通信ノードを代表ノード103として選出する。この選出の手法としてはどのような手法を用いてもよく、例えば、ルーティング・プロトコルとして知られているOSPF(Open Shortest Path First)においてセグメントごとに代表ルータ(designated router;DR)を選定する手法をそのまま用いることも可能である。あるいは、ネットワーク構築後に代表ノード103を選定するのではなく、予め代表ノード103を設置するという手法を用いてもよい。
【0026】
ステップS102では、選定された代表ノード103が、通信ネットワーク内の全通信ノードから当該通信ノードのリンク接続情報を入手する。これにより、代表ノード103はネットワーク全体のトポロジ情報を保有することになる。
【0027】
次にステップS103では、全体のトポロジ情報を基に、代表ノード103が各通信ノードのCentrality値を計算する。Centrality値の算出方法としては、いくつかの手法が知られているが、ここでは、Betweenness Centrality値の手法による計算例を以下に示す。gijを通信ノードiから通信ノードjに至る経路の数、及び
【0028】
【数1】

【0029】
を上述の経路のうちのノードkを通過する経路の数とすると、このトポロジにおける通信ノードkに対するCentrality値bkは以下の式で表すことができる。
【0030】
【数2】

【0031】
本発明において用いられるCentrality値としては、上述のようなBetweenness Centralityに限定されるものではなく、その他のCentrality値をベースとすることも可能である。一例として、非特許文献2に示されるようなエントロピーベースのCentrality値を用いることも可能である。
【0032】
ステップS104では、代表ノード103が各通信ノードに対して、各通信ノードのCentrality値情報を配信する。
【0033】
ステップS105では、全通信ノードが、自ノードと隣接する全ての通信ノードとの間でCentrality値情報を交換する。
【0034】
以上の処理によって、全て通信ノードについてのCentrality値が計算され、それらの値が各通信ノードへ配信され、通信ノード間で必要な情報共有までが完了する。
【0035】
次に、本実施形態におけるデータ転送制御処理について説明する。データ転送制御処理は、最初に転送データの受信を検知する処理(ステップS201)と、ステップS201の実行後、転送モードを選定する処理(ステップS202)と、ステップS202においてCentrality値モードが選択された場合に、データ転送テーブルを参照する処理(ステップS203)と、ステップS203の実行後、Centrality値ベースで転送先を選定する処理(ステップS204)と、ステップS202において通常モードが選択された場合に、データ転送テーブルを参照する処理(ステップS205)と、ステップS205の実行後、第2のメトリックベースで転送先を選定する処理(ステップS206)と、ステップS204またはS206の実行後、受信データを送信する処理(ステップS206)と、から構成されている。
【0036】
ステップS201では、データ転送用のパケットディスクリプタなどを定期的にルックアップすることなどによって、インタフェース208において転送すべきデータを受信したことを検出する。
【0037】
ステップS202では、メトリック切替制御部203が、データを転送する際の転送モードを確率的に選択する。ここでは、第2のメトリックとして最短ホップ数を用いることとし、Centrality値をメトリックとしてデータ転送を行うCentrality値モード、及び、最短ホップ数をメトリックとしてデータ転送を行う通常モードとを確率的に選択することを想定する。例えば、予めシステムパラメータとしてCentrality値モードと通常モードの各々の発生確率を保持しておき、一様乱数を発生させて、その発生確率に従って、転送モードを選択決定する。
【0038】
ここで、図2に示した通信ネットワークを考えると、一例として、通信ノード1005に保持されるデータ転送テーブル200の内容を図6に示すようなものとなる。このデータ転送テーブル200によれば、通信ノード1005は、通信ネットワークにおいてそれぞれアドレスが192.168.1.1,192.168.2.1及び192.168.3.1で表される3つの通信ノードに対し、インタフェースE0,E1,E2を介して隣接しており、これらの隣接通信ノードのCentrality値は、それぞれ、3.028、2.806及び2.809である。ここで、この通信ノード1005が、インタフェースE0から、宛先192.168.10.1のパケットを受信した場合を考える。
【0039】
ステップS202においてCentrality値モードが選択された場合は、ステップS203においてデータ転送テーブル200の内容を読み出し、ステップS204のCentrality値ベースでの転送先選定処理に移行する。インタフェースE0以外のインタフェースであるインタフェースE1,E2を介して接続された隣接通信ノードのCentrality値をみてみると、それぞれ2.806と2.809であるため、そられのCentrality値のうち、小さい方の値に対応する隣接通信ノードである192.168.2.1が転送先として選択決定される。こうすることにより、Centrality値が小さいノード(トポロジの中心から遠いノード)に対して流れるトラヒックを増加させ、Centrality値が大きいノード(トポロジの中心に近いノード)へのトラヒックを減少させることができるため、トラヒックやネットワーク資源の中央集中化を抑制することが可能となる。
【0040】
一方、ステップS202において通常モードが選択された場合は、ステップS205においてデータ転送テーブル200の内容を読み出し、ステップS206の他メトリックベースの転送先選定処理に移行する。宛先のネットワークである192.168.10.0/24のネクストホップがE2と設定されているため、転送先の通信ノードとしては、インタフェースE2に接続している192.168.3.1を転送先として選択決定する。仮に、この通常モードを用いずにCentrality値モードだけでの運用を行っていると、中心ではない方面へのトラヒックやネットワーク資源が逆に集中してしまうため、このように通常モードとの併用を行うことによって、その集中化を緩和して、より一層の資源の分散化を実現する。これにより耐障害性を向上させることが可能となる。
【0041】
ステップS207では、上述のステップS204またはS206において選択決定された転送先ノードへ受信データを転送する。
【0042】
図2に示した通信ネットワークにおいて、以上のようなデータ転送制御処理を行うと、送信ノードAから宛先ノードAへのデータ転送経路は、例えば、図示点線に示すように、送信ノードAから通信ノード1001〜1003を経由して送信ノードBに至り、再び通信ノード1003に戻り、代表ノード103、通信ノード1005〜1007及び宛先ノードBを経由して宛先ノードAに接続するものとなる。また、送信ノードBから宛先ノードBへのデータ転送経路は、例えば、図示一点鎖線で示すように、送信ノードBから通信ノード1003、代表ノード103、通信ノード1005を経由して宛先ノードBに接続するものとなる。
【0043】
ところで、ステップS204で選択された転送先がリーフノード、すなわち、隣接する通信ノードの数が1つである通信ノードである場合を考える。転送先はリーフノードではあるが転送データの宛先ノード自身ではない場合、Centrality値をベースとした転送を行った際には、そのリーフノードへデータ転送した後に、すぐに自通信ノードへそのデータが返送されるという経路をたどり、余計な通信経路増加を招くことになる。例えば、図2において点線で示した経路において、通信ノード1003と送信ノードBとの間で経路が往復で設定されているのは、このような余計な通信経路となる。そこで、本実施形態では、例外制御処理部204により、リーフノードを検出し、リーフノードがデータの宛先ノード自身でない場合にはリーフノードには転送しないようにデータ転送制御部207に指示することが好ましい。
【0044】
以上の制御処理を行うことによって、通信ネットワークにおけるトラヒックの平滑化を実現することができ、また、オーバーレイ・ネットワークで通信を行う際の利用ネットワーク資源の分散化を実現でき、耐障害性を向上させた通信サービスを提供できる。
【0045】
本実施形態によれば、共通な物理ネットワークの上に仮想的な論理ネットワークを重畳させてオーバーレイ・ネットワークにより通信を行うネットワークにおいて、通信トラヒックや使用するネットワーク資源の中央集中化を緩和することが可能な、耐障害性を向上させて通信システム基盤を提供することができる。
【0046】
《第3の実施形態》
第2の実施形態では、一つの管理ドメインによって構成される通信ネットワークの場合について説明した。しかしながら本発明が適用される通信ネットワークは単一の管理ドメインを有するものに限定されるものではない。例えば、クラスタ分割を行うことによって複数のネットワークに分割した実施形態としても本発明は適用可能である。クラスタ分割した場合には、それぞれのクラスタ内でのCentrality値を計算すればよい。クラスタ内でのCentrality値を計算することによって、Centrality値の計算規模単位を小さくすることができ、それに伴って計算処理時間の高速化、省電力化を実現することが可能となるメリットを享受できる。また、Centrality値計算への寄与が小さいネットワーク資源を省いたネットワークトポロジを構成することも可能となるため、計算処理や省電力といった観点から、より効率的な通信システム構成を実現することが可能となる。
【0047】
以上述べた以外の動作は第2の実施形態の場合と同じである。
【0048】
《第4の実施形態》
第2の実施形態では、Centrality値の計算手法としては、Betweenness CentralityやエントロピーベースのCentralityを用いる場合を説明したが、本発明においてCentrality値の算出に用いる手法はこれらに限定されるものではなく、Betweenness CentralityやエントロピーベースのCentrality以外のCentralityによる中心性をメトリックとしてデータ転送を行うことも考えられる。その他のCentralityとして、例えば、Degree Centrality、Closeness Centrality、Eignevector CentralityといったCentrality指標を用いてもよい。これらのCentrality値手法を適宜切り替えて使用することも可能であり、トポロジに応じて柔軟なシステム構築を行うことが可能になるというメリットも享受できる。
【0049】
以上述べた以外の動作は第2の実施形態と同じである。
【0050】
《その他の実施形態》
以上本発明の各実施形態について説明したが、本発明は以上の実施形態にのみ限定されず、その他、各種の付加変更が可能である。また、上述した通信装置は、その有する機能をハードウェア的に実現できることはもちろん、コンピュータとプログラムとによって実現することもできる。プログラムは、磁気ディスクや半導体メモリ等のコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られ、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施形態における通信装置として機能させ、前述した処理を行わせる。
【0051】
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
【0052】
(付記1) 通信ネットワーク上のノード間の通信を行う通信装置であって、
前記通信ネットワークのトポロジ情報に基づいて前記ノードごとに計算された中心性に基づく第1のメトリックと、前記第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択するメトリック切替制御部と、
通信相手となる前記ノードごとに、前記第1のメトリックと前記第2のメトリックとを保持するデータ転送テーブルと、
前記データ転送テーブルを参照し、前記メトリック切替制御部の制御に基づき前記第1のメトリック及び第2のメトリックのいずれかを用いて転送先のノードを決定し、該決定したノードにデータを転送するデータ転送部と、
を有する通信装置。
【0053】
(付記2) 前記第1のメトリックに基づくデータ転送制御が選択され、かつリーフノードが宛先ノードではない場合に、前記データ転送部に対して当該リーフノードへのデータ転送を抑止させる例外処理制御部をさらに有する、付記1に記載の通信装置。
【0054】
(付記3) 前記メトリック切替制御部は、前記第1のメトリックを選択する確率と前記第2のメトリックを選択する確率とが与えられて、乱数により、前記第1のメトリック及び第2のメトリックのいずれかを選択する、付記1または2に記載の通信装置。
【0055】
(付記4) 前記第2のメトリックは最短ホップ数である、付記1乃至3のいずれかに記載の通信装置。
【0056】
(付記5) 通信ネットワーク上のノード間の通信を行う通信方法であって、
前記通信ネットワークのトポロジ情報に基づいて前記ノードごとに計算された中心性に基づく第1のメトリックと、前記第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択することと、
通信相手となる前記ノードごとに前記第1のメトリックと前記第2のメトリックとを保持するデータ転送テーブルを参照し、前記選択に基づき前記第1のメトリック及び第2のメトリックのいずれかを用いて転送先のノードを決定し、該決定したノードにデータを転送することと、
を有する通信方法。
【0057】
(付記6) 前記通信ネットワークのトポロジ情報を収集し、収集した前記トポロジ情報に基づいて前記ノードごとに中心性を計算することと、
前記計算の結果を各ノードに配信することと、
前記計算の結果の配信を受けたノードにおいて、前記計算の結果に基づく前記第1のメトリックを前記データ転送テーブルに格納することと、
をさらに有する、付記5に記載の通信方法。
【0058】
(付記7) 前記第1のメトリックに基づくデータ転送制御が選択され、かつリーフノードが宛先ノードではない場合に、当該リーフノードへのデータ転送を抑止する、付記5または6に記載の通信方法。
【0059】
(付記8) 前記第1のメトリックを選択する確率と前記第2のメトリックを選択する確率とが与えられて、乱数により、前記第1のメトリックに基づくデータ転送制御と前記第2のメトリックに基づくデータ転送制御とのいずれかが選択される、付記5乃至7のいずれかに記載の通信方法。
【0060】
(付記9) 前記第2のメトリックは最短ホップ数である、付記5乃至8のいずれかに記載の通信方法。
【0061】
(付記10) 通信ネットワーク上のノード間の通信を行うコンピュータに、
前記通信ネットワークのトポロジ情報に基づいて前記ノードごとに計算された中心性に基づく第1のメトリックと、前記第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択する処理と、
通信相手となる前記ノードごとに前記第1のメトリックと前記第2のメトリックとを保持するデータ転送テーブルを参照し、前記選択に基づき前記第1のメトリック及び第2のメトリックのいずれかを用いて転送先のノードを決定し、該決定したノードにデータを転送する処理と、
を実行させるプログラム。
【0062】
(付記11) 前記コンピュータに、さらに、
前記通信ネットワークのトポロジ情報を収集し、収集した前記トポロジ情報に基づいて前記ノードごとに中心性を計算する処理と、
前記計算の結果を各ノードに配信する処理と、
を実行させる付記10に記載のプログラム。
【0063】
(付記12) 前記コンピュータに、前記中心性に関する計算の結果を受け取った時に、該計算の結果に基づく前記第1のメトリックを前記データ転送テーブルに格納する処理
を実行させる付記10に記載のプログラム。
【0064】
(付記13) 前記コンピュータに、
前記第1のメトリックに基づくデータ転送制御が選択され、かつリーフノードが宛先ノードではない場合に、当該リーフノードへのデータ転送を抑止する例外制御を実行させる、付記10乃至12のいずれかに記載のプログラム。
【0065】
(付記14) 前記選択する処理は、前記第1のメトリックを選択する確率と前記第2のメトリックを選択する確率とが与えられて、乱数により、前記第1のメトリックに基づくデータ転送制御と前記第2のメトリックに基づくデータ転送制御とのいずれかを選択する処理である、付記10乃至13のいずれかに記載のプログラム。
【0066】
(付記15) 前記第2のメトリックは最短ホップ数である、付記10乃至14のいずれかに記載のプログラム。
【符号の説明】
【0067】
100,1001〜1006 通信ノード
101 送信ノード
102 宛先ノード
103 代表ノード
200 データ転送テーブル
201 転送テーブル管理部
202 Centrality値制御部
203 メトリック切替制御部
204 例外処理制御部
205 情報記憶部
206 データ転送部
207 データ転送制御部
208 インタフェース
S101〜S105,S201〜S207 ステップ

【特許請求の範囲】
【請求項1】
通信ネットワーク上のノード間の通信を行う通信装置であって、
前記通信ネットワークのトポロジ情報に基づいて前記ノードごとに計算された中心性に基づく第1のメトリックと、前記第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択するメトリック切替制御部と、
通信相手となる前記ノードごとに、前記第1のメトリックと前記第2のメトリックとを保持するデータ転送テーブルと、
前記データ転送テーブルを参照し、前記メトリック切替制御部の制御に基づき前記第1のメトリック及び第2のメトリックのいずれかを用いて転送先のノードを決定し、該決定したノードにデータを転送するデータ転送部と、
を有する通信装置。
【請求項2】
前記第1のメトリックに基づくデータ転送制御が選択され、かつリーフノードが宛先ノードではない場合に、前記データ転送部に対して当該リーフノードへのデータ転送を抑止させる例外処理制御部をさらに有する、請求項1に記載の通信装置。
【請求項3】
前記メトリック切替制御部は、前記第1のメトリックを選択する確率と前記第2のメトリックを選択する確率とが与えられて、乱数により、前記第1のメトリック及び第2のメトリックのいずれかを選択する、請求項1または2に記載の通信装置。
【請求項4】
通信ネットワーク上のノード間の通信を行う通信方法であって、
前記通信ネットワークのトポロジ情報に基づいて前記ノードごとに計算された中心性に基づく第1のメトリックと、前記第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択することと、
通信相手となる前記ノードごとに前記第1のメトリックと前記第2のメトリックとを保持するデータ転送テーブルを参照し、前記選択に基づき前記第1のメトリック及び第2のメトリックのいずれかを用いて転送先のノードを決定し、該決定したノードにデータを転送することと、
を有する通信方法。
【請求項5】
前記通信ネットワークのトポロジ情報を収集し、収集した前記トポロジ情報に基づいて前記ノードごとに中心性を計算することと、
前記計算の結果を各ノードに配信することと、
前記計算の結果の配信を受けたノードにおいて、前記計算の結果に基づく前記第1のメトリックを前記データ転送テーブルに格納することと、
をさらに有する、請求項4に記載の通信方法。
【請求項6】
前記第1のメトリックに基づくデータ転送制御が選択され、かつリーフノードが宛先ノードではない場合に、当該リーフノードへのデータ転送を抑止する、請求項4または5に記載の通信方法。
【請求項7】
前記第1のメトリックを選択する確率と前記第2のメトリックを選択する確率とが与えられて、乱数により、前記第1のメトリックに基づくデータ転送制御と前記第2のメトリックに基づくデータ転送制御とのいずれかが選択される、請求項4乃至6のいずれかに記載の通信方法。
【請求項8】
通信ネットワーク上のノード間の通信を行うコンピュータに、
前記通信ネットワークのトポロジ情報に基づいて前記ノードごとに計算された中心性に基づく第1のメトリックと、前記第1のメトリックとは異なる第2のメトリックとのいずれに基づいてデータ転送制御を行うかを選択する処理と、
通信相手となる前記ノードごとに前記第1のメトリックと前記第2のメトリックとを保持するデータ転送テーブルを参照し、前記選択に基づき前記第1のメトリック及び第2のメトリックのいずれかを用いて転送先のノードを決定し、該決定したノードにデータを転送する処理と、
を実行させるプログラム。
【請求項9】
前記コンピュータに、さらに、
前記通信ネットワークのトポロジ情報を収集し、収集した前記トポロジ情報に基づいて前記ノードごとに中心性を計算する処理と、
前記計算の結果を各ノードに配信する処理と、
を実行させる請求項8に記載のプログラム。
【請求項10】
前記コンピュータに、
前記第1のメトリックに基づくデータ転送制御が選択され、かつリーフノードが宛先ノードではない場合に、当該リーフノードへのデータ転送を抑止する例外制御を実行させる、請求項8または9に記載のプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2013−62663(P2013−62663A)
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【出願番号】特願2011−199519(P2011−199519)
【出願日】平成23年9月13日(2011.9.13)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成22年度、独立行政法人情報通信研究機構「ダイナミックネットワーク技術の研究開発」は産業技術力強化法第19条の適用を受ける特許出願
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】