(57)【要約】【課題】システム全体の効率を最適化した転送経路を設定することができる通信システムを得ること。【解決手段】通信端末１に接続する中継装置３を、通信端末の識別子と中継装置の識別子とに基づいて中継装置３が分散してデータベースとして保持し、管理装置８は中継装置３から受信した経路情報を保持し、中継装置３は、パケットを受信した場合に宛先通信端末の識別子と他の中継装置３の識別子とに基づいて宛先通信端末のデータベースを保持する中継装置へパケットを転送し、また、受信したパケットの宛先通信端末データベースを保持している場合、宛先通信端末に接続する宛先中継装置と送信元中継装置と宛先通信端末とを管理装置８へ通知し、管理装置８は、経路情報に基づいて効率指標値が最適となる送信元中継装置から宛先中継装置までの最適転送経路を算出して送信元中継装置へ通知する。【選択図】図１１
2011029781.tif 000002
【特許請求の範囲】
【請求項１】
複数の中継装置と、前記中継装置に接続する通信端末と、で構成され、前記中継装置が直接転送可能な中継装置を経路情報として保持しその経路情報に基づいて受信したパケットを転送する通信システムであって、
前記中継装置と接続する管理装置、
を備え、
前記通信端末に接続する中継装置との対応を、前記通信端末ごとに、前記通信端末の識別子と前記中継装置の識別子とに基づいて前記中継装置に割り当てることとし、
前記中継装置は、自装置に割り当てられた前記対応を分散データベースとして保持し、
前記中継装置は、保持している経路情報を前記管理装置に送信し、
前記管理装置は、前記中継装置から受信した経路情報を前記中継装置ごとに経路管理情報として保持し、
前記中継装置は、前記通信端末から他の前記通信端末宛のパケットを受信した場合に、そのパケットの宛先の前記通信端末である宛先通信端末の識別子と他の前記中継装置の識別子とに基づいて、前記宛先通信端末の分散データベースを保持する前記中継装置を求め、求めた前記中継装置へ自装置の識別子を付加して受信したパケットを転送し、
前記中継装置は、パケットを受信した場合に、そのパケットの宛先通信端末の分散データベースを保持している場合に、保持している分散データベースに基づいて前記宛先通信端末に接続する中継装置を宛先中継装置として求め、そのパケットの送信元の中継装置である送信元中継装置と前記宛先中継装置と前記宛先通信端末とを前記管理装置へ通知し、
前記管理装置は、前記経路管理情報に基づいて転送効率の高さを示す効率指標値が最適となる前記送信元中継装置から前記宛先中継装置までの転送経路を最適転送経路として算出し、前記最適転送経路と前記宛先通信端末を最適経路情報として前記送信元中継装置へ通知し、
前記中継装置は、前記最適経路情報を受信した場合に、前記最適経路情報を保持し、前記最適転送経路上の自装置の次の中継装置へ前記最適経路情報を通知し、また、前記宛先通信端末宛のパケットを受信した場合には、前記最適転送経路上の自装置の次の中継装置へそのパケットを転送する、
ことを特徴とする通信システム。
【請求項２】
前記効率指標値を経由する前記中継装置の数とし、
前記管理装置は、経由する前記中継装置の数が最小となる前記送信元中継装置から前記宛先中継装置までの転送経路を前記最適転送経路として算出する、
ことを特徴とする請求項１に記載の通信システム。
【請求項３】
前記中継装置および前記通信装置は２以上のサブネットワークに分割され、前記管理装置は、前記中継装置および前記通信装置を含まないサブネットワークに属することとし、
前記サブネットワーク間を接続するルータ、
をさらに備え、
前記管理装置は、前記ルータからルータが接続する前記サブネットワークのアドレス情報をネットワーク構成情報として取得し、さらに前記ネットワーク構成情報に基づいて前記最適転送経路を算出する、
ことを特徴とする請求項１に記載の通信システム。
【請求項４】
前記効率指標値を、経由する前記中継装置の数と経由するサブネットワークの数ととし、
前記管理装置は、経由するサブネットワークの数を最小とし、かつ、経由する前記中継装置の数が最小となる前記送信元中継装置から前記宛先中継装置までの転送経路を前記最適転送経路として算出する、
ことを特徴とする請求項１に記載の通信システム。
【請求項５】
前記中継装置は、前記管理装置に対して定期的に生存確認パケットを送信し、前記管理装置から生存確認パケットに対する正常な応答がなかった場合に、自装置が保持する経路情報に基づいて受信したパケットの転送を行う、
ことを特徴とする請求項１〜４のいずれか１つに記載の通信システム。
【請求項６】
複数の中継装置と、前記中継装置に接続する通信端末と、前記中継装置と接続する管理装置と、で構成され、前記中継装置が直接転送可能な中継装置を経路情報として保持しその経路情報に基づいて受信したパケットを転送する通信システムにおけるパケット転送方法であって、
前記通信端末に接続する中継装置との対応を、前記通信端末ごとに、前記通信端末の識別子と前記中継装置の識別子とに基づいて前記中継装置に割り当てることとし、
前記中継装置が、自装置に割り当てられた前記対応を分散データベースとして保持する分散データベース保持ステップと、
前記中継装置が、保持している経路情報を前記管理装置に送信する経路情報送信ステップと、
前記管理装置が、前記中継装置から受信した経路情報を前記中継装置ごとに経路管理情報として保持する経路管理情報保持ステップと、
前記中継装置が、前記通信端末から他の前記通信端末宛のパケットを受信した場合に、そのパケットの宛先の前記通信端末である宛先通信端末の識別子と他の前記中継装置の識別子とに基づいて、前記宛先通信端末の分散データベースを保持する前記中継装置を求め、求めた前記中継装置へ自装置の識別子を付加して受信したパケットを転送するパケット転送ステップと、
前記中継装置は、パケットを受信した場合に、そのパケットの宛先通信端末の分散データベースを保持している場合に、保持している分散データベースに基づいて前記宛先通信端末に接続する中継装置を宛先中継装置として求め、そのパケットの送信元の中継装置である送信元中継装置と前記宛先中継装置と前記宛先通信端末とを前記管理装置へ通知する中継装置通知ステップと、
前記管理装置は、前記経路管理情報に基づいて転送効率の高さを示す効率指標値が最適となる前記送信元中継装置から前記宛先中継装置までの転送経路を最適転送経路として算出し、前記最適転送経路と前記宛先通信端末を最適経路情報として前記送信元中継装置へ通知する最適経路情報通知ステップと、
前記中継装置は、前記最適経路情報を受信した場合に、前記最適経路情報を保持し、前記最適転送経路上の自装置の次の中継装置へ前記最適経路情報を通知し、また、前記宛先通信端末宛のパケットを受信した場合には、前記最適転送経路上の自装置の次の中継装置へそのパケットを転送する最適転送経路転送ステップと、
を含む特徴とするパケット転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オーバレイネットワークを用いた通信システムおよびその通信システムにおけるパケット転送方法に関する。
【背景技術】
【０００２】
オーバレイネットワークを用いたノード間通信およびデータの分散配置をスケーラブルに行う方法として、たとえば、非特許文献１に記載される分散ハッシュテーブル（ＤＨＴ：Ｄｉｓｔｒｉｂｕｔｅｄ  Ｈａｓｈ  Ｔａｂｌｅ）方式がある。ＤＨＴ方式を採用するオーバレイネットワークでは、ネットワークを構成するノードとそこに配置するデータの双方にハッシュ関数を用いて固定長の識別子を割り当てる。各々のデータは識別子の値が最も近くなるノードが管理するようにすることにより、データを分散配置する。
【０００３】
一方、識別子の値の差に基づいて上記のデータを管理するノードと別のノードを選択し、選択したノードに対して論理的通信路を設定することで、データの管理・探索をスケーラブルに実現するネットワークを構築することができる。下記特許文献１では、これを利用して、オーバレイネットワーク上でノード間の自律分散的な動作によりパケット転送経路を選択して通信を行う方法を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２１９６４４号公報
【非特許文献】
【０００５】
【非特許文献１】Ｉｏｎ  Ｓｔｏｉｃａ  他，“Ｃｈｏｒｄ：  Ａ  Ｓｃａｌａｂｌｅ  Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ  Ｌｏｏｋｕｐ  Ｓｅｒｖｉｃｅ  ｆｏｒ  Ｉｎｔｅｒｎｅｔ  Ａｐｐｌｉｃａｔｉｏｎｓ”，  Ｐｒｏｃ．  ＡＣＭ  ＳＩＧＣＯＭＭ，２００１
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来の技術によれば、通信を行うユーザ端末とネットワークを構成するノードにそれぞれ識別子を割り当て、これらの識別子を対応付けるデータ（ＩＤ情報）をＤＨＴによって分散管理している。パケット転送の際は、このデータを探索することによって宛先端末が接続しているノードを発見して転送を行う。このとき、宛先となるノードに到達するまでのパケット転送経路は識別子のみに基づいて決定されるが、ノードの識別子は物理的なネットワーク構成と無関係に割り当てられる。そのため、ノード間の物理的なネットワーク構成を反映した上での最も効率の良い経路を選択できるとは限らない、という問題があった。また、この従来の方法では、システム全体の効率を最適化することも困難である。
【０００７】
本発明は、上記に鑑みてなされたものであって、オーバレイネットワークを用いる場合に、システム全体の効率を最適化した転送経路を設定することができる通信システムおよびパケット転送方法を得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、複数の中継装置と、前記中継装置に接続する通信端末と、で構成され、前記中継装置が直接転送可能な中継装置を経路情報として保持しその経路情報に基づいて受信したパケットを転送する通信システムであって、前記中継装置と接続する管理装置、を備え、前記通信端末に接続する中継装置との対応を、前記通信端末ごとに、前記通信端末の識別子と前記中継装置の識別子とに基づいて前記中継装置に割り当てることとし、前記中継装置は、自装置に割り当てられた前記対応を分散データベースとして保持し、前記中継装置は、保持している経路情報を前記管理装置に送信し、前記管理装置は、前記中継装置から受信した経路情報を前記中継装置ごとに経路管理情報として保持し、前記中継装置は、前記通信端末から他の前記通信端末宛のパケットを受信した場合に、そのパケットの宛先の前記通信端末である宛先通信端末の識別子と他の前記中継装置の識別子とに基づいて、前記宛先通信端末の分散データベースを保持する前記中継装置を求め、求めた前記中継装置へ自装置の識別子を付加して受信したパケットを転送し、前記中継装置は、パケットを受信した場合に、そのパケットの宛先通信端末の分散データベースを保持している場合に、保持している分散データベースに基づいて前記宛先通信端末に接続する中継装置を宛先中継装置として求め、そのパケットの送信元の中継装置である送信元中継装置と前記宛先中継装置と前記宛先通信端末とを前記管理装置へ通知し、前記管理装置は、前記経路管理情報に基づいて転送効率の高さを示す効率指標値が最適となる前記送信元中継装置から前記宛先中継装置までの転送経路を最適転送経路として算出し、前記最適転送経路と前記宛先通信端末を最適経路情報として前記送信元中継装置へ通知し、前記中継装置は、前記最適経路情報を受信した場合に、前記最適経路情報を保持し、前記最適転送経路上の自装置の次の中継装置へ前記最適経路情報を通知し、また、前記宛先通信端末宛のパケットを受信した場合には、前記最適転送経路上の自装置の次の中継装置へそのパケットを転送する、ことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、通信端末とその通信端末に接続する中継装置との対応であるデータベースを各中継装置が分散データベースとして分散して保持することとし、管理装置が、各中継装置から経路情報を取得して保持し、パケットの宛先の通信端末に関する分散データベースを保持している中継装置がそのパケットの送信元の通信端末に接続する送信元中継装置と宛先の通信端末に接続する宛先中継装置とを管理装置へ通知し、管理装置が、経路管理情報に基づいて、転送効率を示す所定の指標値を求め、指標値が最適となる送信元中継装置から宛先中継装置までの経路を最適な転送経路として求め、その転送経路を送信元中継装置に通知するようにしたので、システム全体の効率を最適化した転送経路を設定することができる、という効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明にかかる通信システムの構成例を示す図である。
【図２】図２は、通信端末とその端末が接続する中継装置の関係を表すデータベースの構成例を示す図である。
【図３】図３は、データベースを中継装置に分散配置した一例を示す図である。
【図４】図４は、通信端末がパケットを送信する場合の転送手順の一例を示す図である。
【図５】図５は、サブネットワークの構成を考慮した配置の一例を示す図である。
【図６】図６は、管理装置を設置した場合の構成例を示す図である。
【図７】図７は、通信端末，中継装置，管理装置，サブネットワークのＩＰアドレスの一例を示す図である。
【図８】図８は、管理装置が構築する経路管理テーブルの一例を示す図である。
【図９】図９は、ネットワーク構成テーブルの構成の一例を示す図である。
【図１０】図１０は、分類テーブルの一例を示す図である。
【図１１】図１１は、最適な転送経路を選択する場合の転送手順の一例を示す図である。
【図１２】図１２は、管理装置が中継装置間の転送経路を求める手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下に、本発明にかかる通信システムおよびパケット転送方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態．
図１は、本発明にかかる通信システムの構成例を示す図である。図１に示すように、本実施の形態の通信システムは、通信端末１ａ〜１ｃ（１ａ，１ｂ，１ｃ）と、中継装置３ａ〜３ｆ（３ａ，３ｂ，３ｃ，３ｄ，３ｅ，３ｆ）と、で構成され、中継装置３ａ〜３ｆは、網２を構成している。中継装置３ａ〜３ｆは、それぞれ直接接続する中継装置３ａ〜３ｆと通信回線４で接続されている。なお、図１では簡略化のため、中継装置３ｃと中継装置３ｅを接続する通信回線４のみに符号を付し、他の中継装置間および中継装置と通信端末を結ぶ矢印線には符号を付していないが、図中の他の矢印線も同様に通信回線４とする。通信端末１ａ〜１ｃは、網２に接続しており、網２内の中継装置３ａ〜３ｆを経由して自端末以外の通信端末１ａ〜１ｃと通信を行う。
【００１３】
通信端末１ａ〜１ｃおよび中継装置３ａ〜３ｆには、それぞれ一意な識別子が割り当てられているとする。また、中継装置３ａ〜３ｆは、オーバレイネットワークを構成し、直接の転送が可能な自装置以外の中継装置３ａ〜３ｆについての経路情報を管理しているとし、通信回線４を用いて経路情報に基づいて転送を行う。図１では、図中の矢印の指す方向にのみ転送可能であるとする。たとえば、中継装置３ａは中継装置３ｂ，３ｄの識別子とＩＰ（Internet  Protocol）アドレスを経路情報として保持しており、３ａから３ｂ，３ａから３ｄの２つの装置への直接転送が可能である。一方、中継装置３ｂ，３ｄは、３ａへの経路情報をもたないため、前述と逆の方向の、３ｂから３ａ，３ｄから３ａへの転送は、実施することはできない。
【００１４】
また中継装置３ａ〜３ｆは、自身が直接接続する通信端末１ａ〜１ｃに対する経路情報を保持しているとし、通信端末１ａ〜１ｃは、自身が直接接続する中継装置３ａ〜３ｆへの経路情報を保持しているとする。
【００１５】
図２は、本実施の形態の通信システムにおける通信端末１とその端末が接続する中継装置３ａ〜３ｆの関係を表すデータベース（ＩＤ情報）の構成例を示す図である。このデータベースは、図２に示すように、通信端末１ａ〜１ｃの識別子（１ａ，１ｂ，２ｃ，…）と通信端末１ａ〜１ｃが接続する中継装置３ａ〜３ｆ（３ａ，３ｅ，３ｄ，…）の識別子とを含み、通信端末１ａ〜１ｃが直接接続する中継装置３ａ〜３ｆの情報を示している。
【００１６】
このデータベースを参照することにより、通信端末１ａ〜１ｃの識別子を検索キーとして、その通信端末１ａ〜１ｃが接続する中継装置３ａ〜３ｆの識別子を検索することができる。たとえば、図２の例では、通信端末１ｂの識別子（１ｂ）を検索キーとして検索することにより、上から２番目のエントリに示すように通信端末１ｂに接続する中継装置は中継装置３ｅ（識別子を３ｅとする）であることがわかる。
【００１７】
本実施の形態では、図２に示したデータベースを中継装置３ａ〜３ｆに分散配置する。図３は、図２に示したデータベースを中継装置３ａ〜３ｆに分散配置した一例を示す図である。ここでは、データベースの１エントリごとに、検索キーである通信端末１ａ〜１ｃの識別子のハッシュ値を求め、求めたハッシュ値と識別子のハッシュ値が最も近くなる中継装置３ａ〜３ｆにそのエントリを配置することとする。中継装置３ａ〜３ｆは、自身に分散配置された分散データベースを保持する。
【００１８】
図３の例では、このようにして分散配置されたデータベースである分散データベース５ａ，５ｂ，５ｃをそれぞれ中継装置３ｂ，３ｃ，３ｆに配置する例を示している。具体的には、たとえば、中継装置３ｂが通信端末１ａに関するエントリを含む分散データベース５ａを保持し、中継装置３ｃが通信端末１ｃに関するエントリを含む分散データベース５ｂを保持し、中継装置３ｆが通信端末１ｂに関するエントリを含む分散データベース５ｃを保持する。なお、図３では、図の簡略化のため、図２の「通信端末の識別子」を「通信端末」として示し、「通信端末が接続する中継装置の識別子」を「中継装置」として示している。
【００１９】
つぎに、本実施の形態のパケットの転送手順を説明する。図４は、通信端末１ａが通信端末１ｂへパケットを送信する場合の転送手順の一例を示す図である。まず、通信端末１ａは、通信端末１ｂ宛てのパケットを自らが直接接続している中継装置３ａへ送出する（ステップＳ１１）。なお、このパケットには宛先である通信端末１ｂの識別子が含まれていることとする。
【００２０】
中継装置３ａは、自身が保持する分散データベース５ａにそのパケットの宛先の通信端末１ｂについてのエントリがないため、通信端末１ｂの識別子のハッシュ値に基づいて通信端末１ｂに関するエントリを含む分散データベースを保持する中継装置が中継装置３ｆであると認識し、中継装置３ｆへ受信したパケットを転送する（ステップＳ１２）。具体的には、中継装置３ａは、通信端末１ｂの識別子のハッシュ値を求め、求めたハッシュ値に識別子が最も近い中継装置を求めることにより、通信端末１ｂに関するエントリを含む分散データベースを保持する中継装置を求める。なお、各中継装置は、パケットを転送する際、自装置の識別子をそのパケットに付加することとする。
【００２１】
パケットを転送された中継装置３ｆは、そのパケットの宛先である通信端末１ｂに関するエントリを分散データベース５ｃ内に保持しているため、通信端末１ｂの識別子を検索キーに検索することにより通信端末１ｂが中継装置３ｅに接続していること認識し、中継装置３ｅへそのパケットを転送する（ステップＳ１３）。
【００２２】
中継装置３ｆからパケットを転送された中継装置３ｅは、自身が保持する経路情報に基づいて自らに接続する通信端末１ｂへそのパケットを転送する（ステップＳ１４）。以上の手順により、通信端末１ａから通信端末１ｂへのパケット送信が完了する。
【００２３】
図５は、図１に示した通信システムについてサブネットワークの構成を考慮した配置の一例を示す図である。図１に示した中継装置および通信装置１ａ〜１ｃは、サブネットワーク７ａ〜７ｃに分かれて配置されており、サブネットワーク７ａ〜７ｃをルータ６が接続する構成をとっている。図中のステップＳ２１〜ステップＳ２４の手順は、それぞれ上記のステップＳ１１〜１４の手順と同様である。
【００２４】
図６は、図５に示した配置に対し、全体を統制する管理装置８を設置した場合の通信システムの構成例を示す図である。管理装置８は、サブネットワーク７ａ〜７ｃとは別の独立したサブネットワーク７ｄ内に設置され、サブネットワーク７ｄ経由でルータ６に接続することで中継装置３ａ〜３ｅと通信を行うことができる。
【００２５】
図７は、通信端末１ａ〜１ｃ，中継装置３ａ〜３ｅ，管理装置８，サブネットワーク７ａ〜７ｄのＩＰアドレスの一例を示す図である。たとえば、図７に示すように、各装置やサブネットワーク７ａ〜７ｄにそれぞれＩＰアドレスが割り当てられていることとする。中継装置３ａ〜３ｆは、それぞれ管理装置８に対し、自装置の識別子と自装置のＩＰアドレスと経路情報（自装置から転送可能な他中継装置の識別子）とを通知することとする。
【００２６】
管理装置８は、中継装置３ａ〜３ｆから、通知されたそれぞれその中継装置の識別子とＩＰアドレスとその装置から転送可能な他中継装置の識別子とに基づいて経路管理テーブルを構築する。図８は、管理装置８が構築する経路管理テーブルの一例を示す図である。図８に示すように、経路管理テーブルは、中継装置ごとに、通知された識別子とＩＰアドレスと転送可能な中継装置と、を格納したテーブルである。
【００２７】
また、管理装置８は、ルータ６との通信によって、ルータ６が管理する転送経路表を取得し、インタフェースごとのＩＰアドレスを含むネットワーク構成テーブルを構築する。図９は、ネットワーク構成テーブルの構成の一例を示す図である。このように、ネットワーク構成テーブルは、インタフェース（サブネットワークに対応）の識別子とＩＰアドレスが含まれ、ルータ６が把握しているネットワーク構成を示すことになる。
【００２８】
管理装置８は、図８に例示した経路管理テーブルと図９に例示したネットワーク構成テーブルとに基づいて、自身が管理する中継装置３ａ〜３ｆをサブネットワークごとに分類したテーブルである分類テーブルを構築する。図１０は、分類テーブルの一例を示す図である。管理装置８は、経路管理テーブルを参照して中継装置３ａ〜３ｆのＩＰアドレスを求め、求めたＩＰアドレスとネットワーク構成テーブルのＩＰアドレスを照合することにより、中継装置３ａ〜３ｆとサブネットワーク７ａ〜７ｄとの対応を求め、中継装置３ａ〜３ｆをサブネットワークごとに分類する。図１０に示すように、分類テーブルは、サブネットワークのＩＰアドレス（ネットワークアドレス）とそのサブネットワークに属する中継装置３ａ〜３ｆの識別子とを含むテーブルとなる。
【００２９】
図１１は、最適な転送経路を選択する場合の転送手順の一例を示す図である。図１１では、図５に示した構成と同様の構成を前提としている。まず、図４で説明した、ステップＳ１１，ステップＳ１２と同様の手順で転送が実施され、通信端末１ａから送信されたパケットが中継装置３ｆまでパケットが転送される（ステップＳ１１，ステップＳ１２）。ここで、中継装置３ｆは、図３，４に示したように転送されたパケットの宛先の通信端末１ｂに関するエントリを含む分散データベース５ｃを保持している。したがって、中継装置３ｆは、通信端末１ｂに接続する中継装置である宛先中継装置（この場合は中継装置３ｅ）を求めることができる。
【００３０】
パケットの宛先の通信端末１ｂの分散データベースを管理する中継装置３ｆは、送信元中継装置（この場合は中継装置３ａ）と宛先中継装置（この場合は中継装置３ｅ）と通知元中継装置（この場合は中継装置３ｆ）と宛先の通信端末１ｂとを管理装置８へ通知する（ステップＳ３１）。ここで、送信元中継装置は、パケットを送信した通信端末１ｂから直接パケットを受信した中継装置、すなわち、パケットの転送元の中継装置を示す。
【００３１】
管理装置８は、図１０に例示した分類テーブルに基づいて、中継装置３ｆから通知された送信元中継装置（中継装置３ａ）がサブネットワーク７ａのネットワークアドレスに対応することから送信元中継装置（中継装置３ａ）がサブネットワーク７ａに属し、同様に宛先中継装置（中継装置３ｅ）がサブネットワーク７ｂに属することを認識する。さらに管理装置８は、分類テーブルと経路管理テーブルに基づいて、認識したサブネットワーク７ａ，７ｂ内の中継装置で完結する、送信元中継装置から宛先中継装置までの転送経路を求める。ここでは、中継装置３ａが保持する中継装置３ｄへの転送経路と中継装置３ｄが保持する中継装置３ｅへの転送経路を組み合わせて３ａ→３ｄ→３ｅの順に転送すると、サブネットワーク７ａ，７ｂ内の中継装置で完結することができるため、この経路を求めることになり、求めた経路を通信端末１ｂ宛てのパケットの転送経路として送信元中継装置（中継装置３ａ）に通知する（ステップＳ３２）。
【００３２】
中継装置３ａは、ステップＳ３２で送信された通知を受信すると、その通知に含まれる転送経路を通信端末１ｂ宛てのパケットの転送経路として記憶し、以降の通信端末１ｂ宛てのパケットは中継装置３ｄ経由で中継装置３ｅ宛に転送する（ステップＳ３３）。中継装置３ｅから通信端末１ｂへの転送は図４のステップＳ１４と同様である（ステップＳ１４）。このようにして、通信端末１ａから通信端末１ｂへのパケット送信が完了する。
【００３３】
図１２は、管理装置８が中継装置間の転送経路を求める手順の一例を示すフローチャートである。上述のように、宛先の通信端末に関するエントリを含む分散データベースを保持した中継装置が、パケットを受信した場合に、その中継装置（図１１の例では中継装置３ｆ）は送信元中継装置と宛先中継装置と通知元中継装置とそのパケットの宛先の通信端末と管理装置８に通知する。このように、宛先の通信端末に関するエントリを含むデータベースを保持した中継装置から送信元中継装置と宛先中継装置と通知元中継装置と宛先の通信端末との通知を管理装置８が受信することにより、管理装置８では転送経路を求める処理が開始される。
【００３４】
まず、管理装置８は、経路管理テーブルに基づいて送信元中継装置から宛先中継装置へ直接転送可能な転送経路があるかを検索し、転送経路があるか否かを判断する（ステップＳ１）。直接転送可能な転送経路がないと判断した場合（ステップＳ１  Ｎｏ）には、ネットワーク構成テーブルと送信元中継装置および宛先中継装置のＩＰアドレスとに基づいて、両中継装置が属するサブネットワーク（サブネット）を求める（ステップＳ２）。
【００３５】
つぎに管理装置８は、経路管理テーブルに基づいて、送信元中継装置の属するサブネットワーク（以下、送信元サブネットワークという）から宛先中継装置の属するサブネットワーク（以下、宛先サブネットワーク）への経路を検索し、経路があるか否かを判断する（ステップＳ３）。すなわち、宛先サブネットワークに属し、かつ、送信元サブネットワークに属する中継装置から直接転送可能な中継装置があるか否かを転送する。たとえば、上記の図１１のように送信元中継装置が中継装置３ａであり宛先中継装置が中継装置３ｅの場合、送信元ネットワークに属する中継装置３ａは、宛先ネットワークに属する中継装置３ｄに直接転送が可能であるため、ステップＳ３で経路があることになる。
【００３６】
ステップＳ３で、送信元サブネットワークから宛先サブネットワークへの経路があると判断した場合（ステップＳ３  Ｙｅｓ）は、管理装置８はその検索した経路が送信元中継装置を始点とするものであるか否かを判断する（ステップＳ４）。たとえば、上記の図１１の場合は、その経路が送信元装置である中継装置３ａを始点とする経路であると判断することになる。
【００３７】
ステップＳ４で、その経路が送信元中継装置を始点とするものでないと判断した場合（ステップＳ４  Ｎｏ）は、経路管理テーブルとネットワーク構成テーブルに基づいて、ステップＳ３であると判断した経路の始点となる中継装置に対して、送信元中継装置から送信元サブネットワーク内で完結する転送経路（リンク）を検索し、転送経路があるか否かを判断する（ステップＳ５）。たとえば、送信元装置が中継装置３ｅであった場合には、図８に示すように、送信元サブネットワーク内の中継装置３ｄからの転送経路があるため、ステップＳ５では、転送経路があると判断することになる。
【００３８】
ステップＳ５で送信元中継装置から送信元サブネットワーク内で完結する転送経路があると判断した場合（ステップＳ５  Ｙｅｓ）には、経路管理テーブルとネットワーク構成テーブルに基づいて、ステップＳ３で経路あると判断したその経路の終点となる中継装置に対する、宛先中継装置までの宛先サブネットワーク内で完結する転送経路を検索し、転送経路があるか否かを判断する（ステップＳ６）。
【００３９】
ステップＳ６で、宛先中継装置までの宛先サブネットワーク内で完結する転送経路があると判断した場合（ステップＳ６  Ｙｅｓ）には、それまでの処理で得られた送信元中継装置から宛先中継装置までの転送経路を、最適転送経路としてパケットの宛先の通信端末の識別子とともに送信元中継装置へ通知し（ステップＳ７）、処理を終了する。
【００４０】
一方、ステップＳ１で、直接転送可能な転送経路があると判断した場合（ステップＳ１  Ｙｅｓ）は、ステップＳ７へ進みその転送経路を送信元中継装置へ通知し（ステップＳ７）、処理を終了する。また、ステップＳ３で、送信元サブネットワークから宛先サブネットワークへの経路がないと判断した場合（ステップＳ３  Ｎｏ）は、最適な転送経路はないため、そのまま処理を終了する。ステップＳ５で、送信元中継装置から送信元サブネットワーク内で完結する転送経路がないと判断した場合（ステップＳ５  Ｎｏ）にも、最適な転送経路はないため、そのまま処理を終了し、ステップＳ６で、宛先中継装置までの宛先サブネットワーク内で完結する転送経路がないと判断した場合（ステップＳ６  Ｎｏ）にも、最適な転送経路はないため、そのまま処理を終了する。
【００４１】
また、ステップＳ４で、ステップＳ３で検索した経路が送信元中継装置を始点とするものであると判断した場合（ステップＳ４  Ｙｅｓ）は、ステップＳ６へ進む。
【００４２】
以上の処理により、管理装置８は、ネットワークの構成を考慮した最適転送経路を求めることができ、その最適転送経路を送信元中継装置へ送信する。そして、送信元中継装置は、通知された転送経路に基づいて、次の中継装置へパケットを転送するが、その際に、最適転送経路をそのパケットに含めて通知するようにする。なお、最適転送経路は、パケットと別に通知するようにしてもよい。そして、順次、パケットを転送された中継装置は、最適転送経路に基づいて転送を行い、その際、最適転送経路も通知するようにする。
【００４３】
たとえば、図５の例では、通信端末１ａから送信された通信端末１ｂ宛てのパケットは、中継装置３ａ，中継装置３ｄ，中継装置３ｆ，中継装置３ｅを経由して送信されたが、上記のように管理装置８が最適な転送経路を求めた場合、このパケットは、中継装置３ａ，中継装置３ｄ，中継装置３ｅを経由して送信されることになる。これにより、管理装置８を用いない場合にくらべ、経由する中継装置やサブネットワークを低減することができる。なお、図１２を用いて説明した処理で、最適な転送経路はないとされた場合には、管理装置８を備えない場合と同様に、各中継装置がそれぞれ保持する経路情報にしたがって転送を行う通常の手順（たとえば図５で説明した手順）で転送が行われる。
【００４４】
また、中継装置３ａ〜３ｅが、管理装置８に対して定期的に生存確認パケットの送信を行うことし、管理装置８の生存確認ができなくなった場合に、各中継装置がそれぞれが保持する経路情報にしたがって転送を行う通常の手順によって転送を行うようにすると、管理装置８に障害が発生した場合に、ネットワーク機能の停止を回避することができる。
【００４５】
なお、本実施の形態では、ネットワーク構成テーブルを構築するための情報をルータ６から取得するようにしたが、これに限らず、あらかじめ管理装置８へ設定しておくなど、他の方法によりネットワーク構成テーブルを構築して保持するようにしてもよい。
【００４６】
また、本実施の形態では、管理装置８は、ルータ６からネットワーク構成としてサブネットワークのＩＰアドレスを取得し、送信元ネットワークと宛先ネットワーク内で簡潔する経路を最適な経路として選択するようにしたが、これに限らず、たとえば、転送効率を示す所定の指標値を定めておき、その指標値を求めるために必要な情報を収集しておき、収集した情報を用いて算出した指標値に基づいて転送経路を選択するようにしてもよい。
【００４７】
たとえば、図１１，１２で示した例では、指標値として経由するサブネットワークの数と、経由する中継装置の数と、の両方を指標値に相当していると考えることができる。図１２の処理手順に従って最適な転送経路を求めると、経由するサブネットワークの数が最小（送信元ネットワークと宛先ネットワークが異なる場合には最小値は２、送信元ネットワークと宛先ネットワークが同一の場合には最小値は１となる）であり、かつ、経由する中継装置の数が最小の転送経路が選択されることになる。これ以外にも、たとえば、サブネットワークに分かれていない場合などには、送信元中継装置から宛先中継装置までの経由する中継装置の数を指標値とし、指標値が最小となる転送経路を選択するなど、他の方法により最適な転送経路を求めるようにしてもよい。
【００４８】
このように、本実施の形態では、管理装置８を備え、各中継装置がその装置の識別子とＩＰアドレスとその装置から直接転送可能な中継装置との情報を管理装置８へ通知し、管理装置８がそれらの情報を経路管理テーブルとして保持し、また、管理装置８がルータ６からネットワーク構成の情報を取得し、ネットワーク構成テーブルとして保持する。また、通信端末とその通信端末に接続する中継装置との対応であるデータベースを各中継装置が分散データベースとして分散して保持する。
【００４９】
そして、パケットの宛先の通信端末に関する分散データベースを保持している中継装置が、そのパケットの送信元中継装置と宛先中継装置とを管理装置８へ通知し、管理装置８が、経路管理テーブルとネットワーク構成テーブルに基づいて、送信元ネットワークと宛先ネットワーク内で完結する送信元中継装置から宛先中継装置までの経路を最適な転送経路として求め、その転送経路を送信元中継装置に通知するようにした。そのため、オーバレイネットワークを用いる場合に、システム全体の効率を最適化した転送経路を設定することができる。
【産業上の利用可能性】
【００５０】
以上のように、本発明にかかる通信システムおよびパケット転送方法は、オーバレイネットワークを採用する通信システムに有用であり、特に、サブネットワークを含む通信システムに適している。
【符号の説明】
【００５１】
１ａ〜１ｃ  通信端末
２  網
３ａ〜３ｆ  中継装置
４  通信回線
５ａ〜５ｃ  分散データベース
６  ルータ
７ａ〜７ｄ  サブネットワーク
８  管理装置
【図１】
2011029781.tif 000003
【図２】
2011029781.tif 000004
【図３】
2011029781.tif 000005
【図４】
2011029781.tif 000006
【図５】
2011029781.tif 000007
【図６】
2011029781.tif 000008
【図７】
2011029781.tif 000009
【図８】
2011029781.tif 000010
【図９】
2011029781.tif 000011
【図１０】
2011029781.tif 000012
【図１１】
2011029781.tif 000013
【図１２】
2011029781.tif 000014