(57)【特許請求の範囲】
【請求項１】
複数のノードが、それぞれの保持する接続テーブルに基づき、互いに接続するネットワークシステムにおけるネットワーク接続管理方法であって、
ノード間の接続情報を所定のタイミングで送受信する工程と、
前記接続情報を受信したノードが、当該接続情報に基づき、保持する前記接続テーブルを更新する接続テーブル更新工程とを備え、
前記送受信する工程では、各ノード間の同一ノードを経由しない接続経路の数を、それぞれのノードが複数維持するように、ノードがネットワークから離脱する際に、当該離脱するノードは、自己が接続している各ノードに、自己の保持している接続テーブルを接続情報として送信し、
前記接続テーブル更新工程では、各ノード間の同一ノードを経由しない接続経路の数を、それぞれのノードが複数維持するように、前記接続テーブルを受信したノードが、当該受信した接続テーブルを自己の保持する接続テーブルに追加することによって、接続テーブルの更新を行うことを特徴とするネットワーク接続管理方法。
【請求項２】
ノード間の接続経路数を調査する接続経路調査工程をさらに備え、
前記接続経路調査工程において調査された同一ノードを経由しない接続経路の数が、所定の数未満であるノード組がある場合に、
前記送受信する工程では、調査を行ったノードが、当該ノード組の各ノードに、それぞれ接続すべき相手ノードを接続情報として送信し、
前記接続テーブル更新工程では、前記接続情報を受信したノードが、当該接続情報の示す相手ノードを自己の保持する接続テーブルに追加するよう、接続テーブルの更新を行うことを特徴とする請求項１に記載のネットワーク接続管理方法。
【請求項３】
複数のノードが、それぞれの保持する接続テーブルに基づき、互いに接続するネットワークシステムにおける、ノードとしての情報処理装置であって、
ノード間の接続情報を所定のタイミングで送受信する手段と、
前記送受信する手段により受信した前記接続情報に基づき、保持する前記接続テーブルを更新する接続テーブル更新手段とを有し、
前記送受信する手段は、各ノード間の同一ノードを経由しない接続経路の数を、それぞれのノードが複数維持するように、ノードとしての情報処理装置がネットワークから離脱する際に、自己が接続している各ノードに、自己の保持している接続テーブルを接続情報として送信し、
前記接続テーブル更新手段は、各ノード間の同一ノードを経由しない接続経路の数を、それぞれのノードが複数維持するように、前記接続情報として受信した前記接続テーブルを、自己の保持する接続テーブルに追加することによって、接続テーブルの更新を行うことを特徴とする情報処理装置。
【請求項４】
ノード間の接続経路数を調査する接続経路調査手段をさらに有し、
前記接続経路調査手段により調査された同一ノードを経由しない接続経路の数が、所定の数未満であるノード組がある場合に、
前記送受信する手段は、前記ノード組の各ノードに、それぞれ接続すべき相手ノードを接続情報として送信し、
前記接続テーブル更新手段は、受信した前記接続情報の示す相手ノードを自己の保持する接続テーブルに追加するよう、接続テーブルの更新を行うことを特徴とする請求項３に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のノードが、それぞれの保持する接続テーブルに基づき、互いに接続するネットワークシステムにおけるネットワーク接続管理方法、及び互いに接続するノードとしての情報処理装置に関する。
【背景技術】
【０００２】
近年、ネットワークを構成する任意のノード間で自由にデータの送受信を行うような通信形態を有するネットワークが盛んに利用されるようになってきた。
【０００３】
従来は、中央にホストの役目を担ったサーバなどがあり、クライアントとしての各端末が、それぞれホストサーバにアクセスし、端末間でやり取りが必要であれば、ホストサーバが仲介して行うというタイプの中央集中処理型のネットワークが主流であった。
【０００４】
これに対して、いわゆる分散処理型のネットワークが徐々に登場してきている。保存する情報を分散する、またその処理を分散するといった機構を実現するためには、通信の機能も分散しなければならない。すなわち、ネットワークを構成する各ノード間で、自由にデータ通信が行われなければならない。
【０００５】
代表的な形態として、Ｐ２Ｐ（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ）と呼ばれる通信ネットワークの形態がある。Ｐ２Ｐは不特定多数のノード間で直接情報のやり取りを行なうネットワークの利用形態であり、技術的に中央サーバの媒介を要するものと、バケツリレー式にデータを運ぶものの２種類がある。中央サーバを要する場合にも、中央サーバはファイル検索データベースの提供とノードの接続管理のみを行っており、データ自体のやり取りはノード間の直接接続によって行われている。
【０００６】
こういった分散処理のネットワーク形態を効率的に達成する技術が研究され、任意のノード間でデータを分散して保持し、互いにデータ送受信を行うシステムが形成されている。これらにより、ネットワークシステムの利用形態としての自由度は向上し、ユーザは大きな利便性を手に入れた。
【０００７】
例えば上記Ｐ２Ｐのネットワークシステムにおいては、データを多数のノード間で共有し、互いにデータを送受信することで、ローカルにデータを保持していなくても、簡便にデータ利用を行うことができる。
【０００８】
しかしながら一方では、ネットワークを構成する各ノードが自由にデータ通信を行うことは、セキュリティーの面で不具合が生ずる可能性を増加させることにもなる。従って、通常は、各ノードにそれぞれ与えられる接続テーブルに従って、各ノードが限られたノードとのみ接続し、データ通信を行うような接続管理が行われる。
【０００９】
すなわち、接続テーブルによる接続管理では、直接接続しているノードから、さらにそのノードが接続しているノードへと、順次ノードを経由するような接続経路を辿ることで、任意のノードとのデータ通信が行われる。
【００１０】
また、ネットワークが大規模になり、地理的に離れた複数の拠点を有するような場合には、各拠点でのネットワークを互いに結ぶ接続としては、各拠点毎に少数の代表ノードが、互いに他の拠点の代表ノードと接続するような形態が一般的である。
【００１１】
こういったネットワークの接続形態においては、接続テーブルに基づき各ノードが互いに接続することにより、任意のノード間の接続経路が保たれる。しかしながら、すべてのノードが正常に稼働していることが前提であり、例えば、あるノードがネットワークから離脱しなければならないような状況が発生した場合、接続経路が必ず保たれるとは限らない。つまり、ネットワークが分断され、ノード間や拠点間のデータ通信が行えなくなる可能性がある。
【００１２】
これに対して、従来のように管理サーバを導入して接続管理するにしても、ネットワークの規模によって管理サーバの負荷が大きくなったり、また導入と維持に対するコストも増加したりする。また、管理者を必要とせず各ノード間で自由にデータ通信できるというメリットが損なわれてしまう。
【００１３】
ネットワークに障害が発生し、接続の経路が遮断されたときの対策として、迂回経路を探索する方法が提案されている（特許文献１参照）。
【００１４】
特許文献１に記載の技術によれば、ネットワークに障害が発生し、接続が断たれることで既存の経路が維持されなくなった場合、フラッディングと呼ばれる公知技術を用いて、迂回経路を探索し、新たに経路を設定することでノード間通信を維持することができる。
【００１５】
しかしながら、ネットワークに障害が発生することで、ネットワークが分断されてしまうような場合には、迂回経路を探索しても新たな経路を見つけることができない場合もある。そのような場合はノード間の接続自体を変更しなければならない。
【００１６】
しかしながら、接続変更を行うにしても、既に接続経路の遮断が生じており、障害の生じたノードの保持する接続情報を取得して利用することはできない。また、不都合が生じた後の対策となってしまう。
【特許文献１】特開平９−８８０６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
上記のように、ノード間の接続経路を確実にするために、何れかのノードで障害が起きても、接続経路が確保されるようなネットワークシステムの接続管理が求められる。とはいうものの、障害などを考慮して接続経路を増やしすぎると、無駄な経路が増え、管理面でも余分な負荷が掛かり、またセキュリティー面での不安もある。
【００１８】
特に上記のＰ２Ｐのようなネットワーク形態では、適切な接続テーブル設定による接続管理を行っていても、ノードの切断や復帰などが起こりやすく、適切な接続管理、すなわち適切な経路設定が維持できない場合が生ずる。例えばノードの離脱などで一部の接続が消失すると、ネットワーク自体が分断され、特定のノード間、あるいは拠点間のアクセスができなくなることが起こり得る。
【００１９】
本発明の目的は、上記の課題を解決し、複数のノードが、それぞれの保持する接続テーブルに基づき、互いに接続するネットワークシステムにおいて、ノードが離脱するような事態の発生に対しても、予め接続状態を管理することでノード間の接続経路を維持することができ、従って必要以上に接続経路を保有することなく、ネットワークの分断といった障害発生も予防することができ、ノード間の接続経路を効率よく管理することができるネットワーク接続管理方法、及び接続するノードとしての情報処理装置を提供することである。
【課題を解決するための手段】
【００２０】
上記の課題を解決するために、本発明は以下の特徴を有するものである。
【００２１】
本発明のある局面に従うと、複数のノードが、それぞれの保持する接続テーブルに基づき、互いに接続するネットワークシステムにおけるネットワーク接続管理方法が提供される。ネットワーク接続管理方法は、ノード間の接続情報を所定のタイミングで送受信する工程と、接続情報を受信したノードが、当該接続情報に基づき、保持する接続テーブルを更新する接続テーブル更新工程とを含む。送受信する工程では、各ノード間の同一ノードを経由しない接続経路の数を、それぞれのノードが複数維持するように、ノードがネットワークから離脱する際に、当該離脱するノードは、自己が接続している各ノードに、自己の保持している接続テーブルを接続情報として送信する。接続テーブル更新工程では、各ノード間の同一ノードを経由しない接続経路の数を、それぞれのノードが複数維持するように、接続テーブルを受信したノードが、当該受信した接続テーブルを自己の保持する接続テーブルに追加することによって、接続テーブルの更新を行う。
【００２３】
好ましくは、ネットワーク接続管理方法は、ノード間の接続経路数を調査する接続経路調査工程をさらに含む。接続経路調査工程において調査された同一ノードを経由しない接続経路の数が、所定の数未満であるノード組がある場合に、送受信する工程では、調査を行ったノードが、当該ノード組の各ノードに、それぞれ接続すべき相手ノードを接続情報として送信する。接続テーブル更新工程では、接続情報を受信したノードが、当該接続情報の示す相手ノードを自己の保持する接続テーブルに追加するよう、接続テーブルの更新を行う。
【００２４】
本発明の別の局面に従うと、複数のノードが、それぞれの保持する接続テーブルに基づき、互いに接続するネットワークシステムにおけるネットワーク接続管理方法が提供される。ネットワーク接続管理方法は、ノード間の接続情報を所定のタイミングで送受信する工程と、接続情報を受信したノードが、当該接続情報に基づき、保持する接続テーブルを更新する接続テーブル更新工程とを含む。ネットワークが複数の拠点を有する場合、拠点間を結ぶ位置にあるノードがネットワークから離脱する際に、離脱するノードが関与する拠点間の接続経路が、離脱後も確保されるように、送受信する工程では、離脱するノードがネットワークから離脱する際に、離脱するノードが接続するノードのうちから代替ノードを選択し、当該代替ノードに自己の保持している接続テーブルを接続情報として送信する。接続テーブル更新工程では、接続テーブルを受信した代替ノードが、当該受信した接続テーブルを自己の保持する接続テーブルに追加して、接続テーブルの更新を行う。
【００２５】
本発明のさらに別の局面に従うと、複数のノードが、それぞれの保持する接続テーブルに基づき、互いに接続するネットワークシステムにおける、ノードとしての情報処理装置が提供される。情報処理装置は、ノード間の接続情報を所定のタイミングで送受信する手段と、送受信する手段により受信した接続情報に基づき、保持する接続テーブルを更新する接続テーブル更新手段とを有する。送受信する手段は、各ノード間の同一ノードを経由しない接続経路の数を、それぞれのノードが複数維持するように、ノードとしての情報処理装置がネットワークから離脱する際に、自己が接続している各ノードに、自己の保持している接続テーブルを接続情報として送信する。接続テーブル更新手段は、各ノード間の同一ノードを経由しない接続経路の数を、それぞれのノードが複数維持するように、接続情報として受信した接続テーブルを、自己の保持する接続テーブルに追加することによって、接続テーブルの更新を行う。
【００２７】
好ましくは、情報処理装置は、ノード間の接続経路数を調査する接続経路調査手段をさらに有する。接続経路調査手段により調査された同一ノードを経由しない接続経路の数が、所定の数未満であるノード組がある場合に、送受信する手段は、ノード組の各ノードに、それぞれ接続すべき相手ノードを接続情報として送信する。接続テーブル更新手段は、受信した接続情報の示す相手ノードを自己の保持する接続テーブルに追加するよう、接続テーブルの更新を行う。
【００２８】
本発明のさらに別の局面に従うと、複数のノードが、それぞれの保持する接続テーブルに基づき、互いに接続するネットワークシステムにおける、ノードとしての情報処理装置が提供される。情報処理装置は、ノード間の接続情報を所定のタイミングで送受信する手段と、送受信する手段により受信した接続情報に基づき、保持する接続テーブルを更新する接続テーブル更新手段とを有する。ネットワークが複数の拠点を有する場合、拠点間を結ぶ位置にあるノードとしての情報処理装置がネットワークから離脱する際に、離脱するノードとしての情報処理装置が関与する拠点間の接続経路が、離脱後も確保されるように、送受信する手段は、離脱するノードとしての情報処理装置がネットワークから離脱する際に、離脱するノードとしての情報処理装置が接続するノードのうちから代替ノードを選択し、当該代替ノードに自己の保持している接続テーブルを接続情報として送信する。接続テーブル更新手段は、代替ノードとして受信した接続テーブルを、自己の保持する接続テーブルに追加して、接続テーブルの更新を行う。
【発明の効果】
【００２９】
本発明に係るネットワーク接続管理方法、及び接続するノードとしての情報処理装置によれば、複数のノードが、それぞれの保持する接続テーブルに基づき、互いに接続するネットワークシステムにおいて、ノード間の接続情報を所定のタイミングで送受信し、受信した接続情報に基づき、保持する接続テーブルを更新することにより、ノード間の同一ノードを経由しない接続経路の数を所定数以上に維持することができる。
【００３０】
これにより、ノードが離脱するような事態の発生に対しても、予め接続状態を管理し、ノード間の接続経路を維持することができ、従って必要以上に接続経路を保有することなく、ネットワークの分断といった障害発生も予防することができ、ノード間の接続経路を効率よく管理することができる。
【発明を実施するための最良の形態】
【００３１】
以下に、図を参照して本発明に係る実施形態を説明する。
【００３２】
（ネットワークの全体構成）
図１は本実施形態に係るネットワーク接続管理方法を備えたネットワーク１、あるいはノードとしての情報処理装置により構成されるネットワーク１の全体的な構成の例を示す図である。図１を用いて本発明の実施形態に係るネットワーク１について、その全体構成を説明する。
【００３３】
ネットワーク１は、図１に示すように、複数台の端末装置２（２１、２２、…、２ｎ）、スイッチングハブ３、ルータ４、および認証サーバ５などのノードによって構成されるＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）である。これらの端末装置２は、スイッチングハブ３にツイストペアケーブルによってスター型に繋がれている。
【００３４】
ネットワークを構成するノードとしての端末装置２は、本発明に係る情報処理装置であり、パーソナルコンピュータ、ワークステーション、またはプリンタなどのような、他の装置との間でデータの入出力の処理を実行する装置である。以下、ノードといえば単にこの端末装置のことを指し、情報処理装置としてのパーソナルコンピュータが用いられるものとして説明する。
【００３５】
また本実施形態では、Ｐ２Ｐ（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ）と呼ばれる通信ネットワークの形態を採っている。Ｐ２Ｐは不特定多数のノード間で直接情報のやり取りを行なうネットワークの利用形態であり、技術的に中央サーバの媒介を要するものと、バケツリレー式にデータを運ぶものの２種類がある。中央サーバを要する場合にも、中央サーバはファイル検索データベースの提供とノードの接続管理のみを行っており、データ自体のやり取りはノード間の直接接続によって行われている。
【００３６】
本実施形態では、中央サーバは用いず、後で図３の接続トポロジーを説明するが、予め関連付けられたノード（情報処理装置）２間では直接接続を行い、通信する。その他のノードとは、直接接続したノードを介して間接的に接続することになる。認証サーバ５は認証のための証明書に関わる管理のみを担い、通信のための接続には直接関わらない。またルータ４もノード（情報処理装置）間の通信には直接関与しない。
【００３７】
Ｐ２Ｐでは、直接ノード同士が通信するため、如何にお互いの正当性を認証するか、不正の入り込む余地を抑制するかというセキュリティが重要である。そのために認証サーバ５の発行するディジタル証明書を用いる。
【００３８】
以下、上記の観点から、本実施形態に係るネットワークにおいて、各ノードでそれぞれ保持する接続テーブルに基づいて、各ノード間の接続経路が形成され、ネットワークを離脱するノードがあっても、接続経路が遮断されてしまうことのないように、各ノード間の同一ノードを経由しない接続経路の数が、それぞれ所定の数以上を維持するように、所定のタイミングで互いに接続情報を交換し、接続テーブルを更新するネットワーク接続管理処理について説明する。
【００３９】
（ノードとしての情報処理装置の構成）
図２はノード（情報処理装置）２のハードウェア構成の例を示す図である。
【００４０】
情報処理装置２は、図２に示すように、ＣＰＵ２０ａ、ＲＡＭ２０ｂ、ＲＯＭ２０ｃ、ハードディスク２０ｄ、通信インタフェース２０ｅ、画像インタフェース２０ｆ、入出力インタフェース２０ｇ、その他の種々の回路または装置などによって構成される。
【００４１】
通信インタフェース２０ｅは、例えばＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）であって、ツイストペアケーブルを介してスイッチングハブ３のいずれかのポートに繋がれている。画像インタフェース２０ｆは、モニタと繋がれており、画面を表示するための映像信号をモニタに送出する。
【００４２】
入出力インタフェース２０ｇは、キーボード若しくはマウスなどの入力装置またはＣＤ−ＲＯＭドライブなどの外部記憶装置などと繋がれている。そして、ユーザが入力装置に対して行った操作の内容を示す信号を入力装置から入力する。または、ＣＤ−ＲＯＭなどの記録媒体に記録されているデータを外部記憶装置に読み取らせ、これを入力する。または、記録媒体に書き込むためのデータを外部記憶装置に出力する。
【００４３】
ハードディスク２０ｄには、後で機能ブロック図（図５）を用いて説明するが、データ保持部２０１、接続テーブル保持部２０２、接続テーブル管理部２０３、接続経路調査部２０４、ネットワーク操作部２０５、データ操作部２０６、データ受信部２０７、データ解析部２０８、データ作成部２０９、及びデータ送信部２１０などの機能を実現するためのプログラムおよびデータが格納されている。これらのプログラムおよびデータは必要に応じてＲＡＭ２０ｂに読み出され、ＣＰＵ２０ａによってプログラムが実行される。
【００４４】
各ノード２には、それぞれ、他のノード２との識別のための識別情報として、ホスト名（マシン名）、ＩＰアドレス、およびＭＡＣアドレスが与えられている。ホスト名は、ネットワーク１の管理者などが自由に付けることができる。ＩＰアドレスは、ネットワーク１の規則に従って与えられる。ＭＡＣアドレスは、そのノード２の通信インタフェース１０ｅに対して固定的に与えられているアドレスである。なおＭＡＣアドレスに代えて他のユニークなＩＤを用いてもよい。
【００４５】
本実施形態では、ノード（情報処理装置）２１、２２、…ごとに「ＰＣ１」、「ＰＣ２」、…のようなホスト名が付されているものとする。以下、これらのノード２をホスト名によって記載することがある。
【００４６】
（ノードの接続形態）
図３はノードの接続形態、すなわち情報処理装置２の論理的なトポロジーの例を示す図である。図３を用いてノード（情報処理装置）の接続形態を説明する。
【００４７】
ノード２は、図３に示すように、仮想空間に配置されているものと仮想されている。そして、点線で示すように、仮想空間内の近隣の少なくとも１台の他のノード２と関連付けられている。かつ、これらの関連付けによって、すべてのノード２が互いに直接的にまたは間接的に関連するようになっている。
【００４８】
なお、「直接的に関連」とは、図３において１本の点線で繋がれていること（例えば、図３のＰＣ１とＰＣ２またはＰＣ９とのような関係）を言い、「間接的に関連」とは、２本以上の点線および１つ以上のノードで繋がれていること（例えば、図３のＰＣ１とＰＣ４とのような関係）を言う。ノード２は、自らに直接的に関連付けられている他のノード２に対してデータを送信する。
【００４９】
図４は、図３のように関連付けられたノード２の接続テーブルＴＬの例を示す図である。各ノード２毎に、直接データ送信可能な、すなわち「直接的に関連」付けられている他のノード２との接続のための情報のリストをテーブル化して保持している。
【００５０】
例えば、図３におけるＰＣ１、ＰＣ２、ＰＣ６、ＰＣ７、ＰＣ８、およびＰＣ９には、それぞれ図４に示すような接続テーブルＴＬ１、ＴＬ２、ＴＬ６、ＴＬ７、ＴＬ８、およびＴＬ９が保存されている。
【００５１】
（情報処理装置の各部の処理機能）
図５はノード（情報処理装置）２の機能的構成の例を示すブロック図である。図５を用いてノード（情報処理装置）２の各部の処理機能について説明する。
【００５２】
データ保持部２０１は、そのノード２またはユーザなどの属性を示す属性データ、そのノード２自身の認証のために必要なデータ、オペレーティングシステム（ＯＳ）またはアプリケーションソフトなどが使用するデータ、ユーザがアプリケーションソフトによって作成したデータ、その他種々のデータを、ファイルとして保存している。
【００５３】
データ操作部２０６は、データ保持部２０１にデータを保存し、またはデータ保持部２０１に保存されているデータを更新するなどの処理を行う。例えば、ノード２の環境または設定内容が変わるごとに、属性データを更新する。またデータ操作部２０６は、他のノードから取得したデータ（情報）の処理と一時保存も行う。
【００５４】
接続テーブル保持部２０２は、そのノード２自身に直接的に関連付けられている他のノード２のホスト名、ＩＰアドレス、およびＭＡＣアドレスなどの属性の一覧を示す接続テーブルＴＬを保存している。例えば、それぞれのノードの接続テーブル保持部２０１に保持されている接続テーブルの例を、図４を用いて既述した。これらの接続テーブルＴＬの内容は、各ノード２の関連付けに基づいて管理者によって予め作成される。
【００５５】
接続テーブル管理部２０３は、上記接続テーブル保持部２０２に保持される接続テーブルＴＬの管理を行う。ネットワーク操作部２０５を通じて他のノードから受信した接続情報に基づいて、接続テーブルＴＬの更新処理を行う。すなわち、接続テーブル管理部２０３は接続テーブル更新手段として機能する。
【００５６】
ネットワーク操作部２０５は、ネットワークとしての接続形態に変化が生ずる場合の処理を行う。例えば、ノードが新たに参加しようとする場合や離脱しようとする場合の処理を行う。接続管理の面でも、他のノード２と接続情報の送受信を行い、接続管理に寄与する。すなわち、ネットワーク操作部２０６は接続情報交換手段として機能する。
【００５７】
接続経路調査部２０４は、ネットワークの接続管理のために接続経路の調査を行う。すなわち、接続経路調査手段として機能する。接続経路の調査結果に基づき、ネットワーク操作部２０５は必要な接続情報を送信する。詳細は後述する。
【００５８】
データ操作部２０６、ネットワーク操作部２０５は、必要に応じてデータ受信部２０７、データ送信部２１０を介してネットワーク１の他のノード２とデータ通信を行い、また必要に応じて接続テーブル保持部２０２、データ保持部２０１のデータを参照、あるいは更新する。
【００５９】
データ受信部２０７は、他のノード２とデータ通信を行うための制御処理を行う。データ受信部２０７は、ネットワーク１を流れるパケットのうち、そのノード２に必要なものを受信する。
【００６０】
データ解析部２０８は、データ受信部２０７が受信した受信データから必要な情報を抽出してその内容を解析することによって、その受信データの種類を判別する。
【００６１】
データ作成部２０９は、データ操作部２０６、ネットワーク操作部２０５、または接続経路調査部２０４などの指示に基づいて、他のノード２に送信するための送信データを作成する。
【００６２】
データ送信部２１０は、送信データ作成部２０９によって生成され、パケット化された送信データを他のノード２に送信する。
【００６３】
（ネットワーク接続管理の処理例）
本実施形態のネットワーク接続管理を行う処理例１〜３を説明する。
【００６４】
これらの処理例は、ネットワークを構成するノードが、何らかの障害などでネットワークから離脱することを想定し、事前に接続情報を送受信することで、接続経路（同一ノードを経由しない経路）を確保し、ノードの離脱によりネットワークが分断されることを防止する処理である。
【００６５】
＜同一ノードを経由しない経路について＞
同一ノードを経由しない経路を確保する理由は、同一ノードを経由する経路が複数あっても、その経由するノードが離脱することで、その複数の経路は一度に失われてしまうからである。例えば、同一ノードを経由しない経路が複数あれば、１つのノードの離脱によりその複数の経路のうち失われる経路は多くとも１つだけである。
【００６６】
従って同一ノードを経由しない経路を少なくとも２つ確保しておけば、どのノードが離脱しても、必ず少なくとも１つの経路は確保される。従って、ノードの離脱によるネットワークの分断を防止するためには、ノード間で、同一ノードを経由しない経路を少なくとも２つ確保しておく必要がある。
【００６７】
図６は、同一ノードを経由しない経路を説明するための図である。図６を用いて、同一ノードを経由しない経路について説明する。
【００６８】
図６（ａ）は、４つのノードＰＣ１〜ＰＣ４が実線で示したような接続関係でネットワークを構成している簡単なネットワーク接続例を示している。ここで、例えばＰＣ１とＰＣ４の接続経路を考えると、図６（ｂ）に示すように、ＰＣ２を経由して接続する経路６１と、ＰＣ３を経由して接続する経路６２とがある。
【００６９】
これらは異なるノード（ＰＣ２とＰＣ３）を経由しているので、同一ノードを経由しない経路が２つあることになる。すなわち、ＰＣ２とＰＣ３の何れかが離脱しても、ＰＣ１とＰＣ４の接続経路は少なくとも１つ確保される。
【００７０】
図６（ｃ）は、同様に４つのノードＰＣ１〜ＰＣ４が構成する簡単なネットワーク接続例であるが、実線で示したように接続関係が異なっている。ここで、やはりＰＣ１とＰＣ４の接続経路を考えると、図６（ｄ）に示すように、ＰＣ２を経由して接続する経路６３と、ＰＣ２とＰＣ３の両方を経由して接続する経路６４とがある。
【００７１】
これらは両方が同じノード（ＰＣ２）を経由しているので、同一ノードを経由しない経路は１つだけということになる。すなわちＰＣ２が離脱するとＰＣ１とＰＣ４の接続経路は全く失われ、ネットワークは分断されてしまう。
【００７２】
＜ネットワークの全体接続形態＞
処理例１〜３の各フローを説明するに際しては、具体的なネットワークの接続関係を用いた例を合わせて説明する。
【００７３】
それらは、図７に示すような接続形態を有するものとする。図７はネットワークの全体接続形態の例を示す図である。
【００７４】
図７においては、全体ネットワークは地理的に離れた３箇所の拠点（拠点Ａ、Ｂ、Ｃ）を結んだネットワーク構成となっている。各拠点は、それぞれがまた１つの単位としてサブネットワークを構成しており、各サブネットワークは、それぞれの拠点における代表ノードによって結ばれ、接続している。
【００７５】
例えば拠点ＡはＰＣ１〜ＰＣ９のノードからなるサブネットワークを構成し、ＰＣ６を経由して、他の拠点Ｂ、Ｃと接続している。拠点Ｂも同様に、ＰＣ１１〜ＰＣ１９のノードからなるサブネットワークを構成し、ＰＣ１４を経由して、他の拠点Ａ、Ｃと接続している。ＰＣ２１〜ＰＣ２８のノードからなる拠点Ｃも同様であり、ＰＣ２１を経由して、他の拠点Ａ、Ｂと接続している。
【００７６】
こういったネットワーク接続関係を例として用いて、以下の各処理例における具体的な接続関係を説明する。
【００７７】
＜処理例１＞
処理例１は、ノードがネットワークから離脱する際に、当該ノードが接続している各ノードに、自己の保持している接続テーブルを接続情報として送信し、受信したノードが、該接続テーブルを自己の保持する接続テーブルに追加更新する処理例である。
【００７８】
ノードのネットワークからの離脱を想定し、離脱するノードが接続する各ノード間の接続経路（同一ノードを経由しない経路）が、離脱後も複数確保されるように、事前に離脱ノードが接続情報を送信し、受信したノードが接続テーブル更新して、新たな接続経路を開くことでネットワークの分断を予防する。
【００７９】
図８は処理例１の接続管理の手順を示すフローチャートである。図８を用いて処理例１の接続管理の手順の例を説明する。また図９〜図１２を用いて、処理例１の接続管理の具体例を説明する。
【００８０】
図８（ａ）は送信側ノード、すなわち離脱するノードにおける処理手順を示している。また図８（ｂ）は受信側ノード、すなわち離脱するノードと直接接続しているノードにおける処理手順を示している。
【００８１】
図８（ａ）のステップＳ１１では、離脱するノードが、事前に直接接続しているノード、すなわち保持する接続テーブルに記載されているノードに、その接続テーブルを接続情報として送信する（接続情報交換工程）。図５を参照して述べると、ネットワーク操作部２０５が、接続テーブル保持部２０２に保持する接続テーブルを参照し、記載されている各ノードに接続情報としてその接続テーブルを送信する。
【００８２】
次にステップＳ１２で、送信を終えたノードは電源をＯＦＦにする。すなわち、ネットワークから離脱して処理を終了する。
【００８３】
一方、図８（ｂ）のステップＳ１３では、離脱ノードと接続するノードは、それぞれ接続情報として離脱ノードの接続テーブルを受信する（接続情報交換工程）。
【００８４】
次にステップＳ１４では、受信したノードは、それぞれが保持する接続管理テーブルに、接続情報として受信した接続テーブルを追加し、重複部分を削除して、接続テーブル更新を行う（接続テーブル更新工程）。図５を参照して述べると、接続テーブル管理部２０３が、接続テーブル保持部２０２に保持する接続テーブルに接続情報として受信した接続テーブルを追加し、重複部分を削除して、接続テーブル更新を行う。
【００８５】
接続テーブル更新により、新たな接続経路が開かれ、処理は終了する。ノードの離脱による分断は防止される。
【００８６】
図９は図７のネットワークにおける拠点Ａのサブネットワークを示している。各ノードの接続関係は破線で示されている。このＰＣ１〜ＰＣ９のノードからなるサブネットワークにおいて、例えばＰＣ９が離脱する場合を例にして具体例を説明する。
【００８７】
図１０は、本実施形態に係る接続管理の行われない場合、ＰＣ９がネットワークから離脱した状況を示す。この時点では、ネットワークの分断は生じていないが、例えばＰＣ１やＰＣ８は、他のノードとの接続経路が１つだけになってしまっている。もう一度ノードの離脱があれば、ネットワークから分断されてしまうことになる。
【００８８】
例えば、ＰＣ２の離脱があれば、ＰＣ１はネットワークから分断されてしまう。またＰＣ６の離脱があれば、ＰＣ８がネットワークから分断されてしまう。またさらにＰＣ６の離脱の場合は、拠点Ａの各ノードが他の拠点Ｂ、Ｃの各ノードとも分断されるが、これについては処理例２で述べる。
【００８９】
ネットワークの分断を予防する観点からは、既に述べたように、同一ノードを経由しない経路が常に複数存在することが望ましい。この処理例１では、そのための処理を行っている。すなわち、離脱するノード（ＰＣ９）は、事前に接続するノード（ＰＣ１、ＰＣ７、ＰＣ８）に接続情報（ＰＣ９の接続テーブル）を送信する。
【００９０】
図１１は、接続情報としての接続テーブルの送信と、それに基づく受信ノードの接続テーブルの更新の例を示す図である。ＰＣ１、ＰＣ７、ＰＣ８の各接続テーブルに対して、それぞれ受信したＰＣ９の接続テーブルを追加して更新し、それぞれが新たな接続テーブルによる新たな接続経路を開く。
【００９１】
例えば、ＰＣ１では、ＰＣ１の接続テーブルにＰＣ９の接続テーブルが追加され、自身（ＰＣ１）と送信元（ＰＣ９）が接続テーブルから削除され、更新される。すなわち、ＰＣ９との接続経路が失われる代わりに、ＰＣ７、ＰＣ８との接続経路が開かれる。
【００９２】
またＰＣ７では、やはりＰＣ９との接続経路が失われる代わりに、ＰＣ１、ＰＣ８との接続経路が開かれる。ＰＣ８でも同様に、やはりＰＣ９との接続経路が失われる代わりに、ＰＣ１、ＰＣ７との接続経路が開かれる。
【００９３】
図１２は、この処理例１の接続管理が行われた場合に、ＰＣ９がネットワークから離脱した状況を示す。この時点でネットワークの分断は生じていない。例えばＰＣ１やＰＣ８は、新たに実線で示すような接続経路が開き、他のノードとの接続経路は２つ以上確保されている。もう一度ノードの離脱があっても、さらに新たに接続経路が開かれ、常に他のノードとの接続経路は２つ以上確保される。すなわちネットワークからの分断は起こらない。
【００９４】
＜処理例２＞
処理例２は、所定のノードがネットワークから離脱する際に、当該ノードが接続するノードのうちから代替ノードを選択し、該代替ノードに自己の保持している接続テーブルを接続情報として送信し、受信した前記代替ノードが、該接続テーブルを自己の保持する接続テーブルに追加更新する処理例である。
【００９５】
拠点間を結ぶ位置にあるノードのネットワークからの離脱を想定し、離脱するノードが関与する拠点間の接続経路が、離脱後も確保されるように、事前に離脱ノードが代替ノードを選定し、接続情報を送信して、代替ノードが新たな接続経路を開くことで拠点間のネットワーク分断を予防する。
【００９６】
図１３は処理例２の接続管理の手順を示すフローチャートである。図１３を用いて処理例２の接続管理の手順の例を説明する。また図１４と図１５を用いて、処理例２の接続管理の具体例を説明する。
【００９７】
図１３のステップＳ２１では、離脱するノード、すなわち他の拠点とを結ぶ代表ノードが、事前に直接接続しているノード、すなわち保持する接続テーブルに記載されているノードに、それぞれ代替可能かどうかの問い合わせを送信する。図５を参照して述べると、ネットワーク操作部２０５が、接続テーブル保持部２０２に保持する接続テーブルを参照し、記載されている各ノードに上記問い合わせを送信する。
【００９８】
次にステップＳ２２で、受信した各ノードからの回答を受信する。
【００９９】
ステップＳ２３では、各ノードからの受信を参照し、代替可能なノードがあるかどうかを判別する。代替可能なノードがある場合（ステップＳ２３：ＹＥＳ）は、ステップＳ２４を実行する。代替可能なノードがない場合（ステップＳ２３：ＮＯ）は、ステップＳ２７へ進む。
【０１００】
通常は、代替可能なノードは常にあるが、ない場合というのは、拠点内の全ノードが離脱し、拠点のサブネットワーク自体が休止するような場合である。そのようなときに、ステップＳ２７が実行され、ネットワークから離脱して処理が終了する。
【０１０１】
ステップＳ２４では、代替可能なノードが１台以上あるので、所定の基準に従い１台の代替ノードを選定する。所定の基準は、例えば応答の最も早かったノードでもよいし、予め定めた何らかの優先順序に従ってもよい。
【０１０２】
ステップＳ２５では、選定した代替ノードに離脱するノードが保持する接続テーブルを接続情報として送信する。合わせて直接接続しているノード、すなわち保持する接続テーブルに記載されている各ノードに、代替ノードを通知する（接続情報交換工程）。
【０１０３】
次にステップＳ２６では、受信した代替ノードは、保持する接続管理テーブルに、接続情報として受信した接続テーブルを追加し、重複部分を削除して、接続テーブル更新を行う。また代替ノードの通知を受けた各ノードは、それぞれが保持する接続テーブルから離脱するノードを削除し、代替ノードを追加して更新する（接続テーブル更新工程）。
【０１０４】
図５を参照して述べると、接続テーブル管理部２０３が、接続テーブル保持部２０２に保持する接続テーブルに接続情報として受信した接続テーブルを追加し、あるいは通知された代替ノードを追加し、重複部分を削除して、接続テーブル更新を行う。
【０１０５】
接続テーブル更新により、代替ノードを経由する他の拠点との新たな接続経路が開かれ、ノードの離脱による他の拠点との分断は防止される。
【０１０６】
次のステップＳ２７で、離脱するノードは電源をＯＦＦにする。すなわち、代替ノードに他の拠点との接続を任せて、ネットワークから離脱し、処理を終了する。
【０１０７】
図１４は図７のネットワークにおける拠点Ａのサブネットワークの一部を示している。各ノードの接続関係は破線で示されている。この拠点Ａのサブネットワークにおいては、他の拠点Ｂ、Ｃのサブネットワークと常にＰＣ６を経由して接続している。このＰＣ６が離脱する場合を例にして具体例を説明する。
【０１０８】
図１５は、本実施形態に係る接続管理が行われ、ＰＣ６がネットワークから離脱した後の状況を示す。
【０１０９】
この時点で、本実施形態に係る接続管理が行われていなければ、図１５において、実線で示された接続経路は開かれておらず、破線で示した接続経路のみが残る。すなわち、ネットワークの分断が生じ、例えばＰＣ７やＰＣ８などの拠点Ａ内のノードは、他の拠点Ｂや拠点Ｃのノードとの接続経路が失われてしまっている。すなわち、ネットワークは拠点間で分断される。
【０１１０】
ネットワークの分断を予防する観点からは、既に述べたように、同一ノードを経由しない経路が常に複数存在することが望ましい。この処理例１では、同一ノードを経由しない経路が常に１つしかない特別な場合、すなわち、拠点間を結ぶ接続経路において必ず経由する、その拠点を代表するような１台のノードが離脱する場合の処理を行っている。
【０１１１】
従って、拠点Ａにおいて離脱するノード（ＰＣ６）は、事前に拠点Ａ内の接続するノード（ＰＣ５、ＰＣ７、ＰＣ８）に代替可能かどうかの問い合わせを送信し、回答を受信することにより、代替ノードを選定しておく。ここでは代替可能なノードのうちＰＣ５が代替ノードとして選定されたものとする。
【０１１２】
代替ノードが決定すると、離脱するノード（ＰＣ６）は、代替ノード（ＰＣ５）に保持する接続テーブルを接続情報として送信し、代替ノード（ＰＣ５）は保持する接続テーブルに追加して接続テーブル更新を行う。
【０１１３】
代替ノード（ＰＣ５）の接続先は、ＰＣ６が削除され、新たにＰＣ７、ＰＣ８、及び拠点ＢのＰＣ１４と拠点ＣのＰＣ２１が増えることになる。
【０１１４】
また、離脱するノード（ＰＣ６）は、他の接続するノード（ＰＣ７、ＰＣ８、及び拠点ＢのＰＣ１４と拠点ＣのＰＣ２１）に代替ノード（ＰＣ５）を接続情報として通知する。それらのノードは代替ノード（ＰＣ５）を接続先として追加し、接続テーブル更新を行う。
【０１１５】
こうして図１５の実線で示したような接続経路が新たに開かれ、拠点Ａにおける各ノードから、常に代替ノード（ＰＣ５）を経由して、拠点Ｂ、Ｃに至る拠点間の接続経路が確保されている。すなわち拠点間のネットワークの分断が防止される。
【０１１６】
＜処理例３＞
処理例３は、ノード間の接続経路数を調査し、同一ノードを経由しない接続経路の数が、所定の数未満であるノード組がある場合に、当該ノード組の各ノードに、それぞれ接続すべき相手ノードを接続情報として送信し、受信したノードが、該接続情報の示す相手ノードを自己の保持する接続テーブルに追加更新する処理例である。
【０１１７】
ネットワーク内の各ノード間の同一ノードを経由しない接続経路の数を予め調査し、所定数が確保されていない場合は、その時点で同一ノードを経由しない接続経路の数が確保されるように、当該ノード組に互いの相手ノードを通知し、接続テーブルを更新させ、新たな接続経路を開くことでネットワークの分断を予防する。
【０１１８】
図１６と図１７は処理例３の接続管理の手順を示すフローチャートである。図１６と図１７を用いて処理例３の接続管理の手順の例を説明する。また図１８〜図２０を用いて、処理例３の接続管理の具体例を説明する。
【０１１９】
図１６は送信側ノード、すなわち接続経路調査を行うノードにおける処理手順を示している。また図１７は受信側ノード、すなわち接続経路調査を行うノードから送信されてくる経路調査パケットを受信し、所定の処理を行い他のノードに送信する側のノードにおける処理手順を示している。
【０１２０】
図１６のステップＳ３１からステップＳ３６、及び図１７のステップＳ４１からステップＳ４７は接続経路調査工程に該当する。図５を参照して述べると、これらの工程は、ネットワーク操作部２０５と連繋して接続経路調査部２０４が執り行う。
【０１２１】
これらの接続経路調査は、任意の公知技術を用いて行うことができる。ここではフラッディング技術と呼ばれる手法を用いて行うことにする。
【０１２２】
図１６のステップＳ３１では、接続経路調査を行うノードが、直接接続しているノード、すなわち保持する接続テーブルに記載されているノードに、経路調査パケットを送信する。経路調査パケットについては後述する。
【０１２３】
次にステップＳ３２で、送信を終えたノードは経路調査パケットの返却を受信する。
【０１２４】
ステップＳ３３では、所定の時間が経過したかどうかを判別する。経路調査パケットの返却に所定の時間以上係るような経路があっても無視することにより、より短い経路を包含するような長い、無駄な経路を切り捨てるようにしている。
【０１２５】
ステップＳ３３で所定の時間が経過していない場合（ステップＳ３３：ＮＯ）は、ステップＳ３２へ戻り、経路調査パケットの返却を受信し続ける。所定の時間が経過した場合（ステップＳ３３：ＹＥＳ）は、ステップＳ３４を実行する。
【０１２６】
ここで図１７に移り、経路調査パケットを受け取る側のノードの処理手順を説明する。
【０１２７】
図１７のステップＳ４１では、経路調査を行うノードに接続するノードは、それぞれ経路調査パケットを受信する。
【０１２８】
次にステップＳ４２では、受信したノードは、それぞれが受信した経路調査パケットにそれぞれのノードにユニークなＩＤを付加する。これでその経路調査パケットが、そのノードを経由したことが分かる。
【０１２９】
ステップＳ４３では、経路調査パケットに記されている最終ノードを参照し、自らが最終ノードであるかどうかを判別する。最終ノードとは、その経路調査パケットの発信元、すなわち経路調査を行うノードにその経路調査パケットを戻すことが指定されているノードである。
【０１３０】
ステップＳ４３で自らが最終ノードである場合（ステップＳ４３：ＹＥＳ）は、ステップＳ４７を実行し、返却先ノード、すなわち発信元のノードへ経路調査パケット（最終結果パケット）を送信し、返却する。自らが最終ノードでない場合（ステップＳ４３：ＮＯ）は、ステップＳ４４を実行する。
【０１３１】
ステップＳ４４では、保持する接続テーブルに最終ノードが記載されているかどうかを判別する。記載されている（ステップＳ４４：ＹＥＳ）場合は、ステップＳ４６を実行し、最終ノードのみに経路調査パケットを送信する。最終ノードが記載されていない場合（ステップＳ４４：ＮＯ）は、ステップＳ４５を実行する。
【０１３２】
ステップＳ４５では、保持する接続テーブルに記載されているノードのうち、送信してきたノード以外のノードに経路調査パケットを送信する。
【０１３３】
ステップＳ４５〜ステップＳ４６の何れかで、経路調査パケットは次のノードに送信されることになる。再度、別の経路調査パケットが回ってきたら、最初のステップＳ４１から繰り返すことになる。
【０１３４】
図１６に戻って、経路調査を行う発信元のノードに所定の時間内に経路調査パケットが戻ってきた所から説明を続ける。返却されてきた経路調査パケットは、経路の数を反映して、発信したときよりパケット数は増えていることになる。それらから同一ノードを経由しない経路数を得るために、同一ノードを経由する経路のうち最も短いものだけを抽出することにする。
【０１３５】
ステップＳ３４では、返却された各受信パケットの内容を参照して、接続テーブルに記載の特定のノード間で同一ノードを経由する経路を抽出する。
【０１３６】
ステップＳ３５では、抽出した同一ノードを経由する経路の数が複数であるかどうかを判別する。複数である場合は、ステップＳ３６を実行する。複数でない場合は、ステップＳ３７へ進む。
【０１３７】
ステップＳ３６では、複数の同一ノードを経由する経路の中で一番短い経路だけを選択して残す。以上で接続経路調査工程は終了する。同一ノードを経由しない経路だけが接続経路として残されていることになる。
【０１３８】
ここからは同一ノードを経由しない経路の数を複数確保するための処理となる。
【０１３９】
ステップＳ３７では、接続テーブルに記載の特定のノード間での経路の数が１つであるかどうかを判別する。すなわち、同一ノードを経由しない経路の数が１つであるかどうかである。経路の数が１つである場合はステップＳ３８を実行する。経路の数が２つ以上ある場合は処理は終了である。
【０１４０】
ステップＳ３８では、同一ノードを経由しない経路の数が１つであるノードの組、すなわち経路の両端のノードに対して、相手のノードを通知して接続依頼を送信する（接続情報交換工程）。
【０１４１】
ステップＳ３９では、上記の接続依頼を受信したノードは、互いに保持する接続テーブルに通知された相手ノードを追加して、更新する（接続テーブル更新工程）。接続テーブル更新により、新たな接続経路が開かれ、ノード間の同一ノードを経由しない経路の数は複数となる。
【０１４２】
これにより処理は終了する。上記接続経路調査が適宜行われ、そのタイミングで常に複数の同一ノードを経由しない経路が確保されることにより、突然のノードの離脱によるネットワークの分断は防止される。
【０１４３】
図１８は図７のネットワークにおける拠点Ｃのサブネットワークを示している。各ノードの接続関係は破線で示されている。このＰＣ２１〜ＰＣ２８のノードからなるサブネットワークにおいて、例えばＰＣ２８が接続経路調査を行う場合を例にして具体例を説明する。
【０１４４】
図１８は、接続経路調査が行われようとしている時点での状況を示す。この時点では、ネットワークの分断は生じていないが、例えばＰＣ２８が離脱するような場合を考えてみると、それまでＰＣ２８を経由して接続していたノード間の接続経路が１つだけになってしまうことが発生する。経路が１つだけであると、一旦ノードの離脱があれば、ネットワークが分断されてしまう恐れがある。
【０１４５】
ここではＰＣ２８が経路調査を行い、ＰＣ２８と接続しているノード（ＰＣ２４、ＰＣ２６、ＰＣ２７）間での同一ノードを経由しない経路の数を調べ、それが複数確保されるよう対処する例を説明する。すなわち、ＰＣ２４からＰＣ２６、ＰＣ２７からＰＣ２４、ＰＣ２６からＰＣ２７の３通りのノード間についての経路調査である。
【０１４６】
まず、ＰＣ２８は最終ノードを例えばＰＣ２７に設定する。発信する経路調査パケットが必ず最終ノード（ＰＣ２７）を経由してＰＣ２８に返却されるように指定する。その上で残りのＰＣ２４とＰＣ２６に経路調査パケットを送信する。
【０１４７】
図１９はＰＣ２８がＰＣ２４に発信した経路調査パケットと、それがＰＣ２８に返却されてきた結果としての経路調査パケットとを示すものである。
【０１４８】
発信された経路調査パケットは最終ノード（ＰＣ２７）を経由してＰＣ２８に返却されるように指定されている。返却された経路調査パケットには、経由したノードのＩＤが順に付加されており、辿ってきた経路をトレースすることができる。ＰＣ２４からの経路を辿って説明する。
【０１４９】
ＰＣ２４が経路調査パケットを受信すると、最終ノードがＰＣ２７となっている。しかし、ＰＣ２４はＰＣ２７とは直接接続していない。従ってＰＣ２４は接続しているＰＣ２３とＰＣ２５に経路調査パケットを送信する。その際、自分のＩＤ（ＰＣ２４）を経路調査パケットに記載する。
【０１５０】
その経路調査パケットを受信したＰＣ２５は、同様に自分のＩＤ（ＰＣ２５）を記載し、送信元のＰＣ２４以外に１つだけ接続しているＰＣ２６に経路調査パケットを送信する。受信したＰＣ２６も、同様に自分のＩＤ（ＰＣ２６）を記載し、ＰＣ２３に送信する。ＰＣ２６からＰＣ２８には送信することができない。それができるのは最終ノードだけである。
【０１５１】
こうしてＰＣ２３は２つの経路調査パケットを受信することになる。ＰＣ２３は最終ノード（ＰＣ２７）と接続しているので、受け取ったどの経路調査パケットもすべて、自分のＩＤ（ＰＣ２３）を記載して、最終ノード（ＰＣ２７）に送信する。
【０１５２】
最終ノード（ＰＣ２７）も、受け取ったすべての経路調査パケットに自分のＩＤ（ＰＣ２７）を記載して、返却先ノード（ＰＣ２８）に送信する。
【０１５３】
図１９には、以上の経路を辿った２つの経路調査パケットが示されている。
【０１５４】
このようにして、ＰＣ２８と接続しているノード（ＰＣ２４、ＰＣ２６、ＰＣ２７）間での経路を含む経路を取得することができる。この経路から同一ノードを経由しない経路を抽出すると図２０に示すような経路となる。
【０１５５】
図２０において、ＰＣ２８を除いて考えた場合、ＰＣ２４とＰＣ２６を両端とする同一ノードを経由しない経路は、ＰＣ２３を経由する経路７１とＰＣ２５を経由する経路７２の２つとなる。またＰＣ２７とＰＣ２４を両端とする同一ノードを経由しない経路は、ＰＣ２３を経由する経路７３が１つだけとなる。ＰＣ２６とＰＣ２７を両端とする同一ノードを経由しない経路も、ＰＣ２３を経由する経路７４が１つだけである。
【０１５６】
従ってもしＰＣ２８がネットワークから離脱すると、ＰＣ２７とＰＣ２４及びＰＣ２６とＰＣ２７の間の経路は１つだけになる。さらなるノードの離脱によるネットワーク分断を防止するため、本処理例３では、この時点で複数の経路が確保されるよう対処する。
【０１５７】
すなわち、経路調査を行ったＰＣ２８は、例えば、ＰＣ２７とＰＣ２４の双方に、相手ノードを通知して接続依頼を送信する。同様にＰＣ２６とＰＣ２７にも接続依頼を送信する。これで複数の同一ノードを経由しない経路を確保することができ、突然のノード離脱に対しても、ネットワークの分断を防止することができる。
【０１５８】
なお、こういった接続経路調査は定期的に実施してもよいし、ノードの離脱が事前に予想できる場合は、適宜行うようにすることもできる。
【０１５９】
このように本実施形態にかかるネットワーク接続管理方法、及び接続するノードとしての情報処理装置によれば、複数のノードが、それぞれの保持する接続テーブルに基づき、互いに接続するネットワークシステムにおいて、ノード間の接続情報を所定のタイミングで送受信し、受信した接続情報に基づき、保持する接続テーブルを更新することにより、ノード間の同一ノードを経由しない接続経路の数を所定数以上に維持することができる。
【０１６０】
これにより、ノードが離脱するような事態の発生に対しても、予め接続状態を管理し、ノード間の接続経路を維持することができ、従って必要以上に接続経路を保有することなく、ネットワークの分断といった障害発生も予防することができ、ノード間の接続経路を効率よく管理することができる。
【０１６１】
なお本発明の範囲は、上記実施形態に限定されるものではない。本発明の趣旨を逸脱しない限り、それらの変更された形態もその範囲に含むものである。
【図面の簡単な説明】
【０１６２】
【図１】ネットワーク１の全体構成例を示す図である。
【図２】ネットワーク１を構成するノード（情報処理装置）２のハードウェア構成例を示す図である。
【図３】ネットワーク１を構成する各ノード２の接続形態、すなわちノードの論理的なトポロジーの例を示す図である。
【図４】図３のように関連付けられたノード２の接続テーブルＴＬ例を示す図である。
【図５】ノード（情報処理装置）２の機能構成例を示すブロック図である。
【図６】ネットワークにおける同一ノードを経由しないノード間経路を説明するための図である。
【図７】ネットワークの全体接続形態の例を示す図である。
【図８】処理例１の接続管理の手順を示すフローチャートである。
【図９】図７のネットワークにおける拠点Ａのサブネットワークを示す図である。
【図１０】図９において、ＰＣ９がネットワークから離脱した状況を示す図である。
【図１１】処理例１において、接続情報としての接続テーブルの送信と、それに基づく受信ノードの接続テーブルの更新の例を示す図である。
【図１２】処理例１の接続管理が行われた場合の、ＰＣ９がネットワークから離脱した状況を示す図である。
【図１３】処理例２の接続管理の手順を示すフローチャートである。
【図１４】図７のネットワークにおける拠点Ａのサブネットワークの一部を示す図である。
【図１５】処理例２の接続管理が行われた場合の、ＰＣ６がネットワークから離脱した状況を示す図である。
【図１６】処理例３の接続管理の手順を示すフローチャート１である。
【図１７】処理例３の接続管理の手順を示すフローチャート２である。
【図１８】図７のネットワークにおける拠点Ｃのサブネットワークを示す図である。
【図１９】ＰＣ２８がＰＣ２４に発信した経路調査パケットと、それがＰＣ２８に返却されてきた結果としての経路調査パケットとを示す図である。
【図２０】図１８において、同一ノードを経由しない経路を抽出した図である。
【符号の説明】
【０１６３】
１  ネットワーク（Ｐ２Ｐ）
２  情報処理装置（ノード）
３  スイッチングハブ
４  ルータ
５  認証サーバ
２０１  データ保持部
２０２  接続テーブル保持部
２０３  接続テーブル管理部
２０４  接続経路調査部
２０５  ネットワーク操作部
２０６  データ操作部
２０７  データ受信部
２０８  データ解析部
２０９  データ作成部
２１０  データ送信部
ＴＬ  接続テーブル
【図１】
0004893533.tif 000002
【図２】
0004893533.tif 000003
【図３】
0004893533.tif 000004
【図４】
0004893533.tif 000005
【図５】
0004893533.tif 000006
【図６】
0004893533.tif 000007
【図７】
0004893533.tif 000008
【図８】
0004893533.tif 000009
【図９】
0004893533.tif 000010
【図１０】
0004893533.tif 000011
【図１１】
0004893533.tif 000012
【図１２】
0004893533.tif 000013
【図１３】
0004893533.tif 000014
【図１４】
0004893533.tif 000015
【図１５】
0004893533.tif 000016
【図１６】
0004893533.tif 000017
【図１７】
0004893533.tif 000018
【図１８】
0004893533.tif 000019
【図１９】
0004893533.tif 000020
【図２０】
0004893533.tif 000021