JP2014507850A - 動的無線ネットワーク検出システム、方法及び装置 - Google Patents

動的無線ネットワーク検出システム、方法及び装置 Download PDF

Info

Publication number
JP2014507850A
JP2014507850A JP2013548610A JP2013548610A JP2014507850A JP 2014507850 A JP2014507850 A JP 2014507850A JP 2013548610 A JP2013548610 A JP 2013548610A JP 2013548610 A JP2013548610 A JP 2013548610A JP 2014507850 A JP2014507850 A JP 2014507850A
Authority
JP
Japan
Prior art keywords
wireless network
mobile device
network
information
connection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013548610A
Other languages
English (en)
Inventor
ジョンカー ニールズ
ウィリアム レイク ジェームス
ハーマン モレール スティーブ
トッド ブルー エリック
ダニエル メンデルソン ジョナサン
ラジャ キショア
Original Assignee
ボインゴ ワイヤレス, インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ボインゴ ワイヤレス, インコーポレイテッド filed Critical ボインゴ ワイヤレス, インコーポレイテッド
Publication of JP2014507850A publication Critical patent/JP2014507850A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/08Access restriction or access information delivery, e.g. discovery data delivery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/16Discovering, processing access restriction or access information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/14Backbone network devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

無線ネットワークを自動的に検出し、接続し、使用するために、動的無線ネットワーク検出システム、装置及び方法が無線デバイスのユーザに提供される。無線ネットワークについて新規に獲得された知識は中央サーバと共有され、様々な無線デバイスから収集された無線ネットワークについての知識が統合され、この統合された全ての知識を取得して、ネットワークの状態についての有用な情報を提供するデータを統合するために個別のデータポイントを減らす。中央サーバは、無線デバイスで動作しているソフトウェアクライアントに、この情報を分配する。動的に学習された無線ネットワーク情報は、分散型インテリジェンスネットワークを介し、中央サーバを介して又は他の無線デバイスとの通信によって、1つの無線デバイスから他の無線デバイスに共有され、無線ネットワークについての群に基づく情報が、他の無線デバイスに提供される。デバイスは、更に、使用できない無線ネットワークを動的に検出することができる。
【選択図】図2

Description

