(57)【特許請求の範囲】
【請求項１】
グローバルネットワークのアドレスが割り当てられた中継装置を介して、相手先通信端末と通信を行う、ローカルネットワークに接続された通信端末であって、
複数の前記中継装置のアドレス宛にパケットを送信することにより、それぞれの前記中継装置が、前記通信端末へパケットを送信する際に、その中継装置が前記通信端末から受信した前記パケットの送信元アドレス宛に、その中継装置が送信を行う通信路を設定する中継通信設定部と、
通信データが分割された複数の分割データを、複数の前記中継装置を介して通信する通信部と、
前記各中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況を監視し、監視する前記各通信状況を評価した評価結果に基づいて、複数の前記分割データの通信が介する複数の前記中継装置を、現在の複数の中継装置から、当該現在の複数の中継装置とは少なくとも一部が異なる新しい複数の中継装置に変更させる通信状況監視部とを備える通信端末。
【請求項２】
前記中継通信設定部は、予め定められたＮ個の前記中継装置（Ｎ≧２）から複数の中継装置を選択し、前記選択した複数の中継装置を介した、当該通信端末と前記相手先通信端末との間の中継通信路をそれぞれ設定し、
前記通信状況監視部は、前記各通信状況の評価結果に基づいて、前記現在の複数の中継装置の各中継通信路からの中継通信路の削除、又は、当該各中継通信路に対する中継通信路の追加、又は、前記削除および追加の両方を、前記中継通信設定部に指示し、
前記中継通信設定部は、前記通信状況監視部により指示されると、当該指示により示される処理を行う請求項１記載の通信端末。
【請求項３】
前記通信部は、
前記通信データを前記複数の分割データへと分割して、分割された前記複数の分割データのそれぞれを、前記中継通信設定部によって選択された前記複数の中継装置のそれぞれを介して送信するデータ送信部と、
前記相手先通信端末によって通信データが分割された複数の分割データのそれぞれを、前記中継通信設定部によって選択された前記複数の中継装置のそれぞれを介して、前記相手先通信端末から受信して、受信された当該複数の分割データから、当該複数の分割データへと分割された前記通信データを組み立てるデータ受信部とを備え、
前記中継通信設定部は、前記通信状況監視部が新規中継通信路の追加を当該中継通信設定部に指示する場合、追加する新規中継通信路の中継装置のアドレス情報を含む接続要求メッセージを前記相手先通信端末に送信する請求項２記載の通信端末。
【請求項４】
前記通信状況監視部は、前記相手先通信端末への前記複数の中継通信路の伝送遅延をそれぞれ監視し、伝送遅延が予め定められた許容条件を満たさない中継通信路を検出して、当該検出がされた場合、検出がされた該当中継通信路の削除又は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定又は、前記削除および前記新規中継通信路の設定の両方を、前記中継通信設定部に指示する請求項２記載の通信端末。
【請求項５】
前記通信状況監視部は、前記相手先通信端末への前記複数の中継通信路でのパケットロスをそれぞれ監視し、パケットロスが予め定められた許容条件を満たさない中継通信路を検出して、当該検出がされた場合、検出がされた該当中継通信路の削除又は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定又は、前記削除および前記新規中継通信路の設定の両方を、前記中継通信設定部に指示する請求項２記載の通信端末。
【請求項６】
前記通信状況監視部は、前記通信データのトラヒック量に応じて、前記中継通信設定部が設定済みの前記中継通信路の削除、又は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定を前記中継通信設定部に指示する請求項２記載の通信端末。
【請求項７】
前記通信状況監視部は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定が前記中継通信設定部によってされた場合に、設定された当該新規中継通信路を評価するための予め定められた評価用のデータを、当該新規中継通信路に送信することにより、前記新規中継通信路の通信状況を評価し、その評価の結果が予め定められた条件を満たす場合に、当該通信端末の上位アプリケーションからの通信データの送信に前記新規中継通信路を前記通信部に利用させる請求項２記載の通信端末。
【請求項８】
前記通信状況監視部は、前記中継装置を介して前記通信部が前記相手先通信端末に送信する前記複数の分割データのうちの一部の分割データが、前記相手先通信端末に受信されなかったことを検出し、
前記通信部は、前記通信状況監視部によって当該検出がされた場合に、当該検出がされた前記一部の分割データの前記送信に前記通信部が利用した中継装置とは異なる、他の中継装置を介する中継通信路を用いて、当該一部の分割データを再度前記相手先通信端末に送信する請求項１記載の通信端末。
【請求項９】
前記通信部は、前記再度の送信をするに際して、前記相手先通信端末への当該中継装置を介した通信での伝送遅延が、他の予め定められた前記中継装置よりも小さい中継装置を選択し、選択される当該中継装置による中継通信路により前記再度の送信を行う請求項８記載の通信端末。
【請求項１０】
前記通信部は、
当該通信端末の上位アプリケーションの複数の通信データについて、それぞれ、その通信データと、当該通信データが分割された複数の分割データが通信される複数の中継通信路との対応関係を記憶し、
上位アプリケーションから通信完了が当該通信部に通知された場合、又は、前記相手先通信端末から通信終了が当該通信部に通知された場合、通知がされた通信データに前記対応関係が対応付ける前記複数の中継通信路を全て解放する請求項１記載の通信端末。
【請求項１１】
前記中継通信設定部は、Ｎ個の前記中継装置のカテゴリをそれぞれ示すカテゴリ情報を記憶し、前記Ｎ個の中継装置のうちから、記憶される前記カテゴリ情報により予め規定されたカテゴリが示される中継装置が少なくとも１つ含まれる複数の中継装置を選択し、
前記通信部は、前記カテゴリ情報により前記予め規定されたカテゴリが示されない前記中継装置を介して通信する分割データを暗号化して、暗号化された当該分割データを当該中継装置を介して送信し、暗号化された前記分割データを解読するために必要となる情報を、前記カテゴリ情報によって前記予め規定されたカテゴリが示される前記中継装置を介して送信する請求項２記載の通信端末。
【請求項１２】
前記通信部は、前記中継装置を介して送信する分割データを用いて、当該分割データの一部と当該冗長データとから、又は、当該冗長データのみから当該分割データが再現される冗長データを作成して、作成された前記冗長データを、当該分割データを送信した前記中継通信路と異なる他の前記中継通信路を介して前記相手先通信端末に送信する請求項１記載の通信端末。
【請求項１３】
前記中継通信設定部は、前記通信状況監視部が新規中継通信路の追加を当該中継通信設定部に指示する場合、当該新規中継通信路の中継装置以外の他の中継装置のうちで、中継通信路を設定済みの中継装置を介して、前記接続要求メッセージを前記相手先通信端末に送信する請求項２記載の通信端末。
【請求項１４】
当該通信端末が含まれるローカルネットワークのルータに対して、ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ）設定を実行するＮＡＴ設定部と、
２台以上の他の通信端末から接続され、当該各他の通信端末の間におけるデータの通信を中継する中継通信サーバ部とを備える請求項１記載の通信端末。
【請求項１５】
前記相手先通信端末は、予め定められたＮ個の前記中継装置（Ｎ≧２）から複数の中継装置を選択し、前記選択した複数の中継装置を介した、当該通信端末と前記相手先通信端末との間の中継通信路をそれぞれ設定する中継通信設定部を備え、
前記通信状況監視部は、前記各通信状況の評価結果に基づいて、前記現在の複数の中継通信路からの中継通信路の削除、又は、当該複数の中継通信路に対する中継通信路の追加、又は、前記削除および追加の両方を指示し、
前記相手先通信端末の前記中継通信設定部は、前記通信状況監視部により指示されると、当該指示により示される処理を行う請求項１記載の通信端末。
【請求項１６】
グローバルネットワークのアドレスが割り当てられた中継装置を介して、相手先通信端末との通信を、ローカルネットワークに接続された通信端末が行う方法であって、
複数の前記中継装置のアドレス宛にパケットを送信することにより、それぞれの前記中継装置が、前記通信端末へパケットを送信する際に、その中継装置が前記通信端末から受信した前記パケットの送信元アドレス宛に、その中継装置が送信を行う通信路を設定する中継通信設定ステップと、
通信データが分割された複数の分割データを、複数の前記中継装置を介して通信する通信ステップと、
前記各中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況を監視し、監視する前記各通信状況を評価した評価結果に基づいて、複数の前記分割データの通信が介する複数の前記中継装置を、現在の複数の中継装置から、当該現在の複数の中継装置とは少なくとも一部が異なる新しい複数の中継装置に変更させる通信状況監視ステップとを含む通信方法。
【請求項１７】
ローカルネットワークに接続された通信端末に、グローバルネットワークのアドレスが割り当てられた中継装置を介して、相手先通信端末と通信を行わせるためのコンピュータプログラムであって、
複数の前記中継装置のアドレス宛にパケットを送信することにより、それぞれの前記中継装置が、前記通信端末へパケットを送信する際に、その中継装置が前記通信端末から受信した前記パケットの送信元アドレス宛に、その中継装置が送信を行う通信路を設定する中継通信設定ステップと、
通信データが分割された複数の分割データを、複数の前記中継装置を介して通信する通信ステップと、
前記各中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況を監視し、監視する前記各通信状況を評価した評価結果に基づいて、複数の前記分割データの通信が介する複数の前記中継装置を、現在の複数の中継装置から、当該現在の複数の中継装置とは少なくとも一部が異なる新しい複数の中継装置に変更させる通信状況監視ステップとを、通信を行わせる前記通信端末に実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異なるルータ配下のローカルネットワークに接続された通信端末間を接続し、データ通信を可能とする通信端末および、ソフトウェアに関する。
【背景技術】
【０００２】
近年、ネットワークに接続された通信端末間を接続し、情報の共有や、映像、音声等を用いたコミュニケーションを行う、「ピアツーピア（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ＝Ｐ２Ｐ）」接続と呼ばれる接続方式が注目されている。
【０００３】
しかし、一般の家庭では、多くの場合、ルータのアドレス変換（ＮＡＴ：Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｏｒ）機能を利用して通信端末を接続している。
【０００４】
ここで、ＮＡＴ機能とは、ローカルネットワーク（ＬＡＮ）内のプライベートアドレスを、インターネット等のグローバルネットワーク内の通信で使用されるグローバルアドレスに変換する機能である。ＮＡＴ機能としては、プライベートアドレスとグローバルアドレスとを１対１の対応で変換する狭義のＮＡＴ機能が知られている。また、それに加えて、ＮＡＰＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｐｏｒｔ  Ｔｒａｎｓｌａｔｉｏｎ）機能と呼ばれる、プライベートアドレスとポート番号の組を、グローバルアドレスとポート番号の組に変換することで、１つのグローバルアドレスを使って、ルータ配下に接続された複数の通信端末で、その１つのグローバルアドレスを共用可能とする機能も知られている。本明細書では、狭義のＮＡＴ機能とＮＡＰＴ機能とをまとめて、ＮＡＴ機能と呼ぶことにする。
【０００５】
異なるルータに接続された通信端末間を接続可能するためには、通信端末が接続された両ルータのＮＡＴ機能が正しく設定されている必要がある。
【０００６】
ＮＡＴ機能を設定する方法としては、ローカルネットワークに接続された通信端末がグローバルネットワークのサーバ宛にパケットを送信した場合等に、ルータのＮＡＴ機能で自動的に設定される動的ＮＡＴ設定が知られている。動的ＮＡＴ設定は、ルータのＮＡＴ機能が自動で、変換後のグローバルアドレスとポート番号を割り当て、通信端末のローカルアドレスとポート番号の組と、変換後のグローバルアドレスとポート番号の組を含む変換ルールを自動的に設定する。
【０００７】
この動的ＮＡＴ設定により、ローカルネットワークに接続された通信端末からグローバルネットワーク上のＷｅｂサーバに接続する場合等には、ユーザが特別なＮＡＴ機能への設定を行う必要なしに通信が可能である。
【０００８】
このため、グローバルネットワーク上に中継サーバを設け、異なるルータに接続された通信端末が、それぞれ、動的ＮＡＴ設定を利用して中継サーバに接続し、その中継サーバを経由して、通信端末間を接続することで、ユーザが特別な設定を行うことなく、通信できることが知られている。
【０００９】
しかし、このような中継サーバを用いて接続する方法では、中継サーバにトラヒックが集中し、中継サーバの処理能力、処理帯域がボトルネックになる場合がある。このため、グローバルネットワークに、ルータを介さずに直接接続された通信端末や、グローバルネットワークから常に接続可能となるように、ルータのＮＡＴ機能の設定を実行している通信端末に中継機能を持たせ、中継サーバとして動作させることで、中継サーバ数を増やし、処理能力、処理帯域を分散させる方法が知られている。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】Traversal Using Relays around NAT (TURN): Relay Extensions to Session Traversal Utilities for NAT (STUN) draft-ietf-behave-turn-09
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、通信端末に中継機能を持たせ、中継サーバとして動作させる方法では、中継機能を提供する通信端末に、通信端末自身用の処理に加えて、中継用の処理を実行する能力が必要になる。この中継処理を行う場合、受信したデータを、別の端末に送信する必要があるため、送受信で２倍の帯域のデータを処理する必要が生じる。これらを処理可能とするためには、通信端末のコストが高くなるという問題がある。
【００１２】
加えて、通信端末とインターネットを接続しているアクセス回線は、ＡＤＳＬ：Asymmetric Digital Subscriber Line等の限られた帯域しか持たない回線が使用されることも多いと考えられる。このため、中継機能で中継される通信帯域が大きくなると、輻輳等が発生し、中継機能を提供した通信端末が接続しているローカルネットワーク全体に悪影響が発生するという問題がある。
【００１３】
本発明は、上記問題点を鑑み、中継サーバの中継処理により通信端末間を接続し通信可能とするとき、中継機能を提供する通信端末に大きな処理負荷をかけることなく、各中継機能で中継される通信帯域を低く抑えることが可能な通信端末および、通信方式の提供を目的とする。
【００１４】
また、通信端末（例えば、一般の家庭のユーザのコンピュータ）の間における通信データの通信が高速になり、かつ、その通信の品質を安定させることを目的とする。
【課題を解決するための手段】
【００１５】
上記課題を解決するため、本発明の通信端末は、グローバルネットワーク（例えば、図１のインターネット１）のアドレスが割り当てられた中継装置（図１の中継サーバ４ａ〜４Ｎ、図８の通信端末６ｐ、通信端末６ｑなど）を介して、相手先通信端末（通信端末６ｂ、通信端末６ｔなど）と通信を行う、ローカルネットワーク（ローカルネットワーク２ａ、２ｓ）に接続された通信端末（通信端末６ａ、６ｓ、６Ｌなど）であって、複数の前記中継装置のアドレス宛にパケットを送信することにより、それぞれの前記中継装置が、前記通信端末（通信端末６ａ等）へパケットを送信する際に、その中継装置が前記通信端末から受信した前記パケットの送信元アドレス宛に、その中継装置が（、その中継装置が送信する前記パケットの）送信を行う通信路を設定する中継通信設定部（中継通信設定部６２１）と、通信データが分割された複数の分割データを、複数の前記中継装置を介して通信する通信部（通信処理部６２４ａ、通信処理部６２４ａが有するデータ送信部６２４及びデータ受信部６２５のうちの一方、又は、通信処理部６２４ａが含まれる全体（通信部６２ｐ等））と、前記各中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況を監視し、監視する前記各通信状況を評価した評価結果に基づいて、複数の前記分割データの通信が介する複数の前記中継装置を、現在の複数の中継装置から、当該現在の複数の中継装置とは少なくとも一部が異なる新しい複数の中継装置に変更させる通信状況監視部（通信状況監視部６２２）とを備える通信端末である。
【００１６】
この構成により、通信データをより高速に通信できる。
【００１７】
なお、上記の通信部は、図９の通信処理部６２４ａに対応すると理解されてもよい。また上記の通信部は、通信処理部６２４ａを含んだ全体、具体的には、図２の通信部６２ｐなどに対応すると理解されてもよい。上記の中継通信設定部は、通信部（図２の通信部６２ｐ）の一部として本通信端末に設けられてもよい。上記の通信状況監視部は、例えば、監視する各通信状況を評価して、その評価の評価結果に基づいて、上記の変更を行わせてもよい。
【００１８】
また、通信部は、複数の分割データのうちの少なくとも一部の分割データを、２以上の中継装置をシーケンシャルに利用して、通信してもよい。また、通信部は、複数の分割データのうちの少なくとも一部を、その少なくとも一部に含まれる分割データの個数と同じ個数の中継装置をパラレルに利用して、互いに異なる分割データは互いに異なる中継装置を介して通信してもよい。
【００１９】
なお、通信部は、具体的には、例えば、監視される各通信状況の全体を評価した評価結果に基づいて、上記変更を行う。また、通信状況監視部は、具体的には、例えば、前記複数の分割データの通信が介する前記複数の中継装置（以下、使用中の複数の中継装置）を変更する制御を当該通信端末および前記相手先通信端末のうちの少なくとも一方に行う。なお、ここで、通信端末等に制御を行うとは、通信端末等の全体を制御することと、通信端末等に含まれる予め定められた部分のみを制御することとの両者が含まれる。ここで、通信端末は、「端末」であるので、例えば、一般の家庭のユーザのパーソナルコンピュータなどが含まれる。なお、通信部は、例えば、上記複数の中継装置を介して、上記複数の分割データを送信することにより、上記通信データを並列に相手先通信端末と通信してもよい。なお、上記分割データは、例えば、いわゆるパケットであってもよい。通信部は、例えば、通信データを複数のパケットへと分割する。
【００２０】
また、通信状況監視部は、具体的には、例えば、評価結果に基づいて、評価結果が予め定められた結果より良い結果であれば、上記変更を行わず、使用中の複数の中継装置を、現在の複数の中継装置に維持する。そして、例えば、具体的には、通信状況監視部は、評価結果が、予め定められた結果以下の結果であれば、上記変更をすることにより、変更前の結果よりも良い評価結果が得られるように、使用する複数の中継装置を変更する。これにより、通信状況が、予め定められた結果より良い結果になるように、通信データの通信の評価（品質）を維持できる。
【発明の効果】
【００２１】
本発明によれば、中継サーバの中継処理により通信端末間を接続し通信可能とするとき、中継機能を提供する機器に大きな処理負荷をかけることなく、かつ、各中継機能で中継される通信帯域を低く抑えることが可能な通信端末および、通信方式が実現できる。
【００２２】
また、通信端末と相手先通信端末との間における通信データの通信が高速になり、かつ、その通信の品質が安定するようにできる。
【図面の簡単な説明】
【００２３】
【図１】図１は、本実施の形態における通信端末を接続するネットワークの構成の一例を示す図である。
【図２】図２は、本実施の形態における通信端末の機能構成の一例を示したブロック図である。
【図３】図３は、本実施の形態における通信端末の接続手順の一例を示すシーケンス図である。
【図４】図４は、本実施の形態における通信端末の再送手順の一例を示すシーケンス図である。
【図５】図５は、本実施の形態における通信端末の中継通信路の入替手順の一例を示すシーケンス図である。
【図６】図６は、本実施の形態における通信端末の切断手順の一例を示すシーケンス図である。
【図７】図７は、本実施の形態における中継通信サーバ機能を持つ通信端末の機能構成の一例を示したブロック図である。
【図８】図８は、本実施の形態における中継通信サーバ機能を持つ通信端末を接続するネットワークの構成の一例を示す図である。
【図９】図９は、通信端末を示す図である。
【発明を実施するための形態】
【００２４】
本発明の実施の形態について図に基づいて説明する。
【００２５】
図１は、この実施形態における通信端末のネットワーク構成を示したブロック図である。
【００２６】
システムＸは、センターサーバ３と、ローカルネットワーク２ａと、ローカルネットワーク２ｂと、Ｎ台の中継サーバ（中継サーバ４ａ〜中継サーバ４Ｎ）とを備える。ここで、Ｎは、２以上の整数である。
【００２７】
ローカルネットワーク２ａは、ルータ５ａと、通信端末６ａとを含む。
【００２８】
ローカルネットワーク２ｂは、ルータ５ｂと、通信端末６ｂとを含む。
【００２９】
以下では、システムＸに含まれる１台の通信端末が開始させる、その通信端末と、その通信端末以外の他の通信端末との通信のうちで、通信端末６ａが開始させる、通信端末６ａと通信端末６ｂとの通信が、一例として詳しく説明される。以下では、説明の便宜上、通信端末６ａは、発呼側通信端末６ａと呼ばれる。通信端末６ｂは、着呼側通信端末６ｂと呼ばれる。
【００３０】
システムＸにおいては、センターサーバ３と中継サーバ４ａ〜４Ｎとルータ５ａ、５ｂが、グローバルネットワークであるインターネット１を介して互いに接続されている。また、ルータ５ａ、５ｂはＮＡＴ機能を有し、そのルータにより構成されるローカルネットワーク（ローカルネットワーク２ａおよびローカルネットワーク２ｂ）に、通信端末６ａ、６ｂがそれぞれ接続されている。
【００３１】
本実施の形態では、ルータ５ａ、５ｂに各々接続された通信端末６ａ、６ｂが、中継サーバ４ａ〜４Ｎにそれぞれ部分通信路を接続し、それら複数の中継サーバ経由で通信を行う。なお、発呼側通信端末６ａが中継サーバに接続する部分通信路は、発呼側部分通信路と呼ばれる。また、着呼側通信端末６ｂが中継サーバに接続する部分通信路は、着呼側部分通信路と呼ばれる。１つの中継サーバに発呼側通信端末６ａから接続された発呼側部分通信路と、着呼側通信端末６ｂから接続された着呼側部分通信路との両者により、その中継サーバを介した１つの中継通信路が構成される。発呼側部分通信路は、その発呼側部分通信路を含む中継通信路のうちで、発呼側通信端末６ａと中継サーバとの間の部分である。着呼側部分通信路は、その着呼側部分通信路を含む中継通信路のうちで、着呼側通信端末６ｂと中継サーバとの間の部分である。そして、発呼側通信端末６ａは、より具体的には、以下で詳しく説明される中継サーバ情報に基づいて特定されるｋ個の選択中継サーバ（２≦ｋ≦Ｎ）にそれぞれ、発呼側部分通信路を接続し、着呼側通信端末６ｂは、それらｋ個の選択中継サーバにそれぞれ着呼側部分通信路を接続する。そして、通信端末６ａ、６ｂは、それらｋ個の選択中継サーバによる中継通信路によって、互いの間の通信を行う。これにより、通信端末６ａ、６ｂは、例えば、１つの中継サーバのみにより通信を行う場合と比べて、例えば約ｋ倍高速である通信など、比較的高速な通信を行う。
【００３２】
ここで、センターサーバ３は、通信端末６ａ、６ｂと常に通信可能な状態で接続されており、各通信端末の間での接続、切断の制御メッセージの送受信を行うシグナリング機能を持つ。また、センターサーバ３は、各中継サーバ４ａ〜４Ｎのアドレス情報を含む中継サーバ情報を管理し、通信端末６ａ、６ｂに対して、中継サーバ情報を提供する中継サーバ情報管理機能を持つ。
【００３３】
ここで、アドレスとは、ＩＰアドレス又は、ＩＰアドレスとポート番号のセット等の、ネットワークにおいて通信先を特定する情報を意味するものとする。アドレス情報とは、アドレスを含む情報を意味するものとする。
【００３４】
なお、中継サーバ情報は、中継サーバ４ａ〜４Ｎ（図１）のうちから、一部又は全部の中継サーバを特定する。なお、中継サーバ情報は、具体的には、例えば、発呼側通信端末６ａが有する予め定められた対応関係の値を特定してもよい。ここで、この対応関係は、中継サーバ情報により特定される値と、２以上の中継サーバ情報とを対応付ける。そして、中継サーバ情報は、値を特定することにより、その値に、その対応関係が対応させる各選択中継サーバを特定する。通信端末は、例えば、その値に基づいて、その値に対応する各中継サーバを特定する機能を有する。
【００３５】
中継サーバ４ａ〜４Ｎのそれぞれは、通信端末６ａと通信端末６ｂとの間でデータを送受信するときに一時的に各通信端末６ａ、６ｂと接続し、通信端末間で送受信されるデータを中継する中継機能を提供する。
【００３６】
ルータ５ａは、ＮＡＴ機能を有するルータである。ルータ５ａは、ローカルネットワーク２ａとインターネット１を接続可能にする。通信端末６ａは、ローカルネットワーク２ａにおいてルータ５ａを介してセンターサーバ３および中継サーバ４ａ〜４Ｎと通信して、他の通信端末とデータの送受信をする。同様に、ルータ５ｂは、ＮＡＴ機能を有するルータである。ルータ５ｂは、ローカルネットワーク２ｂとインターネット１を接続可能にする。通信端末６ｂは、ローカルネットワーク２ｂにおいてルータ５ｂを介してセンターサーバ３および中継サーバ４ａ〜４Ｎと通信して、他の通信端末とデータの送受信をする。
【００３７】
なお、上述のように、ルータ５ａ、５ｂのそれぞれは、ＮＡＴ機能を有する。これにより、通信端末６ａ、６ｂのそれぞれは、その通信端末が含まれるローカルネットワーク（ローカルネットワーク２ａ又はローカルネットワーク２ｂ）における動的ＮＡＴ設定機能を用いて、その通信端末から、そのローカルネットワークの外部にある外部装置（センターサーバ３、中継サーバ４ａ〜中継サーバ４Ｎ）へと通信路を接続できる。他方で、外部装置は、その外部装置から、各ローカルネットワークに含まれる通信端末（通信端末６ａ、通信端末６ｂ）へと通信路を接続できない。
【００３８】
図２は、通信端末６の基本的な構成の一例を示している。
【００３９】
システムＸに含まれる各通信端末（通信端末６ａ、通信端末６ｂ等）は、互いに共通する共通機能を有する。通信端末６は、システムＸに含まれる各通信端末（通信端末６ａ、通信端末６ｂ等）のうちの一例である。通信端末６は、例えば、通信端末６ａである。そして、図２において、通信端末６は、上位アプリケーション機能部６１、中継クライアント部（中継通信クライアント部）６２、通信Ｉ／Ｆ部６３を備える。
【００４０】
なお、通信端末６は、例えば、ＣＰＵ、ＲＡＭ、ＲＯＭなどを備えるコンピュータであってもよい。そして、中継クライアント部６２等のそれぞれは、このコンピュータにより、プログラムが実行されることにより実現される機能の機能ブロックであってもよい。
【００４１】
上位アプリケーション機能部６１は、通信端末６のアプリケーション機能を提供し、中継クライアント部６２、通信Ｉ／Ｆ部６３を通じて、通信端末６が通信する相手の通信端末たる相手通信端末と通信データの送受信を行い、送受信データを利用しながら、ユーザに対するＩ／Ｆを提供する。
【００４２】
発呼側通信端末６ａが有する中継クライアント部６２は、中継サーバ情報（先述）によって特定される複数の中継サーバ（選択中継サーバ）を用いて、相手通信端末（着呼側通信端末６ｂ）との間に、中継通信路を設定し、それらの複数の中継通信路を用いて、中継通信を実現する。そして、より具体的には、中継クライアント部６２は、それら各選択中継サーバと発呼側通信端末６ａとの間の部分通信路（先述）をそれぞれ設定する。つまり、中継クライアント部６２は、それら各選択中継サーバに対して、発呼側部分通信路（先述）をそれぞれ接続する。また、中継クライアント部６２は、着呼側通信端末６ｂに対して、着呼側通信端末６ｂがそれら各選択中継サーバに対して着呼側部分通信路を各々接続するよう、後で詳しく説明される接続要求（図３のステップＳ３３）を行う。なお、後で詳しく説明されるよう、この接続要求は、センターサーバ３を介して行われる。発呼側通信端末６ａの中継クライアント部６２は、こうしてｋ個の中継通信路をそれぞれ設定する。
【００４３】
通信Ｉ／Ｆ部６３は、通信端末６をネットワークに接続するためのインタフェース機能を提供する。中継クライアント部６２は、通信Ｉ／Ｆ部６３を通じて、ネットワークに接続される。
【００４４】
また、中継クライアント部６２は、より詳細には、中継通信設定部６２１、通信状況監視部６２２、中継通信路情報記憶部６２３、データ送信部６２４、データ受信部６２５を備える。
【００４５】
中継通信設定部６２１は、センターサーバ３から中継サーバ情報を取得し、取得した中継サーバ情報を用いて、中継通信を行うための各中継通信路を、それぞれ、複数の中継サーバと発呼側通信端末６ａとの間に設定する。
【００４６】
また、中継通信設定部６２１は、後で詳しく説明される通信状況監視部６２２から指示を取得する。具体的には、第１に、中継通信設定部６２１は、中継通信設定部６２１が過去に設定した既存の既存中継通信路を削除することを指示する削除指示を取得する。また、第２に、中継通信設定部６２１は、新規中継通信路の設定を指示する新規設定指示を取得する。また、第３に、中継通信設定部６２１は、既存の既存中継通信路の削除と代替の新規中継通信路の設定の両方を指示する両方指示を取得する。そして、中継通信設定部６２１は、削除指示が取得されれば、取得された削除指示によって指定される中継通信路を削除する。また、中継通信設定部６２１は、新規設定指示を取得すれば、取得される新規設定指示によって指定される中継サーバによる新規中継通信路を新たに設定する。また、中継通信設定部６２１は、両方指示を取得すれば、両方指示によって指定された削除中継通信路を削除すると共に、同じく両方指示によって指定された新規中継通信路を新たに設定する。
【００４７】
通信状況監視部６２２は、中継サーバを介した、相手通信端末６ｂと発呼側通信端末６ａとの間の中継通信路の通信状況（通信帯域、伝送遅延、パケットロス率等）を監視、評価し、評価結果に基づき、中継通信路の削除、又は新規中継通信路の設定、又は既存中継通信路の削除と代替の新規中継通信路設定の両方を、中継通信設定部６２１に指示する。すなわち、通信状況監視部６２２は、上記評価結果に基づいて、先述した削除指示、新規設定指示、両方指示を、中継通信設定部６２１に対して送信し、送信する各指示を中継通信設定部６２１に取得させる。通信状況監視部６２２は、これにより、それぞれ、その指示に対応する上記の処理を中継通信設定部６２１に行わせる。なお、このような、通信状況監視部６２２による各指示については、後で、より詳しく説明される。
【００４８】
中継通信路情報記憶部６２３は、センターサーバ３から中継通信設定部６２１が取得した中継サーバ情報と、中継通信設定部６２１が設定した、中継サーバを介した複数の中継通信路のそれぞれの中継通信路情報を各々記憶し、管理する。ここで、後者の情報すなわち中継通信路情報は、中継通信路を一意に識別するためのＩＤと、その中継通信路の中継をする中継サーバのアドレス情報（ＩＰアドレス、ポート番号）を含む情報である。
【００４９】
データ送信部６２４は、上位アプリケーション機能部６１からの送信データを、所定のサイズのパケットに分割し、中継通信設定部６２１が設定した複数の中継通信路を用いて前記パケットを送信する。より具体的には、データ送信部６２４は、例えば、各パケットを、ｋ個の中継通信路にそれぞれ対応する複数のパケット群へと振り分け、各パケット群のパケットを、それぞれ、そのパケットが振り分けられたパケット群に対応する中継通信路によって送信する。これにより、データ送信部６２４は、各パケット群のパケットを、それら複数の中継通信路を介して、例えば並列に送信する。これにより、データ送信部６２４は、送信データの各パケットを、例えば、１つの中継通信路のみで通信をする場合と比べて、例えば約ｋ倍など（ｋは、中継通信路の個数）、比較的高速に通信する。
【００５０】
なお、請求の範囲の記載における「分割データ」は、この実施の形態において、例えば「パケット」である。
【００５１】
なお、このとき、データ送信部６２４は、相手先通信端末６ｂが、それら複数の中継通信路から受信したパケットを正しい順番で処理し、元のデータを復元できるようにするために、必要に応じて、各パケットに、それぞれ、順序を示す番号たる順序番号を設定する。
【００５２】
データ受信部６２５は、複数の中継通信路を介して受信した前記各パケットを、それぞれ、そのパケットに含まれる順序番号等を利用して組み立て、送信元の上位アプリケーション機能部が送信した送信データを再現し、自身の上位アプリケーション機能部に引き渡す。
【００５３】
以上のように構成された通信端末について、以下、図３から図６を用いてその動作をより詳しく説明する。
【００５４】
（接続シーケンス）
図３は、通信端末間の接続シーケンスの一例を示す図である。
【００５５】
Ｓ３１で、まず、発呼側通信端末６ａは、センターサーバ３から最新の中継サーバ情報を中継通信設定部６２１により取得する。
【００５６】
なお、ここで、通信端末６ａ、６ｂは、その通信端末の起動直後に、センターサーバ３との間に予め通信路を接続し、センターサーバ３からの中継サーバ情報を常に受信可能となっている。なお、ここで、前述したように、ローカルネットワークに接続された通信端末６ａ、６ｂから、インターネット１に接続されたセンターサーバ３に通信路を接続すれば、ルータの動的ＮＡＴ設定により、特別な設定は必要なく、通信路をその通信端末は設定することが可能である。
【００５７】
なお、このＳ３１のとき、センターサーバ３は、各中継サーバ４ａ〜４Ｎの現状の負荷状況を考慮して、通信端末６ａに引き渡す中継サーバ情報を選択することで、各中継サーバの負荷の平滑化を図ることが可能になる。
【００５８】
Ｓ３２では、発呼側通信端末６ａの中継クライアント部６２が、センターサーバ３から取得した中継サーバ情報を用いて、中継通信に用いる中継サーバ（選択中継サーバ）を選択し、中継依頼を、選択した各選択中継サーバ（中継サーバ４ａ〜４ｃ：選択中継サーバ）にそれぞれ送信する。ここで、中継サーバのアドレス情報は、中継サーバ情報から入手する。なお、中継サーバ情報は、その中継サーバ情報が特定する各中継サーバのアドレス情報を含む。
【００５９】
そして、このＳ３２のとき、中継依頼を受信した各選択中継サーバ（中継サーバ４ａ〜４ｃ）は、それぞれ、中継通信のための設定を、その選択中継サーバに行い、その選択中継サーバを介した中継通信路を一意に識別するためのＩＤと、その中継通信に利用する選択中継サーバのアドレス情報（ＩＰアドレス、ポート番号）を含む中継通信路情報を応答する。
【００６０】
なお、中継サーバ４ａ〜中継サーバ４Ｎうちの少なくとも１つは、より詳細には、制御装置と、データ通信装置との２つの装置を備えてもよい。そして、データ通信装置は、その中継サーバの中継通信路を介して通信されるデータ（ユーザデータ）の通信を中継してもよい。他方、制御装置は、データ通信装置によるユーザデータの通信を制御してもよい。そして、中継サーバ情報（先述）に含まれるアドレス情報は、上記制御装置のアドレスを特定してもよい。そして、Ｓ３２で、中継クライアント部６２は、選択中継サーバの制御装置に中継依頼（上述）を受信させてもよい。そして、Ｓ３２のときに、制御装置は、中継依頼を受信すると、その制御装置と共に中継サーバを構成するデータ通信装置を特定するアドレス情報を含んだ中継通信路情報を、通信端末６ａに対して応答してもよい。なお、中継通信路情報は、データ通信装置のアドレス情報と共に、そのデータ通信装置と共に中継サーバを構成する制御装置のアドレス情報を含んでもよい。
【００６１】
そして、このＳ３２のときに、複数の選択中継サーバからそれぞれ中継通信路情報（上述）を受信した中継クライアント部６２は、受信した各中継通信路情報をそれぞれ中継通信路情報記憶部６２３に記憶し、応答された各中継通信路情報のアドレス情報により、それぞれ、例えば、そのアドレス情報の示すデータ通信装置（先述）にアクセスするなどして、中継通信路（中継通信路の発呼側部分通信路（先述））を接続する。なお、本通信路接続は、ローカルネットワーク２ａに接続された通信端末６ａから中継サーバへの接続となるため、ルータの動的ＮＡＴ設定により、特別な設定は必要なく通信路を通信端末６ａは設定することが可能である。
【００６２】
Ｓ３３で、次に、中継クライアント部６２は、センターサーバ３に対して、相手先通信端末（着呼側通信端末６ｂ）にセンターサーバ３が接続要求送信を行うように依頼する。本接続要求送信による接続要求には、先にＳ３２で発呼側通信端末６ａが設定した複数の中継通信路の中継通信路情報をそれぞれ含む。本接続要求は、例えば、各選択中継サーバのアドレス情報と、そのアドレス情報による中継通信路のＩＤとを含む。より具体的には、例えば、本接続要求は、各選択中継サーバのデータ通信装置のアドレス情報と、制御装置のアドレス情報とを含んでもよい。ただし、本接続要求は、データ通信装置のアドレス情報を含まなくてもよい。
【００６３】
Ｓ３４では、センターサーバ３から接続要求を受信した着呼側の着呼側通信端末６ｂは、受信された接続要求から中継通信路情報を取り出し、発呼側通信端末６ａが中継通信路（中継通信路の発呼側部分通信路）を接続している各選択中継サーバ（中継サーバ４ａ〜４ｃ、各中継サーバの制御装置）に、それぞれ、中継通信路を一意に識別するためのＩＤを含む中継依頼メッセージを送信する。ここで、送信されるＩＤは、取り出された中継通信路情報に含まれるＩＤである。このＩＤは、そのＩＤの中継通信路を中継する中継サーバが中継する各中継通信路のうちから、そのＩＤの中継通信路を一意に識別する。
【００６４】
要求を受信した各中継サーバ（中継サーバの制御装置）は、それぞれ、先にＳ３４で送信された中継依頼メッセージに含まれたＩＤにより、中継通信路を識別し、中継通信に利用する中継サーバ（中継サーバのデータ通信装置）のアドレス情報（ＩＰアドレス、ポート番号）を、着呼側通信端末６ｂに応答する。
【００６５】
そして、Ｓ３４では、次に、各選択中継サーバからの応答を各々受信した着呼側の着呼側通信端末６ｂの中継クライアント部６２は、受信した各応答に含まれる中継通信路情報をそれぞれ記憶し、応答された各中継通信路情報のアドレス情報により示される中継サーバ（中継サーバのデータ通信装置）に、着呼側部分通信路（先述）を接続する。
【００６６】
そして、Ｓ３４で、着呼側通信端末６ｂは、全ての中継サーバとの通信路（着呼側部分通信路）の接続が完了後、接続応答メッセージをセンターサーバ３を通じて、発呼側通信端末６ａに送信する。
【００６７】
ここで、発呼側通信端末６ａの発呼側部分通信路と同様に、着呼側通信端末６ｂの着呼側部分通信路は、ルータ５ｂの動的ＮＡＴ設定により、特別な設定を必要なく、着呼側通信端末６ｂが各選択中継サーバに対して接続することができる。
【００６８】
（パケットロス時の再送シーケンス）
図４は、パケットロスが発生した場合の再送シーケンスの一例を示している。
【００６９】
Ｓ４１において、発呼側通信端末６ａの中継クライアント部６２は、上位アプリケーション機能部６１から送信を依頼された送信データを分割したパケットデータを、複数の中継通信路を用いて送信する。図４の例では、送信に用いられる中継通信路は、中継サーバａの中継通信路と、中継サーバｂの中継通信路と、中継サーバｃの中継通信路とである。
【００７０】
そして、このＳ４１の処理に応じて、パケットデータを受信した通信相手の通信端末（着呼側通信端末６ｂ）の中継クライアント部６２は、データを受信した中継通信路（例えば、中継サーバａの中継通信路）を用いて、受信確認メッセージをデータ送信元の通信端末（発呼側通信端末６ａ）に送信する。図４では、中継サーバａの中継通信路による受信確認メッセージの送信が図示される。
【００７１】
Ｓ４２では、データ送信元（発呼側通信端末６ａ）の中継クライアント部６２は、通信状況監視部６２２によって、Ｓ４１でのパケット送信から、Ｓ４１でのパケット送信に応じた受信確認メッセージが応答されてくるまでの時間を計測し、各中継通信路の伝送遅延の情報を取得する。
【００７２】
また、このＳ４２で、中継クライアント部６２は、パケット送信から所定の時間（所定時間Ｔ１：図４）経過しても、そのパケットの送信に応じた受信確認メッセージを受信しないことで、パケットロスＰＬ（図４参照）を検出する。図４では、パケットロスＰＬの一例として、中継サーバｂの中継通信路でのパケット送信におけるパケットロスが図示される。
【００７３】
Ｓ４２ａでは、Ｓ４２でパケットロスを検出した、パケット送信元（発呼側通信端末６ａ）の中継クライアント部６２は、パケットロス率が低く、伝送遅延の小さい中継通信路を選択する。
【００７４】
なお、中継クライアント部６２は、より具体的には、例えば、発呼側通信端末６ａが設定した各中継通信路（例えば、中継サーバａの中継通信路、中継サーバｂの中継通信路、中継サーバｃの中継通信路）のうちで、パケットロスが発生した中継通信路（中継サーバｂの中継通信路）を除いた他の各中継通信路（中継サーバａの中継通信路、中継サーバｃの中継通信路）のうちから、中継通信路を選択する。そして、例えば、中継クライアント部６２は、それら他の各中継通信路のうちで、パケットロス率が最も低い中継通信路（中継サーバａの中継通信路）を選択する。
【００７５】
また、例えば、発呼側通信端末６ａは、品質が、予め定められた閾値よりも高い中継通信路を選択する。ここで、上記品質は、具体的には、例えば、上記パケットロス率であってもよいし、また、伝送遅延であってもよい。パケットトス率は値が小さいほど品質が高い。伝送遅延は遅延時間が短いほど品質が高い。また、ここで、上記閾値は、例えば、上記他の各中継通信路のうちの予め定められた中継通信路の品質であってもよい。そして、例えば、予め定められた中継通信路は、上記他の各中継通信路のうちで、品質が、最も高い値の次に高い値、すなわち２番目に高い値である中継通信路である。この場合、中継クライアント部６２は、上記他の各中継通信路のうちで、上記品質が最も高い値の中継通信路を選択する。
【００７６】
そして、Ｓ４３で、発呼側通信端末６ａの中継クライアント部６２は、ロスしたパケットを再度送信する。
【００７７】
ここで、パケットロスが少ない中継通信路を中継クライアント部６２がＳ４２で選択することで、再度パケットがロスする確率を小さくすることができる。また、伝送遅延が小さい中継通信路を選択することで、ロスしたパケットを早く相手先に送信することが可能となり、再送に要する時間を短くすることが可能となる。
【００７８】
なお、Ｓ４１で、発呼側通信端末６ａによって送信がされた後に、この送信の結果のパケットロスに応じて、Ｓ４３で、Ｓ４２ａで選択された中継サーバによる送信がされる。このようにして、送信が行われる中継サーバが、１回目の送信の中継サーバ（中継サーバｂ）から、２回目の送信の中継サーバ（中継サーバａ）に変更される。図４において、破線の矢印線は、単なる、この中継サーバの変更を示すだけの図示物であり、システムＸにおけるデータの流れなどを示す図示物ではない。
【００７９】
（中継通信路の入替シーケンス）
図５は、中継通信路の入替シーケンスの一例である。
【００８０】
中継サーバを介した複数の中継通信路を用いてデータを送信する処理（Ｓ５１）は、Ｓ４１（図４）の処理と同一であるので詳しい説明は省略する。ここでの相違点は、図５の例では、パケットロスは発生せず、パケットロスが発生しない代わりに、中継サーバｂを介した中継通信路での伝送遅延が、他の各中継通信路での伝送遅延に比べて非常に大きくなっている点である。なお、ここで、非常に大きい伝送遅延というのは、通常の伝送遅延と比べて非常に大きい伝送遅延の意味と、通常の伝送遅延よりも小さい伝送遅延と比べれば非常に大きい伝送遅延の意味との両方の意味が含まれる。
【００８１】
パケット送信元（発呼側通信端末６ａ）の中継クライアント部６２は、各中継通信路の伝送遅延の情報を常に取得して、評価しており、前記中継サーバｂを介した中継通信路の伝送遅延の平均や揺らぎ等の統計情報や、最大伝送遅延等の値（評価対象の値）が、所定の基準を満たさないことを検出する。
【００８２】
Ｓ５２においては、この検出の結果、パケット送信元（発呼側通信端末６ａ）の中継クライアント部６２は、前記中継サーバｂを介した中継通信路を不適と判定する。なお、この説明において、中継サーバｂは、中継クライアント部６２が不適と判定した中継サーバの一例である。
【００８３】
次に、Ｓ５３においては、パケット送信元（発呼側通信端末６ａ）の中継クライアント部６２は、以下の、中継通信路の入替処理を実行する。すなわち、発呼側通信端末６ａの中継クライアント部６２は、予めセンターサーバ３から取得済みの中継サーバ情報を用いて、新規の中継サーバ（中継サーバｄ）を選出する。そして、中継クライアント部６２は、選出した新規中継サーバに対して、中継依頼メッセージを送信する。
【００８４】
なお、Ｓ５２において、中継クライアント部６２は、例えば、中継通信路の不適の判定をした場合に、中継サーバを特定する中継サーバ情報をセンターサーバ３から取得してもよい。そして、Ｓ５３では、中継クライアント部６２は、Ｓ５２で取得された中継サーバ情報により特定される中継サーバを選出してもよい。また、図３のＳ３１で取得される中継サーバ情報は、図５のＳ５３で選出すべき新規の中継サーバを特定する新規中継サーバ情報を含んでもよい。そして、図５のＳ５３では、中継クライアント部６２は、Ｓ３１で取得された中継サーバ情報に含まれる新規中継サーバ情報により特定される中継サーバを選出してもよい。
【００８５】
なお、図５の例では、Ｓ５２で取得されるなどした中継サーバ情報が、新規の中継サーバのアドレス情報として、中継サーバｄのアドレス情報を含み、Ｓ５３では、中継サーバｄが選出される。このため、図５の例では、Ｓ５３で、中継サーバｄに中継依頼メッセージが送信されて、利用される中継サーバが、中継サーバｂから中継サーバｄに入れ替えられる。図５では、この入れ替えが、破線の矢印線によって図示される。なお、図５の破線の矢印線は、単なるこの入れ替えを示すだけの図示物であり、システムＸにおけるデータの流れなどを示す図示物ではない。
【００８６】
そして、Ｓ５３のときに、中継依頼メッセージを受信した中継サーバｄ（新規の中継サーバ）は、中継サーバｄの中継通信路情報を含む応答メッセージを、発呼側通信端末６ａの中継クライアント部６２に送信する。
【００８７】
そして、このＳ５３では、中継サーバｄから中継通信路情報を受信した中継クライアント部６２は、受信した中継通信路情報を、例えば中継通信路情報記憶部６２３などにより記憶し、応答された中継通信路情報のアドレスに中継通信路を接続する。
【００８８】
そして、Ｓ５３では、先にＳ５２で不適と判断した中継通信路（中継サーバｂの中継通信路）の中継通信路情報と、新規に接続した中継通信路（中継サーバｄの中継通信路）の中継通信路情報を含む中継サーバ入替要求メッセージを、不適と判断した中継通信路以外の他の中継通信路（例えば中継サーバａの中継通信路）を通じて、相手先通信端末６ｂに、中継クライアント部６２が送信する。すなわち、Ｓ５３で、発呼側通信端末６ａの中継クライアント部６２は、設定した各中継通信路（例えば、中継サーバａの中継通信路、中継サーバｂの中継通信路、中継サーバｃの中継通信路）のうちで、不適と判定された中継通信路（中継サーバｂの中継通信路）以外の他の各通信路（中継サーバａの中継通信路、中継サーバｃの中継通信路）のうちの１つの中継通信路（中継サーバａの中継通信路）により、中継サーバ入替要求メッセージを着呼側通信端末６ｂに送信する。
【００８９】
そして、このＳ５３のときに、中継サーバ入替要求メッセージを、上記１つの中継通信路（中継サーバａの中継通信路）を介して受信した通信端末６ｂの中継クライアント部６２は、新規接続する中継通信路（中継サーバｄの中継通信路）の中継通信路情報を用いて、中継サーバｄ（中継サーバｄの制御装置）に中継依頼を送信する。そして、着呼側通信端末６ｂの中継クライアント部６２は、中継サーバｄから応答で受信する中継通信路情報を用いて、中継通信路（中継通信路のうちの着呼側部分通信路）を新規の中継サーバ（中継サーバｄ）と接続した後、中継サーバ入替応答メッセージを、送信元通信端末６ａに送信する。このとき、着呼側通信端末６ｂの中継クライアント部６２は、例えば図５に示されるよう、上記１つの中継通信路（中継サーバａの中継通信路）により、この中継サーバ入替応答メッセージを送信する。なお、例えば、この送信は、上記１つの中継通信路よりも品質が高い他の通信路により行われてもよい。
【００９０】
同時に、Ｓ５３のときに、不適と判断された中継通信路を提供する中継サーバｂに、中継解放メッセージを、着呼側通信端末６ｂは送信し、この中継通信路（中継通信路の着呼側部分通信路）を解放する。
【００９１】
また、Ｓ５３で、中継サーバ入替応答メッセージを受信した通信端末６ａの中継クライアント部６２も同様に、不適と判定された中継サーバｂに中継解放メッセージを送信し、中継通信路（中継通信路の発呼側部分通信路）を解放する。
【００９２】
（切断シーケンス）
図６は、切断シーケンスの一例である。
【００９３】
Ｓ６１で、発呼側通信端末６ａの中継クライアント部６２は、上位アプリケーション機能部６１から切断が指示されると、センターサーバ３を通じて切断要求メッセージを相手先通信端末６ｂに送信する。
【００９４】
Ｓ６２で、切断要求メッセージを受信した着呼側通信端末６ｂの中継クライアント部６２は、接続中の全ての中継通信路の中継サーバに対して、それぞれ、中継解放メッセージを送信し、各中継通信路を各々解放し、切断応答メッセージを送信元通信端末６ａに送信する。
【００９５】
Ｓ６３では、切断応答メッセージを受信した通信端末６ａの中継クライアント部６２は、同様に、発呼側通信端末６ａが接続中の全ての中継通信路の中継サーバに対して、中継解放メッセージをそれぞれ送信し、各中継通信路を各々解放し、通信端末間の通信を終了する。
【００９６】
（通信端末に中継サーバ機能を持たせる構成）
ここまででは、図１のように、インターネット１に中継専用の中継サーバ４ａ〜４Ｎがある場合について説明したが、以下、図７、図８を用いて、通信端末に中継サーバ機能を持たせる構成について説明する。
【００９７】
図７は、中継サーバ機能を持たせた通信端末６Ｌの基本的な構成の一例を示している。
【００９８】
図７において、図２と同様の機能部については、同一の符号を記述し、説明を省略する。
【００９９】
通信端末６Ｌは、中継通信サーバ機能部（中継通信サーバ機能）６４を備える。
【０１００】
中継通信サーバ機能部６４は、図１における中継サーバ４ａ〜４Ｎと同等の機能を提供する機能部である。すなわち、図１〜図６の説明においては、中継サーバ４ａ〜４Ｎのうちの何れにも設けられた共通機能について説明された。中継通信サーバ機能部６４は、その共通機能と同等の機能を有する。例えば、中継通信サーバ機能部６４は、その共通機能と同一の機能を有する。中継サーバ４ａ〜４Ｎと、中継通信サーバ機能部６４との相違点は、通信端末６Ｌは、中継サーバ４ａ〜４Ｎと違い、ルータ配下のローカルネットワークに接続される場合があるため、ルータのＮＡＴ機能を設定し、インターネットから通信端末６Ｌ（図７）に接続できるようにするための機能（ＮＡＴ設定部６４１）を持つ点である。
【０１０１】
中継通信サーバ機能部６４は、以下の機能部で構成される。すなわち、中継通信サーバ機能部６４は、ＮＡＴ設定部６４１と、中継通信サーバ部６４２とを備える。
【０１０２】
ＮＡＴ設定部６４１は、ルータのＮＡＴ機能を設定し、インターネットから中継通信サーバ部６４２への接続（すなわち、通信端末６Ｌへの接続および中継通信サーバ機能部６４への接続）をできるようにする。ここで、ＮＡＴ設定部６４１は、ルータが提供するＵＰｎＰ(Universal Plug and Play)のＩＧＤ（Internet Gateway Device）仕様やＮＡＴ設定用のＣＧＩ（Common Gateway Interface）等を用いて、特定のコマンドをルータに送信することで、ＮＡＴ設定を行うことが可能である。
【０１０３】
中継通信サーバ部６４２は、前述した中継サーバ４ａ〜４Ｎと同等の機能（例えば、同一の機能）を提供し、ＮＡＴ設定部６４１によって設定されたＮＡＴ設定によって、通信端末６Ｌがルータ配下のローカルネットワークに接続されていても、インターネット側から中継通信サーバ部６４２へアクセスすることが可能となる。そして、中継通信サーバ部６４２は、インターネット側から中継通信サーバ部６４２にアクセスするためのアドレス情報（ＩＰアドレス、ポート番号）を、センターサーバ３に、中継サーバ情報の一部として登録する。インターネット側からアクセスするアクセス装置は、登録されたアドレス情報が含まれる中継サーバ情報を取得して、取得された中継サーバ情報に含まれるアドレス情報によって、中継通信サーバ部６４２にアクセスする。
【０１０４】
図８は、以上のように構成された通信端末６Ｌを用いたネットワーク構成の一例を示す。
【０１０５】
システムＸＬは、センターサーバ３と、ローカルネットワーク２ｐ〜ローカルネットワーク２ｔとを備える。これらセンターサーバ３等は、インターネット１を介して互いに接続される。
【０１０６】
通信端末６ｐ〜通信端末６ｔのうちの少なくとも１つは、先述した通信端末６Ｌ（図７）である。例えば、通信端末６Ｌは、図７の通信端末６ｐである。なお、通信端末６Ｌが通信端末６ｐである場合において、通信端末６Ｌ以外の他の通信端末のうちの少なくとも１つは、例えば中継通信サーバ機能部６４を有さないなどして、通信端末６Ｌの機能とは少なくとも一部が異なる機能を有してもよい。
【０１０７】
中継通信サーバ機能部６４（図７）を持つ通信端末６Ｌは、ルータ配下のローカルネットワーク２ｐ等に接続される場合と、インターネット１に直接接続される場合とがある。なお、上述された、通信端末６Ｌが通信端末６ｐである場合は、通信端末６Ｌが、ルータ５ｐ配下のローカルネットワーク２ｐに接続される場合である。また、通信端末６Ｌが、通信端末６ｑである場合は、通信端末６Ｌがインターネット１に直接接続される場合である。
【０１０８】
何れの場合においても、インターネット１から中継通信サーバ機能部６４にアクセスが可能な場合、中継通信サーバ機能部６４は、そのアドレス情報を用いることにより、通信端末６Ｌに対して、インターネット１を介したアクセスが可能なアドレス情報（ＩＰアドレス、ポート番号）をセンターサーバ３に、中継サーバ情報の一部として登録する。
【０１０９】
端末間で通信を行う通信端末（例えば通信端末６ｓ）は、前記のようにセンターサーバ３から中継サーバ情報を取得する（図３のＳ３１参照）。これにより、中継通信サーバ機能部６４を持つ通信端末６Ｌ（通信端末６ｐ）を、中継サーバ４ａ〜４Ｎ（図１等）を利用するのと同様に利用することが通信端末６ｓ等は可能となる。
【０１１０】
このように、中継通信サーバ機能部６４を持つ通信端末６Ｌで、中継専用の中継サーバ４ａ〜４Ｎ（図１）がなくとも、中継通信が可能となり、かつ、システムＸＬに通信端末６Ｌが増えると、中継通信サーバ機能部６４を持つ通信端末６Ｌも増えることが期待できるため、システムコスト削減や、システムのスケラビリティの向上が実現できる。
【０１１１】
なお、本実施の形態では、接続シーケンスの図（図３参照）において、最初に複数の中継通信路を接続するとしたが（図３のステップＳ３１、ステップＳ３２参照）、最初は１つの中継通信路を接続し、発呼側通信端末６ａのデータ送信部６２４や、着呼側通信端末６ｂのデータ送信部の送信するデータパケットを、通信状況監視部６２２が監視し、データ量、データ送信帯域に応じて、中継通信路を随時追加、削除するようにしてもよい。
【０１１２】
また、最初に複数の中継通信路を接続しておき、データ送信部６２４の送信するデータパケットを通信状況監視部６２２が監視し、データ量、データ送信帯域に応じて、中継通信路の削除、追加をするようにしてもよい。
【０１１３】
このように、データ送信部６２４の送信するデータパケットのデータ量、データ送信帯域に応じて、中継通信路の追加、削除を行うことで、不必要な中継サーバを解放することができ、効率的に中継サーバを使用することが可能となる。
【０１１４】
なお、本実施の形態では、中継通信路の伝送遅延の平均や揺らぎ等の統計情報や、最大伝送遅延等の値が、所定の基準を満たさないことを検出した場合に、該当する中継通信路を不適と判定するとしたが、中継クライアント部６２は、パケットロス率が所定の基準を満たさない場合、該当する中継通信路を不適と判断してもよい。
【０１１５】
このように判定することで、パケットロス率の高い中継通信路を排除することが可能となり、通信端末間の通信が安定する。
【０１１６】
さらに、本実施の形態では、上位アプリケーション機能部６１からのデータ送受信時に中継通信路の通信状況を監視し評価して、中継通信路の不適を判定するとしたが、中継通信路接続後、上位アプリケーション機能部６１からのデータ送受信前に、テストデータの送受信を実行し、中継通信路が不適でないことを確認するようにしてもよい。この場合、不適であると判定された場合には、別の中継通信路を設定し、再度テストデータにより確認を実施する。
【０１１７】
このようにテストデータによる確認を実施することで、不適な中継通信路を上位アプリケーション機能部６１からのデータ送受信前に取り除くことが可能となるため、通信端末間の通信が安定する。
【０１１８】
なお、本実施の形態では、データ送信部６２４は、上位アプリケーション機能部６１からの送信データを所定のサイズのパケットに分割し、中継通信路を用いて送信するとしたが、データ送信部６２４は、所定の数ｎに対するｎ個の前記分割したパケットを用いて、演算により冗長パケットを作成し、作成した冗長パケットを含めて、送信処理を実行してもよい。
【０１１９】
このように、冗長パケットを送信することにより、ある中継通信路でパケットロスが発生しても、データ受信部６２５で冗長パケットを用いて、ロスしたパケットを再現できるため、再送回数を減らすことが可能となる。
【０１２０】
さらに、データ送信部６２４は、上位アプリケーション機能部６１からの送信データを暗号化して送信し、通信相手のデータ受信部６２５が暗号を解読し、元のデータに戻すようにしてもよい。このようにすることで、通信端末６Ｌの中継通信サーバ機能部６４を用いて中継通信を行った場合等のセキュリティの向上を要する各種の場合において、セキュリティを向上させることが可能となる。
【０１２１】
また、センターサーバ３は、中継サーバ情報の一部として、中継サーバのカテゴリを示す情報を管理し、通信端末６は中継サーバを選択するときに本中継サーバのカテゴリを参照し、所定のカテゴリの中継サーバを所定台数以上選択するように制御するようにしてもよい。例えば、中継サーバのカテゴリとしては、中継専用の中継サーバと、通信端末６Ｌが提供する中継通信サーバ機能とを区別可能とすることが考えられる。通信端末６は、信頼できる中継専用の中継サーバを所定台数（例えば、１台）以上選択することにより、悪意を持った中継通信サーバ機能部６４に、送信データを全て盗まれる等の攻撃を回避することが可能となる。また、カテゴリは、互いに異なるカテゴリに属する中継サーバは、予め定められた品質が互いに異なるカテゴリであってもよい。例えば、具体的には、カテゴリは、互いに異なるカテゴリに属する中継サーバは、その中継サーバによる中継通信路の安全性が互いに異なるカテゴリであってもよい。また、具体的には、カテゴリは、互いに異なるカテゴリに属する中継サーバは、その中継サーバによる中継通信路のセキュリティが互いに異なるカテゴリであってもよい。
【０１２２】
本発明によれば、中継サーバの中継処理により通信端末間を接続し通信可能とするとき、中継機能を提供する機器に大きな処理負荷をかけることなく、かつ、各中継機能で中継される通信帯域を低く抑えることが可能な通信端末および、通信方式が実現できる。
【０１２３】
すなわち、ネットワーク上の中継機能部（中継サーバ４ａ〜中継サーバ４Ｎ、中継通信サーバ機能部６４）を介して通信端末間で通信を行う通信端末（通信端末６）において、中継通信設定部（中継通信設定部６２１）は、ネットワーク上で複数の中継機能部を選択し、前記中継機能部を介した相手先通信端末へ通信路（中継通信路）を、選択した前記中継機能部それぞれについて設定し、通信状況監視部（通信状況監視部６２２）は、前記中継機能部を介した相手先通信端末との通信路（中継通信路）の通信状況を評価し、評価結果に基づき、前記通信路の削除、又は、新規中継機能部を介した相手先通信端末への通信路（新規中継通信路）の設定、又は、その両方を中継通信設定部に指示し、前記通信状況監視部より指示を受けた中継通信設定部は、新規中継機能部を介した相手先通信端末への通信路の設定を実施する場合、前記新規中継機能部のアドレス情報を含む接続要求メッセージを相手先通信端末へ送信する。
【０１２４】
これにより、ＮＡＴ配下のローカルネットワークに接続された通信端末間の通信を可能とする狙いが達成される。
【０１２５】
また、こうして、ネットワーク上の中継装置（中継サーバ４ａ等、通信端末６Ｌ）を介して相手先通信端末装置（着呼側通信端末６ｂ）と通信を行う通信端末装置（発呼側通信端末６ａ、通信端末６、通信端末６Ｌ）であって、通信に利用するネットワーク上の複数の中継装置を選択し、前記選択した複数の中継装置（選択中継サーバ）を介した相手先通信端末装置との間の中継用通信路をそれぞれ設定する中継通信設定部（中継通信設定部６２１）と、前記選択された中継装置を介した通信路毎に、相手先通信端末装置との通信状況を監視する通信状況監視部（通信状況監視部６２２）と、前記相手先通信端末装置から前記選択された中継装置を介して分割された受信データを受信して、前記分割された受信データを統合して受信データを組み立てるデータ受信部（データ受信部６２５）と、前記相手先通信端末装置への送信データを分割して、分割された送信データを前記選択された複数の中継装置それぞれを介して送信するデータ送信部（データ送信部６２４）とを備え、前記通信状況監視部は、前記中継用通信路の通信状況を評価し、評価結果に基づき、前記中継用通信路の削除、又は、中継用通信路の追加、又は、その両方を中継通信設定部に指示し、前記中継通信設定部は、中継用通信路を追加する場合、新規中継装置のアドレス情報を含む接続要求メッセージを前記相手先通信端末へ送信する通信端末が構成される。
【０１２６】
なお、このようなシステムＸ、システムＸＬにおいては、発呼側通信端末６ａから着呼側通信端末６ｂへの送信データも、着呼側通信端末６ｂから発呼側通信端末６ａへの受信データも、両方とも、互いに異なる中継通信路を介して通信される複数の並列通信データ（パケット群）へと分割されて分割伝送（高速伝送）されてもよいし、送信データの分割伝送のみが行われてもよいし(受信データの分割伝送は必須ではない)、また、受信データの分割伝送のみが行われてもよい(送信データの分割伝送は必須ではない)。また、通信端末６により、通信状況監視部６２２によって通信品質を監視する監視装置が構成される。また、通信端末６により、中継通信設定部６２１によって中継装置を選択する選択装置が構成される。そして、この監視装置は、自分で中継装置を選択するが、自分では中継装置を選択しない監視装置が構成されてもよい。すなわち、例えば、上記の着呼側通信端末装置６ｂ（又は着呼側通信端末装置６ｂに当たる装置）によって監視装置が構成されてもよい。すなわち、例えば、上記の着呼側通信端末装置６ｂ（着呼側通信端末装置６ｂに当たる装置）であって、中継用通信路の品質を監視(評価)し、監視結果（評価結果）を通信相手（発呼側通信端末６ａ）に通知して、通信相手に中継用通信路の再設定を要求する装置が構成されてもよい。
【０１２７】
また、こうして、通信相手先端末（着呼側通信端末６ｂ）と、中継装置（中継サーバ４ａ等、通信端末６Ｌ）を介して当該相手先通信端末と通信を行う通信端末（発呼側通信端末６ａ、通信端末６、通信端末６Ｌ）とを含む通信システム（システムＸ、システムＸＬ）が構成される。
【０１２８】
なお、ここで、この通信システムにおいては、互いに通信を行う各通信端末（通信端末６ａ、通信端末６ｂ、通信端末６ｐなど）が、ＮＡＴ配下のローカルネットワークに接続された通信端末である。例えば、この通信システムは、具体的には、各通信端末が、互いにピアツーピア（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ＝Ｐ２Ｐ）接続される通信システムである。
【０１２９】
そして、通信端末は、中継装置を介して相手先通信端末と通信を行う通信端末であって、通信データ（送信データ）が分割された複数の分割データ（パケット）を複数の中継装置を介して通信する通信部（通信部６２ｐ）と、前記複数の中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況（例えば伝送遅延）を監視し、監視する前記各通信状況を評価した評価結果に基づいて、前記複数の分割データの通信が介する前記複数の中継装置を、現在の複数の中継装置（例えば図５の中継サーバａ、中継サーバｂ、中継サーバｃ）から、当該現在の複数の中継装置とは少なくとも一部が異なる新しい複数の中継装置（例えば図５の中継サーバａ、中継サーバｄ、中継サーバｃ）に変更させる通信状況監視部（通信状況監視部６２２）とを備える。
【０１３０】
これにより、通信データが、複数の中継サーバを介して、例えば並列に通信されるなどして、高速に通信される。
【０１３１】
しかも、仮に、高速に通信がされるだけに止まるなら、通信データの通信の品質（評価）の安定性が、実用になる程度より悪くなってしまう。なぜならば、通信に用いられる中継装置が複数であり、例えばｋ倍（ｋは、利用される中継装置の台数：ｋ≧２）だけ通信データの通信が中断し易くなってしまうなどして、品質（評価）の安定性が例えば２倍（ｋ倍）低下してしまうためである。しかしながら、この通信システムにおいては、各中継通信路の通信状況（例えば伝送遅延）が監視されて、各通信状況の全体が評価された評価結果（例えば伝送遅延の平均値など）に基づいて、利用される各中継装置が、現在の複数の中継装置から、新しい複数の中継装置に変更される。これにより、通信データの通信の品質（評価）が安定するようにできる。
【０１３２】
なお、通信部は、複数の分割データのうちの少なくとも一部（一部又は全部）の分割データを、２以上の中継装置をシーケンシャルに利用して、通信してもよい。また、通信部は、複数の分割データのうちの少なくとも一部（一部又は全部）を、その一部に含まれる分割データの個数と同じ個数の中継装置をパラレルに利用して、互いに異なる分割データは互いに異なる中継装置を介して通信してもよい。複数の中継装置は、それら複数の中継装置のうちの何れの中継装置も、それら複数の分割データのうちの少なくとも１つの分割データを中継する。
【０１３３】
そして、この通信端末（通信端末６、発呼側通信端末６ａ）は、予め定められたＮ個の前記中継装置（Ｎ≧２）から複数の中継装置を選択し、前記選択した複数の中継装置（選択中継サーバ）を介した、当該通信端末と前記相手先通信端末との間の中継通信路をそれぞれ設定する中継通信設定部（中継通信設定部６２１）を備え、前記通信状況監視部は、前記各通信状況の評価結果に基づいて、前記現在の複数の中継装置の各中継通信路からの中継通信路の削除、又は、当該各中継通信路に対する中継通信路の追加、又は、前記削除および追加の両方を、前記中継通信設定部に指示し、前記中継通信設定部は、前記通信状況監視部により指示されると、当該指示により示される処理を行う。
【０１３４】
ここで、中継通信路は、その中継通信路によりデータが中継される中継元から中継先までの間の通信路である。
【０１３５】
なお、中継通信設定部は、より具体的には、例えば、中継通信路の設定や、削除などをするための公知のライブラリやパッケージなどの、公開等された汎用ソフトウェアによる機能を含み、この機能を用いて、上記の機能を果たすものであってもよい。
【０１３６】
なお、中継通信設定部は、通信部６２ｐの外部に設けられてもよいし、通信部６２ｐの一部分であってもよい。
【０１３７】
なお、例えば、通信状況監視部は、より具体的には、中継通信設定部に、上記追加をさせる第１制御、又は、上記削除をさせる第２制御、又は、上記両方をさせる第３制御を行ってもよい。すなわち、例えば、通信状況監視部は、具体的には、これら第１制御〜第３制御のうちから１つの制御を選択し、選択される制御を中継通信設定部に対して行ってもよい。
【０１３８】
そして、この通信端末は、前記通信部は、前記通信データを前記複数の分割データへと分割して、分割された前記複数の分割データを、それぞれ、前記中継通信設定部によって選択された前記複数の中継装置（複数の選択中継サーバ）を介して送信するデータ送信部（データ送信部６２４）と、前記相手先通信端末によって通信データが分割された複数の分割データを、それぞれ、前記中継通信設定部によって選択された前記複数の中継装置を介して、前記相手先通信端末から受信して、受信された当該複数の分割データから、当該複数の分割データへと分割された前記通信データを組み立てるデータ受信部（データ受信部６２５）とを備え、前記中継通信設定部は、前記通信状況監視部が新規中継通信路の追加を当該中継通信設定部に指示する場合、追加する新規中継通信路の中継装置のアドレス情報を含む接続要求メッセージ（中継サーバ入替要求メッセージ：図５のステップＳ５３）を前記相手先通信端末に送信する。
【０１３９】
すなわち、データ送信部は、例えば、前記複数の中継装置のうちの何れの中継装置も、前記複数の分割データのうちの少なくとも１つの中継を行う通信により、それら複数の分割データを、それら複数の中継装置を介して送信先へ送信する。具体的には、データ送信部は、例えば、前記複数の分割データを、前記複数の分割データに含まれる分割データの個数と同じ個数の中継装置を介して、互いに異なる分割データは、互いに異なる中継装置を介して送信先へと送信する。
【０１４０】
また、データ受信部は、前記複数の中継装置のうちの何れの中継装置も、前記複数の分割データのうちの少なくとも１つの中継を行う通信により、それら複数の分割データを、それら複数の中継装置を介して受信元から受信する。具体的には、データ受信部は、例えば、それら複数の分割データを、それら複数の分割データに含まれる分割データの個数と同じ個数の中継装置を介して、互いに異なる分割データは、互いに異なる中継装置を介して受信する。
【０１４１】
そして、例えば、前記通信状況監視部は、前記相手先通信端末への前記複数の中継通信路の伝送遅延をそれぞれ監視し、伝送遅延が予め定められた許容条件（例えば、通信データが適切に通信されるための最小の条件）を満たさない中継通信路を検出して、当該検出がされた場合、検出がされた該当中継通信路の削除又は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定又は、前記削除および前記新規中継通信路の設定の両方を、前記中継通信設定部に指示する。
【０１４２】
そして、例えば、前記通信状況監視部は、前記相手先通信端末への前記複数の中継通信路でのパケットロスをそれぞれ監視し、パケットロスが予め定められた許容条件を満たさない中継通信路を検出して、当該検出がされた場合、検出がされた該当中継通信路の削除又は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定又は、前記削除および前記新規中継通信路の設定の両方を、前記中継通信設定部に指示する。
【０１４３】
そして、例えば、前記通信状況監視部は、前記通信データのトラヒック量に応じて、前記中継通信設定部が設定済みの前記中継通信路の削除、又は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定を前記中継通信設定部に指示する。
【０１４４】
そして、例えば、前記通信状況監視部は、新規中継装置を介した前記相手先通信端末への新規中継通信路の設定が前記中継通信設定部によってされた場合に、設定された当該新規中継通信路を評価するための予め定められた評価用のデータ（テストデータ）を、当該新規中継通信路に送信することにより、前記新規中継通信路の通信状況を評価し、その評価の結果が予め定められた条件を満たす場合に、当該通信端末の上位アプリケーションからの通信データの送信に前記新規中継通信路を前記通信部に利用させる。
【０１４５】
そして、前記通信状況監視部は、具体的には、前記中継装置を介して前記通信部が前記相手先通信端末に送信する前記複数の分割データのうちの一部の分割データが、前記相手先通信端末に受信されなかったこと（図４のパケットロスＰＬ）を検出し、前記通信部は、前記通信状況監視部によって当該検出がされた場合に、当該検出がされた前記一部の分割データの前記送信に前記通信部が利用した中継装置（中継サーバｂ）とは異なる、他の中継装置（中継サーバａ）を介する中継通信路を用いて、当該一部の分割データを再度前記相手先通信端末に送信する（図４のステップＳ４３）。
【０１４６】
そして、前記通信部は、前記再度の送信をするに際して、前記相手先通信端末への当該中継装置を介した通信での伝送遅延が、他の予め定められた前記中継装置（例えば中継サーバｃ）よりも小さい中継装置（中継サーバａ）を選択し、選択される当該中継装置による中継通信路により前記再度の送信を行う。
【０１４７】
そして、前記通信部は、当該通信端末の上位アプリケーション（上位アプリケーション機能部６１等）の複数の通信データについて、それぞれ、その通信データと、当該通信データが分割された複数の分割データが通信される複数の中継通信路との対応関係を記憶し、上位アプリケーションから通信完了が当該通信部に通知された場合、又は、前記相手先通信端末から通信終了が当該通信部に通知された場合、通知がされた通信データに前記対応関係が対応付ける前記複数の中継通信路を全て解放する（図６参照）。
【０１４８】
そして、前記中継通信設定部は、Ｎ個の前記中継装置のカテゴリをそれぞれ示すカテゴリ情報を記憶し、前記Ｎ個の中継装置のうちから、記憶される前記カテゴリ情報により、予め規定されたカテゴリ（例えば、中継通信路のセキュリティが高いカテゴリ）が示される中継装置が少なくとも１つ含まれる複数の中継装置を選択し、前記通信部は、前記カテゴリ情報により前記予め規定されたカテゴリが示されない前記中継装置（中継通信路のセキュリティが低い中継サーバ）を介して通信する分割データを暗号化して、暗号化された当該分割データを当該中継装置を介して送信し、暗号化された前記分割データを解読するために必要となる情報を、前記カテゴリ情報によって前記予め規定されたカテゴリが示される前記中継装置（中継通信路のセキュリティが高いカテゴリ中継サーバ）を介して送信する。
【０１４９】
そして、前記通信部は、前記中継装置を介して送信する分割データを用いて、当該分割データの一部と当該冗長データとから、又は、当該冗長データのみから当該分割データが再現される冗長データを作成して、作成された前記冗長データを、当該分割データを送信した前記中継通信路と異なる他の前記中継通信路を介して前記相手先通信端末に送信する。
【０１５０】
なお、冗長データは、例えば、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）の冗長データによって、滅失したデータが再現されるのと同様に、その冗長データにより、その冗長データの基となった分割データが再現されるデータである。ここで、滅失とは、全部の滅失と、一部の滅失との両者が含まれる。なお、冗長データは、分割データの少なくとも一部（すなわち、一部又は全部）がなくとも、その冗長データからその分割データが再現されるデータである。
【０１５１】
そして、前記中継通信設定部は、前記通信状況監視部が新規中継通信路の追加を当該中継通信設定部に指示する場合（例えば、中継サーバｄの中継通信路が追加される図５の場合）、当該新規中継通信路の中継装置（中継サーバｄ）以外の他の中継装置のうちで、中継通信路を設定済みの中継装置（中継サーバａ）を介して、前記接続要求メッセージを前記相手先通信端末に送信する。
【０１５２】
そして、通信端末６Ｌは、当該通信端末が含まれるローカルネットワーク（例えば、ローカルネットワーク２ｐ）のルータ（ルータ５ｐ）に対して、ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ）設定を実行するＮＡＴ設定部（ＮＡＴ設定部６４１）と、２台以上の他の通信端末（例えば通信端末６ｓ、通信端末６ｔ）から接続され、当該各他の通信端末の間における分割データの通信を中継する中継通信サーバ部（中継通信サーバ機能部６４）とを備える。
【０１５３】
なお、ここで、例えば、この通信システムは、次の態様を有する。すなわち、この通信システムは、着呼側通信端末６ｂの通信データの通信の相手先である相手先通信端末（発呼側通信端末６ａ）は、予め定められたＮ個の前記中継装置（Ｎ≧２）から複数の中継装置を選択し、前記選択した複数の中継装置を介した、当該通信端末と前記相手先通信端末との間の中継通信路をそれぞれ設定する中継通信設定部（発呼側通信端末６ａの中継通信設定部６２１）を備え、着呼側通信端末６ｂの通信状況監視部６２２は、それらの複数の中継装置に含まれる各中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況を監視し、監視する前記各通信状況を評価した評価結果を算出して、算出された評価結果に基づいて、現在利用中の複数の中継通信路からの中継通信路の削除、又は、当該複数の中継通信路に対する中継通信路の追加、又は、前記削除および追加の両方を発呼側通信端末６ａの中継通信設定部６２１に対して指示し、発呼側通信端末６ａの中継通信設定部６２１は、着呼側通信端末６ｂの通信状況監視部６２２により指示されると、当該指示により示される処理を行う。
【０１５４】
なお、上記の説明により、中継装置を介して相手先通信端末と通信を行う通信方法であって、通信データが分割された複数の分割データを、複数の中継装置を介して通信する通信ステップと、前記各中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況を監視し、監視する前記各通信状況を評価した評価結果に基づいて、前記複数の分割データの通信が介する前記複数の中継装置を、現在の複数の中継装置から、当該現在の複数の中継装置とは少なくとも一部が異なる新しい複数の中継装置に変更させる通信状況監視ステップとを備える通信方法が示される。また、上記の説明により、上記の通信ステップ等の各ステップをコンピュータ（通信端末）に実行させるためのコンピュータプログラムが示される。また、上記の説明により、上記の通信ステップ等の各ステップを実行する機能をそれぞれコンピュータ（通信端末）に実現させるためのコンピュータプログラムが示される。
【０１５５】
ここで、「発明が解決しようとする課題」に記載された問題を解決し、中継機能を提供する通信端末に大きな処理負荷をかけることなく、各中継機能で中継される通信帯域を低く抑えるためには、通信端末が接続する中継機能を複数にし、各中継機能にかける中継負荷を分散させる方法が考えられる。しかし、通信端末が接続する中継機能を複数にすると、利用する中継機能毎に相手通信端末までの通信経路が異なることになり、通信遅延の揺らぎが大きくなる問題が発生する。さらに、通信中に利用している中継機能やその通信路に障害が発生して、通信端末間の通信が失敗する確率が高くなるという問題が発生する。
【０１５６】
このため、これらの問題を解決するために、本実施の形態の通信端末（通信端末６、通信端末６Ｌ）は、上記の構成がとられる。
【０１５７】
本実施の形態の通信端末は、ネットワーク上の中継機能部（中継サーバ４ａ〜４Ｎ等）を介して通信端末間で通信を行う通信端末であって、ネットワークからのデータを受信するデータ受信部（データ受信部６２５）と、通信に利用するネットワーク上の中継機能部（中継サーバ等）を選択し、中継用通信路を設定する中継通信設定部（中継通信設定部６２１）と、各中継機能部を通じた通信路毎に、相手先通信端末との通信状況を監視する通信状況監視部（通信状況監視部６２２）と、ネットワークに対してデータを送信するデータ送信部（データ送信部６２４）とを備え、中継通信設定部は、ネットワーク上で複数の中継機能部を選択し、前記中継機能部を介した相手先通信端末へ通信路を、選択した前記中継機能部それぞれについて設定し、データ送信部は、上位アプリケーション（上位アプリケーション機能部６１）からの送信データを、中継通信設定部が設定した複数の通信路（中継通信路）を用いて送信し、データ受信部は、複数の通信路を介して受信したデータを組み立て、送信元の上位アプリケーションからの送信データを再現し、通信状況監視部は、前記中継機能部を介した相手先通信端末との通信路の通信状況を評価し、評価結果に基づき、前記通信路の削除、又は、新規中継機能部を介した相手先通信端末への通信路の設定、又は、その両方を中継通信設定部に指示し、前記通信状況監視部より指示を受けた中継通信設定部は、新規中継機能部を介した相手先通信端末への通信路（中継通信路）の設定を実施する場合、前記新規中継機能部のアドレス情報を含む接続要求メッセージを相手先通信端末へ送信することを特徴とする。
【０１５８】
この中継通信設定部が複数の中継通信路を設定し、データ送信部が複数の通信路を用いて、データを送信することにより、一本の中継通信路を流れるトラヒックを小さくすることが可能となり、中継機能で中継される通信帯域を狭く抑えることができる。
【０１５９】
加えて、前記通信状況監視部が前記中継機能部を介した相手先通信端末との通信路の通信状況を評価し、評価結果に基づき、前記通信路の削除、新規中継機能部の追加を実行することにより、伝送遅延が大きい中継通信路やパケット廃棄率の高い中継通信路を削除し、代わりの中継通信路を設定する等の処理が可能となり、通信端末間の通信が安定する。
【０１６０】
そして、中継通信設定部は、新規中継機能部を介した相手先通信端末への通信路の設定を実施する場合、前記新規中継機能部のアドレス情報を含む接続要求メッセージを相手先通信端末へ送信する。これにより、相手先通信端末は、ローカルネットワークからインターネットに向けて中継用通信路を接続することができる。そのため、ルータに対して動的ＮＡＴ設定により、ユーザによる特別な設定が必要なく中継通信路を接続することが可能となる。
【０１６１】
図９は、通信端末６（通信端末６ａ、通信端末６ｓなど）を示す図である。
【０１６２】
すなわち、本通信端末（通信端末６ａ、６ｓ、６Ｌなど）は、グローバルネットワーク（例えば、インターネット１）のアドレスが割り当てられた中継装置（図１の中継サーバ４ａ〜４Ｎ、図８の通信端末６ｐ、通信端末６ｑなど）を介して、相手先通信端末（通信端末６ｂ、通信端末６ｔなど）と通信を行う、ローカルネットワーク（ローカルネットワーク２ａ、２ｓ）に接続された通信端末であって、複数の前記中継装置のアドレス宛にパケットを送信することにより、それぞれの前記中継装置が、前記通信端末（通信端末６ａ等）へパケットを送信する際に、その中継装置が前記通信端末から受信した前記パケットの送信元アドレス宛に、その中継装置が送信を行う通信路を設定する中継通信設定部（中継通信設定部６２１）と、通信データが分割された複数の分割データを、複数の前記中継装置を介して通信する通信部（通信処理部６２４ａが有するデータ送信部６２４及び受信部６２５のうちの一方、通信処理部６２４ａ、又は、通信処理部６２４ａが含まれる全体（通信部６２ｐ等））と、前記各中継装置毎に、それぞれ、その中継装置を介した前記分割データの通信の通信状況を監視し、監視する前記各通信状況を評価した評価結果に基づいて、複数の前記分割データの通信が介する複数の前記中継装置を、現在の複数の中継装置から、当該現在の複数の中継装置とは少なくとも一部が異なる新しい複数の中継装置に変更させる通信状況監視部（通信状況監視部６２２）とを備える通信端末である。
【０１６３】
なお、通信処理部６２４ａは、先述のデータ送信部６２４およびデータ受信部６２５を含んだ全体によってなる機能ブロックを示す。なお、図２および図７では、通信処理部６２４ａの図示は省略される。
【０１６４】
すなわち、本通信端末は、ローカルネットワーク（ローカルネットワーク２ａ、２ｓ）に接続される。つまり、具体的には、例えば、本通信端末（通信端末６ａ、６ｓ、６Ｌなど）および相手先通信端末（通信端末６ｂ、６など）のそれぞれは、互いにＰ２Ｐ接続される複数のコンピュータ（図１の通信端末６ａ〜６ｂ、中継サーバ４ａ〜４Ｎなど、図８の通信端末６ｐ〜６ｔ）のうちの１つである。
【０１６５】
このため、本通信端末と、グローバルネットワーク（インターネット１）のサーバ等（例えば中継装置）とが通信する際には、動的ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ）設定が必要である。動的ＮＡＴ設定では、本通信端末により、サーバ等にパケットが送信され、送信されたパケットがＮＡＴ機能により検出されて、検出したＮＡＴ機能が、アドレスの変換ルールを当該ＮＡＴ機能に設定する。設定される変換ルールは、ローカルネットワークのプライベートアドレスと、グローバルネットワークのグローバルアドレスとの間の変換の変換ルールであり、つまり、本通信端末のプライベートアドレス、および、グローバルアドレスの間の変換ルールである。この変換ルールが設定されることにより、本通信端末とサーバとの間の通信路が設定される。つまり、動的ＮＡＴ設定により、前記の変換ルールがＮＡＴ機能に自動設定されることにより、本通信端末とサーバ等との通信が可能となる。つまり、ＮＡＴ機能による変換ルールの設定がされた後には、グローバルネットワークの前記サーバ等は、本通信端末から受信した前記パケットの送信元アドレス（送信元IPアドレス、ポート番号）宛にパケットを送信することで、前記サーバ等からローカルネットワークに接続された通信端末への通信が可能となる。
【０１６６】
このような、ＮＡＴ機能は、例えば、ローカルネットワークとグローバルネットワークの境界に設置されるルータ（ルータ５ａ、ルータ５ｓ）に実装される。また、ルータには、先に述べたＮＡＴ機能とは別に、ファイアウォール機能が実装される場合がある。
【０１６７】
ここで、ファイアウォール機能とは、ルータを流れるパケットを監視し、許可されていないパケットを廃棄する機能である。ファイアウォール機能は、グローバルネットワーク（インターネット１）からローカルネットワーク（ローカルネットワーク２ａ、２ｓ）への不正な侵入を防ぐ機能を提供する。
【０１６８】
このファイアウォール機能においても、ローカルネットワークに接続された通信端末（通信端末６ａ、６ｓなど）が、グローバルネットワーク（インターネット１）のサーバ等（例えば中継装置）宛にパケットを送信した場合等には、ルータのNAT機能と同様に、自動的にファイアウォール通過の許可条件が、そのファイアウォール機能に設定されることが知られている。このため、ローカルネットワークの通信端末（通信端末６ａ、６ｓ）からグローバルネットワークのサーバ等（例えば中継装置）宛に通信を開始した場合、この設定がされて、サーバ等は、前記サーバが受信したパケットの受信元アドレス宛にパケットを送信することで、ファイアウォールを越えて、互いに通信することが可能となる。
【０１６９】
そこで、中継通信設定部は、パケットを中継装置に送信して、送信されたパケットを、予め定められた通信制御部（ＮＡＴ機能およびファイアウォール機能の一方又は両方）に検出させることにより、検出した通信制御部に通信路を設定させて、当該通信端末と、その中継装置との間の通信路を設定する。
【０１７０】
なお、前記の例では、ローカルネットワークとグローバルネットワークの境界に設置されるルータ（ルータ５ａ、ルータ５ｓ）にＮＡＴ機能が実装されており、動的ＮＡＴ設定により、アドレス変換が実行されることによって、本通信端末と、グローバルネットワーク（インターネット１）のサーバ等（例えば中継装置）とが通信可能となるネットワーク構成を例に説明した。しかし、ローカルネットワークとグローバルネットワークの境界に設置されるルータ（ルータ５ａ、ルータ５ｓ）に、ＮＡＴ機能が実装されておらず、ファイアウォール機能のみが実装されているネットワーク構成も考えられる。この場合、ローカルネットワークに接続された通信端末（通信端末６ａ、６ｓなど）が、グローバルネットワーク（インターネット１）のサーバ等（例えば中継装置）宛にパケットを送信を行うことにより、自動的にファイアウォール通過の許可条件が、そのファイアウォール機能に設定され、本通信端末と、グローバルネットワーク（インターネット１）のサーバ等（例えば中継装置）とが通信可能となる。
【０１７１】
なお、ここで、通信路を設定するとは、換言すれば、例えば、通信路を成立させることである。
【０１７２】
なお、中継通信設定部は、例えば、具体的には、非特許文献１に挙げられた、ＴＵＲＮ（Ｔｒａｖｅｒｓａｌ  Ｕｓｉｎｇ  Ｒｅｌａｙ  ＮＡＴ）における、通信路の設定の処理と同様の処理により、中継装置との間の通信路を設定してもよい。
【０１７３】
そして、本通信端末においては、中継通信設定部により、複数の中継装置（中継サーバ４ａ〜４Ｎ、通信端末６Ｌ（通信端末６ｐ、通信端末６ｑ）のうちの２つ以上）のそれぞれと、本通信端末との間の通信路（発呼側部分通信路）が設定されることにより、それぞれの中継装置を介した、本通信端末と、相手先通信端末（通信端末６ｂ、通信端末６ｐ〜６ｒ、通信端末６ｔ）との間の通信路（中継通信路）が設定される。
【０１７４】
そして、通信部により、通信データが分割された複数の分割データが、設定されたそれぞれの通信路により通信されることにより、通信データが通信される。
【０１７５】
そして、ここで、ルータ等による通信の中継（中継路の切換を含む）では、通常、予め通信路（ルーティングテーブル）が決められている運営になる。このため、特定の通信端末の通信開始・終了に１対１に対応させて、動的に、利用する通信路を選択、決定して、決定された通信路を設定することは行われない。
【０１７６】
これに対して、本通信端末においては、一般端末（例えば通信端末６ｐ、通信端末６ｑ）を中継サーバにするため、利用する中継装置を、動的に決定することが必須要件になる。
【０１７７】
そこで、本通信端末においては、本通信端末−中継サーバ群−相手先通信端末の通信路は、通信開始時および、通信中などに動的に決定、設定される。
【０１７８】
すなわち、通信状況監視部により、通信の開始時、又は、通信中などにおいて、利用される複数の中継装置が、新しい複数の中継装置に変更される。これにより、利用されるそれぞれの中継装置が一般端末であるにも関わらず、複数の中継装置による、複数の通信路として、適切な複数の通信路が維持できて、適切に通信ができる。
【０１７９】
このように、本通信端末においては、中継通信設定部と、通信部と、通信状況監視部とが組み合わせられ、組み合わせによる相乗効果が生じる。これに対して、従来例では、これら中継通信設定部等のうちの一部又は全部が欠けており、この相乗効果が得られない。本通信端末は、この相乗効果が得られる点で、従来例とは相違する。
【産業上の利用可能性】
【０１８０】
中継サーバの中継処理により通信端末間を接続し、通信可能とするとき、中継機能を提供する通信端末に大きな処理負荷をかけることなく、各中継機能で中継される通信帯域を低く抑えることが可能な通信端末および、通信方式を提供できる。
【０１８１】
また、通信端末と相手先通信端末との間における通信データの通信が高速になり、かつ、その通信の品質が安定するようにできる。
【符号の説明】
【０１８２】
１  インターネット
２  ローカルネットワーク
３  センターサーバ
４ａ〜４Ｎ  中継サーバ
５、５ａ、５ｂ  ルータ
６、６ａ、６ｂ  通信端末
６１  上位アプリケーション機能部
６２  中継クライアント部
６３  通信Ｉ／Ｆ部
６４  中継通信サーバ機能部
６２１  中継通信設定部
６２２  通信状況監視部
６２３  中継通信路情報記憶部
６２４  データ送信部
６２４ａ  通信処理部
６２５  データ受信部
６４１  ＮＡＴ設定部
６４２  中継通信サーバ部
【図１】
0005436451.tif 000002
【図２】
0005436451.tif 000003
【図３】
0005436451.tif 000004
【図４】
0005436451.tif 000005
【図５】
0005436451.tif 000006
【図６】
0005436451.tif 000007
【図７】
0005436451.tif 000008
【図８】
0005436451.tif 000009
【図９】
0005436451.tif 000010