以下に、本出願の実施形態における添付の図面を参照しながら本出願の実施形態における技術的解決策について説明する。本出願の実施形態の説明では、以下で説明される「第1の」および「第2の」という用語は、説明のためのものにすぎず、示された技術的特徴の量の相対的な重要性の指示もしくは暗示または暗黙的な指示として理解されてはならない。したがって、「第1の」または「第2の」によって限定された特徴は、1つまたは複数の特徴を明示的にまたは暗黙的に含み得る。本出願の実施形態の説明では、特に明記しない限り、「複数の」は、2つまたは3つ以上を意味する。
本出願の実施形態で提供される接続確立方法は、ワイヤレス通信システムにおけるデータ送信に適用され得る。データ受信端は、無線アクセスネットワーク(Radio Access Network、RAN)とコアネットワークとを使用することによってデータ送信端とデータを交換し、伝送制御プロトコル(Transmission Control Protocol、TCP)接続が、データ受信端とデータ送信端との間でさらに確立され得、データは、TCPプロトコルを使用することによって送信される。図1に示されているように、ワイヤレス通信システムでは、端末デバイスは、アプリケーションサーバとデータを交換する。端末デバイスは、エアインターフェースを通してRANに接続され、コアネットワークを介してアプリケーションサーバに接続される。端末とRANとの間のネットワークはワイヤレスネットワークと呼ばれることがあり、RANとアプリケーションサーバとの間のネットワークは、ワイヤードネットワークと呼ばれることがある。TCP接続が確立され、アプリケーションサーバと端末との間でデータ送信が実行される。
アプリケーションサーバは、サーバクラスタ中のサーバであり得る。たとえば、ビデオアプリケーションの異なるビデオセグメントが異なるサーバ上に分散され得る。アプリケーションサーバはまた、サーバであり得る。
通信技術が発達するにつれて、通信システムは、複数の通信ネットワークが一緒に展開される通信アーキテクチャに発展した。端末は、通信のために2つ以上の通信ネットワークにアクセスし得る。たとえば、通信ネットワークがローカルエリアネットワークであるとき、通信ネットワークは、ワイヤレスフィデリティ(Wireless Fidelity、Wi-Fi)ネットワーク、Bluetoothネットワーク、ZigBeeネットワーク、または近距離通信(Near Field Communication、NFC)ネットワークなどの近距離通信ネットワークであり得ることに留意されたい。たとえば、通信ネットワークがワイドエリアネットワークであるとき、通信ネットワークは第3世代モバイル通信技術(3rd-Generation Wireless Telephone Technology、3G)ネットワーク、第4世代モバイル通信技術(4th Generation Mobile Communication Technology、4G)ネットワーク、第5世代モバイル通信技術(5th-Generation Mobile Communication Technology、5G)ネットワーク、将来発展されるパブリックランドモバイルネットワーク(Public Land Mobile Network、PLMN)、またはインターネットであり得る。
たとえば、Wi-Fiネットワークとロングタームエボリューション(Long Term Evolution、LTE)ネットワークとが展開される図2の通信システムでは、端末は、Wi-Fiネットワークにアクセスし、発展型パケットデータゲートウェイ(Evolved Packet Data Gateway、ePDG)もしくは信頼ゲートウェイ(Trusted Gateway、TGW)を使用することによってアプリケーションサーバとのデータ送信を実行し得るか、またはLTEネットワークにアクセスし、サービングゲートウェイ(Serving Gateway、SGW)もしくはパケットデータゲートウェイ(Packet Data Network Gateway、PGW)を使用することによってアプリケーションサーバとのデータ送信を実行し得る。
異種混成ネットワークの展開は、マルチパスデータ送信サービスの開発を促進する。現在、MPTCPプロトコルは、TCPプロトコルを拡張することによって取得され、MPTCPプロトコルは、サービスがデータ送信を実行するためにマルチパスネットワークリソースを使用することを可能にするために使用される。たとえば、図2では、モバイルフォンは、Wi-FiネットワークリソースとLTEネットワークリソースとを使用することによってアプリケーションサーバとのデータ送信を実行する。図3は、TCPプロトコルスタックをMPTCPプロトコルスタックに拡張することの概略図である。TCPプロトコルスタックでは、アプリケーション(Application)レイヤにおけるデータストリームは、1つのTCP接続を使用することによって送られる。MPTCPプロトコルスタックでは、トランスポートレイヤは、MPTCPレイヤとTCPレイヤとの2つのサブレイヤに分割され、アプリケーションレイヤにおけるデータストリームは、MPTCPレイヤによって分解された2つのTCP接続を使用することによって送信される。
図4は、MPTCPの使用シナリオの概略図である。図4では、2つのTCP接続が端末デバイスとアプリケーションサーバとの間に確立される。一方のTCP接続は、Wi-Fiネットワークリソースを使用し、他方のTCP接続は、LTEネットワークリソースを使用する。アプリケーションサーバのMPTCPレイヤは、TCPのフローを2つのTCPのサブフローに分割し、次いで、2つのTCP接続を使用することによって端末デバイスに2つのTCPのサブフローを別々に送る。2つのTCPのサブフローを受信した後に、端末デバイスは、2つのサブフローを組み合わせ、次いで、アプリケーションレイヤに2つのサブフローを送る。
本出願のいくつかの実施形態では、図1に示されているワイヤレス通信システムにおける端末デバイスは、携帯情報端末機能および/または音楽プレーヤ機能などの別の機能をさらに含むポータブル端末デバイス、たとえば、ワイヤレス通信機能を有するモバイルフォン、タブレットコンピュータ、または(スマートウォッチなどの)ウェアラブルデバイスであり得る。ポータブル端末デバイスの例示的な実施形態は、限定はしないが、iOS(登録商標)、Android(登録商標)、Microsoft(登録商標)、または別のオペレーティングシステムを使用するポータブル端末デバイスを含む。代替として、ポータブル端末デバイスは、別のポータブル端末デバイス、たとえば、タッチセンシティブサーフェス(たとえば、タッチパネル)をもつラップトップ(Laptop)コンピュータであり得る。さらに、本出願のいくつかの他の実施形態では、端末デバイスは、代替として、ポータブル端末デバイスではなく、タッチセンシティブサーフェス(たとえば、タッチパネル)をもつデスクトップコンピュータであり得ることを理解されたい。
たとえば、図5に示されるように、本出願のこの実施形態における端末デバイスは、モバイルフォンであり得る。以下は、この実施形態について詳細に説明する一例としてモバイルフォンを使用する。
モバイルフォンは、プロセッサ110、外部メモリインターフェース120、内部メモリ121、USBインターフェース130、充電管理モジュール140、電力管理モジュール141、バッテリ142、アンテナ1、アンテナ2、モバイル通信モジュール150、ワイヤレス通信モジュール160、オーディオモジュール170、スピーカ170A、受話器170B、マイクロフォン170C、ヘッドセットインターフェース170D、センサモジュール180、キー190、モータ191、インジケータ192、カメラ193、ディスプレイスクリーン194、SIMカードインターフェース195などを含み得る。センサモジュール180は、圧力センサ180A、ジャイロセンサ180B、気圧センサ180C、磁気センサ180D、加速度センサ180E、距離センサ180F、光近接センサ180G、指紋センサ180H、温度センサ180J、タッチセンサ180K、周辺光センサ180L、骨伝導センサ180Mなどを含み得る。
本発明のこの実施形態において示される構造は、モバイルフォンに対する特定の限定を構成しないことが理解され得る。本出願のいくつかの他の実施形態では、モバイルフォンは、図に示されている構成要素よりも多いもしくはそれよりも少ない構成要素を含むか、いくつかの構成要素を組み合わせるか、いくつかの構成要素を分割するか、または異なる構成要素構成を有し得る。図に示されている構成要素は、ハードウェア、ソフトウェア、またはソフトウェアとハードウェアとの組合せによって実装され得る。
プロセッサ110は、1つまたは複数の処理ユニットを含み得る。たとえば、プロセッサ110は、アプリケーションプロセッサ(Application Processor、AP)、モデムプロセッサ、グラフィックス処理ユニット(Graphics Processing Unit、GPU)、画像信号プロセッサ(Image Signal Processor、ISP)、コントローラ、メモリ、ビデオコーデック、デジタル信号プロセッサ(Digital Signal Processor、DSP)、ベースバンドプロセッサ、および/またはニューラルネットワーク処理ユニット(Neural-Network Processing Unit、NPU)を含み得る。異なる処理ユニットは、独立した構成要素であり得るか、または1つもしくは複数のプロセッサに統合され得る。
コントローラは、モバイルフォンの中枢およびコマンドセンタであり得る。コントローラは、命令動作コードと時間シーケンス信号とに基づいて動作制御信号を生成して、命令読取りと命令実行との制御を完了し得る。
メモリは、さらに、プロセッサ110中に配設され得、命令とデータとを記憶するように構成される。いくつかの実施形態では、プロセッサ110中のメモリは、高速キャッシュメモリである。メモリは、プロセッサ110によって使用されたばかりのまたは周期的に使用される命令またはデータを記憶し得る。プロセッサ110が命令またはデータを再び使用する必要がある場合、プロセッサ110は、メモリから命令またはデータを直接呼び出し得る。これは、繰り返されるアクセスを回避し、プロセッサ110の待機時間を低減し、それによって、システム効率を改善する。
いくつかの実施形態では、プロセッサ110は、1つまたは複数のインターフェースを含み得る。インターフェースは、集積回路間(Inter-Integrated Circuit、I2C)インターフェース、集積回路間サウンド(Inter-Integrated Circuit Sound、I2S)インターフェース、パルスコード変調(Pulse Code Modulation、PCM)インターフェース、ユニバーサル非同期受信機/送信機(Universal Asynchronous Receiver/Transmitter、UART)インターフェース、モバイルインダストリプロセッサインターフェース(Mobile Industry Processor Interface、MIPI)、汎用入出力(General-Purpose Input/Output、GPIO)インターフェース、加入者識別モジュール(Subscriber Identity Module、SIM)インターフェース、ユニバーサルシリアルバス(Universal Serial Bus、USB)インターフェースなどを含み得る。
I2Cインターフェースは、二方向同期シリアルバスであり、シリアルデータライン(Serial Data Line、SDA)とシリアルクロックライン(Derail Clock Line、SCL)とを含む。いくつかの実施形態では、プロセッサ110は、I2Cバスの複数のグループを含み得る。プロセッサ110は、異なるI2Cバスインターフェースを通してタッチセンサ180K、充電器、フラッシュ、カメラ193などに別々に結合され得る。たとえば、プロセッサ110は、I2Cインターフェースを通してタッチセンサ180Kに結合され得、したがって、プロセッサ110は、I2Cバスインターフェースを通してタッチセンサ180Kと通信して、モバイルフォンのタッチ機能を実装する。
I2Sインターフェースは、オーディオ通信を実行するように構成され得る。いくつかの実施形態では、プロセッサ110は、I2Sバスの複数のグループを含み得る。プロセッサ110は、I2Sバスを通してオーディオモジュール170に結合されて、プロセッサ110とオーディオモジュール170との間の通信を実装し得る。いくつかの実施形態では、オーディオモジュール170は、I2Sインターフェースを通してワイヤレス通信モジュール160にオーディオ信号を送信して、Bluetoothヘッドセットを使用することによって呼に応答する機能を実装し得る。
PCMインターフェースはまた、オーディオ通信を実行することと、アナログ信号をサンプリングし、量子化し、コーディングすることとを行うように構成され得る。いくつかの実施形態では、オーディオモジュール170は、PCMバスインターフェースを通してワイヤレス通信モジュール160に結合され得る。いくつかの実施形態では、オーディオモジュール170は、代替として、PCMインターフェースを通してワイヤレス通信モジュール160にオーディオ信号を送信して、Bluetoothヘッドセットを使用することによって呼に応答する機能を実装し得る。I2SインターフェースとPCMインターフェースとの両方は、オーディオ通信を実行するように構成され得る。
UARTインターフェースは、汎用シリアルデータバスであり、非同期通信を実行するように構成される。バスは、双方向通信バスであり得る。バスは、シリアル通信とパラレル通信との間で送信されるべきデータを変換する。いくつかの実施形態では、UARTインターフェースは、通常、ワイヤレス通信モジュール160にプロセッサ110を接続するように構成される。たとえば、プロセッサ110は、UARTインターフェースを通してワイヤレス通信モジュール160中のBluetoothモジュールと通信して、Bluetooth機能を実装する。いくつかの実施形態では、オーディオモジュール170は、UARTインターフェースを通してワイヤレス通信モジュール160にオーディオ信号を送信して、Bluetoothヘッドセットを使用することによって音楽を再生する機能を実装し得る。
MIPIインターフェースは、ディスプレイスクリーン194またはカメラ193などの周辺構成要素にプロセッサ110を接続するように構成され得る。MIPIインターフェースは、カメラシリアルインターフェース(Camera Serial Interface、CSI)、ディスプレイシリアルインターフェース(Display Serial Interface、DSI)などを含む。いくつかの実施形態では、プロセッサ110は、CSIインターフェースを通してカメラ193と通信して、モバイルフォンの撮影機能を実装する。プロセッサ110は、DSIインターフェースを通してディスプレイスクリーン194と通信して、モバイルフォンのディスプレイ機能を実装する。
GPIOインターフェースは、ソフトウェアを通して構成され得る。GPIOインターフェースは、制御信号またはデータ信号として構成され得る。いくつかの実施形態では、GPIOインターフェースは、カメラ193、ディスプレイスクリーン194、ワイヤレス通信モジュール160、オーディオモジュール170、センサモジュール180などにプロセッサ110を接続するように構成され得る。GPIOインターフェースは、代替として、I2Cインターフェース、I2Sインターフェース、UARTインターフェース、MIPIインターフェースなどとして構成され得る。
USBインターフェース130は、USB標準仕様に準拠するインターフェースであり、特に、ミニUSBインターフェース、マイクロUSBインターフェース、USBタイプ-Cインターフェースなどであり得る。USBインターフェースは、モバイルフォンを充電するために充電器に接続するように構成され得るか、またはモバイルフォンと周辺デバイスとの間でデータを送信するように構成され得るか、またはヘッドセットを使用することによってオーディオを再生するためにヘッドセットに接続するように構成され得る。代替として、インターフェースは、ARデバイスなどの別の端末デバイスに接続するように構成され得る。
本発明のこの実施形態において示されているモジュール間のインターフェース接続関係は、説明のための一例にすぎず、モバイルフォンの構造に対する限定を構成しないことが理解され得る。本出願のいくつかの他の実施形態では、モバイルフォンは、代替として、上記の実施形態における方式とは異なるインターフェース接続方式を使用するか、または複数のインターフェース接続方式の組合せを使用し得る。
充電管理モジュール140は、充電器からの充電入力を受けるように構成される。充電器は、ワイヤレス充電器またはワイヤード充電器であり得る。ワイヤード充電のいくつかの実施形態では、充電管理モジュール140は、USBインターフェースを通してワイヤード充電器の充電入力を受け得る。ワイヤレス充電のいくつかの実施形態では、充電管理モジュール140は、モバイルフォンのワイヤレス充電コイルを使用することによってワイヤレス充電入力を受け得る。充電管理モジュール140は、バッテリ142を充電する間に電力管理モジュール141を使用することによって端末デバイスに電力を供給する。
電力管理モジュール141は、プロセッサ110にバッテリ142と充電管理モジュール140とを接続するように構成される。電力管理モジュール141は、バッテリ142および/または充電管理モジュール140から入力を受け、プロセッサ110、内部メモリ121、外部メモリ、ディスプレイスクリーン194、カメラ193、ワイヤレス通信モジュール160などに電力を供給する。電力管理モジュール141は、さらに、バッテリ容量、バッテリサイクルカウント、およびバッテリ正常性ステータス(漏電または電気インピーダンス)などのパラメータを監視するように構成され得る。いくつかの他の実施形態では、代替として、電力管理モジュール141は、プロセッサ110中に配設され得る。いくつかの他の実施形態では、電力管理モジュール141と充電管理モジュール140とは、代替として、同じデバイス中に配設され得る。
モバイルフォンのワイヤレス通信機能は、アンテナモジュール1、アンテナモジュール2、モバイル通信モジュール150、ワイヤレス通信モジュール160、モデムプロセッサ、ベースバンドプロセッサなどを使用することによって実装され得る。
アンテナ1およびアンテナ2は、電磁波信号を送信および受信するように構成される。モバイルフォン中の各アンテナは、1つまたは複数の通信帯域をカバーするように構成され得る。異なるアンテナは、さらに、アンテナ利用率を改善するために多重化され得る。たとえば、セルラーネットワークアンテナは、ワイヤレスローカルエリアネットワークのダイバーシティアンテナとして多重化され得る。いくつかの他の実施形態では、アンテナは、同調スイッチと組み合わせて使用され得る。
モバイル通信モジュール150は、2G/3G/4G/5Gなどを含み、モバイルフォンに適用されるワイヤレス通信解決策を与え得る。モバイル通信モジュール150は、少なくとも1つのフィルタ、スイッチ、電力増幅器、低雑音増幅器(Low Noise Amplifier、LNA)などを含み得る。モバイル通信モジュール150は、アンテナ1を通して電磁波を受信し、受信された電磁波に対してフィルタリングまたは増幅などの処理を実行し、復調のためのモデムプロセッサに処理された電磁波を送信し得る。モバイル通信モジュール150は、さらに、モデムプロセッサによって変調された信号を増幅し、アンテナ1を通した放射のために電磁波に信号を変換し得る。いくつかの実施形態では、モバイル通信モジュール150の少なくともいくつかの機能モジュールは、プロセッサ110中に配設され得る。いくつかの実施形態では、モバイル通信モジュール150の少なくともいくつかの機能モジュールとプロセッサ110の少なくともいくつかのモジュールとは、同じデバイス中に配設され得る。
モデムプロセッサは、変調器と復調器とを含み得る。変調器は、送られるべき低周波数ベースバンド信号を中または高周波信号に変調するように構成される。復調器は、受信された電磁波信号を低周波数ベースバンド信号に復調するように構成される。次いで、復調器は、処理のためのベースバンドプロセッサに復調を通して取得された低周波数ベースバンド信号を送信する。低周波数ベースバンド信号は、ベースバンドプロセッサによって処理され、次いで、アプリケーションプロセッサに送信される。アプリケーションプロセッサは、(スピーカ170A、受信機170Bなどに限定されない)オーディオデバイスを使用することによってサウンド信号を出力するか、またはディスプレイスクリーン194を使用することによって画像またはビデオを表示する。いくつかの実施形態では、モデムプロセッサは、独立した構成要素であり得る。いくつかの他の実施形態では、モデムプロセッサは、プロセッサ110とは無関係であり得、モバイル通信モジュール150または別の機能モジュールと同じデバイス中に配設される。
ワイヤレス通信モジュール160は、ワイヤレスローカルエリアネットワーク(Wireless Local Area Networks、WLAN)、Bluetooth(Bluetooth、BT)、グローバルナビゲーション衛星システム(Global Navigation Satellite System、GNSS)、周波数変調(Frequency Modulation、FM)、近距離通信(Near Field Communication、NFC)、赤外線(Infrared、IR)技術などを含むワイヤレス通信にモバイルフォンに適用される解決策を与え得る。ワイヤレス通信モジュール160は、少なくとも1つの通信処理モジュールに組み込まれる1つまたは複数の構成要素であり得る。ワイヤレス通信モジュール160は、アンテナ2を通して電磁波を受信し、電磁波信号に対して周波数変調およびフィルタリング処理を実行し、プロセッサ110に処理された信号を送る。ワイヤレス通信モジュール160は、さらに、プロセッサ110から送られるべき信号を受信し、信号に対して周波数変調および増幅を実行し、信号を、アンテナ2を通して放射するための電磁波に変換し得る。
いくつかの実施形態では、モバイルフォンのアンテナ1とモバイル通信モジュール150とが結合され、モバイルフォンのアンテナ2とワイヤレス通信モジュール160とが結合され、したがって、モバイルフォンは、ワイヤレス通信技術を使用することによってネットワークおよび別のデバイスと通信することができる。ワイヤレス通信技術は、グローバルシステムフォーモバイルコミュニケーションズ(Global System for Mobile Communications、GSM)、汎用パケット無線サービス(General Packet Radio Service、GPRS)、符号分割多元接続(Code division Multiple Access、CDMA)、広帯域符号分割多元接続(Wideband Code Division Multiple access、WCDMA)、時分割符号分割多元接続(Time-Division Code Division Multiple Access、TD-SCDMA)、ロングタームエボリューション(Long Term Evolution、LTE)、BT、GNSS、WLAN、NFC、FM、IR技術などを含み得る。GNSSは、全地球測位システム(Global Positioning System、GPS)、グローバルナビゲーション衛星システム(Global Navigation Satellite System、GLONASS)、Beidou航法衛星システム(BeiDou Navigation Satellite System、BDS)、準天頂衛星システム(Quasi-Zenith Satellite System、QZSS)、および/または衛星ベースのオーグメンテーションシステム(Satellite Based Augmentation System、SBAS)を含み得る。
モバイルフォンは、GPU、ディスプレイスクリーン194、アプリケーションプロセッサなどを使用することによってディスプレイ機能を実装する。GPUは、画像処理のためのマイクロプロセッサであり、アプリケーションプロセッサにディスプレイスクリーン194を接続する。GPUは、数学的および幾何学的な計算を実行し、画像をレンダリングするように構成される。プロセッサ110は、表示情報を生成または変更するためにプログラム命令を実行する1つまたは複数のGPUを含み得る。
ディスプレイスクリーン194は、画像、ビデオなどを表示するように構成される。ディスプレイスクリーン194は、ディスプレイパネルを含む。ディスプレイパネルは、LCD(液晶ディスプレイ、Liquid Crystal Display Screen)、OLED(有機発光ダイオード、Organic Light-Emitting Diode)、アクティブマトリックス有機発光ダイオードまたはアクティブマトリックス有機発光ダイオード(Active-Matrix Organic Light Emitting Diode、AMOLED)、フレキシブル発光ダイオード(Flex Light-Emitting Diode、FLED)、ミニLED、マイクロLED、マイクロOLED、量子ドット発光ダイオード(Quantum Dot Light Emitting Diode、QLED)などを使用し得る。いくつかの実施形態では、モバイルフォンは、1つまたはN個のディスプレイスクリーンを含み得、ここで、Nは、1よりも大きい正の整数である。
モバイルフォンは、ISP、カメラ193、ビデオコーデック、GPU、ディスプレイスクリーン194、アプリケーションプロセッサなどを使用することによって撮影機能を実装する。
ISPは、カメラ193によってフィードバックされたデータを処理するように構成される。たとえば、撮影中に、シャッタが押され、光がレンズを通してカメラの感光性要素に送られる。光信号は、電気信号に変換され、カメラの感光性要素は、処理のためのISPに電気信号を送信して、電気信号を可視画像に変換する。ISPは、さらに、画像のノイズ、明るさ、および顔色に対してアルゴリズム最適化を実行し得る。ISPは、さらに、撮影シナリオの露出および色温度などのパラメータを最適化し得る。いくつかの実施形態では、ISPは、カメラ193中に配設され得る。
カメラ193は、静止画像またはビデオをキャプチャするように構成される。オブジェクトの光画像は、レンズを通して生成され、感光性要素上に投影される。感光性要素は、電荷結合デバイス(Charge Coupled Device、CCD)または相補型金属酸化物半導体(Complementary Metal-Oxide-Semiconductor、CMOS)光電トランジスタであり得る。感光性要素は、光信号を電気信号に変換し、次いで、電気信号をデジタル画像信号に変換するためにISPに電気信号を送信する。ISPは、処理のためのDSPにデジタル画像信号を出力する。DSPは、デジタル画像信号をRGBフォーマット、YUVフォーマットなどの標準画像信号に変換する。いくつかの実施形態では、モバイルフォンは、1つまたはN個のカメラを含み得、ここで、Nは、1よりも大きい正の整数である。
デジタル信号プロセッサは、デジタル信号を処理するように構成され、デジタル画像信号に加えて別のデジタル信号を処理し得る。たとえば、モバイルフォンが周波数を選択するとき、デジタル信号プロセッサは、周波数エネルギーに対してフーリエ変換を実行するなどのように構成される。
ビデオコーデックは、デジタルビデオを圧縮または解凍するように構成される。モバイルフォンは、1つまたは複数のビデオコーデックをサポートし得る。このようにして、モバイルフォンは、複数のコーディングフォーマット、たとえば、MPEG1、MPEG2、MPEG3、およびMPEG4でビデオを再生または録画し得る。
NPUは、ニューラルネットワーク(Neural-Network、NN)コンピューティングプロセッサである。NPUは、生物学的なニューラルネットワークの構造を参考にして、たとえば人間の脳ニューロン間の転送モードを参考にして、入力情報を迅速に処理し、さらに、自己学習を連続的に実行し得る。画像認識、顔認識、音声認識、およびテキスト理解など、モバイルフォンのインテリジェント認識などのアプリケーションは、NPUを使用することによって実装され得る。
外部メモリインターフェース120は、マイクロSDカードなどの外部ストレージカードに接続するように構成されて、モバイルフォンの記憶容量を拡張し得る。外部ストレージカードは、外部メモリインターフェース120を通してプロセッサ110と通信して、データ記憶機能を実装する。たとえば、音楽およびビデオなどのファイルが外部ストレージカード中に記憶される。
内部メモリ121は、コンピュータ実行可能プログラムコードを記憶するように構成され得る。実行可能プログラムコードは命令を含む。プロセッサ110は、内部メモリ121中に記憶された命令を実行して、モバイルフォンおよびデータ処理の様々な機能アプリケーションを実行する。メモリ121は、プログラム記憶領域とデータ記憶領域とを含み得る。プログラム記憶領域は、オペレーティングシステム、少なくとも1つの機能(たとえば、サウンド再生機能または画像再生機能)によって必要とされるアプリケーションなどを記憶し得る。データ記憶領域は、モバイルフォンの使用中に作成されるデータ(たとえば、オーディオデータまたはアドレス帳)などを記憶し得る。さらに、メモリ121は、高速ランダムアクセスメモリを含み得、少なくとも1つのディスクストレージデバイス、フラッシュメモリ、またはユニバーサルフラッシュストレージ(Universal Flash Storage、UFS)などの不揮発性メモリをさらに含み得る。
モバイルフォンは、オーディオモジュール170、スピーカ170A、受信機170B、マイクロフォン170C、ヘッドセットインターフェース170D、アプリケーションプロセッサなどを使用することによって音楽再生または録音などのオーディオ機能を実装し得る。
オーディオモジュール170は、デジタルオーディオ情報を出力のためのアナログオーディオ信号に変換するように構成され、また、アナログオーディオ入力をデジタルオーディオ信号に変換するように構成される。オーディオモジュール170は、オーディオ信号をコーディングおよび復号するようにさらに構成され得る。いくつかの実施形態では、オーディオモジュール170は、プロセッサ110中に配設され得るか、またはオーディオモジュール170のいくつかの機能モジュールは、プロセッサ110中に配設される。
「ホーン」とも呼ばれるスピーカ170Aは、オーディオ電気信号をサウンド信号に変換するように構成される。モバイルフォンは、スピーカ170Aを使用することによって音楽を聴取するか、またはハンズフリー呼を聴取し得る。
「イヤピース」とも呼ばれる受信機170Bは、オーディオ電気信号をサウンド信号に変換するように構成される。モバイルフォンを使用することによって呼に応答するか、またはボイス情報を受けるとき、受信機170Bは、ボイスを聴取するために人間の耳の近くに置かれ得る。
「マイク」または「マイクロフォン」とも呼ばれるマイクロフォン170Cは、サウンド信号を電気信号に変換するように構成される。発呼するか、またはボイス情報を送るとき、ユーザは、マイクロフォン170Cにサウンド信号を入力するためにマイクロフォン170Cに人間の口を近づけることによって音を発生し得る。少なくとも1つのマイクロフォン170Cがモバイルフォン中に配設され得る。いくつかの他の実施形態では、2つのマイクロフォンがモバイルフォン中に配設されて、サウンド信号を収集し、さらに雑音低減機能を実装し得る。いくつかの他の実施形態では、3つ、4つ、またはそれより多くのマイクロフォンが、代替として、モバイルフォン中に配設されて、サウンド信号を収集すること、雑音を低減すること、音源をさらに識別すること、指向性録音機能を実装することなどを行い得る。
ヘッドセットインターフェース170Dは、ワイヤードヘッドセットに接続するように構成される。ヘッドセットインターフェースは、USBインターフェースであり得るか、または3.5mmのオープンモバイル端末デバイスプラットフォーム(Open Mobile Terminal Platform、OMTP)標準インターフェースまたは米国セルラー通信工業会(Cellular Telecommunications Industry Association of the USA、CTIA)標準インターフェースであり得る。
圧力センサ180Aは、圧力信号を感知するように構成され、圧力信号を電気信号に変換することができる。いくつかの実施形態では、圧力センサ180Aは、ディスプレイスクリーン194上に配設され得る。複数のタイプの圧力センサ180A、たとえば、抵抗型圧力センサ、誘導圧力センサ、静電容量型圧力センサがある。静電容量型圧力センサは、導電材料から製造される少なくとも2つの平行プレートを含み得る。力が圧力センサ180Aに加えられるとき、電極間の静電容量が変化する。モバイルフォンは、静電容量の変化に基づいて圧力強度を決定する。タッチ動作がディスプレイスクリーン194に対して実行されるとき、モバイルフォンは、圧力センサ180Aを使用することによってタッチ動作の強度を検出する。モバイルフォンはまた、圧力センサ180Aの検出信号に基づいてタッチロケーションを計算し得る。いくつかの実施形態では、同じタッチロケーションにおいて実行されるが、異なるタッチ動作強度を有するタッチ動作は、異なる動作命令に対応し得る。たとえば、タッチ動作強度が第1の圧力しきい値よりも小さいタッチ動作がメッセージアイコンに対して実行されるとき、SMSメッセージを閲覧するための命令が実行される。タッチ動作強度が第1の圧力しきい値以上のタッチ動作がメッセージアイコンに対して実行されるとき、新しいSMSメッセージを作成するための命令が実行される。
ジャイロセンサ180Bは、モバイルフォンの移動姿勢を決定するように構成され得る。いくつかの実施形態では、3つの軸(すなわち、x、y、およびz軸)を中心としたモバイルフォンの角速度は、ジャイロセンサ180Bを使用することによって決定され得る。ジャイロセンサ180Bは、撮影中に画像安定化を実行するように構成され得る。たとえば、シャッタが押されるとき、ジャイロセンサ180Bは、モバイルフォンが揺らぐ角度を検出し、角度に基づいた計算を通して、レンズモジュールが補償する必要のある距離を取得し、レンズが、逆の動きによってモバイルフォンの揺らぎを消去することを可能にして、画像安定化を実装する。ジャイロセンサ180Bは、さらに、ナビゲーションおよび動き検知ゲームシナリオで使用され得る。
気圧センサ180Cは、気圧を測定するように構成される。いくつかの実施形態では、モバイルフォンは、気圧センサ180Cによって測定された気圧を使用することによって高度を計算して、測位およびナビゲーションを支援する。
磁気センサ180Dは、ホールセンサを含む。モバイルフォンは、磁気センサ180Dを使用することによってフリップスマートカバーの開閉を検出し得る。いくつかの実施形態では、モバイルフォンがクラムシェルフォンであるとき、モバイルフォンは、磁気センサ180Dに基づいてフリップカバーの開/閉を検出し得る。さらに、フリップカバーの自動アンロックなどの特徴は、スマートカバーの検出された開/閉状態またはフリップカバーの検出された開/閉状態に基づいて設定される。
加速度センサ180Eは、モバイルフォンの様々な方向の(通常、3つの軸上での)加速度の値を検出し得る。モバイルフォンが静止しているとき、重力の値および方向が検出され得る。加速度センサ180Eは、さらに、端末デバイスの姿勢を識別するように構成され得、横長モードと縦長モードまたは歩数計との間の切替えなどのアプリケーションに適用される。
距離センサ180Fは、距離を測定するように構成される。モバイルフォンは、赤外線光またはレーザーを通して距離を測定し得る。いくつかの実施形態では、撮影シナリオにおいて、モバイルフォンは、距離センサ180Fを使用することによって距離を測定して、速い焦点合わせを実装し得る。
光近接センサ180Gは、発光ダイオード(LED)と光検出器、たとえば、フォトダイオードとを含み得る。発光ダイオードは、赤外線発光ダイオードであり得る。モバイルフォンは、発光ダイオードを使用することによって赤外線光を放出する。モバイルフォンは、フォトダイオードを使用することによって近くのオブジェクトからの赤外線反射光を検出する。十分な反射光が検出されるとき、モバイルフォンは、モバイルフォンの近くにオブジェクトがあると決定し得る。十分な反射光が検出されないとき、モバイルフォンは、モバイルフォンの近くにオブジェクトがないと決定し得る。モバイルフォンは、光近接センサ180Gを使用することによって、ユーザが発呼するために耳の近くにモバイルフォンを保持することを検出し、それにより電力節約のために画面を自動的にオフにし得る。光近接センサ180Gはまた、画面を自動的にアンロックまたはロックするためにスマートカバーモードまたはポケットモードで使用され得る。
周辺光センサ180Lは、周辺光の明るさを感知するように構成される。モバイルフォンは、感知された周辺光の明るさに基づいてディスプレイ画面194の明るさを適応的に調整し得る。周辺光センサ180Lはまた、撮影中にホワイトバランスを自動的に調整するように構成され得る。周辺光センサ180Lはまた、偶発的なタッチを防げるためにモバイルフォンがポケット中にあるかどうかを検出するために光近接センサ180Gと協働し得る。
指紋センサ180Hは、指紋を収集するように構成される。モバイルフォンは、指紋アンロック、アプリケーションアクセスロック、指紋撮影、指紋呼応答などを実装するために収集された指紋の特徴を使用し得る。
温度センサ180Jは、温度を検出するように構成される。いくつかの実施形態では、モバイルフォンは、温度センサ180Jによって検出された温度に基づいて温度処理ポリシーを実行する。たとえば、温度センサ180Jによって報告された温度がしきい値を超えるとき、モバイルフォンは、温度センサ180Jの近くのプロセッサのパフォーマンスを低下させて、熱保護のために電力消費量を低減する。いくつかの他の実施形態では、温度が別のしきい値よりも小さいとき、モバイルフォンは、低温度のためにモバイルフォンが異常に停止されるのを防げるためにバッテリ142を加熱する。いくつかの他の実施形態では、温度がさらに別のしきい値よりも小さいとき、モバイルフォンは、低温度によって生じる異常なシャットダウンを回避するためにバッテリ142の出力電圧をブーストする。
タッチセンサ180Kは「タッチパネル」とも呼ばれ、ディスプレイ画面194上に配設され得る。タッチセンサ180Kは、タッチセンサ180K上でまたはそれの近くで実行されたタッチ動作を検出するように構成される。タッチセンサ180Kは、アプリケーションプロセッサに検出されたタッチ動作を転送して、タッチイベントのタイプを決定し、ディスプレイ画面194を使用することによって対応する視覚出力を与え得る。いくつかの他の実施形態では、タッチセンサ180Kは、代替として、モバイルフォンのサーフェス上に配設され得、ディスプレイ画面194のロケーションとは異なるロケーションにある。
骨伝導センサ180Mは、振動信号を取得し得る。いくつかの実施形態では、骨伝導センサ180Mは、人間の発声部分の振動骨の振動信号を取得し得る。骨伝導センサ180Mはまた、人間の脈と接触し、血圧の鼓動信号を受信し得る。いくつかの実施形態では、骨伝導センサ180Mはまた、ヘッドセット中に配設され得る。オーディオモジュール170は、発声部分の振動骨の振動信号であって骨伝導センサ180Mによって取得される振動信号に基づく解析によりボイス信号を取得して、ボイス機能を実装し得る。アプリケーションプロセッサは、骨伝導センサ180Mによって取得された血圧の鼓動信号に基づいて心拍情報を解析して、心拍検出機能を実装し得る。
ボタン190は、電源ボタン、ボリュームボタンなどを含む。ボタンは、機械式ボタンであり得るか、またはタッチボタンであり得る。モバイルフォンは、ボタン入力を受信し、モバイルフォンのユーザ設定および機能制御に関係するボタン信号入力を生成する。
モータ191は、振動プロンプトを生成し得る。モータ191は、着呼振動プロンプトおよびタッチ振動フィードバックを生成するように構成され得る。たとえば、異なるアプリケーション(たとえば、撮影アプリケーションおよびオーディオ再生アプリケーション)に対して実行されるタッチ動作は、異なる振動フィードバック効果に対応し得る。モータ191はまた、ディスプレイ画面194の異なるエリアに対して実行されるタッチ動作のための異なる振動フィードバック効果に対応し得る。異なる適用シナリオ(たとえば、時間リマインダ、情報受信、アラームクロック、ゲームなど)はまた、異なる振動フィードバック効果に対応し得る。タッチ振動フィードバック効果は、さらにカスタマイズされ得る。
インジケータ192は、インジケータライトであり得、課金ステータスおよび出力変化を示すように構成され得るか、またはメッセージ、失われた呼、通知などを示すように構成され得る。
SIMカードインターフェース195は、加入者識別モジュール(Subscriber Identity Module、SIM)に接続されるように構成される。SIMカードは、SIMカードインターフェースに挿入されるかまたはSIMカードインターフェースから抜かれて、モバイルフォンとの接触またはそれからの分離を実装し得る。モバイルフォンは、1つまたはN個のSIMカードインターフェースをサポートし得、ここで、Nは、1よりも大きい正の整数である。SIMカードインターフェース195は、ナノSIMカード、マイクロSIMカード、SIMカードなどをサポートし得る。複数のカードが、同じSIMカードインターフェースに同時に挿入され得る。複数のカードは、同じタイプまたは異なるタイプのものであり得る。SIMカードインターフェース195は、異なるタイプのSIMカードにも適合可能であり得る。SIMカードインターフェース195は、外部ストレージカードにも適合可能であり得る。モバイルフォンは、発呼およびデータ通信などの機能を実装するためにSIMカードを使用することによってネットワークと対話する。いくつかの実施形態では、モバイルフォンは、eSIM、すなわち、埋込みSIMカードを使用する。eSIMカードは、モバイルフォン中に埋め込まれ得、モバイルフォンから分離されることができない。モバイルフォンのソフトウェアシステムは、階層アーキテクチャ、イベント駆動型アーキテクチャ、マイクロカーネルアーキテクチャ、マイクロサービスアーキテクチャ、またはクラウドアーキテクチャを使用し得る。本発明のこの実施形態では、階層アーキテクチャを用いるアンドロイドシステムが、モバイルフォンのソフトウェア構造について説明するために一例として使用される。
図6は、本発明の一実施形態によるモバイルフォンのソフトウェア構造のブロック図である。
階層アーキテクチャでは、ソフトウェアは、いくつかのレイヤに分割され、各レイヤは、明確な役割およびタスクを有する。レイヤは、ソフトウェアインターフェースを通して互いに通信する。いくつかの実施形態では、アンドロイドシステムは、4つのレイヤ、すなわち、上から下にアプリケーションレイヤ、アプリケーションフレームワークレイヤ、アンドロイドランタイム(Android Runtime)およびシステムライブラリ、ならびにカーネルレイヤに分割される。
アプリケーションレイヤは、一連のアプリケーションパッケージを含み得る。
図6に示されているように、アプリケーションパッケージは、「カメラ」、「ギャラリー」、「カレンダ」、「呼」、「マップ」、「ナビゲーション」、「WLAN」、「Bluetooth」、「音楽」、「ビデオ」、および「SMSメッセージ」などのアプリケーションを含み得る。
アプリケーションフレームワークレイヤは、アプリケーションプログラミングインターフェース(Application Programming Interface、API)とアプリケーションレイヤにおけるアプリケーションのためのプログラミングフレームワークとを与える。アプリケーションフレームワークレイヤは、いくつかのあらかじめ定義された機能を含む。
図6に示されているように、アプリケーションフレームワークレイヤは、ウィンドウマネージャ、コンテンツプロバイダ、ビューシステム、フォンマネージャ、リソースマネージャ、通知マネージャなどを含み得る。
ウィンドウマネージャは、ウィンドウプログラムを管理するように構成される。ウィンドウマネージャは、ディスプレイのサイズを取得すること、ステータスバーがあるかどうかを決定すること、画面をロックすること、スクリーンショットを取ることなどを行い得る。
コンテンツプロバイダは、データを記憶および取得し、データがアプリケーションによってアクセスされることを可能にするように構成される。データは、ビデオ、画像、オーディオ、発せられる呼および受話される呼、ブラウズ履歴およびブックマーク、電話帳などを含み得る。
ビューシステムは、テキストを表示するための制御およびピクチャを表示するための制御などの視覚制御を含む。ビューシステムは、アプリケーションを構築するように構成され得る。ディスプレイインターフェースは、1つまたは複数のビューを含み得る。たとえば、メッセージ通知アイコンを含むディスプレイインターフェースは、テキストディスプレイビューとピクチャディスプレイビューとを含み得る。
フォンマネージャは、モバイルフォンの通信機能、たとえば、(応答または拒否を含む)呼ステータスの管理を与えるように構成される。
リソースマネージャは、ローカライズされた文字列、アイコン、ピクチャ、レイアウトファイル、およびビデオファイルなどのアプリケーションのための様々なリソースを与える。
通知マネージャは、アプリケーションがステータスバー中に通知情報を表示することを可能にし、通知メッセージを搬送するように構成され得る。通知マネージャは、ユーザ対話を必要とすることなしに短い休止後に自動的に消失し得る。たとえば、通知マネージャは、ダウンロード完了を通知すること、メッセージ通知を与えることなどを行うように構成される。通知マネージャは、代替として、グラフまたはスクロールバーテキストの形態でシステムの上部のステータスバー中に現れる通知、たとえば、バックグラウンドで動作するアプリケーションの通知またはダイアログウィンドウの形態で画面上に現れる通知であり得る。たとえば、テキスト情報がステータスバー中にプロンプトされるか、プロンプトトーンが生成されるか、端末デバイスが振動するか、またはインジケータライトが明滅する。
アンドロイドランタイムは、カーネルライブラリと仮想マシンとを含む。アンドロイドランタイムは、アンドロイドシステムのスケジューリングおよび管理を担当する。
カーネルライブラリは、Java言語で呼び出される必要がある機能とアンドロイドのカーネルライブラリとの2つの部分を含む。
アプリケーションレイヤとアプリケーションフレームワークレイヤとは仮想マシン上で動作する。仮想マシンは、バイナリファイルとしてアプリケーションレイヤとアプリケーションフレームワークレイヤとでJavaファイルを実行する。仮想マシンは、オブジェクトのライフサイクル管理、スタック管理、スレッド管理、セキュリティおよび例外管理、ならびにガベージコレクションなどの機能を実行するように構成される。
システムライブラリは、複数の機能モジュール、たとえば、サーフェスマネージャ(Surface Manager)、媒体ライブラリ(Media Libraries)、3次元グラフィックス処理ライブラリ(たとえば、OpenGL ES)、および2Dグラフィックスエンジン(たとえば、SGL)を含み得る。
サーフェスマネージャは、ディスプレイサブシステムを管理することと、複数のアプリケーションに2Dおよび3Dレイヤの融合を与えることとを行うように構成される。
メディアライブラリは、複数の一般的に使用されるオーディオおよびビデオフォーマット、静止画像ファイルなどの再生および記録をサポートする。メディアライブラリは、MPEG4、H.264、MP3、AAC、AMR、JPG、およびPNGなどの複数のオーディオおよびビデオコーディングフォーマットをサポートし得る。
3次元グラフィックス処理ライブラリは、3次元グラフィックス図面、画像レンダリング、合成、レイヤ処理などを実装するように構成される。
2Dグラフィックスエンジンは、2D図面のための描画エンジンである。
カーネルレイヤは、ハードウェアとソフトウェアとの間のレイヤである。カーネルレイヤは、少なくともディスプレイドライバと、カメラドライバと、オーディオドライバと、センサドライバとを含む。
図7は、従来のMPTCP確立処理の一例の概略図である。Wi-Fiネットワークの信号が弱いとき、モバイルフォンとアプリケーションサーバとの間での1つの情報送信に必要なデータ送信遅延は200msであり、またはLTEネットワークの信号が強いとき、モバイルフォンとアプリケーションサーバとの間での1つの情報送信に必要なデータ送信遅延は20msであると仮定する。図7では、ステップa1において、Wi-Fiネットワークに対応する第1のTCP接続の確立を完了するためにWi-Fiネットワーク上でアプリケーションサーバとスリーウェイハンドシェイクをモバイルフォンが実行するために600msかかる。ステップb1:第1のTCP接続が正常に確立された後、アプリケーションサーバは、第1のTCP接続を使用することによってモバイルフォンにデータを送る。ステップc1:次いで、モバイルフォンは、第1のTCP接続を使用することによってアプリケーションサーバに、第2のIPアドレスが追加されているパケットを送る。この処理は200msかかる。ステップd1:アプリケーションサーバは、第2のIPアドレスを使用することによってLTEネットワーク中のモバイルフォンに肯定応答情報を送り、すなわち、モバイルフォンとアプリケーションサーバとは、第2のIPアドレスを使用することによってLTEネットワークに対応する第2のTCP接続を確立する。この処理は20msかかる。最後に、モバイルフォンは、同時に2つのTCP接続を使用することによってアプリケーションサーバとのデータ送信を実行する。
MPTCP確立処理がビデオの再生開始期間に行われる場合、ビデオストリームデータは600msの間送信されず、再生開始遅延が比較的長くなることを意味することがわかる。モバイルフォンに接続されたルータの信号が不安定であり、モバイルフォンがインターネットにアクセスすることができない場合、第1のTCP接続が確立されることができないことがある。したがって、MPTCP確立が失敗し、ビデオは適切に再生されることができない。言い換えれば、第1のTCP接続のデータ送信遅延が従来のMPTCP確立方式では比較的長くなるという問題がある。
MPTCP確立方式の上記の問題のために、本出願の一実施形態は接続確立方法を提供する。本方法は、図7のMPTCP確立方式を最適化する。たとえば、最適化されたMPTCP確立方式が図8に示されている。図8では、ステップa2において、モバイルフォンが、最初に、LTEネットワーク中のアプリケーションサーバとのスリーウェイハンドシェイクを実行し、したがって、LTEネットワークに対応する第1のTCP接続の確立を完了するのに60msしかかからない。ステップb2:第1のTCP接続が正常に確立された後、アプリケーションサーバは、第1のTCP接続を使用することによってモバイルフォンにデータを送る。ステップc2:次いで、モバイルフォンは、第1のTCP接続を使用することによってアプリケーションサーバに、第2のIPアドレスが追加されているパケットを送る。この処理は20msかかる。ステップd2:次いで、アプリケーションサーバは、第2のIPアドレスを使用することによってWi-Fiネットワーク中のモバイルフォンに肯定応答情報を送り、すなわち、モバイルフォンとアプリケーションサーバとは、第2のIPアドレスを使用することによってWi-Fiネットワークに対応する第2のTCP接続を確立する。この処理は200msかかる。最後に、モバイルフォンは、同時に2つのTCP接続を使用することによってアプリケーションサーバとのデータ送信を実行する。
図8の第1のTCP接続は、確立されるのに60msしか必要とせず、これは、図7の600msと比較して540msを節約し、再生開始遅延を短縮し、ユーザエクスペリエンスを改善するという目的を達成できることがわかる。
言い換えれば、本出願の一実施形態は、接続確立方法を提供する。本方法は、以下を含む。Wi-Fiネットワークのインターフェースとセルラーネットワークのインターフェースとの両方が利用可能である(たとえば、セルラーネットワークとWi-Fiネットワークとの両方の機能スイッチがオンになっている)ことを端末デバイスが検出するとき、端末デバイスは、最初に、比較的小さいデータ送信遅延をもつネットワークのインターフェースを通してアプリケーションサーバへの第1のTCP接続を確立し得る。第1のTCP接続が正常に確立された後、端末デバイスは、次いで、他のネットワークのインターフェースを通してアプリケーションサーバへの第2のTCP接続を確立する。特に、端末デバイスは、MPTCPの各TCP接続のデータ送信遅延であって履歴データ中で記録されているデータ送信遅延に基づいて、比較的小さいデータ送信遅延をもつターゲットネットワークを決定し得る。端末デバイスは、最初に、ターゲットネットワーク中で第1のTCP接続を確立し得る。たとえば、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延の第1の平均値と2つの標準偏差との、履歴データ中に記録されている和が、LTEネットワークに対応するTCP接続のデータ送信遅延の第2の平均値よりも小さいとき、端末は、最初に、Wi-Fiネットワークのインターフェースを通してアプリケーションサーバへの第1のTCP接続を確立する。第1のTCP接続が正常に確立された後、第2のTCP接続が、LTEネットワークのインターフェースを通してアプリケーションサーバに対して確立される。
以下は、添付の図面と適用例シナリオとを参照しながら本出願の一実施形態による接続確立方法について詳細に説明する。
図9は、本出願の一実施形態による接続確立方法のプロシージャの一例を示す。本方法は、端末デバイスによって実行され、本方法は、以下のステップを含む。
ステップ301:端末デバイスは、端末デバイスとアプリケーションサーバとの間に確立されたMPTCP接続の履歴データを取得する。
履歴データは、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延とセルラーネットワークに対応するTCP接続のデータ送信遅延とを含む。
たとえば、Huaweiビデオアプリケーション中でビデオを再生する処理中に同時にWi-FiネットワークとLTEネットワークとの両方にモバイルフォンが現在接続されている場合、モバイルフォンは、ビデオの10分間の再生持続時間中の最後の1分中にモバイルフォンとHuaweiビデオアプリケーションサーバとの間で確立される3つのMPTCPの履歴データを取得し得る。たとえば、3つのMPTCPの履歴データの特定のコンテンツは表1に示されている。
ステップ302:端末デバイスは、履歴データに基づいてWi-Fiネットワークとセルラーネットワークとから、比較的小さいデータ送信遅延を有するTCP接続をもつターゲットネットワークを決定する。
可能な設計では、TCP接続のデータ送信遅延が正規分布に準拠する場合、端末デバイスは、式1、式2、および式3に従って、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延の第1の平均値および標準偏差と、セルラーネットワークに対応するTCP接続のデータ送信遅延の第2の平均値とを計算し得る。
および
であり、ここで、μ1は、第1の平均値であり、μ2は、第2の平均値であり、σは、標準偏差であり、x1からxNは、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延であり、Nは、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延の量であり、y1からyMは、セルラーネットワークに対応するTCP接続のデータ送信遅延であり、Mは、セルラーネットワークに対応するTCP接続のデータ送信遅延の量である。
μ2≦μ1+2×σである場合、端末デバイスは、セルラーネットワークに対応するTCP接続のデータ送信遅延が、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延以下であると決定し、またはμ2>μ1+2×σである場合、端末デバイスは、セルラーネットワークに対応するTCP接続のデータ送信遅延が、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延よりも大きいと決定する。
標準偏差は、主に、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延の揺らぎを反映することに留意されたい。Wi-Fiネットワーク上では、Wi-Fiネットワークのパケットロス率は、同一チャネル干渉、アクセスユーザの量、およびレートリミッティングにより高くなり得、データ送信遅延は、異なる瞬間に大幅に変動する。したがって、ターゲットネットワークを選択するときに、端末デバイスは、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延の平均値を考慮する必要があり、さらに、標準偏差に関して包括的な決定を実行する必要がある。セルラーネットワークの揺らぎは比較的小さいので、セルラーネットワークに対応するTCP接続のデータ送信遅延の標準偏差は、本出願のこの実施形態では考慮されないことがあることに留意されたい。
たとえば、モバイルフォンは、式1に従って、表1のWi-Fiネットワークに対応するTCP接続の3つのデータ送信遅延の第1の平均値μ1を計算し、式2に従って標準偏差σを計算し、さらに、式2に従って、LTEネットワークに対応するTCP接続の3つのデータ送信遅延の第2の平均値μ2を計算し得る。μ1+2σが第2の平均値μ2以下である場合、モバイルフォンは、Wi-Fiネットワークがターゲットネットワークであると決定し、そうでない場合、モバイルフォンは、LTEネットワークがターゲットネットワークであると決定する。
および
可能な設計では、端末デバイスはまた、異なる瞬間に確立されるMPTCP接続の重み値を設定し得る。セルラーネットワークに対応するTCP接続においてより早期に確立されるTCP接続のデータ送信遅延は、より低い重みを有する。このようにして、端末デバイスは、さらに、式4に従って、履歴データ中のLTEネットワークに対応するTCP接続のデータ送信遅延の第2の加重平均値を計算し得る。
ここで、μ2’は、第2の加重平均値であり、ω1からωMは、セルラーネットワークに対応するTCP接続のデータ送信遅延の重み値であり、y1からyMは、セルラーネットワークに対応するTCP接続のデータ送信遅延であり、Mは、セルラーネットワークに対応するTCP接続のデータ送信遅延の量である。
この場合、μ2’≦μ1+2×σである場合、端末デバイスは、セルラーネットワークに対応するTCP接続のデータ送信遅延が、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延以下であると決定し、またはμ2’>μ1+2×σである場合、端末デバイスは、セルラーネットワークに対応するTCP接続のデータ送信遅延が、Wi-Fiネットワークに対応するTCP接続のデータ送信遅延よりも大きいと決定する。
たとえば、表1のセルラーネットワークに対応するTCP接続のデータ送信遅延におけるb1、b2、およびb3の重み値が、それぞれω1、ω2、およびω3であると仮定すると、端末デバイスは、さらに、式4に従って、LTEネットワークに対応するTCP接続の3つのデータ送信遅延の第2の加重平均値μ2’を計算し得る。μ1+2σが第2の平均値μ2以下であり、μ1+2σが第2の加重平均値μ2’以下である場合、モバイルフォンは、Wi-Fiネットワークがターゲットネットワークであると決定し、そうでない場合、モバイルフォンは、LTEネットワークがターゲットネットワークであると決定する。
ステップ303:ターゲットネットワークを決定した後に、端末デバイスは、ターゲットネットワークのインターフェースを通してアプリケーションサーバへの第1のTCP接続を確立し、第1のTCP接続が正常に確立された後、端末デバイスは、別のネットワークのインターフェースを通してアプリケーションサーバへの第2のTCP接続を確立する。
言い換えれば、Wi-Fiネットワークがターゲットネットワークであると決定した後に、端末デバイスは、最初に、Wi-Fiネットワークのインターフェースを通してアプリケーションサーバへの第1のTCP接続を確立し、次いで、第1のTCP接続が正常に確立された後にLTEネットワークのインターフェースを通してアプリケーションサーバへの第2のTCP接続を確立する。代替として、セルラーネットワークがターゲットネットワークであると決定した後に、端末デバイスは、最初に、セルラーネットワークのインターフェースを通してアプリケーションサーバへの第1のTCP接続を確立し、次いで、第1のTCP接続が正常に確立された後にWi-Fiネットワークのインターフェースを通してアプリケーションサーバへの第2のTCP接続を確立する。
履歴データが異なるアプリケーションのMPTCP接続の履歴データを含み得ることを考慮すると、端末デバイスのロケーションが移動する場合、端末デバイスによって現在アクセスされている基地局は、セルラーネットワークに対応し履歴データ中にあるTCP接続によってアクセスされる基地局とは異なり得る。代替的に、端末デバイスによって現在アクセスされているSSIDは、Wi-Fiネットワークに対応し、履歴データ中にあるTCP接続によってアクセスされるSSIDとは異なり得、したがって、TCP接続のデータ送信遅延は利用不可能である。履歴データが、アプリケーションの識別子と、セルラーネットワークの識別子と、Wi-Fiネットワークの識別子とをさらに含む場合、可能な設計では、ステップ302を実行するときに、端末デバイスは、最初に、履歴データから、識別子がアプリケーションサーバに対応するアプリケーションの識別子と同じであるターゲットTCP接続のデータ送信遅延セットを決定し得る。次いで、端末デバイスは、ターゲットTCP接続のデータ送信遅延セットから、識別子が現在のセルラーネットワークの識別子と同じである第1のデータ送信遅延を決定し、Wi-Fiネットワークの識別子に基づいてターゲットTCP接続のデータ送信遅延セットから、識別子が現在のWi-Fiネットワークの識別子と同じである第2のデータ送信遅延を決定する。端末デバイスは、第1のデータ送信遅延と第2のデータ送信遅延とに基づき、式1から式4に従って第1の平均値と、標準偏差と、第2の平均値と、第2の加重平均値とを計算する。
たとえば、Huaweiビデオアプリケーション中でビデオを再生する処理中に同時にWi-FiネットワークとLTEネットワークとの両方にモバイルフォンが現在接続されている場合、モバイルフォンは、ビデオの10分間の再生持続時間中の最後の1分中にモバイルフォンとHuaweiビデオアプリケーションサーバとの間で確立される3つのMPTCPの履歴データを取得し得る。たとえば、3つのMPTCPの履歴データの特定のコンテンツが表2に示されている。
モバイルフォン上で現在動作しているアプリケーションの識別子が001であり、現在アクセスされているSSIDがmyhomeであり、セルIDが100であると仮定すると、モバイルフォンはa1、a2、b1、およびb2のみを使用することによって第1の平均値と、標準偏差と、第2の平均値と、第2の加重平均値とを計算し得る。特定の計算方式は、上記の式に示されており、本明細書では、詳細は再び説明されない。
別の可能な設計では、端末デバイスは、エージングタイムを設定して、現在の瞬間から指定された持続時間までに発生する履歴データを消去し、最新のMPTCP接続の履歴データのみを保持し得る。たとえば、端末デバイスは、現在の瞬間から1分より前のMPTCP接続の履歴データを消去し、現在の瞬間から1分以内のMPTCP接続の履歴データのみを保持する。そのような履歴データは、Wi-FiネットワークとセルラーネットワークとのTCP接続のデータ送信遅延のサイズを正確に反映し、ターゲットネットワークを決定するのを助けることができる。
可能な設計では、端末デバイスのロケーションが変化するか、または、端末が2つのセルの重要なロケーションにある場合、セルラー基地局のアクセスポイントまたは端末デバイスによって現在アクセスされているワイヤレスルータが変化する。言い換えれば、現在アクセスされているセルラーネットワークおよびWi-Fiネットワークのインターフェースは、履歴データ中のMPTCP接続のインターフェースとは異なる。この場合、現在アクセスされているセルラーネットワークのインターフェースに対応するTCP接続の第1のデータ送信遅延および第1のアプリケーション識別子と、現在アクセスされているWi-Fiネットワークのインターフェースに対応するTCP接続の第2のデータ送信遅延および第1のアプリケーション識別子とは、履歴データから発見されないことがある。この場合、Wi-Fiネットワークのインターフェースとセルラーネットワークのインターフェースとの両方が利用可能であるとき、端末デバイスは、現在アクセスされているセルラーネットワークがLTEネットワークであるかどうか、および信号強度が指定されたしきい値よりも大きいかどうかを決定し得る。両方の条件が満たされる場合、端末デバイスは、ターゲットネットワークがLTEネットワークであると決定し、最初に、LTEネットワークのインターフェースを通してアプリケーションサーバへの第1のTCP接続を確立する。そうでない場合、端末デバイスは、Wi-Fiネットワークのインターフェースを通してアプリケーションサーバへの第1のTCP接続を最初に確立する。現在のLTEネットワークが2Gネットワークおよび3Gネットワークと比較して比較的小さいデータ送信遅延を有するので、セルラーネットワーク中のLTEネットワークが最初に選択される。
端末デバイスが、セルラーネットワークを使用することによってアプリケーションサーバへの第1のTCP接続を確立するときに端末デバイスがセルラーネットワークをアクティブ化するために200msかかり得ることを考慮すると、セルラーネットワークを使用することによってアプリケーションサーバへの第1のTCP接続を確立する前に、端末デバイスは、最初に、端末デバイスによってアクセスされるセルラー基地局にパケットを送って、端末デバイスのセルラーネットワークをアクティブ化し得る。これは、セルラーネットワークが使用されないとき、端末デバイスのセルラーネットワークはスリープ状態にあり、起動処理は約200msの持続時間を必要とするからである。端末デバイスがセルラーネットワークに対応するTCP接続を確立する前にパケットが生成される場合、セルラーネットワークは、事前に起動され、それによって、約200msを節約し得る。実際の設計では、端末デバイスによって送られたパケットは、UDPパケットであり得、セルラー基地局は、パケットを受信した後に情報を戻す必要がない。さらに、パケットに対応する宛先IPアドレスは、存在しない受信機のIPアドレスであり、それにより、セルラーネットワークをアクティブ化するために使用されるパケットが攻撃パケットとして識別されることを防ぎ得る。
図10Aおよび図10Bに示されている方法フローチャートを参照して、以下は、主に、ビデオアプリケーションサーバからストリーミングメディアを再生するときにモバイルフォンがMPTCPを確立する一例を使用することによって図9に示されている接続確立方法について詳細に説明する。
ステップ401:モバイルフォンは、Huaweiビデオアプリケーション中でのユーザの動作命令に応答してHuaweiビデオアプリケーションサーバへのネットワーク接続を確立する。モバイルフォンは、Wi-FiネットワークとLTEネットワークとが現在同時に利用可能であるかどうかを決定する。Wi-FiネットワークとLTEネットワークとが同時に利用可能でない場合、ステップ402が実行され、そうでない場合、ステップ403が実行される。
ステップ402:ただ1つのネットワークが現在利用可能であるとモバイルフォンが決定する場合、モバイルフォンは、TCP接続を作成するためにネットワークを直接選択する。
ステップ403:Wi-FiネットワークとLTEネットワークとの両方が現在利用可能であるとモバイルフォンが決定する場合、モバイルフォンは、履歴データが存在するかどうか、たとえば、履歴的に確立されたMPTCPのデータが過去1分以内に存在するかどうかを決定する。履歴データが存在しない場合、ステップ404aが実行され、そうでない場合、ステップ404bが実行される。
ステップ404a:モバイルフォンのロケーションが変化する場合、現在アクセスされているセルおよびSSIDの履歴データと同じである履歴データがない。この場合、モバイルフォンは、現在アクセスされているセルラーネットワークがLTEネットワークであるかどうかを決定する。現在アクセスされているセルラーネットワークがLTEネットワークである場合、ステップ405aが実行され、そうでない場合、ステップ408aが実行される。
ステップ405a:モバイルフォンは、LTEネットワークのRSSIが設定値よりも大きいかどうかを決定する。LTEネットワークのRSSIが設定値よりも大きい場合、ステップ406aが実行され、そうでない場合、ステップ408aが実行される。
ステップ406a:モバイルフォンは、モバイルフォンによってアクセスされるLTEネットワークの基地局にUDPパケットを送り、ここで、UDPパケットは、LTEネットワークをアクティブ化するために使用される。
ステップ407a:モバイルフォンは、LTEネットワークのインターフェースを使用することによって第1のTCP接続を確立し、第1のTCP接続が正常に確立された後、モバイルフォンは、Wi-Fiネットワークのインターフェースを使用することによってアプリケーションサーバへの第2のTCP接続を確立する。
ステップ408a:現在アクセスされているセルラーネットワークが2Gネットワークもしくは3Gネットワークであるか、またはモバイルフォンによって現在アクセスされているLTEネットワークの受信信号強度インジケータ(Received Signal Strength Indication、RSSI)が設定値以下である(たとえば、信号バーの量が3以下である)とモバイルフォンが決定する場合、モバイルフォンは、Wi-Fiネットワークのインターフェースを使用することによって第1のTCP接続を確立する。第1のTCP接続が正常に確立された後、モバイルフォンは、セルラーネットワークのインターフェースを使用することによってアプリケーションサーバへの第2のTCP接続を確立する。
ステップ404b:履歴データが、モバイルフォンによって現在アクセスされているセルおよびSSIDの履歴データと同じである履歴データを含む場合、モバイルフォンは、セルラーネットワークに対応するTCP接続のデータ送信遅延とWi-Fiネットワークに対応するTCP接続のデータ送信遅延とを取得する。TCP接続のデータ送信遅延が正規分布に準拠する場合、モバイルフォンは、第1の平均値およびWi-Fiネットワークに対応するTCP接続のラウンドトリップ時間(Round-Trip Time、RTT)遅延の標準偏差と、第2の加重平均値およびセルラーネットワークに対応するTCP接続のRTTの第2の平均値とを計算する。
ステップ405b:モバイルフォンは、第1の平均値が第2の平均値よりも小さいかどうかを決定し、第1の平均値が第2の平均値よりも小さい場合、ステップ406bが実行され、そうでない場合、ステップ408bが実行される。
ステップ406b:モバイルフォンは、次いで、第1の平均値と2つの標準偏差との和が第2の加重平均値よりも小さいかどうかを決定し、和が第2の加重平均値よりも小さい場合、ステップ407bが実行され、そうでない場合、ステップ408bが実行される。
ステップ407b:モバイルフォンは、LTEネットワークのインターフェースを使用することによって第1のTCP接続を確立し、第1のTCP接続が正常に確立された後、モバイルフォンは、Wi-Fiネットワークのインターフェースを使用することによってアプリケーションサーバへの第2のTCP接続を確立する。
ステップ408b:モバイルフォンは、セルラーネットワークのインターフェースを使用することによって第1のTCP接続を確立し、第1のTCP接続が正常に確立された後、モバイルフォンは、Wi-Fiネットワークのインターフェースを使用することによってアプリケーションサーバへの第2のTCP接続を確立する。
最後に、モバイルフォンは、2つのTCP接続を確立するために使用されたRTTを記録し、次いで、後続のMPTCP確立のための履歴データとしてRTTを保存する。
結論として、MPTCPを確立した後に毎回、端末デバイスは、MPTCPの各TCP接続のデータ送信遅延を記録し得る。したがって、端末デバイスは、履歴TCP接続のデータ送信遅延情報を取得するために遅延検出手段を使用するまたは別のパケットを送る必要がなく、利用可能性は比較的高い。さらに、端末デバイスは、最初に、比較的小さいデータ送信遅延を用いてネットワーク中で第1のTCP接続を確立し、したがって、再生開始遅延が著しく低減されることができる。現在、テストを通して、モバイルフォンがビデオを再生するためにiQIYIを開始するとき、モバイルフォンによって現在アクセスされているLTEネットワークおよびWi-Fiネットワークの信号が比較的良好である場合、本出願では、従来のMPTCP確立方式と比較して約0.32秒の再生開始遅延が低減されるか、またはモバイルフォンによって現在アクセスされているLTEネットワークの信号は比較的強いが、Wi-Fiネットワークの信号が比較的弱い場合、本出願では、約0.25秒の再生開始遅延が低減されることができることがわかっている。本出願のこの実施形態において提供される方法は、端末デバイスによって完全に実行され得、サービス側からデータを取得する必要がなく、すなわち、最適化が端末側上でしか実行されない。したがって、最適化コストが比較的低い。
本出願の一実施形態は、コンピュータ可読記憶媒体をさらに提供する。コンピュータ可読記憶媒体は、コンピュータプログラムを含む。コンピュータプログラムが端末デバイス上で実行されるとき、端末デバイスは、上記の接続確立方法の任意の可能な実装を実行することが可能になる。
本出願の一実施形態は、コンピュータプログラム製品をさらに提供する。コンピュータプログラム製品が端末デバイス上で実行されるとき、端末デバイスは、上記の接続確立方法の任意の可能な実装を実行することが可能になる。
本出願のいくつかの実施形態では、本出願の一実施形態は、接続確立装置を開示する。図11に示されているように、データ送信装置は、上記の方法実施形態において記録された方法を実装するように構成され、処理モジュール1101とトランシーバモジュール1102とを含む。処理モジュール1101は、端末デバイスが図9のステップ301からステップ303と図10Aおよび図10Bのステップ401からステップ408bを実行するのをサポートするように構成される。トランシーバモジュール1102は、端末デバイスがアクセスされたセルラーネットワークの基地局にパケットを送って、端末デバイスのセルラーネットワークをアクティブ化するのをサポートするように構成される。上記の方法実施形態におけるステップのすべての関連するコンテンツは、対応する機能モジュールの機能説明で言及され得る。本明細書では、詳細は再び説明されない。
本出願のいくつかの他の実施形態では、本出願の一実施形態は、端末デバイスを開示する。図12に示されているように、端末デバイスは、1つまたは複数のプロセッサ1201と、メモリ1202と、ディスプレイ1203と、1つまたは複数のアプリケーション(図示せず)と、1つまたは複数のコンピュータプログラム1204とを含み得る。上記の構成要素は、1つまたは複数の通信バス1205を使用することによって互いに接続され得る。1つまたは複数のコンピュータプログラム1204は、メモリ1202中に記憶され、1つまたは複数のプロセッサ1201によって実行される。1つまたは複数のコンピュータプログラム1204は、命令を含み、命令は、図9、図10Aおよび図10Bのステップと対応する実施形態とを実行するために使用され得る。
実装に関する上記の説明は、当業者が、便利で簡単な説明のために、上記の機能モジュールの区分が説明のために一例として取り上げられていることを理解することを可能にする。実際の適用例では、上記の機能は、異なるモジュールに割り振られ、要求に従って実装され得、すなわち、装置の内部構造は、上記で説明された機能の全部または一部を実装するために異なる機能モジュールに分割される。上記のシステム、装置、およびユニットの詳細な作業処理については、上記の方法実施形態における対応する処理を参照し、本明細書では、詳細は再び説明されない。
本出願の実施形態における機能ユニットは、1つの処理ユニットに統合され得るか、またはユニットの各々は、物理的に単独で存在し得るか、または2つ以上のユニットは、1つのユニットに統合される。統合ユニットは、ハードウェアの形態で実装され得るか、またはソフトウェア機能ユニットの形態で実装され得る。
統合ユニットがソフトウェア機能ユニットの形態で実装され、独立した製品として販売または使用されるとき、統合ユニットは、コンピュータ可読記憶媒体中に記憶され得る。そのような理解に基づいて、本質的に本出願の実施形態の技術的解決策、または従来の技術に寄与する部分、または技術的解決策の全部または一部は、ソフトウェア製品の形態で実装され得る。コンピュータソフトウェア製品は、記憶媒体中に記憶され、本出願の実施形態において説明される方法のステップの全部または一部を実行するように(パーソナルコンピュータ、サーバ、またはネットワークデバイスであり得る)コンピュータデバイスまたはプロセッサに命令するためのいくつかの命令を含む。上記の記憶媒体は、フラッシュメモリ、リムーバブルハードディスク、読取り専用メモリ、ランダムアクセスメモリ、磁気ディスク、または光ディスクなど、プログラムコードを記憶することができる任意の媒体を含む。
上記の説明は、本出願の実施形態の特定の実装にすぎず、本出願の実施形態の保護範囲を限定するものではない。本出願の実施形態において開示される技術的範囲内のいかなる変更または置換も、本出願の実施形態の保護範囲内に入るものとする。したがって、本出願の実施形態の保護範囲は、特許請求の保護範囲の対象であるものとする。
たとえば、モバイルフォンは、式1に従って、表1のWi-Fiネットワークに対応するTCP接続の3つのデータ送信遅延の第1の平均値μ1を計算し、式2に従って標準偏差σを計算し、さらに、式3に従って、LTEネットワークに対応するTCP接続の3つのデータ送信遅延の第2の平均値μ2を計算し得る。μ1+2σが第2の平均値μ2以下である場合、モバイルフォンは、Wi-Fiネットワークがターゲットネットワークであると決定し、そうでない場合、モバイルフォンは、LTEネットワークがターゲットネットワークであると決定する。