〔関連出願の相互参照〕
本出願は、発明の名称「動的無線ネットワーク検出システム、方法及び装置」として2011年1月9日に出願した米国仮出願第61/431028号の優先権を主張するものであり、この仮出願の内容は、その全てが参照により本出願に組み込まれる。
本開示は、動的無線ネットワーク検出システム、方法及び装置、特に、無線ネットワークアクセス情報をモバイルデバイス間で同化させ、且つ共有する分散型自己学習ネットワークアクセスシステムに関する。
現在、ラップトップ、携帯電話、パーソナルメディアプレーヤ、カメラ、ブックリーダ等の多くのデバイスが、無線ネットワークを介してインターネットにアクセスする機能を備えている。異なる種類のネットワークにアクセスするために多くの異なる無線技術が組み込まれたデバイスの数も急速に増加している。今となっては、無線LANネットワークに加えて、1つ以上のセルラーデータネットワークにアクセスできることは一般的である。加えて、特に無線LANスペースにおいては、無料の又は無制限のインターネットアクセスを提供するネットワークがますます増えてきている。これらのネットワークのうちいくつかは、便宜的な方法で検出される。すなわち、特定のネットワークに接続して所望のインターネットサービスの実行を試行するまで、デバイスはそのネットワークにより提供される機能を認識しない。
無線LANネットワーク、例えば、家庭、レストラン、コーヒーショップ、クイックサービスレストラン、ホテル、空港等に設置されるWi−Fiネットワークの大部分において、使用可能なオープンネットワークを検出するために、一般的に、ユーザは多かれ少なかれランダムに次々とネットワークを取得し、テストを行う必要がある。これらのネットワークのうちの1つが検出され、接続されると、ユーザ又はユーザに代わりユーザデバイスに常駐する1つのクライアントソフトウェアは、一般的に、インターネット接続を成功させるために、後続のネットワークの認証という、追加のステップを行う必要がある。このプロセスは、エラーが発生し易く、ユーザにとっては面倒であり、ネットワークのユーザに使用しないように通知する方法を提供しない。このプロセスは、1人のユーザがネットワーク情報を入手し、この情報を、空間及び時間における所定の地点で近接する他のユーザと又は協調分散型のネットワークを介した他のユーザと動的に共有する方法を提供することもない。
1つ以上の実施形態において、ユーザ及びユーザのコンピュータ又はモバイルデバイスがいくつかの例において事前知識を有さない無料のオープン無線ネットワークを、無線デバイスのユーザが検出し、接続し、使用するのに、より優れた、より自動化された方法を提供するシステム、装置及び方法が提供される。無線ネットワークについて新規に取得した情報は中央サーバと共有され、続いて中央サーバは、様々な無線デバイスから収集された無線ネットワークについての情報を統合し(aggregate)、この統合された全ての知識を取得し、個別のデータポイントを減らして、ネットワークの状態について有用な情報を提供するデータを統合する。そして、中央サーバは、他の無線デバイスで動作しているソフトウェアクライアントにこの情報を分配する。
加えて、1つ以上の実施形態において、本システム、装置及び方法は、1人のユーザ又は1つの無線デバイスから動的に学習したネットワーク情報を、分散型インテリジェンスネットワークを介して他の無線デバイスと共有する。1つの無線デバイスは、新たに使用可能なネットワークを検出することができ、この情報を他のデバイスと共有することができる。各デバイスがネットワーク情報を収集する多数の無線デバイスを使用することを通して、中央インフラストラクチャがこの知識を統合して、抽出する(distill)ことができ、この抽出された群ベースの情報を他のデバイスに提供する。1つ以上の実施形態において、システム、装置及び方法は、更に、例えば、アクセスポイントの又はアクセスポイントを越えたネットワークインフラストラクチャのオペレータの要求に応じてユーザが使用しない無線ネットワークを動的に検出するための包括的システムをデバイスに提供する。
本開示の1つ以上の実施形態における、自動的に様々な種類のモバイルネットワークを検出し、アクセスするモバイルデバイスのブロック図である。 本開示の1つ以上の実施形態における、データを統合及び分配する、エンドユーザデバイスと集中型システムの要素との間の相互作用のブロック図である。 本開示の1つ以上の実施形態における、二次ローカル通信リンクを使用してローカルに情報を共有する様々なモバイルデバイスを示すブロック図である。 本開示の1つ以上の実施形態における、多くのモバイルデバイスが検出したネットワークについての二次通信リンクを使用して共有する情報を示すブロック図である。 本開示の1つ以上の実施形態における、モバイルデバイスが検出した接続情報を共有するときに、位置のタグ付け及び使用可能な位置のデータを活用する方法を示すブロック図である。 本開示の1つ以上の実施形態における、二次ローカルエリア無線接続を直接使用してモバイルデバイス間で検出された接続情報を共有することによって、他の種類の接続情報の共有を提供するのに使用されうる様々なシステムコンポーネントの概略ブロック図である。 本開示の1つ以上の実施形態における、二次無線通信ネットワークを通じてネットワーク通信情報を送信するネットワークアクセスポイントを備えることにより、二次無線通信ネットワークを使用してネットワーク接続情報を互いに共有する様々なシステムコンポーネントの概略ブロック図である。 無線ネットワークのオペレータが、モバイルデバイスのユーザが自動的に無線ネットワークにアクセスするのを許可すべきでないか否かを決定することができる、本開示の1つ以上の実施形態における第1の除外方法の概略ブロック図である。 本開示の1つ以上の実施形態における、図8の動作に係るフローチャートである。 モバイルデバイスのユーザが無線ネットワークに自動的にアクセスすることを許可すべきか否かを、無線ネットワークのオペレータが決定することができる、本開示の1つ以上の実施形態における第2の除外方法の概略ブロック図である。 本開示の1つ以上の実施形態における、図10の動作に係るフローチャートである。 ローカルネットワーク上又はローカルネットワークの任意の上流ネットワーク上でドメイン名サーバを制御する団体がネットワークへのアクセスを制御できる、本開示の1つ以上の実施形態における第3の除外方法の概略ブロック図である。 本開示の1つ以上の実施形態における、図12の動作に係るフローチャートである。 ネットワーク除外リストが中央サーバ上に保持される、本開示の1つ以上の実施形態における第4の除外方法の概略ブロック図である。 無線ネットワーク上のアクセスコントローラのオペレータが、このネットワークに接続すべきでなく、このネットワークに接続するユーザに対して示される強制的なコンテンツを迂回すべきことをモバイルデバイスに示すことができる、本開示の1つ以上の実施形態における第5の除外方法の概略ブロック図である。 接続情報の共有及びネットワーク除外のための様々な方法を単一の集合プロセスに結合した方法を示す、本開示の1つ以上の実施形態におけるフローチャートである。
以下の記載において、本発明は、無線ネットワークの動的な検出の1つ以上の実施形態に関して記載される。しかし、本発明は、いかなる特定の適用例に限定されるものでもなく、以下の実施例の記載により限定されるものでもない。開示される実施形態に対する様々な変更は当業者にとって明らかであり、本明細書で規定される一般的な原理は他の実施形態及び適用例に対しても、発明の要旨及び範囲を逸脱することなく適用されうる。従って、以下の実施形態の記載は、説明の目的のためであって、制限する目的ではない。
本明細書において言及される「1つの実施形態」、「他の実施形態」、「1つ以上の実施形態」又は同様の記載は、実施形態に関連して記載される特定の機能、構造又は特性が、開示された少なくとも1つの実施形態に含まれることを意味する。例えば、本明細書の様々な場所に記載される「1つの実施形態において」という表現があっても、必ずしも全てが同一の実施形態を指しているものではなく、また、他の実施形態と互いに排他的な個別の又は代替可能な実施形態でもない。さらに、いくつかの実施形態に表れるが他の実施形態に表れない様々な特徴が記載されている。同様に、いくつかの実施形態に必要であるが他の実施形態には必要でない様々な要件が記載されている。
本明細書において言及される「モバイルデバイス」は、例えばラップトップコンピュータ、携帯電話、スマートフォン又はこれに類するもの(例えばApple社iPhone(登録商標)、iPad(登録商標)又はiPod touch(登録商標)、Google社のAndroid(登録商標)、BlackBerry(登録商標)、他の種類のPDA又はスマートフォン)、パーソナルメディアプレーヤ、カメラ、ブックリーダ又は手で持って操作ができるその他のコンピュータデバイス等、無線通信ネットワークに接続されるあらゆるモバイル技術コンピュータデバイスを対象にすることを意図する。さらに、本明細書において言及される「無線ネットワーク」又は「ネットワーク」は、例えば、以下に限定されるものではないが、無線LAN、無線WAN、無線PAN、Wi−Fi(例えば、IEEE 802.11)、Bluetooth(登録商標)又はこれらに類するもの等、あらゆる種類の無線ネットワークを対象にすることを意図する。「無線ネットワーク」又は「ネットワーク」という用語は、例えばGSM、CDMA、WCDMA、LTE等、電話通信オペレータにより提供されるセルラー無線通信プロトコルを更に含む。
1つ以上の実施形態において、ネットワーク情報を動的に学習し、1人のユーザ又は無線デバイスからのネットワーク情報を他の無線デバイスと共有するシステム及び方法は、分散型インテリジェンスネットワークを介して提供される。ここで図1を参照すると、複数のネットワークが使用可能な環境内に存在するモバイルデバイス100が示されている。モバイルデバイス100は、これらの任意のネットワークを検出できるネットワークインタフェースを備え、従って4つのネットワークのうち任意のネットワークと接続できる。あるネットワークと接続する場合、モバイルデバイス100はインターネットに接続することができる一方、このインターネット接続は、他のネットワークでは使用できない。
モバイルデバイス100は、アクセスクライアントソフトウェア(例えば、モバイルデバイス100にインストールされ、モバイルデバイス100で動作しているアクセスモジュール)を備え、このアクセスクライアントソフトウェアは、例えば、モバイルデバイス100内の1つ以上のネットワークインタフェースを使用することによって、モバイルデバイス100の周囲の無線ネットワークの使用可能性を検出することができる。この種のネットワーク検出は、例えば、802.11タイプのWi−Fiネットワーク等の潜在的に無料のインターネットアクセスを提供することができるネットワークや、無料ネットワークアクセスを提供できる他の種類の無線ネットワークで行われる。現在、Wi−Fiを含む多くの場合、ネットワークの特性及びオープンに使用できる可能性の指示はない。換言すれば、モバイルデバイス100のアクセスモジュールソフトウェアクライアントは、ネットワークアクセスポイント101、111、121又は131から受信したビーコン信号の情報を確認するだけでは、対象のアクセスポイントに接続した場合に、無料でオープンなインターネットアクセスを取得できるか否かを判断できない。
モバイルデバイス100のソフトウェアクライアントは、ソフトウェアクライアントが以前アクセスしていたネットワークについての詳細な情報を格納するデータベース106を含む。このデータベース106は、ソフトウェアクライアントによって使用され、以前行われたネットワーク接続の試行においてどのネットワークの使用が成功したか又は失敗したかを決定するために役立てられる。図1に示されるシナリオでは、如何なるネットワークに関してもアクセスポイント101、111、121又は131により送信されたエントリは、データベース内に存在しないものとする(すなわち、モバイルデバイス100は、これらのネットワークにこれまで遭遇していない)。
これらのネットワークについての事前知識がないとすると、モバイルデバイス100のソフトウェアクライアントは、各ネットワークの特性を、試行錯誤によって、すなわち、各ネットワークと通信し、接続を試行することによってのみ決定することができる。1つ以上の実施形態において、モバイルデバイス100のソフトウェアクライアントは、各ネットワークの特性を決定するために、リモート(遠隔)の接続テストサーバ105と通信を試行する。
最初の試行において、モバイルデバイス100は、アクセスポイント131と接続しようとする。アクセスポイント131との接続は、本例では暗号化を使用しないオープンネットワーク接続であり、ネットワークに接続するために事前知識又は事前情報を必要としない。デバイス100は、新たに確立されたネットワークリンクを介してTCP/IP接続を確立し、インターネット104に接続されている接続テストサーバ105とHTTP接続を確立することを試行する。この接続を確立する試行において、アクセスコントローラ132は要求をインターセプトし、モバイルデバイス100で動作しているソフトウェアクライアントにリダイレクト応答を送る。このリダイレク応答の結果は、モバイルデバイス100で動作しているソフトウェアクライアントによりインターセプトされ、その後ソフトウェアクライアントはアクセスコントローラ132とネゴシエートする。このカンバセーション(やり取り)は、次の図面において、より詳細に記載されている。カンバセーションが成功すると、アクセスコントローラ132はゲートウェイを開き、モバイルデバイス100は、接続テストサーバ105と接続するために別の試行を行うことができる。しかしながら、本例においては、ルータ133がインターネット104と接続されていないため、この接続試行は、接続テストサーバ105に到達できない。このことから、モバイルデバイス100のソフトウェアクライアントは、この時点でアクセスポイント131を介したインターネット接続を使用できないことを認識する。モバイルデバイス100のソフトウェアクライアントは、アクセスポイント131及びそのネットワークに関連するネットワーク失敗についての新規の学習知識を、データベース106に格納する。この知識は、モバイルデバイス100のソフトウェアクライアントによりローカルに格納される。データベース106に格納された知識は、アクセスポイント131に関するネットワーク名又はESSIDと、アクセスポイント131に関するエアインタフェースのメディアアクセス制御(MAC)アドレス又はBSSIDと、接続試行の日付及び時間と、可能な場合には接続試行時におけるモバイルデバイス100の経度及び緯度の情報等の具体的な位置情報とを含み、更にモバイルデバイス100で動作しているソフトウェアクライアントとアクセスコントローラ132との間でのネゴシエートプロセスにおけるネゴシエーションでの具体的な使用手順、タイミング、及びやりとりされたトラフィックに関する具体的な情報も含む。接続が成功した場合には、モバイルデバイス100で動作しているソフトウェアクライアントと接続テストサーバ105との間の接続における速度及び待ち時間の情報も格納される。
続く試行において、モバイルデバイス100は、アクセスポイント121と接続することができる。アクセスポイント121は、本例では暗号化を使用しないオープンネットワーク接続であり、アクセスポイント121に接続するために事前知識を必要としない。上述の記載と同様の方法で、TCP/IP接続が確立され、モバイルデバイス100のソフトウェアクライアントは、接続テストサーバ105にHTTP接続を確立することを試行する。この接続は、アクセスコントローラ122のゲートウェイによりインターセプトされる。モバイルデバイス100のソフトウェアクライアントは、アクセスコントローラ122とネゴシエートを試行するが、事前知識がない場合、このネゴシエーションは失敗する。この種のシナリオは、例えば、アクセスコントローラが、クライアントに知られていないアクセスコード又はパスワードをユーザが入力しなければならないウェブページを提供しているような場合である。クライアントは、アクセスポイント121を介してインターネットに接続できないことを認識し、この接続の失敗も、モバイルデバイス100のソフトウェアクライアントにより、前述の補助情報とともに、ローカルデータベース106に格納される。本例では、HTTP試行は、ルータ123に到達さえしない。モバイルデバイス上のソフトウェアクライアントは、次のアクセスポイントに移行する。
第3の試行において、モバイルデバイス100は、アクセスポイント111と接続する。本例では、アクセスポイント111も、暗号化を使用しないオープンネットワークであり、従って如何なる事前知識を必要としない。TCP/IP接続が確立されると、モバイルデバイス100のソフトウェアクライアントは、HTTPを使用してインターネット104を介して接続テストサーバ105と接続することを試行する。この接続試行は、アクセスコントローラ112によりインターセプトされ、アクセスコントローラ112からモバイルデバイス100で動作しているソフトウェアクライアントにリダイレクト要求が返送される。以下の説明で記載されるように、ソフトウェアクライアントは、アクセスコントローラ112とネゴシエートするように構成され、その後アクセスコントローラ112は、ルータ113への接続を許可する。この接続を介して、モバイルデバイス100のソフトウェアクライアントは、インターネット104を介して接続テストサーバ105に接続することができる。このとき、ソフトウェアクライアントは、アクセスポイント111を介してインターネット104(及び接続テストサーバ105)に実際に接続できることを認識する。モバイルデバイス100のソフトウェアクライアントは、前述の具体的な補助情報とともに、この時点でインターネット接続に成功できたことを示すアクセスポイント111の情報で、ローカルデータベース106を更新する。
モバイルデバイス100のソフトウェアクライアントが様々なアクセスポイントに接続する順序は、変えることができる。上述の記載では、モバイルデバイス100のソフトウェアクライアントは、3回目の接続試行で、アクセスポイント111を介してインターネットの接続性を得られることに気付く。しかし、他の順序として、モバイルデバイス100のソフトウェアクライアントは、最初にアクセスポイント101に接続することを試行することもできる。アクセスポイント101は、本例では暗号化を使用せず、アクセスポイント101を検出するのに事前知識を必要としない。もしアクセスポイント101が最初にテストされていれば、モバイルデバイス100のソフトウェアクライアントは、アクセスポイント101を介してTCP/IP接続を確立し、上述のように、接続テストサーバ105と接続することを試行し、インターネット104への接続が存在するか否かを決定することになる。ルータ103は、モバイルデバイス100のソフトウェアクライアントからのトラフィックをインターネット104に直接送り、接続テストサーバ105に送られることになる。そして、接続テストサーバ105は、モバイルデバイス100で動作しているソフトウェアクライアントに接続成功の応答を提供する。そして、モバイルデバイス100のソフトウェアクライアントは、前述の付加的な具体的情報とともにアクセスポイント101への接続成功に関する情報をローカルデータベース106に格納する。
ここで図2を参照すると、モバイルデバイス100のソフトウェアクライアントにより実行されるネットワークの検出及び信号の関連付けのプロセスを示すプロセスフローチャートが示されている。1つ以上の実施形態において、図2は、図1の説明で言及されたプロセスを更に説明するものである。モバイルデバイス100のソフトウェアクライアントは、動作200から開始する。動作201において、送信された(ブロードキャストされた)全ての使用可能な信号のリストが、モバイルデバイス100の領域内のネットワークアクセスポイントにより送信されたビーコンフレームを認識することにより取得される。必要に応じて、モバイルデバイス100は、それ自身のビーコンフレームを送信して、アクセスポイントを誘導し、存在を知らせる。モバイルデバイス100では使用可能な全ての無線通信を使用できる。従って、この技術は、802.11 Wi−Fiに関連する技術に有効であるが、デバイスがインターネット接続を取得するのに使用する任意の他の無線通信技術にも使用できる。動作201で取得された信号は、動作202において、ソフトウェアクライアントの設定と比較される。この設定は、中央サーバインフラストラクチャから事前に送信され、ソフトウェアクライアントに、中央サーバが知っているソフトウェアクライアントの使用可能なネットワークを伝える。この設定は、モバイルデバイス100にローカルに格納される。動作201でモバイルデバイス100により検出された信号のいずれかが、読み出された設定に現れるネットワークと一致する場合、動作203において、これらの信号をネットワーク接続のために使用することに関する決定をソフトウェアクライアントが行う上で必要とされる全ての情報を、上記信号に加えることにより、これらの信号は更新される。これらの情報は、例えば、順位、速度、業務ルール、品質情報、及び、信号に関連するネットワークに接続して、ログインすることに成功するために必要な任意の情報である。
全ての信号が設定に一致されるわけではなく、また、ローカルデータベース106に格納されている信号情報をソフトウェアクライアントが既に取得している可能性があるため、動作204は、動作201でモバイルデバイス100により検出されたリスト中の信号が、モバイルデバイス100のソフトウェアクライアントにより保持されて、ローカルデータベース106に存在するものであるか否かを確認する。
いずれかの信号が、ローカルデータベース106内に現れる信号と一致する場合、動作205において、これらの信号の有用性、使用技術、品質及び安定性に関するクライアントにローカルの情報で、リストが更新される。例えば、モバイルデバイス100のソフトウェアクライアントが、既に、図1で説明したような全てのネットワークについて全検出サイクルを終えたとする。このソフトウェアクライアントは、接続に成功した信号の識別子及びその品質情報又は他の補助情報を、ローカルデータベース106に追加する。動作201で検出された信号リストを、動作205において、先の検出サイクルから既に取得した情報で更新し、順位付けすることによって、モバイルデバイス100のソフトウェアクライアントは、最終的に更新された信号リストを使用することとなるため、このユーザ又はモバイルデバイス100のそれまでの経験に基づいて成功する可能性が最も高い信号が、接続リストの最初の試行として設定され、それによって、モバイルデバイス100にとって最も効率的な接続プロセスがもたらされる。
動作206において、信号リストは、設定の基準(動作203で取得した業務ルール及びコストの情報等)により、且つ動作205から取得された信号の過去の経験(成功、失敗、速度等)により、順位付け及び/又は順序付けされ、順序付けされたリストの第1の信号は、最も接続されやすい信号となる。動作206において、最もインターネットに接続されやすいこの信号を指し示すポインタが設定される。
動作207及びこれに続くプロセスのフローは、信号の接続及びそれに続くインターネットの接続が成功するまで、又は、使用可能な全ての信号が使用し尽くされるまで、リスト上の各信号について繰り返される。
モバイルデバイス100で動作しているソフトウェアクライアントは、動作207において、個々の信号を確認し、その信号が使用すべきでない信号としてタグ付けされているか否かを決定する。このタグは、(例えば動作203において、)中央サーバから既に受信された設定データと、(例えば動作205において、)ローカルデータベースデータに格納された情報と、モバイルデバイス100によって(検出信号と共に又は別個の信号として)受信された通信信号とのいずれかから付加されうる。信号が「使用不可能」として表示されている場合、フローは後述する動作217に進む。「使用不可能」タグを信号に表示することによる利点及び特徴は、本開示における他の実施形態において、本明細書中で更に説明する。
使用可能と表示されている信号(使用可能又は特定用途に使用可能の特定タグを有する信号、又は使用不可能を示すタグを単に含んでいない信号)は、動作208において更に評価される。動作208では、モバイルデバイス100のソフトウェアクライアントは、この信号が、中央設定を介して提供される任意の接続命令を有するか否かを確認する。これらの命令は、その信号に関連するネットワークに一般的に特有のものであり、最も高速で、ネットワークに接続及びログインするのに最も成功しやすい経路を概して提供するものである。
そのような設定データが存在する場合、モバイルデバイス100のソフトウェアクライアントは動作209に進み、動作209において、モバイルデバイス100のソフトウェアクライアントは、ネットワークとの接続を試行し、必要に応じて、設定において提供される設定パラメータに基づくログイン方法を使用して対象のネットワークにログインする。
ネットワーク用の設定データが存在しない場合、モバイルデバイス100で動作しているソフトウェアクライアントは、動作209ではなく、ネットワークへのアクセスの試行のために一般的な方法が使用される動作210に進む。この方法は、ネットワーク接続の確立を試行するための多くの既知の技術を使用することによって、インターネット104へ到達する。そのような技術のうちの1つは、図1で説明したような、ネットワークに単に接続し、インターネット接続が利用可能か否かを確認することから成るものである。他の1つの方法は、ユーザに代わって条件及びサービスに合意しようとするため及びユーザとの相互作用を要求することなくオープンなインターネット接続を取得しようとするために、ゲートウェイにより提供されるウェブコンテンツと動的に相互作用をすることによって、接続ゲートウェイを検索する。動作209では、ネットワーク及びそのログイン手順についての具体的な事前知識が要求され、また、特定のネットワークにおいてのみその方法が機能するのに対し、動作210は、クライアントが具体的な情報を有さない多くのネットワークで機能する一般的な方法である。このように、動作210で使用される手順は、中央インフラストラクチャから受け取る一部の設定情報と比較して、よりオープンで無料のネットワークへの接続を提供することができる。また、動作210は、モバイルデバイス100で動作しているソフトウェアクライアントがネットワーク接続を取得するために試行した正確な動作も記録する。これらの動作は、後述する次の接続試行をより成功しやすくするために用いられる。
動作209又は210の接続プロセスが成功すると、モバイルデバイス100で動作しているソフトウェアクライアントは、図1の一部で説明されている接続テストサーバ105と交信することによって、インターネット接続の有効性を確認する。接続テストが成功した場合、モバイルデバイス100で動作しているソフトウェアクライアントは、そのモバイルデバイスが「オンライン」状態であり、インターネットに接続されていることを認識する。加えて、このテストの一部として、読込みの速度及び待ち時間が測定され、これは、利用可能となった接続の品質の基準をユーザに提供することになる。このテストが成功しない場合、接続が使用できないという確定的な情報をモバイルデバイス100で動作しているソフトウェアクライアントに提供する。
1つ以上の実施形態において、接続テストが終了した後、動作212において、ソフトウェアクライアントは、最適な位置の情報を取得することができる。この情報は、モバイルデバイス100が備える全地球測位システム(GPS)技術を使用した結果として提供されうるものである。また、位置の情報は、モバイルデバイスのインターネットアドレスに基づいてオンラインで入手可能な情報から又はソフトウェアクライアントが使用可能な任意の他の手段から生じうるものでもある。入手可能な範囲として、接続テストに関する日付及び時間の情報も取得される。この情報は、前の接続プロセスの動作で収集された情報と組み合わされ、ローカルデータベース106に格納される結果、ネットワークと、位置と、日付と、時間と、使用接続方法と、接続が成功した場合にはネットワーク接続の品質とがエンドユーザの知識となる。
ソフトウェアクライアントがモバイルデバイス100で有する情報のローカルデータベース(例えば、データベース106)は、動作213で更新される。この動作は、モバイルデバイスのクライアントにより接続試行が行われるたびに毎回実行されるため、ソフトウェアクライアントが次に付加信号に関する接続を続けるにつれて、このデータベースには豊富な情報が蓄積される。この接続情報は、接続試行の結果が成功であるか否かにかかわらず格納され、従って、他の信号が代わりに使用できるときに、接続が成功しない信号を繰返し使用することがないため、クライアントは、時間とともに品質を確実に向上させることができる。
動作214において、モバイルデバイス100で動作しているソフトウェアクライアントは、動作211で実行される接続テストの結果を考慮して、接続の確立が成功したか否かを決定する。成功の基準は様々に設定することができる。例えば、成功の基準は、「インターネットの接続性が実際に存在するか」という簡単なものとすることができる一方、インターネット接続の品質に拡大することもできる。例えば、接続の待ち時間、ドロップしたパケットの量、帯域幅又はスループット、及び他のサービスパラメータの品質が、所定の信号の適合性を決定するのに考慮され得る。
モバイルデバイス100のソフトウェアクライアントは、動作214において接続の確立が成功したと決定した場合、動作215において、前回の更新情報を送信した後に作成された任意のローカルデータベースの更新情報を中央サーバに送信する。これらの更新情報は、以前の動作で収集された全ての情報を含んでおり、信号情報と、順位と、接続ステップと、成功と、失敗と、接続テストの情報と、日付と、時間と、他の可視ネットワーク及びアクセスポイントと、品質情報とを含んでいる。これは、本明細書に記載される中央サーバインフラストラクチャに、ネットワークに関する実際のエンドユーザの視点及びネットワークがどの程度機能するかを提供する。情報のデータベースは、本明細書に記載される様々なプロセスの動作間で維持されることに留意されたい。換言すれば、試行によって接続が成功しなかったとしても、モバイルデバイス100で動作しているソフトウェアクライアントが、データベースの内容又は変更を中央サーバにアップロードすることは、(これらはインターネット接続の成功が必要であるため)潜在的に不可能にはなるが、ソフトウェアクライアントは、ローカルデータベースにこの情報のコピーを保有することになる。次の試行で接続が成功すると、全ての情報が中央サーバに送られる。この方法は、最も広範な一連の使用可能なデータを提供する。このデータは、中央サーバにより次々に処理されて設定情報に変更され、この設定情報は、多くのモバイルデバイスで動作している多くのソフトウェアクライアントに送り返され、分散型の自己学習システムが実現される。本方法におけるこの態様は、本明細書中で、他の図を参照して、より詳細に説明される。
ローカルデータベースの更新情報が中央サーバに送られると、動作216において、モバイルデバイス100のソフトウェアクライアントは、中央サーバからの任意の新規情報で設定を更新する。この設定データは、ソフトウェアクライアントが使用できる既知のネットワークの新規情報を含むことができる。この新規情報は、このソフトウェアクライアント又は他のソフトウェアクライアントから中央サーバに送信されたデータベース更新情報から生じるものである。ソフトウェアクライアントが接続されて、完全に更新されると、動作220において、接続テスト及び更新プロセスは終了する。
動作214において接続が成功していないと判断された場合、又は、動作207において信号が使用するのに適していないと判断された場合、モバイルデバイス100で動作しているソフトウェアクライアントは、動作217に進み、他の信号について検討すべきであるか否かを決定する。他の信号が動作206におけるリスト中に存在する場合、ポインタはリスト中の次の信号を示すように更新され、プロセスは次の信号における動作207に進む。モバイルデバイス100で動作しているソフトウェアクライアントの現在の位置において検討すべき他の信号が存在しない場合、動作218でローカルデータベースは、現在の位置の情報と、可能な場合には、この位置では使用可能な信号が存在せず失敗に終わるという情報とで更新される。この情報は、次の接続試行においてモバイルデバイス100で動作しているソフトウェアクライアントによって使用され、中央サーバへの接続が存在するときには、(以後の図で説明されるように)この情報は中央サーバに送られ、多くのクライアントからのこの情報は、有用性データ及び設定データへと処理される。
次に図3を参照すると、システム全体の構成要素の概略的なブロック図が示されており、モバイルデバイスがネットワークに接続されている間、モバイルデバイスで動作しているソフトウェアクライアントによって接続の成功及び失敗のデータがどのように収集され、全てのクライアントに有用な情報を抽出するようにこのデータがどのように処理され、更にモバイルデバイスで動作しているソフトウェアクライアントにこの情報がどのように返送されるかが示されている。
クラウド300(斜線の影付き部分)は、一定の期間にモバイルデバイス301のソフトウェアクライアントによりアクセスされた一組のネットワークを取り囲んでいる。これらのネットワークは、一定の期間にアクセスされたものであり、すなわち、全てのネットワークが必ずしも一度にアクセスされたわけではない。図1及び図2において説明されるプロセスにより、モバイルデバイス301で動作しているクライアントソフトウェアは、接続の方法、有用性、位置、及びこれら全てのネットワークの品質についての情報を収集している。この情報は、モバイルデバイス301で動作しているソフトウェアクライアントにより、ローカルデータベース302にローカルに格納される。
同様に、クラウド310(縦線の影付き部分)は、同様の方法で、モバイルデバイス311で動作しているソフトウェアクライアントによりアクセスされ、接続試行が実行され、その結果がローカルデータベース312に格納される一組のネットワークを示している。
クラウド330(横線の影付き部分)は、同様の方法で、モバイルデバイス331で動作しているソフトウェアクライアントによりアクセスされ、接続試行が実行され、その結果がローカルデータベース332に格納される一組のネットワークを示している。クラウド310と330とが重なっているクロスハッチ領域は、モバイルデバイス311及び331の両方で動作しているソフトウェアクライアントによりアクセスされたアクセスポイントを有することに留意されたい。各モバイルデバイスは、これらのネットワークへのアクセスによって、それぞれ固有のデータを含んでいる。各モバイルデバイスでのネットワークへの接続の成功は異なるため、各モバイルデバイスが収集したデータは異なりうる。
クラウド320(影なし)は、同様の方法で、モバイルデバイス321で動作しているソフトウェアクライアントによりアクセスされ、接続試行が実行され、その結果がローカルデータベース322に格納される一組のネットワークを示している。データベース322に収集されるネットワーク情報は、モバイルデバイス311及び331に関連するデータベース312及び332にもデータが存在するいくつかのアクセスポイントに関連するが、各組のネットワークデータは、所定の位置及び所定の時間における所定のモバイルデバイスで動作する所定のソフトウェアクライアントの固有の視点から検討されることに留意されたい。
本例の目的のため、クラウド300、310、320及び330で示されるネットワークは、中央インフラストラクチャ(例えば、設定サーバ344)から受信した設定データにおいてソフトウェアクライアントに既に開示されているネットワークでないとする。図1及び図2において説明された方法を使用して、各ネットワークは自動的に検出及びテストされ、モバイルデバイス301、311、321及び331で動作しているソフトウェアクライアントは、それぞれのデータベース302、312、322及び332内にこの新規に検出された知識をローカルに格納する。
データのこれら固有の点は全て、組み合わされて、異なる無線ネットワークの機能に関する集合的な判断を提供することができる。このデータは、組み合わされて、ネットワークの機能性に関する統合的な判断を提供することができ、これにより、モバイルデバイスのソフトウェアクライアントは、より効率的にモバイルネットワークを使用することができるようになる。
図1及び2において説明したようにインターネット接続の確立が成功すると、収集サーバ340は、モバイルデバイス301、311、321及び331のローカルデータベース302、312、322及び332に格納された情報から、更新情報のコピーを収集する。図2において説明されるように、各モバイルデバイスで動作しているソフトウェアクライアントは、これらローカルデータベースの更新情報のコピーを、破線353で表現されているように収集サーバ340に送信する。収集サーバ340は、全てのソフトウェアクライアントから受信して組み合わされた情報を、データベース341に格納する。
収集サーバ340と通信できるように接続された統合サーバ342は、業務ルールに従って収集サーバ340によって収集されたデータを処理し、統合されたデータは、その後データベース343に格納される。統合プロセスは、図4においてより詳細に説明する。
統合サーバ342と通信できるように接続された設定サーバ344は、統合されたデータを取得し、業務ルールを適用して、この統合されたデータを他の設定データとともにデータベース345に格納する。
インターネット接続が成功すると、モバイルデバイス301、311、321及び331で動作しているソフトウェアクライアントは、点線354で表現されているように、新規な設定データを設定サーバ344から読み出す。もしくは、新規な設定情報は、設定サーバ344から、モバイルデバイス301、311、321及び331で動作している様々なソフトウェアクライアントに送信される。このデータは、他のクライアントにより収集された、エンドユーザにとって有益なネットワークに関する情報を反映している。
システム全体により実行される動的ネットワークの検出及び状態更新手順の全体を更に説明するために、図3のネットワーク350及び351に関するプロセス全体を完了する例を説明する。モバイルデバイス311、321及び331のそれぞれは、これら2つのネットワーク350及び351にアクセスする。3つのモバイルデバイス311、321及び331は全て、ネットワーク350は使用不可能であり、ネットワーク351は使用可能であると報告するとする。モバイルデバイス311、321及び331の各ソフトウェアクライアントは、この情報を個別に収集サーバ340に送信し、収集サーバ340はこの情報をデータベース341に格納する。そして、統合サーバ342は、ネットワーク350は常に使用不可能であり、ネットワーク351は常に使用可能であると判断できる。1つ以上の実施形態において、このように判断するために、3つより多くのデータポイントが使用されることが望ましく、より多くのデータポイントを使用することによって、判断の正確性がより向上する。その結果、統合サーバ342は、ネットワーク351が好ましく、ネットワーク350は回避すべきであるという情報で、設定サーバ344を更新する。モバイルデバイス301で動作しているソフトウェアクライアントは、点線354で表現されているように設定サーバ344から設定の更新情報を取得すると、ネットワーク350及び351に関するこの情報を収集する。モバイルデバイス301は、以前にはネットワーク350及び351に遭遇していない。その後、モバイルデバイス301は、ネットワーク350及び351のいずれか又は両方を検出する状況にあることを認識すると、モバイルデバイス301は、ネットワーク350への接続試行に優先してネットワーク351の接続試行をすべきであること、又は、ネットワーク350への接続試行を回避すべきことを認識する。
収集サーバ340、統合サーバ342、設定サーバ344及びこれらに関連するデータベース341、343及び345の組合せは、本明細書で説明される中央サーバインフラストラクチャの主要な構成要素を含んでいる。収集サーバ340、統合サーバ342及び設定サーバ344と、これらに対応するそれぞれのデータベースとは、互いに通信している分離した構成要素として説明されているが、これらの構成要素の全て又は一部と、それに対応する機能性とは、同一の構成要素として結合することができ、又は、更なる構成要素に分離することができることが理解される。
1つ以上の実施形態において、図4は、モバイルデバイス301、311、321及び331で動作している多数のソフトウェアクライアントから収集サーバ340が受信できるデータの代表例を示すものである。図4の表中の列401−408それぞれは、データポイントの種類を表現するものであり、このデータポイントは、モバイルデバイス301、311、321及び331で動作しているクライアントソフトウェアにより収集され、収集サーバ340に報告される。
列401は、ソフトウェアクライアントが検出したネットワークのネットワーク識別子を含む。本例では、Wi−Fi(802.11)の固有ESSIDが、ネットワーク識別子として使用されるが、他の技術で使用される任意の他のネットワーク識別子で代用することができる。これは、モバイルデバイスで動作しているソフトウェアクライアントにより認識される主要な識別子である。
列402は、検出されたネットワークに関連する所定のネットワークアクセスノードのハードウェアアドレスを含む。本例では、Wi−Fi(802.11)固有のアドレス指定に関連するBSSIDが示されているが、他の技術における適切なアドレス指定を使用することができる。この方法は、Wi−Fiネットワークに限定されるものではない。
1つ以上の実施形態において、列401のネットワーク識別子は固有のものではないことに留意されたい。本例では、Wi−FiのESSID識別子は一般に固有のものではないことを示している。列401と402との組合せは、固有の組を形成する可能性が高いことに留意されたい。これは、個々のネットワークを特定するための標識である。
簡略化するために、この表においては、1つのアクセスポイントにおけるただ1つの固有のネットワークが示されている。実際には、この表は、ここで示されているよりも多くのエントリを有する傾向にある。前述したように、収集され、処理されるデータが多いほど、ネットワークの評価はより正確になる傾向がある。
列403は、接続情報を報告する各ソフトウェアクライアント又はモバイルデバイスに固有の識別子を含む。この識別子は、収集サーバ及び統合サーバがデータ源にアクセスし、接続に関する様々な報告を関連付けることに役立つ。
列404は、報告されたネットワークに関する特定の位置データを含む。例えば、GPS又は他の位置情報源により決定される経度及び緯度の座標である。この位置データにより、統合サーバ342は所定の位置にネットワークを構築し、モバイルデバイスで動作しているソフトウェアクライアントに、周辺の位置における環境に関す固有の設定データを提供することが可能になる。これは、モバイルデバイスが受信及び格納する必要がある設定データのサイズを制限する上で、重要な機能である。第2に、この位置データにより、地図上に使用可能なネットワークの位置を示し、システムが学習した使用可能な位置への経路をモバイルデバイスのユーザに示すことが可能になる。
列405は、報告された接続試行の日付及び時間を含む。これにより、統合サーバ342は、時間の推移とともになされた報告を関連付けることができ、時間の推移又は時間の関数として、ネットワークがどのように機能するかを評価することができる。この方法の利点は、ネットワークが時間の推移ともに変化したか、又は、十分なデータポイントが得られたときに、所定のネットワークが1日のうちの特定の時間においてのみ機能するか否かを、統合サーバ342が検出することができることにある。
列406は、接続の状態を含む。簡略化のため、本例では、接続成功と接続失敗のみが示されている。1つ以上の実施形態において、多くの他の状態も報告されうる。モバイルデバイスで動作しているソフトウェアクライアントが接続するネットワークの報告に加え、接続の間に見つけた周辺のネットワークに関する情報も報告される。これらのネットワークは、可視ネットワークとして報告されるが、接続されているものではない。統合サーバ342は、報告時のモバイルデバイスの位置におけるネットワークの可視性に関するグラフを作成するためにこのデータを取得することができる。
列407は、モバイルデバイスで動作しているソフトウェアクライアントが、接続の確立及び接続テストサーバ105とのテストの実施に基づいて報告する品質データの種類を、十分に簡略化した例を含む。本例では、この表は、最大ダウンロード速度(メガビット/秒)、最大アップロード速度(メガビット/秒)、待ち時間(ミリ秒)及びドロップしたIPパケットの割合を示している。1つ以上の実施形態において、その他の情報、例えば、相対的な信号強度、ネットワーク接続理論速度等の情報も報告され、特定の実施形態に望まれるが、本明細書の説明では、簡略化のため省略する。
列408は、接続プロセス情報を提供するものであり、モバイルデバイスで動作しているソフトウェアクライアントが、ネットワークに接続し、インターネット104に到達するために通過しなければならないステップの説明を提供するものである。ここでも、明確化のため、この列は、非常に簡略化した方法で示されている。「オープン信号」は、接続が確立されたときに、ネットワーク接続を確立するために追加のステップが必要ないことを示すものである。「リダイレクト、クリックスルーリンク」は、クライアントがゲートウェイに遭遇し、ゲートウェイが接続するのを誘導しなければならないプロセス(図1において説明されている)を示すものである。本例では、どのコンテンツがリダイレクトの一部として示され、ログインのためにクライアントが何をしなければならないかを、明確に説明した追加情報が報告される。同様に、「リダイレクト、ログイン不可能」の場合、クライアントソフトウェアが何に遭遇し、ゲートウェイの誘導を試行した際にどのような問題が発生したかを示す詳細な報告が提供される。
図4の表中の行410−414それぞれは、(列403の報告デバイスIDにより特定される)各モバイルデバイス301、311、321及び331で動作しているソフトウェアクライアントからの収集サーバ340への個別の報告を示すものである。
本例では、行410から412は、3つの異なるモバイルデバイスから1つのネットワークに対する3回の接続試行を示している。このネットワークの一意性は、列401及び402の情報の対応関係に基づいて、すなわち、ネットワーク識別子(例えば、ESSID=「sysLink」)とアクセスポイント識別子(例えば、BSSID=「01:aa:34:12:33」)との対応関係に基づいて、決定される。列404は、このネットワークのカバレッジエリア及びこのエリア内におけるネットワークの有用性を示している。各試行に対して有用性が生じた位置が固有のものでなくとも、3つの試行の位置の周辺から、この有用な情報が提供される。列405に示される時間の変化は、時間の推移に伴うこのネットワークの使用可能性を示すものである。図3で説明され、図5でより詳細に説明されるように、この情報は全て統合サーバにより組み合わされ、モバイルデバイスで動作している他のソフトウェアクライアントと共有させるネットワークの使用可能性及びネットワーク情報を決定する。
本例では、行413は、行410−412に示すネットワークと同一のESSIDを有するモバイルデバイス301のソフトウェアクライアントがネットワークへの接続に成功していることを示している。しかしながら、列404で特定される地理的な位置がこのワイヤレスネットワークの範囲外であるため、統合サーバ342は、このネットワークが別個に考慮されるべき異なる固有のネットワークであると決定することができる。
本例において、行414は、同一のネットワーク識別子(つまり同一のESSID)を有する他の1つのネットワークへの接続が失敗したモバイルデバイス311のソフトウェアクライアントを示している。列404で提供される位置情報に基づき、統合サーバ342は、このネットワークが、表中に列挙された他のネットワークとは全く異なるネットワークであると決定することができる。列406で示すように接続が失敗しても、統合サーバ342は、列408で示されるように、モバイルデバイスで動作しているソフトウェアクライアントがネットワーク接続を確立しようとした試行についての詳細な情報を取得する。前述のように、簡略化するために、詳細な報告はこの表からは省略されているが、一般に、この詳細な報告には、リダイレクト情報の性質及びクライアントがネットワークへの試行において実行したステップが含まれる。この情報は、ネットワークへの接続を成功させるためにクライアントが使用することができる方法の決定に使用され、又は、そのような方法が提供されない場合、以後このネットワークへの接続を試行しないように、ソフトウェアクライアントへ通知するために使用される。
1つ以上の実施形態において、モバイルデバイスで動作しているソフトウェアクライアントにより収集及び格納され、その収集サーバ340に送信されて統合サーバ342で統合されるデータは、図4の表中に示されているデータの一部のみを含むことができ、又は、本開示の分散型動的ネットワーク検出の統合に関係する他の更なるデータを含むことができる。
次に図5を参照すると、概略的なフローチャートが示されており、図3に示される統合サーバ342により、図4に示されるサンプルデータに基づいて実行されるデータ統合プロセスの1つの可能な実施形態を示すものである。本例は、Wi−Fi 802.11ネットワーク構築に使用される技術に固有のものとして示されているが、これと同一の方法は、異なる種類のネットワークにおいて使用されうる。
動作501において、統合サーバ342は、収集サーバ340からネットワーク情報の完全なリストを取得する。このリストは、モバイルデバイスで動作しているソフトウェアクライアントがネットワークを検出及び使用して、収集した全ての情報のリストである。図4で説明したように、このリストは、ネットワーク(ESSID又はサービス名)と、ハードウェア識別子及び/又はアドレス(BSSID)と、可能な場合には位置(緯度及び経度)と、接続試行の日付及び時間と、接続試行の結果と、接続時に行われた手順と、接続が確立された場合には接続の品質と、接続が確立されている間の他の可視ネットワークアクセスポイントの情報とを含んでいる。このリストは、ESSID(サービス名)及びアクセスポイントのBSSID(ハードウェア識別子)によりソートされる。
動作502において、第1のESSID(サービス名)が選択され、このESSIDに関連する全てのデータが考慮される。Wi−Fiでないサービスにおいては、他のサービス識別子が使用されうることに留意されたい。この所定のESSIDについての全てのBSSIDは、最初は1つのネットワークとして考えられる。図4のデータに基づくと、最初に選択されるESSIDは「sysLink」である。以後の動作は、収集サーバ340内に現れる各ESSID(サービス名)において繰り返される。図4及び図5(及び本明細書中の他の図)に関連する具体例において、Wi−Fi(802.11)固有のネットワーク又はサービス名(ESSID)とアクセスポイントのハードウェアアドレス(BSSID)とが説明されているが、本明細書で説明される本技術は、各技術に固有のパラメータを使用している任意の他の無線技術にも等しく適用され、それぞれ適切な識別子を含むことができる。
動作503において、このESSIDのエントリの地理的な位置は、使用されている技術における閾値の組と比較される。本例で、Wi−Fiを使用しているとすると、エントリ410−414を考慮すると、全ての位置が閾値内で検出されるわけではない。許容される範囲内又は予め設定された範囲内に全ての位置が検出されない場合、動作504において、地理的な位置の組は、次の動作のために単一の地理的な位置になるように削減される。本例では、「sysLink」のESSIDの地理的な位置は、単一の地理的な位置の範囲内の列410−412に含まれるデータになるように削減される。後述するように、以後の反復過程において、付加データが考慮される。
単一の地理的な位置に制限された場合、又は、全ての位置が許容される範囲又は予め設定された範囲内で検出された場合、統合サーバ342による処理は、動作505へ進む。動作505において、統合サーバ342は、以前報告された情報に基づいて地理的境界の閾値内にこのネットワークに関する以前の情報が発見されるか否かについて、ローカルデータベース343を確認する。そのような情報が存在する場合には、動作506において、新規に取得された情報とともにデータベース343から情報が考慮のために読み出され、処理は動作507へ進む。そのような情報が存在しない場合には、以前の情報が考慮されることなく、処理は動作507へ進む。
動作507において、この信号の特性を決定するために、業務ルールが適用される。業務ルールは、いくつかの例を挙げれば、設定に信号を含めるために必要となる成功及び失敗の報告の回数、信号が使用可能又は使用不可能であった時間周期の推移、信号の品質、及び信号の不変性を含むことができる。他の業務ルールも適用されうることが理解される。適切な業務ルールを適用した後、信号について統合された情報(つまり、固有のネットワーク)が更新される。
動作508は、統合サーバ342が今後使用するために、この更新情報をデータベース343に格納する。動作509において、信号情報は、設定に含めて様々なソフトウェアクライアントに送信するのに相応しいか否かを決定するために、業務ルールに照らして考慮される。例えば、業務ルールに従って、本例では、試行410−412により報告されるような常に成功する接続に基づいて、対応する信号が十分な品質であり、この信号を設定に加えるべきであるということが決定される。その結果、モバイルデバイスにインストールされた他のソフトウェアクライアントがそれ自身この信号の地理的な近傍にいると認識したときにこの信号が好ましいと認識することが可能になる。
その結果、動作510において、設定サーバ344は、設定データベース345の設定にこの信号(すなわち、ネットワーク)を加えるように通知される。前述したように、設定サーバ344は、設定情報を適切なソフトウェアクライアントに(例えば、全てのソフトウェアクライアントに、又は所定の地理的な領域にあるモバイルデバイスのソフトウェアクライアントのみに)分配するときに、モバイルデバイス311、321及び331で動作しているソフトウェアクライアントにより新規に検出されたネットワークを、他のソフトウェアクライアントに分配する。本例では、モバイルデバイス301のソフトウェアクライアントは、追加されたネットワーク(すなわち、この地理的な位置における「sysLink」のESSIDを有するネットワーク、又は同一のネットワーク識別子を有するネットワーク)の使用可能性について学習し、モバイルデバイス301のソフトウェアクライアントが後にそれ自身がこのネットワークの周辺にいることを認識した場合、このネットワークの周辺におけるモバイルデバイスで動作している他のソフトウェアクライアントが接続に既に成功したという経験に基づいて、モバイルデバイス301は、ネットワークを使用できることを想定する。このネットワークが設定に加えられるべきではないという決定がされた場合、動作510は省略される。例えば、モバイルデバイスで動作している様々なソフトウェアクライアントからの成功又は失敗の試行の報告が、データベース345に格納された設定に含めるのに値する程十分ではない場合であっても、後にこのデータについて再検討できるように、これらの試行による知識は、データベース341及び343に保持される。
動作511において、このネットワークで未だ考慮されていない異なる地理的な位置における追加情報が存在するか否かを、このプロセスは検討する。例えば、図4の例に関しては、異なる地理的な位置における行413及び414は未だ考慮されていない。
動作512において、次の地理的な位置(この場合、行413で特定される位置)が選択され、プロセスは動作503に戻り、上述の動作を繰り返す。行413で特定される位置に関連する統合サーバ342のデータベース343に付加情報がない場合、この1つの位置に関するデータが、この位置を設定に対して公表するという業務ルールに適合するか否かを決定するために、業務ルールが適用される。そうでない場合、動作508のみにおいて、この新規な情報がデータベースに格納される一方、この情報を設定サーバ344に送信するという動作510は、省略される。
本例では、このプロセスは動作512へ続き、このネットワークにおける最後の地理的な位置が選択され、行414が評価される。本例では、業務ルールが、このネットワークが「使用不可能」であると設定するために1回の失敗では不十分であるとすると、行414で特定される位置は、行413の位置における結果と類似する。しかし、モバイルデバイスで動作している他のソフトウェアクライアントからの付加情報がその後届いたときに、この位置でこのネットワークに提供される設定の更新情報が、業務ルールの閾値を満たすか否かを決定するために、この位置に関する情報が統合されるように、この情報は統合サーバのデータベース343に格納される。
このネットワーク及びその地理的な位置に関して、全てのデータが処理されたとき、動作513は、追加ネットワークが処理される必要があるか否かを決定する。必要がある場合、動作514は次のネットワークを選択し、このプロセスは再び動作503を開始する。全てのネットワークが処理されるまで、このループは続く。処理すべきネットワークがない場合、動作515でプロセスを完了する。
上述の様々な実施形態において、ネットワークの検出及び有用性に関する情報は、モバイルデバイスで動作しているソフトウェアクライアントに分配され、中央サーバインフラストラクチャに報告されることにより動的に決定される。中央サーバインフラストラクチャにより収集されたデータは、この情報の信頼性を向上及び/又は改善するために、業務ルールに基づいて統合される。この設定情報は、モバイルデバイスで動作している特定のソフトウェアクライアントに、これらのモバイルデバイスの位置決定及び無線ネットワークとの接続の効率を改善するのに使用するために、分配される。
1つ以上の実施形態において、無線ネットワークの接続情報は、中央サーバアーキテクチャ以外のソースから、モバイルデバイスに受信されるようにすることもできる。例えば、モバイルデバイスは、モバイルデバイス間で検出された接続情報を共有することができる。更に、無線ネットワークの接続情報は、特定の周辺に存在するモバイルデバイスにより受信されるように、(例えば、ネットワークプロバイダにより、又はインターネットへの無線ネットワーク接続に関するWi−Fiアクセスポイントを提供する小売店により)送信されうる。1つ以上の実施形態において、このような送信されたネットワーク接続情報は、無線ネットワークへの接続を確立するのに使用される一次無線通信プロトコル又はチャネルとは異なる、二次的な又は個別の通信プロトコル又はチャネルにより送信されうる。
図6を参照すると、1つ以上の実施形態において、二次ローカルエリア無線接続を直接使用することにより検出された接続情報をモバイルデバイス間で共有することによって、他の種類の接続情報の共有を提供するのに使用される、様々なシステム構成要素のブロック概略図が示されている。
クラウド610、620及び630は、インターネットアクセスを取得するためにモバイルデバイスが接続を希望するネットワークである一次アクセス無線ネットワーク(例えば、802.11Wi−Fiネットワーク)を含んでいる。モバイルデバイス611は、クラウド610(縦線の影付き部分)の無線ネットワークを検出できる。本明細書で説明される1つ以上の実施形態における接続プロセスを使用して、モバイルデバイス611で動作しているソフトウェアクライアントは、前述の図3及び4において説明したように、接続するのに成功し及び失敗したクラウド610のネットワークを含む接続情報を、ローカルデータベース612に追加する。明確にするため、モバイルデバイス611とクラウド610に現れるネットワークとの一次無線接続は、無線接続613により示される。
同様に、モバイルデバイス621は、クラウド620(横線の影付き部分)に含まれる一次アクセスネットワークを検出することができ、図3及び4において説明したように、これらのネットワークへの接続の成功及び失敗の情報をローカルデータベース622に保持する。明確にするため、モバイルデバイス621からクラウド620内のネットワークへの一次無線接続リンクは、無線接続623によって示されている。無線デバイス621によって検出されるネットワークのうちのいくつかは、クラウド610及び620の線が重なっているクロスハッチ領域によって示されるように、モバイルデバイス611によっても検出されることに留意されたい。その結果、両モバイルデバイス611及び621は、それぞれのローカルデータベース612及び622に、これらのネットワークの組の情報を格納している。
モバイルデバイス631は、クラウド630(斜線の影付き部分)に含まれる一次アクセスネットワークを検出することができ、これらのネットワークにおいて検出した接続情報をローカルデータベース632に格納する。ここでも、明確にするため、モバイルデバイス631とクラウド630内のネットワークとの間の一次無線接続は、無線接続633により示されている。
前述したように、モバイルデバイス611、621及び631は、それ自身の地理的な位置を認識しており、それぞれのローカルデータベース612、622及び632を更新するとき、ネットワーク及びネットワークの状態に関する情報だけでなく、ネットワークの使用を試行した時間における位置、及び各モバイルデバイスがネットワークに接続を試行したときのデータ及び時間に関する情報も、格納する。
1つ以上の実施形態において、ローカルデータベースの接続情報コンテンツに関する情報を他のモバイルデバイスに送信(ブロードキャスト)するために、モバイルデバイス611、621、631及び641は、例えば主要無線通信技術の帯域外信号などの代替又は二次無線通信技術と通信する能力を備えている。これは、領域内の他のモバイルデバイスが受信及び理解できるビーコンの形式とすることができる。
例えば、モバイルデバイス611は、代替無線接続614を使用して、ローカルデータベース612のコンテンツに関する情報をモバイルデバイス621又は他のモバイルデバイスに送信することができる。本例では、クラウド640は、主要無線通信技術の帯域外信号のデバイスに使用される代替無線通信技術を意味する。この技術の例は、モバイルデバイスの二次的、独立的な無線通信により送信及び受信されるBluetoothである。これにより、モバイルデバイスは、一次無線通信ネットワークを使用することと、ネットワークの知識に関する帯域外情報を、周辺の他のモバイルデバイスに提供することを、同時に行うことができる。
モバイルデバイス611は、接続613によりクラウド610のネットワークへの接続に成功している場合、ローカルデータベース612を更新することができる。モバイルデバイス611は、この接続の成功を二次無線送信により送信することができ、本例では、二次無線送信614は、モバイルデバイス621によって受信されることが示されている。モバイルデバイス611は、クラウド620内のネットワークのみを認識するモバイルデバイス621には検出されないクラウド610内のネットワークに関する知識を認識し、取得することが可能であるため、デバイス621は、二次無線送信の範囲内の他の無線デバイスからネットワークに関する成功又は失敗の情報を取得することができる。1つ以上の実施形態において、この二次無線送信は、例えばBluetooth等のように制限範囲を設けることができ、二次無線送信により送信される情報は局所的なものであるため、無線デバイス621が位置を移動したときに、無線デバイス621のユーザと関連する傾向にある。
クラウド620内のネットワークへの一次接続623介して、及び、モバイルデバイス611からの二次無線接続(二次更新接続)614を介して、モバイルデバイス621により学習された情報は、ローカルデータベース622にローカルに格納されたネットワーク接続情報を更新するのに使用されうる。更に、この情報は、二次無線接続を介して他のモバイルデバイスと共有されうる。換言すれば、モバイルデバイス621は、モバイルデバイス611から学習した情報を、モバイルデバイス621のローカルデータベース622に格納された他のネットワーク接続情報とともに、他の二次無線接続634を通して、他のモバイルデバイス631と共有することができる。
モバイルデバイス631は、一次無線接続633を使用して、クラウド630内のネットワークに接続する一方で、それと同時に、二次無線接続634を介して、クラウド630外のネットワークに関する情報(例えば、モバイルデバイス621から受信されるようなクラウド620及び610内のネットワーク情報)を受信することができる。モバイルデバイス631がクラウド630のネットワークの範囲外且つクラウド620のネットワークの範囲内に移動した場合、モバイルデバイス631は、クラウド620内のネットワークについて、既に収集した情報を保有しており、これによって、二次リンク634を介したクライアント621により共有される情報に基づき、クラウド620内のネットワークとの接続をより簡単にすることができる。
モバイルデバイス間でコンテンツを共有するこの技術は、さらに遠くに移動したモバイルデバイスにおいても機能する。例えば、図6において、モバイルデバイス641は、クラウド610、620及び630内の一次無線通信技術のネットワークの範囲外であるが、モバイルデバイス631の二次無線通信技術を使用できる範囲内に存在する。従って、モバイルデバイス641は、以前にはこれらのクラウドによって覆われた無線範囲内のネットワークを検出していないにもかかわらず、二次無線リンク644を介して、一次クラウド610、620及び630のネットワークに関するネットワーク情報を受信する。
モバイルデバイス641は、その後クラウド610、620又は630内のネットワークのうちの1つに範囲に移動すると、どのネットワークに最初に接続すべきかについての、より良い指示を取得し、これによって、効率の向上とともに接続時間及びバッテリ残量の節約を得ることができる。
前述したように、1つ以上の実施形態において、アクセスポイントに接続されたときの各モバイルデバイスの具体的な位置情報は、ローカルデータベースに格納され、この情報は、ネットワーク情報を交換するときに、モバイルデバイス間で交換されうる。モバイルデバイス621が、接続されている一次ネットワーク(すなわち、クラウド620内のネットワーク)についての情報を決定することができ、且つ、二次無線リンク634を介してモバイルデバイス631にこの更新情報を送信する場合、二次無線リンク644を介したモバイルデバイス631からモバイルデバイス641への更新情報は、この位置情報を含んでいる。モバイルデバイス641がその位置を決定することができないが、モバイルデバイス621によって報告されたおおよその位置情報に関するアクセスポイントのうちの1つの範囲内に移動した場合、モバイルデバイス641は、それ自身が位置するかなり正確な位置を認識する。これは、例えばGPS等の位置に関するサービスが実装されていないモバイルデバイスに対して、位置を推定する方法を提供する。
同様に、1つ以上の実施形態において、二次無線通信ネットワークを使用して互いにネットワーク接続情報を共有するモバイルデバイスの変形例は、図7の概略図で示されているように、二次無線通信ネットワークを介してネットワーク接続情報をブロードキャストするネットワークアクセスポイントを実装しうる。
図7において、モバイルデバイス700は、一次無線通信技術リンク701を使用して無線ネットワーク702に接続されており、ネットワーク702に接続が成功したことに関する情報は、無線デバイス700のローカルデータベース703に格納されている。
一次ネットワークアクセスポイント710も、二次無線通信送信(ブロードキャスト)を実行するための二次無線通信技術を実装している。任意の無線通信技術の組合せを使用することもできるが、本例では、Wi−Fi802.11が一次無線技術として使用され、Bluetoothが二次無線通信技術として使用される。クラウド740は、二次無線通信ネットワークを示すものであり、二次無線通信ネットワーク及びその接続(例えば、711、722、723及び741の未時無線リンク)が、この二次無線通信技術を示す破線で表現されている。
二次無線通信を使用して、アクセスポイント710は、連続的、周期的又は選択的に、それ自身に関する接続情報を、二次無線通信送信の範囲内にある任意のモバイルデバイスにビーコン送信する。このビーコンは、ESSID、ログイン方法及びアクセスポイントの使用可能性に関する条件(例えば、無料のネットワークアクセスが使用できるか否か)のような、必要なパラメータを含んでいる。図7において、モバイルデバイス700は、以前にはアクセスポイント710に接続されていないか又は以前にアクセスポイント710に関連するネットワークについての設定情報を受信していないにも関らず、ビーコン信号711は、モバイルデバイス700により受信される。このモバイルデバイス700は、ローカルデータベース703をこのアクセスポイント710の使用可能性に関する情報で更新することができる。前述したように、アクセスポイントにより送信されるビーコンにおける、アクセスポイント710に関する位置情報が使用可能であり、アクセスポイントの可視性に基づいて、位置の決定を可能にする。
1つ以上の実施形態において、アクセスポイント720は、2つの無線通信を備え、ローカルデータベース731に接続に関する情報を格納するモバイルデバイス730への一次無線接続721に、一次無線通信を使用する。アクセスポイント720は、アクセスポイント720を介したネットワークへの使用可能な接続性に関する情報をモバイルデバイス730に提供する二次無線通信リンク723に、二次無線通信を使用する。接続721を確立する前に、モバイルデバイス730は、ネットワーク720に接続するか又は他のネットワークが好ましいかを決定するために、二次無線通信リンク723を介して受信した、アクセスポイント720に関するこのネットワークの接続性の情報を使用することができる。
図6に関連して説明されるように、モバイルデバイス700及び730が二次無線通信リンク741を介して二次無線通信技術の領域内にあるとき(クラウド740により示されている)、モバイルデバイス700と730との間の情報も、交換されうる。モバイルデバイス730は、以前の接続試行から、ネットワーク710についての直接的な知識を取得していないが、モバイルデバイス700は、二次無線通信リンク711を介してアクセスポイント710からネットワーク接続性の情報を取得し、この情報を二次無線通信リンク741を使用してモバイルデバイス730とこの情報を共有するので、モバイルデバイス730は、二次無線通信リンク741を介してモバイルデバイス700からこの知識を取得できる。
従って、モバイルデバイス730は、アクセスポイント720の範囲外且つアクセスポイント702、710及び750の範囲内に移動するとき、モバイルデバイス700から取得した情報に基づき、アクセスポイント702又は710と関連するネットワークを使用して試行することを認識し、従って、接続時間及びバッテリ残量を節約できるという利点を有する。
1つ以上の実施形態において、二次無線通信送信の範囲内の任意のモバイルデバイスに、接続情報を含むビーコンを送信する二次無線通信をアクセスポイント自体が実装する代わりに、このアクセスポイントの周辺の二次無線通信を備える個別のデバイスが、この情報をビーコン送信することができる。例えば、個別のBluetooth無線通信によってアクセスポイントに関する接続情報を含めたBluetooth信号を、ローカル無線デバイスに送信することができ、これはそのような二次ビーコン送信を行うことができる二次無線通信を実装していないアクセスポイントに二次無線通信ビーコンを提供するのに有用である。
1つ以上の実施形態において、インターネットにアクセスするために無線ネットワークを使用する能力をモバイルデバイスが有するとしても、システム、装置及び方法は、無線ネットワークに関するモバイルデバイスに対して、あるモバイルデバイスを使用すべきでないと通知するように提供される。そのような予防的な使用は、様々な手段、例えば、アクセスポイントのオペレータ又はアクセスポイント又は他の個人を超えたネットワークインフラストラクチャからの要求により、実装することができる。
図8の概略ブロック図を参照すると、1つ以上の実施形態における、無線ネットワークのオペレータが、モバイルデバイスユーザの無線ネットワークへの自動的なアクセスが許可されるべきか否かを、決定できるシナリオが示されている。ここで示されるシナリオは、Wi−Fi(802.11)ネットワーク構築に固有のものであるが、任意の他の種類の無線ネットワークに対しても同様の技術を採用することができる。モバイルデバイス800は、本明細書で説明されるように、様々な無線ネットワークを検出し、これらの無線ネットワークに接続することができるソフトウェアクライアントを動作させる。データベース801は、モバイルデバイス800上に存在し、モバイルデバイス800上で動作しているソフトウェアクライアントの設定情報を有している。1つ以上の実施形態において、データベースからの情報がこの接続シナリオに必要とされるため、このデータベースは、モバイルデバイス800で動作しているソフトウェアクライアントにローカルであることが必須である。
データベース801に格納された設定において、特定のネットワークが使用不可能であることを特定する情報が格納されている。例えば、使用不可能な特定のネットワークを示す情報又はルール802は、データベース801に格納されうる。例えば、ルール802の除外パターン部分は、データベース801に格納されている。モバイルデバイス800で動作しているソフトウェアクライアントは、どのネットワークが使用可能又は使用不可能であるかを決定するとき、この除外パターンを評価するように構成されている。図8において、除外パターンは、ネットワーク名の最後が、スペース(ASCII 32)、文字NFA、続いてもう1つのスペース(ASCII 32)で終わる任意のネットワーク名(例えば、「Exception: *.\ NFA\ $」(但し、\はバックスラッシュに相当する文字))に合致するような、通常の表現で示されている。この設定は、図3に示される設定サーバ344により動的に更新されうるため、除外パターンは、動的に変化され、拡張され、又は削除される。通常の表現パターンの使用は、極めて少ない設定データによって多くのネットワークを排除できるため、強力な方法である。この実施形態を説明するために、除外パターンの具体例が提供されるが、使用する特定の無線技術に適切な任意のパターンを使用することができることを理解されたい(例えば、802.11Wi−Fiネットワークに使用されるパターンは、他の無線技術で使用されるパターンと異なる)。
モバイルデバイス800が使用可能なネットワークをスキャンするとき、「Home Network NFA」というネットワーク名のネットワーク810及び「Free Coffeeshop」というネットワーク名のネットワーク820を検出する。ネットワーク810又は820のいずれかは、それぞれのルータ811又は821を介してインターネット803に接続するため、このモバイルデバイス800による使用を阻止する設定がネットワークオペレータによりされなくとも、モバイルデバイス800のソフトウェアクライアントがこの接続を確立するためにいずれかのネットワークを選択できる。
しかしながら、ネットワーク810の「Home network NFA」というネットワーク名は、ルール802に格納される除外パターン「Exception: *.\ NFA\ $」に含まれるため、モバイルデバイス800のソフトウェアクライアントはネットワーク810を使用することを想定しないと認識する。ネットワーク820のネットワークオペレータによってはモバイルデバイス800に同様の制限は設定されない。ネットワーク810への接続は、ルール802により禁止されているため、データベース801に格納されるルール802により、モバイルデバイス800のソフトウェアクライアントは、無線リンク804を使用してネットワーク820にのみ接続する。
次に、図9を参照すると、図8に関する説明における、変更されたプロセスのフローチャートが示されている。これは、使用から除外されるネットワークを特定するものであり、そうでない場合には、本明細書で記載した図2のような接続プロセスを実行する。例えば、図9に関して説明される動作は、図2と関連する実施形態において動作201の代わりに実行される。
新規な接続プロセスは、動作900から開始される。図2の動作201における接続プロセスと同様に、動作901においてネットワークのリストが取得される。図8の具体的な例に準拠すれば、取得されたネットワークのリストは、「Home Network NFA」及び「Free Coffeeshop」である。
動作902において、モバイルデバイスで動作しているソフトウェアクライアントは、動作901で取得したネットワークリスト内の任意のネットワークが、格納された除外パターンと一致するか否かを確認する。本例では、ネットワーク「Home Network NFA」は、ルール802に格納された除外パターン「Exception: *.\ NFA\ $」の基準に一致する。その結果、動作903において、格納された除外パターンに一致する任意のネットワーク、例えばネットワーク「Home Network NFA」は、ネットワークのリストから除外される。ネットワークリストに、格納された除外パターンに一致するネットワークがない場合、ネットワークはリストから除外されない。続いて、プロセスのフローは、動作904に移り、図2において説明した動作202から始まる残りの接続プロセスが完了される。この付加プロセスの結果、モバイルデバイスで動作しているソフトウェアクライアントは、図2及び3で説明されるように、例えば、モバイルデバイスに送信される設定データにプログラムされるネットワークのオペレータからの制約により、アクセスしないように設定されたネットワークへの接続を試行しない。
次に図10を参照すると、1つ以上の実施形態における他のシナリオの概略的なブロック図が示されており、この実施形態においては、モバイルデバイスのユーザが無線ネットワークに自動的にアクセスすることを許可すべきか否かを、無線ネットワークのオペレータが決定することができる。図10に関する実施形態において、無線ネットワークのオペレータは、ネットワーク識別子を提供するために、モバイルデバイスを介してサービスを提供する会社に連絡することができる。これらの識別子は、様々なモバイルデバイスに送信される設定情報に含まれる。ここで示されるシナリオはWi−Fi(802.11)のネットワーク構築に固有のものであるが、任意の他の種類の無線ネットワークに同様の技術を使用することができる。
モバイルデバイス1000は、本明細書で説明されるように、様々な無線ネットワークを検出し、これらの無線ネットワークに接続することができるソフトウェアクライアントを動作させる。データベース1001は、モバイルデバイス1000上に存在し、モバイルデバイス1000上で動作しているソフトウェアクライアントの設定情報を有している。1つ以上の実施形態において、データベースからの情報がこの接続シナリオに必要であるため、このデータベース1001は、モバイルデバイス1000で動作しているソフトウェアクライアントにローカルであることが必須である。
除外テーブル又は除外リスト1002は、モバイルデバイス1000が接続できるものから除外されている無線ネットワーク及びアクセスポイントのリストを含むデータベース1001に格納される。モバイルデバイス1000で動作しているソフトウェアクライアントは、どのネットワークが使用可能で、どのネットワークが使用不可能かを決定するとき、除外リスト1002を評価する。図10において、除外リスト1002は、Wi−Fi(802.11)に固有のネットワーク名(ESSID)及びアクセスポイントハードウェアアドレス(BSSID)の双方を含むものとして示されているが、この技術は、各技術に固有のパラメータを使用した任意の他の無線技術にも同様に適用可能であり、それぞれ適切な識別子を含むことができる。除外リスト1002を含むこの設定は、設定サーバ344により動的に更新される。除外リスト1002は、動的に変更され、拡張され、又は除外される。この除外リストの使用は、ネットワーク構成要素の粒度ごとに、個々のネットワーク構成要素について、どのネットワークを使用し又は使用しないかを決定することを可能にするので、強力な方法である。
モバイルデバイス1000が使用可能なネットワークをスキャンするとき、「sysLink」というネットワーク名の無線ネットワーク1010及び「0c:fa:1d:08:1d:13」というハードウェアアドレスの無線ネットワーク1020を検出する。ネットワーク1010又は1020のいずれかは、それぞれのルータ1011又は1021を介して、インターネット1003に接続しており、これらのネットワークがモバイルデバイス1000の設定から除外されていなければ、モバイルデバイス1000のソフトウェアクライアントは、接続を確立するために、いずれかのネットワークを選択することができる。
しかし、ネットワーク1010のネットワーク名が除外リスト項目1004と一致するため、設定データベース1001の除外リスト1002内に現れるルール1004により、モバイルデバイス1000のソフトウェアクライアントは、ネットワーク1010に接続されない。同様に、ネットワーク1020のハードウェア識別子が除外リスト項目1005と一致するため、設定データベースの除外リスト1002内に現れるルール1005により、モバイルデバイス1000のソフトウェアクライアントは、ネットワーク1020に接続されない。その結果、モバイルデバイス1000は、図10で検出されるいずれのネットワークにも接続を試行しない。更に、除外リスト1002中の除外リスト項目1006によって示されるように、1つ以上の実施形態において、図8と関連して導入される除外概念は、図10において導入される除外概念と組み合わせることができる。
図11は、図8及び図2で説明された接続プロセスと少し異なる図10に関して説明される接続プロセスの一部のフローチャートであり、図10及び図11に関して説明される動作は、図2と関連する実施形態において図2の動作201の代わりに実行される。
新規な接続プロセスは、動作1100から開始される。動作1101において、モバイルデバイス(例えば、モバイルデバイス1000)で動作しているソフトウェアクライアントは、図2の接続プロセス201で実行されるように、ネットワークのリストを取得する。図10の例において、取得されたネットワークリストは、ハードウェアアドレスが「01:aa:da:17:ac:23」の「sysLink」及びハードウェアアドレスが「0c:fa:1d:08:1d:13」の「Free Coffeeshop」である。
動作1102は、ソフトウェアクライアントにより実行され、動作1101からのネットワークリスト内の任意のネットワーク又はハードウェアが、格納された除外リスト1002に現れる任意の項目と一致するか否かを確認する。本例では、ESSID=「sysLink」を有するネットワーク1010は、除外リスト項目1004(ESSID:「sysLink」)と一致し、アクセスポイントアドレス「0c:fa:1d:08:1d:13」を有するネットワーク1020は、対応する除外リスト項目1005中のエントリと一致する。その結果、ソフトウェアクライアントは、動作1103において、ネットワーク1010及び1020を、使用可能な信号のリストから除外する。プロセスのフローは、続いて動作1104に進み、前述した図2の動作202から開始する残りの接続動作を完了させる。図10に示された例において、ネットワーク1010も1020も除外リスト1002に現れるため、モバイルデバイス1000は、いずれにもアクセスせず、ネットワーク1010及び1020のいずれにも接続を試行しない。
次に図12を参照すると、1つ以上の実施形態における他のシナリオの概略的なブロック図が示されており、この実施形態においては、無線信号を提供するネットワークのハードウェアにいかなる変更も要求することなく、更に、ネットワークのオペレータにモバイル無線デバイスを制御する会社との協調を要求することなく、モバイルデバイスのユーザが無線ネットワークに自動的にアクセスすることを許可すべきか否かを、無線ネットワークのオペレータが決定することができる。むしろ、ローカルネットワーク上又はローカルネットワークより上流ネットワーク上のドメイン名サーバを制御する団体は、ネットワークアクセスを制御することができる。ここで示されるシナリオは、Wi−Fi(802.11)ネットワーク構築に固有のものであるが、任意の他の種類の無線ネットワークに同様の技術を使用することができる。
ドメイン名サーバ(DNS)がネットワークアクセスを除外するのに使用される1つ以上の実施形態において、モバイルデバイス1200は、様々な無線ネットワークを検出して様々な無線ネットワークと接続することができるソフトウェアクライアントを動作させる。ローカル設定データベース1201及びローカル接続結果データベース1206を確認し、このネットワークに制限がないことを認識すると、最初に、モバイルデバイス1200は、リンク1205によりネットワーク1210と接続する。1つ以上の実施形態において、ローカル設定データベース1201とローカル接続結果データベース1206とは、個別のデータベースを含むことができ、他の実施形態においては、ローカル設定データベース1201とローカル接続結果データベース1206とは、異なるコンテンツを、単一のローカルデータベース内の異なる部分に格納することができる。そのため、各モバイルデバイスに対して、単一のローカルデータベースが記載及び図示された本出願の他の図に関して説明される他の実施形態において、このような単一のローカルデータベースは、ローカル設定データベース1201及びローカル接続結果データベース1206に対応する1つ以上のデータベースを含んでいることが理解される。
モバイルデバイス1200とネットワーク1210との間で接続1205を確立すると、モバイルデバイス1200は、動的に割り当てられたネットワークアドレスを、DHCPを使用して、DHCPサーバから取得する。DHCPサーバでは、ネットワーク1210におけるDNSサーバの役割は、ルータ1211により操作される。ルータ1211は、格納されたローカル設定1212を調査し、IPアドレスをモバイルデバイス1200に提供し、更に、制限されていないホスト名でドメイン名サービス要求を作成するときに、使用するドメイン名サーバのアドレス及びデフォルトドメイン(両方とも設定1212に示されている)を、DHCP応答に含める。
モバイルデバイス1200のソフトウェアクライアントは、有効なIPアドレスを受信した後、ローカル設定データベース1201を調査し、使用が許可されていない格納されたDNSに関する設定ルール1202を読み出す。このように、1つ以上の実施形態において、モバイルデバイス1200を制御する会社は、ネットワークオペレータに単にこのDNSエントリの加入を許可することによって、特定の会社のモバイルデバイスがネットワークへのアクセスを与えるべきでないか否かを、ネットワークオペレータに選択させるという、ネットワークオペレータによる使用ルールを作成及び公表することができる。これ以後、ネットワークオペレータは、アクセスを制限するためにモバイルデバイス及びソフトウェアクライアントを制御する会社と情報を交換する必要がなく、ネットワークオペレータは、いかなるネットワークの変更もする必要もない。
読み出した設定ルール1202に指定されているLookup属性とDHCP応答により提供されるドメイン名属性とを組み合わせて、モバイルデバイス1200で動作しているソフトウェアクライアントは、「NoFreeAccess.cable.pathcrawler.com」という名前のDNS要求を構築し、DHCP応答により提供されるDNSサーバ1214のアドレスに、このDNS要求を送信する。設定1212ごとのDHCP応答で定められるように、モバイルデバイス1200で動作しているソフトウェアクライアントは、インターネット1213を介してDNSサーバ1214を調査する。
ドメイン名サーバ1214はDNS要求を受信し、1215の設定に従って255.255.255.255のアドレス(A)応答で応答し、この応答は、モバイルデバイス1201に返送される。モバイルデバイス1200で動作しているソフトウェアクライアントは、受信した応答と、ローカル設定1202から予想される応答の一部分(予想されるアドレス1204として示されている)とを比較する。返送された情報が予想される情報と一致するため、ローカル設定は、このネットワーク1210を使用するべきでないということを、ソフトウェアクライアントに示す。ソフトウェアクライアントは、すぐにネットワーク接続1205を切断し、ローカル接続結果データベース1206を、このネットワークの必須パラメータで更新し、使用不可能としてタグ付けする。これは、以前の図で説明したように、この後このネットワーク1210への接続が再び試行されないことを確実にするためである。
図12に関するこの第1の例は、下流ネットワークがネットワークを介して使用可能な無料アクセスを確立することを、上流デバイスが防止することができる方法を示すものである。本例では、顧客が、無料アクセスが許可されていないモバイルデバイス(すなわち、DNSサーバ内のケーブルブロードバンドプロバイダのエントリと一致する「No Access DNS Rule(アクセス不可能DNSルール)」を有するモバイルデバイス)に、ネットワークを介して無料アクセスを提供しないことを確実にするために、ケーブルブロードバンドプロバイダ「pathcrawler」は、DNSサーバに1つのエントリを作成することができる。
1つ以上の実施形態において、更に、図12においてネットワーク1220に関して更に示されるように、ローカルネットワーク管理者は、許可されていない又は好ましくないモバイルデバイスが無線ネットワークに接続を試行しないことを確実にすることができる。ネットワーク1210に接続できないと、モバイルデバイス1200は、次に無線ネットワーク1220と接続1204を確立することを試行する。
接続1204を確立すると、モバイルデバイス1200は、DHCPを使用してIPアドレスの取得を再度試行する。本例では、DHCPサーバ1222はDHCP要求に応答して、設定1223に示されるような設定情報を提供する。前述のように、モバイルデバイス1200で動作しているソフトウェアクライアントは、設定データベース1201を調査して設定ルール1202を取得し、要求項目1203を設定1223に従ってDHCP応答で受信した情報と組み合わせることによりDNS(ドメイン名サービス)クエリを構築する。モバイルデバイス1220のソフトウェアクライアントは、今は「NoFreeAccess.corporate.acme.com」というDNS要求を作成し、この要求をDNSサーバ1224に送信する。DNSサーバ1224は設定1225を調査し、ドメイン名「NoFreeAccess.corporate.acme.com」に対する応答が255.255.255.255であることを認識し、この応答をモバイルデバイス1200に返送する。
モバイルデバイス1200で動作しているソフトウェアクライアントは、この応答を、ローカル設定データベース1201に格納された設定ルール1202内の予想されるアドレス1204と比較し、応答が一致することを決定する。これは、モバイルデバイス1200が、このネットワーク1220を使用すべきでないということを意味する。無線接続リンク1204はすぐに切断され、ローカル接続結果データベース1206は、前述のような、このネットワーク1220にはアクセスすべきでないということを示す情報を含む必要なネットワークパラメータで更新される。このデータベース1206は、次の試行の開始時に調査され、モバイルデバイス1200が、以後このネットワーク1220に接続を試行しないことを確実にする。
図12におけるネットワークアクセスを制限するこの第2の例では、ドメイン名サーバ1224及びDHCPサーバ1222は、モバイルデバイス1200により直接接続されたネットワーク1220のネットワーク管理者により制御され、オープンとされていないネットワークにモバイルデバイスが接続するのを避けるために、他のレベルの粒度制御が提供されることに留意されたい。DHCPサーバ1222とドメイン名サーバ1224とは、互いに通信する別個の構成要素として説明され、示されているが、これらの構成要素及びそれらの関連する機能性は、同一の構成要素又はサーバとして結合することができ、又は、更なる構成要素に分離することができることが理解される。
次に図13を参照すると、図12の1つ以上の実施形態に関して説明される接続プロセスの一部のフローチャートが示されており、以前の図で説明された接続プロセスと少し異なる。新規な接続プロセスは、動作1301から開始され、動作1302において、ソフトウェアクライアントは、図2で説明された動作211の前まで接続プロセスを実行する。動作1303において、ソフトウェアクライアントは、図12に関して説明されるクライアントローカル設定1202を調査することによって、DNS除外設定ルールが存在するか否か(すなわち、「No Access DNS Rule(アクセス不可能DNSルール)」が存在するか否か)を決定する。そのようなルールが存在しない場合、プロセスは、動作1310に進み、図2におけるプロセスは動作211へ継続して実行される。
DNS除外設定が存在する場合、動作1304において、設定1202からDNS除外ルールのコンテンツが読み出される。次に、動作1305において、図12で説明されるDNSルールのlookup部分を取得し、図12に関して説明されたようにDHCP応答からのドメイン名と組み合わせることにより、DNSクエリが構築される。DNS要求は、動作1306において実行され、動作1307において、図12で説明されたように予想される応答とDNS除外ルールの応答部分とが比較される。これらが一致する場合、動作1308において、このネットワークは使用不可能とされる。動作1309において、図2の接続プロセスが動作212から継続され、この情報でローカルデータベースが更新される。
比較において一致しない場合、動作1310により、図2で説明された動作211における接続プロセスが継続される。動作1311において、図13の実施形態に関するプロセスを終了する。
次に図14を参照すると、ネットワーク除外の更に他の可能性が概略的なブロック図で示され、この方法は除外リストがモバイルデバイスに保持されるのではなく中央サーバ(例えば、接続テストサーバ1413)に保持されることを除いて図10に示される除外方法と類似する。ネットワーク1410におけるネットワークのオペレータは、ネットワーク1410に関する必要情報をサーバに基づくリストに含めるために、接続テストサーバ1413のオペレータに提供する。本明細書で示されるシナリオは、Wi−Fi(802.11)ネットワーク構築に固有のものであるが、任意の他の種類の無線ネットワークに同様の技術を使用することができる。
図14に関する1つ以上の実施形態において、モバイルデバイス1400は、本明細書で説明されるように、様々な無線ネットワークを検出し、これらの無線ネットワークに接続することができるソフトウェアクライアントを動作させる。図2及び他の以前の図に関連して説明されたように、モバイルデバイス1400は、モバイルネットワーク1410と接続1403を確立する。接続1403が確立されると、モバイルデバイス1400のソフトウェアクライアントは、ルータ1411及びインターネット1412を介して接続テストサーバ1413に接続するように構成される。ソフトウェアクライアントは、ネットワーク1410に関する必要情報を接続テストサーバ1413に報告する。
接続テストサーバ1413は、いずれかのエントリがモバイルデバイス1400から受信された接続テストに対応するか否かを決定するために、ローカル除外リスト1414内の検索を実行する。本例では、接続テストサーバ1413は、除外リストのエントリ1415が「sysLink」のESSIDで一致することを検出し、これは、モバイルクライアント1400が「sysLink」のESSIDを有するアクセスネットワーク1410に接続すべきでないことを示している。そして、接続テストサーバ1413は、このネットワーク1410は使用するべきでないことを示す応答をモバイルデバイス1400に送信し、モバイルデバイス1400は、接続1403を切断して、ローカル接続結果データベース1404を、このネットワーク1410は以後使用できないことを示すネットワーク1410に関する情報で更新する。
前述のように、モバイルデバイス1400のソフトウェアクライアントにより保持されるローカルデータベース1404内のこのエントリは、以後モバイルデバイス1400がこのネットワーク1410への接続を試行しないことを確実にする。接続テストサーバ1413の機能が、このシナリオの機能性を提供するように拡張されることにより、図2のフローチャートはこのシナリオを完全に含むので、この図に対して別途フローチャートは提供されない。
図15は、除外についての第5の方法に関する概略的なブロック図を示すものであり、この方法では、無線ネットワーク上のアクセスコントローラのオペレータがモバイルデバイスに、このネットワークに接続すべきでなく、このネットワークに接続するユーザに対して示される強制的なコンテンツを迂回すべきことを示すことができる。使用するネットワークは、任意の技術のものとすることができ、本例では無線接続が示されているが、同様の方法が任意の種類のネットワークにおいても機能する。
モバイルデバイス1500は、ネットワーク1510への接続1501を確立する。図1及び2で説明されるように、インターネット1513への接続を試行するとき、モバイルデバイス1500のソフトウェアクライアントにより作成される要求は、アクセスコントローラ1511によりインターセプトされる。この要求は、HTTP要求の形式であり、アクセスコントローラ1511は、この要求をインターセプトして、モバイルデバイス1500で動作している要求元のソフトウェアクライアントに対して、アクセスコントローラ1511で使用可能であるウェブコンテンツを示すリダイレクトを含むリダイレクトコマンドを送信する。
このリダイレクト要求の一部として、又は返送されたコンテンツの一部として、アクセスコントローラ1511は、ページ又はページのヘッダ内のタグ(例えば<NoFreeAccess />の形式のタグ)を返送する。モバイルデバイス1500で動作しているソフトウェアクライアントは、このネットワーク1510で無料のアクセスが提供されないことを、このタグが意味するということを認識する。その後、ソフトウェアクライアントは、ネットワーク接続1501を切断し、ローカル接続結果データベース1502を、ネットワーク1510に関する情報及びそのネットワークが使用するのに適切でないという情報で更新する。前述のように、これにより、ソフトウェアクライアントは、以後このネットワーク1510に接続を試行しなくなる。この検出プロセスは、図2の動作210の一部として実行され、従って、別個のフローチャートは提示されてない。
次に図16を参照すると、図3から図15において説明された接続情報の共有及びネットワーク除外のための様々な方法を単一の集合プロセスに結合し、その結果としてモバイルデバイスが、予め設定されていない複数の使用可能なネットワークから1つのネットワークを選択する効果的で迅速な方法が得られるようにした、1つ以上の実施形態における動作のフローチャートが提示されている。
このプロセスは、動作1600から開始される。動作1601において、モバイルデバイスは、図2で説明したのと同様の方法で、接続できる全てのネットワークのリストを取得する。動作1602において、以前の図面に示される実施形態に関して本明細書で説明されるように、デバイスのローカル接続結果データベースで使用可能となっている以前の接続情報に基づいて信号の除外及び順位付けが行われる。動作1603において、図8及び9に関して説明したように、モバイルデバイスは、格納された設定中に除外ルールが存在するか否かを決定する。そのような信号が存在する場合には、動作1604において、図8及び9に関して説明したように、それらの信号は、使用不可能としてタグ付けされる。
動作1605において、モバイルデバイスは、図10及び11に関して説明したように、いずれかの信号がローカル除外リストのローカル除外リストのエントリと一致するか否かを確認し、動作1606において、図10及び11に関して説明したように、これらの信号は、リスト中で使用不可能としてタグ付けされる。
新規にタグ付けされたリストは、設定サーバ344から取得した高く信頼できる設定データに基づき更新されたものであるため、このリストは、動作1607においてローカルに格納される接続結果データベースに格納される。
そして、動作1608において、図6及び7に関して説明したように、モバイルデバイスは、二次無線通信送信を介して任意のローカルビーコン情報を検査する。ローカルビーコン情報が存在する場合、動作1609において、ネットワークリストは、この情報に従って更新される。1つ以上の実施形態において、ローカルビーコン情報から学習されたネットワークアクセス情報は、格納された他のネットワークアクセス情報ほどの信頼性がないものとして示されるため、ネットワークリストは更新されるが、ローカルに格納される接続結果データベースは更新されない。
使用可能な全ての前接続情報は、使用可能な信号リストに組み込まれ、動作1610において、このリストは全ての入力パラメータに従ってソートされ、ネットワーク接続及びインターネット接続を確立する可能性が最も高い信号が、リストの最上部に配される。また、使用不可能としてタグ付けされた任意の信号は、この時点でリストから除外され、結果として、リストには、使用可能な接続を確立する可能性の順で、潜在的に使用可能な信号のみが含まれる。全ての使用可能な入力、すなわち、設定、ローカル接続結果データベース、ビーコン情報、信号強度等が、この順位付けにおいて考慮される。
動作1611において、図1及び2において説明した接続プロセスが、動作202から動作211の前まで実行される。図14に関して説明したような接続に基づくサーバ除外リストプロセス、及び図15に関して説明したようなアクセスゲートウェイタグ除外プロセスは、図2において説明したプロセスで黙示的に実行される。
続いて、動作1612において、図12及び13に関して説明したDNSに基づく除外プロセスが実行される。図16には示されていないが、動作1611−1613は、使用可能な信号が検出され、無線ネットワーク接続が確立するまで、使用可能な各信号について繰り返される。動作1613において、ローカル接続結果データベースが更新され、収集サーバ340に送信される。図3−5に関して説明したように、このデータは、統合サーバ342により処理され、設定サーバ344で使用可能となる。
動作1614において、モバイルデバイスで動作しているソフトウェアクライアントは、新規な一組の設定データを取得する。このデータは、ローカル接続試行からの任意の知識、及びモバイルデバイスで動作しているソフトウェアクライアントにより行われた接続試行からの任意の知識を含んでおり、分散型で自己学習型のネットワークアクセスシステムを実際に確立している。
1つ以上の実施形態において、モバイルデバイスにインストールされ、モバイルデバイスで動作しているソフトウェアクライアント、及び様々なサーバの構成要素(例えば、接続テストサーバ105、収集サーバ340、統合サーバ342、設定サーバ344)により提供される機能性は、本明細書で説明される技術の1つ以上を実行するために、ソフトウェアに実装され、例えばデバイス(例えば、モバイルデバイス又はパーソナルコンピュータ)のプロセッサ又はコントローラにより実行されるプログラムコード等のコンピュータ可読命令を格納する各デバイスのメモリのようなコンピュータ可読媒体又はコンピュータ可読記憶媒体に格納される。
本開示の目的のため、コンピュータ可読媒体は、コンピュータデータを格納し、そのデータは、コンピュータにより実行されるコンピュータプログラムコードを、機器に可読となる形式で含むことができる。限定されない例として、コンピュータ可読媒体は、データの有形記憶又は固定記憶のためのコンピュータ可読記憶媒体又はコード含有信号の一時的解釈のための通信媒体を含むことができる。ここで使用されるコンピュータ可読記憶媒体は、(信号とは対照的に)物理的又は有形的な記憶装置を意味しており、コンピュータ可読命令、データ構造、プログラムモジュール又は他のデータのような情報の有形記憶のために、任意の方法又は技術で実装される記憶媒体(揮発性か不揮発性か、取外し可能か不可能かの制限はない)が含まれる。コンピュータ可読記憶媒体には、RAM、ROM、EPROM、EEPROM、フラッシュメモリ又は他のソリッドステートメモリ技術、CD−ROM、DVD又は他の光学式記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又は他の磁気記憶デバイス、又は、望ましい情報又はデータ又は命令を有形的に格納し、コンピュータ又はプロセッサによりアクセスされる任意の他の物理的若しくは物質媒体が含まれるが、これらに限定されない。1つ以上の実施形態において、方法、アルゴリズム又はモジュールの動作及び/又は事象は、コンピュータプログラム製品に組み込まれるコンピュータ可読媒体又は機械可読媒体上にコード及び/又は命令の1つ又は任意の組合せ又は組として存在させることができる。
現在具体的な実施形態であると考えられるものに関する装置および方法について記載しているが、本発明は、開示された実施形態に限定される必要がない。請求項の精神及び範囲内に含まれる様々な修正例および同様の構成例を網羅することが意図されている本発明の範囲は、全てのこうした修正例及び同様の構造を包含するよう、最も広い解釈が許されるべきである。本開示は、以下の請求項の任意の及び全ての実施形態を包括する。

