(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-13
(45)【発行日】2024-03-22
(54)【発明の名称】マルチネットワーク接続のためのスマートフォントグル
(51)【国際特許分類】
H04M 1/724 20210101AFI20240314BHJP
H04W 88/06 20090101ALI20240314BHJP
H04W 48/18 20090101ALI20240314BHJP
H04W 48/16 20090101ALI20240314BHJP
H04L 45/85 20220101ALI20240314BHJP
【FI】
H04M1/724
H04W88/06
H04W48/18 113
H04W48/16 131
H04W48/16 132
H04L45/85
(21)【出願番号】P 2022535721
(86)(22)【出願日】2019-12-11
(86)【国際出願番号】 US2019065807
(87)【国際公開番号】W WO2021118563
(87)【国際公開日】2021-06-17
【審査請求日】2022-08-04
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】チャク,ダニエル
(72)【発明者】
【氏名】アナンド,バルン
(72)【発明者】
【氏名】スティルウェル,アレックス
(72)【発明者】
【氏名】アグラワル,シシャ
(72)【発明者】
【氏名】リー,チンシー
【審査官】永田 義仁
(56)【参考文献】
【文献】米国特許出願公開第2018/0164963(US,A1)
【文献】国際公開第2015/059860(WO,A1)
【文献】米国特許出願公開第2017/0171804(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04B7/24-7/26
H04L12/00-12/28
12/44-12/66
45/00-49/9057
H04M1/00
1/24-1/82
99/00
H04W4/00-99/00
(57)【特許請求の範囲】
【請求項1】
方法(500)であって、
第1のネットワークオペレータ(70)に関連付けられる
2つ以上のキャリア仲介無線ネットワーク(120)に接続されるモバイルデバイス(110)について、各ネットワーク(120)は前記モバイルデバイス(110)に同時に接続され、前記方法は、前記モバイルデバイス(110)のデータ処理ハードウェア(112)が、画面(119)上に表示され前記データ処理ハードウェア(112)と通信するグラフィカルユーザインターフェイス(115)を実行することを含み、前記グラフィカルユーザインターフェイス(115)は、
前記モバイルデバイス(110)が、前記第1のネットワークオペレータ(70)に関連付けられる前記
2つ以上のキャリア仲介無線ネットワーク(120)のうちの少なくとも1つのキャリア仲介無線ネットワーク(120)に現在接続されていることを示すステータスグラフィック(320)と、
前記モバイルデバイス(110)と前記第1のネットワークオペレータ(70)に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク(120)との間の接続(122)を無効にすることと、前記モバイルデバイス(110)と前記第1のネットワークオペレータ(70)に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク(120)との間の接続(122)を有効にすることとの間で選択するためのユーザ入力指示を受信するよう構成される対話型グラフィック(330)とをレンダリングし、前記方法はさらに、
前記データ処理ハードウェア(112)において、前記モバイルデバイス(110)と前記第1のネットワークオペレータ(70)に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク(120)との間の接続(122)を無効にするために前記グラフィカルユーザインターフェイス(115)内にレンダリングされる前記対話型グラフィック(330)の選択を示す第1のユーザ入力指示(312)を受信することと、
前記第1のユーザ入力指示(312)の受信に応答して、
前記データ処理ハードウェア(112)が、前記モバイルデバイス(110)を、前記第1のネットワークオペレータ(70)に関連付けられる前記
2つ以上のキャリア仲介無線ネットワーク(120)の各々から切断することと、
前記データ処理ハードウェア(112)が、前記モバイルデバイス(110)を、前記第1のネットワークオペレータ(70)とは異なる第2のネットワークオペレータ(70)に関連付けられる1つ以上の無線ネットワーク(120)に接続することとを含み、前記第2のネットワークオペレータ(70)に関連付けられる前記1つ以上の無線ネットワーク(120)は前記1つ以上のユーザ仲介無線ネットワーク(120)を含み、前記方法はさらに、
前記データ処理ハードウェア(112)が、前記ステータスグラフィック(320)を更新して、前記モバイルデバイス(110)が前記第1のネットワークオペレータ(70)に関連付けられるいずれのキャリア仲介無線ネットワーク(120)にも現在接続されておらず、代わりに前記第
2のネットワークオペレータ(70)に関連付けられる
前記1つ
以上の
ユーザ仲介無線ネットワーク(120)に接続されていることを示すこ
とを含み、
前記モバイルデバイス(110)と前記第1のネットワークオペレータ(70)に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク(120)との間の接続(122)が、前記第1のユーザ入力指示(312)の受信に応答して無効にされると、前記モバイルデバイス(110)と前記第1のネットワークオペレータ(70)以外のネットワークオペレータ(70)に関連付けられる任意の利用可能な無線ネットワーク(120)との間の接続(122)が有効にされる、方法。
【請求項2】
前記方法は、さらに、前記モバイルデバイス(110)が、前記第1のネットワークオペレータ(70)に関連付けられる少なくとも2つのキャリア仲介無線ネットワーク(120)に同時に接続されるとき、
前記データ処理ハードウェア(112)が、前記少なくとも2つのキャリア仲介無線ネットワーク(120)のうちの1つを、前記第1のネットワークオペレータ(70)に関連付けられる優先キャリア仲介無線ネットワーク(120)として識別することをさらに含み、
前記グラフィカルユーザインターフェイス(115)にレンダリングされる前記ステータスグラフィック(320)は、前記モバイルデバイス(110)が前記優先キャリア仲介無線ネットワーク(120)に現在接続されていることを示す、請求項1に記載の方法。
【請求項3】
前記方法は、さらに、前記モバイルデバイス(110)が、前記第1のネットワークオペレータ(70)に関連付けられる少なくとも2つのキャリア仲介無線ネットワーク(120)に同時に接続されるとき、
前記モバイルデバイス(110)が同時に接続される前記少なくとも2つのキャリア仲介無線ネットワーク(120)の各キャリア仲介無線ネットワーク(120)について、前記データ処理ハードウェア(112)が、前記モバイルデバイス(110)と対応するキャリア仲介無線ネットワーク(120)との間の接続(122)の接続品質(240b)を判断することと、
前記データ処理ハードウェア(112)が、前記モバイルデバイス(110)が同時に接続されている前記少なくとも2つのキャリア仲介無線ネットワーク(120)のうちのどのキャリア仲介無線ネットワーク(120)が最高の接続品質(240b)に関連付けられるかを識別することとを含み、
前記グラフィカルユーザインターフェイス(115)にレンダリングされる前記ステータスグラフィック(320)は、前記モバイルデバイス(110)と前記最高の接続品質(240b)に関連付けられる前記識別されたキャリア仲介無線ネットワーク(120)との間の前記接続(122)を示す、請求項1または2に記載の方法。
【請求項4】
前記グラフィカルユーザインターフェイス(115)内にレンダリングされる前記ステータスグラフィック(320)は、さらに、前記モバイルデバイス(110)と前記最高の接続品質(240b)に関連付けられる前記識別されたキャリア仲介無線ネットワーク(120)との間の前記接続(122)の前記接続品質(240b)の値を示す、請求項3に記載の方法(500)。
【請求項5】
前記第1のユーザ入力指示(312)を受信する前に、前記モバイルデバイス(110)は、少なくとも第1のキャリア仲介無線ネットワーク(120)および第2のキャリア仲介無線ネットワーク(120)に同時に接続され、前記第1のキャリア仲介無線ネットワーク(120)は、前記第1のネットワークオペレータ(70)に関連付けられるキャリア仲介セルラーネットワークを含み、前記第2のキャリア仲介無線ネットワーク(120)は、前記第1のネットワークオペレータ(70)に関連付けられるキャリア仲介ワイヤレスフィデリティ(Wi-Fi:登録商標)ネットワークを含む、請求項1~4のいずれか1項に記載の方法(500)。
【請求項6】
前記第1のネットワークオペレータ(70)に関連付けられる前記
2つ以上のキャリア仲介無線ネットワーク(120)の各々から前記モバイルデバイス(110)を切断することは、前記第1のネットワークオペレータ(70)に関連付けられる前記
2つ以上のキャリア仲介無線ネットワーク(120)のうちの少なくとも1つのワイヤレスフィデリティ(Wi-Fi)ネットワーク(120)から前記モバイルデバイス(110)を切断することを含み、
前記モバイルデバイス(110)を前記第2のネットワークオペレータ(70)に関連付けられる前記1つ以上の無線ネットワーク(120)に接続することは、前記モバイルデバイス(110)を前記第2のネットワークオペレータ(70)に関連付けられる前記1つ以上の無線ネットワーク(120)のうちの少なくとも1つのWi-Fiネットワークに接続することを含む、請求項
1~5のいずれか1項に記載の方法(500)。
【請求項7】
前記第2のネットワークオペレータ(70)に関連付けられる前記1つ以上の無線ネットワーク(120)は、キャリア仲介無線ネットワーク(120)またはユーザ仲介無線ネットワーク(120)を含む、請求項
1~6のいずれか1項に記載の方法(500)。
【請求項8】
前記方法は、前記第1のユーザ入力指示(312)を受信したことに応答して、前記データ処理ハードウェア(112)が、前記モバイルデバイス(110)と前記第1のネットワークオペレータ(70)以外のネットワークオペレータ(70)に関連付けられる無線ネットワーク(120)との間の任意の既存の接続(122)を維持することをさらに含む、請求項1~
7のいずれか1項に記載の方法(500)。
【請求項9】
前記方法は、さらに、前記第1のユーザ入力指示(312)を受信した後、
前記データ処理ハードウェア(112)において、前記モバイルデバイス(110)と前記第1のネットワークオペレータ(70)に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク(120)との間の接続(122)を有効にするために前記グラフィカルユーザインターフェイス(115)にレンダリングされる前記対話型グラフィック(330)の選択を示す第2のユーザ入力指示を受信することと、
前記第2のユーザ入力指示(312)の受信に応答して、
前記データ処理ハードウェア(112)が、前記モバイルデバイス(110)を、前記第1のネットワークオペレータ(70)に関連付けられる1つ以上の利用可能なキャリア仲介無線ネットワーク(120)に接続することと、
前記データ処理ハードウェア(112)が、前記ステータスグラフィック(320)を再更新して、前記モバイルデバイス(110)が前記第1のネットワークオペレータ(70)に関連付けられる少なくとも1つのキャリア仲介無線ネットワーク(120)に現在接続されていることを示すこととさらに含む、請求項1~
8のいずれか1項に記載の方法(500)。
【請求項10】
前記画面(119)上における表示のために前記グラフィカルユーザインターフェイス(115)を実行することは、前記モバイルデバイス(110)が前記第1のネットワークオペレータ(70)に関連付けられていない少なくとも1つの無線ネットワーク(120)に現在接続されていることを示す第2のステータスグラフィック(320)を前記グラフィカルユーザインターフェイス(115)にさらにレンダリングさせる、請求項1~
9のいずれか1項に記載の方法(500)。
【請求項11】
前記方法は、前記データ処理ハードウェア(112)が、異なるオペレータ(70)に関連付けられる少なくとも1つの無線接続(122)の接続品質(240b)を示す第2のグラフィカル指示を表示することをさらに含む、請求項1~
10のいずれか1項に記載の方法(500)。
【請求項12】
前記モバイルデバイス(110)と前記第1のネットワークオペレータ(70)に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク(120)との間の接続(122)が、前記第1のユーザ入力指示(312)の受信に応答して無効にされるとき、前記第1のネットワークオペレータ(70)に関連付けられる前記キャリア仲介無線ネットワーク(120)のうちの少なくとも1つに関連付けられる前記モバイルデバイス(110)の無線は、有効にされたままである、請求項1~
11のいずれか1項に記載の方法(500)。
【請求項13】
システム(100)であって、
モバイルデバイス(110)のデータ処理ハードウェア(112)と、
前記データ処理ハードウェア(112)と通信するメモリハードウェア(114)とを備え、前記メモリハードウェア(114)は、前記データ処理ハードウェア(112)上で実行されると前記データ処理ハードウェア(112)に請求項1~
12のいずれか1項に記載の方法を実行させる命令を記憶する、システム。
【請求項14】
請求項1~
12のいずれか1項に記載の方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ユーザデバイスのマルチネットワーク接続をトグルすることに関する。
【背景技術】
【0002】
背景
モバイルデバイス(例えば、スマートフォン)および他のユーザデバイスは、典型的には、異なる無線接続技術(例えば、セルラー、Wi-Fi(登録商標)、Bluetooth(登録商標))のホストを提供する。モバイルデータのコストを低減するために、移動体通信事業者(MNO:mobile network operator)および仮想移動体通信事業者(MNVO:mobile virtual network operator)は、多くの場合、追加の低コストネットワーク(たとえば、Wi-Fiネットワーク)を仲介し、可能な場合、顧客モバイルデータをセルラー接続(例えば、4G、5G)から低コストネットワークにオフロードしている。現代のモバイルオペレーティングシステムは、これらのキャリア仲介ネットワーク接続とユーザ仲介ネットワーク接続とを明確に区別せず、代わりに無線ベースでモバイルデバイスへの接続に対する制御を提供する。
【発明の概要】
【課題を解決するための手段】
【0003】
概要
本開示の一態様は、マルチネットワーク接続をトグルする方法を提供する。いくつかの実現例では、本方法は、第1のネットワークオペレータに関連付けられる1つ以上のキャリア仲介無線ネットワークに接続されるモバイルデバイスについて、各ネットワークはモバイルデバイスに同時に接続され、モバイルデバイスのデータ処理ハードウェアが、画面上に表示されデータ処理ハードウェアと通信するグラフィカルユーザインターフェイスを実行することを含む。グラフィカルユーザインターフェイスは、モバイルデバイスが第1のネットワークオペレータに関連付けられる1つ以上のキャリア仲介無線ネットワークのうちの少なくとも1つのキャリア仲介無線ネットワークに現在接続されていることを示すステータスグラフィックをレンダリングする。本方法は、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続を無効にすることと、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続を有効にすることとの間で選択するためのユーザ入力指示を受信するよう構成される対話型グラフィックも含む。本方法は、データ処理ハードウェアにおいて、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続を無効にするためにグラフィカルユーザインターフェイスにおいてレンダリングされる対話型グラフィックの選択を示す第1のユーザ入力指示を受信することも含む。第1のユーザ入力指示を受信したことに応答して、本方法は、データ処理ハードウェアが、第1のネットワークオペレータに関連付けられる1つ以上のキャリア仲介無線ネットワークの各々からモバイルデバイスを切断することを含む。本方法は、データ処理ハードウェアが、モバイルデバイスが第1のネットワークオペレータに関連付けられるいずれのキャリア仲介無線ネットワークにも現在接続されていないことを示すようにステータスグラフィックを更新することも含む。第1のユーザ入力指示の受信に応答して、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続が無効にされると、モバイルデバイスと第1のネットワークオペレータ以外のネットワークオペレータに関連付けられる任意の利用可能な無線ネットワークとの間の接続が有効にされる。
【0004】
本開示の実現例は、以下の任意選択の特徴のうちの1つ以上を含んでもよい。いくつかの実現例では、モバイルデバイスが第1のネットワークオペレータに関連付けられる少なくとも2つのキャリア仲介無線ネットワークに同時に接続されるとき、本方法は、データ処理ハードウェアが、少なくとも2つのキャリア仲介ネットワークのうちの1つを第1のネットワークオペレータに関連付けられる優先キャリア仲介無線ネットワークとして識別することを含む。グラフィカルユーザインターフェイス内にレンダリングされるステータスグラフィックは、モバイルデバイスが優先キャリア仲介無線ネットワークに現在接続されていることを示してもよい。
【0005】
いくつかの例では、モバイルデバイスが第1のネットワークオペレータに関連付けられる少なくとも2つのキャリア仲介無線ネットワークに同時に接続されるとき、モバイルデバイスが同時に接続される少なくとも2つのキャリア仲介無線ネットワークの各キャリア仲介無線ネットワークについて、データ処理ハードウェアが、モバイルデバイスと対応するキャリア仲介無線ネットワークとの間の接続の接続品質を判定する。本方法は、データ処理ハードウェアが、モバイルデバイスが同時に接続されている少なくとも2つのキャリア仲介無線ネットワークのうちのどのキャリア仲介無線ネットワークが最高の接続品質に関連付けられているかを識別することも含んでもよい。グラフィカルユーザインターフェイスにレンダリングされるステータスグラフィックは、モバイルデバイスと最高の接続品質に関連付けられる識別されたキャリア仲介無線ネットワークとの間の接続を示す。任意選択で、グラフィカルユーザインターフェイス内にレンダリングされるステータスグラフィックは、さらに、モバイルデバイスと最高の接続品質に関連付けられる識別されたキャリア仲介無線ネットワークとの間の接続の接続品質の値を示す。
【0006】
本方法は、第1のユーザ入力指示を受信する前に、モバイルデバイスが少なくとも第1のキャリア仲介無線ネットワークおよび第2のキャリア仲介無線ネットワークに同時に接続された状態で、第1のキャリア仲介無線ネットワークは、第1のネットワークオペレータに関連付けられるキャリア仲介セルラーネットワークを含んでもよく、第2のキャリア仲介無線ネットワークは、第1のネットワークオペレータに関連付けられるキャリア仲介ワイヤレスフィデリティ(Wi-Fi)ネットワークを含んでもよい。いくつかの例では、第1のユーザ入力指示を受信したことに応答して、本方法は、データ処理ハードウェアが、モバイルデバイスを、第1のネットワークオペレータとは異なる第2のネットワークオペレータに関連付けられる1つ以上の無線ネットワークに接続することを含む。これらの例では、第2のネットワークオペレータに関連付けられる1つ以上の無線ネットワークがユーザ仲介無線ネットワークを含む場合、第1のユーザ入力指示の受信に応答して、モバイルデバイスが第1のネットワークオペレータに関連付けられる任意のキャリア仲介無線ネットワークに現在接続されていないことを示すようにステータスグラフィックを更新することは、モバイルデバイスが第2のネットワークオペレータに関連付けられる1つ以上のユーザ仲介無線ネットワークに現在接続されていることを示すようにステータスグラフィックを更新することも含んでもよい。
【0007】
いくつかの実現例では、第1のネットワークオペレータに関連付けられる1つ以上のキャリア仲介無線ネットワークの各々からモバイルデバイスを切断することは、第1のネットワークオペレータに関連付けられる1つ以上のキャリア仲介無線ネットワークのうちの少なくとも1つのワイヤレスフィデリティ(Wi-Fi)ネットワークからモバイルデバイスを切断することを含む。第2のネットワークオペレータに関連付けられる1つ以上の無線ネットワークにモバイルデバイスを接続することは、第2のネットワークオペレータに関連付けられる1つ以上の無線ネットワークのうちの少なくとも1つのWi-Fiネットワークにモバイルデバイスを接続することを含んでもよい。第2のネットワークオペレータに関連付けられる1つ以上の無線ネットワークは、キャリア仲介無線ネットワークまたはユーザ仲介無線ネットワークを含む。第1のユーザ入力指示の受信に応答して、本方法は、データ処理ハードウェアが、モバイルデバイスと第1のネットワークオペレータ以外のネットワークオペレータに関連付けられる無線ネットワークとの間の任意の既存の接続を維持することを含んでもよい。
【0008】
いくつかの実現例では、第1のユーザ入力指示を受信した後、本方法は、データ処理ハードウェアにおいて、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続を有効にするためにグラフィカルユーザインターフェイスにおいてレンダリングされる対話型グラフィックの選択を示す第2のユーザ入力指示を受信することを含む。第2のユーザ入力指示を受信することに応答して、本方法は、データ処理ハードウェアが、モバイルデバイスを第1のネットワークオペレータに関連付けられる1つ以上の利用可能なキャリア仲介無線ネットワークに接続することと、データ処理ハードウェアが、ステータスグラフィックを再更新して、モバイルデバイスが第1のネットワークオペレータに関連付けられる少なくとも1つのキャリア仲介無線ネットワークに現在接続されていることを示すこととを含んでもよい。
【0009】
いくつかの例では、画面上における表示のためにグラフィカルユーザインターフェイスを実行することは、モバイルデバイスが第1のネットワークオペレータに関連付けられていない少なくとも1つの無線ネットワークに現在接続されていることを示す第2のステータスグラフィックをグラフィカルユーザインターフェイスにさらにレンダリングさせる。いくつかの実現例では、本方法は、データ処理ハードウェアが、異なるオペレータに関連付けられる少なくとも1つの無線接続の接続品質を示す第2のグラフィカル指示を表示することを含む。いくつかの例では、本方法は、第1のユーザ入力指示を受信したことに応答して、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続が無効にされる場合、第1のネットワークオペレータに関連付けられるキャリア仲介無線ネットワークのうちの少なくとも1つに関連付けられるモバイルデバイスの無線は有効にされたままである。
【0010】
本開示の別の態様は、マルチネットワーク接続をトグルするためのシステムを提供する。本システムは、データ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアとを備える。メモリハードウェアは、データ処理ハードウェア上で実行されるとデータ処理ハードウェアに動作を実行させる命令を記憶する。本動作は、第1のネットワークオペレータに関連付けられる1つ以上のキャリア仲介無線ネットワークに接続されるモバイルデバイスについて、各ネットワークはモバイルデバイスに同時に接続され、画面上に表示されデータ処理ハードウェアと通信するグラフィカルユーザインターフェイスを実行することを含む。グラフィカルユーザインターフェイスは、モバイルデバイスが第1のネットワークオペレータに関連付けられる1つ以上のキャリア仲介無線ネットワークのうちの少なくとも1つのキャリア仲介無線ネットワークに現在接続されていることを示すステータスグラフィックをレンダリングする。本動作は、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続を無効にすることと、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続を有効にすることとの間で選択するためのユーザ入力指示を受信するよう構成される対話型グラフィックも含む。本動作は、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続を無効にするためにグラフィカルユーザインターフェイスにおいてレンダリングされる対話型グラフィックの選択を示す第1のユーザ入力指示を受信することも含む。第1のユーザ入力指示を受信したことに応答して、本動作は、第1のネットワークオペレータに関連付けられる1つ以上のキャリア仲介無線ネットワークの各々からモバイルデバイスを切断することを含む。本動作は、モバイルデバイスが第1のネットワークオペレータに関連付けられるいずれのキャリア仲介無線ネットワークにも現在接続されていないことを示すようにステータスグラフィックを更新することも含む。第1のユーザ入力指示の受信に応答して、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続が無効にされると、モバイルデバイスと第1のネットワークオペレータ以外のネットワークオペレータに関連付けられる任意の利用可能な無線ネットワークとの間の接続が有効にされる。
【0011】
この態様は、以下の任意選択の特徴のうちの1つ以上を含んでもよい。いくつかの実現例では、モバイルデバイスが第1のネットワークオペレータに関連付けられる少なくとも2つのキャリア仲介無線ネットワークに同時に接続されるとき、本動作は、少なくとも2つのキャリア仲介ネットワークのうちの1つを第1のネットワークオペレータに関連付けられる優先キャリア仲介無線ネットワークとして識別することを含む。グラフィカルユーザインターフェイス内にレンダリングされるステータスグラフィックは、モバイルデバイスが優先キャリア仲介無線ネットワークに現在接続されていることを示してもよい。
【0012】
いくつかの例では、モバイルデバイスが第1のネットワークオペレータに関連付けられる少なくとも2つのキャリア仲介無線ネットワークに同時に接続されるとき、モバイルデバイスが同時に接続される少なくとも2つのキャリア仲介無線ネットワークの各キャリア仲介無線ネットワークについて、モバイルデバイスと対応するキャリア仲介無線ネットワークとの間の接続の接続品質を判定する。本動作は、モバイルデバイスが同時に接続されている少なくとも2つのキャリア仲介無線ネットワークのうちのどのキャリア仲介無線ネットワークが最高の接続品質に関連付けられているかを識別することも含んでもよい。グラフィカルユーザインターフェイスにレンダリングされるステータスグラフィックは、モバイルデバイスと最高の接続品質に関連付けられる識別されたキャリア仲介無線ネットワークとの間の接続を示す。任意選択で、グラフィカルユーザインターフェイス内にレンダリングされるステータスグラフィックは、さらに、モバイルデバイスと最高の接続品質に関連付けられる識別されたキャリア仲介無線ネットワークとの間の接続の接続品質の値を示す。
【0013】
本動作は、第1のユーザ入力指示を受信する前に、モバイルデバイスが少なくとも第1のキャリア仲介無線ネットワークおよび第2のキャリア仲介無線ネットワークに同時に接続された状態で、第1のキャリア仲介無線ネットワークは、第1のネットワークオペレータに関連付けられるキャリア仲介セルラーネットワークを含んでもよく、第2のキャリア仲介無線ネットワークは、第1のネットワークオペレータに関連付けられるキャリア仲介ワイヤレスフィデリティ(Wi-Fi)ネットワークを含んでもよい。いくつかの例では、第1のユーザ入力指示を受信したことに応答して、本動作は、モバイルデバイスを、第1のネットワークオペレータとは異なる第2のネットワークオペレータに関連付けられる1つ以上の無線ネットワークに接続することを含む。これらの例では、第2のネットワークオペレータに関連付けられる1つ以上の無線ネットワークがユーザ仲介無線ネットワークを含む場合、第1のユーザ入力指示の受信に応答して、モバイルデバイスが第1のネットワークオペレータに関連付けられる任意のキャリア仲介無線ネットワークに現在接続されていないことを示すようにステータスグラフィックを更新することは、モバイルデバイスが第2のネットワークオペレータに関連付けられる1つ以上のユーザ仲介無線ネットワークに現在接続されていることを示すようにステータスグラフィックを更新することも含んでもよい。
【0014】
いくつかの実現例では、第1のネットワークオペレータに関連付けられる1つ以上のキャリア仲介無線ネットワークの各々からモバイルデバイスを切断することは、第1のネットワークオペレータに関連付けられる1つ以上のキャリア仲介無線ネットワークのうちの少なくとも1つのワイヤレスフィデリティ(Wi-Fi)ネットワークからモバイルデバイスを切断することを含む。第2のネットワークオペレータに関連付けられる1つ以上の無線ネットワークにモバイルデバイスを接続することは、第2のネットワークオペレータに関連付けられる1つ以上の無線ネットワークのうちの少なくとも1つのWi-Fiネットワークにモバイルデバイスを接続することを含んでもよい。第2のネットワークオペレータに関連付けられる1つ以上の無線ネットワークは、キャリア仲介無線ネットワークまたはユーザ仲介無線ネットワークを含む。第1のユーザ入力指示の受信に応答して、本動作は、モバイルデバイスと第1のネットワークオペレータ以外のネットワークオペレータに関連付けられる無線ネットワークとの間の任意の既存の接続を維持することを含んでもよい。
【0015】
いくつかの実現例では、第1のユーザ入力指示を受信した後、本動作は、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続を有効にするためにグラフィカルユーザインターフェイスにおいてレンダリングされる対話型グラフィックの選択を示す第2のユーザ入力指示を受信することを含む。第2のユーザ入力指示を受信することに応答して、本動作は、モバイルデバイスを第1のネットワークオペレータに関連付けられる1つ以上の利用可能なキャリア仲介無線ネットワークに接続することと、ステータスグラフィックを再更新して、モバイルデバイスが第1のネットワークオペレータに関連付けられる少なくとも1つのキャリア仲介無線ネットワークに現在接続されていることを示すこととを含んでもよい。
【0016】
いくつかの例では、画面上における表示のためにグラフィカルユーザインターフェイスを実行することは、モバイルデバイスが第1のネットワークオペレータに関連付けられていない少なくとも1つの無線ネットワークに現在接続されていることを示す第2の状態グラフィックをグラフィカルユーザインターフェイスにさらにレンダリングさせる。いくつかの実現例では、本動作は、異なるオペレータに関連付けられる少なくとも1つの無線接続の接続品質を示す第2のグラフィカル指示を表示することを含む。いくつかの例では、第1のユーザ入力指示を受信したことに応答して、モバイルデバイスと第1のネットワークオペレータに関連付けられる任意の利用可能なキャリア仲介無線ネットワークとの間の接続が無効にされるとき、第1のネットワークオペレータに関連付けられるキャリア仲介無線ネットワークのうちの少なくとも1つに関連付けられるモバイルデバイスの無線は有効にされたままである。
【0017】
本開示の1つ以上の実現例の詳細を、添付の図面および以下の説明に記載する。他の態様、特徴、および利点は、説明および図面、ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0018】
【
図1】ユーザ仲介接続とキャリア仲介接続とを区分し、異なる接続間のマルチネットワークを提供するための例示的なシステムの概略図である。
【
図2A】接続アグリゲータの例示的な構成要素の概略図である。
【
図2B】接続アグリゲータの例示的な構成要素の概略図である。
【
図2C】接続アグリゲータの例示的な構成要素の概略図である。
【
図2D】モバイルデバイス上で実行するグラフィカルユーザインターフェイス上でレンダリングされる対話型グラフィックの概略図である。
【
図3】マルチネットワークコネクタの概略図である。
【
図4A】モバイルデバイス上で実行するグラフィカルユーザインターフェイス上でレンダリングされる対話型グラフィックスの概略図である。
【
図4B】モバイルデバイス上で実行するグラフィカルユーザインターフェイス上でレンダリングされる対話型グラフィックスの概略図である。
【
図5】マルチネットワーク接続の方法のための動作の例示的な構成のフローチャートである。
【
図6】本明細書で説明されるシステムおよび方法を実現するために使用され得る例示的なコンピューティングデバイスの概略図である。
【発明を実施するための形態】
【0019】
様々な図面における同様の参照符号は、同様の要素を示す。
詳細な説明
移動体通信事業者(MNO:mobile network operator)および仮想移動体通信事業者(MVNO:mobile virtual network operator)などのキャリアは、複数の異種ネットワークタイプ(例えば、セルラーネットワークおよびWi-Fiネットワーク)を介してますます接続性を提供している。現在のモバイルオペレーティングシステム(OS)は、ユーザ仲介(ホームワイヤレスフィデリティ(Wi-Fi)ネットワークなど)接続と、キャリアによって提供されるクレデンシャルを伴うWi-Fiアクセスポイントまたはキャリアによって制御されるセルラー接続(例えば、LTE)などのキャリア仲介接続とを明確に区別しない。ユーザ仲介ネットワークおよびキャリア仲介ネットワークは、非常に異なる特性を有し得、したがって、2つのクラスのネットワークを同じように処理することは、しばしば、次善のユーザ体験につながる。たとえば、キャリアは、仮想プライベートネットワーク(VPN)を通してユーザトラフィックをトンネリングすることによってユーザ体験を改善するためにセッションモビリティを提供することを望むことがあるが、キャリア仲介ネットワークとユーザ仲介ネットワークとの間の明確な区分なしではそうすることはできない。この場合、キャリアは、(例えば、プライバシーの懸念のために)VPN内にユーザ仲介ネットワークを含むことができない場合がある。
【0020】
さらに、モバイルデバイスは、典型的には、ユーザがモバイルデバイス上で無線を管理することを可能にするためのユーザコントロールを有する。たとえば、ユーザは、Wi-Fi無線を有効/無効にするか、またはモバイル(すなわち、セルラー)データ無線を有効/無効にしてもよい。モバイルデバイスはまた、キャリアまたはオペレータベースではなく、無線ごとにステータスインジケータを提供する。モバイルデバイスのユーザは、それらのキャリアから接続を一時的に無効にすることを望む場合があるが、それは複数の異なる無線接続(例えば、Wi-Fiおよびセルラーの両方)の要素を含む場合があり、しかしながら、モバイルデバイスは、そうするための任意の便利な方法を欠いている。せいぜい、ユーザは、無線ごとに接続を無効にしなければならず、これは、その無線からのすべての接続を無効にする。これは、意図しない結果をもたらし得る。たとえば、モバイルデバイスがキャリアによって提供されるWi-Fiネットワークに接続するのを防ぐためにWi-Fi無線を無効にすることは、そのキャリアによって管理されない他のWi-Fi接続(例えば、ユーザのホームネットワーク)への接続も妨げることになる。さらに、モバイルデバイスは、無線接続性(例えば、Wi-Fiまたはセルラー接続強度)の視覚的インジケータを提供するが、キャリア接続性の視覚的インジケータは提供しない。たとえば、Wi-Fi強度グラフィカルステータスインジケータがユーザ仲介Wi-Fiネットワークに関連付けられるかどうかまたはキャリア仲介Wi-Fiネットワークに関連付けられるかどうかを識別する方法はない。
【0021】
本明細書の実現例は、ユーザ仲介ネットワークをキャリア仲介ネットワークから区分し、マルチネットワーク接続性を制御および報告するための便利なユーザ入力および視覚的指示を提供するために、両方ともユーザデバイス110上で実行する接続アグリゲータ200およびマルチネットワークコントローラ300を対象とする。本明細書で用いられるとおりでは、ユーザデバイス110は、ユーザ機器(UE)またはモバイルデバイスと交換可能に称され得る。
図1を参照すると、いくつかの実現例では、例示的な無線通信環境100は、複数の無線ネットワーク120、120a~nを通じて外部ネットワーク40と通信するモバイルデバイス110を含む。たとえば、ユーザデバイス110は、セルラーネットワーク120aおよびWi-Fiネットワーク120bを介して外部ネットワーク40と通信することができる。これらの無線ネットワーク120は単なる例示であり、ユーザデバイス110は、他のタイプの無線ネットワーク(例えば、市民ブロードバンド無線サービス(CBRS)、Bluetoothなど)を用いて外部ネットワーク40と通信することができる。セルラーネットワーク120aは、汎用パケット無線サービス(GPRS)ネットワーク、ユニバーサルモバイルテレコミュニケーションズシステム(UMTS)ネットワーク、高速パケットアクセス(HSPA)ネットワーク、拡張HSPA(H+)ネットワーク、モバイル通信用グローバルシステム(GSM(登録商標))用拡張データレート(EDGE)ネットワーク、または、たとえば、マクロセル進化型ノードB(MeNB)などの基地局を介した外部ネットワーク40からユーザデバイス110へのデータパケット50および/または他のサービスの無線通信をサポートするロングタームエボリューション(LTE)無線アクセスネットワーク(RAN)(たとえば、4G/5G LTE)を含んでもよい。Wi-Fiネットワーク120bは、データパケット50の無線通信もサポートする任意のバージョンのWi-Fi(例えば、802.11n、802.11acなど)を含んでもよい。いくつかの例では、ユーザデバイス110は、同じタイプの複数の無線ネットワーク120に同時に接続している。例えば、ユーザデバイス110は、異なるキャリア70によって運用される2つの別個のセルラーネットワーク120aに同時に接続するための機能を含んでもよい。
【0022】
セルラーネットワーク120aは、セルラーネットワーク120aを介して加入ユーザデバイス110に無線通信のサービスを提供する移動体通信事業者(MNO)または仮想移動体通信事業者(MNVO)に関連付けられる。MNOまたはMVNOは、無線サービスプロバイダ、無線キャリア、セルラー会社、移動体通信事業者、またはモバイルネットワークキャリアと呼ばれることもある。「キャリア」という用語は、本明細書では、MNOまたはMVNOを指すために使用され得る。用語「ネットワークオペレータ」は、本明細書では、キャリア仲介無線ネットワーク120を動作させる/仲介するキャリア(たとえば、MNOまたはMVNO)、またはユーザ仲介無線ネットワーク120を動作させる/仲介するユーザ10を含んでもよい、無線ネットワーク120を動作または仲介するエンティティを指すために使用され得る。
【0023】
本明細書で使用されるように、キャリア仲介無線ネットワーク120は、ユーザデバイス110がキャリアによって提供されるサービスに加入する、単一の特定のキャリア70(例えば、MNOまたはMVNO)によって管理または仲介または制御される任意の無線ネットワーク120を含む。すなわち、ユーザ10は、無線ネットワーク120を制御または管理しない。キャリア仲介ネットワーク120は、キャリア提供SIMプロファイルまたはそのキャリア提供SIMプロファイルによって認証され得るキャリア提供アプリケーションのいずれかがクレデンシャルを提供している場合など、キャリアがクレデンシャルを提供しているネットワークである。例えば、UICC上で提供されるSIMプロファイルは、ユーザデバイス110がセルラーネットワーク120に接続して認証することを可能にする。または、キャリアアプリケーションは、SIMプロファイルにアクセスするためにオペレーティングシステム111によって認証される。キャリアアプリケーションは、キャリアの秘密鍵で暗号署名され、SIMプロファイルに含まれるアプリケーションのシグネチャを介して認証されてもよい。キャリアアプリケーションは、オペレーティングシステム111によって、例えばWi-Fiアクセスポイントにアクセスするためのクレデンシャルを提供することを承認される。いくつかの例では、認証されたキャリアアプリケーションは、WPAパスワードもしくはHotspot2.0証明書を提供してもよく、または、クレデンシャルがアクセスポイントに接続するために必要とされないオープンネットワークの場合は、キャリアは、ユーザデバイス110に、ユーザ介入を必要とせずにアクセスポイントに接続させるか、もしくはネットワークに接続する提案をユーザに向けて行わせ、ユーザはそれを受け入れるかもしくは拒否することができる。オープンネットワーク120へのキャリア仲介接続の場合、「キャプティブポータル」を迂回してインターネットアクセスを得るために、諸条件を受け入れること、またはパスコードもしくは他のログイン情報を供給することなど、追加のステップが必要とされる場合がある。キャプティブポータルを用いたオープンネットワーク120へのキャリア仲介接続の場合、キャリアは、ユーザに代わって条件を受け入れるか、または電子メールアドレス、パスコードもしくは他のログイン情報を自動化された態様で提供してもよい。自動化された態様は、WISPrなどのプロトコルを介して、または自動化されたウェブフォームの提出を介して、ログイン情報を提供することを意味し得る。単一のユーザデバイス110は、複数のキャリア仲介無線ネットワーク120を同時にサポートすることができる。
【0024】
ユーザ仲介無線ネットワーク120は、ユーザデバイス110が明示的に加入しないネットワークオペレータ70に関連付けられる任意の無線ネットワーク120を含み、したがって、ユーザ仲介無線ネットワーク120は、最終的にユーザ10によって管理または仲介または制御される。ユーザ仲介ネットワークは、ユーザが、必要に応じて、例えば、アクセスポイントに接続するために、例えば、WPAパスワードもしくはユーザインストール証明書、例えば、Hotspot2.0証明書など、自身のクレデンシャルを提供したネットワークであるか、またはアクセスポイントに接続するためのクレデンシャルが必要とされないオープンネットワークの場合、ユーザは、リストからネットワークを選択すること、もしくはオペレーティングシステムによって行われた提案を受け入れることなど、ネットワークに接続するための肯定的なアクションを取っているネットワークである。いかなる選択も、デバイスが初めてネットワークに露出されるときに生じるだけであってもよい。ユーザ仲介オープンネットワークでは、「キャプティブポータル」を迂回してインターネットアクセスを得るために、諸条件の受け入れ、または電子メールアドレス、パスコード、もしくは他のログイン情報の供給など、追加の手動ステップが必要とされる場合がある。
【0025】
単一のデバイス、たとえば、アクセスポイントは、ユーザ仲介ネットワークおよびキャリア仲介ネットワークの両方へのアクセスを提供することができる。APを所有、レンタル、または制御するユーザは、アクセスポイントを用いて他者がインターネットにアクセスすることを可能にすることができ、例えば、ユーザは、ユーザが他者に提供するWEPパスワードを作成する。アクセスポイントは、そのようにアクセスされると、ユーザ仲介ネットワークへのアクセスを提供する。ケーブルサービスプロバイダまたはDSLサービスプロバイダは、同じアクセスポイントからキャリア仲介ネットワークサービスを運用することができる。HS2.0証明書がキャリアアプリによってプロビジョニングされるデバイスは、同じアクセスポイントに自動的に接続することになる。ユーザ介入またはパスワードは必要とされない。
【0026】
ユーザが、インターネットサービスプロバイダ(ISP)に対応するネットワークオペレータ70によって提供されるインターネットサービスの契約を有し、したがって、任意の所与の時間にインターネットサービスに接続するために、多数の異なる無線対応ユーザデバイス110のうちの任意の1つを選択してもよい例においては、インターネットサービスを使用するために選択されたユーザデバイス110によってアクセスされる無線ネットワーク120(たとえば、Wi-Fiネットワーク120b)は、ユーザ仲介無線ネットワーク120に対応する。ここで、ユーザ10は、インターネットサービスに接続するモデム、および選択されたユーザデバイス110がインターネットサービスを使用するために無線接続を確立してもよいローカルエリアネットワーク(LAN)を提供するためにモデムと通信する無線アクセスポイント(AP)(例えば、無線ルータ)を制御してもよい。他の例では、ユーザ仲介無線ネットワーク120は、単に、ユーザデバイス110とユーザデバイス110に近接する別のデバイスとの間のBluetooth接続(または他の無線接続)を含んでもよい。一方、ユーザ10に関連付けられる特定のユーザデバイス110が、特定のキャリア70(例えば、MNOまたはMVNO)によって提供される無線通信のサービスに加入する場合、無線通信のサービスを受信するために加入ユーザデバイス110によってアクセスされる無線ネットワーク120(例えば、セルラーおよび/またはWi-Fiネットワーク120a、120b)は、キャリア仲介無線ネットワーク120に対応する。いくつかの実現例では、ユーザデバイス110上にインストールされた加入者識別モジュール(SIM)は、ユーザデバイス110が特定のキャリア70に関連付けられるキャリア仲介無線ネットワーク120に接続することを可能にし認証するよう、特定のキャリア70によって定義されるプロファイルを含む。しかしながら、ユーザ10が他のユーザデバイス110を特定のキャリア70に関連付けられるこれらのキャリア仲介無線ネットワーク120に接続したい場合、これらの他のユーザデバイス110の各々は、特定のキャリア70によって提供される無線通信のサービスに個々に加入しなければならない。これらの実現例では、ユーザデバイス110は、特定のキャリア70以外の1つ以上のネットワークオペレータ70に関連付けられるユーザ仲介無線ネットワーク120に自由に接続してもよい。ユーザデバイス110は、図示の例ではモバイルデバイス110として示されているが、ユーザデバイス110は、限定はしないが、タブレット、ラップトップ、デスクトップ、スマートウォッチ、スマートスピーカ、スマートディスプレイ、スマート機器など、無線ネットワーク120に接続することが可能な任意のデバイスを含むことができる。
【0027】
ユーザデバイス110は、コンピューティングリソース112(例えば、データ処理ハードウェア)および/またはストレージリソース114(例えば、メモリハードウェア)を含む。データ処理ハードウェア112は、画面119上に表示され、データ処理ハードウェア112、接続アグリゲータ200、およびマルチネットワークコントローラ300と通信するグラフィカルユーザインターフェイス(GUI)115を実行する。データ処理ハードウェア112は、オペレーティングシステム111および1つ以上のアプリケーション116をさらに実行する。いくつかの実現例では、オペレーティングシステム111は、接続アグリゲータ200およびマルチネットワークコントローラ300の機能を実行する。
【0028】
ユーザデバイス110は、様々な異なるオペレーティングシステム111を使用してもよい。ユーザデバイス110がモバイルデバイスである例では、ユーザデバイス110は、限定はしないが、Google(登録商標) Inc.によって開発されたANDROID(登録商標)、Apple Inc.によって開発されたIOS(登録商標)、またはMicrosoft Corporationによって開発されたWINDOWS PHONE(登録商標)を含むオペレーティングシステムを実行してもよい。したがって、ユーザデバイス110上で実行されるオペレーティングシステム111は、ANDROID(登録商標)、IOS(登録商標)、またはWINDOWS PHONE(登録商標)のうちの1つを含んでもよいが、それらに限定されない。いくつかの例では、ユーザデバイスは、限定はしないが、Microsoft CorporationによるMICROSOFT WINDOWS(登録商標)、Apple, Inc.によるMAC OS(登録商標)、またはLinux(登録商標)を含むオペレーティングシステムを実行してもよい。
【0029】
ユーザデバイス110は、さらに、少なくとも1つのモデム165(ベースバンドまたはベースバンドプロセッサとも呼ばれる)を含む。モデム165は、ユーザデバイスがオペレータネットワーク120と無線通信することを可能にする1つ以上のアンテナを含む。モデム165は、様々な周波数(例えば、700MHz、900MHz、2.4GHz、5.0GHzなど)上で同時に動作する1つ以上の無線と通信することができる。モデム165は、送信機能および受信機能を提供するよう様々な構成要素(プロセッサ、メモリなど)を含んでもよい。いくつかの実現例では、データ処理ハードウェア112はモデム165を含む。すなわち、データ処理ハードウェア112によって実行されるタスクは、いくつかの例では、代わりにモデム165によって実行されてもよく、その逆も同様である。
【0030】
ユーザデバイス110は、ユーザデバイス110を識別し、あるタイプのキャリア仲介無線ネットワーク120に接続するための、1つ以上の対応する加入者識別モジュール(SIM)350をさらに含む。たとえば、SIM350は、外部ネットワーク40を介して宛先サーバ60にアクセスするためにセルラーネットワーク120aと接続することをユーザデバイス110に承認するためのクレデンシャルを伴う対応するSIMプロファイルを含んでもよい。同様に、SIM350は、セルラーネットワーク120aを管理するネットワークオペレータ以外のネットワークオペレータ70によって管理される他のキャリア仲介無線ネットワーク120と接続することをユーザデバイス110に承認するための対応するクレデンシャルを有する1つ以上の追加のSIMプロファイルを含んでもよい。いくつかの例では、1つ以上のSIM350は、1つ以上の埋め込みSIM(eSIM)と1つ以上の物理SIMとの任意の組合せを含む。
【0031】
接続アグリゲータ200は、ユーザデバイス110と遠隔サーバ130との間に仮想プライベートネットワーク30(VPN)を確立する。VPN30は、ユーザデバイス110を、同じネットワークオペレータ70(すなわち、キャリア)によって運用または管理される各公衆キャリア仲介無線ネットワーク120に接続するための対応するVPN接続122、122a~nを提供する。いくつかの実現例では、VPN30は、複数の異なるネットワークオペレータ70によって管理される無線ネットワークに接続するための接続122を提供する。図示の例では、接続アグリゲータ200は、セルラーネットワーク120a(たとえば、第1の無線ネットワーク)を介してユーザデバイス110を遠隔サーバ130に接続するセルラーVPN接続122aを使用すること、およびWi-Fiネットワーク120b(例えば、第2の無線ネットワーク)を介してユーザデバイス110を遠隔サーバ130に接続するWi-Fi VPN接続122bを使用することによって、ユーザデバイス110と遠隔サーバ130との間にVPN30を確立する。
【0032】
遠隔サーバ130は、ユーザデバイス110から、接続アグリゲータ200によって、接続された無線ネットワーク120のうちの1つを介してルーティングされたデータパケット50を受信し、外部ネットワーク40を介して宛先サーバ60にデータパケット50を転送するVPNバックエンドサービス132を実行する。外部ネットワーク40は、パケットデータネットワーク(PDN)を含んでもよく、これはインターネットであってもよい。外部ネットワーク40は、無線ネットワーク120を運用するユーザデバイス110またはキャリア70に関連する任意のネットワークから独立していてもよい。宛先サーバ60は、ユーザデバイス110上で実行するアプリケーション116がデータパケット50を送受信する任意の遠隔サーバであってもよい。例えば、宛先サーバ60は、ウェブコンテンツをホストするウェブサーバであってもよい。
【0033】
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)は、コンピューティングデバイスにタスクを実行させるコンピュータソフトウェアを指してもよい。いくつかの例では、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」、または「プログラム」と呼ばれることがある。アプリケーションの例には、システム診断アプリケーション、システム管理アプリケーション、システム保守アプリケーション、ワード処理アプリケーション、スプレッドシートアプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲームアプリケーションが含まれるが、これらに限定はされない。
【0034】
(例えば、宛先サーバ60から)ユーザデバイス110に送信されるダウンストリームデータパケット50は、遠隔VPNサーバ130に向けられ、次いで、遠隔VPNサーバは、VPN接続122のうちの1つを介してデータパケット50を接続アグリゲータ200に転送する。接続アグリゲータ200は、データパケット50を受信し、ユーザデバイス110上で実行する適切なアプリケーション116にパケットを送信する。
【0035】
いくつかの実現例では、遠隔VPNサーバ130は、複数の異なる無線接続122経由で複数の異なる無線ネットワーク120を介してユーザデバイス110との間でデータパケット50を受信および送信するにもかかわらず、宛先サーバ60との間でデータパケット50を送信および受信する際に、同じインターネットプロトコル(IP)アドレスを維持する。したがって、宛先サーバ60の観点からは、ユーザデバイス110と宛先サーバ60との間でデータパケット50をルーティングするためにどの無線接続122が使用されるかにかかわらず、ユーザデバイス110の見かけのIPアドレス(すなわち、遠隔サーバ130のIPアドレス)は変化しない。さらに、ユーザデバイス110上で実行するアプリケーション116は、宛先サーバ60との間でデータパケット50を送信または受信するために使用される特定の無線接続122に依存しないので、接続アグリゲータ200および遠隔VPNサーバ130は、宛先サーバ60およびユーザデバイス110上で実行するアプリケーション116の観点から、複数の無線接続122を単一の接続に抽象化してもよい。
【0036】
いくつかの実現例では、接続アグリゲータ200および遠隔VPNサーバ130は、複数の異なる無線ネットワーク120にわたってデータパケット50を送信および受信しながらセッション継続性を提供する。セッション継続性とは、異なる無線ネットワーク120間で切り替える際のユーザ10のための中断されない接続を指す。セッション継続性を維持するために、遠隔VPNサーバ130は、ユーザデバイス110(すなわち、接続アグリゲータ200)を認証した後、セッショントークン210を接続アグリゲータ200に送信してもよい。セッショントークン210は、ユーザデバイス110を一意に識別する。接続アグリゲータ200が無線ネットワーク120を介して遠隔VPNサーバ130にデータパケット50を送信するとき、接続アグリゲータ200は、ユーザデバイス110を識別するセッショントークン210も送信してもよい。セッショントークン210は、遠隔VPNサーバ130によって受信されると、接続アグリゲータ200がユーザデバイス110と遠隔VPNサーバ130とを接続するためにどの無線接続122を使用するかとは無関係に、遠隔VPNサーバ130がユーザデバイス110を識別することを可能にしてもよい。たとえば、ユーザデバイス110がセルラーネットワーク120aおよびWi-Fiネットワーク120bに同時に接続されるとき、ユーザデバイス110は、セルラーネットワーク接続122aに関連付けられる第1のIPアドレスと、Wi-Fi接続122bに関連付けられる、第1のIPアドレスとは異なる第2のIPアドレスとを有してもよい。この例では、ユーザデバイス110がアップストリームデータパケット50を送信するとき、接続アグリゲータ200は、Wi-Fiネットワーク120bを介して、Wi-Fi接続122b経由で遠隔VPNサーバ130にデータパケット50をルーティングし、セッショントークン210を提示してもよい。次いで、ユーザデバイス110は、Wi-Fiネットワーク120bの範囲外に移動してもよく、次いで、接続アグリゲータ200は、セルラーネットワーク120aを介して、セルラー接続122a経由で、後続のアップストリームデータパケット50を遠隔VPNサーバ130にルーティングしてもよく、再び、同じセッショントークン210を提示する。したがって、遠隔VPNサーバ130は、Wi-Fi接続122bに関連付けられるIPアドレスからセルラー接続122aに関連付けられる後続のIPアドレスへのIPアドレスの変化にもかかわらず、ユーザデバイス110を一意に識別することができる。
【0037】
いくつかの例では、遠隔VPNサーバ130は、受信されたセッショントークン210に基づいて、データパケット50をどこに送るべきかについてのその理解を更新してもよい。いくつかの実現例では、遠隔VPNサーバ130は、最後のセッショントークン210が遠隔VPNサーバ130に提示されたときに接続アグリゲータ200によって使用されたのと同じ無線ネットワーク120および対応する無線接続122を用いて、ダウンストリームデータパケット50をユーザデバイス110に送信する。送信失敗の場合、遠隔VPNサーバ130は、ユーザデバイス110との通信を再確立しようとして、以前の無線接続122に戻ってもよい。
【0038】
引き続き
図1を参照すると、データ処理ハードウェア112は、マルチネットワークコントローラ300も実行する。マルチネットワークコントローラ300は、ユーザデバイス110の画面119上に表示されるGUI115においてステータスグラフィック320をレンダリングする。ステータスグラフィック320は、ユーザデバイス110が少なくとも1つのキャリア仲介無線ネットワーク120に現在接続されていることを示す。ここで、ステータスグラフィック320は、ユーザデバイス110がセルラーネットワーク120aおよび/またはWi-Fiネットワーク120bに接続されていることをユーザデバイス110のユーザ10に示す。いくつかの例では、マルチネットワークコントローラ300は、第2のステータスグラフィック320(図示せず)をレンダリングして、第1のステータスグラフィック320に関連付けられるオペレータ70とは異なるオペレータ70とのキャリア仲介無線ネットワークまたはユーザ仲介無線ネットワークへの接続を示す。マルチネットワークコントローラ300は、モバイルデバイス110への無線接続122の任意の数のオペレータ70を反映するために、任意の数のステータスグラフィックス320をレンダリングしてもよい。
【0039】
マルチネットワークコントローラ300は、いくつかの実現例では、ユーザデバイス110と同じキャリアまたはネットワークオペレータ70に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク120との間の無線接続122を無効にするためのユーザ入力指示312を受信するよう構成される対話型グラフィック330をレンダリングする。対話型グラフィック330は、ボタン、スイッチ、スライダ、またはトグルなどの多くの形態をとることができる。他の形態のユーザ入力も、ユーザ入力指示312を提供してもよい。例えば、ユーザ10は、選択肢として、ユーザデバイス110のマイクロホンによって記録されてもよい音声コマンドを話すことによって、ユーザ入力指示312を提供してもよい。図示の例では、対話型グラフィック330は、ユーザ10によって選択されると、ユーザ10が対応するキャリア/ネットワークオペレータ70に関連付けられるすべての無線接続122からユーザデバイス110を切断することを望むことを示すユーザ入力指示312を提供する、GUI115上にレンダリングされた「キャリアトグル」とラベル付けされたグラフィカルボタン330を含む。ユーザデバイス110が、複数の異なるキャリア70に関連付けられる複数のキャリア仲介無線ネットワーク120に無線接続122を提供する場合、マルチネットワークコントローラ300は、GUI115上において各キャリア70に対してそれぞれの対話型グラフィック330をレンダリングし、キャリアごとにキャリア仲介無線ネットワーク120に対するユーザ10の制御を可能にしてもよい。代替的に、マルチネットワークコントローラ300は、各ネットワーク120を仲介する特定のキャリア70にかかわらず、すべてのキャリア仲介ネットワーク120を切断するための対話型グラフィック330をレンダリングしてもよい。
【0040】
対話型グラフィック330の選択を示すユーザ入力指示312の受信に応答して、マルチネットワークコントローラ300は、ユーザデバイス110を、キャリア/ネットワークオペレータ70に関連付けられる1つ以上のキャリア仲介無線ネットワーク120の各々から切断し、ステータスグラフィック320を更新して、モバイルデバイス110が、対応するキャリア/ネットワークオペレータ70に関連付けられる任意のキャリア仲介無線ネットワーク120に現在接続されていないことを示してもよい。任意選択で、対話型グラフィック330の選択を示すユーザ入力指示312の受信に応答して、マルチネットワークコントローラ300は、別のネットワークオペレータ70に関連付けられる1つ以上のネットワーク120に接続してもよい。たとえば、キャリア仲介Wi-Fiネットワーク120bから切断した後、マルチネットワークコントローラ300は、ユーザ仲介Wi-Fiネットワーク120bが範囲内にあり利用可能である場合、ユーザ仲介Wi-Fiネットワークに自動的に接続してもよい(またはユーザ10に接続を促してもよい)。いくつかの実現例では、ユーザ入力指示312の受信に応答してキャリア仲介無線ネットワークから切断すると、マルチネットワークコントローラ300は、ユーザデバイス110と他のオペレータ70(すなわち、他のキャリアまたはユーザ仲介ネットワークに関連付けられるネットワークオペレータ)によって仲介される無線ネットワーク120との間の任意の既存の無線ネットワーク接続122を維持してもよい。
【0041】
いくつかの実現例では、対話型グラフィック330は、ユーザデバイス110とそれぞれのキャリア70に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク120との間の接続を可能にするためにユーザ入力指示312を受信するようにも構成される。たとえば、ユーザデバイス110に接続され、関連付けられるキャリア70によって動作されるすべてのキャリア仲介無線ネットワーク120を切断するよう対話型グラフィック330の選択を示す第1のユーザ入力指示312を受信した後、対話型グラフィック330の選択を示す後続の第2のユーザ入力指示312は、ユーザデバイス110に、対応する無線接続122を介してキャリア仲介無線ネットワーク120を有効化または再接続させてもよい。図示の例では、同じ対話型グラフィック330が、キャリア仲介無線ネットワーク120を有効にすることと無効にすることとの間でトグル(切替え)するために使用されるが、代わりに、別個の対話型グラフィックス、たとえば、有効にするための第1の対話型グラフィックおよび無効にするための第2の対話型グラフィックが使用され得ることを理解されたい。加えて、対話型グラフィック330は、対話型グラフィック330との対話がキャリア仲介ネットワーク120を有効にするか無効にするかを反映するように、(例えばテキスト情報を)更新してもよい。
【0042】
マルチネットワークコントローラ300が、特定のネットワークオペレータ70に関連付けられるキャリア仲介無線ネットワーク120を無効にするよう対話型グラフィック330の選択を示すユーザ入力指示312を受信すると、マルチネットワークコントローラ300は、特定のネットワークオペレータ70に関連付けられる各キャリア仲介無線ネットワーク120からユーザデバイス110を切断することによって応答する。マルチネットワークコントローラ300はまた、ステータスグラフィック320を更新して、ユーザデバイス110が、ネットワークオペレータ70に関連付けられる任意のキャリア仲介無線ネットワーク120に現在接続されていないことを示してもよい。いくつかの実現例では、単一のステータスグラフィック320が、任意の数のキャリア仲介無線ネットワーク120へのユーザデバイス110による接続を示し、他の実現例では、マルチネットワークコントローラ300は、ユーザデバイス110が接続され、および切断することができる、1つ以上のキャリア仲介無線ネットワーク120を提供するそれぞれのキャリア/ネットワークオペレータ70を各々が表す複数のステータスグラフィック320を、GUI115内にレンダリングする。いくつかの実現例では、単一のステータスグラフィック320は、単一のキャリアネットワーク70によって提供されるすべてのサービスへのユーザデバイス110による接続を示す。これらの実現例では、ステータスグラフィック320が、ユーザデバイス110が特定のネットワーク70によって提供されるサービスに接続されていないことを示すとき、ユーザデバイス110は、依然として、別のキャリアによって提供される他のキャリア仲介無線ネットワーク120または他のユーザ仲介無線ネットワーク120に接続されてもよい。複数の個々のグラフィックスは、これらの例において、各キャリア仲介無線ネットワーク120および/または各ユーザ仲介無線ネットワークに対して1つずつ、ユーザデバイス110上に提供されてもよい。
【0043】
いくつかの例では、マルチネットワークコントローラ300は、キャリア仲介無線ネットワーク120がユーザ10によっていつ有効または無効にされたかを示す指示340を接続アグリゲータ200に提供する。接続アグリゲータ200は、キャリア仲介無線ネットワーク120がいつ無効にされたかを示す指示340を、適切な無線接続122を終了させること、および/または他の態様でVPN30から切断することのために用いてもよい。いくつかの実現例では、ユーザデバイス110は、VPN30への既存の接続を維持するが、接続アグリゲータ200は、VPN30を介してデータパケット50を送信することを停止し、遠隔VPNサーバ130から受信されたデータパケット50を、ユーザデバイス110上で実行されるアプリケーション116に転送することを停止する。
【0044】
ここで
図2A~
図2Dを参照すると、いくつかの実現例では、接続アグリゲータ200は、VPNクライアント230を含む。VPNクライアント230は、ユーザデバイス110および遠隔サーバ130を、同じプライベートネットワーク、たとえばVPN30内に含めるために、公衆無線ネットワーク120を介して(たとえばトンネリングプロトコルを用いて)ポイントツーポイント接続122を確立する。VPNクライアント230は、データパケット50を保護するためにセキュリティおよびプライバシー機能のホストを実現してもよい。例えば、VPNクライアント230は、認証および/または暗号化を実施してもよい。いくつかの例では、VPNクライアント230は、パスワード、バイオメトリクス、デジタル証明書、および2ファクタ認証のいずれかまたはすべてを用いて、VPNバックエンドサービス132と認証する。
【0045】
VPNクライアント230は、いくつかの例では、VPNパラメータ240を受信する。VPNパラメータ240は、ネットワーク選択基準240aおよびネットワーク接続品質データ240bを含んでもよい。VPNクライアント230は、VPNパラメータ240を用いて、複数の無線接続122が同時に有効にされる場合に、どの接続された無線ネットワーク接続122がデータパケット50を転送するかを決定してもよい。いくつかの実現例では、選択基準240aは、無線接続122間の優先度を識別する。たとえば、選択基準240aは、Wi-Fiネットワーク接続122bがセルラーネットワーク接続122aよりも高い優先度を有することを示してもよく、両方の接続122が同時に有効化されると、VPNクライアント230は、セルラーネットワーク接続122aに優先して、Wi-Fiネットワーク接続122bを使用することになる。言い換えれば、ユーザデバイス110が、同じネットワークオペレータ70に関連付けられる少なくとも2つのキャリア仲介無線ネットワークに同時に接続される場合、選択基準240aは、少なくとも2つのキャリア仲介ネットワーク120のうちの1つを、ネットワークオペレータ70に関連付けられる優先キャリア仲介無線ネットワーク120として識別してもよい。任意選択で、マルチネットワークコントローラ300は、ステータスグラフィック320を用いて、モバイルデバイス110が優先キャリア仲介無線ネットワーク120に現在接続されていることを示してもよい。
【0046】
いくつかの例では、VPNクライアント230は、接続品質データ240bに少なくとも部分的に基づいて、どの接続122を使用すべきかを決定してもよい。接続品質データ240bは、モバイルデバイス110と遠隔VPNサーバ130との間の各無線接続122の品質を定量化してもよい。VPNクライアント230は、どのネットワーク接続122が最高の接続品質を有するかを識別し、識別されたネットワーク接続を用いてデータパケット50を送信してもよい。言い換えれば、ユーザデバイス110が、同じネットワークオペレータ70に関連付けられる少なくとも2つのキャリア仲介無線ネットワークに同時に接続されるとき、VPNクライアント230は、接続品質データ240bに基づいて、少なくとも2つのキャリア仲介無線ネットワーク120のうちのどのキャリア仲介無線ネットワーク120が最高の接続品質に関連付けられているかを識別してもよい。任意選択で、マルチネットワークコントローラ300は、ステータスグラフィック320を用いて、モバイルデバイス110がキャリア仲介無線ネットワーク120に最高の接続品質で現在接続されていることを示してもよい。たとえば、GUI115においてレンダリングされるステータスグラフィックは、さらに、モバイルデバイス110と、最高の接続品質に関連付けられる識別されたキャリア仲介無線ネットワーク120との間の接続122の接続品質の値を示してもよい。
【0047】
VPNクライアント230は、品質閾値240cを使用してもよく、品質閾値240cは、満たされると、VPNクライアント230に、データパケット150を通信するためにある無線ネットワーク120を使用することから、別の無線ネットワーク120に切り替えさせる。例えば、セルラー接続122aを介してセルラーネットワーク120aに、およびWi-Fiネットワーク接続122bを介してWi-Fiネットワーク120bに、同時に接続されながら、ユーザ10は、接続122bの品質がWi-Fiネットワーク120bのアクセスポイントからの距離に起因して閾値レベルまで低下するまで、モバイルデバイス110をWi-Fiネットワーク120bのアクセスポイントから離れるように移動させてもよい。この閾値レベルにおいて、VPNクライアント230は、ユーザ体験への影響を回避するために、Wi-Fiネットワーク120b上でのデータパケット50の送信からセルラーネットワーク120a上でのデータパケット50の送信に切り替えてもよい。閾値は、(例えば、ユーザを介して)予め定められてもよく、または場所、接続122の数、接続の品質240b、および接続の優先度に基づいて動的であってもよい。
【0048】
ここで
図2Aを参照すると、VPNクライアント230は、VPN30を確立するためにキャリア70によって仲介される各無線接続122に対してキャリア仲介VPNネットワーク接続122Cを確立する。例えば、VPNクライアント230は、VPNクライアント230と遠隔VPNサーバ130との間にセルラーネットワーク接続122aを確立し、VPNクライアント230と遠隔VPNサーバ130との間に無線ネットワーク接続122b(すなわち、関連付けられるWi-Fiネットワーク120はキャリア仲介型である場合)を確立してもよい。VPNクライアント230は、ユーザデバイス110上で実行するアプリケーション116からアプリケーショントラフィック(すなわち、データパケット50)を受信してもよい。データパケット50を受信した後、VPNクライアント230は、VPNパラメータ240に基づいて、データパケット50を送信するためにどのアクティブなキャリア仲介VPNネットワーク接続122Cを使用すべきかを決定してもよい。
【0049】
ここで
図2Bを参照すると、いくつかの実現例では、ユーザデバイス110は、1つ以上のキャリア仲介VPNネットワーク接続122Cおよび1つ以上のユーザ仲介ネットワーク接続122Uの両方に同時に接続する。たとえば、モバイルデバイス110は、キャリア70によって運用されるセルラーネットワーク120aへのセルラー無線接続122aを有してもよく、一方、同時に、ユーザ10によって運用されるWi-Fiネットワーク120b(例えば、ユーザのホームWi-Fi)へのWi-Fi無線接続122bを有してもよい。ここで、ユーザ仲介ネットワーク接続122Uは、VPN30を迂回し、代わりに、アプリケーショントラフィック(すなわち、データパケット50)を、外部ネットワーク40を介して宛先サーバ60に直接送信してもよい。この場合、ネットワークセレクタ250は、データパケット50を受信し、優先度データ252に基づいて、ユーザ仲介ネットワーク接続122Uを使用するか、キャリア仲介VPNネットワーク接続122Cを使用するかを決定してもよい。例えば、ユーザ仲介Wi-Fiネットワーク接続122bは、キャリア仲介セルラーネットワーク接続122aよりも低いコストのために好まれ得る。任意選択で、マルチネットワークコントローラ300は、ステータスグラフィック320を用いて、モバイルデバイス110が優先無線ネットワーク120(すなわち、キャリア仲介ネットワーク接続122Cまたはユーザ仲介ネットワーク接続122Uのいずれか)に現在接続されていることを示してもよい。いくつかの例では、ステータスグラフィック320は、モバイルデバイス110がどの無線ネットワーク120に接続されているか(すなわち、モバイルデバイスのどの無線が接続されているか)を示さず、代わりに、モバイルデバイス110がユーザ仲介ネットワーク120に接続されているかまたはキャリア仲介ネットワーク120に接続されているかのみを示す。
【0050】
ここで
図2Cを参照すると、いくつかの実現例では、ユーザ仲介無線ネットワーク120に関連付けられるユーザ仲介ネットワーク接続122UもVPN30内で確立される。たとえば、キャリア仲介セルラーネットワーク120を介してモバイルデバイス110をVPNサーバ130に接続するキャリア仲介セルラーネットワーク接続122aと、ユーザ仲介Wi-Fiネットワーク120bを介してモバイルデバイス110をVPNサーバ130に接続するユーザ仲介Wi-Fiネットワーク接続122bとの両方が、VPNクライアント230と遠隔VPNサーバ130との間に確立されてもよい。この場合、すべてのアプリケーショントラフィック(すなわち、データパケット50)は、VPNクライアント230にルーティングされてもよく、VPNクライアント230は、前に論じられたように、VPNパラメータ240に基づいて、どの接続122で各データパケット50を送信するかを決定してもよい。
【0051】
任意のユーザ仲介ネットワーク接続122UをVPN30内に含める前に、接続アグリゲータ200は、ユーザ仲介無線ネットワーク120を介してユーザデバイス110を遠隔VPNサーバ130に接続するVPNユーザ仲介無線接続122UをVPNクライアント230が確立することを許可する同意270を与えるように、モバイルデバイス110のユーザ10に促すことができる。いくつかの例では、接続アグリゲータ200は、モバイルデバイス110のユーザ10に、VPN30がユーザ仲介無線ネットワーク120を用いて接続を確立することを許可する同意270を与えるように促す際に、接続アグリゲータ200は、GUI115に対話型グラフィック332(
図2D)を表示する。対話型グラフィック332は、ユーザ10が、VPN30がユーザ仲介接続122Uを確立することを許可する同意270を与えることを可能にする。例えば、
図2Dに示すように、GUI115は、テキスト情報(例えば、「ユーザネットワークをVPNに含めますか?」)を含む対話型グラフィック332を、ユーザ10が接続のために(例えば、「はい」を選択することによって)VPN30を使用することに同意するかまたは(例えば、「いいえ」を選択することによって)同意しないことを可能にするボタンとともに、表示してもよい。
【0052】
図2Cに戻って参照すると、いくつかの実現例では、遠隔VPNサーバ130は、1つ以上のネットワークポリシー260、260a~nを、VPN30を通してVPNクライアント230と確立された各無線接続122に適用する。いくつかの例では、遠隔VPNサーバ130は、ユーザ10がVPN30内にユーザ仲介ネットワークを含むことに同意しているときでさえ、キャリア仲介ネットワーク120への接続122のみに1つ以上のネットワークポリシー260を適用する(すなわち、ユーザ仲介ネットワーク120をネットワークポリシー260から除外する)。ネットワークポリシー260は、様々なネットワーク側特徴を適用してもよい。例えば、遠隔VPNサーバ130は、特定のタイプのデータを、特定の時間で、または特定の消費閾値でスロットリングするスロットリングポリシー260aを接続122に適用してもよい。遠隔VPNサーバ130は、追加または代替として、ゼロレーティングポリシー260bを適用してもよい。ゼロレーティングポリシー260bは、ある条件下で、低減された財務費用でインターネットアクセスを提供してもよい。例えば、広告の増加または特定のウェブサイトへのアクセスの制限に基づいて、アクセスのコストを低減してもよい。
【0053】
ここで
図3を参照すると、ユーザデバイス110が第1の無線ネットワーク120a(たとえば、セルラーネットワーク)および第2の無線ネットワーク120b(たとえば、Wi-Fiネットワーク)に同時に接続される場合、マルチネットワークコントローラ300は、ユーザデバイス110上にインストール/実行されているキャリアアプリケーション116、116Cに問い合わせることによって、第1の無線ネットワーク120aが第2の無線ネットワーク120bと同じネットワークオペレータ70に関連付けられているかどうかを判定してもよい。キャリアアプリケーション116は、特定のキャリア/ネットワークオペレータ、例えば、MNOまたはMVNOに関連付けられてもよい。いくつかの例では、マルチネットワークコントローラ300は、まず、キャリアアプリケーション116Cがキャリア70によってデジタル署名されているかどうかを判定することによって、キャリアアプリケーション116Cがキャリア70に関連付けられていることを検証する。たとえば、キャリア70は、キャリア70の暗号鍵352を用いてデジタル署名354を提供してもよい。鍵352は、たとえば、SIM350内に含まれてもよく、SIM350は埋め込みSIM(eSIM)を含んでもよい。マルチネットワークコントローラ300が、キャリア70に関連付けられる鍵352によって署名されたデジタル署名354の存在を介してキャリアアプリケーション116Cを検証すると、マルチネットワークコントローラ300は、次いで、キャリア70に関連付けられ、それによって仲介される各無線ネットワーク120のためのネットワーク識別(ID)117および/またはネットワーククレデンシャル118(例えば、パスワード)を取り出してもよい。したがって、取り出されたネットワークID117および/またはネットワーククレデンシャル118を用いて、マルチネットワークコントローラ300は、第1の無線ネットワーク120aおよび第2の無線ネットワーク120bが同じキャリア70と関連付けられる(たとえば、同じキャリアによって仲介される)かどうかを判断してもよい。場合によっては、無線ネットワーク120(例えば、Wi-Fiネットワーク120b)は、接続の前にクレデンシャル118を必要とすることがあり、マルチネットワークコントローラ300は、関連付けられるネットワーク120にアクセスするために適切なキャリアアプリケーション116Cからこれらのクレデンシャル118を取り出してもよい。いくつかの例では、キャリアアプリケーション116Cは、関連付けられるキャリア仲介ネットワーク120のクレデンシャル118でマルチネットワークコントローラ300を「プッシュ」するかまたは他の態様でプロビジョニングする。キャリアアプリケーション116Cは、マルチネットワークコントローラ300(またはユーザデバイス110のOS)に問い合わせて、ユーザデバイス110がキャリアのネットワーク120のうちの1つに現在接続されているかどうかを判定してもよい。
【0054】
ここで
図4Aおよび
図4Bを参照すると、いくつかの実現例では、モバイルデバイス110のGUI115内にレンダリングされたステータスグラフィック320は、選択オペレータ70に関連付けられる少なくとも1つのキャリア仲介無線ネットワークまたは少なくとも1つのユーザ仲介無線ネットワークへの接続を示すように更新する。たとえば、GUI115においてレンダリングされたステータスグラフィック320a(
図4A)は、モバイルデバイス110がキャリア仲介無線ネットワークに現在接続されていることを示す。図示されていないが、モバイルデバイス110がキャリア仲介無線ネットワーク(たとえば、セルラーネットワーク120a)とユーザ仲介無線ネットワーク(たとえば、Wi-Fiネットワーク120b)との両方に同時に接続される場合、2つのステータスグラフィックス320がGUI115にレンダリングされてもよく、各々は、キャリア仲介無線ネットワークまたはユーザ仲介無線ネットワークへの接続のそれぞれ1つを示す。ここで、2つのステータスグラフィックス320は、ユーザ10が、ユーザデバイス110がどのタイプの無線ネットワーク120に接続されているかを区別することができるように、区別可能(例えば、異なるグラフィックス、向き、色)であり得る。
図4Aはまた、モバイルデバイス110と選択オペレータ70に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク120との間の接続122を無効にすること(すなわち、ステータスグラフィック320aによって表される)と、モバイルデバイス110と選択オペレータ70に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク120との間の接続122を有効にすることとの間で選択するためのユーザ入力指示を受信するよう構成される第1の対話型グラフィック330、330aを示す。第1のユーザ入力指示312が、レンダリングされた第1の対話型グラフィック330aの選択を示す(すなわち、「はい」を選択してキャリアデータを無効にする)ことに応答して、モバイルデバイス110は、キャリア仲介無線ネットワークから切断する。いくつかの例では、モバイルデバイス110は、ユーザ仲介無線ネットワーク120(例えば、ユーザのWi-Fiネットワーク)にも接続する。第1の入力指示312に応答して、
図4Bは、モバイルデバイス110がオペレータ70に関連付けられる任意のキャリア仲介無線ネットワーク120に現在接続されていないことを示すよう、GUI115においてステータスグラフィック320bをレンダリングすることによって、ステータスグラフィック320aが更新するのを示す。いくつかの例では、ステータスグラフィック320bはまた、モバイルデバイス110が現在ユーザ仲介無線ネットワーク120に現在接続されていることを示すように更新してもよい。ここで、
図4Bのステータスグラフィック320bは、
図4Aのステータスグラフィック320aに対して回転された向きを含む。他の例では、ステータスグラフィック320bは、ステータスグラフィック320aと全く異なるグラフィックを含み、異なる色を含み、および/またはユーザ10がキャリア仲介無線ネットワーク120への接続を示すステータスグラフィック320aとユーザ仲介無線ネットワーク120への接続を示すステータスグラフィック320bとを見分けることを可能にする任意の他の区別可能な特徴を含んでもよい。
図4Bはまた、モバイルデバイス110が、ユーザ10にキャリアデータを有効にするように促す後続の第2の対話型グラフィック330bをGUI115にレンダリングするのを示す。ここで、ユーザは、キャリアデータを有効にするよう第2の対話型グラフィック330bの選択を示す(すなわち、「はい」を選択してキャリアデータを有効にする)第2のユーザ入力指示312を提供してもよく、ステータスグラフィック320bは、
図4AのGUI115に適切にレンダリングされたステータスグラフィック320aに戻ってもよい。両方のステータスグラフィックス320a、320bは、現在接続されている無線ネットワークへの接続の品質(たとえば、信号強度)を視覚的に示してもよい。したがって、ステータスグラフィックス320a、320bは、モバイルデバイス110がキャリア仲介無線ネットワークまたはユーザ仲介無線ネットワークに接続されているかどうかをユーザが判断するための便利かつ迅速な方法を提供するとともに、任意選択で接続の品質を提供する。
【0055】
図5は、モバイルデバイス110のマルチネットワーク接続をトグルする方法500のための動作の例示的な構成のフローチャートである。方法500は、第1のネットワークオペレータ70に関連付けられる1つ以上のキャリア仲介無線ネットワーク120に同時に接続されるモバイルデバイス110のための動作502において開始し、モバイルデバイス110のデータ処理ハードウェア112が、画面119上に表示されデータ処理ハードウェア112と通信するグラフィカルユーザインターフェイス115を実行する。グラフィカルユーザインターフェイス115は、モバイルデバイス110が第1のネットワークオペレータ70に関連付けられる1つ以上のキャリア仲介無線ネットワーク120のうちの少なくとも1つのキャリア仲介無線ネットワーク120に現在接続されていることを示すステータスグラフィック320をレンダリングする。グラフィカルユーザインターフェイス115は、モバイルデバイス110と第1のネットワークオペレータ70に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク120との間の接続122を無効にすることと、モバイルデバイス110と第1のネットワークオペレータ70に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク120との間の接続122を有効にすることとの間で選択するためのユーザ入力指示を受信するよう構成される対話型グラフィック330もレンダリングする。
【0056】
ステップ504において、方法500は、データ処理ハードウェア112において、モバイルデバイス110と第1のネットワークオペレータ70に関連付けられる任意の利用可能なキャリア仲介無線ネットワーク120との間の接続122を無効にするためにグラフィカルユーザインターフェイス115にレンダリングされる対話型グラフィック330の選択を示す第1のユーザ入力指示312を受信することを含む。ステップ506において、第1のユーザ入力指示312を受信したことに応答して、本方法は、データ処理ハードウェア112が、第1のネットワークオペレータ70に関連付けられる1つ以上のキャリア仲介無線ネットワーク120の各々からモバイルデバイス110を切断することを含む。ステップ508において、方法は、データ処理ハードウェア112が、モバイルデバイス110が第1のネットワークオペレータ70に関連付けられるいずれのキャリア仲介無線ネットワーク120にも現在接続されていないことを示すようにステータスグラフィック320を更新することを含む。
【0057】
図6は、本文書で説明されるシステムおよび方法を実現するために用いられ得る例示的なコンピューティングデバイス600の概略図である。コンピューティングデバイス600は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなど、様々な形態のデジタルコンピュータを表すことが意図されている。本明細書に示された構成要素、それらの接続および関係、ならびにそれらの機能は、例示的なものにすぎず、本文書に記載および/または特許請求される本発明の実現例を限定するものではない。
【0058】
コンピューティングデバイス600は、プロセッサ610と、メモリ620と、ストレージデバイス630と、メモリ620および高速拡張ポート650に接続する高速インターフェイス/コントローラ640と、低速バス670およびストレージデバイス630に接続する低速インターフェイス/コントローラ660とを含む。構成要素610、620、630、640、650および660の各々は、様々なバスを用いて相互接続され、共通のマザーボード上に、または必要に応じて他の方法で実装されてもよい。プロセッサ610は、高速インターフェイス640に結合されたディスプレイ680などの外部入力/出力装置上にグラフィカルユーザインターフェイス(GUI)のためのグラフィカル情報を表示するために、メモリ620またはストレージデバイス630に記憶された命令を含む、コンピューティングデバイス600内で実行するための命令を処理することができる。他の実現例では、複数のプロセッサおよび/または複数のバスが、必要に応じて、複数のメモリおよびメモリのタイプとともに用いられてもよい。また、複数のコンピューティングデバイス600が接続されてもよく、各デバイスは、(たとえば、サーババンクとして、ブレードサーバのグループとして、またはマルチプロセッサシステムとして)必要な動作の部分を提供する。
【0059】
メモリ620は、コンピューティングデバイス600内で情報を非一時的に記憶する。メモリ620は、コンピュータ可読媒体、揮発性メモリユニット、または不揮発性メモリユニットであってもよい。非一時的メモリ620は、コンピューティングデバイス600による使用のためにプログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を一時的または永続的に記憶するために用いられる物理デバイスであってもよい。不揮発性メモリの例は、フラッシュメモリおよび読み出し専用メモリ(ROM)/プログラマブル読み出し専用メモリ(PROM)/消去可能プログラマブル読み出し専用メモリ(EPROM)/電子的消去可能プログラマブル読み出し専用メモリ(EEPROM)(たとえば、ブートプログラムなどのファームウェアに典型的に用いられる)を含むが、これらに限定されない。揮発性メモリの例には、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、およびディスクまたはテープが含まれるが、これらに限定されない。
【0060】
ストレージデバイス630は、コンピューティングデバイス600のための大容量ストレージを提供することができる。いくつかの実現例では、ストレージデバイス630はコンピュータ可読媒体である。様々な異なる実現例では、ストレージデバイス530は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、もしくはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくは他の構成におけるデバイスを含むデバイスのアレイであってもよい。さらなる実現例では、コンピュータプログラム製品は、情報担体において有形に具現化される。コンピュータプログラム製品は、実行されると上述の方法などの1つ以上の方法を実行する命令を含む。情報担体は、メモリ620、ストレージデバイス630、またはプロセッサ610上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
【0061】
高速コントローラ640は、コンピューティングデバイス600のための帯域幅集約型動作を管理し、低速コントローラ660は、より低い帯域幅集約型動作を管理する。そのような役割の割り当ては、例示的なものにすぎない。いくつかの実現例では、高速コントローラ640は、メモリ620、ディスプレイ680(たとえば、グラフィックスプロセッサまたはアクセラレータを通して)、および様々な拡張カード(図示せず)を受け入れ得る高速拡張ポート650に結合される。いくつかの実現例では、低速コントローラ660は、ストレージデバイス630および低速拡張ポート690に結合される。低速拡張ポート690は、様々な通信ポート(たとえば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、無線イーサネット(登録商標))を含んでもよく、キーボード、ポインティングデバイス、スキャナ、またはスイッチもしくはルータなどのネットワーキングデバイスなどの1つ以上の入力/出力装置に、たとえばネットワークアダプタを介して結合されてもよい。
【0062】
コンピューティングデバイス600は、図に示されるように、いくつかの異なる形態で実現されてもよい。例えば、標準サーバ600aとして、もしくはそのようなサーバ600aのグループ内で複数回、ラップトップコンピュータ600bとして、またはラックサーバシステム600cの一部として実現されてもよい。
【0063】
本明細書に記載のシステムおよび技術のさまざまな実現例は、デジタル電子および/もしくは光学回路系、集積回路系、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、ならびに/またはそれらの組合せで実現されてもよい。これらのさまざまな実現例は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な1つ以上のコンピュータプログラムにおける実現例を含んでいてもよく、当該プロセッサは専用であっても汎用であってもよく、ストレージシステム、少なくとも1つの入力装置、および少なくとも1つの出力装置からデータおよび命令を受信するように、かつこれらにデータおよび命令を送信するように結合されている。
【0064】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)は、プログラム可能なプロセッサのための機械命令を含み、高水準手続き型および/もしくはオブジェクト指向型プログラミング言語で、ならびに/またはアセンブリ/機械言語で実現することができる。本明細書で使用されるとき、用語「機械可読媒体」および「コンピュータ可読媒体」は、機械命令を機械可読信号として受信する機械可読媒体を含む、機械命令および/またはデータをプログラマブルプロセッサに提供するよう使用される任意のコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【0065】
本明細書で説明するプロセスおよび論理フローは、データ処理ハードウェアとも呼ばれ、入力データに対して演算し出力を生成することによって1つ以上のコンピュータプログラムを実行して機能を実行する1つ以上のプログラマブルプロセッサによって実行されことができる。プロセスおよび論理フローはまた、専用論理回路、たとえば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行され得る。コンピュータプログラムの実行に好適であるプロセッサは、例として、汎用マイクロプロセッサおよび特殊目的マイクロプロセッサの両方、ならびに任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。概して、プロセッサは、読み取り専用メモリもしくはランダムアクセスメモリまたは両方から命令およびデータを受信することになる。コンピュータの必須要素は、命令を実行するためのプロセッサ、ならびに命令およびデータを記憶するための1つ以上のメモリデバイスである。一般に、コンピュータはさらに、たとえば磁気ディスク、光磁気ディスクまたは光ディスクといった、データを格納するための1つ以上の大容量記憶装置を含むか、当該1つ以上の大容量記憶装置からデータを受取るかもしくは当該1つ以上の大容量記憶装置にデータを転送するよう作動的に結合されるか、またはその両方を行うことにもなる。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに好適なコンピュータ可読媒体は、例として、半導体メモリデバイス、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイス;磁気ディスク、たとえば内蔵ハードディスクまたはリムーバブルディスク;光磁気ディスク;およびCD ROMおよびDVD-ROMディスクを含む、あらゆる形態の不揮発性メモリ、媒体、ならびにメモリデバイスを含む。プロセッサおよびメモリは、特殊目的論理回路によって補足され得るか、または特殊目的論理回路に組み込まれ得る。
【0066】
ユーザとの対話を提供するために、本開示の1つ以上の局面は、たとえばCRT(陰極線管)、LCD(液晶ディスプレイ)モニタまたはタッチスクリーンといったユーザに対して情報を表示するための表示装置と、選択肢的にキーボードおよびたとえばマウス、トラックボールといったユーザがコンピュータに入力を提供可能であるポインティングデバイスとを有するコンピュータ上で実現され得る。他の種類のデバイスを用いて、ユーザとの対話を提供することもでき、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであり得、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む、任意の形態で受信することができる。加えて、コンピュータは、ユーザが用いるデバイスにドキュメントを送信し、ユーザが用いるデバイスからドキュメントを受信することによって、たとえば、ユーザのクライアントデバイス上のウェブブラウザから受信された要求に応答してそのウェブブラウザにウェブページを送信することによって、ユーザと対話し得る。
【0067】
いくつかの実現例について説明した。それにもかかわらず、本開示の精神および範囲から逸脱することなく、様々な修正がなされ得ることが理解されるであろう。したがって、他の実現例は特許請求の範囲内にある。