(57)【要約】【課題】特定のネットワークＩ／Ｆに通信データが集中し、データの帯域が制限されることを防止する。【解決手段】  端末装置１１Ｂは、通信装置１１Ａから送信されてくる、通信装置１１Ａで通信要求を行うアプリケーションソフトウエアの識別子と、通信装置１１Ａにおいて使用されていないネットワークＩ／Ｆの識別子を受信し、受信した通信装置１１Ａにおいて使用されていないネットワークＩ／Ｆの識別子、及び通信装置１１Ｂにおいて使用されていないネットワークＩ／Ｆの識別子に基づいて、同じ識別子を有し、通信装置１１Ａ及び通信装置１１Ｂのいずれにおいても使用されていないネットワークＩ／Ｆを選択し、選択したネットワークＩ／Ｆの識別子を通信装置１１Ａに送信するとともに、待ち受け状態にあるアプリケーションソフトウエアに通知する。【選択図】図８
2010130524.tif 000002
【特許請求の範囲】
【請求項１】
複数のネットワークインタフェースを搭載した通信装置であって、上記複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムの実行が可能な第１の通信装置と第２の通信装置からなる通信システムにおいて、
上記第１の通信装置は、
通信相手となる上記第２の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、上記第１の通信装置において使用されていないネットワークインタフェースの識別子を、上記第２の通信装置に送信する第１の送信手段と、
上記第２の通信装置から送信されてくる、上記第１の送信手段により送信された上記第１の通信装置において使用されていないネットワークインタフェースの識別子の中から選択された所定のネットワークインタフェースの識別子を受信する第１の受信手段と、
上記第１の受信手段により受信された上記所定のネットワークインタフェースの識別子を、上記第２の通信装置との接続要求を行う上記アプリケーションソフトウエアプログラムに通知する第１の通信手段と
を有し、
上記第２の通信装置は、
上記第１の通信装置の上記第１の送信手段により送信された上記アプリケーションソフトウエアプログラムの識別子と、上記第１の通信装置において使用されていない上記ネットワークインタフェースの識別子を受信する第２の受信手段と、
上記第２の受信手段により受信された上記アプリケーションソフトウエアプログラムの識別子と同じ識別子を有する上記第２の通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、上記第２の受信手段により受信された上記第１の通信装置において使用されていない上記ネットワークインタフェースの識別子、及び上記第２の通信装置において使用されていないネットワークインタフェースの識別子に基づいて、同じ識別子を有し、上記第１の通信装置及び上記第２の通信装置のいずれにおいても使用されていないネットワークインタフェースを選択する選択手段と、
上記選択手段により選択された上記ネットワークインタフェースの識別子を前記第１の通信装置に送信する第２の送信手段と、
上記選択手段により選択された上記ネットワークインタフェースを、上記第２の通信装置の待ち受け状態にある上記アプリケーションソフトウエアプログラムに通知する第２の通知手段と
を有することを特徴とする通信システム。
【請求項２】
請求項１に記載の通信システムであって、
前記第１の通信装置の前記第１の送信手段は、前記第１の通信装置において使用されていない前記ネットワークインタフェースの識別子に代えて、前記第１の通信装置のネットワークインタフェースの帯域使用量を、通信相手となる前記第２の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子とともに、前記第２の通信装置に送信し、
前記第２の通信装置の前記第２の受信手段は、前記第１の通信装置の前記第１の送信手段により送信された前記アプリケーションソフトウエアプログラムの識別子と、前記第１の通信装置の上記ネットワークインタフェースの帯域使用量を受信し、
前記選択手段は、前記第２の受信手段により受信された前記アプリケーションソフトウエアプログラムの識別子と同じ識別子を有する前記第２の通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、前記第２の受信手段により受信された前記第１の通信装置の上記ネットワークインタフェースの帯域使用量と、前記第２の通信装置のネットワークインタフェースの帯域使用量に基づいて、同一の識別子を有し、帯域使用量の少ないネットワークインタフェースを選択する
ことを特徴とする通信システム。
【請求項３】
複数のネットワークインタフェースを搭載した通信装置であって、上記複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムの実行が可能な通信装置において、
通信相手となる他の通信装置から送信されてくる、上記通信相手となる他の通信装置で通信要求を行うアプリケーションソフトウエアプログラムの識別子と、上記通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子を受信する受信手段と、
上記受信手段により受信された上記アプリケーションソフトウエアプログラムの識別子と同じ識別子を有する上記通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、上記受信手段により受信された上記通信相手となる他の通信装置において使用されていない上記ネットワークインタフェースの識別子、及び上記通信装置において使用されていないネットワークインタフェースの識別子に基づいて、同じ識別子を有し、上記通信相手となる他の通信装置及び上記通信装置のいずれにおいても使用されていないネットワークインタフェースを選択する選択手段と、
上記選択手段により選択された上記ネットワークインタフェースの識別子を前記通信相手となる他の通信装置に送信する送信手段と、
上記選択手段により選択された上記ネットワークインタフェースを、上記通信装置の待ち受け状態にある上記アプリケーションソフトウエアプログラムに通知する通知手段と
を有することを特徴とする通信装置。
【請求項４】
請求項３に記載の通信装置であって、
前記受信手段は、通信相手となる他の通信装置から送信されてくる、前記通信相手となる他の通信装置で通信要求を行う前記アプリケーションソフトウエアプログラムの識別子と、前記通信相手となる他の通信装置のネットワークインタフェースの帯域使用量を受信し、
前記選択手段は、前記受信手段により受信された前記アプリケーションソフトウエアプログラムの識別子と同じ識別子を有する前記通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、前記受信手段により受信された前記通信相手となる他の通信装置の上記ネットワークインタフェースの帯域使用量と、前記通信装置のネットワークインタフェースの帯域使用量に基づいて、同一の識別子を有し、帯域使用量の少ないネットワークインタフェースを選択する
を有することを特徴とする通信装置。
【請求項５】
複数のネットワークインタフェースを搭載した通信装置であって、上記複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムの実行が可能な通信装置の通信方法において、
通信相手となる他の通信装置から送信されてくる、上記通信相手となる他の通信装置で通信要求を行うアプリケーションソフトウエアプログラムの識別子と、上記通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子を受信する受信ステップと、
上記受信ステップで受信された上記アプリケーションソフトウエアプログラムの識別子と同じ識別子を有する上記通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、上記受信ステップで受信された上記通信相手となる他の通信装置において使用されていない上記ネットワークインタフェースの識別子、及び上記通信装置において使用されていないネットワークインタフェースの識別子に基づいて、同じ識別子を有し、上記通信相手となる他の通信装置及び上記通信装置のいずれにおいても使用されていないネットワークインタフェースを選択する選択ステップと、
上記選択ステップで選択された上記ネットワークインタフェースの識別子を前記通信相手となる他の通信装置に送信する送信ステップと、
上記選択ステップで選択された上記ネットワークインタフェースを、上記通信装置の待ち受け状態にある上記アプリケーションソフトウエアプログラムに通知する通知ステップと
を含むことを特徴とする通信方法。
【請求項６】
通信装置に搭載された複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムによる通信処理をコンピュータに実行させるプログラムであって、
通信相手となる他の通信装置から送信されてくる、上記通信相手となる他の通信装置で通信要求を行うアプリケーションソフトウエアプログラムの識別子と、上記通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子を受信する受信ステップと、
上記受信ステップで受信された上記アプリケーションソフトウエアプログラムの識別子と同じ識別子を有する上記通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、上記受信ステップで受信された上記通信相手となる他の通信装置において使用されていない上記ネットワークインタフェースの識別子、及び上記通信装置において使用されていないネットワークインタフェースの識別子に基づいて、同じ識別子を有し、上記通信相手となる他の通信装置及び上記通信装置のいずれにおいても使用されていないネットワークインタフェースを選択する選択ステップと、
上記選択ステップで選択された上記ネットワークインタフェースの識別子を前記通信相手となる他の通信装置に送信する送信ステップと、
上記選択ステップで選択された上記ネットワークインタフェースを、上記通信装置の待ち受け状態にある上記アプリケーションソフトウエアプログラムに通知する通知ステップと
を含む通信処理をコンピュータに実行させることを特徴とするプログラム。
【請求項７】
複数のネットワークインタフェースを搭載した通信装置であって、上記複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムの実行が可能な通信装置において、
通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、上記通信装置において使用されていないネットワークインタフェースの識別子を、上記通信相手となる他の通信装置に送信する送信手段と、
上記通信相手となる他の通信装置から送信されてくる、上記送信手段により送信された上記通信装置において使用されていないネットワークインタフェースの識別子の中から選択された所定のネットワークインタフェースの識別子を受信する受信手段と、
上記受信手段により受信された上記所定のネットワークインタフェースの識別子を、上記通信相手となる他の通信装置との接続要求を行う上記アプリケーションソフトウエアプログラムに通知する通信手段と
を有することを特徴とする通信装置。
【請求項８】
請求項７に記載の通信装置であって、
前記送信手段は、通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、前記通信装置のネットワークインタフェースの帯域使用量を送信し、
前記受信手段は、上記通信相手となる他の通信装置から送信されてくる、上記送信手段により送信された前記通信装置のネットワークインタフェースの帯域使用量に基づいて選択された所定のネットワークインタフェースの識別子を受信する
ことを特徴とする通信装置。
【請求項９】
複数のネットワークインタフェースを搭載した通信装置であって、上記複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムの実行が可能な通信装置の通信方法において、
通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、上記通信装置において使用されていないネットワークインタフェースの識別子を、上記通信相手となる他の通信装置に送信する送信ステップと、
上記通信相手となる他の通信装置から送信されてくる、上記送信ステップで送信された上記通信装置において使用されていないネットワークインタフェースの識別子の中から選択された所定のネットワークインタフェースの識別子を受信する受信ステップと、
上記受信ステップで受信された上記所定のネットワークインタフェースの識別子を、上記通信相手となる他の通信装置との接続要求を行う上記アプリケーションソフトウエアプログラムに通知する通信ステップと
を有することを特徴とする通信方法。
【請求項１０】
通信装置に搭載された複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムによる通信処理をコンピュータに実行させるプログラムであって、
通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、上記通信装置において使用されていないネットワークインタフェースの識別子を、上記通信相手となる他の通信装置に送信する送信ステップと、
上記通信相手となる他の通信装置から送信されてくる、上記送信ステップで送信された上記通信装置において使用されていないネットワークインタフェースの識別子の中から選択された所定のネットワークインタフェースの識別子を受信する受信ステップと、
上記受信ステップで受信された上記所定のネットワークインタフェースの識別子を、上記通信相手となる他の通信装置との接続要求を行う上記アプリケーションソフトウエアプログラムに通知する通信ステップと
を含む通信処理をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、通信装置、通信方法、又はプログラムに関する。
【背景技術】
【０００２】
近年、インターネットによる世界規模で行われる大規模な学術活動（所謂e-Science）の普及から、非常に広帯域なデータの通信を必要とするアプリケーションソフトウエアプログラム（以下、適宜、アプリケーションソフトウエアと称する）の需要が高まっている。
【０００３】
このようなアプリケーションソフトウエアを実行し、データ通信を行う通信装置としての端末装置については、その演算機能を司るＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）のクロック周波数の限界から、単一のＣＰＵでなく、複数のＣＰＵを用い、その複数のＣＰＵによる並列処理により演算性能を高める構成が主流となっている。
【０００４】
他の端末装置との間でデータ通信を行う際には、端末装置内において、演算を行うＣＰＵ、データを記憶するメモリ、及び他の端末装置とのデータの送受信を行うネットワークインタフェース（以下、ネットワークＩ／Ｆと記載する）の間でデータの受け渡しが頻繁に行われる。ＣＰＵ、メモリ、ネットワークＩ／Ｆ等の構成要素はそれぞれ異なる形式のバスに接続されていることから、この構成要素間のデータの受け渡しは、異なるバス間のデータ転送を担うＭＣＨ（Ｍｅｍｏｒｙ  Ｃｏｎｔｒｏｌｌｅｒ  Ｈｕｂ）やＩＣＨ（Ｉ／ｏ  Ｃｏｎｔｒｏｌｌｅｒ  Ｈｕｂ）を介して行われる。
【０００５】
しかしながらＣＰＵの数を増やしても、その複数のＣＰＵの全てが単一のＭＣＨやＩＣＨを使用する構成では、ＭＣＨやＩＣＨの性能がボトルネックとなり、構成要素間で単位時間あたりに受け渡しできるデータ量が制限され、演算性能を十分高めることができない。そこでＣＰＵだけでなくＭＣＨ、ＩＣＨ、メモリ、ネットワークＩ／Ｆが複数個設けられている構成が主流となりつつある。この構成は、ＮＵＭＡ（Ｎｏｎ−Ｕｎｉｆｏｒｍ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）構成と呼ばれる。このＮＵＭＡ構成により、ＭＣＨやＩＣＨの性能によるボトルネックを解消することができる。
【０００６】
図２３は、ＮＵＭＡ構成を有する端末装置５０１の構成例を示すブロック図である。端末装置５０１には、４個のＣＰＵ５１１−１，５１１−２，５１１−３，５１１−４（以下、個々に区別する必要がない場合、単に、ＣＰＵ５１１と称する。他の場合においても同様である）、４個のメモリ５１２−１，５１２−２，５１２−３，５１２−４、４個のＭＣＨ５１３−１，５１３−２，５１３−３，５１３−４、２個のＩＣＨ５１４−１，５１４−２、及び２個のネットワークＩ／Ｆ５１５−１，５１５−２が設けられている。
【０００７】
このようにＣＰＵ５１１の他に、メモリ５１２、ＭＣＨ５１３、ＩＣＨ５１４、及びネットワークＩ／Ｆ５１５も複数設けることにより、全てのＣＰＵ５１１が単一のＭＣＨ５１３やＩＣＨ５１４を使用するようなことはないので、ＭＣＨ５１３やＩＣＨ５１４の性能によるボトルネックを解消することができる。
【０００８】
ところでこのように、通信装置としての端末装置の構成要素をそれぞれ複数用いることで、広帯域なデータ通信を行うことが可能となる。しかしながらこれら複数の構成要素の扱い方によっては、その帯域が制限される場合がある。
【０００９】
例えば図２４に示すように、ネットワークＩ／Ｆ５１５−１を用いてデータ通信を行うアプリケーションソフトウエアｐ５２１に対して、ＣＰＵ５１１−４とメモリ５１２−２が割り当てられると、ＣＰＵ５１１−４、メモリ５１２−２及びネットワークＩ／Ｆ５１５−１間のデータの受け渡しは、アプリケーションソフトウエアｐ５２１を実行するＣＰＵ５１１−４以外のＣＰＵ５１１を介して行われる。例えばメモリ５１２−２へのデータの受け渡しは、ＣＰＵ５１１−２を介して行われ、ネットワークＩ／Ｆ５１５−１へのデータの受け渡しは、ＣＰＵ５１１−１及びＣＰＵ５１１−３を介して行われる。このように、データの受け渡しに、他のＣＰＵ５１１が関与すると、データ受け渡しが完了するまでの遅延が大きくなることから、データ通信の処理に時間を要し、結果的に送受信可能なデータの帯域が制限される。
【００１０】
そこで、Ｍｕｌｔｉ−ｒａｉｌと呼ばれる手法が提案されている（非特許文献１）。この方法によれば、アプリケーションソフトウエア毎に、構成要素間のデータの受け渡しの遅延が小さくなる構成要素の組が割り当てられる。例えば図２５に示すように、ネットワークＩ／Ｆ５１５−１を用いてデータ通信を行うアプリケーションソフトウエアｐ５２１−１に対しては、ネットワークＩ／Ｆ５１５−１から最も近いＣＰＵ５１１−１と、そのＣＰＵ５１１−１から最も近いメモリ５１２−１が割り当てられる。またネットワークＩ／Ｆ５１５−２を用いてデータ通信を行うアプリケーションソフトウエアｐ５２１−２に対しては、ネットワークＩ／Ｆ５１５−２から最も近いＣＰＵ５１１−２と、そのＣＰＵ５１１−２から最も近いメモリ５１２−２が割り当てられる。
【００１１】
【非特許文献１】Vishwanath，Ｖ．，Shimizu，T．，Takizawa，M．，Obana，K.and Leigh, J．“Towards Terabit／s Systems：Performance Evaluation of Ｍｕｌｔｉ-Rail Systems,”High-Speed NetworksWorkshop,2007.
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながらアプリケーションソフトウエアが用いるネットワークＩ／Ｆは、通常、アプリケーションソフトウエアによって独自に決定される。このように用いるネットワークＩ／Ｆがアプリケーションソフトウエアによって独自に決定されると、複数のアプリケーションソフトウエアが同じネットワークＩ／Ｆを使用する場合があり（即ち競合する場合があり）、ネットワークＩ／Ｆの性能によっては通信に使用できる帯域が制限されることがある。上述したＭｕｌｔｉ−ｒａｉｌの手法は、アプリケーションソフトウエアによって独自に決められたネットワークＩ／Ｆに応じてＣＰＵ及びメモリの割り当てを行うものであり、アプリケーションソフトウエアで用いられるネットワークＩ／Ｆの競合を排除することはできない。
【００１３】
本発明は、このような状況に鑑みてなされたものであり、特定のネットワークＩ／Ｆに通信データが集中し、データの帯域が制限されることを防止し、広帯域なデータ通信が可能となるようにするものである。
【課題を解決するための手段】
【００１４】
本発明の一側面の通信システムは、複数のネットワークインタフェースを搭載した通信装置であって、複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムの実行が可能な第１の通信装置と第２の通信装置からなる通信システムにおいて、第１の通信装置は、通信相手となる第２の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、第１の通信装置において使用されていないネットワークインタフェースの識別子を、第２の通信装置に送信する第１の送信手段と、第２の通信装置から送信されてくる、第１の送信手段により送信された第１の通信装置において使用されていないネットワークインタフェースの識別子の中から選択された所定のネットワークインタフェースの識別子を受信する第１の受信手段と、第１の受信手段により受信された所定のネットワークインタフェースの識別子を、第２の通信装置との接続要求を行うアプリケーションソフトウエアプログラムに通知する第１の通信手段とを有し、第２の通信装置は、第１の通信装置の第１の送信手段により送信されたアプリケーションソフトウエアプログラムの識別子と、第１の通信装置において使用されていないネットワークインタフェースの識別子を受信する第２の受信手段と、第２の受信手段により受信されたアプリケーションソフトウエアプログラムの識別子と同じ識別子を有する第２の通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、第２の受信手段により受信された第１の通信装置において使用されていないネットワークインタフェースの識別子、及び第２の通信装置において使用されていないネットワークインタフェースの識別子に基づいて、同じ識別子を有し、第１の通信装置及び第２の通信装置のいずれにおいても使用されていないネットワークインタフェースを選択する選択手段と、選択手段により選択されたネットワークインタフェースの識別子を第１の通信装置に送信する第２の送信手段と、選択手段により選択されたネットワークインタフェースを、第２の通信装置の待ち受け状態にあるアプリケーションソフトウエアプログラムに通知する第２の通知手段とを有することを特徴する。
【００１５】
第１の通信装置の第１の送信手段は、第１の通信装置において使用されていないネットワークインタフェースの識別子に代えて、第１の通信装置のネットワークインタフェースの帯域使用量を、通信相手となる第２の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子とともに、第２の通信装置に送信し、第２の通信装置の第２の受信手段は、第１の通信装置の第１の送信手段により送信されたアプリケーションソフトウエアプログラムの識別子と、第１の通信装置のネットワークインタフェースの帯域使用量を受信し、選択手段は、第２の受信手段により受信されたアプリケーションソフトウエアプログラムの識別子と同じ識別子を有する第２の通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、第２の受信手段により受信された第１の通信装置のネットワークインタフェースの帯域使用量と、第２の通信装置のネットワークインタフェースの帯域使用量に基づいて、同一の識別子を有し、帯域使用量の少ないネットワークインタフェースを選択することができる。
【００１６】
本発明の第１の側面の通信装置は、複数のネットワークインタフェースを搭載した通信装置であって、複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムの実行が可能な通信装置において、通信相手となる他の通信装置から送信されてくる、通信相手となる他の通信装置で通信要求を行うアプリケーションソフトウエアプログラムの識別子と、通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子を受信する受信手段と、受信手段により受信されたアプリケーションソフトウエアプログラムの識別子と同じ識別子を有する通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、受信手段により受信された通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子、及び通信装置において使用されていないネットワークインタフェースの識別子に基づいて、同じ識別子を有し、通信相手となる他の通信装置及び通信装置のいずれにおいても使用されていないネットワークインタフェースを選択する選択手段と、選択手段により選択されたネットワークインタフェースの識別子を通信相手となる他の通信装置に送信する送信手段と、選択手段により選択されたネットワークインタフェースを、通信装置の待ち受け状態にあるアプリケーションソフトウエアプログラムに通知する通知手段とを有することを特徴とする。
【００１７】
受信手段は、通信相手となる他の通信装置から送信されてくる、通信相手となる他の通信装置で通信要求を行うアプリケーションソフトウエアプログラムの識別子と、通信相手となる他の通信装置のネットワークインタフェースの帯域使用量を受信し、選択手段は、受信手段により受信されたアプリケーションソフトウエアプログラムの識別子と同じ識別子を有する通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、受信手段により受信された通信相手となる他の通信装置のネットワークインタフェースの帯域使用量と、通信装置のネットワークインタフェースの帯域使用量に基づいて、同一の識別子を有し、帯域使用量の少ないネットワークインタフェースを選択することができる。
【００１８】
本発明の第１の側面の通信方法は、複数のネットワークインタフェースを搭載した通信装置であって、複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムの実行が可能な通信装置の通信方法において、通信相手となる他の通信装置から送信されてくる、通信相手となる他の通信装置で通信要求を行うアプリケーションソフトウエアプログラムの識別子と、通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子を受信する受信ステップと、受信ステップで受信されたアプリケーションソフトウエアプログラムの識別子と同じ識別子を有する通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、受信ステップで受信された通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子、及び通信装置において使用されていないネットワークインタフェースの識別子に基づいて、同じ識別子を有し、通信相手となる他の通信装置及び通信装置のいずれにおいても使用されていないネットワークインタフェースを選択する選択ステップと、選択ステップで選択されたネットワークインタフェースの識別子を通信相手となる他の通信装置に送信する送信ステップと、選択ステップで選択されたネットワークインタフェースを、通信装置の待ち受け状態にあるアプリケーションソフトウエアプログラムに通知する通知ステップとを含むことを特徴とする。
【００１９】
本発明の第１の側面のプログラムは、通信装置に搭載された複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムによる通信処理をコンピュータに実行させるプログラムであって、通信相手となる他の通信装置から送信されてくる、通信相手となる他の通信装置で通信要求を行うアプリケーションソフトウエアプログラムの識別子と、通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子を受信する受信ステップと、受信ステップで受信されたアプリケーションソフトウエアプログラムの識別子と同じ識別子を有する通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、受信ステップで受信された通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子、及び通信装置において使用されていないネットワークインタフェースの識別子に基づいて、同じ識別子を有し、通信相手となる他の通信装置及び通信装置のいずれにおいても使用されていないネットワークインタフェースを選択する選択ステップと、選択ステップで選択されたネットワークインタフェースの識別子を通信相手となる他の通信装置に送信する送信ステップと、選択ステップで選択されたネットワークインタフェースを、通信装置の待ち受け状態にあるアプリケーションソフトウエアプログラムに通知する通知ステップとを含む通信処理をコンピュータに実行させることを特徴とする。
【００２０】
本発明の第１の側面の通信装置、通信方法、又はプログラムにおいては、通信相手となる他の通信装置から送信されてくる、通信相手となる他の通信装置で通信要求を行うアプリケーションソフトウエアプログラムの識別子と、通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子が受信され、受信されたアプリケーションソフトウエアプログラムの識別子と同じ識別子を有する通信装置のアプリケーションソフトウエアプログラムが通信可能な待ち受け状態となっている場合、通信相手となる他の通信装置において使用されていないネットワークインタフェースの識別子、及び通信装置において使用されていないネットワークインタフェースの識別子に基づいて、同じ識別子を有し、通信相手となる他の通信装置及び通信装置のいずれにおいても使用されていないネットワークインタフェースが選択され、選択されたネットワークインタフェースの識別子が通信相手となる他の通信装置に送信され、選択されたネットワークインタフェースが、通信装置の待ち受け状態にあるアプリケーションソフトウエアプログラムに通知される。
【００２１】
本発明の第２の側面の通信装置は、複数のネットワークインタフェースを搭載した通信装置であって、複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムの実行が可能な通信装置であって、通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、通信装置において使用されていないネットワークインタフェースの識別子を、通信相手となる他の通信装置に送信する送信手段と、通信相手となる他の通信装置から送信されてくる、送信手段により送信された通信装置において使用されていないネットワークインタフェースの識別子の中から選択された所定のネットワークインタフェースの識別子を受信する受信手段と、受信手段により受信された所定のネットワークインタフェースの識別子を、通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムに通知する通信手段とを有することを特徴とする。
【００２２】
送信手段は、通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、通信装置のネットワークインタフェースの帯域使用量を送信することを特徴とする。
【００２３】
本発明の第２の側面の通信方法は、複数のネットワークインタフェースを搭載した通信装置であって、複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムの実行が可能な通信装置の通信方法であって、通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、通信装置において使用されていないネットワークインタフェースの識別子を、通信相手となる他の通信装置に送信する送信ステップと、通信相手となる他の通信装置から送信されてくる、送信ステップで送信された通信装置において使用されていないネットワークインタフェースの識別子の中から選択された所定のネットワークインタフェースの識別子を受信する受信ステップと、受信ステップで受信された所定のネットワークインタフェースの識別子を、通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムに通知する通信ステップとを有することを特徴とする。
【００２４】
本発明の第２の側面のプログラムは、通信装置に搭載された複数のネットワークインタフェースの中から選択された所定のネットワークインタフェースを用いてデータ通信を行うアプリケーションソフトウエアプログラムによる通信処理をコンピュータに実行させるプログラムであって、通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、通信装置において使用されていないネットワークインタフェースの識別子を、通信相手となる他の通信装置に送信する送信ステップと、通信相手となる他の通信装置から送信されてくる、送信ステップで送信された通信装置において使用されていないネットワークインタフェースの識別子の中から選択された所定のネットワークインタフェースの識別子を受信する受信ステップと、受信ステップで受信された所定のネットワークインタフェースの識別子を、通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムに通知する通信ステップとを含む通信処理をコンピュータに実行させることを特徴とする。
【００２５】
本発明の第２の側面の通信装置、通信方法、又はプログラムにおいては、通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムの識別子と、通信装置において使用されていないネットワークインタフェースの識別子が、通信相手となる他の通信装置に送信され、通信相手となる他の通信装置から送信されてくる、送信された通信装置において使用されていないネットワークインタフェースの識別子の中から選択された所定のネットワークインタフェースの識別子が受信され、受信された所定のネットワークインタフェースの識別子が、通信相手となる他の通信装置との接続要求を行うアプリケーションソフトウエアプログラムに通知される。
【発明の効果】
【００２６】
本発明によれば、データの帯域が制限されることを防止し、広帯域なデータ通信が可能となる。
【発明を実施するための最良の形態】
【００２７】
以下、図面を参照して、本発明の実施の形態について説明する。
【００２８】
図１は、本発明を適用した通信システムの構成例を示す図である。この通信システムにおいては、端末装置１１Ａと端末装置１１Ｂは、ネットワーク１２を介してデータ通信を行う通信装置である。端末装置１１Ａと端末装置１１Ｂはまた、複数のＣＰＵ、メモリ、ＭＣＨ、ＩＣＨ、ネットワークＩ／ＦからなるＮＵＭＡ構成を有している。
【００２９】
端末装置１１Ａと端末装置１１Ｂのそれぞれには、複数のデータ通信用のアプリケーションソフトウエアがインストールされており、アプリケーションソフトウエアで用いられる構成要素は、Ｍｕｌｔｉ−ｒａｉｌの方法により、アプリケーションソフトウエア毎に、用いられるネットワークＩ／Ｆに応じて割り当てられる。アプリケーションソフトウエアが用いるネットワークＩ／Ｆは、後述するように、複数のアプリケーションソフトウエアによって競合しないように決定される。
【００３０】
ネットワーク１２は、中継装置１３を有して構成されている。ここで中継装置１３は、例えば光スイッチ、Ｅｔｈｅｒｎｅｔ（登録商標）スイッチ、ＩＰルータ等である。なお図１には、１個の中継装置１３が示されているが、２個以上の中継装置１３でネットワーク１２を構成することも可能である。なお中継装置１３を介さずに、２台の端末装置１１Ａ，１１Ｂが直接接続されるようにすることもできる。
【００３１】
図２は、端末装置１１Ａのハードウエアの構成例を示すブロック図である。端末装置１１Ａには、４個のＣＰＵ２１−１Ａ，２１−２Ａ，２１−３Ａ，２１−４Ａ（以下、個々に区別する必要がない場合、ＣＰＵ２１Ａと称する。他の場合においても同様である）、４個のメモリ２２−１Ａ，２２−２Ａ，２２−３Ａ，２２−４Ａ、４個のＭＣＨ２３−１Ａ，２３−２Ａ，２３−３Ａ，２３−４Ａ、２個のＩＣＨ２４−１Ａ，２４−２Ａ、及び３個のネットワークＩ／Ｆ２５−１Ａ，２５−２Ａ，２５−３Ａが設けられている。
【００３２】
図３は、端末装置１１Ｂのハードウエアの構成例を示すブロック図である。端末装置１１Ｂも、端末装置１１Ａと同様に、４個のＣＰＵ２１−１Ｂ，２１−２Ｂ，２１−３Ｂ，２１−４Ｂ（以下、個々に区別する必要がない場合、ＣＰＵ２１Ｂと称する。他の場合においても同様である）、４個のメモリ２２−１Ｂ，２２−２Ｂ，２２−３Ｂ，２２−４Ｂ、４個のＭＣＨ２３−１Ｂ，２３−２Ｂ，２３−３Ｂ，２３−４Ｂ、２個のＩＣＨ２４−１Ｂ，２４−２Ｂ、及び３個のネットワークＩ／Ｆ２５−１Ｂ，２５−２Ｂ，２５−３Ｂが設けられている。
【００３３】
図４は、通信処理を実行するための端末装置１１Ａ，１１Ｂの機能的構成例を示す図である。
【００３４】
端末装置１１Ａの通信機能部５１−１Ａと端末装置１１Ｂの通信機能部５１−１Ｂは、同じアプリケーションＩＤを有するアプリケーションソフトウエアｐ５１−１Ａとｐ５１−１Ｂが実行されることにより実現される機能であって、ネットワーク１２を介してデータ通信を行う。ここでアプリケーションＩＤとは、アプリケーションソフトウエアを識別する情報であり、数字や文字列等が用いられる。ここではアプリケーションソフトウエアｐ５１−１Ａとｐ５１−１ＢのアプリケーションＩＤを“５１−１”とする。
【００３５】
端末装置１１Ａの通信機能部５１−２Ａと端末装置１１Ｂの通信機能部５１−２Ｂは、同じアプリケーションＩＤ”５１−２”を有するアプリケーションソフトウエアｐ５１−２Ａとｐ５１−２Ｂが実行されることにより実現される機能であって、ネットワーク１２を介してデータ通信を行う。さらに端末装置１１Ａの通信機能部５１−３Ａと端末装置１１Ｂの通信機能部５１−３Ｂは、同じアプリケーションＩＤ（”５１−３”）を有するアプリケーションソフトウエアｐ５１−３Ａとｐ５１−３Ｂが実行されることにより実現される機能であって、ネットワーク１２を介してデータ通信を行う。
【００３６】
またこの端末装置１１Ａの通信機能部５１Ａと端末装置１１Ｂの通信機能部５１Ｂとの通信は、対応するネットワークＩ／Ｆ２５Ａと２５Ｂを介して実行される。即ち例えば端末装置１１ＡのあるネットワークＩ／Ｆ２５Ａから出力されたデータは、ネットワーク１２を介して端末装置１１Ｂにおける対応するネットワークＩ／Ｆ２５Ｂに送達される。
【００３７】
この例では、端末装置１１ＡのネットワークＩ／Ｆ２５−１Ａと端末装置１１ＢのネットワークＩ／Ｆ２５−１Ｂ、端末装置１１ＡのネットワークＩ／Ｆ２５−２Ａと端末装置１１ＢのネットワークＩ／Ｆ２５−２Ｂ、及び端末装置１１ＡのネットワークＩ／Ｆ２５−３Ａと端末装置１１ＢのネットワークＩ／Ｆ２５−３Ｂが、それぞれ対応するものとし、それらは、それぞれ、同じ識別子を有している。
【００３８】
なおあるネットワークＩ／Ｆ２５Ａから出力されたデータが、ネットワーク１２を介して通信相手における対応するネットワークＩ／Ｆ２５Ｂに送達されるために、各ネットワークＩ／Ｆ２５Ａ，２５Ｂに対する入出力信号は、それぞれ識別可能なものとなっている。例えば、光通信の場合にはネットワークＩ／Ｆ２５Ａ，２５Ｂ毎に異なる波長を用いたり、Ｅｔｈｅｒｎｅｔ（登録商標）を用いる場合は異なるＶＬＡＮ-ＩＤを用いたり、ＩＰで通信する場合は異なるＩＰネットワークアドレスを用いたりすることで識別が可能となる。ここでの、波長、ＶＬＡＮ-ＩＤ、ＩＰネットワークアドレス等の識別するための情報が、ネットワークＩ／Ｆ２５Ａ，２５Ｂの識別子となる。
【００３９】
また以上において、端末装置１１Ａ及び端末装置１１Ｂの、同じ識別子を有するネットワークＩ／Ｆ２５−１ＡとネットワークＩ／Ｆ２５−１Ｂ、ネットワークＩ／Ｆ２５−２ＡとネットワークＩ／Ｆ２５−２Ｂ、及びネットワークＩ／Ｆ２５−３ＡとネットワークＩ／Ｆ２５−３Ｂを、個々に区別する必要がない場合、ネットワークＩ／Ｆ２５−１、ネットワークＩ／Ｆ２５−２、ネットワークＩ／Ｆ２５−３と称する。またネットワークＩ／Ｆ２５−１、ネットワークＩ／Ｆ２５−２、ネットワークＩ／Ｆ２５−３を、個々に区別する必要がない場合、ネットワークＩ／Ｆ２５と称する。
【００４０】
端末装置１１Ａのリソース管理機能部５２Ａは、所定のアプリケーションソフトウエアプログラムが実行されることにより実現される機能である。端末装置１１Ｂのリソース管理機能部５２Ｂは、所定のアプリケーションソフトウエアプログラムが実行されることにより実現される機能である。端末装置１１Ａのリソース管理機能部５２Ａと端末装置１１Ｂのリソース管理機能部５２Ｂは、後述するように、相互に制御情報を授受し、その制御情報に基づいて、通信機能部５１Ａ又は通信機能部５１Ｂで用いられるネットワークＩ／Ｆ２５Ａ又はネットワークＩ／Ｆ２５Ｂを選択する。
【００４１】
なおこの例の場合、端末装置１１ＡのネットワークＩ／Ｆ２５−１Ａと端末装置１１ＢのネットワークＩ／Ｆ２５−１Ｂは、端末装置１１Ａのリソース管理機能部５２Ａと端末装置１１Ｂのリソース管理機能部５２Ｂの間の制御情報の送受信専用に割り当てられているものとする。端末装置１１ＡのネットワークＩ／Ｆ２５−２Ａ，２５−３Ａ及び端末装置１１ＢのネットワークＩ／Ｆ２５−２Ｂ，２５−３Ｂは、通信機能部５１Ａ又は通信機能部５１Ｂによるデータ通信に利用されるものとする。なおこのネットワークＩ／Ｆ２５Ａと２５Ｂの利用形態は、一例であり、例えば制御情報の送受信専用に利用されるものとしたネットワークＩ／Ｆ２５−１を、通信機能部５１が利用できるようにすることもできる。
【００４２】
図５は、端末装置１１Ａと端末装置１１Ｂのデータ通信の例を説明するシーケンス図である。このシーケンス図には、端末装置１１Ａ及び端末装置１１Ｂにおいてデータ通信が行われていない状態から、端末装置１１Ａの通信機能部５１−１Ａと端末装置１１Ｂの通信機能部５１−１Ｂとの通信が開始される場合の手順が示されている。
【００４３】
初めに、端末装置１１Ａにおいて、アプリケーションソフトウエアｐ５１−１Ａが起動して通信機能部５１−１Ａが動作可能になり（即ちアプリケーションソフトウエアｐ５１−１Ａによる通信が可能な状態となり）、端末装置１１Ｂにおいて、アプリケーションソフトウエアｐ５１−１Ｂが起動して通信機能部５１−１Ｂが動作可能になる（即ちアプリケーションソフトウエアｐ５１−１Ｂによる通信が可能な状態となる）。
【００４４】
動作可能になった端末装置１１Ｂの通信機能部５１−１Ｂは、リソース管理機能部５２Ｂに対して、アプリケーションソフトウエアｐ５１−１ＢのアプリケーションＩＤ”５１−１”を送信して、通信相手となる端末装置１１Ａからの接続に対する待ち受け要求を行う（Ｓ１０１）。リソース管理機能部５２Ｂは、アプリケーションＩＤ用のリストにアプリケーションＩＤ“５１−１”を記憶する。
【００４５】
一方動作可能になった端末装置１１Ａの通信機能部５１−１Ａは、リソース管理機能部５２Ａに対し、自分のアプリケーションＩＤ“５１−１”を送信して、端末装置１１Ｂへの接続要求を行う（Ｓ１０２）。
【００４６】
通信機能部５１−１Ａにより接続要求が行われると（Ｓ１０２）、リソース管理機能部５２Ａは、アプリケーションＩＤ“５１−１”と、端末装置１１Ａで現在使用していないネットワークＩ／Ｆ２５Ａの識別子のリスト（以下、未使用リストと称する）を、制御情報専用のネットワークＩ／Ｆ２５−１Ａ及び端末装置１１ＢのネットワークＩ／Ｆ２５−１Ｂを介してリソース管理機能部５２Ｂに送信し、接続要求を行う（Ｓ１０３）。
【００４７】
図６は、端末装置１１Ａと端末装置１１Ｂのいまの場合の通信状態を示す図である。このようにいまの場合、端末装置１１ＡにおいてはネットワークＩ／Ｆ２５−１Ａ以外は使用されないので、未使用リストには、ネットワークＩ／Ｆ２５−２Ａ，２５−３Ａの識別子が含まれる。
【００４８】
端末装置１１Ａのリソース管理機能部５２Ａにより接続要求が行われると（Ｓ１０３）、端末装置１１Ｂのリソース管理機能部５２Ｂは、まず、その接続要求に含まれるアプリケーションＩＤ“５１−１”が自分が記憶しているアプリケーションＩＤ用のリストに含まれており、アプリケーションＩＤ“５１−１”の通信機能部５１−１Ｂが待ち受け状態であるか否かを確認する（即ちアプリケーションソフトウエアｐ５１−１Ｂによる通信が可能な状態であるか否かを確認する）。いまの場合、上述したように端末装置１１Ｂのリソース管理機能部５２Ｂは、アプリケーションＩＤ“５１−１”を記憶しているので、アプリケーションＩＤ“５１−１”の通信機能部５１−１Ｂが待ち受け状態であることを確認する（即ちアプリケーションソフトウエアｐ５１−１Ｂによる通信が可能な状態であることを確認する）。
【００４９】
次に、端末装置１１Ｂのリソース管理機能部５２Ｂは、端末装置１１Ａのリソース管理機能部５２Ａからの接続要求（Ｓ１０３）に含まれる未使用リストに示されている端末装置１１Ａにおいて使用されていないネットワークＩ／Ｆ２５Ａの識別子と、端末装置１１Ｂにおいて使用されていないネットワークＩ／Ｆ２５Ｂの識別子を比較し、同一の識別子を有し、端末装置１１Ａと１１Ｂのいずれにおいても未使用であるネットワークＩ／Ｆ２５Ａと２５Ｂの組を一つ選択する。いまの場合、図６に示したように、ネットワークＩ／Ｆ２５−２Ａと２５−２Ｂ、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｂが、同一の識別子を有し、端末装置１１Ａと１１Ｂのいずれにおいても未使用となっているネットワークＩ／Ｆ２５である。ここでは、その中からネットワークＩ／Ｆ２５−２Ａと２５−２Ｂの組が選択されるものとする。
【００５０】
端末装置１１Ｂのリソース管理機能部５２Ｂは、選択したネットワークＩ／Ｆ２５−２Ａと２５−２Ｂの識別子を、ネットワークＩ／Ｆ２５−１Ｂ及び端末装置１１ＡのネットワークＩ／Ｆ２５−１Ａを介してリソース管理機能部５２Ａに通知する（Ｓ１０４）。
【００５１】
端末装置１１Ｂのソース管理機能部５２ＢからのネットワークＩ／Ｆ２５−２Ａと２５−２Ｂの識別子を受信すると、端末装置１１Ａのリソース管理機能部５２Ａは、接続要求を行った通信機能部５１−１Ａに対し、使用するネットワークＩ／Ｆ２５−２Ａの識別子を通知する（Ｓ１０５）。一方端末装置１１Ｂのリソース管理機能部５２Ｂも、選択したネットワークＩ／Ｆ２５−２Ａと２５−２Ｂの識別子を通知した後、待ち受け要求を行った通信機能部５１−１Ｂに対し、使用するネットワークＩ／Ｆ２５−２Ｂの識別子を通知する（Ｓ１０６）。
【００５２】
このように端末装置１１Ａの通信機能部５１−１Ａと端末装置１１Ｂの通信機能部５１−１Ｂに対し、使用するネットワークＩ／Ｆ２５−２Ａと２５−２Ｂが通知されると、上述したＭｕｌｔｉ−ｒａｉｌの手法により、通信機能部５１−１Ａと５１−１Ｂに、データの受け渡しの遅延が小さくなる構成要素（例えば、ＣＰＵ２１やメモリ２２）の組が割り当てられる。
【００５３】
そしてこのように構成要素が割り当てられると通信機能部５１−１Ａと５１−１Ｂは、割り当てられた構成要素と協働して動作し、指定されたネットワークＩ／Ｆ２５−２Ａと２５−２Ｂを用いた通信を行う。
【００５４】
図７は、図５のシーケンス図に示した処理後の端末装置１１Ａと端末装置１１Ｂの通信状態を示す図である。このように図５のシーケンス図に示した処理により、ネットワークＩ／Ｆ２５−２Ａと２５−２Ｂを介する通信機能部５１−１Ａと通信機能部５１−１Ｂとの通信が行われるようになる。
【００５５】
図８は、端末装置１１Ａと端末装置１１Ｂのデータ通信の他の例を説明するシーケンス図である。このシーケンス図には、図５のシーケンス図に示した処理により、図７に示したように、端末装置１１ＡのネットワークＩ／Ｆ２５−２Ａと端末装置１１ＢのネットワークＩ／Ｆ２５−２Ｂを介する通信機能部５１−１Ａと通信機能部５１−１Ｂとの通信が行われている状態において、通信機能部５１−２Ａと５１−２Ｂの通信が新たに開始される場合の手順が示されている。
【００５６】
初めに、端末装置１１Ａにおいて、アプリケーションソフトウエアｐ５１−２Ａが起動して通信機能部５１−２Ａが動作可能になり（即ちアプリケーションソフトウエアｐ５１−２Ａによる通信が可能な状態となり）、端末装置１１Ｂにおいて、アプリケーションソフトウエアｐ５１−２Ｂが起動して通信機能部５１−２Ｂが動作可能になる（即ちアプリケーションソフトウエアｐ５１−２Ｂによる通信が可能な状態となる）。
【００５７】
動作可能になった端末装置１１Ｂの通信機能部５１−２Ｂは、リソース管理機能部５２Ｂに対して、アプリケーションソフトウエアｐ５１−２ＢのアプリケーションＩＤ”５１−２”を送信して、通信相手となる端末装置１１Ａからの接続に対する待ち受け要求を行う（Ｓ２０１）。リソース管理機能部５２Ｂは、アプリケーションＩＤ用のリストにアプリケーションＩＤ“５１−２”を記憶する。
【００５８】
一方動作可能になった端末装置１１Ａの通信機能部５１−２Ａは、リソース管理機能部５２Ａに対し、自分のアプリケーションＩＤ“５１−２”を送信して、端末装置１１Ｂへの接続要求を行う（Ｓ２０２）。
【００５９】
通信機能部５１−２Ａにより接続要求が行われると（Ｓ２０２）、リソース管理機能部５２Ａは、アプリケーションＩＤ“５１−２”と端末装置１１Ａの未使用リストを、制御情報専用のネットワークＩ／Ｆ２５−１Ａ及び端末装置１１ＢのネットワークＩ／Ｆ２５−１Ｂを介してリソース管理機能部５２Ｂに送信し、接続要求を行う（Ｓ２０３）。いまの場合、端末装置１１ＡにおいてはネットワークＩ／Ｆ２５−１Ａの他、ネットワークＩ／Ｆ２５−２Ａも使用されているので（図７）、未使用リストには、ネットワークＩ／Ｆ２５−３Ａの識別子が含まれる。
【００６０】
端末装置１１Ａのリソース管理機能部５２Ａにより接続要求が行われると（Ｓ２０３）、端末装置１１Ｂのリソース管理機能部５２Ｂは、まず、その接続要求に含まれるアプリケーションＩＤ“５１−２”が自分が記憶しているアプリケーションＩＤ用のリストに含まれており、アプリケーションＩＤ“５１−２”の通信機能部５１−２Ｂが待ち受け状態であるか否かを確認する（即ちアプリケーションソフトウエアｐ５１−２Ｂによる通信が可能な状態であるか否かを確認する）。いまの場合、上述したように端末装置１１Ｂのリソース管理機能部５２Ｂは、アプリケーションＩＤ“５１−２”を記憶しているので、アプリケーションＩＤ“５１−２”の通信機能部５１−２Ｂが待ち受け状態であることを確認する（即ちアプリケーションソフトウエアｐ５１−２Ｂによる通信が可能な状態であることを確認する）。
【００６１】
次に、端末装置１１Ｂのリソース管理機能部５２Ｂは、端末装置１１Ａのリソース管理機能部５２Ａからの接続要求（Ｓ２０３）に含まれる未使用リストに示されている端末装置１１Ａにおいて使用されていないネットワークＩ／Ｆ２５Ａの識別子と、端末装置１１Ｂにおいて使用されていないネットワークＩ／Ｆ２５Ｂの識別子を比較し、同一の識別子を有し、端末装置１１Ａと１１Ｂのいずれにおいても未使用であるネットワークＩ／Ｆ２５Ａと２５Ｂの組を一つ選択する。いまの場合、図７に示したように、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｂが、同一の識別子を有し、端末装置１１Ａと１１Ｂのいずれにおいても未使用となっているネットワークＩ／Ｆ２５であるので、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｂの組が選択される。
【００６２】
端末装置１１Ｂのリソース管理機能部５２Ｂは、選択したネットワークＩ／Ｆ２５−３Ａと２５−３Ｂの識別子を、ネットワークＩ／Ｆ２５−１Ｂ及び端末装置１１ＡのネットワークＩ／Ｆ２５−１Ａを介してリソース管理機能部５２Ａに通知する（Ｓ２０４）。
【００６３】
端末装置１１Ｂのリソース管理機能部５２ＢからのネットワークＩ／Ｆ２５−３Ａと２５−３Ｂの識別子を受信すると、端末装置１１Ａのリソース管理機能部５２Ａは、接続要求を行った通信機能部５１−２Ａに対し、使用するネットワークＩ／Ｆ２５−３Ａの識別子を通知する（Ｓ２０５）。一方端末装置１１Ｂのリソース管理機能部５２Ｂも、選択したネットワークＩ／Ｆ２５−３Ａと２５−３Ｂの識別子を通知した後、待ち受け要求を行った通信機能部５１−２Ｂに対し、使用するネットワークＩ／Ｆ２５−３Ｂの識別子を通知する（Ｓ２０６）。
【００６４】
このように端末装置１１Ａの通信機能部５１−２Ａと端末装置１１Ｂの通信機能部５１−２Ｂに対し、使用するネットワークＩ／Ｆ２５−３Ａと２５−３Ｂが通知されると、上述したＭｕｌｔｉ−ｒａｉｌの手法により、通信機能部５１−２Ａと５１−２Ｂに、データの受け渡しの遅延が小さくなる構成要素（例えば、ＣＰＵ２１やメモリ２２）の組が割り当てられる。
【００６５】
そしてこのように構成要素が割り当てられると通信機能部５１−２Ａと５１−２Ｂは、割り当てられた構成要素と協働して動作し、指定されたネットワークＩ／Ｆ２５−３Ａと２５−３Ｂを用いた通信を行う。
【００６６】
図９は、図８のシーケンス図に示した処理後の端末装置１１Ａと端末装置１１Ｂの通信状態を示す図である。このように図８のシーケンス図に示した処理により、ネットワークＩ／Ｆ２５−２Ａと２５−２Ｂを介する通信機能部５１−１Ａと通信機能部５１−１Ｂとの通信と、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｂを介する通信機能部５１−２Ａと通信機能部５１−２Ｂとの通信が行われるようになる。
【００６７】
以上のように、端末装置１１Ａが、通信相手となる端末装置１１Ｂとの接続要求を行うアプリケーションソフトウエアｐ５１−２Ａの識別子としてのアプリケーションＩＤ”５１−２”と、端末装置１１Ａにおいて使用されていないネットワークＩ／Ｆ２５−３Ａの識別子を、通信装置１１Ｂに送信し（Ｓ２０３）、
端末装置１１Ｂが、端末装置１１Ａから送信されてきたアプリケーションＩＤ（”５１−２）と同じアプリケーションＩＤを有する端末装置１１Ｂのアプリケーションソフトウエアｐ５１−２Ｂが通信可能な状態となっている場合（Ｓ２０１）、端末装置１１Ａから送信されてきた端末装置１１Ａにおいて使用されていないネットワークＩ／Ｆ２５−３Ａの識別子、及び端末装置１１Ｂにおいて使用されていないネットワークＩ／Ｆ２５−３Ｂの識別子に基づいて、同じ識別子を有し、端末装置１１Ａ及び１１Ｂのいずれにおいても使用されていないネットワークＩ／Ｆ２５−３Ａ，２５−３Ｂを選択し、
端末装置１１Ａ及び端末装置１１Ｂにおいて、選択されたネットワークＩ／Ｆ２５−３Ａ又は２５−３Ｂが、接続要求を行ってきたアプリケーションソフトウエアｐ５１−２Ａによる通信機能部５１−２Ａに通知され、通信可能な状態にあるアプリケーションソフトウエアｐ５１−２Ｂによる通信機能部５１−２Ｂに通知されるようにしたので、
既に行われている通信機能部５１−１Ａと通信機能部５１−１Ｂとの通信に用いられているネットワークＩ／Ｆ２５−２Ａと２５−２Ｂとは異なる、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｂを用いて通信機能部５１−２Ａと通信機能部５１−２Ｂとの通信が行われるようにすることができる。その結果ネットワークＩ／Ｆ２５の競合による使用可能帯域の低下を防ぐことができる。
【００６８】
図１０は、端末装置１１Ａと端末装置１１Ｂのデータ通信の他の例を説明するシーケンス図である。このシーケンス図には、図８のシーケンス図に示した処理により、図９に示したように、ネットワークＩ／Ｆ２５−２Ａと２５−２Ｂを介する通信機能部５１−１Ａと通信機能部５１−１Ｂとの通信と、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｂを介する通信機能部５１−２Ａと通信機能部５１−２Ｂとの通信が行われている状態において、通信機能部５１−３Ａと５１−３Ｂの通信が新たに開始される場合の手順が示されている。
【００６９】
初めに、端末装置１１Ａにおいて、アプリケーションソフトウエアｐ５１−３Ａが起動して通信機能部５１−３Ａが動作可能になり（即ちアプリケーションソフトウエアｐ５１−３Ａによる通信が可能な状態となり）、端末装置１１Ｂにおいて、アプリケーションソフトウエアｐ５１−３Ｂが起動して通信機能部５１−３Ｂが動作可能になる（即ちアプリケーションソフトウエアｐ５１−３Ｂによる通信が可能な状態となる）。
【００７０】
動作可能になった端末装置１１Ｂの通信機能部５１−３Ｂは、リソース管理機能部５２Ｂに対して、アプリケーションソフトウエアｐ５１−３ＢのアプリケーションＩＤ（”５１−３”）を送信して、通信相手となる端末装置１１Ａからの接続に対する待ち受け要求を行う（Ｓ３０１）。リソース管理機能部５２Ｂは、アプリケーションＩＤ用のリストにアプリケーションＩＤ“５１−３”を記憶する。
【００７１】
一方動作可能になった端末装置１１Ａの通信機能部５１−３Ａは、リソース管理機能部５２Ａに対し、自分のアプリケーションＩＤ“５１−３”を送信して、端末装置１１Ｂへの接続要求を行う（Ｓ３０２）。
【００７２】
通信機能部５１−３Ａにより接続要求が行われると（Ｓ３０２）、リソース管理機能部５２Ａは、アプリケーションＩＤ“５１−３”と、端末装置１１Ａの各ネットワークＩ／Ｆ２５Ａの帯域使用量のリスト（以下、帯域使用量リストと称する）を、制御情報専用のネットワークＩ／Ｆ２５−１Ａと端末装置１１ＢのネットワークＩ／Ｆ２５−１Ｂを介してリソース管理機能部５２Ｂに対して送信し、接続要求を行う（Ｓ３０３）。ここでネットワークＩ／Ｆ２５Ａの帯域使用量は、端末装置１１Ａ内で実際に計測したり、各通信機能部５１Ａ又はネットワーク１２の中の中継装置１３へ問い合わせたりすることで、取得することができる。
【００７３】
端末装置１１Ａのリソース管理機能部５２Ａにより接続要求が行われると（Ｓ３０３）、端末装置１１Ｂのリソース管理機能部５２Ｂは、まず、その接続要求に含まれるアプリケーションＩＤ“５１−３”が自分が記憶しているアプリケーションＩＤ用のリストに含まれており、アプリケーションＩＤ“５１−３”の通信機能部５１−３Ｂが待ち受け状態であるか否かを確認する（即ちアプリケーションソフトウエアｐ５１−３Ｂによる通信が可能な状態であるか否かを確認する）。いまの場合、上述したように端末装置１１Ｂのリソース管理機能部５２Ｂは、アプリケーションＩＤ“５１−３”を記憶しているので、アプリケーションＩＤ“５１−３”の通信機能部５１−３Ｂが待ち受け状態であることを確認する（即ちアプリケーションソフトウエアｐ５１−３Ｂによる通信が可能な状態であることを確認する）。
【００７４】
次に、端末装置１１Ｂのリソース管理機能部５２Ｂは、端末装置１１Ａのリソース管理機能部５２Ａからの接続要求（Ｓ３０３）に含まれる帯域使用量リストに示されている端末装置１１Ａで使用されている各ネットワークＩ／Ｆ２５Ａの帯域使用量と、端末装置１１Ｂで使用されている各ネットワークＩ／Ｆ２５Ｂの帯域使用量を比較し、同一の識別子を有し、帯域使用量の少ないネットワークＩ／Ｆ２５Ａと２５Ｂの組を一つ選択する。例えば、同一の識別子を有するネットワークＩ／Ｆ２５Ａと２５Ｂの各組について、帯域使用量の和が最も小さいものが選択される。ここではネットワークＩ／Ｆ２５−３Ａと２５−３Ｂの組が選択されるものとする。なお端末装置１１ＢのネットワークＩ／Ｆ２５Ｂの帯域使用量は、端末装置１１Ｂ内で実際に計測したり、各通信機能部５１Ｂ又はネットワーク１２の中の中継装置１３へ問い合わせたりすることで、取得することができる。
【００７５】
端末装置１１Ｂのリソース管理機能部５２Ｂは、選択したネットワークＩ／Ｆ２５−３Ａと２５−３Ｂの識別子を、ネットワークＩ／Ｆ２５−１Ｂ及び端末装置１１ＡのネットワークＩ／Ｆ２５−１Ａを介してリソース管理機能部５２Ａに通知する（Ｓ３０４）。
【００７６】
端末装置１１Ｂのソース管理機能部５２ＢからのネットワークＩ／Ｆ２５−３Ａと２５−３Ｂの識別子を受信すると、端末装置１１Ａのリソース管理機能部５２Ａは、接続要求を行った通信機能部５１−３Ａに対し、使用するネットワークＩ／Ｆ２５−３Ａの識別子を通知する（Ｓ３０５）。一方端末装置１１Ｂのリソース管理機能部５２Ｂも、選択したネットワークＩ／Ｆ２５−３Ａと２５−３Ｂの識別子を通知した後、待ち受け要求を行った通信機能部５１−３Ｂに対し、使用するネットワークＩ／Ｆ２５−３Ｂの識別子を通知する（Ｓ３０６）。
【００７７】
このように端末装置１１Ａの通信機能部５１−３Ａと端末装置１１Ｂの通信機能部５１−３Ｂに対し、使用するネットワークＩ／Ｆ２５−３Ａと２５−３Ｂが通知されると、上述したＭｕｌｔｉ−ｒａｉｌの手法により、通信機能部５１−３Ａと５１−３Ｂに、データの受け渡しの遅延が小さくなる構成要素（例えば、ＣＰＵ２１やメモリ２２）の組が割り当てられる。
【００７８】
そしてこのように構成要素が割り当てられると通信機能部５１−３Ａと５１−３Ｂは、割り当てられた構成要素と協働して動作し、指定されたネットワークＩ／Ｆ２５−３Ａと２５−３Ｂを用いた通信を行う。
【００７９】
図１１は、図１０のシーケンス図に示した処理後の端末装置１１Ａと端末装置１１Ｂの通信状態を示す図である。このように図１０のシーケンス図に示した処理により、ネットワークＩ／Ｆ２５−２Ａと２５−２Ｂを介する通信機能部５１−１Ａと通信機能部５１−１Ｂとの通信、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｂを介する通信機能部５１−２Ａと通信機能部５１−２Ｂとの通信、そしてネットワークＩ／Ｆ２５−３Ａと２５−３Ｂを介する通信機能部５１−３Ａと通信機能部５１−３Ｂとの通信が行われるようになる。
【００８０】
以上のように、端末装置１１Ａが、通信相手となる端末装置１１Ｂとの接続要求を行うアプリケーションソフトウエアｐ５１−３Ａの識別子としてのアプリケーションＩＤ（”５１−３”）と、端末装置１１Ａにおいて使用されている各ネットワークＩ／Ｆ２５Ａの帯域使用量を、通信装置１１Ｂに送信し（Ｓ３０３）、
端末装置１１Ｂが、端末装置１１Ａから送信されてきたアプリケーションＩＤ（”５１−３）と同じアプリケーションＩＤを有する端末装置１１Ｂのアプリケーションソフトウエアｐ５１−３Ｂが通信可能な状態となっている場合（Ｓ３０１）、端末装置１１Ａから送信されてきた端末装置１１Ａにおいて使用されている各ネットワークＩ／Ｆ２５Ａの帯域使用量と、端末装置１１Ｂにおいて使用されている各ネットワークＩ／Ｆ２５Ｂの帯域使用量とに基づいて、同じ識別子を有し、帯域使用量が最も少ないネットワークＩ／Ｆ２５−３Ａ，２５−３Ｂを選択し、
端末装置１１Ａ及び端末装置１１Ｂにおいて、選択されたネットワークＩ／Ｆ２５−３Ａ又は２５−３Ｂが、接続要求を行ってきたアプリケーションソフトウエアｐ５１−３Ａによる通信機能部５１−３Ａに通知され、通信可能な状態にあるアプリケーションソフトウエアｐ５１−３Ｂによる通信機能部５１−３Ｂに通知されるようにしたので、
使用されているネットワークＩ／Ｆ２５のうち、最も帯域が少ないネットワークＩ／Ｆ２５−３Ａと２５−３Ｂを用いて通信機能部５１−３Ａと通信機能部５１−３Ｂとの通信が行われるようにすることができる。その結果特定のネットワークＩ／Ｆ２５への通信データの集中を防ぎ、広帯域なデータ通信を実現することができる。
【００８１】
図１２は、本発明を適用した通信システムの他の構成例を示す図である。この通信システムには、図１の通信システムに、端末装置１１Ｃがさらに設けられている。この端末装置１１Ｃは、端末装置１１Ａと端末装置１１Ｂと同様にＮＵＭＡ構成を有しているので、その図示及びその詳細な説明は省略するが、４個のＣＰＵ、４個のメモリ、４個のＭＣＨ、２個のＩＣＨ（いずれも図示せず）、及び３個のネットワークＩ／Ｆ２５−１Ｃ，２５−２Ｃ，２５−３Ｃが設けられている。
【００８２】
端末装置１１Ｃはまた、データ通信用のアプリケーションソフトウエアｐ５１−２Ｃがインストールされており、このアプリケーションソフトウエアｐ５１−２Ｃにより用いられる構成要素は、Ｍｕｌｔｉ−ｒａｉｌの方法により、用いられるネットワークＩ／Ｆ２５Ｃに応じて割り当てられる。アプリケーションソフトウエアｐ５１−２Ｃが用いるネットワークＩ／Ｆ２５Ｃは、後述するように決定される。
【００８３】
端末装置１１Ｃにおいて、通信機能部５１−２Ｃは、アプリケーションソフトウエアｐ５１−２Ｃが実行されることにより実現される機能であって、ネットワーク１２に接続されている端末装置１１Ａの、同じアプリケーションＩＤ”５１−２”を有するアプリケーションソフトウエアｐ５１−２Ａとデータ通信を行う。
【００８４】
なお図１２における端末装置１１Ｂからは、図４に示した端末装置１１Ｂに設けられていた”５１−２”のアプリケーションＩＤを有するアプリケーションソフトウエアｐ５１−２Ｂは削除されている。
【００８５】
ネットワークＩ／Ｆ２５−１Ｃは、端末装置１１ＡのネットワークＩ／Ｆ２５−１Ａ及び端末装置１１ＢのネットワークＩ／Ｆ２５−１Ｂに対応し、それらと同じ識別子を有している。ネットワークＩ／Ｆ２５−２Ｃは、端末装置１１ＡのネットワークＩ／Ｆ２５−２Ａ及び端末装置１１ＢのネットワークＩ／Ｆ２５−２Ｂに対応し、それらと同じ識別子を有している。そしてネットワークＩ／Ｆ２５−３Ｃは、端末装置１１ＡのネットワークＩ／Ｆ２５−３Ａ及び端末装置１１ＢのネットワークＩ／Ｆ２５−３Ｂに対応し、それらと同じ識別子を有している。
【００８６】
端末装置１１Ｃのリソース管理機能部５２Ｃは、端末装置１１Ａのリソース管理機能部５２Ａ又は端末装置１１Ｂのソース機能管理部５２Ｂと、相互に制御情報を授受し、その制御情報に基づいて、ネットワークＩ／Ｆ２５Ｃの使用を管理する。
【００８７】
なおこの例の場合、端末装置１１ＣのネットワークＩ／Ｆ２５−１Ｃは、端末装置１１ＡのネットワークＩ／Ｆ２５−１Ａ及び端末装置１１ＢのネットワークＩ／Ｆ２５−１Ｂとともに、端末装置１１Ａのリソース管理機能部５２Ａ又は端末装置１１Ｂのリソース管理機能部５２Ｂ間の制御情報の送受信専用に割り当てられているものとする。端末装置１１Ｃの他のネットワークＩ／Ｆ２５−２Ｃ，２５−３Ｃは、通信機能部５１−２Ｃによるデータ通信に利用されるものとする。なおこのネットワークＩ／Ｆ２５Ｃの利用形態は、一例であり、例えば制御情報専用に利用されるものとしたネットワークＩ／Ｆ２５−１を、通信機能部５１−２Ｃが利用できるようにすることもできる。
【００８８】
図１３は、図１２における端末装置１１Ａと端末装置１１Ｂのデータ通信の例を説明するシーケンス図である。このシーケンス図には、端末装置１１Ａ、端末装置１１Ｂ、及び端末装置１１Ｃのいずれの間においてもデータ通信が行われていない状態から、端末装置１１Ａの通信機能部５１−１Ａと端末装置１１Ｂの通信機能部５１−１Ｂとの通信が開始される場合の手順が示されている。
【００８９】
なおこの手順は、図５のシーケンス図に示した場合と同様であるので、その詳細な説明は省略するが、端末装置１１Ａが、通信相手となる端末装置１１Ｂとの接続要求を行うアプリケーションソフトウエアｐ５１−１Ａの識別子としてのアプリケーションＩＤ”５１−１”と、端末装置１１Ａにおいて使用されていないネットワークＩ／Ｆ２５−２Ａ，２５−３Ａ（図１４）の識別子を、通信装置１１Ｂに送信し（Ｓ４０３）、
端末装置１１Ｂが、端末装置１１Ａから送信されてきたアプリケーションＩＤ（”５１−１）と同じアプリケーションＩＤを有する端末装置１１Ｂのアプリケーションソフトウエアｐ５１−１Ｂが通信可能な状態となっている場合（Ｓ４０１）、端末装置１１Ａから送信されてきた端末装置１１Ａにおいて使用されていないネットワークＩ／Ｆ２５−２Ａ，２５−３Ａの識別子、及び端末装置１１Ｂにおいて使用されていないネットワークＩ／Ｆ２５−２Ｂ，２５−３Ｂの識別子に基づいて、同じ識別子を有し、端末装置１１Ａ及び１１Ｂのいずれにおいても使用されていない例えばネットワークＩ／Ｆ２５−２Ａ，２５−２Ｂを選択し、
端末装置１１Ａ及び端末装置１１Ｂにおいて、選択されたネットワークＩ／Ｆ２５−２Ａ，２５−２Ｂが、接続要求を行ってきたアプリケーションソフトウエアｐ５１−１Ａによる通信機能部５１−１Ａに通知され、通信可能な状態にあるアプリケーションソフトウエアｐ５１−１Ｂによる通信機能部５１−１Ｂに通知されるようにしたので、ネットワークＩ／Ｆ２５−２Ａと２５−２Ｂを用いて通信機能部５１−１Ａと通信機能部５１−１Ｂとの通信が行われるようになる（図１５）。
【００９０】
図１６は、図１２における端末装置１１Ａと端末装置１１Ｃのデータ通信の例を説明するシーケンス図である。このシーケンス図には、図１３のシーケンス図に示した処理により、図１５に示したように、端末装置１１ＡのネットワークＩ／Ｆ２５−２Ａと端末装置１１Ｂの２５−２Ｂを介する通信機能部５１−１Ａと通信機能部５１−１Ｂとの通信が行われている状態において、端末装置１１Ａの通信機能部５１−２Ａと端末装置１１Ｃの通信機能部５１−２Ｃの通信が新たに開始される場合の手続が示されている。
【００９１】
初めに、端末装置１１Ａにおいて、アプリケーションソフトウエアｐ５１−２Ａが起動して通信機能部５１−２Ａが動作可能になり（即ちアプリケーションソフトウエアｐ５１−２Ａによる通信が可能な状態となり）、端末装置１１Ｃにおいて、アプリケーションソフトウエアｐ５１−２Ｃが起動して通信機能部５１−２Ｃが動作可能になる（即ちアプリケーションソフトウエアｐ５１−２Ｃによる通信が可能な状態となる）。
【００９２】
動作可能になった端末装置１１Ｃの通信機能部５１−２Ｃは、リソース管理機能部５２Ｃに対して、アプリケーションソフトウエアｐ５１−２ＣのアプリケーションＩＤ”５１−２”を送信して、通信相手となる端末装置１１Ａからの接続に対する待ち受け要求を行う（Ｓ５０１）。リソース管理機能部５２Ｃは、アプリケーションＩＤ用のリストにアプリケーションＩＤ“５１−２”を記憶する。
【００９３】
一方動作可能になった端末装置１１Ａの通信機能部５１−２Ａは、リソース管理機能部５２Ａに対し、自分のアプリケーションＩＤ“５１−２”を送信して、端末装置１１Ｃへの接続要求を行う（Ｓ５０２）。
【００９４】
通信機能部５１−２Ａにより接続要求が行われると（Ｓ５０２）、リソース管理機能部５２Ａは、アプリケーションＩＤ“５１−２”と端末装置１１Ａの未使用リストを、制御情報専用のネットワークＩ／Ｆ２５−１Ａ及び端末装置１１ＣのネットワークＩ／Ｆ２５−１Ｃを介してリソース管理機能部５２Ｃに送信し、接続要求を行う（Ｓ５０３）。いまの場合、端末装置１１ＡにおいてはネットワークＩ／Ｆ２５−１Ａの他、ネットワークＩ／Ｆ２５−２Ａも使用されているので（図１５）、未使用リストには、ネットワークＩ／Ｆ２５−３Ａの識別子が含まれる。
【００９５】
端末装置１１Ａのリソース管理機能部５２Ａにより接続要求が行われると（Ｓ５０３）、端末装置１１Ｃのリソース管理機能部５２Ｃは、まず、その接続要求に含まれるアプリケーションＩＤ“５１−２”が自分の記憶しているアプリケーションＩＤ用のリストに含まれており、アプリケーションＩＤ“５１−２”の通信機能部５１−２Ｃが待ち受け状態であるか否かを確認する（即ちアプリケーションソフトウエアｐ５１−２Ｃによる通信が可能な状態であるか否かを確認する）。いまの場合、上述したように端末装置１１Ｃのリソース管理機能部５２Ｃは、アプリケーションＩＤ“５１−２”を記憶しているので、アプリケーションＩＤ“５１−２”の通信機能部５１−２Ｃが待ち受け状態であることを確認する（即ちアプリケーションソフトウエアｐ５１−２Ｃによる通信が可能な状態であることを確認する）。
【００９６】
次に、端末装置１１Ｃのリソース管理機能部５２Ｃは、端末装置１１Ａのリソース管理機能部５２Ａからの接続要求（Ｓ５０３）に含まれる未使用リストに示されている端末装置１１Ａにおいて使用されていないネットワークＩ／Ｆ２５Ａの識別子と、端末装置１１Ｃにおいて使用されていないネットワークＩ／Ｆ２５Ｃの識別子を比較し、同一の識別子を有し、端末装置１１Ａと１１Ｃのいずれにおいても未使用であるネットワークＩ／Ｆ２５Ａと２５Ｃの組を一つ選択する。いまの場合、図１５に示したように、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｃが、同一の識別子を有し、端末装置１１Ａと１１Ｃのいずれにおいても未使用となっているネットワークＩ／Ｆ２５であるので、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｃの組が選択される。
【００９７】
端末装置１１Ｃのリソース管理機能部５２Ｃは、選択したネットワークＩ／Ｆ２５−３Ａと２５−３Ｃの識別子を、ネットワークＩ／Ｆ２５−１Ｃ及び端末装置１１ＡのネットワークＩ／Ｆ２５−１Ａを介してリソース管理機能部５２Ａに通知する（Ｓ５０４）。
【００９８】
端末装置１１Ｃのリソース管理機能部５２ＣからのネットワークＩ／Ｆ２５−３Ａと２５−３Ｃの識別子を受信すると、端末装置１１Ａのリソース管理機能部５２Ａは、接続要求を行った通信機能部５１−２Ａに対し、使用するネットワークＩ／Ｆ２５−３Ａの識別子を通知する（Ｓ５０５）。一方端末装置１１Ｃのリソース管理機能部５２Ｃも、選択したネットワークＩ／Ｆ２５−３Ａと２５−３Ｃの識別子を通知した後、待ち受け要求を行った通信機能部５１−２Ｃに対し、使用するネットワークＩ／Ｆ２５−３Ｃの識別子を通知する（Ｓ５０６）。
【００９９】
このように端末装置１１Ａの通信機能部５１−２Ａと端末装置１１Ｃの通信機能部５１−２Ｃに対し、使用するネットワークＩ／Ｆ２５−３Ａと２５−３Ｃが通知されると、上述したＭｕｌｔｉ−ｒａｉｌの手法により、通信機能部５１−２Ａと５１−２Ｃに、データの受け渡しの遅延が小さくなる構成要素（例えば、ＣＰＵ２１やメモリ２２）の組が割り当てられる。
【０１００】
そしてこのように構成要素が割り当てられると通信機能部５１−２Ａと５１−２Ｃは、割り当てられた構成要素と協働して動作し、指定されたネットワークＩ／Ｆ２５−３Ａと２５−３Ｃを用いた通信を行う。
【０１０１】
図１７は、図１６のシーケンス図に示した処理後の端末装置１１Ａ，１１Ｂ，１１Ｃ間の通信状態を示す図である。このように図１６のシーケンス図に示した処理により、ネットワークＩ／Ｆ２５−２Ａと２５−２Ｂを介する通信機能部５１−１Ａと通信機能部５１−１Ｂとの通信と、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｃを介する通信機能部５１−２Ａと通信機能部５１−２Ｃとの通信が行われるようになる。
【０１０２】
以上のように、端末装置１１Ａにおいて、既に行われている端末装置１１Ｂとの通信に用いられているネットワークＩ／Ｆ２５−２Ａとは異なるネットワークＩ／Ｆ２５−３Ａを用いて、新たな通信相手としての端末装置１１Ｃとの通信が行われるようにすることができる。その結果ネットワークＩ／Ｆ２５の競合による使用可能帯域の低下を防ぐことができる。
【０１０３】
図１８は、図１２における端末装置１１Ａと端末装置１１Ｂのデータ通信の他の例を説明するシーケンス図である。このシーケンス図には、図１６のシーケンス図に示した処理により、図１７に示したように、ネットワークＩ／Ｆ２５−２Ａと２５−２Ｂを介する通信機能部５１−１Ａと通信機能部５１−１Ｂとの通信と、ネットワークＩ／Ｆ２５−３Ａと２５−３Ｃを介する通信機能部５１−２Ａと通信機能部５１−２Ｃとの通信が行われている状態において、通信機能部５１−３Ａと５１−３Ｂの通信が新たに開始される場合の手順が示されている。
【０１０４】
なおこの手順は、図１０のシーケンス図に示した場合と同様であるので、その詳細な説明は省略するが、端末装置１１Ａが、通信相手となる端末装置１１Ｂとの接続要求を行うアプリケーションソフトウエアｐ５１−３Ａの識別子としてのアプリケーションＩＤ（”５１−３”）と、端末装置１１Ａにおいて使用されている各ネットワークＩ／Ｆ２５Ａの帯域使用量を、通信装置１１Ｂに送信し（Ｓ６０３）、
端末装置１１Ｂが、端末装置１１Ａから送信されてきたアプリケーションＩＤ（”５１−３）と同じアプリケーションＩＤを有する端末装置１１Ｂのアプリケーションソフトウエアｐ５１−３Ｂが通信可能な状態となっている場合（Ｓ６０１）、端末装置１１Ａから送信されてきた端末装置１１Ａにおいて使用されている各ネットワークＩ／Ｆ２５Ａの帯域使用量と、端末装置１１Ｂにおいて使用されている各ネットワークＩ／Ｆ２５Ｂの帯域使用量とに基づいて、同じ識別子を有し、帯域使用量が最も少ない例えばネットワークＩ／Ｆ２５−３Ａ，２５−３Ｂを選択し、
端末装置１１Ａ及び端末装置１１Ｂにおいて、選択されたネットワークＩ／Ｆ２５−３Ａ又は２５−３Ｂが、接続要求を行ってきたアプリケーションソフトウエアｐ５１−３Ａによる通信機能部５１−３Ａに通知され、通信可能な状態にあるアプリケーションソフトウエアｐ５１−３Ｂによる通信機能部５１−３Ｂに通知されるようにしたので、使用されているネットワークＩ／Ｆ２５のうち、最も帯域が少ないネットワークＩ／Ｆ２５−３Ａと２５−３Ｂを用いて通信機能部５１−３Ａと通信機能部５１−３Ｂとの通信が行われるようにすることができる（図１９）。その結果特定のネットワークＩ／Ｆ２５への通信データの集中を防ぎ、広帯域なデータ通信を実現することができる。
【０１０５】
図２０は、上述したデータ通信の例におけるリソース管理機能部５２の処理（以下、適宜、リソース管理処理と称する）をまとめたフローチャートである。このフローチャートを参照して、上述したデータ通信の例に対応するリソース管理機能部５２の動作を説明する。
【０１０６】
ステップＳ１において、ある端末装置１１のリソース管理機能部５２は、通信機能部５１から、通信相手となる他の端末装置１１からの接続に対する待ち受け要求（例えば、図８のＳ２０１、又は図１０のＳ３０１）があったか否かを判定し、その要求がなかったと判定した場合、ステップＳ２に進む。
【０１０７】
ステップＳ２において、リソース管理機能部５２は、通信機能部５１から、通信相手となる他の端末装置１１への接続要求（例えば、図８のＳ２０２、又は図１０のＳ３０２）があった否かを判定し、その要求がなかったと判定した場合、処理は、ステップＳ１に戻り、それ以降の処理が同様に行われる。
【０１０８】
ステップＳ１で、通信機能部５１から、通信相手となる他の端末装置１１からの接続に対する待ち受け要求があったと判定した場合、リソース管理機能部５２は、ステップＳ３において、待ち受け処理を実行する。この処理の詳細は、図２１に示されている。なお図２１の説明において、このように通信機能部５１から、通信相手となる端末装置１１からの接続に対する待ち受けが要求されるリソース管理機能部５２を、リソース管理機能部５２ｒと称し、その待ち受け要求を行った通信機能部５１を、通信機能部５１ｒと称し、待ち受け状態となる端末装置１１を、端末装置１１ｒと称し、端末装置１１ｒの通信相手となる端末装置１１を、端末装置１１ｓと称する。
【０１０９】
ステップＳ１１において、端末装置１１ｒのリソース管理機能部５２ｒは、通信機能部５１ｒから送信されてきたアプリケーションＩＤを受信し、アプリケーションＩＤ用のリストに記憶して、待ち受け要求を受け付ける。
【０１１０】
次にステップＳ１２において、リソース管理機能部５２ｒは、通信相手となる端末装置１１ｓ（のリソース管理機能部５２）から送信されてくるアプリケーションＩＤ、及び未使用リスト（例えば、図８のＳ２０３）又は帯域使用量リスト（例えば、図１０のＳ３０３）を受信して、通信相手となる端末装置１１ｓからの接続要求を受け付ける。
【０１１１】
ステップＳ１３において、リソース管理機能部５２ｒは、受信したアプリケーションＩＤが、アプリケーションＩＤ用のリストに含まれており、そのアプリケーションＩＤを有する通信機能部５１ｒが待ち受け状態であるか否かを確認する。ここでは待ち受け状態であるものとする。
【０１１２】
次にステップＳ１４において、リソース管理機能部５２ｒは、未使用リストを受信した場合、未使用リストに示されている通信相手となる端末装置１１ｓにおいて使用されていないネットワークＩ／Ｆ２５の識別子と、端末装置１１ｒにおいて使用されていないネットワークＩ／Ｆ２５の識別子を比較し、同一の識別子を有し、端末装置１１ｓと１１ｒのいずれにおいても未使用であるネットワークＩ／Ｆ２５の組を一つ選択する（例えば、図８のＳ２０４）。
【０１１３】
また帯域使用量リストを受信した場合、リソース管理機能部５２ｒは、帯域使用量リストに示されている通信相手の端末装置１１ｓのネットワークＩ／Ｆ２５の帯域使用量と、端末装置ｒで使用されている各ネットワークＩ／Ｆ２５の帯域使用量を比較し、同一の識別子を有し、帯域使用量の少ないネットワークＩ／Ｆ２５の組を一つ選択する（例えば、図１０のＳ３０４）。
【０１１４】
ステップＳ１５において、リソース管理機能部５２ｒは、ステップＳ１４で選択したネットワークＩ／Ｆ２５それぞれの識別子を、端末装置１１ｒと端末装置１１ｓの両者のネットワークＩ／Ｆ２５−１を介して端末装置１１ｓ（のリソース管理機能部５２）に通知する（例えば、図８のＳ２０４、又は図１０のＳ３０４）。
【０１１５】
このようにして使用するネットワークＩ／Ｆ２５を選択し、その識別子を通信相手となる端末装置１１ｓに通知すると、ステップＳ１６において、リソース管理機能部５２ｒは、待ち受け要求を行った通信機能部５１ｒに対し、使用するネットワークＩ／Ｆ２５を通知する（例えば、図８のＳ２０６、又は、又は図１０のＳ３０６）。
【０１１６】
その後、処理は終了し、図２０のステップＳ２に進む。
【０１１７】
ステップＳ２で、接続要求があったと判定された場合、リソース管理機能部５２は、ステップＳ３に進み、接続要求処理を実行する。この処理の詳細は、図２２に示されている。なお図２２の説明において、このように通信相手の端末装置１１に対する接続が要求されるリソース管理機能部５２を、リソース管理機能部５２ｓと称し、その接続要求を行った通信機能部５１を、通信機能部５１ｓと称し、接続要求状態となる端末装置１１を、端末装置１１ｓと称し、端末装置１１ｓの通信相手となる端末装置１１を、端末装置１１ｒと称する。
【０１１８】
ステップＳ２１において、端末装置１１ｓのリソース管理機能部５２ｓは、接続要求を行った通信機能部５１ｓから送信されてきたアプリケーションＩＤを受信して、その接続要求を受け付ける（例えば、図８のＳ２０２、又は図１０のＳ３０２）。
【０１１９】
ステップＳ２２において、リソース管理機能部５２ｓは、端末装置１１ｓにおいて未使用のネットワークＩ／Ｆ２５が存在するか否かを判定し、存在すると判定した場合、ステップＳ２３において、未使用リストを生成する。
【０１２０】
ステップＳ２４において、リソース管理機能部５２ｓは、接続要求を行った通信機能部５１からのアプリケーションＩＤ、及び生成した未使用リストを、端末装置１１ｓ及び端末装置１１ｒの両者のネットワークＩ／Ｆ２５−１を介して、通信相手の端末装置１１ｒに送信する（例えば、図８のＳ２０３）。
【０１２１】
ステップＳ２２で、未使用のネットワークＩ／Ｆ２５が存在しないと判定した場合、リソース管理機能部５２ｓは、ステップＳ２５において、帯域使用量リストを生成する。
【０１２２】
ステップＳ２６において、リソース管理機能部５２ｓは、接続要求を行った通信機能部５１からのアプリケーションＩＤ、及び生成した帯域使用量リストを、ネットワークＩ／Ｆ２５−１を介して、通信相手となる端末装置１１ｒに送信する（例えば、図１０のＳ３０４）。
【０１２３】
ステップＳ２４又はステップＳ２６で、アプリケーションＩＤと未利用リスト、又はアプリケーションＩＤと帯域使用量リストが、ネットワークＩ／Ｆ２５−１を介して、通信相手の端末装置１１ｒに送信されると、ステップＳ２７において、リソース管理機能部５２ｓは、通信相手となる端末装置１１ｒから送信されてきた使用するネットワークＩ／Ｆ２５の識別子を受信する。
【０１２４】
ステップＳ２８において、リソース管理機能部５２ｓは、接続要求を行った通信機能部５１ｓに対し、受信した使用するネットワークＩ／Ｆ２５の識別子を通知する（例えば、図８のＳ２０５、又は図１０のＳ３０５）。
【０１２５】
その後、処理は、図２０のステップ１に戻る。なお図２０にその流れを示したリソース管理処理は、各ステップが、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくても、並列的あるいは個別に実行される処理を含むものである。例えばステップＳ３での待ち受け処理で通信相手からの接続要求を待っている間に、他のアプリケーションからの要求により別の待ち受け処理を行ったり、ステップＳ４で他のアプリケーションからの要求による接続処理を行うことができる。
【０１２６】
以上のように、データ通信を行う端末装置１１間でお互いのネットワークＩ／Ｆ２５の使用状況の情報を交換し、この情報に基づいて使用するネットワークＩ／Ｆを選択するようにしたので、広帯域な通信を実現することができる。
【０１２７】
なお以上においては、未使用のネットワークＩ／Ｆ２５が存在しない場合、ネットワークＩ／Ｆ２５が共用されるものとしたが、未使用のネットワークＩ／Ｆ２５が存在しても、例えば使用されているネットワークＩ／Ｆ２５の性能に応じて、特定のネットワークＩ／Ｆ２５が共用されるようにすることもできる。
【図面の簡単な説明】
【０１２８】
【図１】本発明を適用した通信システムの構成例を示す図である。
【図２】図１の端末装置１１Ａのハードウエアの構成例を示すブロック図である。
【図３】図１の端末装置１１Ｂのハードウエアの構成例を示すブロック図である。
【図４】図１の端末装置１１Ａと１１Ｂの機能的構成例を示すブロック図である。
【図５】図４における端末装置１１Ａと端末装置１１Ｂのデータ通信の例を説明するシーケンス図である。
【図６】端末装置１１Ａと端末装置１１Ｂの通信状態を示す図である。
【図７】図５のシーケンス図に示した処理後の端末装置１１Ａと端末装置１１Ｂの通信状態を示す図である。
【図８】図４における端末装置１１Ａと端末装置１１Ｂのデータ通信の他の例を説明するシーケンス図である。
【図９】図８のシーケンス図に示した処理後の端末装置１１Ａと端末装置１１Ｂの通信状態を示す図である。
【図１０】図４における端末装置１１Ａと端末装置１１Ｂのデータ通信の他の例を説明するシーケンス図である。
【図１１】図１０のシーケンス図に示した処理後の端末装置１１Ａと端末装置１１Ｂの通信状態を示す図である。
【図１２】本発明を適用した通信システムの他の構成例を示す図である。
【図１３】図１２における端末装置１１Ａと端末装置１１Ｂのデータ通信の例を説明するシーケンス図である。
【図１４】図１２における端末装置１１Ａ，１１Ｂ，１１Ｃの通信状態を示す図である。
【図１５】図１３のシーケンス図に示した処理後の端末装置１１Ａ，１１Ｂ，１１Ｃ通信状態を示す図である。
【図１６】図１２における端末装置１１Ａと端末装置１１Ｃのデータ通信の例を説明するシーケンス図である。
【図１７】図１６のシーケンス図に示した処理後の端末装置１１Ａ，１１Ｂ，１１Ｃの通信状態を示す図である。
【図１８】図１２における端末装置１１Ａと端末装置１１Ｂのデータ通信の他の例を説明するシーケンス図である。
【図１９】図１８のシーケンス図に示した処理後の端末装置１１Ａ，１１Ｂ，１１Ｃの通信状態を示す図である。
【図２０】端末装置のリソース管理機能部の動作を説明するフローチャートである。
【図２１】図２０のステップＳ３における待ち受け処理の詳細を説明するフローチャートである。
【図２２】図２０のステップＳ４における接続処理の詳細を説明するフローチャートである。
【図２３】ＮＵＭＡ構成を示すブロック図である。
【図２４】ＮＵＭＡ構成の端末装置における通信を行うアプリケーションソフトウエアプログラムの動作を説明する図である。
【図２５】ＮＵＭＡ構成の端末装置における通信を行うアプリケーションソフトウエアプログラムに対するＭｕｌｔｉ−ｒａｉｌの方法による構成要素の割り当ての例を説明する図である。
【符号の説明】
【０１２９】
１１Ａ，  端末装置，  １１Ｂ  端末装置，  １２  ネットワーク，  １３  中継装置，  ２１  ＣＰＵ，  ２２  メモリ，  ２３  ＭＣＨ，  ２４  ＭＣＨ，  ２５  ネットワークＩ／Ｆ，  ５１，  通信機能部，  ５２  リソース管理機能部
【図１】
2010130524.tif 000003
【図２】
2010130524.tif 000004
【図３】
2010130524.tif 000005
【図４】
2010130524.tif 000006
【図５】
2010130524.tif 000007
【図６】
2010130524.tif 000008
【図７】
2010130524.tif 000009
【図８】
2010130524.tif 000010
【図９】
2010130524.tif 000011
【図１０】
2010130524.tif 000012
【図１１】
2010130524.tif 000013
【図１２】
2010130524.tif 000014
【図１３】
2010130524.tif 000015
【図１４】
2010130524.tif 000016
【図１５】
2010130524.tif 000017
【図１６】
2010130524.tif 000018
【図１７】
2010130524.tif 000019
【図１８】
2010130524.tif 000020
【図１９】
2010130524.tif 000021
【図２０】
2010130524.tif 000022
【図２１】
2010130524.tif 000023
【図２２】
2010130524.tif 000024
【図２３】
2010130524.tif 000025
【図２４】
2010130524.tif 000026
【図２５】
2010130524.tif 000027