Claims (23)

  1. 使用可能な無線ネットワークを介して、モバイルデバイスをリモートの接続テストサーバに接続するステップと、
    前記モバイルデバイスのローカルな設定データベースに格納された無線ネットワーク設定情報を、前記接続テストサーバへの接続から取得した情報で更新するステップと、
    前記更新したローカル無線ネットワーク設定情報を、複数のモバイルデバイスから受信した無線ネットワーク設定情報を統合する中央サーバデータベースに送信するステップと、
    1つ以上の無線ネットワークに対して、前記統合された無線ネットワーク設定情報に基づいて、変更された無線ネットワーク設定情報を前記中央サーバで生成するステップと、
    前記変更された無線ネットワーク設定情報を、前記中央サーバから1つ以上のモバイルデバイス送信するステップと、
    前記中央サーバにから受信した前記変更された無線ネットワーク設定情報を使用して、前記1つ以上のモバイルデバイスにローカルに格納された無線ネットワーク設定情報を更新するステップと、
    を含む、動的無線ネットワーク検出方法。
  2. 前記使用可能な無線ネットワークを介して、前記モバイルデバイスを前記リモートの接続テストサーバに接続する前に、
    モバイルデバイスに使用可能な無線ネットワーク信号のリストを取得するステップと、
    前記使用可能な無線ネットワーク信号を、前記ローカル設定データベースに格納された無線ネットワーク設定情報と比較するステップと、
    前記使用可能な無線ネットワーク信号に関して、格納された無線ネットワーク設定情報を、前記モバイルデバイスにより取得した情報で更新するステップと、
    前記使用可能な無線ネットワーク信号を、前記格納された無線ネットワーク設定情報に基づいて順位付けするステップと、
    前記モバイルデバイスに対して望ましい順位を有する使用可能な無線ネットワーク信号を選択し、該無線ネットワーク信号を対応する無線ネットワークへの接続を確立するために使用するステップと、
    を更に含む、請求項1に記載の方法。
  3. 前記望ましい順位を有する選択された使用可能な無線ネットワーク信号が使用すべきでない信号として指定されているか否かを決定するステップを更に含む、請求項2に記載の方法。
  4. 前記選択された使用可能な無線ネットワーク信号が使用すべきでない信号として指定されている場合、次に望ましい順位有する他の使用可能な無線ネットワーク信号を選択し、その対応する無線ネットワークへの接続を確立するために使用するステップを更に含む、請求項3に記載の方法。
  5. 前記選択された使用可能な無線ネットワーク信号が使用すべきでない信号として指定されている場合、前記使用可能な無線ネットワーク信号のリストから、前記無線ネットワーク信号を除外するステップを更に含む、請求項3に記載の方法。
  6. 前記選択された使用可能なネットワーク信号に関する無線ネットワークへの固有の接続命令が前記ローカル設定データベースに格納されているか否かを決定するステップと、
    前記選択された使用可能な無線ネットワーク信号に固有のそれらの接続命令が前記ローカル設定データベースに格納されている場合に、前記対応する無線ネットワークに接続するために、前記格納された接続命令を使用するステップと、
    前記選択された使用可能な無線ネットワーク信号に固有の接続命令が前記ローカル設定データベースに格納されていない場合に、前記対応する無線ネットワークに接続するために、予め定められた一般的な接続命令を使用するステップと、
    を更に含む、請求項2に記載の方法。
  7. 各無線ネットワークに対して、変更された無線ネットワーク設定情報を中央サーバで生成する前記ステップは、
    各無線ネットワークに対する各モバイルデバイスから受信した前記更新されたローカル無線ネットワーク設定情報を、望ましい地理的な位置に制限するステップと、
    各無線ネットワークに対する無線ネットワーク設定情報が以前に前記中央サーバに格納されているか否かを決定し、以前に格納されている場合、各モバイルデバイスから受信した前記ローカル無線ネットワーク設定情報で前記無線ネットワーク設定情報を更新するステップと、
    前記無線ネットワークを特徴付けるため、及び前記変更された無線ネットワーク設定を生成するために、業務ルールを前記無線ネットワークの前記無線ネットワーク設定情報に適用するステップと、
    前記特徴付けられた無線ネットワークが予め定められた設定要件を満たす場合、前記1つ以上の他のモバイルデバイスに分配するために、中央サーバで前記無線ネットワークに対して生成された前記変更された無線ネットワーク設定情報を格納するステップと、
    を更に含む、請求項1に記載の方法。
  8. 1つ以上の他のモバイルデバイスから送信される1つ以上の無線ネットワークの無線ネットワーク設定情報を、前記モバイルデバイスで受信するステップと、
    前記モバイルデバイスのローカルな前記設定データベースに格納された無線ネットワーク設定情報を、前記他のモバイルデバイスから受信した前記無線ネットワーク設定情報で更新するステップと、
    を更に含む、請求項1に記載の方法。
  9. 1つ以上のアクセスポイントから送信される1つ以上の無線ネットワークの無線ネットワーク設定情報を、前記モバイルデバイスで受信するステップと、
    前記モバイルデバイスのローカルな前記設定データベースに格納された無線ネットワーク設定情報を、前記1つ以上のアクセスポイントから受信した前記無線ネットワーク設定情報で更新するステップと、
    を更に含む、請求項1に記載の方法。
  10. 使用可能な無線ネットワーク信号に関するネットワーク識別子が前記ローカル設定データベースに格納される無線ネットワークの除外リストに含まれる無線ネットワークに対応するか否かを決定するステップと、
    前記無線ネットワークの除外リストに現れるネットワーク識別子を有する無線ネットワークへ、前記モバイルデバイスが接続を試行するのを阻止するステップと、
    を更に含む、請求項2に記載の方法。
  11. 使用可能な無線ネットワークを介して、モバイルデバイスをリモートの接続テストサーバに接続する手段と、
    モバイルデバイスのローカルな設定データベースに格納された無線ネットワーク設定情報を、前記接続テストサーバへの接続から取得した情報で更新する手段と、
    前記更新したローカル無線ネットワーク設定情報を、複数のモバイルデバイスから受信した無線ネットワーク設定情報を統合する中央サーバデータベースに送信する手段と、
    1つ以上の無線ネットワークに対して、前記統合された無線ネットワーク設定情報に基づいて、変更された無線ネットワーク設定情報を前記中央サーバで生成する手段と、
    前記変更された無線ネットワーク設定情報を、前記中央サーバから1つ以上のモバイルデバイス送信する手段と、
    前記中央サーバにから受信した前記変更された無線ネットワーク設定情報を使用して、前記1つ以上のモバイルデバイスにローカルに格納された無線ネットワーク設定情報を更新する手段と、
    を備える、動的無線ネットワーク検出システム。
  12. 前記使用可能な無線ネットワークを介して、前記モバイルデバイスを前記リモートの接続テストサーバに接続する前に、モバイルデバイスに使用可能な無線ネットワーク信号のリストを取得する手段と、
    前記使用可能な無線ネットワーク信号を、前記ローカル設定データベースに格納された無線ネットワーク設定情報と比較する手段と、
    前記使用可能な無線ネットワーク信号に関して、格納された無線ネットワーク設定情報を、前記モバイルデバイスにより取得した情報で更新する手段と、
    前記使用可能な無線ネットワーク信号を、前記格納された無線ネットワーク設定情報に基づいて順位付けする手段と、
    前記モバイルデバイスに対して望ましい順位を有する使用可能な無線ネットワーク信号を選択し、対応する無線ネットワークへの接続を確立するために使用する手段と、
    を更に備える、請求項11に記載のシステム。
  13. 前記望ましい順位を有する選択された使用可能な無線ネットワーク信号が使用すべきでない信号として指定されているか否かを決定する手段を更に備える、請求項12に記載のシステム。
  14. 前記選択された使用可能な無線ネットワーク信号が使用すべきでない信号として指定されている場合、次に望ましい順位を有する他の使用可能な無線ネットワーク信号を選択し、対応する無線ネットワークへの接続を確立するために使用する手段を更に備える、請求項13に記載のシステム。
  15. 前記選択された使用可能な無線ネットワーク信号が使用すべきでない信号として指定されている場合、前記使用可能な無線ネットワーク信号のリストから、前記無線ネットワーク信号を除外する手段を更に備える、請求項13に記載のシステム。
  16. 前記選択された使用可能なネットワーク信号に関する無線ネットワークへの固有の接続命令が前記ローカル設定データベースに格納されているか否かを決定する手段と、
    前記選択された使用可能な無線ネットワーク信号に固有のそれらの接続命令が前記ローカル設定データベースに格納されている場合に、前記対応する無線ネットワークに接続するために、前記格納された接続命令を使用する手段と、
    前記選択された使用可能な無線ネットワーク信号に固有の接続命令が前記ローカル設定データベースに格納されていない場合に、前記対応する無線ネットワークに接続するために、予め定められた一般的な接続命令を使用する手段と、
    を更に備える、請求項12に記載のシステム。
  17. 変更された無線ネットワーク設定情報を中央サーバで生成する前記手段は、各無線ネットワークに対して、
    各無線ネットワークに対する各モバイルデバイスから受信した前記更新されたローカル無線ネットワーク設定情報を、望ましく地理的な位置に制限する手段と、
    各無線ネットワークに対する無線ネットワーク設定情報が以前に前記中央サーバに格納されているか否かを決定し、以前に格納されている場合、各モバイルデバイスから受信した前記ローカル無線ネットワーク設定情報で前記無線ネットワーク設定情報を更新する手段と、
    前記無線ネットワークを特徴付けるため、及び前記変更された無線ネットワーク設定を生成するために、業務ルールを前記無線ネットワークの前記無線ネットワーク設定情報に適用する手段と、
    前記特徴付けられた無線ネットワークが予め定められた設定要件を満たす場合、前記1つ以上の他のモバイルデバイスに分配するために、中央サーバで前記無線ネットワークに対して生成された前記変更された無線ネットワーク設定情報を格納する手段と、
    を更に備える、請求項11に記載のシステム。
  18. 1つ以上のモバイルデバイスから送信される1つ以上の他の無線ネットワークの無線ネットワーク設定情報を、前記モバイルデバイスで受信する手段と、
    前記モバイルデバイスのローカルな前記設定データベースに格納された無線ネットワーク設定情報を、前記他のモバイルデバイスから受信した前記無線ネットワーク設定情報で更新する手段と、
    を更に備える、請求項11に記載のシステム。
  19. 1つ以上のアクセスポイントから送信される1つ以上の無線ネットワークの無線ネットワーク設定情報を、前記モバイルデバイスで受信する手段と、
    前記モバイルデバイスのローカルな前記設定データベースに格納された無線ネットワーク設定情報を、前記1つ以上のアクセスポイントから受信した前記無線ネットワーク設定情報で更新する手段と、
    を更に備える、請求項11に記載のシステム。
  20. 使用可能な無線ネットワーク信号に関するネットワーク識別子が前記ローカル設定データベースに格納される無線ネットワークの除外リストに含まれる無線ネットワークに対応するか否かを決定する手段と、
    無線ネットワークの前記除外リストに現れるネットワーク識別子を有する無線ネットワークへ、前記モバイルデバイスが接続を試行するのを阻止する手段と、
    を更に備える、請求項12に記載のシステム。
  21. 1つ以上のモバイルデバイスにインストールされたソフトウェアアクセスモジュールと、
    ネットワークの有用性の情報を前記モバイルデバイスから収集及び統合し、前記モバイルデバイスが遭遇する無線ネットワークへの接続に使用するためのネットワーク設定情報を生成し、前記モバイルデバイスに分配するように構成された中央サーバアーキテクチャと、
    を備える、動的無線ネットワーク検出システム。
  22. 各ソフトウェアクライアントアクセスモジュールは、それぞれのモバイルデバイスが遭遇する1つ以上の無線ネットワークについての無線ネットワーク設定情報を取得し、そのような無線ネットワーク設定情報を前記中央サーバアーキテクチャに送信するように構成され、
    前記中央サーバアーキテクチャは、無線ネットワークについての、様々なモバイルデバイスから収集されて個別に受信される無線ネットワーク設定情報を、各無線ネットワークについての統合された無線ネットワーク設定情報に統合するように構成される、
    請求項21に記載のシステム。
  23. 前記中央サーバアーキテクチャは、更に、前記統合された無線ネットワーク設定情報を、モバイルデバイスにインストールされた各ソフトウェアクライアントアクセスモジュールに分配するように構成される、請求項22に記載のシステム。
