(57)【要約】【課題】アプリケーションの通信特性に応じて良好に通信を行う。【解決手段】通信端末１は、複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う第１通信制御部１３２と、複数の通信インタフェースのうち、２つ以上の通信インタフェースを用いて通信を行う第２通信制御部１３３と、複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとの、当該セッションにおける通信量を示す情報を含む通信履歴情報を記憶部１２に記憶させる記憶制御部１３４と、通信先と新たに通信を行う場合に、当該通信先に対応する通信履歴情報に基づいて、当該通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定する判定部１３５と、を備える。【選択図】図２
2018170699.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う第１通信制御部と、
前記複数の通信インタフェースのうち、２つ以上の通信インタフェースを用いて通信を行う第２通信制御部と、
前記複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとの、当該セッションにおける通信量を示す情報を含む通信履歴情報を記憶部に記憶させる記憶制御部と、
通信先と新たに通信を行う場合に、当該通信先に対応する前記通信履歴情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定する判定部と、
を備える通信端末。
【請求項２】
前記記憶制御部は、前記通信先ごとの、前記セッションにおける一連の通信の継続時間を示す情報を含む前記通信履歴情報を前記記憶部に記憶させる、
請求項１に記載の通信端末。
【請求項３】
前記判定部は、通信先と新たに通信を行う場合に、当該通信先に対応する前記通信履歴情報に基づいて単位時間における前記セッションの切断回数を算出し、当該切断回数に基づいて、当該通信先との通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定する、
請求項１又は２に記載の通信端末。
【請求項４】
前記通信インタフェースは、前記通信端末と基地局との無線通信に関する通信インタフェースであり、
前記記憶制御部は、前記セッションを用いた通信を行う際に前記基地局から受信する電波の受信状況を示す情報を含む前記通信履歴情報を前記記憶部に記憶させる、
請求項１から３のいずれか１項に記載の通信端末。
【請求項５】
前記記憶制御部は、前記通信先ごとの、前記通信先へのデータの再送回数を示す情報を含む前記通信履歴情報を前記記憶部に記憶させる、
請求項１から４のいずれか１項に記載の通信端末。
【請求項６】
前記記憶制御部は、前記通信先ごとの、前記通信先との通信の遅延時間を示す情報を含む前記通信履歴情報を前記記憶部に記憶させる、
請求項１から５のいずれか１項に記載の通信端末。
【請求項７】
前記記憶制御部は、前記通信先ごとの、前記通信が行われた時間を含む前記通信履歴情報を前記記憶部に記憶させ、
前記判定部は、通信先と新たに通信を行う場合に、当該通信先と通信が行われる時間に対応する前記通信履歴情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定する、
請求項１から６のいずれか１項に記載の通信端末。
【請求項８】
前記記憶制御部は、前記通信先ごとの、前記通信が行われた位置を含む前記通信履歴情報を前記記憶部に記憶させ、
前記判定部は、通信先と新たに通信を行う場合に、当該通信先との当該通信が行われる位置に対応する前記通信履歴情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定する、
請求項１から６のいずれか１項に記載の通信端末。
【請求項９】
配信サーバと、複数の通信端末とを備える通信システムであって、
前記複数の通信端末のそれぞれは、
複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う第１通信制御部と、
前記複数の通信インタフェースのうち、複数の通信インタフェースを用いて通信を行う第２通信制御部とを有し、
前記配信サーバは、
前記複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いて行われた前記通信端末と通信先との通信の通信量を示す情報を含む通信履歴情報に基づく、前記通信端末が当該通信先との通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うかを示す制御情報を前記通信端末に配信する配信部を有し、
前記複数の通信端末のそれぞれは、
前記通信先と通信を行う場合に、前記配信サーバから受信した前記制御情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定する判定部をさらに有する、
通信システム。
【請求項１０】
前記通信端末は、
前記複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとに、当該セッションにおける通信量を示す情報を前記通信履歴情報として記憶部に記憶させる記憶制御部を有し、
前記判定部は、通信先と新たに通信を行う場合に、当該通信先に関連付けられている前記通信履歴情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定し、
前記判定部による判定結果を示す情報を前記配信サーバに送信する送信部を有し、
前記配信サーバは、
前記通信端末から前記判定結果を示す情報を取得する取得部を有し、
前記配信部は、前記取得部が取得した前記判定結果を示す情報を前記制御情報として前記通信端末に配信する、
請求項９に記載の通信システム。
【請求項１１】
コンピュータが実行する、
複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う第１通信制御ステップと、
前記複数の通信インタフェースのうち、２つ以上の通信インタフェースを用いて通信を行う第２通信制御ステップと、
前記複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとの、当該セッションにおける通信量を示す情報を含む通信履歴情報を記憶部に記憶させる記憶制御ステップと、
通信先と新たに通信を行う場合に、当該通信先に対応する前記通信履歴情報に基づいて、当該通信を前記第１通信制御ステップと前記第２通信制御ステップとのいずれで行うか判定する判定ステップと、
を備える通信方法。
【請求項１２】
コンピュータを、
複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う第１通信制御部、
前記複数の通信インタフェースのうち、２つ以上の通信インタフェースを用いて通信を行う第２通信制御部、
前記複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとの、当該セッションにおける通信量を示す情報を含む通信履歴情報を記憶部に記憶させる記憶制御部、及び、
通信先と新たに通信を行う場合に、当該通信先に対応する前記通信履歴情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定する判定部、
として機能させる通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信端末、通信システム、通信方法及び通信プログラムに関する。
【背景技術】
【０００２】
近年、スループットや耐障害性の向上を目的として、複数の通信インタフェースを同時に利用することが可能なマルチパスＴＣＰ（MPTCP: Multipath Transmission Control Protocol）が提案されている（例えば、非特許文献１参照）。
【０００３】
図１０は、通信端末におけるプロトコルスタックを示す図である。具体的には、図１０（ａ）は、ＴＣＰのみに対応した通信端末におけるプロトコルスタックを示す図であり、図１０（ｂ）は、ＭＰＴＣＰに対応した通信端末におけるプロトコルスタックを示す図である。図１０（ｂ）に示すように、ＭＰＴＣＰでは、複数のＴＣＰコネクションを束ねる上位概念として、１つのＴＣＰコネクション（ＭＰＴＣＰコネクション）が規定されている。ここで、複数のＴＣＰコネクションのそれぞれを、サブフローともいう。
【０００４】
ＭＰＴＣＰレイヤがアプリケーションに提供する基本ＡＰＩ（Application Programmable Interface）は、従来のＴＣＰの基本ＡＰＩと同じである。このため、通信端末のＯＳをＭＰＴＣＰに対応させることにより、通信端末は、アプリケーション自体の変更を行うことなくＭＰＴＣＰを利用することができる。
【０００５】
図１１は、ＬＴＥ（Long Term Evolution）インタフェースと、Ｗｉ−Ｆｉ（登録商標）インタフェースを有する通信端末が、インターネット上のサーバとの間にＭＰＴＣＰコネクションを確立したときの状態を示す図である。通信端末は、サーバとの間で、ＬＴＣ回線経由のＴＣＰコネクションと、Ｗｉ−Ｆｉ回線経由のＴＣＰコネクションとを確立する。通信端末又はサーバにおいて動作する既存のアプリケーションからは、１つのＴＣＰコネクション（ＭＰＴＣＰコネクション）が確立して見えることとなる。これにより、既存のアプリケーションは、コネクションがＭＰＴＣＰコネクションであることを意識することなく、ＭＰＴＣＰを利用することができる。
【０００６】
ＭＰＴＣＰでは、接続が確立されている複数のＴＣＰコネクションに、品質が悪い回線を経由するコネクションが含まれていると、コネクション全体の品質が劣化するという問題がある。この問題を解決する方法として、特許文献１では、各ＴＣＰコネクションを利用した場合のデータの到着時間を予想して送信データを適切なＴＣＰコネクションに振り分けることにより、品質が悪い回線の影響を軽減させることが提案されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１４−１２７７９０号公報
【非特許文献】
【０００８】
【非特許文献１】A. Ford、他３名、”TCP Extensions for Multipath Operation with Multiple Addresses”、RFC 6824、Internet Engineering Task Force (IETF)、２０１３年１月
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところで、通信量が大きいアプリケーションは、ＭＰＴＣＰを利用することにより、データの送受信にかかる時間の短縮が見込まれるため、ＭＰＴＣＰが適している。しかしながら、Ｗｅｂページを取得するアプリケーション等の通信量が小さいアプリケーションでは、ＭＰＴＣＰを利用することによるデータの送受信の短縮時間に比べて、ＭＰＴＣＰを利用することによるオーバヘッドの方が大きい場合がある。このため、通信量が小さいアプリケーションは、ＭＰＴＣＰが適していない場合がある。
【００１０】
これに対して、特許文献１に記載の技術では、通信端末とサーバとの双方においてＭＰＴＣＰが有効である場合に、アプリケーションが必然的にＭＰＴＣＰを利用することとなる。したがって、ＭＰＴＣＰの利用に適していないアプリケーションでは、オーバヘッドが増大し、ＴＣＰのみを利用する場合に比べて、データ送受信に係る性能が劣化するおそれがある。
【００１１】
そこで、本発明はこれらの点に鑑みてなされたものであり、アプリケーションの通信特性に応じて良好に通信を行うことができる通信端末、通信システム、通信方法及び通信プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の第１の態様に係る通信端末は、複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う第１通信制御部と、前記複数の通信インタフェースのうち、２つ以上の通信インタフェースを用いて通信を行う第２通信制御部と、前記複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとの、当該セッションにおける通信量を示す情報を含む通信履歴情報を記憶部に記憶させる記憶制御部と、通信先と新たに通信を行う場合に、当該通信先に対応する前記通信履歴情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定する判定部と、を備える。
【００１３】
前記記憶制御部は、前記通信先ごとの、前記セッションにおける一連の通信の継続時間を示す情報を含む前記通信履歴情報を前記記憶部に記憶させてもよい。
【００１４】
前記判定部は、通信先と新たに通信を行う場合に、当該通信先に対応する前記通信履歴情報に基づいて単位時間における前記セッションの切断回数を算出し、当該切断回数に基づいて、当該通信先との通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定してもよい。
【００１５】
前記通信インタフェースは、前記通信端末と基地局との無線通信に関する通信インタフェースであり、前記記憶制御部は、前記セッションを用いた通信を行う際に前記基地局から受信する電波の受信状況を示す情報を含む前記通信履歴情報を前記記憶部に記憶させてもよい。
【００１６】
前記記憶制御部は、前記通信先ごとの、前記通信先へのデータの再送回数を示す情報を含む前記通信履歴情報を前記記憶部に記憶させてもよい。
前記記憶制御部は、前記通信先ごとの、前記通信先との通信の遅延時間を示す情報を含む前記通信履歴情報を前記記憶部に記憶させてもよい。
【００１７】
前記記憶制御部は、前記通信先ごとの、前記通信が行われた時間を含む前記通信履歴情報を前記記憶部に記憶させ、前記判定部は、通信先と新たに通信を行う場合に、当該通信先と通信が行われる時間に対応する前記通信履歴情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定してもよい。
【００１８】
前記記憶制御部は、前記通信先ごとの、前記通信が行われた位置を含む前記通信履歴情報を前記記憶部に記憶させ、前記判定部は、通信先と新たに通信を行う場合に、当該通信先との当該通信が行われる位置に対応する前記通信履歴情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定してもよい。
【００１９】
本発明の第２の態様に係る通信システムは、配信サーバと、複数の通信端末とを備える通信システムであって、前記複数の通信端末のそれぞれは、複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う第１通信制御部と、前記複数の通信インタフェースのうち、複数の通信インタフェースを用いて通信を行う第２通信制御部とを有し、前記配信サーバは、前記複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いて行われた前記通信端末と通信先との通信の通信量を示す情報を含む通信履歴情報に基づく、前記通信端末が当該通信先との通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うかを示す制御情報を前記通信端末に配信する配信部を有し、前記複数の通信端末のそれぞれは、前記通信先と通信を行う場合に、前記配信サーバから受信した前記制御情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定する判定部をさらに有する。
【００２０】
前記通信端末は、前記複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとに、当該セッションにおける通信量を示す情報を前記通信履歴情報として記憶部に記憶させる記憶制御部を有し、前記判定部は、通信先と新たに通信を行う場合に、当該通信先に関連付けられている前記通信履歴情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定し、前記判定部による判定結果を示す情報を前記配信サーバに送信する送信部を有し、前記配信サーバは、前記通信端末から前記判定結果を示す情報を取得する取得部を有し、前記配信部は、前記取得部が取得した前記判定結果を示す情報を前記制御情報として前記通信端末に配信してもよい。
【００２１】
本発明の第３の態様に係る通信方法は、コンピュータが実行する、複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う第１通信制御ステップと、前記複数の通信インタフェースのうち、２つ以上の通信インタフェースを用いて通信を行う第２通信制御ステップと、前記複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとの、当該セッションにおける通信量を示す情報を含む通信履歴情報を記憶部に記憶させる記憶制御ステップと、通信先と新たに通信を行う場合に、当該通信先に対応する前記通信履歴情報に基づいて、当該通信を前記第１通信制御ステップと前記第２通信制御ステップとのいずれで行うか判定する判定ステップと、を備える。
【００２２】
本発明の第４の態様に係る通信プログラムは、コンピュータを、複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う第１通信制御部、前記複数の通信インタフェースのうち、２つ以上の通信インタフェースを用いて通信を行う第２通信制御部、前記複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとの、当該セッションにおける通信量を示す情報を含む通信履歴情報を記憶部に記憶させる記憶制御部、及び、通信先と新たに通信を行う場合に、当該通信先に対応する前記通信履歴情報に基づいて、当該通信を前記第１通信制御部と前記第２通信制御部とのいずれで行うか判定する判定部、として機能させる。
【発明の効果】
【００２３】
本発明によれば、アプリケーションの通信特性に応じて良好に通信を行うことができるという効果を奏する。
【図面の簡単な説明】
【００２４】
【図１】第１実施形態に係る通信システムの構成を示す図である。
【図２】第１実施形態に係る通信端末の構成を示す図である。
【図３】第１実施形態に係るＴＣＰ制御情報の一例を示す図である。
【図４】第１実施形態に係る通信履歴情報の一例を示す図である。
【図５】第１実施形態に係る通信端末がサーバとの通信方式を判定する処理の流れを示すフローチャートである。
【図６】第２実施形態に係る通信端末の構成を示す図である。
【図７】第３実施形態に係る通信システムの構成を示す図である。
【図８】第３実施形態に係る通信端末の構成を示す図である。
【図９】第３実施形態に係る配信サーバの構成を示す図である。
【図１０】通信端末におけるプロトコルスタックを示す図である。
【図１１】通信端末がサーバとの間にＭＰＴＣＰコネクションを確立したときの状態を示す図である。
【発明を実施するための形態】
【００２５】
＜第１実施形態＞
［通信システムＳの構成］
図１は、第１実施形態に係る通信システムＳの構成を示す図である。通信システムＳは、通信端末１と、複数のサーバ２とを備える。通信端末１は、例えば、スマートフォン等のコンピュータである。通信端末１は、一の通信インタフェースを用いて通信を行うＴＣＰと、複数の通信インタフェースを同時に利用して通信を行うＭＰＴＣＰとに対応している。
【００２６】
例えば、通信端末１は、第１通信網４に対応する基地局３と第１通信インタフェースを用いて無線通信接続を行うことにより、基地局３、第１通信網４及び通信ネットワーク７を介してサーバ２と通信を行う。また、通信端末１は、第２通信網６に対応する基地局５と第２通信インタフェースを用いて無線通信接続を行うことにより、基地局５、第２通信網６及び通信ネットワーク７を介してサーバ２と通信を行う。通信端末１は、第１通信インタフェース及び第２通信インタフェースを同時に利用して１台のサーバ２と通信を行うことにより、ＭＰＴＣＰに対応する通信を行う。
【００２７】
複数のサーバ２のそれぞれは、通信端末１と通信可能なコンピュータである。本実施形態において、複数のサーバ２のそれぞれは、通信端末１において実行されるアプリケーションと、一対一に対応している。
【００２８】
通信端末１は、複数の通信インタフェースのそれぞれにおいて生成されたセッションを用いた通信の通信先であるサーバ２ごとに、当該セッションにおける通信履歴を示す通信履歴情報を記憶する。通信端末１は、サーバ２と新たに通信を行う場合に、当該サーバ２に対応する通信履歴情報に基づいて、ＴＣＰによりサーバ２と通信を行うか、ＭＰＴＣＰによりサーバ２と通信を行うかを制御する。
【００２９】
本実施形態において、１つのアプリケーションの通信先は、１台のサーバ２であることから、通信端末１とサーバ２とのセッションにおける通信状況は、アプリケーションの通信特性によって変化する。したがって、通信端末１は、セッションにおける通信状況に基づいて、ＴＣＰにより通信先と通信を行うか、ＭＰＴＣＰにより通信先と通信を行うかを制御することにより、アプリケーションの特性に応じた通信を行うことができる。
以下、通信端末１の構成について説明する。
【００３０】
［通信端末１の構成例］
図２は、第１実施形態に係る通信端末１の構成を示す図である。
通信端末１は、通信部１１と、記憶部１２と、制御部１３とを備える。
【００３１】
通信部１１は、通信端末１と無線通信を行う基地局との、無線通信に関する通信インタフェースである。例えば、通信部１１は、第１通信インタフェースとして、ＬＴＥを利用した通信を行うためのＬＴＥインタフェースを有している。また、通信部１１は、第２通信インタフェースとして、Ｗｉ−Ｆｉを利用した通信を行うためのＷｉ−Ｆｉインタフェースを有している。なお、本実施形態では、通信部１１は、２つの通信インタフェースを有していることとしたが、これに限らず、３つ以上の通信インタフェースを有していてもよい。
【００３２】
記憶部１２は、例えば、ＲＯＭ及びＲＡＭ等である。記憶部１２は、通信端末１を機能させるための各種プログラムを記憶する。例えば、記憶部１２は、制御部１３を、後述する実行部１３１として機能させるアプリケーション実行プログラムを記憶する。また、記憶部１２は、制御部１３を、第１通信制御部１３２、第２通信制御部１３３、記憶制御部１３４、及び判定部１３５として機能させる通信プログラムを記憶する。
【００３３】
なお、記憶部１２は、アプリケーション実行プログラムと、通信プログラムとを記憶したが、これに限らない。例えば、記憶部１２がアプリケーション実行プログラムを記憶せずに、通信プログラムが、制御部１３を実行部１３１として機能させるようにしてもよい。
【００３４】
また、記憶部１２は、制御部１３の制御により、通信端末１とサーバ２との間に確立されたセッションにおいて行われた通信の履歴を示す通信履歴情報を記憶する。ここで、通信履歴情報は、例えば、通信端末１とサーバ２とで行われた通信の通信量を示す情報や、通信端末１とサーバ２との間で行われた一連の通信の通信継続時間を示す情報である。
【００３５】
制御部１３は、例えばＣＰＵである。制御部１３は、記憶部１２に記憶されている各種プログラムを実行することにより、通信端末１に係る機能を制御する。制御部１３は、アプリケーション実行プログラムと、通信プログラムとを実行することにより、実行部１３１、第１通信制御部１３２、第２通信制御部１３３、記憶制御部１３４、及び判定部１３５として機能する。
【００３６】
実行部１３１は、アプリケーションを実行する。例えば、通信端末１は、ユーザからの操作を受け付ける入力部（不図示）と、アプリケーションを実行するための画面や、アプリケーションが生成した画面を表示する表示部（不図示）とを備えている。実行部１３１は、入力部においてアプリケーションを実行する操作が行われたことに応じて、アプリケーションを実行する。ここで、本実施形態に係るアプリケーションは、複数のサーバ２のうち、いずれか１台のサーバと通信を行うものとする。本実施形態では、アプリケーションにおいて、通信先であるサーバ２のアドレスと、サーバ２との通信に使用するポート番号とが指定されるものとする。
【００３７】
第１通信制御部１３２は、ＴＣＰに対応しており、通信端末１が有する複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う。具体的には、第１通信制御部１３２は、ＴＣＰを利用することにより、複数の通信インタフェースのうちのいずれか１つの通信インタフェースを用いて、通信端末１と、サーバ２との間にセッションを確立する。
【００３８】
例えば、第１通信制御部１３２は、通信端末１の起動時に、通信端末１の情報を設定するための端末設定サーバ（不図示）からＴＣＰ制御情報を取得して記憶部１２に記憶させる。ＴＣＰ制御情報は、第１通信制御部１３２がサーバ２との通信を行う際にどの通信インタフェースを選択するかを規定する情報である。
【００３９】
図３は、第１実施形態に係るＴＣＰ制御情報の一例を示す図である。図３に示すように、ＴＣＰ制御情報は、Ｎｏ．と、通信先のサーバ２のアドレスを示す宛先アドレスと、通信に使用するポート番号の範囲を示す宛先ポートと、使用する通信インタフェースとが関連付けられて記憶されている。なお、図３の通信インタフェースに示される「ｌｉｎｋ  ｑｕａｌｉｔｙ」は、通信品質が相対的に高い通信インタフェースを選択することを示している。
【００４０】
第１通信制御部１３２は、記憶部１２に記憶されているＴＣＰ制御情報を参照し、実行されているアプリケーションにおいて指定されたサーバ２のアドレスと、ポート番号とに関連付けられている通信インタフェースを特定することにより、当該アプリケーションにおいて使用する通信インタフェースを特定する。そして、第１通信制御部１３２は、特定した通信インタフェースを用いてＴＣＰコネクションを確立し、当該ＴＣＰコネクションにおいて、アプリケーションにおいて指定されたポート番号で、サーバ２とのセッションを確立する。そして、第１通信制御部１３２は、当該セッションを用いてサーバ２との通信を行う。
【００４１】
第２通信制御部１３３は、ＭＰＴＣＰに対応しており、通信端末１が有する複数の通信インタフェースのうち、２つ以上の通信インタフェースを用いて通信を行う。具体的には、第２通信制御部１３３は、複数の通信インタフェースを利用して、サーバ２と複数のサブフロー（ＴＣＰコネクション）を同時に確立する。ここで、第２通信制御部１３３は、通信開始時に全てのサブフローを確立してもよいし、一部のサブフローを確立してもよい。また、第２通信制御部１３３は、一部のサブフローを確立する場合に、通信品質が相対的に高い通信インタフェースを選択し、選択された通信インタフェースを用いてサブフローを確立してもよい。
【００４２】
第２通信制御部１３３は、確立されている複数のサブフローの少なくともいずれかを用いて、通信端末１とサーバ２との間のセッションを確立する。ここで、第２通信制御部１３３は、確立したサブフローの全てについてセッションを確立してもよいし、確立したサブフローのうち、一部のサブフローについてセッションを確立してもよい。第２通信制御部１３３は、一部のサブフローについてセッションを確立する場合には、残りのサブフローをバックアップ用のサブフローとしてもよい。この場合、第２通信制御部１３３は、利用中のサブフローに障害が発生した場合に、バックアップ用のサブフローについてセッションを確立してもよい。そして、第２通信制御部１３３は、確立したセッションに基づいてサーバ２との通信を行う。
【００４３】
記憶制御部１３４は、複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとの通信履歴情報を記憶部１２に記憶させる。具体的には、記憶制御部１３４は、セッションを用いた通信を監視し、当該セッションを用いた通信の通信先であるサーバ２ごとの、当該セッションにおける通信量を示す情報を含む通信履歴情報を記憶部１２に記憶させる。
【００４４】
より具体的には、記憶制御部１３４は、サーバ２のアドレスである宛先アドレスと、通信が行われた時間としてのセッションが確立された時刻及びセッションが切断された時刻と、当該セッションにおける通信量を示す情報とを関連付けて通信履歴情報として記憶部１２に記憶させる。そして、記憶制御部１３４は、セッション確立された時刻と、セッションが切断された時刻とに基づいて、当該セッションにおける一連の通信の継続時間を算出し、当該通信の継続時間を示す情報を含む通信履歴情報を記憶部１２に記憶させる。
【００４５】
図４は、第１実施形態に係る通信履歴情報の一例を示す図である。図４に示すように、通信履歴情報は、サーバ２のアドレスである宛先アドレスと、セッションＩＤと、セッション確立時刻と、セッション切断時刻と、セッションにおける通信量と、通信継続時間とを関連付けた情報である。なお、記憶制御部１３４は、現在時刻から所定期間（例えば、１か月）前までの通信履歴情報を記憶部１２に記憶させるようにしてもよい。
【００４６】
判定部１３５は、通信先としてのサーバ２と新たに通信を行う場合に、当該通信先に関連付けられている通信履歴情報に基づいて、当該通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定する。
【００４７】
例えば、判定部１３５は、サーバ２のアドレスと、過去の判定結果とを関連付けた判定結果情報を記憶部１２に記憶させておく。判定部１３５が、サーバ２と新たに通信を行う場合に、記憶部１２に記憶されている判定結果情報を参照し、サーバ２のアドレスに関連付けて過去の判定結果が記憶されているか否かを判定する。判定部１３５は、サーバ２のアドレスに関連付けて過去の判定結果が記憶されていない場合に、当該アドレスに対応する通信履歴情報に基づいて、当該サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定する。
【００４８】
例えば、判定部１３５は、通信履歴情報を参照し、サーバ２のアドレスに関連付けられている各セッションの通信量の平均値が第１閾値を超える場合に、当該サーバ２との通信を第２通信制御部１３３で行うと判定する。また、判定部１３５は、サーバ２のアドレスに関連付けられている各セッションの通信量の平均値が第１閾値以下の場合に、当該サーバ２との通信を第１通信制御部１３２で行うと判定する。判定部１３５は、判定結果に基づいて、当該サーバ２との通信を第１通信制御部１３２又は第２通信制御部１３３に行わせる。
【００４９】
また、判定部１３５は、サーバ２のアドレスに関連付けられている各セッションの通信継続時間の平均値が第２閾値を超える場合に、当該サーバ２との通信を第２通信制御部１３３で行うと判定する。また、判定部１３５は、サーバ２のアドレスに関連付けられている各セッションの通信継続時間の平均値が第２閾値以下の場合に、当該サーバ２との通信を第１通信制御部１３２で行うと判定する。
【００５０】
ここで、判定部１３５は、各セッションの通信量の平均値及び通信継続時間の平均値に基づいて、サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定したが、これに限らない。判定部１３５は、各セッションの通信量及び通信継続時間の他の統計値に基づいてサーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定してもよい。
【００５１】
また、判定部１３５は、サーバ２と新たに通信を行う場合に、当該サーバ２に対応する通信履歴情報に基づいてセッションの切断回数を算出してもよい。そして、判定部１３５は、当該切断回数に基づいて、サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定してもよい。例えば、判定部１３５は、セッションの切断回数が第３閾値を超える場合に、サーバ２との通信を第２通信制御部１３３で行うと判定する。
【００５２】
アプリケーションとサーバ２との通信に用いるセッションの切断回数が多いほど、通信が不安定な状態で、アプリケーションがサーバ２と通信を行っている可能性が高い。これに対して、判定部１３５は、セッションの切断回数が第３閾値を超える場合に、サーバ２との通信を第２通信制御部１３３で行うと判定することにより、通信が不安定な状況でユーザが利用するアプリケーションに関する通信を、ＭＰＴＣＰによって安定的に行うことができる。
【００５３】
また、判定部１３５は、サーバ２と新たに通信を行う場合に、当該サーバ２と通信が行われる時間に対応する通信履歴情報に基づいて、当該サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定してもよい。例えば、判定部１３５は、サーバ２と新たに通信を行う時間に対応する時間帯を特定する。そして、判定部１３５は、通信履歴情報のうち、特定した時間帯に対応する通信履歴情報に基づいて、当該サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定する。
【００５４】
例えば、ユーザが、アプリケーションを、電車通勤時と帰宅後とに使用しているものとする。アプリケーションを電車通勤時に使用する場合と、帰宅後に使用する場合とでは、通信環境が異なる。これに対して、判定部１３５は、サーバ２と新たに通信する際の時間帯に対応する通信履歴情報に基づいて、サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定する。これにより、判定部１３５は、アプリケーションを利用する時間帯によって通信環境が異なる場合であっても、当該通信環境に対応して、ＴＣＰによって通信を行うか、ＭＰＴＣＰによって通信を行うかを精度良く特定することができる。
【００５５】
また、記憶制御部１３４は、セッションを用いたサーバ２との通信を行う際の、基地局３及び基地局５から受信する電波の受信状況を特定し、サーバ２ごとに、電波の受信状況を示す情報を含む通信履歴情報を記憶部１２に記憶させてもよい。そして、判定部１３５は、サーバ２と新たに通信を行う場合に、通信履歴情報に含まれる、当該サーバ２に対応する電波の受信状況に基づいて、当該サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定してもよい。
【００５６】
例えば、ユーザが移動中に所定のアプリケーションを頻繁に利用する場合、通信端末１が、当該アプリケーションとサーバ２との通信に利用される基地局３又は基地局５から受信する電波の受信強度は、時間に応じて変化する。このような場合には、セッションの切断が発生しやすいため、ＭＰＴＣＰによる通信を行うことが好ましい。したがって、判定部１３５は、サーバ２との通信を行う際の、基地局３及び基地局５から受信する電波の受信強度の変化量が第４閾値を超える場合に、当該サーバ２との通信を第２通信制御部１３３で行うと判定する。このようにすることで、通信端末１は、ユーザが移動中に頻繁に利用するアプリケーションに関する通信を、ＭＰＴＣＰによって安定的に行うことができる。
【００５７】
また、記憶制御部１３４は、サーバ２ごとの、当該サーバ２へのデータの再送回数を算出し、当該再送回数を示す情報を含む通信履歴情報を記憶部１２に記憶させてもよい。そして、判定部１３５は、サーバ２と新たに通信を行う場合に、通信履歴情報に含まれる、当該サーバ２に対応するデータの再送回数に基づいて、当該サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定してもよい。
【００５８】
また、記憶制御部１３４は、サーバ２ごとの、当該サーバ２との通信の遅延時間を測定し、当該遅延時間を示す情報を含む通信履歴情報を前記記憶部１２に記憶させてもよい。そして、判定部１３５は、サーバ２と新たに通信を行う場合に、通信履歴情報に含まれる、当該サーバ２に対応する通信の遅延時間に基づいて、当該サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定してもよい。
【００５９】
判定部１３５は、通信先であるサーバ２のアドレスと、判定結果とを関連付けた判定結果情報を記憶部１２に記憶させる。これにより、通信端末１は、当該サーバ２と再び通信を行う場合に、判定結果情報に基づいて、当該サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うかを判定することができる。
【００６０】
なお、判定部１３５は、判定結果情報と、判定が行われた日時とを関連付けて記憶部１２に記憶させてもよい。そして、判定部１３５は、所定時間おきに、現在の日時よりも所定期間以上前の日時に行われた判定に対応する判定結果情報を記憶部１２から消去してもよい。このようにすることで、通信端末１は、時間の経過によって通信環境が変化した場合であっても、通信履歴情報に基づいて環境の変化に応じた判定を行うことができる。
【００６１】
［サーバ２との通信方式を判定する処理の流れ］
続いて、サーバ２との通信方式を判定する処理の流れについて説明する。図５は、第１実施形態に係る通信端末１がサーバ２との通信方式を判定する処理の流れを示すフローチャートである。本フローチャートは、実行部１３１によって実行されたアプリケーションがサーバ２と通信を開始する場合に開始される。
【００６２】
まず、判定部１３５は、記憶部１２に、通信先であるサーバ２のアドレスと、判定部１３５の過去の判定結果とを関連付けた判定結果情報が記憶部１２に記憶されているか否かを判定する（Ｓ１０）。判定部１３５は、当該判定結果情報が記憶部１２に記憶されていると判定すると、Ｓ５０に処理を移し、当該判定結果情報が記憶部１２に記憶されていないと判定すると、Ｓ２０に処理を移す。
【００６３】
Ｓ２０において、判定部１３５は、記憶部１２を参照し、通信先であるサーバ２のアドレスに対応する通信履歴情報を取得する。
続いて、判定部１３５は、通信履歴情報に基づいて、通信を行う通信制御部を特定する（Ｓ３０）。すなわち、判定部１３５は、通信履歴情報に基づいて、通信先であるサーバ２との通信を、第１通信制御部１３２で行うか、第２通信制御部１３３で行うかを判定する。
【００６４】
続いて、判定部１３５は、通信先であるサーバ２のアドレスと、判定結果とを関連付けた判定結果情報を記憶部１２に記憶させる（Ｓ４０）。判定部１３５は、Ｓ４０の処理が終了すると、Ｓ６０に処理を移す。
【００６５】
判定部１３５は、Ｓ１０において、通信先であるサーバ２に対応する判定結果情報が記憶部１２に記憶されていると判定すると、当該判定結果情報に基づいて、通信を行う通信制御部を特定する（Ｓ５０）。すなわち、判定部１３５は、判定結果情報に基づいて、通信先であるサーバ２との通信を、第１通信制御部１３２で行うか、第２通信制御部１３３で行うかを特定する。
【００６６】
Ｓ６０において、判定部１３５は、特定した通信制御部に、サーバ２との通信開始を指示する。サーバ２との通信開始を指示された通信制御部、すなわち、第１通信制御部１３２又は第２通信制御部１３３は、サーバ２との通信を開始する。
【００６７】
ここで、第２通信制御部１３３は、通信履歴情報に基づいて、確立するサブフローの数を決定したり、確立するセッションの数を決定したりしてもよい。例えば、第２通信制御部１３３は、通信履歴情報において、通信先であるサーバ２との通信量の平均値が第５閾値以上である場合、全てのサブフローを確立し、確立したサブフローを全てについてセッションを確立してもよい。また、第２通信制御部１３３は、通信履歴情報において、通信先であるサーバ２との通信継続時間の平均値が第６閾値以上である場合、全てのサブフローを確立し、確立したサブフローのうちの１つについてセッションを確立してもよい。また、第２通信制御部１３３は、通信履歴情報において、通信先であるサーバ２との通信継続時間の平均値が第６閾値未満かつ第７閾値以上の場合、一部のサブフローを確立し、当該サブフローについてセッションを確立してもよい。また、第２通信制御部１３３は、ＴＣＰ制御情報に基づいて、一以上のサブフローを確立してもよい。
【００６８】
［第１実施形態における効果］
以上のとおり、第１実施形態に係る通信端末１は、複数の通信インタフェースのうち、いずれか１つの通信インタフェースを用いて通信を行う第１通信制御部１３２と、複数の通信インタフェースのうち、２つ以上の通信インタフェースを用いて通信を行う第２通信制御部１３３とを備える。
【００６９】
通信端末１は、複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いた通信の通信先ごとの、当該セッションにおける通信量を示す情報を含む通信履歴情報を記憶部１２に記憶させ、通信先と新たに通信を行う場合に、当該通信先に対応する通信履歴情報に基づいて、当該通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定する。
【００７０】
第１実施形態において、アプリケーションの通信先は、１台のサーバ２であることから、通信端末１とサーバ２とのセッションにおける通信量は、アプリケーションの通信特性によって変化する。したがって、通信端末１は、セッションに対応する通信量に基づいて、第１通信制御部１３２により通信先と通信を行うか、第２通信制御部１３３により通信先と通信を行うかを制御することにより、アプリケーションの特性に応じた通信を行うことができる。
【００７１】
＜第２実施形態＞
［通信端末が位置するエリアごとに第１通信制御部１３２と第２通信制御部１３３とのいずれで通信を行うか判定する］
続いて、第２実施形態について説明する。第２実施形態では、通信端末１が、通信が行われた位置を示す位置情報を含む通信履歴情報を記憶部１２に記憶させ、当該通信履歴情報に基づいて、第１通信制御部１３２と第２通信制御部１３３とのいずれで通信を行うか判定する点で第１実施形態と異なる。以下、第２実施形態に係る通信システムＳについて説明する。第１実施形態と同じ部分については適宜説明を省略する。
【００７２】
図６は、第２実施形態に係る通信端末１の構成を示す図である。図６に示すように、第２実施形態に係る通信端末１の制御部１３は、通信プログラムを実行することにより、位置情報取得部１３６としてさらに機能する。
【００７３】
位置情報取得部１３６は、通信端末１の位置を示す位置情報を取得する。例えば、位置情報取得部１３６は、通信端末１に搭載されたＧＰＳ（Global Positioning System）機能を活用して、通信端末１の位置を示す位置情報を取得する。
記憶制御部１３４は、通信先であるサーバ２ごとの、通信が行われた位置を示す位置情報を含む通信履歴情報を記憶部１２に記憶させる。
【００７４】
判定部１３５は、通信先であるサーバ２と新たに通信を行う場合に、位置情報取得部１３６が取得した位置情報に基づいて、当該通信先との当該通信が行われる位置を特定する。そして、判定部１３５は、記憶部１２を参照し、特定した位置に対応する通信履歴情報を特定し、当該通信履歴情報に基づいて、当該通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定する。
【００７５】
［第２実施形態における効果］
以上のとおり、第２実施形態に係る通信端末１は、通信先であるサーバ２と新たに通信を行う場合に、当該通信が行われる位置に対応する通信履歴情報に基づいて、当該通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定する。通信が行われる位置によって、アプリケーションの利用状況や通信環境が異なることがあるところ、第２実施形態に係る通信端末１は、通信先であるサーバ２と新たに通信を行う場合に、当該通信が行われる位置に対応して第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定する。このようにすることで、通信端末１は、通信が行われる位置に適した通信方式で通信を行うことができる。
【００７６】
＜第３実施形態＞
［通信端末１における判定結果を配信サーバにおいて管理する］
続いて、第３実施形態について説明する。第３実施形態に係る通信システムＳは、配信サーバ８をさらに備え、配信サーバ８において、通信端末１における判定結果を管理する点で第１実施形態と異なる。
【００７７】
図７は、第３実施形態に係る通信システムＳの構成を示す図である。図７に示すように、通信システムＳは、配信サーバ８をさらに備える。なお、図７では、通信端末１は１台のみ表示されているが、第３実施形態において、通信端末１は、複数存在しているものとする。
【００７８】
図８は、第３実施形態に係る通信端末１の構成を示す図である。図８に示すように、第３実施形態に係る通信端末１の制御部１３は、判定結果共有部１３７をさらに備える。
【００７９】
判定結果共有部１３７は、判定部１３５がサーバ２ごとに第１通信制御部１３２で通信を行うか、第２通信制御部１３３で通信を行うかを判定した結果を示す判定結果情報を他の通信端末１と共有する。
【００８０】
具体的には、判定結果共有部１３７は、送信部として機能し、判定部１３５が記憶部１２に記憶させた判定結果情報と、通信端末１を識別する端末識別情報とを、通信部１１を介して配信サーバ８に送信する。
【００８１】
また、判定結果共有部１３７は、受信部として機能し、他の通信端末１が生成した判定結果情報であって、配信サーバ８に記憶されている判定結果情報を配信サーバ８から受信する。例えば、判定結果共有部１３７は、通信端末１の起動時に、配信サーバ８に、判定結果情報の取得要求を送信する。ここで、取得要求には、通信端末１を識別する端末識別情報が含まれているものとする。判定結果共有部１３７は、配信サーバ８から受信した判定結果情報を配信サーバ８に記憶させる。
【００８２】
判定部１３５は、サーバ２と新たに通信を行う場合に、記憶部１２に記憶されている判定結果情報を参照し、サーバ２のアドレスに関連付けて過去の判定結果が記憶されていると判定すると、当該判定結果に基づいて、当該サーバ２との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うか判定する。
【００８３】
図９は、第３実施形態に係る配信サーバ８の構成を示す図である。図９に示すように、配信サーバ８は、通信部８１と、記憶部８２と、制御部８３とを備える。
通信部８１は、通信ネットワーク７と通信を行うためのインタフェースである。
記憶部８２は、例えば、ＲＯＭ及びＲＡＭ等である。記憶部８２は、制御部８３が複数の通信端末１のそれぞれから取得した判定結果情報を記憶する。
【００８４】
制御部８３は、例えばＣＰＵである。制御部８３は、記憶部８２に記憶されている各種プログラムを実行することにより、配信サーバ８に係る機能を制御する。制御部８３は、取得部８３１と、配信部８３２とを備える。
【００８５】
取得部８３１は、複数の通信端末１のそれぞれから判定結果情報と、端末識別情報とを受信することにより、当該判定結果情報を取得する。取得部８３１は、取得した判定結果情報と、端末識別情報とを関連付けて記憶部８２に記憶させる。
【００８６】
配信部８３２は、複数の通信インタフェースのそれぞれにおいて確立されたセッションを用いて行われた通信端末１と通信先のサーバ２との通信の通信履歴情報に基づく、通信端末１が当該通信先との通信を第１通信制御部１３２と第２通信制御部１３３とのいずれで行うかを示す判定結果情報（制御情報）を通信端末１に配信する。例えば、配信部８３２は、通信端末１から判定結果情報の取得要求を受信すると、記憶部８２を参照し、当該取得要求に含まれている端末識別情報と関連付けられていない判定結果情報を取得する。配信部８３２は、取得した判定結果情報を、取得要求を送信した通信端末１に送信することにより、当該判定結果情報を通信端末１に配信する。
【００８７】
［第３実施形態における効果］
以上のとおり、第３実施形態に係る通信システムＳでは、配信サーバ８が、複数の通信端末１における判定結果情報を取得し、他の通信端末１に配信する。これにより、通信端末１は、初めてサーバ２との通信を行う場合であっても、配信サーバ８から取得した判定結果情報に基づいて第１通信制御部１３２と第２通信制御部１３３とのいずれで通信を行うかを判定することができる。
【００８８】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。また、特に、装置の分散・統合の具体的な実施形態は以上に図示するものに限られず、その全部又は一部について、種々の付加等に応じて、又は、機能負荷に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【符号の説明】
【００８９】
１・・・通信端末、１１・・・通信部、１２・・・記憶部、１３・・・制御部、１３１・・・実行部、１３２・・・第１通信制御部、１３３・・・第２通信制御部、１３４・・・記憶制御部、１３５・・・判定部、１３６・・・位置情報取得部、１３７・・・判定結果共有部、２・・・サーバ、３・・・基地局、４・・・第１通信網、５・・・基地局、６・・・第２通信網、７・・・通信ネットワーク、８・・・配信サーバ、８１・・・通信部、８２・・・記憶部、８３・・・制御部、８３１・・・取得部、８３２・・・配信部、Ｓ・・・通信システム
【図１】
2018170699.tif 000003
【図２】
2018170699.tif 000004
【図３】
2018170699.tif 000005
【図４】
2018170699.tif 000006
【図５】
2018170699.tif 000007
【図６】
2018170699.tif 000008
【図７】
2018170699.tif 000009
【図８】
2018170699.tif 000010
【図９】
2018170699.tif 000011
【図１０】
2018170699.tif 000012
【図１１】
2018170699.tif 000013