(58)【調査した分野】(Int.Cl.,DB名)
前記プロセッサは、サーバから好ましいネットワークの新たなリストを受信し、好ましいネットワークの前記新たなリストで、前記好ましいネットワークのモデムリストを置き換えることになっている、請求項1に記載の装置。
前記判断は、電源投入事象、登録失敗、サービスまたは受信可能範囲の喪失、およびより高い優先度ネットワークに対する定期的な走査のうちの少なくとも1つに応答して生じる、請求項4に記載の方法。
【発明を実施するための形態】
【0007】
ユーザデバイスによる、より速いサービス取得のための好ましいネットワークのリストを利用するための方法およびシステムを説明する。ユーザデバイスは、ユーザデバイスをネットワークに接続するためのワイヤレスモデムを含む、任意のコンテンツレンダリングデバイスであってもよい。かかるユーザデバイスの例としては、電子書籍リーダ、セルラ電話、個人用デジタル補助装置(PDA)、ポータブルメディアプレーヤ、タブレットコンピュータ、ネットブック等が挙げられる。ユーザデバイスは、アイテム提供システムからコンテンツを得るように、または他の活動を実施するように、ネットワークに接続することができる。
【0008】
一実施形態において、特定の地理的領域に対する好ましいネットワークのリストは、ユーザデバイスのモデムに記憶される。好ましいネットワークのリストは、この地理的領域におけるそれらの動作の間に、複数のユーザデバイスによって得られるデータに基づいて作成されてもよい。サーバは、ユーザデバイスから得られたデータを取集し、収集されたデータに基づいて、好ましいネットワークのリストを作成し、ユーザデバイスに、作成されたリストを分配することができる。より多くのデータが利用可能になるにつれて、サーバは、リストを修正し、ユーザデバイスにそれを再分配することができる。加えて、一部の実施形態において、個々のユーザデバイスは、現在のネットワークデータに基づいて、それらのリストを動的に更新する。
【0009】
好ましいネットワークの最新のリストを維持することによって、本発明の実施形態は、サービス取得時間を著しく低減し、ネットワーク選択プロセスを簡略化する。
【0010】
図1は、本発明の実施形態が動作し得る、例示的なネットワークアーキテクチャ100のブロック図である。ネットワークアーキテクチャ100は、アイテム提供システム104と、ネットワーク106(例えば、インターネットといった公的ネットワーク、またはローカルエリアネットワーク(LAN)といった私的ネットワーク)を介して、アイテム提供システム104に結合される複数のユーザデバイス102と、を含むことができる。
【0011】
ユーザデバイス102は、1つ以上のタイプのメディアアイテムの消費を可能にするように、異なる機能性を伴って種々に構成される。メディアアイテムは、例えば、電子テキスト(例えば、eBook、電子雑誌、デジタル新聞)、デジタルオーディオ(例えば、音楽、可聴書籍)、デジタルビデオ(例えば、ムービー、テレビ、ショートクリップ)、画像(例えば、美術品、写真)、マルチメディアコンテンツ、およびソフトウェア更新を含む、いずれのタイプまたは形式のデジタルコンテンツであってもよい。ユーザデバイス102は、電子書籍リーダ、ポータブルデジタル補助装置、モバイル電話、ラップトップコンピュータ、ポータブルメディアプレーヤ、タブレットコンピュータ、カメラ、ビデオカメラ、ネットブック、ノートブック、デスクトップコンピュータ、ゲームコンソール、DVDプレーヤ、メディアセンタ等といった、いずれのタイプのコンテンツレンダリングデバイスを含んでもよい。
【0012】
アイテム提供システム104は、ネットワーク106を介して、ユーザデバイス102に、アイテム、アップグレード、および/または他の情報をダウンロードする。アイテム提供システム104はまた、ネットワーク106を介して、ユーザデバイス102から種々の要求、命令、および他のデータを受信する。アイテム提供システム104は、上の機能性を提供するように処理および記憶能力を有する、1つ以上の機械(例えば、1つ以上のサーバコンピュータシステム、ルータ、ゲートウェイ)を含んでもよい。
【0013】
アイテム提供システム104とユーザデバイス102との間の通信は、任意の通信インフラを介して、有効にすることができる。かかるインフラの一例としては、ワイドエリアネットワーク(WAN)またはVPNおよびワイヤレスインフラの組み合わせが挙げられ、これは、ユーザが、ユーザデバイス102を使用して、配線で接続されたリンクを介してアイテム提供システム104に束縛されることなく、アイテムを購入し、アイテムを消費することを可能にする。ワイヤレスインフラは、種々のデータ処理機器、通信塔等を使用して実装することができる、ネットワークオペレータ(サービスプロバイダ)システムによって提供されてもよい。代替的に、または加えて、ネットワークオペレータシステムは、ユーザデバイス102と情報を交換するように、衛星技術に依存し得る。なお代替的に、または組み合わせて、ワイヤレスインフラは、アクセスポイント(例えば、WiFiアクセスポイント)プロバイダシステムによって提供されてもよい。
【0014】
通信インフラはまた、アイテム提供システム104とワイヤレスネットワークオペレータとの間で情報を渡す上での仲介としての役割を果たす、通信有効化システムを含んでもよい。通信有効化システムは、専用チャネルを介して、ワイヤレスネットワークオペレータと通信することができ、かつ非専用通信機構、例えば、インターネットといった公的ネットワークを介して、アイテム提供システム104と通信することができる。
【0015】
アイテム提供システム104は、ユーザデバイス102の全てによる、ネットワークオペレータシステムの総計の使用に基づいて、料金をネットワークオペレータに支払うことができる。アイテム提供システム104は、別個にエンドユーザに課金される料金を通じて、またはエンドユーザによって行われる他の購入(例えば、デジタルコンテンツの購入)の一部として、これらの費用を埋め合わせることができる。代替的に、ネットワークオペレータは、個々のユーザに直接、請求書を提出することができるか、または個々のそれぞれのユーザの任意選択で、アイテム提供システム104(総計で)または個々のユーザのいずれかに、請求書を提出することができる。
【0016】
ユーザデバイス102は、典型的に、加入者識別モジュール(SIM)カードによって、特定のネットワークオペレータ(サービスプロバイダ)と関連付けられる。SIMカードは、ユーザデバイス102が、その自身のネットワークオペレータによって網羅される領域の外側のサービスを取得する時に使用するべきである、好ましいワイヤレスネットワーク(例えば、PLMN)の事前定義されたリストを含むことができる。リスト内のエントリおよび優先順位は、通常、種々のネットワークオペレータ間で契約される協定に基づく。SIMカード上に記憶される好ましいネットワークリストは、典型的に、米国、カナダ、およびヨーロッパといった領域に限定され、例えば、インド、南米、およびアジアを含むいくつかの領域を網羅しない。好ましいネットワークリストの欠如および多数のローカルネットワークオペレータにより、上の領域におけるユーザデバイスは、サービス取得に著しくより多い時間を費やすことが知られる。
【0017】
本発明の実施形態は、長いサービス取得時間が報告される領域に対する好ましいネットワークのリストをコンパイルすることによって、上の欠点を克服する。一実施形態において、アイテム提供システム104は、ある地理的領域におけるそれらの動作の間に、複数のユーザデバイス102によって得られるネットワークデータを収集する、好ましいネットワークマネージャ110をホストする。収集されたデータに基づいて、好ましいネットワークマネージャ110は、地理的領域に対する好ましいネットワークのリストを作成し、ユーザデバイス102に作成されたリストを分配する。一部の実施形態において、より多くのデータが利用可能になるにつれて、好ましいネットワークマネージャ110は、リストを修正し、ユーザデバイス102にそれを再分配する。
【0018】
ユーザデバイス102は、関連する地理的領域に対する好ましいネットワークの1つ以上のリストを、モデムに記憶する、好ましいネットワークサブシステム108をホストすることができる。ユーザデバイス102が、ローミングサービスを取得することを試行する時、好ましいネットワークサブシステム108は、ネットワーク選択を実施するように、好ましいネットワークの対応するリストを使用する。一部の実施形態において、好ましいネットワークサブシステム108は、現在のネットワークデータに基づいて、好ましいネットワークのそのリストを動的に更新する。一部の実施形態において、好ましいネットワークサブシステム108は、定期的に(またはアイテム提供システム104の要求により)、アイテム提供システム104に、好ましいネットワークのその現在のリストおよび/または収集されたネットワークデータを転送する。
【0019】
図2は、ユーザデバイスによってホストされる好ましいネットワークサブシステム200の一実施形態のブロック図である。好ましいネットワークサブシステム200は、
図1の好ましいネットワークサブシステム108と同じであってもよく、かつ初期モデムプログラマ202と、好ましいネットワークセレクタ204と、好ましいネットワークリストアップデータ206と、収集されたネットワークデータストア214とを含んでもよい。好ましいネットワークサブシステム200の構成要素は、一部の実施形態に従って、ともに組み合わせることができるか、またはさらなるモジュールに分離することができるモジュールを表してもよい。
【0020】
ユーザデバイスは、ユーザデバイスが、その自身のネットワークオペレータによって網羅される領域の外側のサービスを取得する時に使用するべきである、好ましいネットワークの事前定義されたリスト(例えば、SIMの事前定義されたネットワークリスト(複数を含む)210)を記憶する、SIMカードを含む。リスト内のエントリおよび優先順位は、通常、種々のネットワークオペレータ間で契約される協定に基づく。加えて、初期モデムプログラマ202は、SIMカード上に反映されていないことが知られており、かつ長いサービス取得時間が報告された、地理的領域に対する、1つ以上の好ましいネットワークリスト212とともに、ユーザデバイスのモデムを事前プログラムしてもよい。好ましいネットワークリスト212は、それらのモバイル国コード(MCC)およびモバイルネットワークコード(MNC)によって、好ましいネットワークを指定してもよい。好ましいネットワークリスト212は、対応する領域において動作する他のユーザデバイスによって収集されるネットワークデータに基づいて、サーバ(例えば、アイテム提供システム104)によって作成される。好ましいネットワークリスト212は、初期モデムプログラミングの間、モデム上の非揮発性メモリまたはセキュアなメモリ(例えば、一度だけプログラム可能な(OTP)メモリ)にロードされてもよい。
【0021】
好ましいネットワークセレクタ204は、例えば、電源投入事象、サービスまたは受信可能範囲の喪失、ネットワーク登録失敗、およびより高い優先度ネットワークに対する定期的な走査を含む、種々の事象において、ネットワークの検索を担う。一実施形態において、電源投入、サービスまたは受信可能範囲の喪失、登録失敗において、ネットワークを選択する時、好ましいネットワークセレクタ204は、最初に、その最後に登録されたネットワークまたはそのホームネットワークを見出そうとする。これらのネットワークのいずれも見出されない場合、好ましいネットワークセレクタ204は、SIMネットワークリスト210が、ユーザデバイスの現在の場所に存在するネットワークを指定するかどうかを確かめるために、SIMカードをチェックする。より高い優先度ネットワークに対する定期的な走査のために、好ましいネットワークセレクタ204は、SIMの好ましいネットワークリスト210に属する、より高い優先度ネットワークを見出そうとする。SIMネットワークリスト210が、1つ以上の利用可能なネットワークを指定する場合、好ましいネットワークセレクタ204は、指定されたネットワーク、または指定されたネットワークのうちの1つ(2つ以上の利用可能なネットワークが指定される場合、既定の優先度に従って)を選択し、選択されたネットワークで登録することを試行する(例えば、データ通信を有効にするようにパケット切替(PS)登録に対する要求、または音声通信を有効にするように回路切替(CS)登録に対する要求、またはCSおよびPS登録の両方に対する要求を送信することによって)。一実施形態において、登録が成功するかどうかに依存して、好ましいネットワークリストアップデータ206は、収集されたネットワークデータストア214において、選択されたネットワークでの成功または不成功の登録の指標を記録することができる。
【0022】
SIMネットワークリスト210が、いずれの利用可能なネットワークも指定しないか、またはSIMネットワークリスト210から選択されるネットワークが、登録要求を拒否する場合、好ましいネットワークセレクタ204は、現在の場所において利用可能である1つ以上の好ましいネットワークを見出すように、モデムに記憶される好ましいネットワークリスト212にアクセスする。代替的に、好ましいネットワークセレクタ204は、SIMネットワークリスト210を再確認することなく、最初にモデムの好ましいネットワークリスト212にアクセスすることによって、ネットワーク選択プロセスを開始する。
モデムにおける好ましいネットワークリスト212が、1つ以上の利用可能なネットワークを含む場合、好ましいネットワークリストは、リスト212からネットワークを選択する。リスト212が、2つ以上の利用可能なネットワークを含む場合、選択は、事前定義された優先度に従って行われる。例えば、第1の優先度は、これらのネットワークのオペレータと契約される協定に基づいて優先化される3Gネットワークに割り当てられ得、第2の優先度は、これらのネットワークのオペレータと契約される協定に基づいて優先化される2Gネットワークに割り当てられ得る。ネットワークを選択すると、好ましいネットワークセレクタ204は、選択されたネットワークでの登録を試行する。一実施形態において、登録が成功するかどうかに依存して、好ましいネットワークリストアップデータ206は、収集されたネットワークデータストア214において、選択されたネットワークでの成功したまたは不成功の登録の指標を記録してもよい。一実施形態において、登録の試行が不成功である場合、好ましいネットワークリストアップデータ206は、モデムにおいて、好ましいネットワークリスト212から選択されたネットワークを削除する。
【0023】
モデムの好ましいネットワークリスト212が、いずれの利用可能なネットワークを指定しないか、またはモデムリスト212から選択されるネットワークが、登録要求を拒否する場合、好ましいネットワークセレクタ204は、現在の場所において利用可能なネットワークを識別する。一実施形態において、好ましいネットワークリストアップデータ206は、収集されたデータストア214において、現在の場所において利用可能なネットワークを記録する。次いで、好ましいネットワークリストアップデータ206は、利用可能なネットワークのうちの1つを選択する。一実施形態において、利用可能なネットワークが、1つ以上の高品質(閾値を上回る信号強度)の3Gネットワークを含む場合、好ましいネットワークセレクタ204は、ランダムな高品質の3Gネットワークを選択する。利用可能な高品質の3Gネットワークがない場合、好ましいネットワークセレクタ204は、ランダムな高品質の2Gネットワークを選択する。利用可能な高品質の3Gまたは2Gネットワークがない場合、好ましいネットワークセレクタ204は、信号強度の順序によって優先化される低信号品質を有するネットワークを選択する。ネットワークを選択すると、好ましいネットワークセレクタ204は、選択されたネットワークでの登録を試行する。一実施形態において、登録が成功するかどうかに依存して、好ましいネットワークリストアップデータ206は、収集されたネットワークデータストア214において、選択されたネットワークでの成功したまたは不成功の登録の指標を記録してもよい。一実施形態において、登録の試行が成功した場合、好ましいネットワークリストアップデータ206は、モデムにおいて、好ましいネットワークリスト212に、選択されたネットワークを追加する。
【0024】
サーバインターフェース208は、サーバから好ましいネットワークリストを定期的に受信し、それらをモデムに記憶して、リスト212を置き換えるか、または新たなリスト212を追加する。加えて、定期的に、またはサーバ要求により、サーバインターフェース208は、現在の好ましいネットワークリスト212、および/または収集されたネットワークデータストア214からの収集されたネットワークデータをサーバに提供する。収集されたネットワークデータは、特定の場所におけるユーザデバイスのネットワーク登録要求を受け入れたネットワークのリスト、特定の場所におけるユーザデバイスのネットワーク登録要求を拒否したネットワークのリスト、特定の場所において利用可能なネットワークのリスト、または上記の任意の組み合わせを含んでもよい。収集されたネットワークデータストア214は、磁気もしくは光学的記憶装置ベースのディスク、ソリッドステートドライブ、またはハードドライブといった、1つ以上の大容量記憶デバイス上に常駐する単一のデータ構造または複数のデータ構造(データベース、レポジトリ、ファイル等)を表してもよい。
【0025】
図3は、サーバ(例えば、アイテム提供システム)によってホストされる好ましいネットワークマネージャ300の一実施形態のブロック図である。好ましいネットワークマネージャ300は、
図1の好ましいネットワークマネージャ110と同じであってもよい。好ましいネットワークマネージャ300は、ユーザデバイスインターフェース302と、好ましいネットワークリストクリエータ304と、好ましいネットワークデータストア306とを含むことができる。好ましいネットワークマネージャ300の構成要素は、一部の実施形態に従って、ともに組み合わせることができるか、またはさらなるモジュールに分離することができるモジュールを表してもよい。
【0026】
ユーザデバイスインターフェース302は、種々のユーザデバイスからネットワークデータおよび/好ましいネットワークリストを受信し、好ましいネットワークデータストア306にそれらを記憶する。加えて、ユーザデバイスインターフェース302は、好ましいネットワークリストクリエータ304によって作成される、更新された、および/または新たな好ましいネットワークリストを、ユーザデバイスに送信する。ユーザデバイスから受信されるネットワークデータは、特定の場所におけるユーザデバイスのネットワーク登録要求を受け入れたネットワークのリスト、特定の場所におけるユーザデバイスのネットワーク登録要求を拒否したネットワークのリスト、特定の場所において利用可能なネットワークのリスト、または上記の任意の組み合わせを含んでもよい。好ましいネットワークリストクリエータ304は、複数のユーザデバイスから受信されるネットワークデータおよび/または好ましいネットワークリストを分析し、個々の地理的領域に対する新たな好ましいネットワークリストを作成する、および/または分析に基づいて、対応する地理的領域の既存の好ましいネットワークリストを更新する。次いで、好ましいネットワークリストクリエータ304は、ユーザデバイスへのその後の分配のために、好ましいネットワークデータストア306に、新たなおよび/または更新された好ましいネットワークリストを記憶する。好ましいネットワークデータストア306は、磁気もしくは光学的記憶装置ベースのディスク、ソリッドステートドライブ、またはハードドライブといった、1つ以上の大容量記憶デバイス上に常駐する単一のデータ構造または複数のデータ構造(データベース、レポジトリ、ファイル等)を表してもよい。
【0027】
一実施形態において、好ましいネットワークリストクリエータ304は、収集されたネットワークデータの分析に基づいて、ローミング協定に関して、ネットワークオペレータに推奨を提供する。例えば、ネットワークオペレータが、別のネットワークオペレータとのローミング協定を有するが、ユーザデバイスから収集されるネットワークデータが、他方のオペレータが、それらのローミングサービス要求を拒否したことを示す場合、好ましいネットワークリストクリエータ304は、この他方のオペレータとのローミング協定の中断を推奨することができる。別の例において、複数のユーザデバイスが、特定のネットワークが、ある領域において、常に利用可能であることを報告する場合、好ましいネットワークリストクリエータ304は、ネットワークオペレータに、利用可能なネットワークのオペレータと協定することを推奨することができる。
【0028】
図4は、例示的なユーザデバイス400を例解するブロック図である。ユーザデバイス400は、
図1のユーザデバイス102と同じであってもよく、かつ電子書籍リーダ、PDA、モバイル電話、ラップトップコンピュータ、ポータブルメディアプレーヤ、タブレットコンピュータ、カメラ、ビデオカメラ、ネットブック、デスクトップコンピュータ、ゲームコンソール、DVDプレーヤ、メディアセンタ等といった、いずれのタイプのコンピューティングデバイスであってもよい。
【0029】
ユーザデバイス400は、1つ以上のCPUといった1つ以上の処理ユニット404を含む。ユーザデバイス400はまた、システムメモリ406を含み、これは、揮発性および/または非揮発性記憶機構の任意の組み合わせに対応してもよい。システムメモリ406は、オペレーティングシステム構成要素408、好ましいネットワークサブシステム108を含む種々のプログラムモジュール410、プログラムデータ412、および/または他の構成要素を提供する、情報を記憶することができる。ユーザデバイス400は、システムメモリ406によって提供される好ましいネットワークサブシステム108および他の命令を実行するように、処理ユニット(複数を含む)404を使用することによって、機能を実施する。
【0030】
ユーザデバイス400はまた、1つ以上のタイプの取り外し可能な記憶装置、および/または1つ以上のタイプの非取り外し記憶装置から成り得る、データ記憶デバイス414を含んでもよい。データ記憶デバイス414は、本明細書において説明される方法論または機能のうちのいずれか1つ以上を具現化する、1つ以上の組の命令(例えば、好ましいネットワークサブシステム108の命令)が記憶される、コンピュータが読み取り可能な媒体416を含んでもよい。示されるように、好ましいネットワークサブシステム108の命令はまた、ユーザデバイス400によるその実行の間、システムメモリ406内、および/または処理ユニット(複数を含む)430内に完全にまたは少なくとも部分的に常駐してもよく、システムメモリ406および処理ユニット(複数を含む)430もまた、コンピュータが読み取り可能な媒体を構成する。ワールドSIMマネージャ108の命令は、さらに、ネットワーク上で伝送または受信することができる。
【0031】
ユーザデバイス400はまた、1つ以上の入力デバイス418(キーボード、マウスデバイス、特殊化選択キー等)と、1つ以上の出力デバイス420(ディスプレイ、プリンタ、オーディオ出力機構等)とを含んでもよい。ユーザデバイス400は、ユーザデバイス400が、ワイヤレスネットワークを介して、リモートコンピュータ、アイテム提供システム等といった、他のコンピューティングデバイス424と通信することを可能にするように、ワイヤレスモデム422をさらに含んでもよい。ワイヤレスモデム422は、ユーザデバイス400が、電話呼び出しを受信し、またデータモードにおいて、アイテム提供システムと通信することも可能にし得る。ワイヤレスモデム422は、例えば、セルラデジタルパケットデータ(CDPD)、汎用パケット無線サービス(GPRS)、GSM(登録商標)進化型高速データレート(EDGE)、ユニバーサルモバイルテレコミュニケーションシステム(UMTS)、1x無線伝送技術(1xRTT)、エボリューションデータ最適化(EVDO)、高速ダウンリンクパケットアクセス(HSDPA)、およびWiFiを含む、任意のタイプのモバイルネットワーク技術を使用して、ネットワーク接続を提供してもよい。
【0032】
上で列挙されるモジュールのリストは、ユーザデバイス400によって実施される機能のタイプの代表的なものであって、包括的なものではない。「他のデバイス機能性」428という標識によって示されるように、ユーザデバイス400は、追加の機能を含んでもよい。
【0033】
図5、6、および7は、クライアント側の方法の一部の実施形態の流れ図である。方法は、ハードウェア(回路、専用論理等)、ソフトウェア(汎用コンピュータシステムもしくは専用機械上で実施されるもの等)、または両方の組み合わせを備え得る、処理論理によって実施される。一実施形態において、方法の実施形態は、ユーザデバイス(例えば、
図1のユーザデバイス102の好ましいネットワークサブシステム108)によって実施される。
【0034】
図5は、より速いサービス取得のために、ユーザデバイスモデムにおける好ましいネットワークリストを使用するための方法500の一実施形態の流れ図である。ブロック502において、ユーザデバイスは、現在の場所において、ユーザデバイスにローミングサービスを提供するために利用可能なネットワークに対する、ユーザデバイスのモデムに記憶される好ましいネットワークリストを検索する。モデムの好ましいネットワークリストは、長い(例えば、閾値を上回る)サービス取得時間が報告された、インド、アジア、および南米といった領域における、フィールド試験および動作の間に、種々のユーザデバイスによって得られるネットワークデータに基づいてコンパイルされる。ユーザデバイスにローミングサービスを提供するために利用可能なネットワークは、現在の場所に存在し、かつユーザデバイスのネットワークオペレータとのローミング協定を有するネットワークである。一実施形態において、ユーザデバイスは、起動、サービスもしくは受信可能範囲の喪失、ネットワーク登録失敗、より高い優先度のネットワークに対する定期的な走査、または類似の事象時、モデムの好ましいネットワークリストを検索する。一実施形態において、起動、受信可能範囲の喪失、および登録失敗に関して、ユーザデバイスは、最後に登録されたネットワークおよびホームネットワークの両方が、現在の場所において利用不可能であり、かつSIMネットワークリストが、現在の場所において利用可能なネットワークのうちのいずれも含まないということを判断すると、モデムの好ましいネットワークリストを検索する。定期的なより高い優先度の走査に関して、ユーザデバイスは、SIMネットワークリストに属する、現在の場所において利用可能である、他のより高い優先度ネットワークが存在しないということを判断すると、モデムの好ましいネットワークリストを検索する。現在の場所において、ローミングサービスを提供するために利用可能なネットワークを見出す一実施形態は、
図7と併せて、以下でより詳細に述べられる。
【0035】
ブロック504において、ユーザデバイスは、好ましいネットワークのモデムリストが、現在の場所において、ユーザデバイスにローミングサービスを提供するために利用可能なネットワークを含むかどうかを判断する。そうである場合、ユーザデバイスは、ローミングサービスのためにそのネットワークを使用する(ブロック510)。そうでない場合、ユーザデバイスは、現在の場所において、ユーザデバイスにローミングサービスを提供するために利用可能なネットワークを識別する(ブロック506)。利用可能なネットワークの上の判断および識別を行う一実施形態は、
図7と併せて、以下でより詳細に述べられる。
【0036】
ブロック508において、ユーザデバイスは、ブロック506において識別されたネットワークを、モデムの好ましいネットワークリストに追加する。一実施形態において、ユーザデバイスは、モデムに記憶される更新された好ましいネットワークリストを、サーバ(例えば、アイテム提供システム)に提供する。ユーザデバイスは、モデムリストが更新されるたびに、またはサーバ要求により、または事前定義された時間間隔で、または事前定義された事象時に(例えば、サーバへ接続されると)、モデムリストをサーバに提供することができる。
【0037】
図6は、ユーザデバイスのモデムにおいて、好ましいネットワークのリストを動的に更新するための方法600の一実施形態の流れ図である。ユーザデバイスが特定の領域で動作する際、それは、上で述べられる種々の事象時にネットワーク選択プロセスを実施する。各ネットワーク選択プロセスの間、ユーザデバイスは、1つ以上のネットワークでの登録を試行することができる。登録結果に基づいて、ユーザデバイスは、好ましいネットワークのモデムリストを動的に更新することができる。特に、ユーザデバイスが、モデムリスト上に無く、かつ現在の場所においてユーザデバイスにローミングサービスを提供するために利用可能である、ネットワークを識別する時(ブロック604)、ユーザデバイスは、このネットワークを、好ましいネットワークのモデムのリストに追加する(ブロック606)。
【0038】
ネットワーク選択プロセスの間、ユーザデバイスはまた、好ましいネットワークのモデムリスト上にあるネットワークでの登録を試行することができ、かつそれに応じて登録失敗メッセージを受信することができる(例えば、ネットワークが、現在の領域において、ローミングを許可しない場合)。かかるネットワークが識別される時(ブロック606)、ユーザデバイスは、好ましいネットワークのモデムリストからこのネットワークを除去する(ブロック608)。
【0039】
図7は、ローミングサービスを取得するための方法700の一実施形態の流れ図である。ブロック702において、ユーザデバイスは、例えば、起動、サービスもしくは受信可能範囲の喪失、登録失敗、またはより高い優先度のネットワークに対する定期的な走査時に生じ得る、サービス取得事象を検出し、最後に登録されたPLMNおよびホームPLMNの両方が、現在の場所に存在しないということを判断する(起動、受信可能範囲の喪失、および登録失敗に関して)。ブロック704において、ユーザデバイスは、好ましいPLMNのSIMリストにアクセスする。ブロック706において、ユーザデバイスは、SIMリストが、ユーザデバイスの現在の場所に存在するいずれかのネットワークを含むかどうかを判断する。そうである場合、ユーザデバイスは、事前定義された優先度に基づいて、SIMリストから現在のネットワークのうちの1つを選択し(ブロック708)、ブロック720に進む。定期的なより高い優先度の走査の場合、デバイスは、SIMリストが、いずれかのより高い優先度のネットワークを含有するかどうかを判断する。そうでない場合、ユーザデバイスは、好ましいPLMNのモデムリストにアクセスする(ブロック710)。
【0040】
モデムリストが、現在の場所に存在するいずれかのネットワークを含む場合、ユーザデバイスは、モデムリストから現在の場所に存在するネットワークを選択し(ブロック714)、ブロック720に進む。選択は、最初に、現在の場所に存在し、モデムリストに含まれる3Gネットワークを探し、かかる3Gネットワークが見出されない場合、次いで、現在の場所に存在し、モデムリストに含まれる2Gネットワークを探すことによって行うことができる。
【0041】
モデムリストが、現在の場所に存在するいずれのネットワークも含まない場合、ユーザデバイスは、現在の場所において利用可能なネットワークを識別する(ブロック716)。ブロック718において、ユーザデバイスは、識別されたネットワークのうちの1つを選択し、ブロック720に進む。選択は、事前定義された優先度を使用して行うことができる。例えば、利用可能なネットワークが、1つ以上の高品質(閾値を上回る信号強度)の3Gネットワークを含む場合、ユーザデバイスは、ランダムな高品質の3Gネットワークを選択することができる。利用可能な高品質3Gネットワークが存在しない場合、ユーザデバイスは、ランダムな高品質の2Gネットワークを選択することができる。利用可能な高品質3Gまたは2Gネットワークが存在しない場合、ユーザデバイスは、信号強度の順序によって優先化される低信号品質を有するネットワークのうちの1つを選択することができる。
【0042】
ブロック720において、ユーザデバイスは、選択されたネットワークが、ローミングサービスに対するユーザデバイスの要求を受け入れるかどうか(例えば、選択されたネットワークが、成功したPSおよび/またはCS登録を示すメッセージで応答したかどうか)を判断する。そうである場合、ユーザデバイスは、選択されたネットワークが、モデムリストに含まれるかどうかを判断する(ブロック726)。選択されたネットワークが、モデムリストに含まれない場合、ユーザデバイスは、選択されたネットワークを、好ましいネットワークのモデムリストに追加する(ブロック728)。選択されたネットワークが、モデムリストに含まれる場合、方法700は、終了する。
【0043】
選択されたネットワークが、ブロック720において、ローミングサービスに対するユーザデバイス要求を拒否する(例えば、ユーザデバイスが、PSおよび/またはCS登録失敗を示すメッセージを受信する)場合、ユーザデバイスは、選択されたネットワークが、好ましいネットワークのモデムリスト上にあるかどうかを判断する(ブロック722)。そうでない場合、ユーザデバイスは、ブロック718に進んで、既定の優先度に従って、現在の場所に存在する次のネットワークを選択する。そうである場合、ユーザデバイスは、好ましいネットワークのモデムリストから、選択されたネットワークを除去し(ブロック724)、次いで、ブロック718に進んで、既定の優先度に従って、現在の場所に存在する次のネットワークを選択する。
【0044】
図8は、好ましいネットワークのリストを作成するためのサーバ側の方法の一実施形態の図である。方法は、ハードウェア(回路、専用論理等)、ソフトウェア(汎用コンピュータシステムもしくは専用機械上で実施されるもの等)、または両方の組み合わせを備え得る、処理論理によって実施される。一実施形態において、方法は、サーバ(例えば、
図1のアイテム提供システム104の好ましいネットワークマネージャ110)によって実施される。
【0045】
図8を参照すると、方法800は、ユーザデバイスからネットワークデータを収集するサーバで開始する(ブロック802)。ユーザデバイスから受信されるネットワークデータは、1つ以上の特定の場所に対する1つ以上の好ましいネットワークリスト、特定の場所において、ユーザデバイスのネットワーク登録要求を受け入れたネットワークのリスト、特定の場所において、ユーザデバイスのネットワーク登録要求を拒否したネットワークのリスト、特定の場所において利用可能なネットワークのリスト、または上記の任意の組み合わせを含んでもよい。
【0046】
ブロック804において、サーバは、収集されたネットワークデータに基づいて、個々の領域(例えば、長いサービス取得時間が報告された領域)に対する、好ましいネットワークのリストを作成する。ブロック806において、サーバは、例えば、ネットワーク特性(例えば、2Gまたは3Gといった該当するIMT標準)およびローミング料金を含む、種々の特性に基づいて、好ましいネットワークの各リストを優先化する。ブロック808において、サーバは、ユーザデバイスに、好ましいネットワークのリストを分配する。
【0047】
一実施形態において、サーバは、好ましいネットワークの最新のリストを作成するように、ブロック802から808において実施される動作を定期的に繰り返す。好ましいネットワークのサーバで作成されたリストはより正確かつ完全になるにつれて、それらは、ネットワーク選択プロセスの間、ユーザデバイスに対するデータの主要源となり得、SIMカードPLMNリストを使用する必要性を排除する。
【0048】
図9は、機械に、本明細書において述べられる方法論のうちのいずれか1つ以上を実施させるための一組の命令を実行させることができる、コンピュータシステムの形態の、例示的なアイテム提供システム900を例解する。代替的な実施形態において、機械は、LAN、イントラネット、エクストラネット、またはインターネットにおいて、他の機械に接続(例えば、ネットワーク化)されてもよい。機械は、クライアント・サーバネットワーク環境において、サーバ機械として動作することができる。機械は、パーソナルコンピュータ(PC)、セットトップボックス(STB)、サーバ、ネットワークルータ、スイッチもしくはブリッジ、または機械によって取られるべき行為を指定する一組の命令(順次もしくは別様に)を実行することが可能な任意の機械であってもよい。さらに、単一の機械のみが例解されるが、「機械」という用語はまた、本明細書において述べられる方法論のうちのいずれか1つ以上を実施するように、個々にまたは一緒に一組(もしくは複数の組)の命令を実行する、機械の任意の集合を含むと捉えられるものとする。
【0049】
例示的なコンピュータシステム900は、処理システム(プロセッサ)902と、主要メモリ904(例えば、読み取り専用メモリ(ROM)、フラッシュメモリ、シンクロナスDRAM(SDRAM)といった動的ランダムアクセスメモリ(DRAM))と、静的メモリ906(例えば、フラッシュメモリ、静的ランダムアクセスメモリ(SRAM))と、データ記憶デバイス916とを含み、これらは、バス906を介して互いに通信する。
【0050】
プロセッサ902は、マイクロプロセッサ、中央処理装置等といった、1つ以上の汎用処理デバイスを表す。より具体的には、プロセッサ902は、複雑命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、または他の命令セットを実装するプロセッサ、または命令セットの組み合わせを実装するプロセッサであってもよい。プロセッサ902はまた、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ等といった、1つ以上の特殊目的処理デバイスであってもよい。プロセッサ902は、本明細書において述べられる動作およびステップを実施するための好ましいネットワークマネージャ110を実行するように構成される。
【0051】
コンピュータシステム900は、ネットワークインターフェースデバイス922をさらに含むことができる。コンピュータシステム900はまた、ビデオディスプレイユニット910(例えば、液晶ディスプレイ(LCD)または陰極線管(CRT))と、英数字入力デバイス912(例えば、キーボード)と、カーソル制御デバイス914(例えば、マウス)と、信号生成デバイス920(例えば、スピーカ)とを含むことができる。
【0052】
データ記憶デバイス916は、本明細書において説明される方法論または機能のうちのいずれか1つ以上を具現化する、1つ以上の組の命令(例えば、好ましいネットワークマネージャ110の命令)が記憶される、コンピュータが読み取り可能な媒体924を含むことができる。好ましいネットワークマネージャ110はまた、コンピュータシステム900によるその実行の間、主要メモリ904内、および/またはプロセッサ902内に完全にまたは少なくとも部分的に常駐してもよく、主要メモリ904およびプロセッサ902もまた、コンピュータが読み取り可能な媒体を構成する。好ましいネットワークマネージャ110は、さらに、ネットワークインターフェースデバイス922を介して、ネットワーク920上で伝送または受信することができる。
【0053】
コンピュータが読み取り可能な記憶媒体924は、例示的な実施形態において、単一の媒体であると示されるが、「コンピュータが読み取り可能な記憶媒体」という用語は、1つ以上の組の命令を記憶する、単一の媒体または複数の媒体(例えば、集中もしくは分散データベース、ならびに/または関連キャッシュおよびサーバ)を含むと捉えられるべきである。「コンピュータが読み取り可能な記憶媒体」という用語はまた、機械による実行のための一組の命令を記憶、符号化、または担持することが可能である、および機械に本発明の方法論のうちのいずれか1つ以上を実施させる、いずれの媒体もふくむと捉えられるものとする。したがって、「コンピュータが読み取り可能な記憶媒体」という用語は、ソリッドステートメモリ、光学的媒体、および磁気媒体を含むが、これらに限定されないと捉えられるものとする。
【0054】
上の説明において、多数の詳細が記載される。しかしながら、本開示の利益を有する当業者には、本発明の実施形態が、これらの特定の詳細を伴わずに実践され得るということが明らかであろう。場合によっては、公知の構造およびデバイスが、説明を不明瞭にすることを回避するために、詳細にではなく、むしろ、ブロック図の形態で示される。
【0055】
発明を実施するための形態の一部分は、コンピュータメモリ内のデータビット上での動作のアルゴリズムおよび記号表現に関して提示される。これらのアルゴリズム的説明および表現は、データ処理技術分野における当業者の作業の実態を、他の当業者に効果的に伝達するように、データ処理技術分野における当業者によって使用される手段である。アルゴリズムは、ここでは、概して、所望の結果につながる自己矛盾のない一連のステップであると着想される。ステップは、物理的量の物理的操作を必要とするものである。通常、必ずしもそうではないが、これらの量は、記憶、転送、組み合わせ、比較、および別様に操作されることが可能な電気または磁気信号の形態を採る。時折、主に一般的使用の理由により、これらの信号を、ビット、値、要素、記号、キャラクタ、用語、数字等として言及することが、好都合であると証明されている。
【0056】
しかしながら、これらのおよび類似の用語の全ては、適切な物理的量と関連付けられるべきであり、かつこれらの量に適用される好都合な標識に過ぎないということを念頭に置くべきである。上の論述から明らかなように、別途具体的に記載されない限り、説明全体を通して、「判断」、「識別」、「追加」、「選択」等といった用語を利用する論述は、コンピュータシステムのレジスタおよびメモリ内で物理的(例えば、電子)量として表されるデータを、コンピュータシステムメモリもしくはレジスタ、または他のかかる情報記憶、伝送、もしくはディスプレイデバイス内で物理的量として同様に表される他のデータへと操作および変換する、コンピュータシステム、または類似の電子コンピューティングデバイスの行為及びプロセスを指すということが理解される。
【0057】
本発明の実施形態はまた、本明細書における動作を実施するための装置に関する。本装置は、必要とされる目的のために特別に構築され得るか、またはコンピュータに記憶されるコンピュータプログラムによって選択的に起動もしくは再構成される、汎用コンピュータを備え得る。かかるコンピュータプログラムは、例えば、フロッピー(登録商標)ディスク、光学的ディスク、CD−ROM、および磁気光学的ディスク、読み取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気もしくは光学的カード、または電子命令を記憶するために好適な任意のタイプの媒体を含む、任意のタイプのディスクであるが、これらに限定されない、コンピュータが読み取り可能な記憶媒体に記憶されてもよい。
【0058】
本明細書において提示されるアルゴリズムおよび表示は、いずれの特定のコンピュータまたは他の装置にも本質的には関連しない。種々の汎用システムが、本明細書における教示に従って、プログラムとともに使用され得るか、または必要とされる方法ステップを実施するように、より特殊化された装置を構築することが好都合であることが証明され得る。多様なこれらのシステムに対する必要とされる構造は、以下の説明から明らかであろう。加えて、本発明は、いかなる特定のプログラミング言語をも参照して説明されるものではない。多様なプログラミング言語が、本明細書において説明されるような本発明の教示を実装するために使用され得るということが理解されよう。
【0059】
上の説明は、例解を意図し、制限を意図しないということを理解されたい。上の説明を一読および理解すれば、多くの他の実施形態が、当業者には明らかであろう。したがって、本発明の範囲は、かかる請求項が権利を有する同等物の全範囲とともに、添付の請求項を参照して、判断されるべきである。
【0060】
付記
1.ユーザデバイスのための装置であって、
好ましいネットワークのリストを記憶するようにプログラムされるモデムと、
前記好ましいネットワークのモデムリストを使用して、前記ユーザデバイスの現在の場所において、ローミングサービスを提供するために利用可能なネットワークを選択し、
前記好ましいネットワークのモデムリストが、前記現在の場所において、ローミングサービスを提供するために利用可能な前記ネットワークを含まない時、前記好ましいネットワークのモデムリストを更新するように、前記モデムに結合されるプロセッサと、を備える、装置。
2.前記プロセッサは、前記好ましいネットワークのモデムリストを使用して、
前記好ましいネットワークのモデムリストが、前記現在の場所に存在するネットワークのうちの少なくとも1つを含むかどうかを判断すること、
前記好ましいネットワークのモデムリストが、前記現在の場所に存在する前記ネットワークのうちの少なくとも1つを含む時、前記現在のネットワークのうちの1つを選択し、前記選択されたネットワークからのローミングサービスを要求することと、および
前記好ましいネットワークのモデムリストが、前記現在の場所に存在する前記ネットワークのうちのいずれも含まない時、前記現在のネットワークのうちの1つ以上を識別し、前記識別されたネットワークのうちの1つを選択し、前記選択されたネットワークからのローミングサービスを要求すること
によって、前記現在の場所において、ローミングサービスを提供するために利用可能な前記ネットワークを選択することになっている、付記1に記載の装置。
3.前記プロセッサは、
前記選択されたネットワークが、ローミングサービスに対する要求を拒否し、前記選択されたネットワークが、前記好ましいネットワークのモデムリストに含まれる時、前記好ましいネットワークのモデムリストから前記選択されたネットワークを除去すること、および
前記選択されたネットワークが、ローミングサービスに対する前記要求を受け入れ、前記選択されたネットワークが、前記好ましいネットワークのモデムリストに含まれない時、前記好ましいネットワークのモデムリストに前記選択されたネットワークを追加すること、
によって、前記好ましいネットワークのモデムリストを更新することになっている、付記2に記載の装置。
4.前記プロセッサは、サーバに、好ましいネットワークの前記更新されたモデムリストを提供することになっている、付記1に記載の装置。
5.前記プロセッサは、サーバから好ましいネットワークの新たなリストを受信し、好ましいネットワークの前記新たなリストで、前記好ましいネットワークのモデムリストを置き換えることになっている、付記1に記載の装置。
6.ユーザデバイスのためのコンピュータ実装方法であって、
前記ユーザデバイスのモデムが、前記ユーザデバイスの現在の地理的場所に存在するネットワークのうちの少なくとも1つを指定するかどうかを判断することと、
前記モデムが、いずれの現在のネットワークも指定しない時、前記ユーザデバイスにローミングサービスを提供するために利用可能である前記現在のネットワークのうちの1つを識別することと、
前記モデムに記憶される好ましいネットワークのリストに、前記識別されたネットワークを追加することと、を含む、方法。
7.前記モデムが、前記現在の地理的場所に存在する少なくとも1つのネットワークを指定するかどうかを判断する前に、前記ユーザデバイスの加入者識別モジュール(SIM)カードが、現在のワイヤレスネットワークのうちのいずれも指定しないということを判断することをさらに含む、付記6に記載の方法。
8.前記判断は、電源投入事象、登録失敗、サービスまたは受信可能範囲の喪失、およびより高い優先度ネットワークに対する定期的な走査のうちの少なくとも1つに応答して生じる、付記6に記載の方法。
9.サーバに、前記モデムに記憶される好ましいネットワークの前記リストを定期的に提供することをさらに含む、付記6に記載の方法。
10.サーバから受信されるデータに基づいて、前記モデムにおいて、好ましいネットワークの前記リストを定期的に更新することをさらに含む、付記6に記載の方法。
11.前記ユーザデバイスにローミングサービスを提供するために利用可能である前記現在のネットワークのうちの1つを識別することは、
前記現在のネットワークのうちの1つ以上を識別することと、
前記識別されたネットワークのうちの1つを選択することと、
前記選択されたネットワークからの前記ローミングサービスを要求することと、
前記ローミングサービスに対する要求が受け入れられるという、前記選択されたネットワークからの指標を受信することと、を含む、付記6に記載の方法。
12.前記ローミングサービスに対する前記要求が拒否されるという、前記選択されたネットワークからの指標を受信すると、利用不可能なネットワークのリストに、前記ローミングサービスに対する前記要求を拒否した前記選択されたネットワークを追加することと、
前記ローミングサービスを要求するための別の現在のネットワークを選択することと、をさらに含む、付記11に記載の方法。
13.サーバに、利用不可能なネットワークの前記リストを定期的に提供することをさらに含む、付記12に記載の方法。
14.サーバのためのコンピュータ実装方法であって、
複数のユーザデバイスからネットワークデータを収集することであって、前記ネットワークデータは、1つ以上の地理的場所において、前記複数のユーザデバイスに、ローミングサービスを提供するために利用可能なネットワークを識別する、収集することと、
前記収集されたネットワークデータに基づいて、各地理的場所に対する好ましいネットワークのリストを作成することと、
前記複数のユーザデバイスに、好ましいネットワークの前記作成されたリストを分配することと、を含む、方法。
15.地理的場所は、ローミングサービス取得時間が閾値を超過する領域に対応する、付記14に記載の方法。
16.前記ネットワークデータは、前記1つ以上の地理的場所において、前記複数のユーザデバイスのうちのいずれかのローミングサービス要求を拒絶したネットワークをさらに識別する、付記14に記載の方法。
17.前記収集されたネットワークデータに基づいて、各地理的場所に対する好ましいネットワークの前記リストを作成することは、
各地理的場所に対して、前記複数のユーザデバイスのうちの少なくとも1つからのローミングサービス要求を受け入れたネットワークの予備リストを作成することと、
対応する地理的場所において、前記複数のユーザデバイスのうちの少なくとも1つからのローミングサービス要求を拒絶したネットワークを、前記予備リストから除去することと、を含む、付記16に記載の方法。
18.前記複数のユーザデバイスからのネットワークデータの収集を定期的に繰り返すことと、
新たに収集されたネットワークデータに基づいて、好ましいネットワークの前記リストを更新することと、
前記複数のユーザデバイスに、好ましいネットワークの前記更新されたリストを再分配することと、をさらに含む、付記14に記載の方法。
19.処理システムによって実行される時、前記処理システムに、
前記ユーザデバイスの現在の場所において、ユーザデバイスにローミングサービスを提供するために利用可能な第1のネットワークを識別することであって、前記第1のネットワークは、前記ユーザデバイスのモデムにおける好ましいネットワークのリストに含まれないことを、識別することと、
前記モデムにおいて、好ましいネットワークの前記リストに、前記第1のネットワークを追加することと、
前記ユーザデバイスの前記現在の場所において、前記ユーザデバイスに前記ローミングサービスを提供するために利用不可能な第2のネットワークを識別することであって、前記第2のネットワークは、前記モデムにおいて、好ましいネットワークの前記リストに含まれることを、識別することと、
前記モデムにおいて、好ましいネットワークの前記リストから前記第2のネットワークを除去することと、を含む動作を実施させる命令を含む、非一時的コンピュータが読み取り可能な記憶媒体。
20.前記動作は、
サーバに、好ましいネットワークの前記リストを送信することをさらに含む、付記19に記載のコンピュータが読み取り可能な記憶媒体。
21.前記動作は、
サーバから、好ましいネットワークの更新されたリストを受信することと、
好ましいネットワークの前記更新されたリストで、前記モデムにおける好ましいネットワークの前記リストを置き換えることと、をさらに含む、付記19に記載のコンピュータが読み取り可能な記憶媒体。
22.前記動作は、
サービス取得事象に応答して、前記モデムにおける好ましいネットワークの前記リストが、前記現在の場所に存在するネットワークのうちの少なくとも1つを含むかどうかを判断することと、
前記モデムにおける好ましいネットワークの前記リストが、現在の場所に存在する前記ネットワークのうちの少なくとも1つを含む時、現在のネットワークのうちの1つを選択し、前記選択されたネットワークからのローミングサービスを要求することと、
前記モデムにおける好ましいネットワークの前記リストが、前記現在の場所に存在する前記ネットワークのうちのいずれも含まない時、前記現在のネットワークのうちの1つ以上を識別し、前記識別されたネットワークのうちの1つを選択し、前記選択されたネットワークからのローミングサービスを要求することと、をさらに含む、付記19に記載のコンピュータが読み取り可能な記憶媒体。
23.前記サービス取得事象は、電源投入事象、登録失敗、サービスまたは受信可能範囲の喪失、およびより高い優先度ネットワークに対する定期的な走査のうちの少なくとも1つである、付記22に記載のコンピュータが読み取り可能な記憶媒体。