JP2013548610A 2011-01-09 2012-01-09 動的無線ネットワーク検出システム、方法及び装置 Pending JP2014507850A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161431028P 2011-01-09 2011-01-09
US61/431,028 2011-01-09
PCT/US2012/020676 WO2012094677A2 (en) 2011-01-09 2012-01-09 System, method and apparatus for dynamic wireless network discovery

Publications (1)

Publication Number Publication Date
JP2014507850A true JP2014507850A (ja) 2014-03-27

Family

ID=46455672

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013548610A Pending JP2014507850A (ja) 2011-01-09 2012-01-09 動的無線ネットワーク検出システム、方法及び装置

Country Status (7)

Country Link
US (1) US8831660B2 (ja)
EP (1) EP2661925A2 (ja)
JP (1) JP2014507850A (ja)
KR (1) KR20130113490A (ja)
CN (1) CN103299683A (ja)
CA (1) CA2819697A1 (ja)
WO (1) WO2012094677A2 (ja)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110210835A1 (en) * 2010-03-01 2011-09-01 Denso Corporation Emergency notification system and method for notifying emergency
US8848660B2 (en) * 2011-03-22 2014-09-30 Amazon Technologies, Inc. Preferred PLMN list for faster service acquisition
US8965917B2 (en) * 2011-06-28 2015-02-24 Amazon Technologies, Inc. Optimizing cell search in a mobile communication system supporting variable channel bandwidths
US9125024B2 (en) * 2011-08-25 2015-09-01 Alcatel Lucent Broadcasting availability of free internet access at wireless access points
US8392585B1 (en) 2011-09-26 2013-03-05 Theranos, Inc. Methods and systems for facilitating network connectivity
US8879471B2 (en) * 2011-10-18 2014-11-04 Nokia Corporation Method, apparatus, and computer program product for filtering list in wireless request
US8879992B2 (en) 2011-10-27 2014-11-04 Nokia Corporation Method, apparatus, and computer program product for discovery of wireless networks
US20130326010A1 (en) * 2012-03-21 2013-12-05 Novatium Solutions Pvt Ltd System and method for monitoring network connections
CN102811483B (zh) * 2012-08-13 2014-11-12 西北工业大学 基于多无线接入点交叉覆盖率的移动用户定位方法
US9576318B2 (en) * 2012-09-25 2017-02-21 Mx Technologies, Inc. Automatic payment and deposit migration
US8885565B2 (en) * 2012-09-28 2014-11-11 Intel Corporation Mixed off-site/on-site prediction computation for reducing wireless reconnection time of a computing device
US9277494B2 (en) 2012-09-28 2016-03-01 Intel Corporation Reducing wireless reconnection time of a computing device
US8799993B1 (en) * 2013-03-14 2014-08-05 Vonage Network Llc Method and apparatus for configuring communication parameters on a wireless device
US9369872B2 (en) 2013-03-14 2016-06-14 Vonage Business Inc. Method and apparatus for configuring communication parameters on a wireless device
KR101497021B1 (ko) * 2013-03-21 2015-03-02 (주)정직한기술 스마트폰을 이용한 ip 카메라 네트워크 설정방법
JP6310208B2 (ja) * 2013-08-08 2018-04-11 株式会社Nttドコモ ユーザ装置、及び動作制御方法
US10097694B1 (en) 2013-09-27 2018-10-09 Google Llc Method and system for moving phone call participation between carrier and data networks
CN104581876A (zh) * 2013-10-18 2015-04-29 中兴通讯股份有限公司 接入网信息管理方法及装置
US9628359B1 (en) 2013-12-23 2017-04-18 Google Inc. Network selection using current and historical measurements
US9736704B1 (en) 2013-12-23 2017-08-15 Google Inc. Providing an overlay network using multiple underlying networks
US9877188B1 (en) 2014-01-03 2018-01-23 Google Llc Wireless network access credential sharing using a network based credential storage service
RU2568282C2 (ru) * 2014-04-18 2015-11-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ обеспечения отказоустойчивости антивирусной защиты, реализуемой в виртуальной среде
CN103986870A (zh) * 2014-05-23 2014-08-13 江苏友上科技实业有限公司 一种多核相机的osd中文显示实现方法
US9565578B2 (en) 2014-06-18 2017-02-07 Google Inc. Method for collecting and aggregating network quality data
US10412230B2 (en) 2014-07-14 2019-09-10 Google Llc System and method for retail SIM marketplace
US9614915B2 (en) 2014-08-18 2017-04-04 Google Inc. Seamless peer to peer internet connectivity
US9622142B2 (en) 2014-08-25 2017-04-11 International Business Machines Corporation System and method en-route wireless network access
US9942900B1 (en) 2014-11-24 2018-04-10 Google Llc System and method for improved band-channel scanning and network switching
CN104683248B (zh) * 2015-02-14 2018-03-06 小米科技有限责任公司 切换工作模式的方法和装置
US9648537B2 (en) 2015-04-17 2017-05-09 Google Inc. Profile switching powered by location
US10021618B2 (en) 2015-04-30 2018-07-10 Google Technology Holdings LLC Apparatus and method for cloud assisted wireless mobility
KR101681651B1 (ko) * 2015-07-16 2016-12-01 주식회사 케이티 데이터베이스 관리 시스템 및 방법
CN105120505B (zh) * 2015-07-28 2019-04-16 小米科技有限责任公司 智能设备接入路由器的方法、装置以及系统
US10257782B2 (en) 2015-07-30 2019-04-09 Google Llc Power management by powering off unnecessary radios automatically
US20170033983A1 (en) * 2015-07-31 2017-02-02 At&T Intellectual Property I, L.P. Wireless terminal, configurable network device and method for use therewith
US11740091B2 (en) 2015-11-05 2023-08-29 Cecelumen, Llc Methods and apparatus for distributing and/or receiving locally relevant information in emergencies
US10415980B1 (en) 2015-11-05 2019-09-17 Cecelumen, Llc Methods and apparatus for communicating and/or storing information to enhance experiences relating to visits to sites such as theme parks, zoos and/or other places of interest
US10721147B2 (en) * 2015-11-05 2020-07-21 Cecelumen, Llc Methods and apparatus for associating content with one or more wireless signals and/or controlling access to content associated with such signals
US9692815B2 (en) 2015-11-12 2017-06-27 Mx Technologies, Inc. Distributed, decentralized data aggregation
CN105472698A (zh) * 2015-11-30 2016-04-06 小米科技有限责任公司 无线网络接入方法及装置
US10225783B2 (en) 2016-04-01 2019-03-05 Google Llc Method and apparatus for providing peer based network switching
US20180152525A1 (en) 2016-11-29 2018-05-31 International Business Machines Corporation System and method for attribute based device and service discovery
JP7029247B2 (ja) * 2017-08-09 2022-03-03 オムロンヘルスケア株式会社 ユーザ端末、サーバ装置、及び通信パラメータの設定方法
CN108259696B (zh) 2018-04-12 2019-12-17 珠海奔图电子有限公司 成像装置控制方法、装置及应用该方法的电子终端
US10517125B1 (en) 2018-05-01 2019-12-24 Amdocs Development Limited System, method, and computer program for selecting a communication network to utilize based on knowledge and artificial intelligence (AI)
CN111200620B (zh) * 2018-11-16 2022-07-19 上海诺基亚贝尔股份有限公司 更新网络连接配置的方法、设备和计算机可读介质
CN112929198B (zh) * 2019-12-06 2022-12-13 北京百度网讯科技有限公司 一种局部热点的处理方法、装置、电子设备及存储介质
KR20220012042A (ko) * 2020-07-22 2022-02-03 삼성전자주식회사 엣지 컴퓨팅 시스템 및 방법
CN112199133B (zh) * 2020-09-01 2021-10-12 北京达佳互联信息技术有限公司 信息聚合方法、装置、电子设备及存储介质
US11871236B2 (en) * 2021-01-20 2024-01-09 Hughes Systique Corporation Method and a system for dynamic discovery of multi-access edge computing (MEC) applications
CN116546551B (zh) * 2023-07-06 2023-10-27 深圳市华曦达科技股份有限公司 无线网络设备检测方法、装置和系统
CN117221283B (zh) * 2023-11-08 2024-04-16 荣耀终端有限公司 一种无线网络连接方法、电子设备和计算机可读存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005323234A (ja) * 2004-05-11 2005-11-17 Matsushita Electric Ind Co Ltd 無線ネットワークシステム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7583645B2 (en) * 2004-09-01 2009-09-01 Intel Corporation Adaptive MAC architecture for wireless networks
EP1849259B1 (en) 2004-11-05 2014-12-17 Kabushiki Kaisha Toshiba Network discovery mechanisms
US7768982B2 (en) 2004-11-05 2010-08-03 Toshiba America Research, Inc. Autonomous and heterogeneous network discovery and reuse
KR100768510B1 (ko) * 2005-10-24 2007-10-18 한국전자통신연구원 다중안테나를 사용하는 직교 주파수 분할 다중 접속시스템의 전송 장치 및 그 방법
US8351946B2 (en) * 2005-12-20 2013-01-08 At&T Intellectual Property I, L.P. Method for seamless communications between a communication device and wireless access points
US8601127B2 (en) * 2006-01-31 2013-12-03 Panasonic Corporation Method for selective service updates for communication networks
US9319967B2 (en) * 2006-05-15 2016-04-19 Boingo Wireless, Inc. Network access point detection and use
EP2122982B1 (en) * 2007-01-18 2016-08-10 Telefonaktiebolaget LM Ericsson (publ) Lightweight mobility architecture
US8516096B2 (en) * 2008-07-09 2013-08-20 In Motion Technology Inc. Cognitive wireless system
US8498230B2 (en) * 2009-03-03 2013-07-30 Nokia Corporation Power management in wireless communication systems

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005323234A (ja) * 2004-05-11 2005-11-17 Matsushita Electric Ind Co Ltd 無線ネットワークシステム

