(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-10
(45)【発行日】2023-01-18
(54)【発明の名称】利用可能なネットワークを積極的に切り換えるための方法および装置
(51)【国際特許分類】
H04W 36/14 20090101AFI20230111BHJP
H04W 36/30 20090101ALI20230111BHJP
H04W 48/18 20090101ALI20230111BHJP
【FI】
H04W36/14
H04W36/30
H04W48/18 113
(21)【出願番号】P 2021517371
(86)(22)【出願日】2019-09-25
(86)【国際出願番号】 US2019052833
(87)【国際公開番号】W WO2020068903
(87)【国際公開日】2020-04-02
【審査請求日】2021-05-28
(32)【優先日】2018-09-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】シルバースタイン,レベッカ
(72)【発明者】
【氏名】プラス,マイケル
(72)【発明者】
【氏名】ヂャン,ニン
【審査官】桑江 晃
(56)【参考文献】
【文献】米国特許第08089939(US,B1)
【文献】米国特許出願公開第2008/0032628(US,A1)
【文献】特開2015-165630(JP,A)
【文献】米国特許第5845208(US,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04W 4/00 - 99/00
3GPP TSG RAN WG1-4
SA WG1-4
CT WG1,4
(57)【特許請求の範囲】
【請求項1】
モバイル装置(102)のネットワーク接続を切り換えるための方法(500)であって、前記方法(500)は、
前記モバイル装置(102)が、アクセスポイント(106)によって提供された第1のネットワーク(104)に対応する接続品質を決定することと、
前記モバイル装置(102)が、前記第1のネットワーク(104)に対応する受信信号強度指標(RSSI)の変化率を決定することと、
前記モバイル装置(102)が、前記変化率および前記接続品質に基づいて、前記第1のネットワーク(104)への接続(120)が品質閾値を超えることを予測することと、
前記モバイル装置(102)が、前記予測に基づいて、前記第1のネットワーク(104)から第2のネットワーク(116)に切り換えることとを含
み、
前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測することは、
前記RSSIの前記変化率に基づいて、信号強度の変化率の階層におけるランクに対応する信号速度分類を決定することと、
前記RSSIの前記変化率が正であるか負であるかを決定することと、
前記接続品質に基づいて、前記接続品質の階層におけるランクに対応する接続品質分類を決定することと、
前記信号速度分類、前記接続品質分類、および、前記RSSIの前記変化率が正であるか負であるかに基づいて、品質スコアを決定することと、
前記品質スコアと、品質スコア閾値とを比較することとを含む、方法(500)。
【請求項2】
前記接続品質を決定することは、成功したパケット送信の数、失敗したパケット送信の数、または成功したパケット受信の数に基づいている、請求項1に記載の方法(500)。
【請求項3】
前記第1のネットワーク(104)に対応する前記RSSIの前記変化率を決定することは、前記第1のネットワーク(104)に対応する前記RSSIの線形モデルを示すRSSI予測データ(1020)を決定することを含む、請求項1または2に記載の方法(500)。
【請求項4】
前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測することは、
カルマンフィルタおよび前記RSSIの前記線形モデルを用いて、ある時点におけるRSSI値を予測することと、
前記ある時点における前記RSSI値とRSSI閾値との比較に基づいて、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを決定することとを含む、請求項3に記載の方法(500)。
【請求項5】
前記第1のネットワーク(104)に対応する前記RSSIの前記変化率を決定することは、
現在のRSSI値およびRSSI予測値に基づいて、予測誤差を決定することを含み、前記RSSI予測値は、カルマンフィルタを用いて決定され、
前記カルマンフィルタを用いて、前記予測誤差に基づいて、前記RSSIの前記線形モデルを更新することをさらに含む、請求項3に記載の方法(500)。
【請求項6】
前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測することは、
前記RSSIの前記更新済み線形モデルを用いて、ある時点におけるRSSI値を予測することと、
前記ある時点における前記RSSI値とRSSI閾値との比較に基づいて、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを決定することとを含む、請求項5に記載の方法(500)。
【請求項7】
前記第1のネットワーク(104)から前記第2のネットワーク(116)に切り換えることは、WiFiネットワークからセルラネットワークに切り換えることを含む、請求項1から6のいずれか一項に記載の方法(500)。
【請求項8】
前記第1のネットワーク(104)から前記第2のネットワーク(116)に切り換えることは、第1のWiFiネットワークから第2のWiFiネットワークに切り換えることを含む、請求項1から7のいずれか一項に記載の方法(500)。
【請求項9】
前記RSSIの前記変化率および前記接続品質に基づいて、プロービングパケット(608)を前記アクセスポイント(106)に送信することをさらに含み、
前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測することは、前記プロービングパケット(608)の送信に基づいている、請求項1から8のいずれか一項に記載の方法(500)。
【請求項10】
前記第1のネットワーク(104)と前記第2のネットワーク(116)との間の反転を回避するために、予測信頼性チェックを実行することをさらに含み、
前記第1のネットワーク(104)から前記第2のネットワーク(116)に切り換えることは、前記予測信頼性チェックの実行に基づいている、請求項1から9のいずれか一項に記載の方法(500)。
【請求項11】
前記予測信頼性チェックを実行することは、前記第1のネットワーク(104)の現在のRSSI値をRSSI閾値と比較することを含む、請求項10記載の方法(500)。
【請求項12】
前記第1のネットワーク(104)に対応する前記RSSIの前記変化率を決定することは、前記第1のネットワーク(104)に対応する前記RSSIの二次モデルを示すRSSI予測データ(1020)を決定することを含む、請求項1から11のいずれか一項に記載の方法(500)。
【請求項13】
モバイル装置(102)のネットワーク接続を切り換えるための方法(500)であって、前記方法(500)は、
前記モバイル装置(102)が、取得したRSSI情報に基づいて、アクセスポイント(106)によって提供された第1のネットワーク(104)に対応する受信信号強度指標(RSSI)の変化率を決定することと、
前記モバイル装置(102)が、前記RSSIの前記変化率に基づいて、前記第1のネットワーク(104)への接続(120)が品質閾値を超えることを予測することと、
前記モバイル装置(102)が、前記予測に基づいて、前記第1のネットワーク(10
4)から第2のネットワーク(116)に切り換えることとを含
み、
前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測することは、
前記RSSIの前記変化率に基づいて、信号強度の変化率の階層におけるランクに対応する信号速度分類を決定することと、
前記RSSIの前記変化率が正であるか負であるかを決定することと、
接続品質に基づいて、前記接続品質の階層におけるランクに対応する接続品質分類を決定することと、
前記信号速度分類、前記接続品質分類、および、前記RSSIの前記変化率が正であるか負であるかに基づいて、品質スコアを決定することと、
前記品質スコアと、品質スコア閾値とを比較することとを含む、方法(500)。
【請求項14】
前記第1のネットワーク(104)に対応する前記RSSIの前記変化率を決定することは、前記第1のネットワーク(104)に対応する前記RSSIの線形モデルを示すRSSI予測データ(1020)を決定することを含む、請求項13に記載の方法(500)。
【請求項15】
前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測することは、
カルマンフィルタおよび前記RSSIの前記線形モデルを用いて、ある時点におけるRSSI値を予測することと、
前記ある時点における前記RSSI値とRSSI閾値との比較に基づいて、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを決定することとを含む、請求項14に記載の方法(500)。
【請求項16】
前記第1のネットワーク(104)に対応する前記RSSIの前記変化率を決定することは、
現在のRSSI値およびRSSI予測値に基づいて、予測誤差を決定することを含み、前記RSSI予測値は、カルマンフィルタを用いて決定され、
前記カルマンフィルタを用いて、前記予測誤差に基づいて、前記RSSIの前記線形モデルを更新することをさらに含む、請求項14に記載の方法(500)。
【請求項17】
前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測することは、
前記更新済み線形モデルを用いて、ある時点におけるRSSI値を予測することと、
前記ある時点における前記RSSI値とRSSI閾値との比較に基づいて、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを決定することとを含む、請求項16に記載の方法(500)。
【請求項18】
前記第1のネットワーク(104)から前記第2のネットワーク(116)に切り換えることは、WiFiネットワークからセルラネットワークに切り換えることを含む、請求項13から17いずれか一項に記載の方法(500)。
【請求項19】
前記第1のネットワーク(104)から前記第2のネットワーク(116)に切り換えることは、第1のWiFiネットワークから第2のWiFiネットワークに切り換えることを含む、請求項13から18いずれか一項に記載の方法(500)。
【請求項20】
前記第1のネットワーク(104)に対応する前記RSSIの前記変化率を決定することは、前記第1のネットワーク(104)に対応する前記RSSIの二次モデルを示すRSSI予測データ(1020)を決定することを含む、請求項13から19いずれか一項に記載の方法(500)。
【請求項21】
モバイル装置(102)であって、
通信ユニット(208)と、
前記通信ユニット(208)に動作可能に連結されたロジック(210、212、214)とを備え、
前記ロジックは、
アクセスポイント(106)によって提供された第1のネットワーク(104)に対応する受信信号強度指標(RSSI)の変化率を決定し、
前記変化率に基づいて、前記第1のネットワーク(104)への接続(120)が品
質閾値を超えることを予測し、
前記通信ユニット(208)を用いて、前記予測に基づいて、前記第1のネットワーク(104)から第2のネットワーク(116)に切り換えるように構成
され、
前記ロジックは、さらに、
前記RSSIの前記変化率に基づいて、信号強度の変化率の階層におけるランクに対応する信号速度分類を決定し、
前記RSSIの前記変化率が正であるか負であるかを決定し、
接続品質に基づいて、前記接続品質の階層におけるランクに対応する接続品質分類を決定し、
前記信号速度分類、前記接続品質分類、および、前記RSSIの前記変化率が正であるか負であるかに基づいて、品質スコアを決定し、
前記品質スコアと、品質スコア閾値とを比較することにより、前記第1のネットワーク(104)への前記接続(120)が品質閾値を超えることを予測するように構成される、モバイル装置(102)。
【請求項22】
前記ロジック(212)は、前記第1のネットワーク(104)に対応する前記RSSIの線形モデルを示すRSSI予測データ(1020)を決定することによって、前記第1のネットワーク(104)に対応する前記RSSIの前記変化率を決定するようにさらに構成されている、請求項21に記載のモバイル装置(102)。
【請求項23】
前記ロジック(212)は、カルマンフィルタおよび前記RSSIの前記線形モデルを用いて、ある時点におけるRSSI値を予測し、前記ある時点における前記RSSI値とRSSI閾値との比較に基づいて、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを決定することによって、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測するようにさらに構成されている、請求項22に記載のモバイル装置(102)。
【請求項24】
前記第1のネットワーク(104)に対応する前記RSSIの前記変化率を決定することは、
現在のRSSI値およびRSSI予測値に基づいて、予測誤差を決定することを含み、前記RSSI予測値は、カルマンフィルタを用いて決定され、
前記カルマンフィルタを用いて、前記予測誤差に基づいて、前記RSSIの前記線形モデルを更新することをさらに含む、請求項22に記載のモバイル装置(102)。
【請求項25】
前記ロジック(212)は、前記RSSIの前記更新済み線形モデルを用いて、ある時点におけるRSSI値を予測し、前記ある時点における前記RSSI値とRSSI閾値との比較に基づいて、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを決定することによって、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測するように構成されている、請求項24に記載のモバイル装置(102)。
【請求項26】
前記ロジック(214)は、WiFiネットワークからセルラネットワークに切り換えることによって、前記第1のネットワーク(104)から前記第2のネットワーク(116)に切り換えるようにさらに構成されている、請求項21から25いずれか一項に記載のモバイル装置(102)。
【請求項27】
前記ロジック(214)は、第1のWiFiネットワークから第2のWiFiネットワークに切り換えることによって、前記第1のネットワーク(104)から前記第2のネットワーク(116)に切り換えるようにさらに構成されている、請求項21から26のいずれか一項に記載のモバイル装置(102)。
【請求項28】
前記ロジック(210)は、前記第1のネットワーク(104)に対応する接続品質を決定し、前記接続品質に基づいて、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測するようにさらに構成されている、請求項21から27のいずれか一項に記載のモバイル装置(102)。
【請求項29】
前記ロジック(210)は、成功したパケット送信の数、失敗したパケット送信の数、または成功したパケット受信の数に基づいて、前記接続品質を決定する、請求項28に記載のモバイル装置(102)。
【請求項30】
前記ロジック(210)は、前記RSSIの前記変化率および前記接続品質に基づいて、プロービングパケット(608)を前記アクセスポイント(106)に送信するようにさらに構成され、
前記ロジック(212)は、前記プロービングパケット(608)の送信に基づいて、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測する、請求項28または29に記載のモバイル装置(102)。
【請求項31】
前記ロジック(214)は、前記第1のネットワーク(104)と前記第2のネットワーク(116)との間の反転を回避するために、予測信頼性チェックを実行するようされに構成され、
前記ロジック(214)は、前記予測信頼性チェックの実行に基づいて、前記第1のネットワーク(104)から前記第2のネットワーク(116)に切り換えるように構成されている、請求項28から30いずれか一項に記載のモバイル装置(102)。
【請求項32】
前記ロジック(210、212、214)は、
1つ以上のプロセッサ(202)と、
命令(218)を含むメモリ(204)とを備え、
前記命令(218)は、前記1つ以上のプロセッサ(202)によって実行されると、前記1つ以上のプロセッサ(202)に、
前記第1のネットワーク(104)に対応する前記受信信号強度指標(RSSI)の前記変化率を決定することと、
前記変化率に基づいて、前記第1のネットワーク(104)への前記接続(120)が前記品質閾値を超えることを予測することと、
前記通信ユニット(208)を用いて、前記予測に基づいて、前記第1のネットワーク(104)から前記第2のネットワーク(116)に切り換えることとを実行させる、請求項21から31のいずれか一項に記載のモバイル装置(102)。
【発明の詳細な説明】
【技術分野】
【0001】
技術分野
本開示は、2つ以上の利用可能なネットワークを積極的に切り換えることに関する。
【背景技術】
【0002】
開示の背景
インターネット接続は、モバイル装置(例えば、スマートフォン、ウェアラブル装置、タブレット、または他のワイヤレスモバイル装置)の最も重要な機能の1つである。多くの場合、モバイル装置は、複数の異なるネットワーク接続(例えば、セルラネットワーク接続および/またはワイヤレスネットワーク接続)を利用可能である。しかしながら、現在のワイヤレスネットワーク接続が弱まる場合、装置は、セルラネットワーク接続または別のワイヤレスネットワーク接続に切り換える必要がある。例えば、モバイル装置が第1のワイヤレスネットワーク接続を介してインターネットに接続した後、ユーザは、モバイル装置および/または第1のワイヤレスネットワーク接続を提供するアクセスポイント(AP)を新たな位置に物理的に移動させることができる(例えば、ユーザは、自分のオフィスから自分の車に移動することができる)。モバイル装置とAPとの間の距離が増大するにつれて、第1のネットワーク接続の信頼性が低下する可能性がある。最終的に、距離が大きすぎる場合、モバイル装置は、第1のネットワーク接続を介してインターネットにアクセスすることができず、第2のネットワーク接続(例えば、第2のAPによって提供された第2のワイヤレスネットワークおよび/またはセルラネットワーク)に切り換える必要がある。しかしながら、第2のネットワーク接続への装置の切り換えが遅すぎると、一定の期間において、装置のインターネット接続が悪くなるおよび/または装置のネットワーク接続が完全に中断する可能性がある。追加的におよび/または代替的に、第2のネットワークへの装置の切り換えが早すぎると、ネットワーク間のスラッシングを引き起こす可能性がある。したがって、上述した1つ以上の欠点に対処するために、1つ以上の改良した方法および/または装置を提供する必要がある。
【発明の概要】
【0003】
概要
本開示の一態様は、モバイル装置のネットワーク接続を切り換えるための方法を提供する。この方法は、モバイル装置がアクセスポイントによって提供された第1のネットワークに対応する接続品質を決定することと、モバイル装置が第1のネットワークに対応する受信信号強度指標(received signal strength indication:RSSI)の変化率を決定することとを含む。また、この方法は、モバイル装置が変化率および接続品質に基づいて、第1のネットワークへの接続が品質閾値を超えることを予測することと、モバイル装置が、予測に基づいて、第1のネットワーク第2のネットワークに切り換えることとをさらに含む。
【0004】
本開示の実装例は、以下の任意の特徴のうち、1つ以上を含むことができる。いくつかの実装例において、接続品質を決定することは、成功したパケット送信の数、失敗したパケット送信の数、または成功したパケット受信の数に基づく。必要に応じて、第1のネットワークに対応するRSSIの変化率を決定することは、第1のネットワークに対応するRSSIの線形モデルを示すRSSI予測データを決定することを含む。
【0005】
いくつかの例において、第1のネットワークへの接続が品質閾値を超えることを予測することは、カルマンフィルタおよびRSSIの線形モデルを用いて、ある時点におけるRSSI値を予測することと、ある時点におけるRSSI値とRSSI閾値との比較に基づいて、第1のネットワークへの接続が品質閾値を超えることを決定することとを含む。いくつかの実装例において、第1のネットワークに対応するRSSIの変化率を決定することは、現在のRSSI値およびRSSI予測値に基づいて、予測誤差を決定することをさらに含む。RSSI予測値は、カルマンフィルタを用いて決定されてもよい。また、変化率を決定することは、カルマンフィルタを用いて、予測誤差に基づいて、RSSIの線形モデルを更新することを含むことができる。
【0006】
いくつかの例において、第1のネットワークへの接続が品質閾値を超えることを予測することは、RSSIの更新済み線形モデルを用いて、ある時点におけるRSSI値を予測することと、ある時点におけるRSSI値とRSSI閾値との比較に基づいて、第1のネットワークへの接続が品質閾値を超えることを決定することとを含む。必要に応じて、第1のネットワークから第2のネットワークに切り換えることは、WiFi(登録商標)ネットワークからセルラネットワークに切り換えることを含む。代替的には、第1のネットワークから第2のネットワークに切り換えることは、第1のWiFiネットワークから第2のWiFiネットワークに切り換えることを含む。
【0007】
いくつかの実装例において、方法は、RSSIの変化率および接続品質に基づいて、プロービングパケットをアクセスポイントに送信することをさらに含み、第1のネットワークへの接続が品質閾値を超えると予測することは、プロービングパケットの送信に基づいている。いくつかの例において、この方法は、第1のネットワークと第2のネットワークとの間の反転を回避するために、予測信頼性チェックを実行することをさらに含み、第1のネットワークから第2のネットワークに切り換えることは、予測信頼性チェックの実行に基づいている。必要に応じて、予測信頼性チェックを実行することは、第1のネットワークの現在のRSSIをRSSI閾値と比較することを含む。
【0008】
第1のネットワークに対応するRSSIの変化率を決定することは、第1のネットワークに対応するRSSIの2次モデルを示すRSSI予測データを決定することを含むことができる。
【0009】
本開示の別の態様は、モバイル装置のネットワーク接続を切り換えるための方法を提供する。この方法は、モバイル装置が、取得したRSSI情報に基づいて、アクセスポイントによって提供された第1のネットワークに対応する受信信号強度指標(RSSI)の変化率を決定することと、モバイル装置が、RSSIの変化率に基づいて、第1のネットワークへの接続が品質閾値を超えることを予測することと、モバイル装置が、予測に基づいて、第1のネットワークから第2のネットワークに切り換えることとを含む。
【0010】
この態様は、以下の任意の特徴のうち、1つ以上を含むことができる。いくつかの実装例において、第1のネットワークに対応するRSSIの変化率を決定することは、第1のネットワークに対応するRSSIの線形モデルを示すRSSI予測データを決定することを含む。いくつかの例において、第1のネットワークへの接続が品質閾値を超えることを予測することは、カルマンフィルタおよびRSSIの前記線形モデルを用いて、ある時点におけるRSSI値を予測することと、特手の時点におけるRSSI値とRSSI閾値との比較に基づいて、第1のネットワークへの接続が品質閾値を超えることを決定することとを含む。
【0011】
必要に応じて、第1のネットワークに対応するRSSIの変化率を決定することは、現在のRSSI値およびRSSI予測値に基づいて、予測誤差を決定することをさらに含む。RSSI予測値は、カルマンフィルタを用いて決定される。また、変化率を決定することは、カルマンフィルタを用いて、予測誤差に基づいて、RSSIの線形モデルを更新することを含むことができる。第1のネットワークへの接続が品質閾値を超えることを予測することは、更新済み線形モデルを用いて、ある時点におけるRSSI値を予測することと、ある時点におけるRSSI値とRSSI閾値との比較に基づいて、第1のネットワークへの接続が品質閾値を超えることを決定することとを含むことができる。
【0012】
いくつかの実装例において、第1のネットワークから第2のネットワークに切り換えることは、WiFiネットワークからセルラネットワークに切り換えるを含む。第1のネットワークから第2のネットワークに切り換えることは、第1のWiFiネットワークから第2のWiFiネットワークに切り換えることを含むことができる。いくつかの例において、第1のネットワークに対応するRSSIの変化率を決定することは、第1のネットワークに対応するRSSIの二次モデルを示すRSSI予測データを決定することを含む。
【0013】
本開示の別の態様は、通信ユニットと、通信ユニットに動作可能に連結されたロジックとを備えるモバイル装置を提供する。ロジックは、アクセスポイントによって提供された第1のネットワークに対応する受信信号強度指標(RSSI)の変化率を決定し、変化率に基づいて第1のネットワークへの接続が品質閾値を超えることを予測し、通信ユニットを用いて、予測に基づいて第1のネットワークから第2のネットワークに切り換えるように構成されている。
【0014】
この態様は、以下の任意の特徴のうち、1つ以上を含むことができる。ロジックは、第1のネットワークに対応するRSSIの線形モデルを示すRSSI予測データを決定することによって、第1のネットワークに対応するRSSIの変化率を決定するようにさらに構成されてもよい。いくつかの実装例において、ロジックは、カルマンフィルタおよびRSSIの線形モデルを用いて、ある時点におけるRSSI値を予測し、ある時点におけるRSSI値とRSSI閾値との比較に基づいて、第1のネットワークへの接続が品質閾値を超えることを決定することによって、第1のネットワークへの接続が品質閾値を超えることを予測するようにさらに構成される。
【0015】
いくつかの例において、第1のネットワークに対応するRSSIの変化率を決定することは、現在のRSSI値およびRSSI予測値に基づいて、予測誤差を決定することを含み、RSSI予測値は、カルマンフィルタを用いて決定され、カルマンフィルタを用いて、予測誤差に基づいてRSSIの線形モデルを更新することをさらに含む。
【0016】
いくつかの実装例において、ロジックは、RSSIの更新済み線形モデルに基づいて、ある時点におけるRSSI値を予測し、ある時点におけるRSSI値とRSSI閾値との比較に基づいて、第1のネットワークへの接続が品質閾値を超えることを決定することによって、第1のネットワークへの接続が品質閾値を超えることを予測するようにさらに構成される。ロジックは、WiFiネットワークからセルラネットワークに切り換えることによって、第1のネットワークから第2のネットワークに切り換えるようにさらに構成されてもよい。必要に応じて、ロジックは、第1のWiFiネットワークから第2のWiFiネットワークに切り換えることによって、第1のネットワークから第2のネットワークに切り換えるようにさらに構成される。
【0017】
いくつかの例において、ロジックは、第1のネットワークに対応する接続品質を決定し、接続品質に基づいて、第1のネットワークへの接続が品質閾値を超えることを予測するようにさらに構成される。ロジックは、成功したパケット送信の数、失敗したパケット送信の数、または成功したパケット受信の数に基づいて、接続品質を決定することができる。
【0018】
本開示の1つ以上の実装例の詳細は、添付の図面および以下の説明に記載される。他の態様、特徴および利点は、説明および図面並びに特許請求の範囲から明らかになるであろう。
【0019】
本開示は、添付の図面と共に以下の説明を参照してより容易に理解される。図面において、同様の参照番号は、同様の要素を表す。
【図面の簡単な説明】
【0020】
【
図1】本開示に記載された一実装例に従って、新たなネットワーク接続に積極的に切り換えるための通信システムの一例を示すブロック図である。
【
図2】本開示に記載された一実装例に従って、新たなネットワーク接続に積極的に切り換えるための通信システムの一例を示す別のブロック図である。
【
図3】本開示に記載された一実装例に従って、新たなネットワーク接続に積極的に切り換えるための通信システムの一例を示すさらに別のブロック図である。
【
図4】本開示に記載された一実装例に従って、新たなネットワーク接続に積極的に切り換えるためのモバイル装置を示すブロック図である。
【
図5】本開示に記載された一実装例に従って、新たなネットワーク接続に積極的に切り換えるために、モバイル装置によって実行される方法の一例を示すフローチャートである。
【
図6】本開示に記載された一実装例に従って、新たなネットワーク接続に積極的に切り換えるためのモバイル装置を示すブロック図である。
【
図7】本開示に記載された一実装例に従って、新たなネットワーク接続に積極的に切り換えるために、モバイル装置によって実行される方法の一例を示すフローチャートである。
【
図8】本開示に記載された一実装例に従って、新たなネットワーク接続に積極的に切り換えるためのモバイル装置を示すブロック図である。
【
図9】本開示に記載された一実装例に従って、新たなネットワーク接続に積極的に切り換えるために、モバイル装置によって実行される方法の一例を示すフローチャートである。
【
図10】本開示に記載された一実装例に従って、RSSI値の例示的なデータを示すグラフである。
【
図11】本開示に記載された一実装例に従って、RSSI速度値の例示的なデータを示す別のグラフである。
【発明を実施するための形態】
【0021】
実施形態の詳細な説明
例示的な実施形態は、接続不良または接続の切り換えが遅すぎるという問題に対処するための技術的解決策を提供する。本明細書に使用される場合、モバイル装置は、1つ以上のネットワーク接続を介して、インターネット(例えば、ワールドワイドウェブ)に接続することができる任意のモバイル機器、システム、および/または装置を含む。例えば、モバイル装置は、スマートフォン、スマートウォッチ、携帯情報端末(PDA)、タブレット装置、他のハンドヘルドまたはポータブル電子装置、MP3プレーヤ、バッテリ駆動装置、ウェアラブル装置、ラジオ、ナビゲーション装置、ラップトップまたはノートブックコンピュータ、DVR(デジタルビデオレコーダ)、ゲーム装置、カメラ、ネットブック、電子ブックリーダ、ビデオ対応画面を含むナビゲーション装置、および/または他の移動装置であってもよく、これらに限定されない。
【0022】
図1は、新たなネットワーク接続に積極的に切り換えるための通信システム100の一例を示す。通信システム100は、少なくとも1つのモバイル装置102を含み、モバイル装置102は、1つ以上のネットワーク接続および/または通信ネットワークを介して、インターネット108と通信する(例えば、接続する)。換言すれば、モバイル装置102は、サーバ(例えば、インターネットプロトコルをサポートするサーバ、そうでなければインターネット108および/またはワールドワイドウェブと相互作用することができるサーバ)、例えばウェブサーバ110に情報を伝送する(例えば、提供するおよび/または送信する)。さらに、モバイル装置102は、ウェブサーバ110から情報を受信する(例えば、取得する)。
【0023】
モバイル装置102は、複数の異なるネットワーク接続および/または通信ネットワークを介して、インターネット108(例えば、ウェブサーバ110)と通信する(例えば、情報を受信および送信する)。例えば、モバイル装置102は、WiFi(登録商標)ネットワーク(例えば、第1のWiFiネットワーク104および/または第2のWiFiネットワーク116)および/またはセルラネットワーク(例えば、セルラネットワーク112)を介して、インターネット108に接続する。
【0024】
WiFiネットワーク104および/または116は、様々なIEEE802.11規格の下で動作する任意のワイヤレスローカルエリアネットワーク(WLAN)、または任意の他の種類のワイヤレスネットワークである。また、WiFiネットワーク104および/または116は、少なくとも1つのWiFiアクセスポイント(AP)(例えば、第1のWiFi AP106および/または第2のWiFi AP118)を含む。WiFi AP106および118は、WiFiネットワーク104および/または116にWiFi接続を提供することができる任意の適切な装置、機器、および/またはシステム(例えば、メッシュネットワークシステム)を含む。いくつかの例において、WiFi AP106および/または118は、公衆にアクセス可能なワイヤレスインターネット接続トランシーバとして機能するホットスポット、例えば、公共場所または半公共場所(例えば、モール、レストラン、店、ホテル、商業ビル、診療室)に設置されるホットスポットであってもよい。いくつかの例において、WiFiネットワーク104および/または116は、他のモバイル装置、例えば他のモバイル装置上のホットスポット/テザリングによって提供されてもよい。いくつかの変形例において、WiFiネットワーク104および/または116は、輸送サービス(例えば、列車、飛行機、バス)によって提供されてもよい。
【0025】
セルラネットワーク112は、1つ以上のセルラAP114、例えば1つ以上のセルタワーを含む。セルラネットワーク112は、第2世代(2G)セルラネットワーク、第3世代(3G)セルラネットワーク、第4世代(4G)または長期進化(LTE)セルラネットワーク、第5世代(5G)セルラネットワークなどを含む任意の種類のセルラネットワークであってもよい。
【0026】
図面は、3つのネットワーク接続および/または通信ネットワークのみを示しているが、これは、説明を簡略化するためであり、実際には、モバイル装置102は、3つの通信ネットワークおよび/またはネットワーク接続よりも多いまたは少ない通信ネットワークおよび/またはネットワーク接続を利用して、インターネット108に接続することができることを理解すべきである。例えば、モバイル装置102は、第3のWiFiネットワークおよび/または別のセルラネットワーク(例えば、第1のセルラネットワーク112は、4Gセルラネットワークであり、第2のセルラネットワークは、3Gセルラネットワークである)に接続することができる。追加的におよび/または代替的に、図面は、各ネットワークに対して1つのAP(例えば、第1のWiFi AP106)のみを示しているが、これは、説明を簡略化するためであり、複数のAPを利用してネットワーク(例えば、第1のWiFiネットワーク104)に接続することができることを理解すべきである。
【0027】
図1は、単一のウェブサーバ110を示しているが、これは、説明を簡略化するためであり、実際には、モバイル装置102は、多くの場合、複数の通信ネットワーク、例えばWiFiネットワーク104、116および/またはセルラネットワーク112を介して、単一のウェブサーバではなく、(同時に、または実質的に同時に、または異なる時間に)複数のウェブサーバと通信することができることを理解すべきである。本実施形態において、モバイル装置102は、ウェブサーバ110(または複数のウェブサーバ)と通信するように示されているが、実施形態に応じて、モバイル装置102は、1つ以上の他の種類のサーバ(例えば、ウェブに基づいていないサーバ、すなわち、ワールドワイドウェブを介して通信していないサーバ)またはサーバではない他の装置と通信することができることを理解すべきである。すなわち、
図1は、モバイル装置102と任意の数および任意の種類の装置との間の最も一般的なワイヤレス通信を示すことを理解すべきである。
【0028】
通信リンク120、124および128は、モバイル装置102、セルラAP114、第1のWiFi AP106、および第2のWiFi AP118の間の空気/大気を介して伝送されるワイヤレス信号を表す。さらに、通信リンク122、126および130は、セルラAP114、第1のWiFi AP106および第2のWiFi AP118とウェブサーバ110との間の様々な種類の通信経路を表す。したがって、実施形態に応じて、通信リンク122、126および130の各々は、1つ以上の有線および/または無線通信経路、例えば、陸上通信配線(例えば、光ファイバ、銅)、マイクロ波通信、無線チャネル、無線経路、イントラネット、インターネット、および/または(例えば、多数のルータなどを含む多数の中間ハードウェアおよび/またはソフトウェア装置を使用することができる)ワールドワイドウェブ通信経路を含むことができる。
【0029】
また、伝送制御プロトコル/イントラネットプロトコル(TCP/IP)、拡張可能なメッセージングおよびプレゼンスプロトコル(XMPP)、ファイル転送プロトコル(FTP)などを含む様々な通信プロトコルおよび方法を用いて、例えば、モバイル装置102とウェブサーバ110との間の通信リンク(例えば、ネットワーク接続)120、122、124、126、128、および/または130を介して、ウェブベースの通信を行うことができる。いくつかの例において、他の種類のプロトコルまたは通信技法を利用して、ウェブベースの通信および/またはインターネット通信を達成することができる。
【0030】
図2は、通信システム100のより詳細な機能ブロックを示す図である。例えば、
図2は、プロセッサ202、メモリ204、ユーザインターフェイス206、および/または通信ユニット208を含むモバイル装置102を示している。いくつかの例において、プロセッサ202は、単一のプロセッサである。他の例において、プロセッサ202は、モバイル装置102の動作に必要な全ての処理を実行するための2つ以上のプロセッサを含むことができる。プロセッサ202は、接続品質ロジック210と、受信信号強度指標(received signal strength indication:RSSI)変化率ロジック212と、ネットワーク切り換えロジック214とを含む。動作中、接続品質ロジック210は、ネットワーク接続および/または通信ネットワーク(例えば、第1のWiFiネットワーク104、セルラネットワーク112、および/または第2のWiFiネットワーク116)の接続品質を決定する。RSSI変化率ロジック212は、ネットワーク接続および/または通信ネットワークのRSSIを決定する。ネットワーク切り換えロジック214は、接続品質ロジック210および/またはRSSI変化率ロジック212から情報を取得する(例えば、受信する)。この情報に基づいて、ネットワーク切り換えロジック214は、第1のネットワーク、例えば第1のWiFi AP106によって提供された第1のWiFiネットワーク104から、第2のネットワークに切り換える。第2のネットワークは、別のWiFiネットワーク(例えば、WiFiネットワーク116)および/またはセルラネットワーク(例えば、セルラネットワーク112)である。接続品質ロジック210、受信信号強度指標(RSSI)変化率ロジック212、およびネットワーク切り換えロジック214は、以下でより詳細に説明する。
【0031】
メモリ204は、モバイル装置102の動作を実行するためのプロセッサ命令および実行可能なコードモジュールを記憶するための読み取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、または他の適切な非一時的メモリを含む。例えば、メモリ204は、モバイル装置102の動作を実行するために使用される様々なデータを記憶するためのRSSIデータベース216を含む。また、メモリ204は、コンピュータ実行可能な命令218を記憶する。コンピュータ実行可能な命令218は、実行されると、プロセッサ202に、本明細書に記載された実施形態の構成要素の態様を実装させ、および/または本明細書に記載された実施形態の方法および手順の態様を実行させる。
図2は、メモリ204をプロセッサ202とは別個のものとして示しているが、いくつかの変形例において、メモリ204は、プロセッサ202の一部であってもよい。
【0032】
ユーザインターフェイス206は、ユーザ入力/コマンドを受信し、ユーザ入力をモバイル装置102の1つ以上の構成要素および/またはエンティティに送信するための任意の種類のインターフェイスである。モバイル装置102は、通信ユニット208を介して、第1のWiFiネットワーク104の第1のWiFi AP106、第2のWiFiネットワーク116の第2のWiFi AP118、および/またはセルラネットワーク112のセルラAP114とメッセージ、情報、および/またはデータを受信および送信することができる。したがって、
図2には示されていないが、通信ユニット208は、当技術分野で公知の様々な要素(例えば、アンテナ、受信機、送信機、変調/復調ユニットなど)を含むことができる。
【0033】
図3は、新たなネットワーク接続に積極的に切り換えるための通信システム300の別の例を示している。通信システム300は、通信システム100と同様の装置、サーバ、AP、および/またはネットワークを含み、干渉302をさらに含む。干渉302は、モバイル装置102と第1のWiFiネットワーク104との接続を中断させる任意の干渉(例えば、WiFi無線周波数干渉および/または密室などの物理的な干渉)である。例えば、モバイル装置102は、ユーザインターフェイス206を介して、ユーザが特定の映画をストリーミングしたいことを示すユーザ入力を受信する。ウェブサーバ110は、映画を記憶する。したがって、モバイル装置102は、映画の一部に対する要求を示す1つ以上のデータパケットを送信する。データパケットは、第1のWiFi AP106を介してウェブサーバ110にルーティングされる。しかしながら、干渉302によって、第1のWiFi AP106は、要求を示す1つ以上のデータパケットを受信することができない。したがって、モバイル装置102は、ユーザーインターフェイス上で映画を表示することができない。
【0034】
追加的におよび/または代替的に、モバイル装置102は、第1のWiFi AP106から情報(例えば、データパケット)を受信することが困難になる場合がある。例えば、ウェブサーバ110は、映画に対応するデータパケットを第1のWiFi AP106に送信し、第1のWiFi AP106は、データパケットをモバイル装置102に送信する。しかしながら、干渉302によって、モバイル装置102は、1つ以上のデータパケットを受信することができず、再生中の映画は、一時停止するまたは失速する。
【0035】
追加的におよび/または代替的に、
図1を参照して、干渉302がなくても、モバイル装置102は、第1のWiFiネットワーク104との接続および/または第1のWiFi AP106との情報の送受信が困難になることがある。例えば、ユーザは、モバイル装置102および/または第1のWiFi AP106を新たな位置に物理的に移動させる(例えば、モバイル装置102を持っているユーザは、自分のオフィスから駐車場に移動する)。移動によって、最初に第1のWiFiネットワーク104の範囲内にあるモバイル装置102は、最終的に第1のWiFiネットワーク104の範囲外になる。追加的におよび/または代替的に、いくつかの例において、モバイル装置102は、静止であり、第1のWiFi AP106は、モバイル装置102から離れるように移動する(例えば、第1のWiFi AP106は、モバイル装置102から離れるように走行する車両上に設置されている)。同様に、第1のWiFi AP106の移動によって、モバイル装置102は、最終的に第1のWiFiネットワーク104の範囲外になる。
【0036】
インターネット108の接続の中断および/またはインターネット108の接続の不良を防止するために、モバイル装置102は、接続品質ロジック210、RSSI変化率ロジック212および/またはネットワーク切り換えロジック214を用いて、第1のネットワーク(例えば、第1のWiFiネットワーク104)から、第2のネットワーク(例えば、セルラネットワーク112および/または第2のWiFiネットワーク116)に積極的に切り換える。例えば、モバイル装置102は、第1のWiFiネットワーク104の使用不可または性能低下を予測すると、異なるネットワークに積極的に切り換える。いくつかの例において、ネットワークの切り換えは、モバイル装置102および/またはユーザが性能の低下に遭遇するおよび/または経験する前(例えば、再生中の映画が失速するおよび/または停止する前)に発生する。さらに、同様の予測は、(例えば、セルラネットワーク112および/または第2のWiFiネットワーク116などの第2のネットワークの)使用可能性に適用されてもよい。例えば、予測に基づいて、モバイル装置102は、第2のネットワークに切り換えるべきかおよび/またはどのネットワークに切り換えるべきかを判断する。これは、以下の方法およびシステムにおいてより詳細に説明される。
【0037】
図4は、新たなネットワークまたは第2のネットワークに積極的に切り換えるモバイル装置102を示すより詳細なブロック図である。例えば、
図4は、接続品質(QOC)ロジック210、RSSI変化率ロジック212、およびネットワーク切り換えロジック214を含むプロセッサ202を示している。以下の説明は、本質的には例示のみであり、本開示、その応用または用途を制限することを決して意図していない。例えば、
図6、
図7、
図8および
図9を参照して以下で説明するように、ロジック210、212および214並びに方法500の複数の実装例を使用して、第2のネットワークに積極的に切り換えることができる。本明細書(例えば、
図4、6および8)に使用される場合、用語「ユニット」または「ロジック」は、1つ以上のソフトウェアまたはファームウェアプログラムを実行するための特定用途向け集積回路(ASIC)、電子回路、(共有、専用、またはグループ化)プロセッサもしくはマイクロプロセッサまたはその一部および/または(共有、専用、またはグループ化)メモリ、記載された機能を提供するための組み合わせロジック回路および/または他の適切な構成要素を指すか、その一部であるか、またはそれらを含む。また、他の実装技術、例えばプログラマブルロジックアレイおよびステートマシンも同様に採用されてもよい。したがって、本開示のシステムは、ユニットの特定の例示および構成を含むが、本開示のシステムの範囲は、これらに限定されない。他の修正は、当業者にとって明らかであろう。以下、
図5を参照して、
図4を説明する。
図5は、モバイル装置102が第2のネットワークに積極的に切り換えるための例示的な方法を示す。
【0038】
動作中、ステップ502において、接続品質ロジック210は、APによって提供された第1のネットワーク、例えば第1のWiFi AP106によって提供された第1のWiFiネットワーク104の接続品質を決定する。例えば、ロジック210は、例えば第1のWiFi AP106などのAPに対応するAP情報402を取得する。ロジック210は、AP情報414に基づいて、モバイル装置102と第1のWiFi AP106との間の接続に対応する接続品質を決定する。例えば、接続品質は、モバイル装置102から第1のWiFi AP106への成功したパケット送信の数、モバイル装置102から第1のWiFi AP106への失敗したパケット送信の数、第1のWiFi AP106からモバイル装置102への成功したパケット受信の数、第1のWiFi AP106およびモバイル装置102に対応する再試行回数、および/または第1のWiFi AP106とモバイル装置102との間に交信したデータと失速および/または滞留したデータとの比を示す。
【0039】
いくつかの例において、ロジック210は、接続品質を用いて、モバイル装置102と第1のWiFi AP106との間にデータが流れているか否かを判断する。例えば、ロジック210は、再送信回数および/または着信データ統計と共に、各ネットワーク技術インターフェイス上の接続の発信バッファをチェックすることによって、接続品質を決定する。追加的におよび/または代替的に、ロジック210は、接続品質に基づいて、データが流れているか否か、および/またはモバイル装置102と第1のWiFi AP106との間に流れるデータ量を判断する。例えば、ロジック210は、データが流れているか(例えば、正常)、許容可能であるか(例えば、データパケットの大部分は、第1のWiFi AP106とモバイル装置102との間に送受信されている)、殆ど流れていないか(例えば、殆どのデータパケットは、第1のWiFi AP106とモバイル装置102との間に送受信されていない)、および/または流れていないか(例えば、データパケットは、第1のWiFi AP106とモバイル装置102との間に送受信されていない)を判断する。ロジック210は、情報406(例えば、接続品質および/またはデータが流れているか否か)をネットワーク切り換えロジック214に提供する(例えば、伝送するおよび/または送信する)。
【0040】
ステップ504において、RSSI変化率(速度)ロジック212は、第1のネットワーク(例えば、第1のWiFiネットワーク104)に対応する受信信号強度指標(RSSI)の変化率(例えば、速度)を決定する。例えば、ロジック212は、第1のWiFi AP106の現在のRSSI値および/または過去のRSSI値を示すRSSI情報404を取得する。RSSIは、第1のWiFi AP106から受信した信号のパワーおよび/または強度を示す測定値(例えば、数値)である。現在のRSSI値は、第1のWiFi AP106から受信した信号の最新のRSSI値である。過去のRSSI値は、第1のWiFi AP106から受信した信号の過去のRSSI値である。例えば、モバイル装置102は、第1のWiFi AP106からの送信に基づいて、モバイル装置102の位置におけるWiFiの信号強度、例えばRSSI値を決定する。モバイル装置102は、観測および/または測定したRSSIをメモリ204に、例えばRSSIデータベース216に格納する。ロジック212は、第1のWiFi AP106の現在の(例えば、最新の)RSSI値を取得する、またはRSSIデータベース216から、第1のWiFi AP106の過去のRSSI値を取得する。
【0041】
いくつかの例において、ロジック212は、最近のRSSI値(例えば、現在のRSSI値および/または過去のRSSI値)の間の差に基づいて、第1のWiFiネットワーク104に対応するRSSI値の速度を決定する(例えば、計算する)。例えば、モバイル装置102および/または第1のWiFi AP106がさらに物理的に離れて移動する場合、モバイル装置102の受信RSSIは、減少する。ロジック212は、モバイル装置102および/または第1のAP106が離れて移動するときのRSSI値の速度を決定する。
【0042】
いくつかの変形例において、ロジック212は、複数のRSSI値(例えば、現在のRSSI値および複数の過去のRSSI値)の加重変化平均値を使用して、第1のWiFi AP106のRSSI速度を決定する。いくつかの例において、ロジック212は、±0.2を静止(stationary)として、±1を遊走(wandering)として、±4を歩き(striding)として、および/または±10を疾走(sprinting)とするように、速度閾値を決定する。正(+)は、現在のRSSI値と過去のRSSI値との間のRSSI速度が増加していることを示し、負(-)は、RSSI速度が減少していることを示す。ロジック212は、速度閾値と第1のWiFi AP106のRSSI速度との比較に基づいて、第1のWiFi AP106のRSSI変化(例えば、モバイル装置102および/またはWiFi AP106が静止であるか否か、遊走であるか否か、歩きであるか否か、および/または疾走であるか否か)を決定する。
【0043】
ステップ506において、ネットワーク切り換えロジック214は、RSSIの変化率(速度)および接続品質に基づいて、第1のネットワークへの接続(例えば、モバイル装置102と第1のWiFi AP106との間のWiFi接続120)が品質閾値を超えることを予測する。例えば、ロジック214は、情報406(例えば、接続品質および/またはデータが流れているか否か)および情報408(例えば、第1のWiFiネットワーク104のRSSI値速度および/またはRSSIの変化)を取得する。ロジック214は、情報406および408に基づいて、第1のWiFiネットワーク104とモバイル装置102との間の接続が品質閾値を超える(例えば、上または下)将来の時点(例えば、将来の30秒)を予測する。いくつかの変形例において、第1のネットワークへの接続が品質閾値を超えることを予測することは、モバイル装置102が、将来の時点(例えば、将来の30秒)において、第1のWiFiネットワーク104を介してウェブサーバ110に接続することができないことを示す。他の変形例において、第1のネットワークへの接続が品質閾値を超えることを予測することは、第1のWiFiネットワーク104によって提供された、モバイル装置102をウェブサーバ110に接続するためのネットワーク接続が悪くなることを示す。
【0044】
いくつかの例において、ロジック214は、データが流れているか否かおよび/またはRSSIの変化を用いて、第1のネットワークへの接続が品質閾値を超えるか否かを判断する。例えば、第1のWiFi AP106を介して確立された接続は、データが流れておらず且つ速度が疾走(-10)であることを示す場合、ロジック214は、第1のネットワークへの接続が品質閾値を超えると判断する。追加的におよび/または代替的に、データの流れが許容可能であり且つRSSIの変化が遊走である場合、ロジック214は、第1のネットワークへの接続が品質閾値を超えていないと判断する。しかしながら、この接続がすぐに落ちる可能性があるため、ロジック214は、一定の期間(例えば、15秒)後に情報406および408を要求する。
【0045】
以下の表は、データが流れているか否か(流れている、許容可能、殆ど流れていない、流れていない)およびRSSIの変化(静止、遊走、歩き、疾走)に基づいて、第1のネットワークへの接続が品質閾値を超えるか否かを判断する一例を示す。しかしながら、以下の表は、単なる一例であり、ロジック214は、多くの他の方法、例えばデータが流れているか否かおよびRSSIの変化をそれぞれ判断するための異なるスコアを使用して、第2のネットワークに切り換えるか否かを判断することができる。
【0046】
【0047】
上記の表を参照して、いくつかの例において、品質閾値(例えば、スコア)は、50である。スコアが50以下(例えば、殆ど流れていないおよび静止、殆ど流れていないおよび歩き、許容可能および歩き)の場合、ロジック214は、モバイル装置102と第1のWiFiネットワーク104との間の接続が悪くなるおよび/または落ちると予測する。スコアが50よりも高い場合、ロジック214は、第1のネットワークへの接続が悪くないおよび/または落ちないと予測する。追加的におよび/または代替的に、ロジック214は、速度が正および/または負であるか否かに基づいて、第1のネットワークへの接続が悪くなるおよび/または落ちると予測する。例えば、速度が負(-)である、すなわち、殆ど流れていない且つ遊走であるる場合に、ロジック214は、第1のネットワークへの接続が悪くなるおよび/または落ちると予測する一方、速度が正(+)である、すなわち、殆ど流れていないおよび遊走である場合、第1のネットワークへの接続が悪くないいおよび/または落ちないと予測する。
【0048】
ステップ508において、ネットワーク切り換えロジック214は、第1のネットワークへの接続が品質閾値を超えるという予測に基づいて、第1のネットワークから第2のネットワークに切り換える。例えば、ネットワーク切り換えロジック214は、モバイル装置102を、第1のWiFi AP106を使用してウェブサーバ110との通信から、第2のWiFi AP118および/またはセルラAP114を使用してウェブサーバ110との通信に切り換える。
【0049】
いくつかの例において、第1のネットワークから第2のネットワークへの切り換は、第2のネットワークの使用可能性(例えば、第2のネットワークへの接続が品質閾値を超えるか否かという予測)にさらに基づく。例えば、接続品質ロジック210は、第2のアクセスポイント(例えば、第2のWiFi AP118および/またはセルラAP114)によって提供された第2のネットワークへの接続品質を決定する。追加的におよび/または代替的に、RSSI変化率ロジック212は、第2のネットワークのRSSI変化率を決定する。ネットワーク切り換えロジック214は、第2のネットワークのRSSIおよび接続品質を用いて、第2のネットワークへの接続が品質閾値を超えるか否かを予測する。いくつかの例において、第1のネットワークへの接続が品質閾値を超えても、ネットワーク切り換えロジック214は、第2のネットワークへの接続が品質閾値を超えると判断する場合、第1のネットワークから第2のネットワークに切り換えない。
【0050】
図6は、新たなネットワークまたは第2のネットワークに積極的に切り換えるモバイル装置102を示す別のブロック図である。ロジック210は、品質制御ユニット602と、プロービングパケットチェックユニット604とを含む。図示は、サブユニット602および604を親ロジック210の下位の子ユニットとして示しているが、各サブユニットは、親ロジックとは別個のユニットとして動作することができ、異なる用途に適するように他の適切なサブユニットの組み合わせも考えられる。例えば、プロービングパケットチェック部604は、
図6に示すようにロジック210に含まれる代わりに、ロジック214に含まれてもよい。ロジック212および214の機能は、上述したものと同様である。追加的におよび/または代替的に、ロジック212および/または214は、選択可能である(すなわち、モバイル装置102は、ロジック212および/または214を使用しなくても、第2のネットワークに積極的に切り換えることができる)。
図7を参照して、
図6を説明する。
図7は、新たなネットワークまたは第2のネットワークに積極的に切り換えるための方法を示す別のフローチャートである。
【0051】
ステップ702において、接続品質(QOC)ユニット602は、上述したように、第1のネットワーク、例えば第1のWiFiネットワーク104に対応するAP情報を取得する。ステップ704において、QOCユニット602は、第1のネットワークに対応する接続品質(例えば、データは、流れている、許容可能である、殆ど流れていない、および/または流れていないこと)を決定する。例えば、QOCユニット602は、上述したように、一定の期間において第1のWiFiネットワーク104の接続品質を決定し、第1のWiFiネットワーク104の新たな接続品質を継続的に決定する。QOCユニット602は、情報606(例えば、接続品質を示す情報)をプロービングパケットチェックユニット604に提供する。また、プロービングパケットチェック部604は、第1のWiFi AP106の現在のRSSIを示すRSSI情報404を取得する。RSSI情報404は、上述したものと同様である。プロービングパケットチェックユニット604は、第1のWiFi AP106のRSSIをRSSI閾値(例えば、所定のRSSI閾値および/または予めプログラムされたRSSI閾値)と比較する。
【0052】
ステップ706において、プロービングパケットチェックユニット604は、RSSI情報および第1のネットワークの接続品質に基づいて、1つ以上のプロービングパケット608を第1のAP(例えば、第1のWiFi AP106)に送信する。例えば、第1のWiFi AP106のRSSIがRSSI閾値未満であり且つ接続品質がモバイル装置102と第1のWiFi AP106との間でデータが流れていないおよび/または殆ど流れていないことを示す場合、プロービングパケットチェックユニット604は、プロービングパケットチェックを実行し、通信ユニット208を介してプロービングパケットを第1のWiFi AP106に送信する。プロービングパケットチェックユニット604は、送信に基づいて、モバイル装置102と第1のWiFi AP106との間のプロービングパケットの送信および/または受信が成功したか否かを判断する。例えば、送信が成功した場合、第1のWiFi AP106は、プロービングパケットを受信し、応答パケットをモバイル装置102に返信する。モバイル装置102が第1のWiFi AP106から応答パケットを受信した場合、プロービングパケットチェックユニット604は、プロービングパケットチェックが成功したと判定する。プロービングパケットの送信および/または受信が失敗した場合(例えば、第1のWiFi AP106から応答パケットを受信していない場合)、プロービングパケットチェック部604は、プロービングパケットチェックが失敗したと判断する。プロービングパケットチェックユニット604は、情報406(例えば、プロービングパケットチェックが成功したか否かおよび/または接続品質)をネットワーク切り換えロジック214に提供する。
【0053】
いくつかの例において、プロービングパケットチェックユニット604は、1つ以上の送信速度で、1つ以上のプロービングパケットを第1のWiFi AP106に送信する。プロービングパケットチェックユニット604は、複数の異なる送信速度のプロービングパケットを使用して、第1のWiFi AP106とモバイル装置102との間の接続が品質閾値を超えるか否かを予測する。例えば、プロービングパケットチェック部604は、最も信頼できる送信速度でプロービングパケットを送信する。最も信頼できる送信速度で第1のWiFi AP106からの受信が成功しない場合、プロービングパケットチェックユニット604は、第1のWiFi AP106とモバイル装置102との間の接続が品質閾値を超えると判断する。
【0054】
ステップ708において、ロジック214は、AP、例えば第1のWiFi AP106へのプロービングパケットの送信に基づいて、第1のネットワークへの接続が品質閾値を超えることを予測する。例えば、プロービングパケットチェックが失敗した場合、ロジック214は、第1のネットワークが品質閾値を超えると判断する。ステップ710において、ロジック214は、ステップ708の予測に基づいて、第1のネットワークから第2のネットワークに切り換える。
【0055】
いくつかの例において、上述したように、上述したおよび/または下記に説明されるロジック212の機能は、方法700に含まれる。少なくとも1つの例において、例えば、ステップ506を参照して、ロジック214は、プロービングパケットチェック、(例えば、ステップ504から得られた)RSSIの変化率、および/または(例えば、ステップ502から得られた)接続品質を用いて、第1のネットワークへの接続が品質閾値を超えるか否かおよび/または第1のネットワークから第2のネットワークに切り換えるか否かを予測する。
【0056】
図8は、新たなネットワークまたは第2のネットワークに積極的に切り換えるモバイル装置102を示す別のブロック図である。ロジック212は、RSSI予測推定ユニット802と、RSSI速度を用いた予測ユニット804と、誤差分析ユニット806とを含む。図示は、サブユニット802、804および806を親ロジック212の下位の子ユニットとして示しているが、各サブユニットは、親ロジックとは別個のユニットとして動作することができ、異なる用途に適するように他の適切なサブユニットの組み合わせも考えられる。ロジック210および214の機能は、上述したものと同様である。追加的におよび/または代替的に、ロジック210および/または214は、選択可能である(例えば、モバイル装置102は、ロジック210および/または214を使用しなくても、第2のネットワークに積極的に切り換えることができる)。例えば、以下で説明するように、
図8は、ロジック210の機能を含まなくてもよい。しかしながら、ロジック210の機能は、
図8に含まれてもよい。例えば、少なくとも1つの例において、モバイル装置は、上述したように、ロジック210を用いて、第1のネットワークの接続品質に基づいて、第1のネットワークへの接続が品質閾値を超えるか否かを予測する。
図9を参照して、
図8を説明する。
図9は、新たなネットワークまたは第2のネットワークに積極的に切り換えるための方法を示す別のフローチャートである。
【0057】
以下で説明するように、いくつかの例において、ロジック212は、観測されたRSSI測定値およびカルマンフィルタを用いて、第2のネットワークに積極的に切り換える。例えば、カルマンフィルタは、観測された一連の測定値(例えば、RSSI測定値)および1つ以上の現在の推定状態(例えば、RSSI予測データ)を用いて、システムの将来の状態および/または予測(例えば、将来)値を予測する。将来の状態が観測されると、カルマンフィルタは、予測された将来の状態と観測された将来の状態との間の誤差を決定し、モデルを更新する。次の反復において、カルマンフィルタは、最新のモデルを用いて、システムの別の将来の状態を予測する。このプロセスは、繰り返される。
【0058】
動作中、ステップ902において、RSSI予測推定ユニット802は、第1のネットワーク、例えば第1のWiFiネットワーク104に対応するRSSI予測データ(例えば、推定状態)を決定する。例えば、RSSI予測推定部802は、RSSIの速度を示す線形モデル、例えば、(N+M)秒時間のRSSI=N秒時間のRSSI+RSSI速度×Mを決定する。Nは、変数、例えば時間を表す。Mは、モデルを更新する期間を示す(例えば、Mが3秒である場合、RSSI変化率ロジック212は、3秒ごとにモデルを更新する)。
【0059】
ステップ904において、RSSI予測推定ユニット802は、新たな(例えば、現在の)RSSI情報404、例えば第1のWiFi AP106に対応する現在のRSSI値または最新のRSSI値および/または状態を取得する。RSSI予測推定ユニット802は、情報808(例えば、線形モデルおよび/または現在のRSSI情報404)を誤差分析ユニット806に提供する。
【0060】
ステップ906において、誤差分析ユニット806は、新たなRSSI情報およびRSSI予測データ(例えば、過去の推定状態、例えばステップ902で説明した線形モデル)に基づいて、1つ以上の予測誤差を決定する。すなわち、誤差分析ユニット806は、RSSI予測データ、過去のRSSI予測値、および/または現在のRSSI情報を用いて、予測状態と実際の状態との間の誤差を決定する。いくつかの例において、誤差分析ユニット806は、新たなRSSI情報から得られた現在のRSSI値と過去のRSSI予測値との比較に基づいて、誤差を決定する。
【0061】
ステップ908において、誤差分析ユニット806は、カルマンフィルタを用いて、ステップ906で決定した予測誤差に基づいて、RSSI予測データを更新する。更新済みRSSI予測データ(例えば、更新済み線形モデル)は、予測された第1のWiFi AP106の1つ以上の将来の状態を示す。例えば、誤差分析ユニット806は、予測状態と実際の状態との間の誤差を決定することによって、第1のWiFi AP106の最新のRSSI予測データを決定する。誤差分析ユニット806は、RSSI予測データをRSSI速度を用いた予測ユニット804に提供する。
【0062】
ステップ910において、RSSI速度を用いた予測ユニット804は、カルマンフィルタを用いて、更新済みRSSI予測データに基づいて、将来のRSSI値を決定する。例えば、ユニット804は、更新済みRSSI予測データ(例えば、更新済み線形モデル)を用いて、(N+P)秒時間のRSSI値(例えば、将来の時間N+Pにおける将来のRSSI値)を予測(または決定)する。
【0063】
ステップ912において、RSSI速度を用いた予測ユニット804は、第1のネットワークへの接続が品質閾値を超えているか否かを判断する。例えば、ユニット804は、ステップ910から得られた将来のRSSI値をRSSI閾値(例えば、所定の閾値および/または予めプログラムされた閾値)と比較する。将来のRSSI値がRSSI閾値を超える(例えば、上または下)場合、ユニット804は、P秒(例えば、15秒)以内に接続が品質閾値を超えると予測(または決定)する。将来のRSSI値がRSSI閾値を超えない場合、ユニット804は、P秒以内に接続が品質閾値を超えないと予測する。接続が品質閾値を超えると予測した場合、ユニット804は、情報408(例えば、接続は品質閾値を超える)をロジック214に提供する。ステップ914において、ロジック214は、上述したように、ステップ910から得られた予測に基づいて、第1のネットワークから第2のネットワークに切り換える。
【0064】
ユニット804が第1のネットワークへの接続が品質閾値を超えないと予測した場合、方法900は、ステップ904に戻る。その後、プロセスは、ロジック212が接続が品質閾値を超えると予測するまで、ステップ904から連続的に繰り返される(例えば、ロジック212は、第1のWiFi AP106から新たなRSSI情報を取得し、新たなRSSI情報および現在のRSSI予測データに基づいて予測誤差を決定し、現在のRSSI予測データを更新し、更新済みRSSI予測データを用いて新たな将来のRSSI値を決定し、将来のRSSI値が品質閾値を超えるか否かを判断する)。
【0065】
いくつかの例において、ステップ902において、RSSI予測推定ユニット802は、(例えば、加速率を用いて)二次モデル、例えば、(N+M)秒時間のRSSI=N秒時間のRSSI+RSSI速度×M+RSSI加速率×(1/2)M2を示すRSSIデータを決定する。ロジック212は、二次モデルを用いて、予測し、更新し、第1のネットワークから第2のネットワークに積極的な切り換える。
【0066】
いくつかの変形例において、ロジック212は、予測誤差に基づいて、時間Pを調整する(例えば、変更する)。例えば、(N+P)秒時間に予測されたRSSIと(N+P)秒時間に実際に観測されたRSSIとの差(例えば、相違)が閾値よりも大きい場合、ロジック212は、Pの値を減らす(例えば、15秒から10秒に減らす)。その後、方法900の次の反復において、新たなP値を用いて、第1のネットワークが品質閾値を超えるか否かを予測する。いくつかの例において、カルマンフィルタの代わりに、ロジック212は、異なる方法および/または他のアルゴリズム、例えば変化平均値を用いて、第1のネットワークが品質閾値を超えるか否かを予測する。
【0067】
図10および11は、RSSI観測値、RSSI予測データ、および(例えば、RSSI観測値およびカルマンフィルタを用いて決定された)RSSI予測データの速度を示すグラフである。例えば、グラフ1005は、一定の期間におけるRSSI観測値1010を示す。例えば、モバイル装置102および第1のWiFi AP106は、第1の時間(例えば、14:10)では互いに一定の距離で離れている。その後、モバイル装置102は、第1のWiFi AP106から離れるように移動され、また戻される。しかしながら、RSSIにノイズがあるため、カルマンフィルタなどのフィルタを用いて、ノイズを低減し、第2のネットワークに積極的に切り換える。グラフ1015は、RSSI観測値1010およびRSSI予測データ1020を示す。
【0068】
図11を参照して、グラフ1105は、RSSI予測データ1110の速度(例えば、微分)を示す。いくつかの例において、RSSI速度を用いた予測ユニット804は、RSSI予測データ1110の速度を用いて、第1のネットワークへの接続が品質閾値を超えるか否か、および接続が品質閾値を超える時間(例えば、時間P)を予測する。追加的におよび/または代替的に、
図4および
図5を参照して上述したように、ロジック212および/または214は、RSSI予測データ1110の速度を用いて、スコア(例えば、静止、遊走、歩き、疾走)および接続品質を決定し、第1のネットワークへの接続が品質閾値を超えることを予測する。
【0069】
いくつかの例において、第1のネットワークから第2のネットワークに切り換える前に(例えば、ステップ508、710および/または910の前に)、ロジック214は、さらなるチェック(例えば、予測信頼性向上チェック)を実行することによって、第1のネットワークと第2のネットワークとの間の反転を回避する。例えば、ロジック214は、第1のWiFi AP106の現在のRSSIを加入閾値RSSI加入と比較する。RSSI加入は、ネットワークに接続するか否かを示す閾値である。例えば、モバイル装置102は、セルラネットワーク112を介して、ウェブサーバ110に接続する。モバイル装置102は、第1のWiFi AP106のRSSIがRSSI加入を超えるという判断に基づいて、第1のWiFi AP106に切り換える。さらに、第1のネットワークから第2のネットワークに切り換える前に、ロジック212は、第1のWiFi AP106の現在のRSSIが第1のWiFi AP106のRSSI加入を超えるか否かを決定するさらなるチェックを実行する。第1のWiFi AP106の現在のRSSI値がRSSI加入値を超える場合、ロジック214は、第1のWiFiネットワーク104との接続を維持する。
【0070】
いくつかの例において、ロジック214は、さらなるチェックを実行して、モバイル装置102と第1のWiFi AP106との間の成功した送信および/または受信の数をチェックする。最近成功した送信および受信の数が閾値を超えると判断した場合、ロジック214は、第2のネットワークに切り換えない。
【0071】
いくつかの変形例において、ロジック212は、RSSI
離脱を調整する。RSSI
離脱は、インターネット接続が悪いため、モバイル装置102が第2のネットワークに加入するために第1のネットワークから離脱する時間を示すRSSI閾値である。例えば、モバイル装置102は、まず、RSSI
離脱をRSSI
加入と同様の値に設定する。その後、
図9のステップ906を参照して、ロジック212は、RSSI予測値(例えば、(N+P)秒時間のRSSI)がRSSI
離脱に近づき且つ伝送成功率(例えば、成功した送信の数/送信の総数)が閾値よりも大きい場合に、RSSI閾値(例えば、RSSI
離脱)を減らす。追加的におよび/または代替的に、ロジック212は、RSSI
離脱を、RSSI
離脱およびRSSI
チェックのうちの最小値に設定することによって、RSSI
離脱を減らす。
【0072】
モバイル装置102は、上記の方法および構成要素を用いて、第1の接続とモバイル装置102との間のデータが失速する前に、第2のネットワークに積極的に切り換える。したがって、モバイル装置102は、第2のネットワークに積極的に切り換えることによって、ネットワーク接続の不良および/または中断を防止することができる。さらに、モバイル装置102は、上述した方法のうちの1つ以上を実行することによって、余分なネットワーク負荷(例えば、第1のWiFi AP106の負荷)を回避する。追加的におよび/または代替的に、モバイル装置102は、上述した方法のうちの1つ以上を実行することによって、新たなネットワークへの切り換えが早すぎることを回避する。新たなネットワークへの切り換えは、ネットワーク間のスラッシングを引き起こす。また、切り換えは、アプリケーションデータ(例えば、ストリームベースのプロトコル)を受け取るためのエンドツーエンド接続を再確立する必要があるため、高価である。
【0073】
様々な実施形態において、適切な実行可能な命令は、非一時的コンピュータ可読記憶媒体に記憶されてもよい。実行可能な命令は、1つ以上のプロセッサに本明細書に記載の動作を実行させるように、1つ以上のプロセッサによって実行可能である。再び
図2を参照して、いくつかの例において、メモリ204は、モバイル装置102によって実行される実行可能な命令を記憶する。メモリ204は、RAM、不揮発性メモリ(例えば、ROM、フラッシュメモリ、EPROM、EEPROM)、ディスク記憶装置、または実行可能な命令を記憶できる他の適切なメモリである。機能の一部または全部は、例えば、ドライバ実装を含むソフトウェア実装、ファームウェア実装、ハードウェア実装、または上述した例示的な実装の任意の適切な組み合わせなど、任意の適切な方法で実装されてもよいが、これらに限定されない。
【0074】
本明細書に記載の方法およびシステムは、ユーザに関する個人情報を収集する場合または個人情報(例えば、ユーザデータ)を使用する場合、ユーザに関する情報をどのように収集するか、上述した1つ以上の特徴においてどのように使用するかを制御するための1つ以上の機会をユーザに与える。ユーザは、プログラムまたは特徴がユーザデータ(例えば、ユーザのソーシャルネットワーク、ユーザ特性(例えば、年齢、性別および職業)、社会行為または活動、ユーザの嗜好、ユーザによって作成または提出されたコンテンツ、ユーザの現在の地理位置に関する情報)を収集するか否かを制御することができる。ユーザは、プログラムまたは特徴が、プログラムまたは特徴に関連する特定のユーザまたは他のユーザに関するユーザ情報を収集するか否かを制御することができる。個人情報が収集された各ユーザには、そのユーザに関連する情報の収集を制御するための1つ以上のオプション、または情報を収集するかおよびどの部分の情報を収集するかに関する許可または認可を提供するための1つ以上のオプションが与えられる。例えば、通信ネットワークを介して、1つ以上の制御オプションをユーザに提供することができる。さらに、特定のデータは、記憶または使用される前に、個人識別情報を取り除くように1つ以上の方法で処理されてもよい。例えば、ユーザの身元は、ユーザの個人識別情報を特定できないように処理されてもよく、またはユーザの地理位置は、ユーザの位置を特定できないようにより大きな領域に一般化されてもよい。
【0075】
前述した詳細な説明において、明細書の一部を構成し且つ本発明を実施することができる特定の実施形態を例示する添付の図面を参照した。これらの実施形態は、当業者が本発明を実施できるように十分に詳細に説明されている。理解すべきことは、他の実施形態を利用することができ、本発明の精神または範囲から逸脱することなく、ロジック的、機械的、化学的および電気的な変更を行うことができることである。当業者が本発明を実施するのに必要しない詳細を回避するために、説明は、当業者にとって公知である特定の情報を省略する場合がある。さらに、当業者なら、本発明の教示を組み込む多くの他の様々な実施形態を容易に構築することができる。したがって、本発明は、本明細書に記載される特定の形態に限定されることを意図しておらず、むしろ、本発明の精神および範囲に合理的に含まれ得る代替物、修正物、および均等物を網羅することを意図している。したがって、前述した詳細な説明は、限定的な意味で解釈されるべきではなく、本発明の範囲は、添付の特許請求の範囲によって定義される。前述した実施形態および例示の詳細な説明は、例示および説明の目的のために提示されたものであり、限定的なものではない。したがって、本発明は、上記で開示され、特許請求の範囲で請求された基本的な原理の精神および範囲内にある任意のおよび全ての修正例、変形例、または均等物を包含する。