Also Published As

Publication number Publication date
US8831660B2 (en) 2014-09-09
KR20130113490A (ko) 2013-10-15
EP2661925A2 (en) 2013-11-13
WO2012094677A2 (en) 2012-07-12
US20120178488A1 (en) 2012-07-12
CN103299683A (zh) 2013-09-11
CA2819697A1 (en) 2012-07-12
WO2012094677A3 (en) 2012-10-26

Similar Documents

Publication Publication Date Title
JP2014507850A (ja) 動的無線ネットワーク検出システム、方法及び装置
US8687547B2 (en) Method and system for automatic connection to a network
US8126476B2 (en) System and method for mapping wireless access points
US9019945B2 (en) Service-assisted network access point selection
JP5673360B2 (ja) 可搬型ネットワーク接続装置、方法、コンピュータプログラム、および記録媒体
US9332486B2 (en) Method and system for selecting a wireless network
WO2017020553A1 (zh) 一种用于建立无线连接的方法与设备
US9736767B2 (en) Identification-assisted wireless network connections
WO2015154454A1 (zh) 无线网连接方法及装置
EP2174523A1 (en) System and method for mapping wireless access points
US10771957B2 (en) Wireless communication apparatus, communication system and wireless communication apparatus control method to exchange services
US20160294465A1 (en) Information collection system, relay terminal, control method for relay terminal to connect to center system, sensor terminal, and control method for sensor terminal to connect to center system
KR20130031993A (ko) 위치 기반 네트워크 접속 시스템 및 방법
KR20090043216A (ko) 단말 기반의 네트워크 정보 업데이트 장치 및 방법
EP2469945A1 (en) WLAN location services
KR20030047326A (ko) 무선통신망 설정방법 및 무선통신 시스템
CN102957668B (zh) 标识网中获取位置信息的方法和接入服务路由器
TWI569671B (zh) 依據雲收集的連線品質資料的自動連線選擇方法與系統
JP2015053582A (ja) アクセスポイント用無線lan装置及びそれを用いたシステム
JP2018042017A (ja) 無線端末接続管理装置、無線端末接続管理方法、およびプログラム
JP2016171489A (ja) 情報通信システム、条件指定通信制御装置、条件指定通信制御方法、及びプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140701

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20141209