(57)【要約】  クラウドベースのコントローラーによって実行される、複数のアクセスポイントを有するＷｉ−Ｆｉネットワークを制御するシステム及び方法であって、Ｗｉ−Ｆｉネットワークから測定値を取得すること、前記測定値に基づいてＷｉ−Ｆｉネットワークの構成を決定すること、及び、前記構成を実行するために前記Ｗｉ−Ｆｉネットワークに提供すること、を備える。前記構成は、前記Ｗｉ−Ｆｉネットワークのトポロジーを含む。前記トポロジーは、複数のバックホールリンクを介して選択的に相互接続された前記複数のアクセスポイントを含む。
2019509703.tif 000002
【特許請求の範囲】
【請求項１】
クラウドベースのコントローラーによって実行される、複数のアクセスポイントを含むＷｉ−Ｆｉネットワークを制御する方法であって、
前記Ｗｉ−Ｆｉネットワークから測定値を取得すること、
前記測定値に基づいて前記Ｗｉ−Ｆｉネットワークの構成を決定すること、及び、
前記Ｗｉ−Ｆｉネットワークを実現するために、前記Ｗｉ−Ｆｉネットワークに前記構成を提供すること、を備え、
前記構成が、前記Ｗｉ−Ｆｉネットワークのトポロジーを含むとともに、
前記トポロジーが、複数のバックホールリンクを介して選択的に相互接続された前記複数のアクセスポイントを含む、方法。
【請求項２】
前記複数のバックホールリンクは、それぞれ１つのチャンネルと１つのチャンネル幅との１つ又は複数を含み、前記構成は、前記測定値に基づいて前記１つのチャンネルと前記１つのチャンネル幅との１つ又は複数を前記バックホールリンクごとに決定することを更に含む、請求項１に記載の方法。
【請求項３】
前記選択的に相互接続された複数のアクセスポイントは、直接相互に接続されていない少なくとも２つのアクセスポイントが、１つのチャンネルと１つのチャンネル幅との１つ又は複数を含む少なくとも２つのバックホールリンクを介して接続されてなり、前記少なくとも２つのバックホールリンクは、それぞれ異なる動作パラメーターを有している、請求項１に記載の方法。
【請求項４】
前記構成は、前記クラウドベースのコントローラーが実行する最適化処理に基づいて決定されている、請求項１に記載の方法。
【請求項５】
複数のＷｉ−Ｆｉネットワークから追加の測定値を取得することと、前記測定値及び前記追加の測定値を分析し又は学習することと、前記分析又は学習を前記決定することに利用することとを更に含む、請求項１に記載の方法。
【請求項６】
前記クラウドベースのコントローラーを通じたオンボード化処理によって前記複数のアクセスポイントを最初に構成することを更に含み、前記オンボード化処理は、前記Ｗｉ−Ｆｉネットワークと異なる第２のネットワークの前記クラウドベースのコントローラーへの接続を部分的に利用する、請求項１に記載の方法。
【請求項７】
１つのウェブページと１つのモバイルアプリケーションとの１つ又は複数を介して関連する動作状態を伝達するために、前記Ｗｉ−Ｆｉネットワークの前記トポロジーの視覚化処理を提供することを更に含む、請求項１に記載の方法。
【請求項８】
複数のアクセスポイントを含むＷｉ−Ｆｉネットワークを制御するように構成されているクラウドベースのコントローラーであって、
前記Ｗｉ−Ｆｉネットワークに通信可能に接続されているネットワークインターフェースと、
前記ネットワークインターフェースに通信可能に接続されている１つ又は複数のプロセッサーと、
命令が格納されているメモリーと、を備え、
前記命令は、実行されると、前記１つ又は複数のプロセッサーに、
前記Ｗｉ−Ｆｉネットワークから測定値を取得させ、
前記測定値に基づき前記Ｗｉ−Ｆｉネットワークの構成を決定させ、
前記構成を前記Ｗｉ−Ｆｉネットワークに提供させ、
前記構成は、前記Ｗｉ−Ｆｉネットワークのトポロジーと、バックホールリンクを介して選択的に相互接続された前記複数のアクセスポイントと、を含む、
クラウドベースのコントローラー。
【請求項９】
前記バックホールリンクは、それぞれ１つのチャンネルと１つのチャンネル幅と１つの帯域幅との１つ又は複数を含み、前記構成は、前記測定値に基づいて前記１つのチャンネルと１つのチャンネル幅と１つの帯域幅との１つ又は複数をバックホールリンクごとに決定することを更に含む、請求項８に記載のクラウドベースのコントローラー。
【請求項１０】
前記選択的に相互接続された複数のアクセスポイントは、直接相互に接続されていない少なくとも２つのアクセスポイントが、１つのパラメーターと１つのチャンネル幅と１つの帯域幅との１つ又は複数を含む少なくとも２つのバックホールリンクを介して接続されてなり、前記少なくとも２つのバックホールリンクは、それぞれ異なる動作パラメーターを有している、請求項８に記載のクラウドベースのコントローラー。
【請求項１１】
前記構成は、前記クラウドベースのコントローラーによって実行される最適化処理に基づいて決定されている、請求項８に記載のクラウドベースのコントローラー。
【請求項１２】
前記メモリーが命令を格納しており、前記命令は、実行されると、前記１つ又は複数のプロセッサーに対して、複数のＷｉ−Ｆｉネットワークから追加の測定値を取得させる処理と、前記測定値及び前記追加の測定値の分析又は学習をさせる処理と、前記決定することに前記分析処理又は学習処理の結果を利用させる処理と、を更に実行させる、請求項８に記載のクラウドベースのコントローラー。
【請求項１３】
前記メモリーが命令を格納しており、前記命令は、実行されると、前記１つ又は複数のプロセッサーに対して、前記クラウドベースのコントローラーを通じたオンボード化処理によって前記複数のアクセスポイントを最初に構成させる処理を更に実行させ、前記オンボード化処理は、前記Ｗｉ−Ｆｉネットワークと異なる第２のネットワークの前記クラウドベースのコントローラーへの接続を部分的に利用する、請求項８に記載のクラウドベースのコントローラー。
【請求項１４】
前記メモリーが命令を格納しており、前記命令は、実行されると、１つのウェブページと１つのモバイルアプリケーションとの１つ又は複数を介して関連する動作状態を伝達するために、前記１つ又は複数のプロセッサーに対して、前記Ｗｉ−Ｆｉネットワークの前記トポロジーの視覚化を提供する処理を更に実行させる、請求項８に記載のクラウドベースのコントローラー。
【請求項１５】
クラウドベースのコントローラーによって制御されるＷｉ−Ｆｉネットワークであって、
モデム又はルーターに接続される少なくとも１つのゲートウェイノードと、
前記少なくとも１つのゲートウェイノードを通じて前記モデム又はルーターに接続される１つ又は複数のＷｉ−Ｆｉノードと、を含む複数のアクセスポイントを備え、
前記複数のアクセスポイントは、それぞれプロセッサーと、命令を格納しているメモリーと、を含み、
前記命令は、実行されると、前記プロセッサーに、前記Ｗｉ−Ｆｉネットワークからの測定値を実行させ、前記測定値を前記クラウドベースのコントローラーに送信させ、前記クラウドベースのコントローラーから前記測定値に基づく動作パラメーターを受信して実行させ、
前記クラウドベースのコントローラーは、前記測定値に基づいて前記Ｗｉ−Ｆｉネットワークの構成を決定し、
前記構成は、前記Ｗｉ−Ｆｉネットワークのトポロジーからなるとともに、前記トポロジーは、複数のバックホールリンクを介して選択的に相互接続された前記複数のアクセスポイントを含む、
Ｗｉ−Ｆｉネットワーク。
【請求項１６】
前記複数のバックホールリンクは、それぞれ１つのチャンネルと１つのチャンネル幅と１つの帯域幅との１つ又は複数を含み、前記構成は、前記測定値に基づいて、前記１つのチャンネルと１つのチャンネル幅と１つの帯域幅との１つ又は複数をバックホールリンクごとに決定することを更に含む、請求項１７に記載のＷｉ−Ｆｉネットワーク。
【請求項１７】
前記選択的に相互接続された複数のアクセスポイントは、直接相互に接続されていない少なくとも２つのアクセスポイントが、１つのチャンネルと１つのチャンネル幅と１つの帯域幅との１つ又は複数を含む少なくとも２つのバックホールリンクを介して接続されてなり、前記少なくとも２つのバックホールリンクは、それぞれ異なる動作パラメーターを有している、請求項１７に記載のＷｉ−Ｆｉネットワーク。
【請求項１８】
前記構成は、前記クラウドベースのコントローラーが実行する最適化処理に基づいて決定される、請求項１７に記載のＷｉ−Ｆｉネットワーク。
【請求項１９】
前記複数のアクセスポイントは、前記クラウドベースのコントローラーを通じたオンボード化処理によって最初に構成され、前記オンボード化処理は、前記Ｗｉ−Ｆｉネットワークと異なる第２のネットワークの前記クラウドベースのコントローラーへの接続を部分的に利用する、請求項１７に記載のＷｉ−Ｆｉネットワーク。
【請求項２０】
ウェブページとモバイルアプリケーションとの１つ又は複数を介して関連する動作状態を伝達するために、前記Ｗｉ−Ｆｉネットワークの前記トポロジーの視覚化処理が提供されている、請求項１７に記載のＷｉ−Ｆｉネットワーク。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、広くは、無線ネットワーキングシステム及び方法に関する。より具体的には、本開示は、Ｗｉ−Ｆｉネットワークのクラウドベース制御に関する。
【０００２】
関連出願との相互参照
本特許出願は、以下の米国特許仮出願（いずれも２０１６年３月１８日に出願）の優先権を主張するものであり、これらを各々参照により援用する。
2019509703.tif 000003
【背景技術】
【０００３】
Ｗｉ−Ｆｉネットワーク（すなわち、ＩＥＥＥ８０２．１１規格に基づく無線ローカルエリアネットワーク（ＷＬＡＮ））が広く普及している。人々は、家、職場（仕事部屋）、及び公共の場で、例えば学校やカフェ、公園でもＷｉ−Ｆｉネットワークを使用している。Ｗｉ−Ｆｉは、ケーブルを排除し移動性を可能にすることによって、高い利便性を提供する。消費者がＷｉ−Ｆｉで実行する各種アプリケーションは拡大の一途を辿っている。今日、人々は、ビデオトラフィック、オーディオトラフィック、電話での通話、ビデオ会議、オンラインゲーム、及び防犯カメラの映像など、あらゆる種類のメディアの伝送にＷｉ−Ｆｉを使用している。ウェブ閲覧、ファイルのアップロード／ダウンロード、ディスクドライブのバックアップ、及びいくつかのモバイルデバイス用アプリケーションなどの従来のデータサービスも同時に使用されることが多い。実際、Ｗｉ−Ｆｉは、家又は他の場所で、ユーザーデバイスとインターネットとの主接続となっている。接続されたデバイスの大半が、主ネットワーク接続性のためにＷｉ−Ｆｉを使用している。
【０００４】
Ｗｉ−Ｆｉの人気及び高普及率にもかかわらず、消費者の多くは尚もＷｉ−Ｆｉで苦労している。上述したようなリアルタイムのメディアアプリケーションを供給する難題によって、Ｗｉ−Ｆｉのスループット、待機時間、ジッター、及び堅牢性に負担が増大している。調査によると、サービスプロバイダーを介するインターネットへのブロードバンドアクセスは、９９．９％を越える確率で高データレートである。ところが、インターネットが消費者の家の境界まで確実且つ高速に届くにもかかわらず、家の中でＷｉ−Ｆｉを介して接続を単純に分配することの確実性はかなり低く、ユーザー体験満足度が低くなる。
【０００５】
一般的なＷｉ−Ｆｉシステムは、（ｉ）干渉、（ｉｉ）輻輳、及び（ｉｉｉ）カバレッジを含むいくつかの問題により、良好な動作が妨げられる。干渉については、Ｗｉ−Ｆｉの拡大に伴い、重複する異なるＷｉ−Ｆｉネットワーク間の干渉も拡大している。互いの範囲内にある２つのネットワークが高レベルのトラフィックを伝送する場合、互いに干渉して、両ネットワークで実現可能なスループットを低下させる。輻輳については、１つのＷｉ−Ｆｉネットワーク内でいくつかの通信セッションが稼働していることがある。いくつかの要求度の高いアプリケーション、例えば高解像度のビデオストリームが稼働しているとき、ネットワークは飽和状態に達し、ビデオストリームをサポートする十分な容量がなくなることがある。
【０００６】
カバレッジについては、Ｗｉ−Ｆｉ信号は距離につれて、また壁及び他の物体を通過する際に減衰する。多くの環境、例えば住居で、確実なＷｉ−Ｆｉサービスが全ての部屋で得られるとは限らない。基本的な接続が全ての部屋で得られる場合であっても、そうした場所の多くは弱いＷｉ−Ｆｉ信号のせいで低性能となる。住居内の様々な物体、例えば壁、ドア、鏡、人間、及びその辺にあるような物は全てＷｉ−Ｆｉ信号に干渉して減衰させ、データレートを低下させる。
【０００７】
一般的なＷｉ−Ｆｉシステムの性能を改善するために、２つの一般的手法が試されている。第１の手法は、単純に、より強力な単一アクセスポイントを確立して、ある場所をより高い信号強度でカバーしようというものであり、そうすることで所与の場所でより完全なカバレッジ、及びより高いデータレートを提供する。しかし、この手法は、許容送信電力(transmit power)の規制上の限界、及び基本的な自然法則の両方により制限される。そのような強力なアクセスポイントを作成する難易度は、電力の増強によるものであれ、送受信アンテナ数の増加によるものであれ、実現される改善とともに幾何級数的に上昇する。こうした技法を用いた現実的な改善は、６〜１２dBの範囲である。しかし、追加の壁１枚で１２dB減衰することもある。したがって、１２dBのリンクバジェットを得るための相当な難易度及び費用にも関わらず、結果としてのシステムは追加の壁の１枚さえも通過して送信できない可能性がある。もとからあり得たカバレッジの穴は尚も全て存在し、低スループットのデバイスは尚も比較的低いスループットしか実現できず、全体的なシステム容量はごく僅かしか改善されないことになる。それに加えて、この手法は、干渉及び輻輳に関する状況を何ら改善しない。実のところ、送信電力を増強することにより、ネットワーク間の干渉量は上昇する。
【０００８】
第２の手法は、リピーター又はＷｉ−Ｆｉデバイスのメッシュを用いて、ある場所全体でＷｉ−Ｆｉデータをリピートすることである。この手法は、基本的に、より良いカバレッジを実現するより良い手法である。家の中心に１つのリピーターノードを配置するだけでも、１つのＷｉ−Ｆｉ送信波が移動しなければならない距離を半分に減じることができ、Ｗｉ−Ｆｉ信号の各ホップが移動（横断）しなければならない壁の数も半分になる。こうすればリンクバジェットの変化を４０dB以上とすることができ、これは上述した単一アクセスポイントの増強により得ることができる６〜１２dBのタイプの改善と比べて大きな変化である。メッシュネットワークは、Ｗｉ−Ｆｉリピーターを用いるシステムと同様の特性を有する。完全に相互接続されたメッシュは、全リピーターが互いに通信できる能力を追加し、パケットがネットワーク中の任意の経路を複数のホップを介して送達される可能性を開く。
【０００９】
最先端のメッシュ又はリピーターシステムにも多くの限界はある。このようなシステムはローカル制御に依存するので、リピーター又はメッシュノード間で全バックホール通信に同じ周波数を用いるように自己構成する。このため深刻なシステム容量の問題が生じる。パケットを目的地に届けるのに、ネットワーク内で３ホップを要求するシステムがあるとする。３ホップは全て同じ周波数チャンネル上にあるので、また、範囲（範囲は、サポートされる最も低いデータレートの長いレンジによって決定される）内の複数のデバイス中、所与のチャンネルで一度に１つのＷｉ−Ｆｉ電波しか送信できないので、一度に１つのホップしか有効にできない。したがって、この例では、３ホップを介してパケットを送達することは、当該１つのチャンネルでパケットを直接送達する場合の３倍の通信時間がかかることになる。第１のホップでは、パケットがＷｉ−Ｆｉゲートウェイから第１のメッシュノードへと移動しているとき、この家の他の全てのリンクは沈黙していなければならない。同様に、後にパケットが第１のメッシュノードから第２のメッシュノードへと送られるとき、その家の他のどのＷｉ−Ｆｉデバイスも送信することができない。最後に、パケットが第２のメッシュノードから最終目的地へと移動するときも同じである。結局、３ホップのリピートを使用することで、ネットワーク容量が３分の１に減じたことになる。また、単一アクセスポイントの場合と同様に、リピーター又はメッシュ手法は、干渉又は輻輳の問題については役に立たない。前述のように、この技法は、１つのパケット送信が３つの別個の送信となり、全部で３倍の通信時間がかかり、近隣のＷｉ−Ｆｉネットワークに対し３倍の干渉を生じるので、実は干渉を増加させるものである。
【発明の概要】
【００１０】
一例示的実施形態では、最適化のためにＷｉ−Ｆｉシステム内のアクセスポイントを使用して最適化処理のためのデータを収集する方法であって、定期的に、又はクラウドベースのシステムから受信した命令に基づいて、ホームチャンネルにおいて演算処理が行われている間にオンチャンネルスキャニングデータを収集することと、ホームチャンネルを切断して１つ又は複数のオフチャンネルのためにオフチャンネルスキャニングデータを取得することと、の１つ又は複数を実行すること、及び、Ｗｉ−Ｆｉシステムの最適化処理に使用するために、オンチャンネルスキャニングデータとオフチャンネルスキャニングデータとの１つ又は複数に基づいて測定データをクラウドベースのシステムに提供すること、を含み、測定データは、生データと処理済みデータとの１つ又は複数を含む。測定データが処理済みデータである場合、本方法は、ホームチャンネルが分割される時間分割を、直接測定値と当該直接測定値に基づく演算との組合せに基づいて決定することを更に含むことができる。測定データが処理済みデータである場合、本方法は、Ｗｉ−Ｆｉシステム上のパケットの遅延を、アクセスポイントにおける遅延の直接測定値及び統計値の１つによって判定することを更に含むことができる。測定データは、複数の受信信号強度インジケーター（ＲＳＳＩ）、実現可能なデータレート、容量、負荷、エラーレート、遅延、干渉、及び送受信に要した時間の割合を含むことができる。
【００１１】
本開示は、本明細書において様々な図面を参照して例示され説明され、図面中、適宜、類似の参照番号が類似のシステムの構成要素／方法ステップを表示するのに用いられる。
【図面の簡単な説明】
【００１２】
【図１】クラウドベースの制御を有する分散Ｗｉ−Ｆｉシステムのネットワーク図である。
【図２】一般的な単一アクセスポイントシステム、Ｗｉ−Ｆｉメッシュネットワーク、及びＷｉ−Ｆｉリピーターシステムに対する、図１の分散Ｗｉ−Ｆｉシステムの動作の違いを示すネットワーク図である。
【図３】図１の分散Ｗｉ−Ｆｉシステムの構成及び最適化処理のフローチャートである。
【図４】図３の構成及び最適化処理の一部としての最適化への入力及び出力のブロック図である。
【図５】図１の分散Ｗｉ−Ｆｉシステム内のアクセスポイントの機能的構成要素のブロック図である。
【図６】図１の分散Ｗｉ−Ｆｉシステムで用いることができる、サーバー、Ｗｉ−Ｆｉクライアントデバイス、又はユーザーデバイスの機能的構成要素のブロック図である。
【図７】図１の分散Ｗｉ−Ｆｉシステム内のアクセスポイントによるデータ収集処理のフローチャートである。
【図８】ホームチャンネルなどのチャンネルに関する時間割合のグラフである。
【図９】図１の分散Ｗｉ−Ｆｉシステム内のアクセスポイントが、クラウド内の構成サービス及び統計サービスと通信している、ネットワークのネットワーク図である。
【図１０Ａ】図１の分散Ｗｉ−Ｆｉシステムが初めに外部サービスに接続される、ネットワークのネットワーク図である。
【図１０Ｂ】外部サービスによってゲートウェイアクセスポイントが構成される、図１０Ａのネットワークのネットワーク図である。
【図１１Ａ】ゲートウェイアクセスポイントが他のアクセスポイントをオンボード化し、Ｗｉ−Ｆｉサービスの供給（プロビジョニング）を開始する、図１０Ａ及び図１０Ｂのネットワークのネットワーク図である。
【図１１Ｂ】別のアクセスポイントが他のアクセスポイントをオンボード化し、Ｗｉ−Ｆｉサービスの供給を開始する、図１０Ａ、図１０Ｂ、及び図１１Ａのネットワークのネットワーク図である。
【図１２】別のアクセスポイントが追加のアクセスポイントをオンボード化し、Ｗｉ−Ｆｉサービスの供給を開始する、図１０Ａ、図１０Ｂ、図１１Ａ、及び図１１Ｂのネットワークのネットワーク図である。
【図１３】分散Ｗｉ−Ｆｉシステム内の通信を確立するための、Ｗｉ−Ｆｉ設定処理のフローチャートである。
【図１４】クラウドサービスへの指向性のために、中央管理されるレジストリに接続する様々な分散Ｗｉ−Ｆｉシステムのネットワーク図である。
【図１５】分散Ｗｉ−Ｆｉシステムが中に構成された２軒の隣接する住居のネットワーク図である。
【図１６】分散Ｗｉ−Ｆｉシステムのために無線デバイスを要求するための設定のネットワーク図である。
【図１７】ユーザーデバイスを用いて分散Ｗｉ−Ｆｉシステム内のアクセスポイントを要求する要求方法のフローチャートである。
【図１８】アクセスポイント（「ポッド」）を探しているモバイルアプリのスクリーンショットである。
【図１９】複数のアクセスポイントを見つけたモバイルアプリのスクリーンショットである。
【図２０】１つのアクセスポイントを探し、当該アクセスポイントを一意に識別することを目的とする、モバイルアプリのスクリーンショットである。
【図２１】当該アクセスポイントを一意に命名するモバイルアプリのスクリーンショットである。
【図２２】各アクセスポイントが一意に要求され命名されている分散Ｗｉ−Ｆｉシステムの現在の構成を示しているモバイルアプリのスクリーンショットである。
【図２３】第１のトポロジー状態及び第２のトポロジー状態にある３ノードＷｉ−Ｆｉネットワークのネットワーク図である。
【図２４】第１のトポロジー状態及び第２のトポロジー状態にある６ノードＷｉ−Ｆｉネットワークのネットワーク図である。
【図２５】操作を順次実行する、図２４のＷｉ−Ｆｉネットワークのトポロジー変更の第１の処理のフローチャートである。
【図２６】並列の変更を実行する、図２４のＷｉ−Ｆｉネットワークのトポロジー変更の第２の処理のフローチャートである。
【図２７】図２４のＷｉ−Ｆｉネットワーク及び図２６の第１の処理の例示的操作のネットワーク図である。
【図２８】図２４のＷｉ−Ｆｉネットワーク及び図２６の第２の処理の例示的操作のネットワーク図である。
【図２９】１つ又は複数の分散Ｗｉ−Ｆｉシステムに接続されたクラウド構成サービスを介してのファームウェアアップデートのネットワーク図である。
【図３０】分散Ｗｉ−Ｆｉネットワークのファームウェアアップグレード処理のフローチャートである。
【図３１】複数の時間スケールで実行される分散Ｗｉ−Ｆｉネットワークの最適化方法のフローチャートである。
【図３２】最適化と関連付けられる低速及び高速制御ループを実施するためのクラウドシステムのブロック図である。
【図３３】２つのアクセスポイント同士の相対的な容量負荷のグラフである。
【図３４】最適化のための混合整数線形計画（ＭＩＬＰ）の一例の方程式である。
【図３５】まとめて最適化される家の数を減じ、それによって演算の複雑性を管理可能なものにするためのクラスター化の一例の図である。
【図３６】例示的な場所における最適化の出力のサンプルのグラフである。
【図３７】ツリー構造の最適化の出力のグラフである。
【図３８】Ｌ２トンネルを用いて２つのアクセスポイント間に形成されたバックホールリンクを有するＷｉ−Ｆｉネットワークのネットワーク図である。
【図３９】図３８のＷｉ−Ｆｉネットワークのトンネル確立方法のフローチャートである。
【図４０】Ｌ２トンネルでブリッジインターフェースを接続する図３８のＷｉ−Ｆｉネットワークのネットワーク図である。
【図４１】Ｗｉ−Ｆｉクライアントデバイス間のデータ経路を例示する、図３８のＷｉ−Ｆｉネットワークのネットワーク図である。
【図４２】任意の分散Ｗｉ−Ｆｉネットワークでクライアント関連付けを遠隔で制御するために使用されるクライアントステアリング処理のフロー図である。
【図４３】クラウドコントローラーによる、分散Ｗｉ−ＦｉシステムなどのＷｉ−Ｆｉネットワークの推定及び学習処理のフローチャートである。
【図４４】家庭用のＷｉ−Ｆｉネットワークのネットワーク図である。
【図４５】図４４のＷｉ−Ｆｉネットワークの視覚化及びトラブルシューティングのためにモバイルアプリケーション又はウェブページと関連付けられたＧｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ（ＧＵＩ）のスクリーンショットである。
【図４６】図４４のＷｉ−Ｆｉネットワークのゲストアクセス処理のフローチャートである。
【図４７】図４４のＷｉ−Ｆｉネットワークの、管理者によって開始されるゲストアクセス処理のフローチャートである。
【発明を実施するための形態】
【００１３】
ここでまた、様々な例示的実施形態では、本開示は、分散Ｗｉ−Ｆｉネットワークの最適化を可能にするデータ収集システム及び方法に関する。システム及び方法の目的は、単一ＡＰ（アクセスポイント）、リピーター、又は複数のメッシュノードを有するＷｉ−Ｆｉネットワークよりも優れた性能を有するＷｉ−Ｆｉネットワークを提供することである。システム及び方法は、クラウドベースの制御に基づき自己最適化する複数のアクセスポイント（ノード）を有する分散Ｗｉ−Ｆｉシステムを含む。この自己最適化は、動作環境に基づきリアルタイムで複数のアクセスポイントのトポロジー及び構成を適合させる。複数のアクセスポイントは、バックホールリンクを介して互いに、及び、クライアントリンクを介してＷｉ−Ｆｉクライアントデバイスと通信し、各バックホールリンク及び各クライアントリンクは、最適化に基づき異なるチャンネルを使用することができるので、前述のＷｉ−Ｆｉメッシュ又はリピーターシステムの限界を回避することができる。一例示的態様では、分散Ｗｉ−Ｆｉシステムは、（Ｗｉ−Ｆｉメッシュ又はリピーターシステムなどの一般的な展開に対し）比較的多数のアクセスポイントを含む。例えば、多数のアクセスポイントは、典型的な住居では、６〜１２以上であってもよい。多数のアクセスポイントがあれば、アクセスポイントとＷｉ−Ｆｉクライアントデバイスとの間の距離と同様のスケールで、任意の２つのアクセスポイント間の距離が短くなる。したがって、カバレッジの問題を回避しながら信号強度が維持され、また、トポロジー及び構成の最適化により輻輳及び干渉が最小化される。このように、分散Ｗｉ−Ｆｉシステムは、前述の一般的なＷｉ−Ｆｉシステムにおける３種の限界の全てに対処するものである。
【００１４】
分散Ｗｉ−Ｆｉ設定システム及び方法は、アクセスポイント、すなわち分散Ｗｉ−Ｆｉシステム内のノードを、いかにしてネットワークにアクセスさせるかについて、様々な手法を説明する。つまり、分散Ｗｉ−Ｆｉ設定システム及び方法は、ノードがいかにしてクラウドと最初に通信するかを説明する。分散Ｗｉ−Ｆｉ設定システム及び方法は、分散Ｗｉ−Ｆｉシステム内のノードのオンボード化処理を説明する。分散Ｗｉ−Ｆｉ設定システム及び方法は、外部プロビジョニングアプリケーションによって、クラウドから制御される分散Ｗｉ−Ｆｉソリューション内のノード間の安全且つ確実な接続を確立する問題に対処する。これはいくつかの場面で適用可能である。これは分散Ｗｉ−Ｆｉシステムを確立する初期処理で使用することができる。これは新たなノードが既存のネットワークに加わるときに使用することができる。これは、ノード間の接続が再組織されるので、ネットワークのトポロジーを変更するときに使用することができる。また、これはネットワークが停電又は他の事象により中断された場合に、ネットワークを再確立するために用いることができる。
【００１５】
分散Ｗｉ−Ｆｉ設定システム及び方法は、アクセスポイント、すなわち分散Ｗｉ−Ｆｉシステム内のノードが、いかにして分散Ｗｉ−Ｆｉシステム内で発見され、要求され、区分されるかについて、様々な手法を説明する。具体的には、本システム及び方法は、モバイルデバイス、ユーザーデバイス、Ｗｉ−Ｆｉクライアントデバイス等（まとめてモバイルデバイスと呼ばれる）を用いて分散Ｗｉ−Ｆｉシステム内の各ノード（アクセスポイント）を発見し、要求し、分散Ｗｉ−Ｆｉシステムのクラウドコントローラーとして働くクラウドサービスと通信する。モバイルデバイスは、Ｂｌｕｅｔｏｏｔｈ（ブルートゥース、登録商標）などのローカル又はパーソナル無線エリアネットワークによりノードと、またロングタームエボリューション（ＬＴＥ）などの別のネットワークによりクラウドコントローラーと、通信することができる。
【００１６】
最適化システム及び方法は、分散Ｗｉ−Ｆｉシステムからの入力を受信し、最適化を実行し、分散Ｗｉ−Ｆｉシステムの動作パラメーターを含む出力を提供する。入力は、各Ｗｉ−Ｆｉクライアントデバイスにより要求される複数のトラフィック負荷、各可能なリンクの信号強度及びデータレート、各リンクのパケットエラーレート、ネットワーク内インターフェアラー（interferer）の強度及び負荷、並びにネットワーク外インターフェアラーの強度及び負荷を含むことができる。出力は、複数のチャンネル及び帯域幅（ＢＷ）の選択、経路及びトポロジー、送信要求／送信可（ＲＴＳ／ＣＴＳ）設定、送信機（ＴＸ）電力、クリアチャンネル評価、クライアント関連付けステアリング、帯域ステアリング、拡張分散調整機能（ＥＤＣＦ）優先度及びＡｒｂｉｔｒａｔｉｏｎ  Ｉｎｔｅｒ−Ｆｒａｍｅ  Ｓｐａｃｉｎｇ（ＡＩＦＳ）などのＱｏＳパラメーター、並びにＷｉ−Ｆｉコンテンションウィンドウ設定を含むことができる。最適化は、入力に基づいて、多様な方法で定めることができる目的関数を最大化し、実際の性能（リアルワールドパフォーマンス（Ｒｅａｌ  Ｗｏｒｌｄ  Ｐｅｒｆｏｒｍａｎｃｅ））及び使用の好みを反映することができる。特に、各Ｗｉ−Ｆｉクライアントデバイスが所望する負荷を考慮して、負荷比の余剰容量を最大化する目的関数が有益である。最適化の目的は、実施するとＷｉ−Ｆｉネットワークの動作を混乱させるような新トポロジーの不利益も含む場合がある。オプティマイザーの出力は、最適化に基づくＷｉ−Ｆｉシステムの動作パラメーターを含むことができる。
【００１７】
分散Ｗｉ−Ｆｉシステム
図１を参照すると、一例示的実施形態では、ネットワーク図が、クラウド１２ベースの制御を有する分散Ｗｉ−Ｆｉシステム１０を説明する。分散Ｗｉ−Ｆｉシステム１０は、ＩＥＥＥ８０２．１１プロトコル及びその変更された形態にしたがって動作することができる。分散Ｗｉ−Ｆｉシステム１０は、ある場所、例えば住居、職場その他などの全体に分散させることができる複数のアクセスポイント１４（アクセスポイント１４Ａ〜１４Ｈと表示する）を含む。つまり、分散Ｗｉ−Ｆｉシステム１０は、単一アクセスポイント、リピーター、又はメッシュシステムによるサービスが非効率又は非実用的なあらゆる物理的な場所での動作を意図している。本明細書で説明するように、分散Ｗｉ−Ｆｉシステム１０は、ネットワーク、システム、Ｗｉ−Ｆｉネットワーク、Ｗｉ−Ｆｉシステム、クラウドベースのシステム等と呼ばれることもある。アクセスポイント１４は、ノード、アクセスポイント、Ｗｉ−Ｆｉノード、Ｗｉ−Ｆｉアクセスポイント等と呼ばれることもある。アクセスポイント１４の目的は、Ｗｉ−Ｆｉクライアントデバイス１６（Ｗｉ−Ｆｉクライアントデバイス１６Ａ〜１６Ｅと表示する）へのネットワーク接続性を提供することである。Ｗｉ−Ｆｉクライアントデバイス１６は、クライアントデバイス、ユーザーデバイス、クライアント、Ｗｉ−Ｆｉクライアント、Ｗｉ−Ｆｉデバイス等と呼ばれることもある。
【００１８】
典型的な住居での展開では、分散Ｗｉ−Ｆｉシステム１０は、１軒の家の中に３〜１２のアクセスポイントを含むことができる。多数のアクセスポイント１４（分散Ｗｉ−Ｆｉシステム１０内のノードと呼ばれることもある）によって、任意のアクセスポイント１４間の距離が、Ｗｉ−Ｆｉサービスを必要とする任意のＷｉ−Ｆｉクライアントデバイス１６までの距離と同様、常に短いことが保証される。つまり、分散Ｗｉ−Ｆｉシステム１０の１つの目的は、アクセスポイント１４間の距離が、各Ｗｉ−Ｆｉクライアントデバイス１６と関連付けられたアクセスポイント１４との間の距離と同様のサイズとなることである。このような短距離によって、消費者の家が隅々まで良好にＷｉ−Ｆｉ信号にカバーされることが保証される。また、分散Ｗｉ−Ｆｉシステム１０内の任意の所与のホップが短距離になりほとんど壁を貫通しないことも保証される。その結果、分散Ｗｉ−Ｆｉシステム１０内の各ホップの信号強度は非常に高くなり、高データレートの使用が可能になり、堅牢な動作が提供される。尚、当業者であれば、Ｗｉ−Ｆｉクライアントデバイス１６が、モバイルデバイス、タブレット、コンピューター、家電、家庭用エンターテメントデバイス、テレビ、又は任意のネットワーク可能デバイスであってもよいことを認識しよう。外部ネットワーク接続性のために、１つ又は複数のアクセスポイント１４がモデム／ルーター１８に接続されていてもよく、当該モデム／ルーター１８はケーブルモデム、デジタル加入者ループ（ＤＳＬ）モデム、又は分散Ｗｉ−Ｆｉシステム１０と関連付けられた物理的な場所への外部ネットワーク接続性を提供する任意のデバイスであってもよい。
【００１９】
優れたカバレッジを提供する一方で、多数のアクセスポイント１４（ノード）には同調の問題がある。全てのアクセスポイント１４を正しく構成させ高効率で通信させるには、中央制御が必要である。この制御は、好ましくはサーバー２０で実行され、当該サーバー２０にはインターネット（クラウド１２）経由で到達でき、ユーザーデバイス２２で稼動するアプリケーション（「アプリ」）を通じるなどして遠隔アクセスが可能である。分散Ｗｉ−Ｆｉシステム１０を稼働させることは、したがって、「クラウドサービス」として一般的に知られているものとなる。サーバー２０は、クラウド１２を通じて、測定データを受信し、この測定データを分析し、それに基づき分散Ｗｉ−Ｆｉシステム１０内のアクセスポイント１４を構成するように、構成されている。サーバー２０はまた、どのアクセスポイント１４が各Ｗｉ−Ｆｉクライアントデバイス１６と接続（関連）するかを決定するように構成されることができる。つまり、一例示的態様では、分散Ｗｉ−Ｆｉシステム１０は、アクセスポイント１４及びＷｉ−Ｆｉクライアントデバイス１６の動作を最適化し、構成し、監視する、（クラウドベースのコントローラー又はクラウドサービスによる）クラウドベースの制御を含む。このクラウドベースの制御は、アクセスポイントにローカルでログインするなどによる、ローカル構成に依存する一般的な動作とは対照的である。分散Ｗｉ−Ｆｉシステム１０では、制御及び最適化はアクセスポイント１４へのローカルログインを必要とせず、ユーザーデバイス２２（又はローカルＷｉ−Ｆｉクライアントデバイス１６）が、別個のネットワーク（分散Ｗｉ−Ｆｉシステム１０とは異なるネットワーク）（例えば、ＬＴＥ、別のＷｉ−Ｆｉネットワーク等）を介するなどして、クラウド１２内のサーバー２０と通信する。
【００２０】
アクセスポイント１４は、接続性のために無線リンク及び有線リンクの両方を含むことができる。図１の例では、アクセスポイント１４Ａは、モデム／ルーター１８への例示的なギガビットイーサネット（ＧｂＥ、イーサネットは登録商標）の有線接続を有する。任意選択により、アクセスポイント１４Ｂもまた、重複又は負荷のバランスをとるためなどに、モデム／ルーター１８への有線接続を有している。アクセスポイント１４Ａ、１４Ｂはまた、モデム／ルーター１８への無線接続を有することができる。アクセスポイント１４は、クライアント接続性のための無線リンク（クライアントリンクと呼ばれる）、及びバックホールのための無線リンク（バックホールリンクと呼ばれる）を有することができる。分散Ｗｉ−Ｆｉシステム１０が一般的なＷｉ−Ｆｉメッシュネットワークと異なる点は、クライアントリンクとバックホールリンクとが必ずしも同じＷｉ−Ｆｉチャンネルを共有しないので、干渉が低下することである。つまり、アクセスポイント１４は少なくとも２つのＷｉ−Ｆｉ無線チャンネルをサポートすることができ、これらのチャンネルはクライアントリンク又はバックホールリンクのどちらにも対応できるように自在に用いることができ、また、モデム／ルーター１８への接続性のために、又は他のデバイスに接続するために、少なくとも１つの有線ポートを有していてもよい。分散Ｗｉ−Ｆｉシステム１０では、小サブセットのアクセスポイント１４だけがモデム／ルーター１８への直接的な接続性を必要とし、接続されていないアクセスポイント１４は接続しているアクセスポイント１４へのバックホールリンクを通じてモデム／ルーター１８と通信している。
【００２１】
分散Ｗｉ−Ｆｉシステムの一般的なＷｉ−Ｆｉシステムとの比較
図２を参照すると、一例示的実施形態では、ネットワーク図が、一般的な単一アクセスポイントシステム３０、Ｗｉ−Ｆｉメッシュネットワーク３２、及びＷｉ−Ｆｉリピーターネットワーク３３に対する分散Ｗｉ−Ｆｉシステム１０の動作の違いを説明している。単一アクセスポイントシステム３０は、ある場所（例えば家）にある全てのＷｉ−Ｆｉクライアントデバイス１６に対応するように中心部に配置され得る単一の強力なアクセスポイント３４に依存する。また、本明細書で先に説明したように、典型的な住居では、単一アクセスポイントシステム３０は、アクセスポイント３４とＷｉ−Ｆｉクライアントデバイス１６との間に、いくつかの壁、床等を有し得る。それに加えて、単一アクセスポイントシステム３０は単一チャンネルで動作するので、近隣システムからの干渉が生じ得る。Ｗｉ−Ｆｉメッシュネットワーク３２は、Ｗｉ−Ｆｉカバレッジを分散する複数メッシュノード３６を有することにより、単一アクセスポイントシステム３０の問題の一部を解決する。具体的には、Ｗｉ−Ｆｉメッシュネットワーク３２は、完全に相互接続されているメッシュノード３６に基づき動作し、チャンネルＸなどのチャンネルを各メッシュノード３６とＷｉ−Ｆｉクライアントデバイス１６との間で共有している。つまり、Ｗｉ−Ｆｉメッシュネットワーク３２は、完全に相互接続されたグリッドであり、同じチャンネルを共有し、メッシュノード３６とＷｉ−Ｆｉクライアントデバイス１６との間で複数の異なる経路を可能にしている。しかし、Ｗｉ−Ｆｉメッシュネットワーク３２は同一のバックホールチャンネルを用いるので、ソースポイント間で全てのホップが、データ送達に必要なホップ数によってネットワーク容量を分割する。例えば、ビデオをＷｉ−Ｆｉクライアントデバイス１６にストリーミングするのに３ホップを要する場合、Ｗｉ−Ｆｉメッシュネットワーク３２には１／３の容量しか残らない。Ｗｉ−Ｆｉリピーターネットワーク３３は、Ｗｉ−Ｆｉリピーター３８に無線接続されたアクセスポイント３４を含む。Ｗｉ−Ｆｉリピーターネットワーク３３は、アクセスポイント１４とＷｉ−Ｆｉクライアントデバイス１６との間に最大で１つのＷｉ−Ｆｉリピーター３８が存在しているスター状トポロジーである。チャンネルの観点からは、アクセスポイント３４は第１のチャンネル、Ｃｈ．ＸでＷｉ−Ｆｉリピーター３８と通信でき、Ｗｉ−Ｆｉリピーター３８は第２のチャンネル、Ｃｈ．ＹでＷｉ−Ｆｉクライアントデバイス１６と通信できる。
【００２２】
分散Ｗｉ−Ｆｉシステム１０は、全接続に同一チャンネルを要するＷｉ−Ｆｉメッシュネットワーク３２の問題を、様々なホップに異なるチャンネル又は帯域を用いることにより解決し（尚、一部のホップが同じチャンネル／帯域を使用してもよいが、必須ではない）、Ｗｉ−Ｆｉ速度の低下を防止する。例えば、分散Ｗｉ−Ｆｉシステム１０は、アクセスポイント１４間で、及びＷｉ−Ｆｉクライアントデバイス１６との間で異なるチャンネル／帯域（例えば、Ｃｈ．Ｘ、Ｃｈ．Ｙ、Ｃｈ．Ｚ、Ｃｈ．Ａ）を使用することができ、また、分散Ｗｉ−Ｆｉシステム１０は、クラウド１２による構成及び最適化に基づき、必ずしも全てのアクセスポイント１４を使用しなくてよい。分散Ｗｉ−Ｆｉシステム１０は、複数のアクセスポイント１４を提供することにより、単一アクセスポイントシステム３０の問題を解決する。分散Ｗｉ−Ｆｉシステム１０は、Ｗｉ−Ｆｉクライアントデバイス１６とゲートウェイとの間に最大でも２つの無線ホップしか許可しないＷｉ−Ｆｉリピーターネットワーク３３のようなスター状トポロジーに縛られない。また、分散Ｗｉ−Ｆｉシステム１０は、Ｗｉ−Ｆｉクライアントデバイス１６とゲートウェイとの間に１つの経路があるツリー型トポロジーを形成するが、Ｗｉ−Ｆｉリピーターネットワーク３３とは違って複数の無線ホップを可能とする。
【００２３】
Ｗｉ−Ｆｉは、共有型単信プロトコル、つまりネットワーク内ではいかなるときも２つのデバイス間の１つの会話だけが発生可能であり、１つのデバイスが発信している間、その他のデバイスはリッスンしていなくてはならない。異なるＷｉ−Ｆｉチャンネルを用いることにより、分散Ｗｉ−Ｆｉシステム１０内で複数の同時の会話が同時に生じることが可能になる。アクセスポイント１４間で異なるＷｉ−Ｆｉチャンネルを選択することにより、干渉及び輻輳が回避される。サーバー２０は、クラウド１２を通じて、最適化されたチャンネルホップソリューションのアクセスポイント１４を自動的に構成する。分散Ｗｉ−Ｆｉシステム１０は、消費者及び彼らのＷｉ−Ｆｉクライアントデバイス１６の常に変化し続ける需要をサポートするように、経路及びチャンネルを選択することができる。分散Ｗｉ−Ｆｉシステム１０の手法は、Ｗｉ−Ｆｉ信号がバックホール接続性でもクライアント接続性でも遠方まで移動する必要がないことを保証するものである。したがって、Ｗｉ−Ｆｉ信号は強いままであり、Ｗｉ−Ｆｉメッシュネットワーク３２又はＷｉ−Ｆｉリピーターのように同じチャンネルで通信することによる干渉が回避される。一例示的態様では、クラウド１２内のサーバー２０は、最高のユーザー体験のためにチャンネル選択を最適化するように構成されている。
【００２４】
分散Ｗｉ−Ｆｉシステムの構成及び最適化処理
図３を参照すると、一例示的実施形態では、フローチャートが分散Ｗｉ−Ｆｉシステム１０の構成及び最適化処理５０を説明する。具体的には、構成及び最適化処理５０は、分散Ｗｉ−Ｆｉシステム１０の高効率な動作を可能にする様々なステップ５１〜５８を含む。これらのステップ５１〜５８は、適宜、異なる順で、場合によっては繰り返し実行して、変化する条件に分散Ｗｉ−Ｆｉシステム１０を適合させることができる。第１に、各アクセスポイント１４が電気ソケットに挿し込まれ、オンボード化される（ステップ５１）。分散Ｗｉ−Ｆｉシステム１０では、サブセットのアクセスポイント１４だけがモデム／ルーター１８に有線接続され（又は任意選択によりモデム／ルーター１８に無線接続され）、有線接続性のないアクセスポイント１４は、クラウド１２に接続するためにオンボード化されなくてはならない。オンボード化ステップ５１は、新たにインストールされたアクセスポイント１４が分散Ｗｉ−Ｆｉシステム１０に確実に接続して、このアクセスポイントがコマンドを受信でき、データをサーバー２０に提供できるようにする。オンボード化ステップ５１は、正しいサービスセット識別子（ＳＳＩＤ）（ネットワークＩＤ）及び関連付けられたセキュリティ鍵を有するアクセスポイントを構成することを含むことができる。一例示的実施形態では、オンボード化ステップ５１は、アクセスポイント１４とユーザーデバイス２２との間で、Ｂｌｕｅｔｏｏｔｈ又は同等の接続性により実行されて、ユーザーがＳＳＩＤ、セキュリティ鍵等を提供することを可能にする。オンボード化されると、アクセスポイント１４は、構成のために、分散Ｗｉ−Ｆｉシステム１０経由でサーバー２０との通信を開始することができる。
【００２５】
第２に、アクセスポイント１４は、測定値を取得し情報を収集して、ネットワーキング設定の最適化を可能にする（ステップ５２）。収集された情報は、全ノード間の、並びに全ノードと全Ｗｉ−Ｆｉクライアントデバイス１６との間の、信号強度及びサポート可能なデータレートを含むことができる。具体的には、測定ステップ５２は、各アクセスポイント１４がデータを収集することにより実行される。干渉量、分散Ｗｉ−Ｆｉシステム１０上で動作する異なるアプリケーションにより要求される負荷（スループット）等の様々な追加の測定を実行することができる。第３に、測定ステップ５２からの測定値及び収集された情報がクラウド１２内のサーバー２０に提供される（ステップ５３）。ステップ５１〜５３は、分散Ｗｉ−Ｆｉシステム１０の場所で実行される。
【００２６】
ステップ５２、５３のこれらの測定値は、各クライアントにより要求されるトラフィック負荷、各ノード間で及び各ノードから各クライアントへの間で維持され得るデータレート、ノード間の及びノードとクライアントとの間のリンクのパケットエラーレート等を含むことができる。それに加えて、ノードは、ネットワークに影響する干渉レベルの測定を行う。これは、他のクラウド制御の分散Ｗｉ−Ｆｉシステム（「ネットワーク内インターフェアラー」）からの干渉、及び制御可能なネットワークの一部ではないデバイスからの干渉（「ネットワーク外インターフェアラー」）を含む。これらのタイプのインターフェアラーを区別することは重要である。ネットワーク内インターフェアラーは、クラウドシステムにより制御可能なので、ネットワーク内システム全体の大きな最適化に含まれ得る。ネットワーク外インターフェアラーは、クラウドからは制御できないので、これらの干渉を別のチャンネルに移動させたり別途変更したりすることはできない。システムはこれらを変更するのではなく、これらに適合しなければならない。これらのネットワーク外インターフェアラーは、クラウド制御されないＷｉ−Ｆｉネットワーク、及びＷｉ−Ｆｉにより使用される周波数で送信するＢｌｕｅｔｏｏｔｈデバイス、ベビーモニター、コードレス電話その他などの非Ｗｉ−Ｆｉデバイスを含む。
【００２７】
別の重要な入力は、ネットワークを移動するパケットの遅延である。これらの遅延は、直接の測定値から、Ｗｉ−Ｆｉネットワークのゲートウェイに到着したパケットをタイムスタンプし、それらが最後のノードを離れるまでの経過時間を測定することによって導出することができる。しかし、そのような測定は、ノード間のある程度の時刻同期を要することになる。別の手法は、各ノードを通過する遅延の統計値を個々に測定する、というものになる。次に、ネットワーク全体の総遅延の平均及び何らかの仮定を与えられた遅延の分布を各ノードの個々の遅延統計値に基づき計算することができる。こうして、遅延は、最適化において最小化されるべきパラメーターとなることができる。また、各ノードが送信及び受信に費やす時間を把握することも最適化にとっては有用である。これは、送信又は受信された情報の量とともに、様々なリンクが維持している平均データレートを判定するために用いることができる。
【００２８】
第４に、クラウド１２内のサーバー２０は、これらの測定値を用いて、分散Ｗｉ−Ｆｉシステム１０の最適化アルゴリズムを実行する（ステップ５４）。最適化アルゴリズムは、ネットワーク動作にとって最良のパラメーターを出力する。これらは、各ノードがクライアントリンク及びバックホールリンク用に動作すべきチャネルの選択、ノードが使用すべきこれら各チャンネルの帯域幅、ノード間の接続のトポロジー及びそのトポロジーによるネットワーク内の任意のソースから任意の目的地へのパケットの経路、各クライアントが接続すべき適切なノード、各クライアントが接続すべき帯域等を含む。
【００２９】
具体的には、最適化は、ノードからの測定値を、最大化される目的関数への入力として用いる。各リンクの容量は、移動したデータの量（負荷）、及び干渉のせいでメディアがビジーである時間の量を検証することによって導出することができる。これはまた、リンクを通過して移動したデータと送信キューがビジーだった時間割合との比をとることによって導出することもできる。この容量は、リンクに飽和状態になるまで負荷がかかり、可能な限りのデータ量を移動させると仮定した場合に実現され得る仮想スループットを表す。
【００３０】
第５に、最適化の出力が、分散Ｗｉ−Ｆｉシステム１０を構成するのに用いられる（ステップ５５）。ノード及びクライアントデバイスは、最適化の出力に基づきクラウドから構成される必要がある。特定の技法が用いられて速やかに構成がなされ、既に動作しているネットワークの中断が最小化される。最適化の出力は、分散Ｗｉ−Ｆｉシステム１０の動作パラメーターである。これには、各ノードが動作する周波数チャンネル、及び使用されるチャンネルの帯域幅が含まれる。８０２．１１ａｃ規格は、チャンネル帯域幅２０、４０、８０、及び１６０MHzを可能にする。使用する帯域幅の選択は、分散Ｗｉ−Ｆｉシステム１０において、より高いデータレート（広いチャンネル帯域幅）をサポートすることと、用いる異なる非干渉チャンネルの数が多いこととの間のトレードオフである。最適化は、様々なユーザーのアプリケーションにより要求される負荷をサポートする可能な限り低いチャンネル帯域を各リンクで使用させようとする。必要十分な最狭のスループットチャンネルを用いることにより、分散Ｗｉ−Ｆｉシステム１０内の他のリンク用に最大数の非干渉チャンネルが残される。
【００３１】
最適化は、上述したように目的関数を最大化することにより、入力から出力を生成する。多くの異なる可能な目的関数がある。１つの目的は、全てのクライアントに提供される総スループットを最大化することであり得る。このゴールの短所は、最大の総スループットの実現が、既に良好に通信中のクライアントの性能を改善するために一部のクライアントを完全に枯渇させて、なされ得ることである。別の目的は、最悪の状況にあるネットワーク内のクライアントの性能をできる限り高めることであり得る（クライアントへの最小のスループットの最大化）。このゴールは、公平性を高めるのには役立つが、最悪のクライアントで漸増的な改善を得るために多大な総容量を引き換えにする場合がある。好ましい手法は、ネットワーク内の各クライアントの所望の負荷を考慮し、その負荷比の余剰容量を最大化することである。最適化は、容量を改善できるとともに、２つのＡＰ間で容量を変えることもできる。望ましい最適化は、負荷比の方向に余剰容量を最大化するものである。このことは、分散Ｗｉ−Ｆｉシステム１０に望ましい負荷を伝送する最大のマージンを与えて、それらの性能をより堅牢にし、より少ない待機時間及びより少ないジッターとすることを表す。この厳格な最適化は、可変スケールで容量割当に重み付けするよりソフトな最適化関数を提供することにより、さらに強化することができる。要求された負荷よりも高いスループットとすることには高い利用価値が置かれよう。要求された負荷を上回るスループットをクライアント又はノードに提供することは尚も利点とみなされようが、全てのクライアント／ノードにそれらが要求している負荷を与えることよりは、重み付けは相当低くなる。そのようなソフトな重み付けの最適化関数は、デバイス間の余剰性能のより有益なトレードオフを可能にする。
【００３２】
別のセットの最適化の出力は、分散Ｗｉ−Ｆｉシステム１０のトポロジー、つまりどのノードが他のどのノードと接続するかを定める。分散Ｗｉ−Ｆｉシステム１０を通る２つのクライアント間又はクライアントとインターネットゲートウェイ（モデム／ルーター１８）との間の実際の経路もまた、最適化の出力である。ここでまた、最適化は経路内の最良のトレードオフを選択しようとする。一般に、より多くのホップを移動するほど、各ホップの範囲は短くなり、データレートが高くなり、より堅牢になる。しかし、ホップが多いと、待機時間及びジッターが増え、チャンネル周波数割り当てによってはシステムの残りからより多くの容量が奪われる。
【００３３】
第６に、学習アルゴリズムをクラウド記憶データに適用して、傾向及びパターンを判定することができる（ステップ５６）。尚、サーバー２０は、ノードからの測定値、最適化の結果、及び関連のある最適化後の後続の測定値を記憶することができる。このデータを用いて、様々な目的のために傾向及びパターンを決定し分析することができる。ネットワークの再構成には時間がかかり、有効な通信を少なくとも部分的には必ず中断するので、そのピーク負荷に達する前に、ピーク負荷のためのネットワークを構成することが有益である。既に取り込まれている履歴のデータから学習することにより、将来起こる使用及び干渉を予測することが可能である。取り込みデータの学習のその他の用途は、バグを特定し、クライアントデバイスの挙動におけるバグを発見することを含む。クライアントデバイスの挙動にバグが発見されると、ネットワークのインフラストラクチャー側からのツール及びコマンドを用いてそれらのバグを回避することが可能であり得る。
【００３４】
第７に、ネットワークの性能を評価し、ユーザー又はＷｉ−Ｆｉ上でサービスを稼働させているサービスプロバイダーに報告することができる（ステップ５７）。第８に、アプリケーション（例えばユーザーデバイス２２で動作するモバイルアプリ）がユーザーにネットワーク動作の可視性を提供することができる（ステップ５８）。これは、ネットワーク活動及び性能メトリクスの表示を含む。モバイルアプリは、ユーザーに情報を送り、測定を行い、ユーザーがＷｉ−Ｆｉネットワークの動作の特定の側面を制御することを可能にするために用いることができる。モバイルアプリはまた、セルラーシステム経由でインターネットと通信して、ノードが最初に設定される際のオンボード化を支援する。携帯電話アプリはまた、セルラーシステムを使用して、ユーザーの正常なインターネット接続が機能していないときに、Ｗｉ−Ｆｉネットワークがインターネット及びクラウドと通信する方法を提供する。このセルラーベースの接続は、状況を知らせ、サービスプロバイダー及び他のユーザーに通知するために用いることができ、また、ユーザーの正常なインターネット接続が不調の際、データを家からインターネットへと伝送するのに用いることもできる。
【００３５】
構成及び最適化処理５０は、本明細書では例示的実施形態としての分散Ｗｉ−Ｆｉシステム１０を参照して説明されている。当業者であれば、構成及び最適化処理５０は、Ｗｉ−Ｆｉメッシュネットワーク３２、Ｗｉ−Ｆｉリピーターネットワーク３３等を含むあらゆるタイプの複数ノードＷｉ−Ｆｉシステム（すなわち分散Ｗｉ−Ｆｉネットワーク又はＷｉ−Ｆｉシステム）で動作可能であることを認識しよう。例えば、クラウドベースの制御をＷｉ−Ｆｉメッシュネットワーク３２、Ｗｉ−Ｆｉリピーターネットワーク３３等で実施することもでき、ここでも本明細書で説明する様々なシステム及び方法は、クラウドベースの制御及び最適化のために動作することができる。また、「分散Ｗｉ−Ｆｉネットワーク」及び「Ｗｉ−Ｆｉシステム」という用語は、Ｗｉ−Ｆｉメッシュネットワーク３２、Ｗｉ−Ｆｉリピーターネットワーク３３等にも適用可能であるが、分散Ｗｉ−Ｆｉシステム１０は分散Ｗｉ−Ｆｉネットワークの特定の実施形態である。つまり、分散Ｗｉ−Ｆｉシステム１０は、複数ノードをサポートする点ではＷｉ−Ｆｉメッシュネットワーク３２、Ｗｉ−Ｆｉリピーターネットワーク３３等と同様であるが、各々と関連のある限界を克服する前述した特徴を有している。
【００３６】
最適化
図３を参照すると、一例示的実施形態では、ブロック図が、最適化７０への入力６０及び出力６２を説明する。入力６０は、例えば、各クライアントにより要求されるトラフィック負荷、ノード間及びアクセスポイント１４（ノード）とＷｉ−ｆｉクライアントデバイス１６との間の信号強度、ネットワーク内の各可能なリンクのデータレート、各リンクのパケットエラーレート、ネットワーク内インターフェアラーの強度及び負荷、並びにネットワーク外インターフェアラーの強度及び負荷を含むことができる。ここでまた、これらの入力は、複数のアクセスポイント１４により収集された測定値及びデータに基づき、クラウド１２内のサーバー２０に通信される。サーバー２０は、最適化７０を実施するように構成されている。最適化７０の出力は、例えば、チャンネル及び帯域幅（ＢＷ）の選択、経路及びトポロジー、送信要求／送信可（ＲＴＳ／ＣＴＳ）の設定、送信機（ＴＸ）電力、クリアチャンネル評価閾値、クライアント関連付けステアリング、並びに帯域ステアリングを含む。
【００３７】
アクセスポイント
図５を参照すると、一例示的実施形態では、ブロック図が、分散Ｗｉ−Ｆｉシステム１０内のアクセスポイント１４の機能的構成要素を説明する。アクセスポイント１４は、プロセッサー１０２、複数の無線機１０４、ローカルインターフェース１０６、データ記憶領域１０８、ネットワークインターフェース１１０、及び電源１１２を収容する物理的なフォームファクター１００を含む。当業者であれば、図５は、アクセスポイント１４を簡略化して示したものであり、実際の実施形態は、追加の構成要素及び好ましく構成された処理論理（processing logic）を含んで、本明細書で説明する特徴、又は既知の若しくは本明細書では詳述していない一般的な動作特徴をサポートすることができることを理解すべきである。
【００３８】
一例示的実施形態では、フォームファクター１００は、小型の物理的実装体であり、アクセスポイント１４は電気ソケットに直接挿し込まれ、当該電気ソケットとの電気プラグ接続により物理的にサポートされる。この小型の物理的実装体は、住居全体に分散する多数のアクセスポイント１４には理想的である。プロセッサー１０２は、ソフトウェア命令を実行するハードウェアデバイスである。プロセッサー１０２は、あらゆる特別仕様の、又は市販されているプロセッサー、中央処理装置（ＣＰＵ）、モバイルデバイス３００と関連付けられたいくつかのプロセッサーのうちの補助プロセッサー、（マイクロチップ又はチップセットの形態の）半導体ベースのマイクロプロセッサー、又は一般にソフトウェア命令を実行するあらゆるデバイスであってよい。アクセスポイント１４の動作中、プロセッサー１０２は、メモリー又はデータ記憶領域１０８内に記憶されたソフトウェアを実行し、メモリー又はデータ記憶領域１０８と互いにデータを送受信し、ソフトウェア命令に従ってアクセスポイント１４の動作を広く制御するように構成されている。一例示的実施形態では、プロセッサー１０２には、移動用／携帯用に最適化されたプロセッサー、例えば消費電力及びモバイルアプリケーションが最適化されたプロセッサーが含まれることがある。
【００３９】
無線機１０４は、分散Ｗｉ−Ｆｉシステム１０内の無線通信を可能にする。無線機１０４は、ＩＥＥＥ８０２．１１規格にしたがい動作することができる。無線機１０４は、分散Ｗｉ−Ｆｉシステム１０での適切な通信を可能にするアドレス、制御部、及び／又はデータ接続を含む。本明細書で説明するように、アクセスポイント１４は、異なるリンク、すなわちバックホールリンク及びクライアントリンクをサポートする複数の無線機を含む。最適化７０は、無線機１０４の帯域幅、チャンネル、トポロジーその他などの構成を決定する。一例示的実施形態では、アクセスポイント１４は、２．４GHzについては２０／４０MHz、５GHzについては２０／４０／８０MHzの動作帯域幅を有する２．４GHz及び５GHzの２ｘ２  ＭＩＭＯ  ８０２．１１ｂ／ｇ／ｎ／ａｃの電波を同時に操作するデュアルバンドの動作をサポートする。例えば、アクセスポイント１４は、ＩＥＥＥ８０２．１１ＡＣ１２００ギガビットＷｉ−Ｆｉ（３００＋８６７Mbps）をサポートすることができる。
【００４０】
ローカルインターフェース１０６は、アクセスポイント１４へのローカル通信用に構成され、有線接続でも、Ｂｌｕｅｔｏｏｔｈその他などの無線接続でもよい。アクセスポイント１４はクラウド１２を介して構成されるので、新たにオンになったアクセスポイント１４の接続性を確立するために、最初にオンボード化処理が必要である。一例示的実施形態では、アクセスポイント１４はまた、ユーザーデバイス２２上のアプリを通じるなどして分散Ｗｉ−Ｆｉシステム１０にオンボードするために、ユーザーデバイス２２（又はＷｉ−Ｆｉクライアントデバイス１６）への接続性を可能にするローカルインターフェース１０６を含むことができる。データ記憶領域１０８は、データを記憶するのに用いられる。データ記憶領域１０８は、揮発性メモリー素子（例えば、ランダムアクセスメモリー（ＲＡＭ、例えばＤＲＡＭ、ＳＲＡＭ、ＳＤＲＡＭ等））、不揮発性メモリー素子（例えば、ＲＯＭ、ハードドライブ、テープ、ＣＤＲＯＭ等）、及びそれらの組合せをどれでも含むことができる。さらに、データ記憶領域１０８は、電子、磁気、光学、及び／又は他のタイプの記憶領域媒体を組み込むことができる。
【００４１】
ネットワークインターフェース１１０は、アクセスポイント１４に有線接続性を提供する。ネットワークインターフェース１０４は、アクセスポイント１４がモデム／ルーター１８と通信するのを可能にするために用いることができる。また、ネットワークインターフェース１０４は、Ｗｉ−Ｆｉクライアントデバイス１６又はユーザーデバイス２２にローカル接続性を提供するために用いることができる。例えば、デバイスにおけるアクセスポイント１４への有線接続は、Ｗｉ−Ｆｉをサポートしていないデバイスにネットワークアクセスを提供することができる。一例示的実施形態では、分散Ｗｉ−Ｆｉシステム１０内の全てのアクセスポイント１４がネットワークインターフェース１１０を含む。別の例示的実施形態では、モデム／ルーター１８に接続するか又はローカル有線接続を要求する選択アクセスポイント１４が、ネットワークインターフェース１１０を有する。ネットワークインターフェース１１０は、例えば、イーサネットカード又はアダプター（例えば、１０ＢａｓｅＴ、Ｆａｓｔ  Ｅｔｈｅｒｎｅｔ、ギガビットイーサネット、１０ＧｂＥ）を含むことができる。ネットワークインターフェース１１０は、ネットワーク上の適切な通信を可能にするアドレス、制御部、及び／又はデータ接続を含むことができる。
【００４２】
プロセッサー１０２及びデータ記憶領域１０８は、アクセスポイント１４の動作を基本的に制御するソフトウェア及び／又はファームウェア、データ収集及び測定の制御、データ管理、メモリー管理、及びクラウドを介してのサーバー２０との通信及び制御インターフェースを含むことができる。プロセッサー１０２及びデータ記憶領域１０８は、本明細書で説明する様々な処理、アルゴリズム、方法、技法等を実施するように構成されていることができる。
【００４３】
クラウドサーバー及びユーザーデバイス
図６を参照すると、一例示的実施形態では、ブロック図が、サーバー２０、Ｗｉ−Ｆｉクライアントデバイス１６、又は分散Ｗｉ−Ｆｉシステム１０で使用され得るユーザーデバイス２２の機能的構成要素を説明する。図６は、Ｗｉ−Ｆｉクライアントデバイス１６、サーバー２０、ユーザーデバイス２２、又は任意の汎用処理デバイスのどれでも形成することができる機能的構成要素を説明する。サーバー２０は、ハードウェアアーキテクチャとして、一般にプロセッサー２０２、入力／出力（Ｉ／Ｏ）インターフェース２０４、ネットワークインターフェース２０６、データ記憶領域２０８、及びメモリー２１０を含む、デジタルコンピューターであってもよい。当業者であれば、図６は、サーバー２０を簡略化して示したものであり、実際の実施形態は、追加の構成要素及び好ましく構成された処理論理を含んで、本明細書で説明する特徴、又は既知の若しくは本明細書では詳述していない一般的な動作特徴をサポートすることができることを理解すべきである。
【００４４】
構成要素（２０２、２０４、２０６、２０８、及び２１０）は、ローカルインターフェース２１２を介して通信可能に接続されている。ローカルインターフェース２１２は、例えば、限定ではないが、当業界で知られているように、バス又は他の有線若しくは無線接続の１つ又は複数であってもよい。ローカルインターフェース２１２は、簡潔さを期して省略されているが、コントローラー、バッファー（キャッシュ）、ドライバー、リピーター、及びレシーバー（他にも多種ある）などの通信を可能にする追加の素子を有していてもよい。さらに、ローカルインターフェース２１２は、前述の構成要素間の適切な通信を可能にするアドレス、制御部、及び／又はデータ接続を含むことができる。
【００４５】
プロセッサー２０２は、ソフトウェア命令を実行するハードウェアデバイスである。プロセッサー２０２は、あらゆる特別仕様の、又は市販されているプロセッサー、中央処理装置（ＣＰＵ）、サーバー２０と関連付けられたいくつかのプロセッサーのうちの補助プロセッサー、（マイクロチップ又はチップセットの形態の）半導体ベースのマイクロプロセッサー、又は一般にソフトウェア命令を実行するあらゆるデバイスであってよい。サーバー２０の動作中、プロセッサー２０２は、メモリー２１０内に記憶されたソフトウェアを実行し、メモリー２１０と互いにデータを送受信し、ソフトウェア命令に従ってサーバー２０の動作を広く制御するように構成されている。Ｉ／Ｏインターフェース２０４は、デバイス又は構成要素の１つ又は複数からのユーザー入力を受信し、及び／又はデバイス又は構成要素の１つ又は複数へのシステム出力を提供するのに用いることができる。ユーザー入力は、例えば、キーボード、タッチパッド、及び／又はマウスを介して提供されることがある。システム出力は、ディスプレイデバイス及びプリンター（図示せず）を介して提供されることがある。Ｉ／Ｏインターフェース２０４には、例えば、シリアルポート、パラレルポート、ｓｍａｌｌ  ｃｏｍｐｕｔｅｒ  ｓｙｓｔｅｍ  ｉｎｔｅｒｆａｃｅ（ＳＣＳＩ）、シリアルＡＴＡ（ＳＡＴＡ）、ファイバーチャンネル、Ｉｎｆｉｎｉｂａｎｄ、ｉＳＣＳＩ、ＰＣＩ  Ｅｘｐｒｅｓｓ  ｉｎｔｅｒｆａｃｅ（ＰＣＩ−ｘ）、赤外線（ＩＲ）インターフェース、高周波（ＲＦ）インターフェース、及び／又はユニバーサルシリアルバス（ＵＳＢ）インターフェースが含まれることがある。
【００４６】
ネットワークインターフェース２０６は、サーバー２０がクラウド１２などのネットワーク上で通信可能とするために用いることができる。ネットワークインターフェース２０６は、例えば、イーサネットカード又はアダプター（例えば、１０ＢａｓｅＴ、Ｆａｓｔ  Ｅｔｈｅｒｎｅｔ、ギガビットイーサネット、１０ＧｂＥ）又は無線ローカルエリアネットワーク（ＷＬＡＮ）カード又はアダプター（例えば、８０２．１１ａ／ｂ／ｇ／ｎ／ａｃ）を含むことができる。ネットワークインターフェース２０６は、ネットワーク上の適切な通信を可能にするアドレス、制御部、及び／又はデータ接続を含むことができる。データ記憶領域２０８は、データを記憶するのに用いることができる。データ記憶領域２０８は、揮発性メモリー素子（例えば、ランダムアクセスメモリー（ＲＡＭ、例えばＤＲＡＭ、ＳＲＡＭ、ＳＤＲＡＭ等））、不揮発性メモリー素子（例えば、ＲＯＭ、ハードドライブ、テープ、ＣＤＲＯＭ等）、及びそれらの組合せをどれでも含むことができる。さらに、データ記憶領域２０８は、電子、磁気、光学、及び／又は他のタイプの記憶領域媒体を組み込むことができる。一例では、データ記憶領域２０８は、例えば、サーバー２０内でローカルインターフェース２１２に接続されている内部ハードドライブなどの、サーバー２０の内部に配置されてもよい。それに加えて、別の実施形態では、データ記憶領域２０８は、例えば、Ｉ／Ｏインターフェース２０４に接続（例えば、ＳＣＳＩ又はＵＳＢ接続）された外部ハードドライブなどの、サーバー２０の外部に配置されてもよい。さらなる実施形態では、データ記憶領域２０８は、例えば、ネットワークに接続したファイルサーバーなど、ネットワークを通じてサーバー２０に接続されていてもよい。
【００４７】
メモリー２１０は、揮発性メモリー素子（例えば、ランダムアクセスメモリー（ＲＡＭ、例えばＤＲＡＭ、ＳＲＡＭ、ＳＤＲＡＭ等））、不揮発性メモリー素子（例えば、ＲＯＭ、ハードドライブ、テープ、ＣＤＲＯＭ等）、及びそれらの組合せをどれでも含むことができる。さらに、メモリー２１０は、電子、磁気、光学、及び／又は他のタイプの記憶領域媒体を組み込むことができる。尚、メモリー２１０は、分散アーキテクチャを有することができ、その場合、様々な構成要素は互いに離れて配置されているが、プロセッサー２０２によってアクセス可能である。メモリー２１０内のソフトウェアは、１つ又は複数のソフトウェアプログラムを含むことができ、各々が論理関数を実施するための順序付き実行命令リストを含む。メモリー２１０内のソフトウェアは、好ましいオペレーティングシステム（Ｏ／Ｓ）２１４及び１つ又は複数のプログラム２１６を含む。オペレーティングシステム２１４は、他のコンピュータープログラム、例えば１つ又は複数のプログラム２１６の実行を基本的に制御し、スケジューリング、入力−出力制御、ファイル及びデータ管理、メモリー管理、並びに通信制御及び関連サービスを提供する。１つ又は複数のプログラム２１６は、本明細書で説明する例えば最適化７０に関する様々な処理、アルゴリズム、方法、技法等を実施するように構成されていてもよい。
【００４８】
データ収集
ここでまた、様々な例示的実施形態では、システム及び方法が、構成及び最適化処理５０で最適化７０に用いるために、分散Ｗｉ−Ｆｉシステム１０内でデータ及び測定値を収集する技法を提供する。本明細書で説明するように、アクセスポイント１４からの測定値及び収集データは、まとめて測定値又はデータと呼ばれることがある。このデータは、限定ではないが、異なるクライアントからの／異なるクライアントへのトラフィック、異なるクライアントから／異なるクライアントへと用いられる信号強度及びデータレート、Ｗｉ−Ｆｉチャンネルの条件、異なるトラフィックフローによりもたらされる性能、アクセスポイント１４の輻輳レベル等を含むことができる。このデータは、クラウド１２へ、そしてサーバー２０へと定期的及びイベント駆動式の両方で報告される。イベント駆動型の報告は、絶対閾値又は相対閾値を超えることに基づくことができる。さらに、報告の頻度は、測定されているパラメーターの閾値又はレベルに基づき動的に調節されることができる。アクセスポイント１４は、データを生データとして報告することができ、又はデータが大容量の場合は、平均値、中央値、偏差その他などの統計的測定値によって圧縮して報告することもできる。データ収集の１つの目的は、アクセスポイント１４によって伝送されている有効なトラフィックフローの性能への影響を最小化しながら、収集及び報告を実行することである。
【００４９】
図７を参照すると、一例示的実施形態では、フローチャートが、分散Ｗｉ−Ｆｉシステム１０内のアクセスポイント１４によるデータ収集処理３００を説明する。データ収集処理３００は、分散Ｗｉ−Ｆｉシステム１０内のホームチャンネルで動作中にオンチャンネルスキャニングデータを取得すること（ステップ３０１）、定期的に又はクラウドベースのシステムからのコマンドに基づきホームチャンネルをオフに切り換え、１つ又は複数のオフチャンネルのオフチャンネルスキャニングデータを取得すること（ステップ３０２）、及び、オンチャンネルスキャニングデータ及びオフチャンネルスキャニングに基づく測定データを、分散Ｗｉ−Ｆｉシステム１０の最適化に使用するようにクラウドベースのシステムに提供すること（ステップ３０３）を含む。本明細書で説明するように、ホームチャンネルは、現在の構成に基づき（例えば直前の最適化７０又は初期構成に基づき）関連付けられた無線機１０４が現在動作中であるチャンネルである。ホームチャンネルはまた、クライアントリンク用又はバックホールリンク用であってもよい。つまり、アクセスポイント１４は、ホームチャンネルで、クライアント１６とクライアントリンクで通信するように動作することができ、また、別のホームチャンネルで、分散Ｗｉ−Ｆｉシステム１０内の他のアクセスポイント１４と通信する、すなわちバックホールリンクで動作することもできる。クラウドベースのシステムは、クラウド１２内のサーバー２０の場合がある。
【００５０】
データ収集処理３００はさらに、オンチャンネルスキャニングデータ及びオフチャンネルスキャニングデータを処理して測定データを決定すること（ステップ３０４）を含むことができる。この処理は、アクセスポイント１４にローカルで実行されて測定値を決定し、次いで当該測定値をサーバー２０に送信する。別の例示的実施形態では、アクセスポイント１４は、オンチャンネルスキャニングデータ及びオフチャンネルスキャニングデータを処理せず生データとして送信するだけでよい。しかし処理は、分散Ｗｉ−Ｆｉシステム１０上のデータ収集処理３００に必要な帯域幅要件を軽減する。また処理は、単に、オンチャンネルスキャニングデータ及びオフチャンネルスキャニングデータをサーバー２０に送信する前に圧縮することを含むことができる。処理は、ホームチャンネルが直接測定値と直接測定値に基づく演算との組合せに基づき分割される時間分割を決定することを含むことができる。処理することは、アクセスポイントにおける遅延の直接測定値及び統計値の１つにより、分散Ｗｉ−Ｆｉシステム上のパケットの遅延を判定することを含むことができる。最後に、データ収集処理３００はさらに、オフチャンネルスキャニングデータの取得後、再びホームチャンネルに切り換えること（ステップ３０５）を含むことができる。
【００５１】
例示のため、分散Ｗｉ−Ｆｉシステム１０を参照しながらデータ収集処理３００を説明する。当業者であれば、データ収集処理３００は、Ｗｉ−Ｆｉメッシュネットワーク３２、Ｗｉ−Ｆｉリピーターネットワーク３３その他などの他のタイプのＷｉ−Ｆｉシステムでも動作できることを認識しよう。つまり、データ収集処理３００は、あらゆる複数アクセスポイント１４、３４システムでの動作を広く意図するものであり、メッシュノード３６、アクセスポイント３４、リピーター３８等により実施可能である。ここでまた、データ収集処理３００は、クラウド制御されたＷｉ−Ｆｉシステムのインテリジェントな遠隔制御及び最適化を可能とするのに有利である。
【００５２】
一例示的実施形態では、オンチャンネルスキャニングデータ又はオフチャンネルスキャニングデータのどちらのスキャニングも、異なるチャンネル帯域幅（例えば、２０、４０、８０．１６０ＭＨｚ）で実行し報告することができる。例えば、オンチャンネルスキャニングは、ホームチャンネルで現在構成されているものとは異なるチャンネル帯域幅で実行可能である。さらに、オフチャンネルスキャニングは、異なるチャンネル帯域幅のどれに設定してもよい。例えば、定期的スキャニングは、異なるチャンネル帯域幅の間を巡回して、Ｗｉ−Ｆｉシステムがいかに動作しているかに関するより代表的な詳細をクラウドベースのシステムに提供することができる。
【００５３】
測定データは、複数の受信信号強度インジケーター（ＲＳＳＩ）、実現可能なデータレート、容量、負荷、エラーレート、遅延、及び送受信にかかった時間割合を含むことができる。オフへの切換は、アクセスポイント１４の負荷に基づき決定することができる。例えば、処理３００は、アクセスポイント１４内のキューの状況を監視して、オフへの切換を決定するために、いつ負荷が低いかを決定することを含むことができる。処理３００はさらに、時刻同期機能（ＴＳＦ）タイマーからのオフセットにより、分散Ｗｉ−Ｆｉシステム１０内の他のアクセスポイントに、ビーコン内のブロードキャストフレーム及び情報要素の１つを介して、オフへの切換を通知することを含むことができる。任意選択により、アクセスポイント１４は、分散Ｗｉ−Ｆｉシステム１０内の少なくとも１つの追加のアクセスポイント１４と比べて軽負荷であり、当該アクセスポイント１４は、当該少なくとも１つの追加のアクセスポイント１４のオフチャンネルスキャニングデータの取得を実行するように構成されている。オフチャンネルスキャニングデータのためのアクセスポイント１４は、受信するプローブ応答の数を減じるために、信号強度の測定に用いられる特定のサービスセット識別子（ＳＳＩＤ）についてのプローブ要求を特定の近隣機器（neighbor）に対して送信することができる。オフチャンネルスキャニングデータのためのアクセスポイント１４は、近隣のアクセスポイント及びクライアントからの応答を促すために、別のネットワーク内基本サービスセット（ＢＳＳ）を模したフレームを送信することができる。処理３００は、最適化に基づいてクラウドベースのシステムから構成データを受信することを更に含むことができ、測定データを提供することは、統計チャンネルを通じて実行されるとともに、構成データを受信することは、統計チャンネルと異なる構成チャンネルを通じて実行される。
【００５４】
別の例示的実施形態では、分散Ｗｉ−Ｆｉシステム１０内のアクセスポイント１４が、分散Ｗｉ−Ｆｉシステム上で通信する複数の無線機、及び前記複数の無線機と通信可能に接続され、複数の無線機のうち１つ又は複数の無線機に、分散Ｗｉ−Ｆｉシステム内のホームチャンネルで動作中に、オンチャンネルスキャニングデータを取得させるプロセッサーを含み；定期的に又はクラウドベースのシステムからのコマンドに基づき１つ又は複数の無線機にホームチャンネルをオフに切り換えさせ、１つ又は複数のオフチャンネルのオフチャンネルスキャニングデータを取得させ；オンチャンネルスキャニングデータ及びオフチャンネルスキャニングデータに基づく測定データを、分散Ｗｉ−Ｆｉシステム１０の最適化に使用するように、クラウドベースのシステムに提供するように構成されている。
【００５５】
さらなる例示的実施形態では、分散Ｗｉ−Ｆｉシステム１０は、互いに通信可能に接続されている複数のアクセスポイント１４、並びに当該分散Ｗｉ−Ｆｉシステム１０に外部通信を提供しクラウドベースのシステムに通信を提供するゲートウェイと通信可能に接続されている少なくとも１つのアクセスポイントを含み、複数のアクセスポイント１４は各々、分散Ｗｉ−Ｆｉシステム内のホームチャンネルで動作中にオンチャンネルスキャニングデータを取得し；定期的に又はクラウドベースのシステムからのコマンドに基づきホームチャンネルをオフに切り換え、１つ又は複数のオフチャンネルのオフチャンネルスキャニングデータを取得し；オンチャンネルスキャニングデータ及びオフチャンネルスキャニングデータに基づく測定データを、分散Ｗｉ−Ｆｉシステム１０の最適化に使用するように、クラウドベースのシステムに提供するように構成されている。
【００５６】
さらに別の例示的実施形態では、Ｗｉ−Ｆｉシステム内のアクセスポイント１４、３４、又はメッシュノード３６、又はリピーター３８によりデータを収集する方法が、定期的に又はクラウドベースのシステムからのコマンドに基づき、（ｉ）ホームチャンネルで動作中にオンチャンネルスキャニングデータを取得すること、及び（ｉｉ）ホームチャンネルをオフに切り換え、１つ又は複数のオフチャンネルのオフチャンネルスキャニングデータを取得することの１つ又は複数を実行すること；並びにオンチャンネルスキャニングデータ及びオフチャンネルスキャニングデータの１つ又は複数に基づく測定データを、Ｗｉ−Ｆｉシステムの最適化に使用するように、クラウドベースのシステムに提供することを含み、測定データは生データ及び処理済みデータの１つ又は複数を含む。
【００５７】
さらに別の例示的実施形態では、最適化のためのデータを収集するように構成されているアクセスポイント１４、３４、メッシュノード３６、又はリピーター３８が、Ｗｉ−Ｆｉシステム上で通信する複数の無線機、及びプロセッサーを含み、当該プロセッサーは、複数の無線機と通信可能に接続され、定期的に又はクラウドベースのシステムからのコマンドに基づき１つ又は複数の無線機に（ｉ）ホームチャンネルで動作中にオンチャンネルスキャニングデータを取得させること、及び（ｉｉ）ホームチャンネルをオフに切り換え、１つ又は複数のオフチャンネルのオフチャンネルスキャニングデータを取得させることの１つ又は複数を実行させ、並びにオンチャンネルスキャニングデータ及びオフチャンネルスキャニングデータに基づく測定データを、分散Ｗｉ−Ｆｉシステムの最適化に使用するように、クラウドベースのシステムに提供するように構成されており、測定データは生データ及び処理済みデータの１つ又は複数を含む。
【００５８】
さらに別の例示的実施形態では、最適化のためのデータを収集するように構成されているＷｉ−Ｆｉシステムが、互いに通信可能に接続されている複数のアクセスポイントで、そのうち少なくとも一つは当該Ｗｉ−Ｆｉシステムに外部通信を提供するゲートウェイと通信可能に接続されているアクセスポイントを含み、複数のアクセスポイントは各々、定期的に又はクラウドベースのシステムからのコマンドに基づき（ｉ）ホームチャンネルで動作中にオンチャンネルスキャニングデータを取得すること、及び（ｉｉ）ホームチャンネルをオフに切り換え、１つ又は複数のオフチャンネルのオフチャンネルスキャニングデータを取得することの１つ又は複数を実行し；並びにオンチャンネルスキャニングデータ及びオフチャンネルスキャニングデータに基づく測定データを、Ｗｉ−Ｆｉシステムの最適化に使用するように、クラウドベースのシステムに提供するように構成されており、測定データは生データ及び処理済みデータの１つ又は複数を含む。
【００５９】
アクセスポイント１４は、定期的に又はクラウド１２からコマンドを受信すると、そのホームチャンネルではない、異なるチャンネル幅（例えば２０、４０、８０、及び１６０ＭＨｚ）のチャンネルに、短い間だけ切り換え、それを監視することによって、無線機１０４を用いてオフチャンネルスキャンを実行することができる。スキャニング期間の際、アクセスポイント１４は、Ｗｉ−Ｆｉ送信及び非Ｗｉ−Ｆｉ送信の両方によるチャンネルのビジー度に関する情報を収集し、近隣の各基本サービスセット（ＢＳＳ）による利用度レベルを特定することができる。アクセスポイント１４はまた、ビーコンなどの管理フレーム並びにデータフレームを受信することによって、近隣アクセスポイント１４及び関連付けられていないクライアント１６からの信号強度を測定することもできる。ネットワーク内アクセスポイント１４（分散Ｗｉ−Ｆｉシステム１０の一部であるもの）及びクライアント１６からのデータ収集の効率を高めるために、スキャンを実行しているアクセスポイント１４は、近隣のアクセスポイント又はクライアントからの応答を促すために、別のネットワーク内ＢＳＳを模したフレームを送信することができる。あるいは、近隣ネットワーク内アクセスポイント１４に、それらが関連付けられたクライアント１６に送信して応答を促すように命令し、この応答を、スキャンしているアクセスポイント１４によって測定するようにしてもよい。アクセスポイント１４は、近隣アクセスポイント１４とそれらのクライアント１６間で使用されている変調コーディングスキーム（Ｍｏｄｕｌａｔｉｏｎ  ａｎｄ  Ｃｏｄｉｎｇ  Ｓｃｈｅｍｅ；ＭＣＳ）を測定することもできる。
【００６０】
分散Ｗｉ−Ｆｉシステム１０を最適化するために、全クライアント１６から全アクセスポイント１４への信号強度を把握することは有益であり、全アクセスポイント１４は各々、クライアント１６が関連付けられ得る潜在的な場所である。しかし、一部のアクセスポイント１４は、それらと関連付けられていないクライアント１６の信号強度を受信し記録することが困難である。この問題を回避するための一方法は、（オフチャンネルでもオンチャンネルでも）スキャンを行うアクセスポイント１４を多重ＢＳＳＩＤモードにし、近隣アクセスポイント１４のＢＳＳＩＤをアクセスポイントリストに加えることである。次に、このアクセスポイント１４は、確認応答を送信しないように、構成されるべきである。この一対の行為は、当該アクセスポイント１４が、全クライアントの送信を、当該アクセスポイント１４と関連付けられていないクライアント１６からの送信でさえも、沈黙してリッスンすることを可能にする。一例示的実施形態では、測定アクセスポイント１４による測定が所望されるＷｉ−Ｆｉクライアントデバイス１６からの送信が、既に当該Ｗｉ−Ｆｉクライアントデバイス１６に接続しているアクセスポイント１４からパケットを送信することでトリガされ得、すなわち、アクセスポイント１４同士の同調が、当該Ｗｉ−Ｆｉクライアントデバイス１６をトリガして、異なるアクセスポイント１４のうちどれが当該Ｗｉ−Ｆｉクライアントデバイス１６をリッスンしているかを送信させる。
【００６１】
オフチャンネルスキャンを実行する際、アクセスポイント１４はそのホームチャンネルで送信も受信もできず、潜在的にトラフィックフローの動作が中断する可能性がある。中断を緩和するために、アクセスポイント１４は、アイドル時又は軽負荷時のみスキャンを実行することができる。ここでまた、このことは、アクセスポイント１４と関連するキューを監視することに基づき得る。実際に、家の中の複数のアクセスポイント１４を利用して、測定値に高い相関のある近傍のアイドル中又は軽負荷のアクセスポイント１４から、重負荷のノードの干渉を推量することができる。その場合、重負荷のアクセスポイント１４は、スキャンのためにオフチャンネルとなる必要は皆無であるが、それは、このアクセスポイント１４のために周囲の軽負荷のアクセスポイント１４がオフチャンネルのスキャニングを行うからである。さらに、アクセスポイント１４は、スキャニング期間内に到着するデータのバッファーに利用可能なフリーメモリーについての情報を用いてパケット喪失の確率を推定し、それに基づいてスキャンの省略又は延期を決定することができる。アクセスポイント１４はまた、時刻同期機能（ＴＳＦ）タイマーからのオフセットにより、ビーコン内のブロードキャストフレーム又は情報要素を用いて、それらの計画された不在をネットワーク内の他のアクセスポイント１４に通知することもできる。こうすれば、アクセスポイント１４がそのホームチャンネル上にないときに他のネットワーク内アクセスポイント１４が送信を試みないことが保証される。オフチャンネルスキャン中は関連付けられたクライアントデバイス１６を近くの異なるアクセスポイント１４に強制的に接続し、スキャンが完了すると元のアクセスポイント１４に戻されることも可能である。アクセスポイント１４がそのホームチャンネルから離れている時間を減じるために、チャンネルを順次スキャンし、次のスキャンとの間にホームチャンネルに戻ることができる。アクセスポイント１４は、信号強度を測定するための特定のＳＳＩＤのプローブ要求を特定の近隣機器に送信することにより、指定スキャンを実行することもできる。こうすれば、アクセスポイントがオフチャンネルでいなければならない時間は減少するが、アクセスポイントが把握しようとしている近隣機器からの素早い応答がトリガされる。それに加えて、プローブ要求を特定のＳＳＩＤに送信することで、受信するプローブ応答の数が減少し、ひいては送信のオーバーヘッドが低下するので、データを収集することで生じるチャンネルへの干渉も低下する。さらに、アクセスポイント１４は、オフチャンネルの切換えに先立ち、任意の関連付けられたクライアント１６を他のアクセスポイント１４に移動させることができる。また、このことは、クラウドベースのシステムにより行うことができる。関連付けられたクライアント１６なしで、アクセスポイント１４は、ネットワークを中断することなくオフチャンネルスキャニングを実行することができる。
【００６２】
アクセスポイント１４は、関連付けられたクライアント１６と送受信しているホームチャンネルにある際（又は他のアクセスポイント１４と送受信している間バックホールリンクにある際は）、各クライアント１６に送信した、及びそれらから受信したトラフィック、並びに使用されたＭＣＳレート、各集計におけるＭｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ（ＭＡＣ）プロトコルデータユニット（ＭＰＤＵ）の数、パケットエラーレート、消失した確認応答の数等を測定する。ホームチャンネル上にある際、アクセスポイント１４は、動作している異なるアクセスポイント１４と関連のある同一チャンネル上で、送信をリッスンすることもできる。ホームチャンネル上にある間、アクセスポイント１４は、正常に動作し任意の関連付けられたＷｉ−Ｆｉクライアントデバイス１６に対応しながら、無線波の範囲内にある、その同じチャンネルで動作している全デバイスについての測定値を収集することもできる。これには、Ｗｉ−Ｆｉクライアントデバイス１６、並びに他のアクセスポイント１４が含まれる。
【００６３】
別の重要な収集すべきデータの一部は、ネットワーク内を移動するパケットの遅延である。これらの遅延は、直接の測定値から、分散Ｗｉ−Ｆｉシステム１０のゲートウェイ（モデム／ルーター１８）に到着したパケットをタイムスタンプし、それらが最後のアクセスポイント１４を離れるまでの経過時間を測定することによって導出することができる。しかし、そのような測定は、アクセスポイント１４間のある程度の時刻同期を要する。別の手法は、各アクセスポイント１４を通過する遅延の統計値を個々に測定する、というものになる。次に、分散Ｗｉ−Ｆｉシステム１０全体の総遅延の平均及び何らかの仮定を与えられた遅延の分布を各アクセスポイント１４の個々の遅延統計値に基づき計算することができる。こうして、遅延は、最適化７０において最小化されるべきパラメーターとなることができる。これらの遅延は、分散Ｗｉ−Ｆｉシステム１０内の各クライアント１６への経路から取得されるか又は導出されるべきである。
【００６４】
アクセスポイント１４は、キュー長さ、すなわち送信キューの経時的なバックログ、並びにキュー利用率、すなわちキューが空ではない時間割合を測定して、送信キューの利用度を測定する。これらの測定値は、アクセスポイント１４によって伝送されるトラフィックフローによりもたらされる性能と高い相関性がある。アクセスポイント１４により実現され得る最大のスループットは、このアクセスポイント１４が伝送するトラフィックがスケールアップされると仮定すると、アクセスポイント１４のスループットとキュー利用率との比として決定することができる。
【００６５】
図８を参照すると、一例示的実施形態では、グラフが、ホームチャンネルなどのチャンネルに関連する時間割合を説明する。アクセスポイント１４は、そのホームチャンネル上で、近隣ネットワーク内のＷｉ−Ｆｉ送信機の活動によりチャンネルがビジーである、すなわち干渉の時間割合（ビジー％）、アクセスポイント１４が送信に費やす時間割合（送信％）、アクセスポイント１４が関連付けられたクライアント１６からの受信に費やす時間割合（受信％）、チャンネルがアイドル状態でありノードがその送信キューにパケットを有するときにアクセスポイント１４がそのコンテンションウィンドウのカウントダウンに費やす時間割合（バックオフ％）、チャンネルがアイドル状態でありアクセスポイント１４が空の送信キューを有する時間割合（アイドル％）を測定／推量することもできる。図８は、チャンネルの一例を説明する。これらのカテゴリーにいかに時間が配分されているかを理解することは非常に有用である。アクセスポイント１４のスループットとその送信時間割合との比は、アクセスポイント１４がチャンネルへのアクセスを得たときに実現される有効なデータレートに対応する。アイドル％は、アクセスポイント１４がデータを送信するのに仮想的に使い得る時間に対応し、そのアクセスポイント１４が利用可能な余剰容量を反映している。しかし、実装上の限界により、これらの時間割合が全てアクセスポイント１４で直接測定できるとは限らない。送信％、受信％、及びビジー％は、ドライバーによって直接報告され得るが、バックオフ％とアイドル％とは区別不可能である。一定の期間にわたってキュー利用度及びチャンネル時間割合を一緒に測定することで、二者間の関係を利用して、異なる時間割合を別々に推定することが可能になる。図８を参照されたい。例えば、バックオフ％は、キュー利用率＊（１００−受信％−ビジー％）−送信％として計算することができる。
【００６６】
中央制御可能な分散Ｗｉ−Ｆｉシステム１０内のアクセスポイント１４による干渉と、分散Ｗｉ−Ｆｉシステム１０外のノードによる干渉とを区別することも有用である。ある期間にわたり複数のアクセスポイント１４から一緒に収集されたデータを用いて、近隣ノードにより報告される送受信活動並びにノード間の信号強度を用いてネットワーク内干渉を推定することができる。したがって、ネットワーク外干渉は、アクセスポイント１４で測定された総合的な干渉からネットワーク内干渉を差引くことにより推定することができる。そのような計算の一例は、家の中の１つのアクセスポイント１４の総ビジー時間の測定である。家の中の分散Ｗｉ−Ｆｉシステム１０内の他のアクセスポイント１４は、それらが送信に費やした時間を報告することができる。家の中の分散Ｗｉ−Ｆｉシステム１０内の他の全てのアクセスポイント１４が送信に費やす時間を、対象とするアクセスポイント１４のビジー時間から差引くことができる。こうすれば、家の分散Ｗｉ−Ｆｉシステム１０の一部である他のアクセスポイント１４と関連のある全てのトラフィックが除去されて、近所の家のネットワークからの送信により消費された通信時間だけが残る。上述の処理が成功するには、全アクセスポイント１４について同一期間にわたりチャンネル時間割合を測定又は推定しなければならない。使用可能な一技法は、分散Ｗｉ−Ｆｉシステム１０内の全アクセスポイント１４のデータ報告を同期させて、全アクセスポイント１４に同一のタイムスライスについての統計値を報告させることである。使用可能な別の技法は、全アクセスポイント１４から十分な期間のデータを集計し、この期間のチャンネル時間割合の統計的測定値を計算して、推定に用いることである。こうすれば、アクセスポイント１４全体のデータ収集を同期させる必要性が軽減される。
【００６７】
クラウドベースのシステム、すなわちサーバー２０は、一般には、分散Ｗｉ−Ｆｉシステム１０の制御及び最適化に使用する測定データを使用するように構成されている。一例示的実施形態では、サーバー２０は、複数のアクセスポイント１４からの測定データの一括分析を実行して、他の測定データを導出するように構成されることがある。例えば、このことは、アクセスポイント１４のＴＸ時間から別のアクセスポイント１４のＲＸ時間を差引くことを含むことができる。ここで、複数のアクセスポイント１４からの測定データは、時刻同期されていて、クラウド１２における比較、分析等のためのアラインメントを可能にすることができる。あるいは、複数のアクセスポイント１４からの測定データは、例えば時刻同期の不確定性よりもはるかに長い期間の平均をとり、これらの経時的な平均値を操作して、異なるアクセスポイント１４の測定値から差引くか又はそうでなければ結果を導出して、粗く時刻同期されているだけでもよい。
【００６８】
アクセスポイント１４から収集されるデータの量を減じるために、冗長情報を省略することができ、例えば、１対のアクセスポイント１４間の通信データは、その一方、いわば送信機によって報告されるだけでよい。データは、生データの代わりに平均、移動平均、ヒストグラムその他などの統計値を送信することによって圧縮することもできる。生データを送信する場合、報告を長期間でバッチ化し、圧縮形式で報告することができる。データの量は、定期的報告の頻度を減じ、代わりにイベント駆動型の報告とすることにより、さらに減じることができる。クラウド１２は異なる量（負荷、容量、受信信号強度インジケーター（ＲＳＳＩ）等）の絶対閾値などのパラメーターを有するノードを構成することができ、アクセスポイント１４はこの閾値を超えたときだけデータを報告することができる。相対的閾値もまた、新規報告が過去に送信されたものと少なくとも特定のマージンだけ異なる場合のみアクセスポイント１４が報告を送信するのに用いられることがある。あるいは、閾値は、アクセスポイント１４がデータを収集し報告する頻度を変えるポリシーを特定するのに用いられることがある。侵入的又はそうではなく計算が煩雑な一部の測定（例えばオフチャンネルスキャン）は、異なるパラメーターが特定の閾値を超えたときだけトリガされることもある。それに加えて、一部の統計値は、クラウド１２により明確に要求されたときだけ測定され報告されることがある。こうすれば、データ測定及び報告により課せられるオーバーヘッドによるあらゆるコストを抑えることができる。
【００６９】
一例示的実施形態では、アクセスポイント１４は、毎分又は何らかの他の構成可能な期間などの継続的な測定を行うことができるが、クラウドベースのシステムへの報告はバッチで行うことができる。例えば、Ｘ期間の測定値を取得し、Ｘセットの測定値を一括で報告する。この手法により、クラウド１２への通信頻度が減る一方で、クラウドベースのシステムは尚も最適化に必要な全ての測定値を得られることが保証される。さらに、アクセスポイント１４は、測定データを圧縮してからクラウド１２に送信するように構成されて、全般的に必要な帯域幅を減じることができる。別の例示的実施形態では、報告用の帯域幅をさらに減じるために、アクセスポイント１４間で、例えば重複を減じるために、何を報告するかについての同調があり得る。例えば、所与のリンクについてのＴＸ統計値だけを報告すればよく、当該リンクのパートナーノードからの対応するＲＸ統計値を報告する必要はない。これは、所与のリンクのＴＸ統計値はＲＸ統計値と同じになり、同じ情報を提供するからである。
【００７０】
統計チャンネルと構成チャンネルとの分離
図９を参照すると、一例示的実施形態では、ネットワーク図が、クラウド１２内の構成サービス４０２及び統計サービス４０４と通信している分散Ｗｉ−Ｆｉシステム１０内のアクセスポイント１４を有するネットワーク４００を説明する。分散Ｗｉ−Ｆｉシステム１０内のアクセスポイント１４によって上述したようにして収集されたデータは、クラウド１２内に移動させなくてはならない。このことは、アクセスポイント１４を構成し制御するのに用いられるチャンネルとは別のチャンネル経由で行うのが有益である。それは、クラウド１２からのアクセスポイント１４の管理は、データ収集とは別個のトラフィックパターンを有するからである。アクセスポイント１４の構成は、頻繁には行われず、信頼性が高くトランザクション可能でなくてはならないが、アクセスポイント１４からサービス４０２、４０４への統計値報告は大容量なので高効率でなくてはならず、多少のデータ消失に適応可能である。したがって、アクセスポイント１４は、構成と統計とに異なる通信チャンネル及び手法を、すなわち構成サービス４０２への構成チャンネル４０６と、統計サービス４０４への統計チャンネル４０８とを実装できる。
【００７１】
構成サービス４０２及び統計サービス４０４が、クラウド１２内で、同じか又は異なるサーバー２０上などで展開される。サービス４０２、４０４は、クラウド１２内のサーバー２０で動作可能なクラウドベースのシステムと呼ばれることがある。これらのサービス４０２、４０４は、異なるプロトコルを介して、並びに異なる場所で、通信可能である。分散Ｗｉ−Ｆｉシステム１０内の各アクセスポイント１４は、サービス４０２、４０４の両方とそれぞれ構成チャンネル４０６経由、統計チャンネル４０８経由で通信するように構成されている。構成チャンネル４０６は、Ｏｐｅｎ  ｖＳｗｉｔｃｈ  Ｄａｔａｂａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ（ＯＶＳＤＢ）などのトランザクション指向の信頼性の高い通信プロトコルにより、構成サービス４０２とやり取り（相互作用）することができる。統計チャンネル４０８は、ＰｒｏｔｏＢｕｆ  ｏｖｅｒ  Ｍｅｓｓａｇｅ  Ｑｕｅｕｅ  Ｔｅｌｅｍｅｔｒｙ  Ｔｒａｎｓｐｏｒｔ（ＭＱＴＴ）などの高効率で軽量の通信プロトコルにより、統計値（測定データ）を統計サービス４０４に報告することができる。
【００７２】
この手法はいくつかの利点を提供する。アクセスポイント１４の構成は重要な活動であり、統計チャンネル４０８内のトラフィックの飽和又は高容量関連の問題に影響されることがない。統計通信プロトコルを高効率性で選択することができるので、アクセスポイント１４の管理オーバーヘッドは最小化される。
【００７３】
通信を確立するためのＷｉ−Ｆｉ設定
ここでまた、より具体的には、分散Ｗｉ−Ｆｉシステム及び方法は、分散Ｗｉ−Ｆｉシステム１０内のＷｉ−Ｆｉクライアントのアクセスサービスを提供する全アクセスポイント１４が、Ｗｉ−Ｆｉネットワークを通して、クラウド１２に接続しているゲートウェイ１８を通過する安全で信頼性の高い１つのデータ経路をもつことを保証する。メッシュ、リピーター、又は一般的な分散Ｗｉ−Ｆｉ手法の問題の一つは、初期ネットワーク設定である。典型的には、Ｗｉ−Ｆｉネットワークの設定は、何らかの種類の手動のユーザーとのやり取りを必要とし、それは典型的には、ノード間接続に用いられるＷｉ−ＦｉネットワークＳＳＩＤ及びパスワードを入力することである。この手順は煩雑であり、間違いやすい。メッシュ、リピーター、又は分散Ｗｉ−Ｆｉ手法のように複数ノードを設定しなければならない場合、問題は増大する。それに加えて、Ｗｉ−Ｆｉ可能な標準クライアントで各ノードに接続することが厄介な場合もあるが、それは基本サービスセット識別子（ＢＳＳＩＤ、特定のノード又はアクセスポイントのＭＡＣアドレスに相当）に基づき接続するデバイスの選択の機会を全てのＷｉ−Ｆｉクライアントがユーザーに提供するわけではないからである。具体的には、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）は、ＢＳＳＩＤ又は他の手段を介し接続する特定のＡＰの選択を許可しない。こうした制限は、限られた技術的スキルしかないユーザーにとってさらなる重荷となり、初期ネットワーク設定を完了するのに要する時間を増やすだけである。
【００７４】
初期ネットワーク設定に関連する１つの問題は、ユーザーが入力しなければならないデータの量である。現在のソリューションの一部は、４８ビットの一意の物理（ＰＨＹ）層識別子（ＭＡＣアドレス）をＷｉ−Ｆｉネットワークの一部となる各デバイスについて入力することを要求する。そのような操作は煩雑であるばかりか、入力ミスが起きやすく、大変な失敗（サービスが利用できない）につながりかねない。したがって、分散Ｗｉ−Ｆｉシステム及び方法の１つの目的は、より単純でよりユーザーに優しい手法を提供することである。
【００７５】
図１０Ａ、１０Ｂ、１１Ａ、１１Ｂ、及び１２を参照すると、例示的実施形態では、ブロック図が、分散Ｗｉ−Ｆｉシステム１０内のＷｉ−Ｆｉ設定用のネットワーク５００を説明する。Ｗｉ−Ｆｉ設定は、ブートストラップ処理でＷｉ−Ｆｉインフラストラクチャーモード接続を用い、簡単で手早く高効率である。Ｗｉ−Ｆｉ設定は、分散Ｗｉ−Ｆｉシステム１０にネットワーク５０６（例えばインターネット、クラウド、インターネットサービスプロバイダー（ＩＳＰ）ネットワーク等）を介して接続する２つの外部サービス５０２、５０４を含む。外部サービス５０２、５０４は、分散Ｗｉ−Ｆｉシステム１０の一部になることが認証される全てのＷｉ−Ｆｉアクセスポイント１４が利用できる。外部サービス５０２、５０４は、遠隔デバイス認証サーバー、及び遠隔分散Ｗｉ−Ｆｉネットワークコントローラー（クラウド）を含む。外部サービス５０２、５０４を使用することで、分散Ｗｉ−Ｆｉシステム内の通信を確立するためのユーザーとのやりとりが、一般的な手法よりも相当軽減されることになる。
【００７６】
図１０Ａは、分散Ｗｉ−Ｆｉシステム１０が最初に外部サービス５０２、５０４に接続されるネットワーク５００を説明する。図１０Ｂは、ゲートウェイアクセスポイント１４−１が外部サービス５０２、５０４により構成されるネットワーク５００を説明する。図１１Ａは、ゲートウェイアクセスポイントが他のアクセスポイント１４−２、１４−２をオンボード化し、Ｗｉ−Ｆｉサービスの供給を開始するネットワーク５００を説明する。図１１Ｂは、アクセスポイント１４−３が他のアクセスポイントをオンボード化し、Ｗｉ−Ｆｉサービスの供給を開始するネットワーク５００を説明する。図１２は、アクセスポイント１４−３がアクセスポイント１４−４、１４−５をオンボード化し、Ｗｉ−Ｆｉサービスの供給を開始するネットワーク５００を説明する。
【００７７】
Ｗｉ−Ｆｉ設定は、ネットワーク５０６と接続するモデム／ルーター１８と接続するゲートウェイアクセスポイント１４−１を含む。接続されると、ゲートウェイアクセスポイント１４−１は外部サービス５０２、５０４と接続し、ユーザーにＷｉ−Ｆｉサービスの供給を開始する。ループを含まないＷｉ−Ｆｉネットワークトポロジーは、本明細書で説明するブートストラップ処理により確保される。
【００７８】
本明細書で説明するように、分散Ｗｉ−Ｆｉシステム１０は、１つのエンティティにより制御されるいくつかの（通常は最大で１５の）Ｗｉ−Ｆｉアクセスポイント１４（「ＡＰ」）の同調動作に基づき動作する。分散Ｗｉ−Ｆｉシステム１０のゴールは、標準的な単一ポイントのインフラストラクチャーモードのＷｉ−Ｆｉソリューションの場合と同様のスループットレートを保持しながら、より良好なカバレッジを提供することである。簡潔さを期して、１つの有線ネットワークアクセスのみの、すなわちモデム／ルーター１８を介するネットワークアクセスが分散Ｗｉ−Ｆｉシステム１０で利用可能と仮定する。これは、分散Ｗｉ−Ｆｉシステム１０が動作する住居にインターネット接続性を提供するＤＳＬ又はケーブル接続であり得る。１つの（無作為に選択された）アクセスポイント１４−１は、当該アクセスポイント１４−１と関連付けられたイーサネット有線接続により、ＩＳＰネットワーク５０６に接続されることになる。全ての他のアクセスポイント１４−２、１４−３、１４−４、１４−５（ノードと呼ばれる場合もある）は、最高品質のサービス規格に基づき、ゲートウェイアクセスポイント１４−１又は他のアクセスポイントの１つに接続される。上流のアクセスピアに接続するとき、各アクセスポイント１４はＷｉ−Ｆｉ  ＳＴＡ（ステーション）クライアントとして動作し、親機ノードはインフラストラクチャーモードのアクセスポイント１４として動作する。したがって、１つのアクセスポイント１４は、分散Ｗｉ−Ｆｉシステム１０内でのその役割に基づき、ゲートウェイノード（ＧＷ）とＷｉ−Ｆｉノード（ノード）という２つの可能な役割の１つを有することができる。
【００７９】
ゲートウェイノードは、単一有線ワイドエリアネットワーク（ＷＡＮ）接続を有するアクセスポイント１４−１である。このノードは、分散Ｗｉ−Ｆｉシステム１０内で重要な役割を果たす。それは、分散Ｗｉ−Ｆｉシステム１０に接続したあらゆるＷｉ−Ｆｉクライアントにより開始される全ユーザートラフィックがこのゲートウェイノードを通過するからである。ゲートウェイノードはまた、標準的な単一エンティティのＷｉ−Ｆｉソリューションの場合と同様、インフラストラクチャーモードのＷｉ−ＦｉサービスをユーザーＷｉ−Ｆｉクライアントに提供する。また、ユーザーの設定によるが、ファイヤーウォール及びネットワークアドレス変換（ＮＡＴ）のようなサービスを提供することができる。Ｗｉ−Ｆｉノードの役割は、全Ｗｉ−ＦｉクライアントにＷｉ−Ｆｉインフラストラクチャーモードのアクセスを提供すること、並びに他のＷｉ−Ｆｉアクセスポイント１４にＷｉ−Ｆｉインフラストラクチャーモードのアクセスを提供することである。場合によっては、ユーザートラフィックをゲートウェイノード及び外部ネットワークへ又はそれらから転送するための、親機ノードへの単一のデュアルバンドＷｉ−Ｆｉ  ＳＴＡ接続になる。
【００８０】
分散Ｗｉ−Ｆｉシステム１０では、１つのＷｉ−Ｆｉネットワークが、いくつかの独立したアクセスポイント１４を含む。全アクセスポイント１４の動作を同調させるために、各個々のアクセスポイント１４が接続される１つの制御エンティティが利用される。本明細書で説明するように、この制御エンティティは、Ｗｉ−Ｆｉソリューションの外部で稼動する独立したサービス、すなわち外部サービス５０２、５０４として実装され、このサービスは（理論的には）無数の分散Ｗｉ−Ｆｉシステム１０間で共有される。この制御エンティティは、クラウド１２と呼ばれることがある。その役割は、Ｗｉ−Ｆｉインフラストラクチャーモードのパラメーターを供給すること、個々のアクセスポイント１４の動作を同調させること、アクセスポイント１４が他のプライベートネットワークの一部となるのを防止すること、及び可能な限り最高のネットワーク性能を保証することである。アクセスポイント１４の動作の多くの側面がクラウドサービス５０２、５０４によって制御されるので、クラウド支援なしに各個々のアクセスポイント１４のクラウド接続性を確立すること（以後、ブートストラップ処理と呼ぶ）が重要である。
【００８１】
ブートストラップ処理で対処が必要な主な事項は、ノードの役割を決定すること、すなわちノードがゲートウェイノードかどうかを発見すること；親機がクラウドサービスに到達でき一般的なインターネットアクセスをＷｉ−Ｆｉクライアントに提供できるようになるまでは、ノード間接続（親機−子機の関係）が決して確立されないようにすること；及びどのノードもゲートウェイノードへの単一経路のデータ経路接続を有することを保証すること、である。
【００８２】
図１３を参照すると、一例示的実施形態では、フローチャートが、分散Ｗｉ−Ｆｉシステム１０内の通信を確立するためのＷｉ−Ｆｉ設定処理５５０を説明する。Ｗｉ−Ｆｉ設定処理５５０は１つのアクセスポイント１４に関して説明されているが、当業者であれば、全アクセスポイント１４がＷｉ−Ｆｉ設定処理５５０を実行可能であることを認識しよう。パワーオンリセット（例えば、アクセスポイント１４の差込み）後、アクセスポイント１４はスキャンモードを開始する（ステップ５５１）。アクセスポイント１４がスキャンモードにあるとき、それは既定のＳＳＩＤで両方の無線波帯域でＷｉ−Ｆｉネットワークを探し、また、スキャンモードにあるとき、アクセスポイント１４は有線接続の利用可能性をチェックする（ステップ５５２）。
【００８３】
アクセスポイント１４が既定のＳＳＩＤでＷｉ−Ｆｉネットワークの存在を検出し、それに接続できた場合（ステップ５５３）、このアクセスポイント１４はＷｉ−Ｆｉノードの役割を担う（ステップ５５４）。アクセスポイント１４が有線接続の存在を検出し（ステップ５５３）、Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＤＨＣＰ）プロトコルを用いてネットワークを構成することができ、クラウドコントローラーとの接続が確立できた場合（すなわちサービス５０４）、このアクセスポイント１４はゲートウェイの役割を担う（ステップ５５５）。スキャンモード中、アクセスポイント１４はクライアントにＷｉ−Ｆｉサービスを提供しないし、他のノードにもＷｉ−Ｆｉサービスを提供しないことを強調することは重要である。このため、クラウドサービスに到達できる前にユーザークライアント接続及びノード間接続が確立されることが防止される。
【００８４】
ゲートウェイノードがクラウドサービス５０４への接続を確立する（ステップ５５６）とすぐに、クラウドサービス５０４はゲートウェイが適切に動作するための全ての必要な設定、すなわちパラメーターを送信し、アクセスポイント１４がこれらの設定を受信する（ステップ５５７）。パラメーターには、Ｈｏｍｅ  Ｗｉ−Ｆｉサービス（Ｗｉ−Ｆｉクライアントデバイス１６の接続を可能にするユーザーＷｉ−Ｆｉサービス）、Ｉｎｔｅｒ−ｃｏｎｎｅｃｔｉｏｎｓ  Ｗｉ−Ｆｉサービス（ノード間接続に用いられる）、認証サービス５０２のＩＰアドレス、ゲートウェイノードでのユーザートラフィックの正しい転送及びルーティングに必要な全てのネットワーク構成、正しいソリューション動作のために必要な全ての設備設定（例えばＤＨＣＰサーバー、ＤＨＣＰクライアント設定等）、このプライベートネットワークへの接続が許可されるノードのホワイトリスト等が含まれる。これらの設定は、ゲートウェイノードが受信するとすぐにデバイスのソフトウェアに適用され、他のノード及びユーザークライアントの両方に対するＷｉ−Ｆｉサービスが可能になる（ステップ５５８）。
【００８５】
Ｗｉ−Ｆｉノードは、既定のＳＳＩＤでＷｉ−Ｆｉネットワークを検知すると、Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ａｃｃｅｓｓ（ＷＰＡ）−ＥｎｇｅｒｐｒｉｓｅモードのＷｉ−Ｆｉ保護アクセスプロトコルを用いてそれに接続しようとする（ステップ５５９）。親機アクセスポイント１４（当該Ｗｉ−ＦｉノードがＷｉ−Ｆｉで接続している）はまず、そのＷｉ−Ｆｉノードがネットワークホワイトリスト（リストはクラウドサービス５０４により提供される）に載っているかどうかをチェックする（ステップ５６０）。そのＷｉ−Ｆｉノードが許可されたデバイスのリストに載っていなければ、親機アクセスポイント１４はクライアント接続を切断する。そのＷｉ−ＦｉノードがこのＷｉ−Ｆｉネットワークへの接続が許可されたデバイスのリストに載っていれば、その認証情報が親機アクセスポイント１４によって認証サービス５０２に送信される。ここで、接続しているデバイスの認証情報が確認される。認証結果は、Ｒｅｍｏｔｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｄｉａｌ−Ｉｎ  Ｕｓｅｒ  Ｓｅｒｖｉｃｅ（ＲＡＤＩＵＳ）プロトコルを用いて親機アクセスポイント１４に戻され共有される。認証が成功した場合、Ｗｉ−Ｆｉノードは親機アクセスポイント１４への接続を許可されるが、認証が失敗した場合、Ｗｉ−Ｆｉノードはブラックリストに載せられ、接続を拒否される。接続が許可されると、Ｗｉ−Ｆｉノードはクラウドサービス５０４によってゲートウェイノードに提供された設定を受信する（ステップ５６１）。
【００８６】
Ｗｉ−Ｆｉ設定処理５５０は、その特定の分散Ｗｉ−Ｆｉシステム１０の一部となる予定のノードだけが接続を許可されることを保証する。永続記憶領域に適切な認証情報が存在しているノードだけが認証処理を成功裏に通過し、分散Ｗｉ−Ｆｉシステム１０への接続を許可される。ノード間接続は常に暗号化されるので、あらゆるユーザートラフィックが保護される。
【００８７】
分散Ｗｉ−Ｆｉシステム１０に接続しようとするノードは、代替帯域で同じ親機ノード（同じＢＳＳＩＤ）と接続しようとすることがある。その代替帯域ネットワークに到達できない場合、ノードは当該代替無線帯域で接続しようとしない。ノードは、分散Ｗｉ−Ｆｉシステム１０内のノードの１つとクライアントＷｉ−Ｆｉ接続を確立するとすぐにスキャンモードを終了し、通常動作モードを開始する。
【００８８】
通常動作モードでは、アクセスポイント１４がクラウドサービス５０４に接続しようとする。クラウドサービス５０４への接続が確立されると、ゲートウェイノード及び場合によっては他のノードを通じて、ゲートウェイノードと同じセットのパラメーター及び構成を受信することになる。全ての必要なデータをクラウドサービス５０４から受信して初めて、この新規接続ノードはＷｉ−Ｆｉサービスをユーザークライアント及び分散Ｗｉ−Ｆｉシステム１０内の他のノードの両方に供給する。
【００８９】
Ｗｉ−Ｆｉ設定処理５５０は、代替ノード−ノード接続の確立を防止し、分散Ｗｉ−Ｆｉシステム１０内の個別のノードとゲートウェイノードとの間に単一のデータ経路だけがあることを保証する（ツリー型ネットワークトポロジーを生成する）。そのようなトポロジーは、ネットワークトポロジーを発見するための追加のネットワークプロトコルの必要性がないことを保証する。各親機は接続しているクライアントのリストを有し、このリストをクラウドサービス５０４に送信する。クラウドサービス５０４は分散Ｗｉ−Ｆｉシステム１０内の全ノードから接続しているクライアントのリストを受信するので、ネットワークトポロジーを決定しその変更に対処するのに必要な全情報を有している。
【００９０】
分散Ｗｉ−Ｆｉシステム１０が稼働するようになると、分散Ｗｉ−Ｆｉシステム１０を中断し得るいくつかの事象がある。分散Ｗｉ−Ｆｉシステム１０は、その性能を改善するためにクラウドサービス５０４によって課せられるポリシーの変更を有することがある。そのようなトポロジーの変更は、一定量の変更を段階的なセットで実施することができる。しかし、ネットワークを完全に分解し、Ｗｉ−Ｆｉ設定処理５５０で説明される手順に従いネットワークを再編させることにより実施してもよい。別の中断源は、停電であり得る。停電からの回復に、いくつかのよい技法を用いることができる。第１に、分散Ｗｉ−Ｆｉシステム１０は、停電前の最後の既知の良好な状態に復帰することができる。その利点は、インターネットへのアクセスが再確立されていなくても動作することである。その欠点は、クラウドなしにネットワークを再確立するために、アクセスポイント１４が状態を記憶する必要があり、ある量の内蔵制御を有することが必要であり得ることである。停電後の他の手法は、Ｗｉ−Ｆｉ設定処理５５０で説明したように、ノードに初期オンボード化シーケンスを通過させることである。これはクラウドサービス５０４により制御されるので、このようにしてネットワークを再編するのにノードは何ら特別な収集情報を必要としない。
【００９１】
Ｗｉ−Ｆｉ設定処理５５０を図１０Ａ、１０Ｂ、１１Ａ、１１Ｂ、及び１２に示す。図１０Ａでは、認証サービス５０２及びクラウドサービス５０４は、インターネット及びネットワーク５０６に接続されている。アクセスポイント１４−１、１４−２、１４−３は電源オンの状態である。ゲートウェイアクセスポイント１４−１は、そのネットワーク５０６への有線接続に基づき、それがゲートウェイノードであると判定する。図１０Ｂでは、ゲートウェイアクセスポイント１４−１がクラウドサービス５０４に接続し、設定を受信し、構成する。ゲートウェイアクセスポイント１４−１は、既定のＳＳＩＤで他のアクセスポイント１４−２、１４−３に対し、及び構成に基づくホームＳＳＩＤでＷｉ−Ｆｉクライアントに対し、Ｗｉ−Ｆｉサービスを開始する。
【００９２】
図１１Ａでは、アクセスポイント１４−２、１４−３が、既定のＳＳＩＤでゲートウェイアクセスポイント１４−１に接続することにより、Ｗｉ−Ｆｉノードとしてのオンボード化処理中である。図１１Ｂでは、ゲートウェイアクセスポイント１４−１が認証サービス５０２に接続して、アクセスポイント１４−２、１４−３を確認している。アクセスポイント１４−３は、ゲートウェイアクセスポイント１４−１との既定のＳＳＩＤでの接続に基づき、クラウドサービス５０４と通信し、設定を受信し、既定のＳＳＩＤ及びホームＳＳＩＤを含むそのＷｉ−Ｆｉサービスを構成する。
【００９３】
図１２では、アクセスポイント１４−２、１４−３がオンボード化され、両方が既定のＳＳＩＤ及びホームＳＳＩＤでＷｉ−Ｆｉサービスを提供している。新アクセスポイント１４−４、１４−５がアクセスポイント１４−２に既定のＳＳＩＤで接続し、設定を受信し、既定のＳＳＩＤ及びホームＳＳＩＤを含むそのＷｉ−Ｆｉサービスを構成する。
【００９４】
レジストリ
図１４を参照すると、一例示的実施形態では、ネットワーク図が、中央管理されるレジストリ５６５に接続している様々な分散Ｗｉ−Ｆｉシステム１０を説明する。本明細書で説明するように、アクセスポイント１４は、それらが接続しなければならないクラウドサービス５０２、５０４のアドレスを把握しているものと仮定する。このことは概念的には簡単であるが、実際には、全てのタイプ及び世代のアクセスポイント１４が必要なサービス５０２、５０４を得るために接続可能な常在の場所を維持することは困難であり得る。この問題は、サービス５０２、５０４の場所の中央管理されるレジストリ５６５によって克服することができる。例えば、消費者の複数の住居５７２の多数のアクセスポイント１４が複数の異なるネットワーク５７４で展開されており、これらのアクセスポイント１４はそれらのライフサイクルにわたってパブリッククラウド内でホストされている異なるサービス５０２、５０４に接続しなくてはならない。本明細書で説明するように、これらのサービスは、認証サービス５０２、クラウド構成サービス５０４、統計サービス５７６、ログ収集サービス５７８等を含むことができる。さらに、異なる場所で稼動する異なる環境５７０Ａ、５７０Ｂ、５７０Ｃ（例えば開発、品質保証（ＱＡ）、及び製造、又は特定のＩＳＰの異なるオペレーター系列）がある。アクセスポイント１４のファームウェア内にサービス場所を固定的に構成することは、不便（各環境５７０Ａ、５７０Ｂ、５７０Ｃ用に特別構築される時間構成を要する）且つ融通が利かない（サービス場所をファームウェアに焼き込んでしまうと変更不可、又は、異なる場所に接続するにはファームウェアの再フラッシュが必要）。
【００９５】
これらの問題に対処するため、中央管理されるレジストリ５６５は公知の安定した固定の場所で稼動する。中央管理されるレジストリ５６５は、アドミン５８２によりアドミンユーザーインターフェース（ＵＩ）、ツール、又はアプリケーションプログラミングインターフェース（ＡＰＩ）を用いて構成されて、様々なノードをそれらが接続すべきサービス場所にマッピングする。中央管理されるレジストリ５６５は、全てのアクセスポイント１４内で、ファームウェアのインストール中に構成される。アクセスポイント１４が起動しＷｉ−Ｆｉ設定処理５５０を実行するとき、アクセスポイント１４はまず、中央管理されるレジストリ５６５との接続を確立する。中央管理されるレジストリ５６５は、アクセスポイント１４に、シリアルナンバー、ファームウェアのバージョン、パブリックＩＰアドレス（それからアクセスポイント１４の位置情報を大まかに推定できる）などのメタデータ情報を問い合わせる。中央管理されるレジストリ５６５はこれらのメタデータを内部構成されたマップと突き合わせて、アクセスポイント１４が接続すべき様々なサービス５０４、５７６、５７８の場所を決定する。アクセスポイント１４上にサービスの場所を設定するのは中央管理されるレジストリ５６５であり、アクセスポイント１４はこれらの場所を用いてクラウド１２内のサービス５０４、５７６、５７８に接続する。アクセスポイント１４が（可能性として、クラウドコントローラーからのコマンドに応じて）リブートするときはいつでもこの同じ処理を通過し、そうすることでアドミン５８２が時間の経過とともにサービス場所を変更し、バージョニング、アップグレード、スケーラビリティ、高利用性その他などのためにアクセスポイント１４を一方のサービス場所から他方へと移動させることが可能になる。この手法を図１４に説明する。
【００９６】
レジストリベースの再指定手法は、アクセスポイント１４のファームウェア内に単一のサービス場所、すなわち中央管理されるレジストリ５６５を構成することを可能にし、そうすることでアクセスポイント１４のファームウェアを、時間の経過とともに変化し得る、又は異なる環境５７０Ａ、５７０Ｂ、５７０Ｃによって相違し得るサービス場所から解放する。中央管理されるレジストリ５６５は、クラウドベースのサービスが、時間の経過とともに移動して、同時に展開されサポートされる複数アクセスポイントのファームウェアのバージョンに対応することを可能にする。中央管理されるレジストリ５６５は、クラウドベースのサービスが、アクセスポイント１４のグループを特定のサービス事例に割り当てることによって水平方向にスケールアウトすることを可能にする。アクセスポイント１４が元のサービスを利用できなくなると別の場所を探すために中央管理されるレジストリ５６５に戻ることができるので、中央管理されるレジストリ５６５によってクラウドベースのサービスの利用可能性が高まる。
【００９７】
ノードの制限
図１５を参照すると、一例示的実施形態では、ネットワーク図が、分散Ｗｉ−Ｆｉシステム１０が中に各々構成された隣接する２軒の住居５７２Ａ、５７２Ｂを説明する。分散Ｗｉ−Ｆｉシステム１０は、Ｈ１．Ｎ１、Ｈ１．Ｎ２．、…、Ｈ２．Ｎ１、Ｈ２．Ｎ２、…と表示される様々なアクセスポイント１４を含み、ここでＨＩは住居５０２Ａ、Ｈ２は住居５７２Ｂ、Ｎｘはその中のアクセスポイントｘ（ｘ＝１、２、３、…）である。どの分散Ｗｉ−Ｆｉシステム１０でも、起動時の主な関心事は、アクセスポイント１４を正しいネットワークに接続することである。無線信号は隣の住居５７２Ａ、５７２Ｂまで飛ぶことがあるので、アクセスポイント１４が隣家のネットワークに接続する危険がある。したがって、アクセスポイント１４が隣家のネットワークに接続しないように制限するシステムを確立することは有益である。図１５では、アクセスポイント１４を制限するための、クラウド１２（インターネット）に接続されたバックホールネットワーク構成サービス５９５を説明する。
【００９８】
Ｗｉ−Ｆｉ設定処理５５０で説明したように、アクセスポイント１４は、当該ゲートウェイアクセスポイント１４が有線接続を介しクラウド１２に接続した状態で住居５７２内の他のアクセスポイント１４に既定のＳＳＩＤで接続することよって、分散Ｗｉ−Ｆｉシステム１０を形成する。既定のＳＳＩＤはバックホールＳＳＩＤと呼ばれることがある。分散Ｗｉ−Ｆｉシステム１０を形成するために、同じバックホールＳＳＩＤ及び当該ＳＳＩＤの認証機構が全アクセスポイント１４で用いられる。分散Ｗｉ−Ｆｉシステム１０を有する隣同士の住居５７２が互いに近接している場合、一顧客に属する一方の住居５７２Ａのアクセスポイント１４（Ｈ１．Ｎ１．．Ｈ１．Ｎ６）は、隣の住居５７２Ｂのアクセスポイント１４（Ｈ２．Ｎ１．．Ｈ２．Ｎ６）からのＳＳＩＤブロードキャストを見て接続することができる場合がある。このことは、一顧客のトラフィックを別の顧客のインターネット接続を通じて稼働させることになるので、望ましくなく、回避しなければならない。
【００９９】
バックホールネットワーク構成サービス５９５は、クラウド１２内でホストされ稼働し、例えばその場所は中央管理されるレジストリ５６５により把握されている。バックホールネットワーク構成サービス５９５及びクラウドサービス５０４は、全アクセスポイント１４がバックホールネットワーク構成サービス５９５により構成可能であることを保証する。ユーザーが複数のアクセスポイント１４を取得すると、Ｗｉ−Ｆｉ設定処理５５０の前に、ユーザーは、モバイルデバイス、移動アプリケーション（例えば、ｉＯＳ又はＡｎｄｒｏｉｄ（登録商標））、及びアクセスポイント１４が発するＢｌｕｅｔｏｏｔｈビーコンを用いてアクセスポイント１４を「要求」することができる。この情報によって、バックホールネットワーク構成サービス５９５はどのアクセスポイント１４がどの分散Ｗｉ−Ｆｉシステム１０に属するかを把握し、バックホールネットワーク構成サービス５９５は、たとえ既定のＳＳＩＤが可視／接続可能であっても、そのアクセスポイント１４が隣家のノードに接続しないよう徹底できる。各住居５７２Ａ、５７２Ｂについて要求されたノードは、バックホールネットワーク構成サービス５９５により登録され、したがってバックホールネットワーク構成サービス５９５はどのアクセスポイント１４がどちらの住居５７２Ａ、５７２Ｂに属するかを把握する。尚、この登録は、分散Ｗｉ−Ｆｉシステム１０とは別のネットワーク、例えばＬＴＥ、３Ｇ、他のＷｉ−Ｆｉネットワーク等で実行することができ、すなわち、モバイルデバイスは、要求されたノードを、モバイルアプリを介してバックホールネットワーク構成サービス５９５に通信することができる。
【０１００】
図１５で、次に例示的動作を説明する。第１のアクセスポイント１４Ｈｌ．Ｎｌはゲートウェイノードであり、モデム／ルーター１８及びクラウド１２に接続して、バックホールネットワーク構成サービス５９５に接続している。要求処理に基づき、バックホールネットワーク構成サービス５９５は、候補アクセスポイント１４のリストを第１のアクセスポイント１４Ｈｌ．Ｎｌに提出することができる。例えば、リストは、各アクセスポイント１４（Ｈ１．Ｎ２．．Ｈ１．Ｎ６）のＭＡＣアドレスに基づくことができる。このリストにより、アクセスポイント１４Ｈｌ．Ｎｌは、これらのノードだけに接続を許可すべきことを把握する、すなわちホワイトリストである。アクセスポイント１４Ｈｌ．Ｎｌは、既定のＳＳＩＤ（バックホールＳＳＩＤ）でＷｉ−Ｆｉサービスを開始する。アクセスポイント１４Ｈ１．Ｎ２．．Ｈ１．Ｎ６が起動して既定のＳＳＩＤのサーチを開始し、既定のＳＳＩＤをホストしているアクセスポイント１４Ｈｌ．Ｎｌを見出す。アクセスポイント１４Ｈ１．Ｎ２．．Ｈ１．Ｎ６はアクセスポイント１４Ｈｌ．Ｎｌに接続し、そうすることが許可されるが、それはアクセスポイント１４Ｈｌ．Ｎｌがそれらのバックホールネットワーク構成サービス５９５へのアクセスを許可するように事前構成されているからである。バックホールネットワーク構成サービス５９５は、ゲートウェイノードを通じてアクセスポイント１４Ｈ１．Ｎ２．．Ｈ１．Ｎ６を構成することができる。
【０１０１】
次に、隣の住居５７２Ｂのアクセスポイント１４Ｈ２．Ｎ４が、住居５７２Ａのアクセスポイント１４Ｈ１．Ｎ３からの既定のＳＳＩＤブロードキャストを見ることができ、接続を試みると仮定する。アクセスポイント１４Ｈ１．Ｎ３は、住居５７２Ｂのアクセスポイント１４Ｈ２．Ｎ４へのアクセスを拒否するが、それは自体の住居５７２Ａ内のコホートノードへのアクセスだけを許可するように構成されているからである。当然ながら、逆方向でも同じことになる。
【０１０２】
バックホールネットワーク構成サービス５９５により、たとえ隣同士の住居５７２のアクセスポイント１４が互いのバックホールＳＳＩＤを見ることができるとしても、要求処理に基づいて自らの住居５７２内のアクセスポイント１４にだけ接続するように制限されている。こうすれば、一顧客のデバイスからのインターネットトラフィックが保証され、ノードはこの顧客が自分の住居に関して所有し要求するノード上だけを移動し、トラフィックが隣家のノード上を移動することは絶対にないので、データプライバシーの危険がなくなる。
【０１０３】
サービス５０２、５０４、５７６、５７８、５９５は、クラウド１２内のサーバー２０又は複数のサーバー２０上で操作されることができる。本明細書で説明するように、アクセスポイント１４は、モデム／ルーター１８への有線接続及び既定のＳＳＩＤにより、クラウド１２及びサービス５０２、５０４、５７６、５７８、５９５に到達することができる。全てのアクセスポイント１４は設定後も引き続き既定のＳＳＩＤに対応することができるが、この既定のＳＳＩＤはオープンではない。具体的には、既定のＳＳＩＤは、アクセスポイント１４内の証明書を要求する。証明書は各アクセスポイント１４で記憶され、どのアクセスポイント１４がクラウド１２に到達できるかを制限するのに用いられる。バックホールネットワーク構成サービス５９５は、どのアクセスポイント１４がどの分散Ｗｉ−Ｆｉシステム１０に加わることができるかを制限するのに用いられる。これらの技法は、停電等からの回復のために用いることもできる。
【０１０４】
無線機の要求
ここでまた、分散Ｗｉ−Ｆｉシステム１０は、ゲートウェイ動作モードでもブリッジ動作モードでも動作可能な複数のアクセスポイント１４を含む。ゲートウェイノードは、モデム／ルーター１８に接続されたアクセスポイント１４を含むが、分散Ｗｉ−Ｆｉシステム１０内の残りのアクセスポイント１４は、ブリッジノードである。分散Ｗｉ−Ｆｉシステム１０内のアクセスポイント１４と、関連付けられたＷｉ−Ｆｉクライアントデバイス１６とが一緒に「ホームネットワーク」を構成している。つまり、アクセスポイント１４、及び関連付けられたＷｉ−Ｆｉクライアントデバイス１６は、典型的には１軒の家又はマンションの部屋に属し、各アクセスポイント１４はデータ及び管理プレーン内で、互いに又は当該ホームネットワークに属するＷｉ−Ｆｉクライアントデバイス１６と通信可能である。アクセスポイント１４間又はＷｉ−Ｆｉクライアントデバイス１６との通信は、無線技術又は有線技術のどちらを使用してもよい。有線技術は、典型的には、物理的な性質上ホームネットワーク内に限られるが、無線通信は、壁、床、屋根等を通過して他の隣家にまで拡散する無線通信能力によって、ホームネットワークと他のネットワーク／場所との間の送信が可能である。したがって、ホームネットワーク、及びそのホームネットワークに属するアクセスポイント１４又はＷｉ−Ｆｉクライアントデバイス１６の境界を定める機構が必要である。
【０１０５】
Ｂｌｕｅｔｏｏｔｈビーコン
Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙは、無線パーソナルエリアネットワーキングプロトコルであり、送信デバイスについての特定の情報を含む一方向のビーコンを送信して、受信デバイスに送信デバイスの状況、識別子その他などの情報を伝えることができる。Ｂｌｕｅｔｏｏｔｈビーコンは、デバイスから送信される、一意識別子（ＵＵＩＤ）マーカー（例えば、シリアルナンバー）及び送信デバイスの製品分類（例えば、ＵＵＩＤ）が状況表示とともに含まれるデータパケット又は一連のデータパケットである。状況表示は、送信デバイスの動作状態、通信ポートの性能及び状況、並びにトラブルシューティング又は不良の状態に関する情報を提供することができる。ｉＢｅａｃｏｎ（Ａｐｐｌｅ社）及びＥｄｄｙｓｔｏｎｅ（Ｇｏｏｇｌｅ社）などの規格は、そのようなビーコンを送信する標準化されたフレームフォーマットであるが、諸特許にある手法も、同等の機能性を有して使用できることもある。
【０１０６】
アクセスポイント１４、又は別のそのようなネットワーキングデバイスは、様々な電力レベル（power level）でＢｌｕｅｔｏｏｔｈビーコンを送信して、リッスン中のデバイスに送信デバイスの識別及び状況を知らせることができる。無線ビーコンの電力レベルは、壁を通過して又はその部屋の外部に送信されないような強度に設定することができ、したがって隣家又はマンションの隣の部屋内のデバイスがそのビーコン情報を受信する機会を制限することができる。この拡散距離の制限は、ホームネットワークの発見範囲を、家又はマンションの部屋などの限られた空間に隔離するのに役立つ。Ｂｌｕｅｔｏｏｔｈビーコンは、典型的には、リッスン中のデバイスに送信デバイスの識別表示を通知する一意識別子を含む。それに加えて、同じ又は後続のビーコンが、送信デバイスの動作又は状態に関する状況情報を含むことができる。電話又はコンピューターなどのリッスン中のデバイスは、ビーコンを処理して、送信デバイスのプロビジョニング（供給）及び監視を支援することができる。
【０１０７】
分散Ｗｉ−Ｆｉネットワーク内のデバイスの要求
図１６を参照すると、一例示的実施形態では、ネットワーク図が、分散Ｗｉ−Ｆｉシステム１０又は他の分散Ｗｉ−Ｆｉネットワークの無線デバイス１４、１６を要求する設定６００を説明する。設定６００は、アクセスポイント１４又はＷｉ−Ｆｉクライアントデバイス１６及びインターネット６２０経由のクラウドコントローラー６１０の両方と通信しているユーザーデバイス２２（これはＷｉ−Ｆｉクライアントデバイス１６の１つであってもよい）を含む。クラウドコントローラー６１０は、分散Ｗｉ−Ｆｉシステム１０内のクラウド１２及びサーバー２０であってもよい。ユーザーデバイス２２は、図６に示すものと同様のアーキテクチャを含む。ユーザーデバイス２２は、モバイルアプリケーション（「アプリ」）６３０、第１のインターフェース６４０、及び第２のインターフェース６５０を含む。図６では、アプリ６３０はプログラム２１６の１つであってもよく、インターフェース６４０、６５０はネットワークインターフェース２０６の一部であってもよい。第１のインターフェース６４０は、Ｂｌｕｅｔｏｏｔｈなどの無線パーソナルエリアネットワーク（ＰＡＮ）インターフェースであってもよい。第２のインターフェース６５０は、ＬＴＥ、３Ｇ、Ｗｉ−Ｆｉその他などのワイドエリアネットワーク（ＷＡＮ）又はローカルエリアネットワーク（ＬＡＮ）インターフェースであってもよい。第２のインターフェース６５０がＷｉ−Ｆｉである場合、分散Ｗｉ−Ｆｉシステム１０以外の異なるＷｉ−Ｆｉネットワークでも動作可能であるが、それは、ここではユーザーデバイス２２が、分散Ｗｉ−Ｆｉシステム１０を設定するためノードを要求するのに用いられるからである。アプリ６３０は、（クラウドコントローラー６１０により）分散Ｗｉ−Ｆｉシステム１０内のデバイスを発見し、要求し、分割する、本明細書で説明する様々な機能を実行するように構成されている。
【０１０８】
図１７を参照すると、一例示的実施形態では、フローチャートが、ユーザーデバイス２２を用いて分散Ｗｉ−Ｆｉシステム１０内のアクセスポイント１４を要求する要求方法４００を説明する。図１８〜図２２を参照すると、例示的実施形態では、スクリーンショットが、モバイルアプリ６３０における動作を説明する。図１８は、複数のアクセスポイント１４（「ポッド」）を探しているモバイルアプリ６３０のスクリーンショットであり、図１９は、複数のアクセスポイント１４を見つけたモバイルアプリ６３０のスクリーンショットであり、図２０は、アクセスポイント１４を一意に識別する目的で、１つのアクセスポイント１４を探しているモバイルアプリ６３０のスクリーンショットであり、図２１は、アクセスポイント１４を一意に命名するモバイルアプリ６３０のスクリーンショットであり、図２２は、各アクセスポイント１４が一意に要求され命名されている分散Ｗｉ−Ｆｉシステム１０の現在の構成を示しているモバイルアプリ６３０のスクリーンショットである。
【０１０９】
図１７では、まず、ユーザーデバイス２２は、新たに電源オンになったアクセスポイント１４を発見することができる（ステップ６７１）。新たに電源オンになったアクセスポイント１４の発見には、Ｂｌｕｅｔｏｏｔｈ又は本明細書で説明するような何らかの他の無線ＰＡＮ接続を用いることができる。一例示的実施形態では、アクセスポイント１４は、Ｂｌｕｅｔｏｏｔｈ、Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ、又は何らかの他の無線ＰＡＮインターフェースによりユーザーデバイス２２に一方向の情報をブロードキャストするように構成されている。ここでまた、一方向の情報は、アクセスポイント１４の状況、識別子等を含むことができる。別の例示的実施形態では、新たに電源オンになったアクセスポイント１４の発見には、既定のＳＳＩＤを介することがあり、この場合、新たに電源オンになったアクセスポイント１４は、単に一方向の情報を通信する。例えば、モバイルアプリ６３０は、ユーザーデバイス２２に一方向の情報について既定のＳＳＩＤを監視させるように構成されることがある。また、モバイルアプリ６３０は、新たに電源オンになったアクセスポイント１４に通信して、一方向の情報が受信されたという確認応答を提供することができ、また、任意選択により、新たに電源オンになったアクセスポイント１４は、既定のＳＳＩＤでの送信を切断することができる。さらなる例示的実施形態では、新たに電源オンになったアクセスポイント１４は、モバイルアプリ６３０によって、ユーザーデバイス２２と関連付けられたカメラを用いて発見されることがある。例えば、ユーザーは、新たに電源オンになったアクセスポイント１４にカメラを向けることができ、これらのアクセスポイント１４は、アクセスポイント１４上の発光ダイオード（ＬＥＤ）などの状況表示の一意的変調を通じて一方向の情報を提供することができる。新たに電源オンになったアクセスポイント１４を発見することには、他の技法も意図される。
【０１１０】
要求方法６７０は、モバイルアプリ６３０を操作するユーザーデバイス２２により実行される。ステップ６７１の新たに電源オンになったアクセスポイント１４の発見は、モバイルアプリ６３０を通じて実行される。新たに電源オンになったアクセスポイント１４の発見は、分散Ｗｉ−Ｆｉシステム１０の住居、家、場所等、ローカルで実行される。図１８では、ユーザーは、アクセスポイント１４である「残りのポッドを点在させる」ように指示され、モバイルアプリ６３０は新たに電源オンになったアクセスポイント１４を探す、すなわち発見するように構成される。図１９では、モバイルアプリ６３０は視覚表示を提供している７つのアクセスポイント１４を発見している。尚、右上のアクセスポイント１４は、これがモデム／ルーター１８に接続しているゲートウェイノードであることを示す地球儀のアイコンを含み、残りのアクセスポイント１４は、これらがモデム／ルーター１８に接続していないＷｉ−Ｆｉノードであることを示すチェック印のアイコンを有する。
【０１１１】
新たに電源オンになったアクセスポイント１４が発見されると（ステップ６７１）、新たに電源オンになったアクセスポイント１４はユーザーデバイス２２を用いて要求される（ステップ６７２）。アクセスポイント１４を要求する処理は、アクセスポイント１４の所有権を分散Ｗｉ−Ｆｉシステム１０に割り当てる。具体的には、要求されたアクセスポイント１４だけが、分散Ｗｉ−Ｆｉシステム１０内で通信し動作することを許可される。一例示的実施形態では、アクセスポイント１４は、発見及び関連のある一方向の情報に基づき自動的に要求される。ここで、モバイルアプリ６３０は、一方向の情報の受信に基づきアクセスポイント１４を自動的に要求することができる。任意選択により、要求されたアクセスポイント１４を、モバイルアプリ６３０を介して承諾する選択枝がユーザーに与えられることがある。尚、発見及びそれに基づく自動的な要求は、アクセスポイント１４に分散Ｗｉ−Ｆｉシステム１０内のメンバーシップを割り当てることができるが、これらの手法は必ずしも各アクセスポイント１４の正確な物理的位置を提供するものではない。
【０１１２】
要求方法６７０は、任意選択により、各新たに発見されたアクセスポイント１４の位置判別を含むことができる。一例示的実施形態では、位置判別は、要求ステップ６７２に続いて実行される。別の例示的実施形態では、アクセスポイント１４は、位置判別を通じて要求される。どちらの手法でも、位置判別は、モバイルアプリ６３０を用いての処理であり、各アクセスポイント１４はその位置に基づき一意に特定される。位置判別処理は、モバイルアプリ６３０が、あるアクセスポイント１４の近傍にあること、及びユーザーが当該近傍アクセスポイント１４についての位置特定情報を入力することを含むことができる。例えば、モバイルアプリ６３０は、ユーザーデバイス２２と関連付けられたカメラを用いて近傍アクセスポイント１４を特定することができる。例えば、近傍アクセスポイント１４は、アクセスポイント１４上の状況表示（ＬＥＤ）の何らかの一意の情報の変調に基づき、カメラによって特定されることができる。
【０１１３】
図２０は、一意の判別のためにユーザーデバイス２２のカメラを用いるモバイルアプリ６３０を説明する。例えばユーザーは、新たに電源オンになったか又は発見されたアクセスポイント１４がカメラの視野に入るように、ユーザーデバイス２２を物理的に移動させることで、新たに電源オンになったか又は発見されたアクセスポイント１４をモバイルアプリ６３０の六角形のアイコンの視野に入れるように、モバイルアプリ６３０によって指示される。視野に入ると、アクセスポイント１４は、Ｂｌｕｅｔｏｏｔｈ通信、無線ＰＡＮ通信、状況表示の変化等を通じるなどして、一意に自己特定することができる。Ｂｌｕｅｔｏｏｔｈ通信又は無線ＰＡＮ通信の場合、通信は低電力かつアクセスポイント１４から外方に向かうことができるので、ユーザーデバイス２２は、アクセスポイント１４に近接しているときだけそれを認識できる。近接していることは、モバイルアプリの六角形のアイコン内にアクセスポイントを示すことによって、ユーザーに示される。
【０１１４】
アクセスポイント１４の位置が一意に判別されると、モバイルアプリ６３０は、ユーザーが、一意の名前、例えば部屋の名前、位置、又はユーザーにとって一意的な任意の他の識別情報を入力することを許可することができる。図２１は、アクセスポイント１４を命名するスクリーンショットのモバイルアプリ６３０である。ここで、ユーザーはモバイルアプリ６３０を用いて一意の名前、例えば、部屋１０、を与えることができる。
【０１１５】
図１７に戻ると、要求ステップ６７２の後、モバイルアプリ６３０は、要求された新たに電源投入されたアクセスポイント１４を、別ネットワークを介してクラウドコントローラー６１０、クラウドサービス、サーバー２０等へと中継するように構成されている（ステップ６７３）。本明細書で説明するように、別ネットワークは、分散Ｗｉ−Ｆｉシステム１０以外の任意のネットワーク、又は要求された新たに電源投入されたアクセスポイント１４と関連付けられた分散Ｗｉ−Ｆｉネットワークである。中央クラウドベース又はローカル管理システムからのＷｉ−Ｆｉアクセスポイント又はネットワーキングデバイスの用意には、新デバイスをクラウドコントローラー６１０と安全に関連付けるための重要な構成情報を渡すために２つの別々の通信ネットワーク同士の接続を要することがある。例えば、２つの別々の通信ネットワークは、ユーザーデバイス２２がアクセスポイント１４と通信し、それを発見し、要求するための第１のネットワーク（例えば、ＰＡＮ、Ｂｌｕｅｔｏｏｔｈ等）、及び要求されたアクセスポイント１４をクラウドコントローラー６１０に通信するための第２のネットワーク（例えば、ＬＴＥ、３Ｇ、Ｗｉ−Ｆｉ等）を含むことができる。別々の通信ネットワークの一例は、インターネットゲートウェイとのＢｌｕｅｔｏｏｔｈ無線接続及びＬＴＥセルラー接続である。Ｂｌｕｅｔｏｏｔｈ無線接続は、Ｗｉ−Ｆｉアクセスポイント又はネットワーキングデバイスをＬＴＥセルラー又はＷｉ−Ｆｉ可能デバイス、例えばユーザーデバイス２２と接続するポイントツーポイント通信プロトコルである。ユーザーデバイス２２は、別々のネットワークの両方のインターフェースと、これらのネットワーク同士をつないで２つの別々のネットワーク間でメッセージを渡すことができるソフトウェア、すなわちモバイルアプリ６３０とを有する。プロトコル及びメッセージフォーマットは別々のネットワーク間で異なっていてもよく、その場合、メッセージ及びプロトコルフォーマットを別ネットワーク要件に合うように変換するためのソフトウェア又はハードウェアのトランスレーターが必要となる。これはモバイルアプリ６３０を介して実施することができる。
【０１１６】
最後に、クラウドコントローラー６１０は、要求された新たに電源投入されたアクセスポイント１４を用意するように構成されることができる（ステップ６７４）。構成は、分散Ｗｉ−Ｆｉシステム１０又は分散Ｗｉ−Ｆｉネットワークにおける適切な動作のための動作パラメーターを含むことができる。それに加えて、構成には、要求された新たに電源投入されたアクセスポイント１４が、確実に、適切なＷｉ−Ｆｉネットワーク内の通信だけサポートすることが含まれる。
【０１１７】
構成された「パック」
Ｗｉ−Ｆｉアクセスポイント、又はホームネットワーク内の他のネットワーキングデバイスは、デバイスの「パック」として構成されて、ホームネットワークに属するグループを形成することができる。このグループは、一意識別子で結ばれた２つ以上のデバイスを含むことができる。このパックのデバイスは、事前構成された同パックの他のデバイスとだけ通信するように制限することができ、このことは、通信を制限する、及び、クラウドコントローラー６１０への通信を可能にする、という２つの主要な機能において役立つことができる。例えば、構成されたパックは、ホームネットワークの通信をパック内のデバイスのみに制限することができるので、ホームネットワーク外の他のデバイスの参加を防止できる。これにより、望ましくないデバイスがホームネットワークに意図的に又は偶然参加することが防止されるレベルの安全性が提供される。構成されたパックはまた、ホームネットワークのパックに属するデバイスだけに関連するパラメーター及び統計値を適用するか又は読み取る、クラウドコントローラー６１０によるクラウドベース又はローカルベースの用意及び監視を可能にする。
【０１１８】
ホームネットワークを構成している「パック」には、モバイルアプリ６３０、ウェブポータル等を介するなどして、新しいデバイスの一意識別子をパック定義に加えることによって、１つ又は複数のデバイスをいつでも加えることができる。ホームネットワークに属する一意識別子のパック定義は、クラウドコントローラー６１０又はローカル管理システムに存在することがある。ホームネットワークの管理者／所有者により注文された、ホームネットワークに加えられることがわかっている新Ｗｉ−Ｆｉ又は他のネットワーキングデバイスは、工場、販売又は小売のサプライチェーンで、新規又は既存のホームネットワークに属するように事前構成されてもよい。そうすれば、この事前構成されたデバイスは、管理者／所有者による入力なしに、既定のホームネットワークと自動的に関連し認証でき、また、自動的に加えられ、用意（プロビジョニング）され、監視されることができる。事前構成されたプロビジョニング情報は、Ｗｉ−Ｆｉアクセスポイント１４又はネットワーキングデバイスの代わりに、クラウドコントローラー６１０又はローカル管理システムに直接供給されてもよい。関連付けられたＷｉ−Ｆｉアクセスポイント１４又はネットワーキングデバイスがホームネットワーク管理プレーンにより発見されると、一意識別子が、クラウドコントローラー６１０又はローカル管理システム上に保存されている事前構成された設定のプロビジョニングプロファイルと照合され、ひいてはホームネットワークにおける当該デバイスの正しいプロビジョニング及び監視が可能になる。このゼロタッチのオンボード化により、大幅に操作し易くなる。例えば、新たに注文されたアクセスポイント１４は、クラウドコントローラー６１０のアカウントを通じるなどして、それを注文したユーザーに一意にタグ付けされることができる。
【０１１９】
事前構成
新デバイスの事前構成は、最終管理者／所有者が注文する際、又は最終ホームネットワークが判明している電子商取引、商取引若しくはロジスティクス処理のどこかの段階で、決定することができる。ここでまた、この新デバイスは、クラウドコントローラー６１０のアカウントを介するなどして管理者／所有者とつながることができる。事前構成がなされ得る適時としては、デバイス製造時、梱包出荷施設（pack-out facility）に輸送する準備中のデバイスの梱包時、梱包出荷施設における最終的な顧客用の包装前等が挙げられる。事前構成はさらに、販売業者又は小売パートナーに輸送される前になされることもあるが、それは最終顧客用包装として包装した後である。このことは、包装内容物の一意識別子を把握し、クラウドコントローラー６１０又はホームネットワークのローカルベースの管理サーバーでデバイスを事前構成することにより、実現可能である。事前構成はさらに、小売店で清算処理の際になされることもあり、この場合、包装内容物の一意識別子を、クラウドコントローラー６１０又はホームネットワークのローカルベースの管理サーバーでのデバイスの事前構成に結びつけることができる。
【０１２０】
事前構成は、２つの関連するシナリオであり得る。第１に、アクセスポイント１４のパックを構成することができ、その結果としてパックの全アクセスポイント１４が互いに接続するように事前構成されるが、特定のユーザー又はネットワークに対して事前構成されるものではない。ここで、１つのアクセスポイント１４だけが、特定のユーザー又はネットワークと関連付けるために、要求される必要がある。残りのアクセスポイント１４は、パック内の要求されたアクセスポイント１４の事前構成に基づき、特定のユーザー又はネットワークに自動的に要求されることができる。第２に、パックは、互いに接続するだけでなく、特定のユーザー又はネットワークと事前に関連付けられるように、事前構成されることができ、この場合、アクセスポイントの要求にユーザーの介入は必要ない。第１の筋書は、パックが小売業者から購入される場合に機能し、第２の筋書は、特定のアカウントと関連してパックが注文される場合に機能する。
【０１２１】
Ｗｉ−Ｆｉトポロジー
本明細書で説明するシステム及び方法は、複数の分散アクセスポイント１４を含むＷｉ−Ｆｉネットワークの初期トポロジーからの目標トポロジーの実現を調整する技法を提供する。例えば、システム及び方法は、分散Ｗｉ−Ｆｉシステム１０、並びにＷｉ−Ｆｉメッシュネットワーク３２、Ｗｉ−Ｆｉリピーターネットワーク３３その他などの他の分散Ｗｉ−Ｆｉネットワークでの操作を意図している。本明細書で説明するように、Ｗｉ−Ｆｉネットワークのトポロジーは、１セットのノードすなわちアクセスポイント１４の互いの親機−子機の関係により説明することができる。トポロジーはまた、任意選択により、アクセスポイント１４とＷｉ−Ｆｉクライアントデバイス１６との親機−子機の関係を含むことができる。親機−子機の関係は、バックホールリンクであってもよく、例えば、各リンクの周波数帯域、チャンネル、及びチャンネル幅を含むことができる。トポロジーの変更は、クラウド１２、クラウドコントローラー、クラウドベースのサービスその他などによって１セットのコマンドをノードに対して発行し、望ましい状態が実現されるように無線機１０４を構成するようアクセスポイント１４に指令することにより実現可能である。また、コマンドをＷｉ−Ｆｉクライアントデバイス１６に送信して、チャンネルの変更又は異なるアクセスポイント１４への接続を誘導することもできる。
【０１２２】
図２３を参照すると、一例示的実施形態では、ネットワーク図が、第１のトポロジー状態７０２及び第２のトポロジー状態７０４にある３ノードのＷｉ−Ｆｉネットワーク７００を説明する。Ｗｉ−Ｆｉネットワーク７００は、各々が２．４Ｇ無線機１０４及び５Ｇ無線機１０４を操作する、ノードＡ、Ｂ、Ｃと表示される３つのアクセスポイント１４を含む。第１のトポロジー状態７０２では、ノードＡは、２．４Ｇ無線機、Ｃｈ．１、２０MHzのバックホールリンクでノードＢに接続され、５Ｇ無線機、Ｃｈ．４０、４０MHzのバックホールリンクでノードＣに接続された親機ノードである。Ｗｉ−Ｆｉネットワーク７００はそのトポロジーを第２のトポロジー状態７０４に変更し、ここではノードＡはノードＢに対し２．４Ｇ無線機、Ｃｈ．６、２０Hzのバックホールリンクで親機ノードであり、ノードＢはノードＣに対し５Ｇ無線機、Ｃｈ．１４９、８０MHzのバックホールリンクで親機ノードである。
【０１２３】
Ｗｉ−Ｆｉトポロジーの変更処理
図２４を参照すると、一例示的実施形態では、ネットワーク図が、第１のトポロジー状態７５２及び第２のトポロジー状態７５４にある６ノードのＷｉ−Ｆｉネットワーク７５０を説明する。Ｗｉ−Ｆｉネットワーク７５０は、Ａ〜Ｆの６ノードを含む。図２５を参照すると、一例示的実施形態では、フローチャートが、Ｗｉ−Ｆｉネットワーク７５０におけるトポロジーを変更するための、操作を順次実行する第１の処理７８０を説明する。図２６を参照すると、一例示的実施形態では、フローチャートが、Ｗｉ−Ｆｉネットワーク７５０におけるトポロジーを変更するための、並列の変更を実行する第２の処理７９０を説明する。図２７を参照すると、一例示的実施形態では、ネットワーク図が、Ｗｉ−Ｆｉネットワーク７５０及び第１の処理７８０の例示的操作を説明する。図２８を参照すると、一例示的実施形態では、ネットワーク図が、Ｗｉ−Ｆｉネットワーク７５０及び第２の処理７９０の例示的操作を説明する。
【０１２４】
第１の処理７８０は、各ノードで、最初に、それらの親機を目標トポロジーすなわち第２のトポロジー状態７５４の望ましい親機ノードに変更すること（ステップ７８１）を含む。必要があれば、無線機、チャンネル、及びチャンネル幅の構成を、親機変更コマンドの一部として、目標親機の現在の構成と合うようにアップデートする（ステップ７８２）。第１の処理７８０は、次のノードに移動してステップ７８１、７８２を繰り返す前に、親機の変更が終わるまで待機すること（ステップ７８３）を含む。全ノードが各々の望ましい親機に固定されると、望ましい無線機、チャンネル、及びチャンネル幅の構成が全てのノードに適用される（ステップ７８４）。ルートノード／インターネットへの（すなわちゲートウェイノードへの）経路がない閉ループの形成を回避するために、親機の変更は、ルートまで最大数のホップを有するノードから順に開始することができる（ステップ７８５）。
【０１２５】
第２の処理７９０は第１の処理７８０と同様であるが最適化を有する。具体的には、第２の処理７９０は、各ノードで、最初に、それらの親機を目標トポロジーすなわち第２のトポロジー状態７５４の望ましい親機ノードに変更すること（ステップ７９１）を含む。必要があれば、無線機、チャンネル、及びチャンネル幅の構成を、親機変更コマンドの一部として、目標親機の現在の構成と合うようにアップデートする（ステップ７９２）。ステップ７９１、７９２の操作を順次すなわち「一度に１つずつ」実行する代わりに、第２の処理７９０は、目標トポロジー状態７５４の実現にかかる全体時間を減じるように最適化を含む。第２の処理７９０は、複数セットの互換性操作を並列で実行すること（ステップ７９３）を含む。１セットの親機変更操作は、操作対象のノードのセットについて、現トポロジーでも目標トポロジーでも、どのノードも別ノードのルートまでの経路に存在できない場合に、互換性がある。これによって、各ノードが各操作の直前直後にインターネット接続性を維持することが保証される。全ノードが各々の望ましい親機に固定されると、望ましい無線機、チャンネル、及びチャンネル幅の構成が全てのノードに適用される（ステップ７９４）。ルートノード／インターネットへの（すなわちゲートウェイノードへの）経路がない閉ループの形成を回避するために、親機の変更は、ルートまで最大数のホップを有するノードから順に開始することができる（ステップ７９５）。
【０１２６】
図２７は、第１の処理７８０の操作を説明する。初めに、Ｗｉ−Ｆｉネットワーク７５０は、第１のトポロジー状態７５２にある。第１の処理７８０では、Ｗｉ−Ｆｉネットワーク７５０は、第１のトポロジー状態７５２と第２のトポロジー状態７５４との間でステップ８０１、８０２、８０３、８０４の４ステップを通過する。第１に、ステップ８０１では、第１の選択ノード、ノードＤが、その現親機ノードＣからその新親機ノードＥに切り換えられる。第２に、ステップ８０２では、第２の選択ノード、ノードＣが、その現親機ノードＢからその新親機ノードＡに切り換えられる。第３に、ステップ８０３では、第３の選択ノード、ノードＦが、その現親機ノードＥからその新親機ノードＡに切り換えられる。最後に、ステップ８０４では、第４の選択ノード、ノードＢが、その現親機ノードＡからその新親機ノードＦに切り換えられる。ステップ８０４の後、Ｗｉ−Ｆｉネットワーク７５０は、今や目標トポロジーすなわち第２のトポロジー状態７５４にある。尚、ノードは、子機ノードがない場合は、現親機ノードから新しい望ましい親機ノードに切り換えられる。ノードは順次、一度に１つずつ移動させられる。第１の処理７８０は、各ステップで移動させる各ノードを、子機のない、ルートから（ホップの数だけ）最も離れたノードを選択することにより、選択することができる。
【０１２７】
図２８は、第２の処理７９０の操作を説明する。ここでまた、Ｗｉ−Ｆｉネットワーク７５０は、第１のトポロジー状態７５２から開始する。第２の処理７９０では、Ｗｉ−Ｆｉネットワーク７５０は、第１のトポロジー状態７５２と第２のトポロジー状態７５４との間でステップ８１１、８１２、８１３の３ステップを通過する、すなわち、第２の処理７９０は、最適化により、第１の処理７８０からステップを１つ除去する。第１に、ステップ８１１では、ノードＤ、Ｆを含むノードのグループが同時に移動するように選択されるが、それはもとのトポロジーでも最終トポロジーでも、ノードＤもノードＦもルートノードＡへの同じ経路上にないからである。ノードＤ、Ｆは、それらの新親機ノードＡへと移動させられる。第２に、ステップ８１２では、ノードＣ、Ｄを含むノードのグループが同時に移動するように選択されるが、それはノードＣもノードＤもルートノードＡへの同じ経路上にないからである。最後に、ステップ８１２では、ノードＢが選択され、その新親機ノードＦへと移動させられる。ステップ８１３の後、Ｗｉ−Ｆｉネットワーク７５０は、今や目標トポロジーすなわち第２のトポロジー状態７５４にある。
【０１２８】
ステップ７８４、７９４に関して、一例示的実施形態では、ステップ７８３、７９３でのノード移動は、初めに、子機ノードを現在の設定、すなわち、無線機、チャンネル、及びチャンネル幅で、新親機ノードに関連付けるか又は接続することにより実行することができる。新たに選択される設定、すなわち、無線機、チャンネル、及びチャンネル幅は、Ｗｉ−Ｆｉネットワーク７５０が新トポロジー状態７５２にある間に一括で適用することができる。したがって、トポロジー変更処理７８０、７９０中もＷｉ−Ｆｉネットワーク７５０内の接続性が存続する。つまり、ノードは子機１つずつ移動させられ、子機は移動の際に自体の子機を持たずに移動させられるので、Ｗｉ−Ｆｉネットワーク７５０内には常にルートへの経路が存在する。また、クラウドサービス及び／又はＷｉ−Ｆｉネットワーク７５０は、任意のＷｉ−Ｆｉクライアントデバイス１６を移動させてからノードを移動させることができるので、トポロジーの変更のせいでデータ消失がないようにさらに保証される。さらに、トポロジー変更処理７８０、７９０は、低負荷時、例えば夜遅い時間に実施することができる。
【０１２９】
ファームウェア／ソフトウェアのアップデート
図２９を参照すると、一例示的実施形態では、ネットワーク図が、１つ又は複数の分散Ｗｉ−Ｆｉシステム１０に接続されたクラウド構成サービス５０４を介してのファームウェアアップデートを説明する。トポロジー変更についての問題と密接に関連する問題は、いかにしてネットワーク（例えば、分散Ｗｉ−Ｆｉシステム１０又は任意の他の分散Ｗｉ−Ｆｉネットワーク）内の全デバイスのファームウェア／ソフトウェアをアップデートするか、ということである。トポロジー変更についての問題と同様に、決して手順の途中でネットワークに割り込まれないように、又は一部のノードがアップデート処理から漏れないように、デバイスのファームウェア／ソフトウェアを順次アップデートすることが重要である。
【０１３０】
図２９では、２つの場所５７２Ａ、５７２Ｂ、すなわち住居等があり、各々が複数のアクセスポイント１４（ノードＨ１．Ｎ１、ＨＩ、Ｎ２等（Ｈは家、Ｎはノード番号）と表示されるノード）を有する分散Ｗｉ−Ｆｉシステム１０を有する。ここでまた、本明細書で説明する様々なシステム及び方法は、分散Ｗｉ−Ｆｉシステム１０並びに他のタイプのＷｉ−Ｆｉネットワークでの使用を意図している。分散Ｗｉ−Ｆｉネットワークは、場所５７２Ａ、５７２Ｂで、クラウド構成サービス５０４によって管理され、家の中では調和して動作しなければならないが、場合によっては家間で協同して動作する、いくつかのノードによって提供される。バージョンのミスマッチに関する問題をなくすために、ある場所（例えば５７２Ａ、５７２Ｂ）内の、また場合によっては複数の場所にまたがる全てのノードのファームウェアのバージョンが、全てか無かのトランザクションでアップグレードされることが必須である。したがって、この手法は「１つとしてノードの漏れがない」ことを徹底しなければならない。
【０１３１】
図３０を参照すると、一例示的実施形態では、フローチャートが、分散Ｗｉ−Ｆｉネットワークのファームウェアアップグレード処理８５０を説明する。ファームウェアのアップデートは、クラウド１２を介してクラウド構成サービス５０４により提供される。これらのアップグレードは、場所５７２内の全ノードに対するＯｖｅｒ  Ｔｈｅ  Ａｉｒ（ＯＴＡ）ファームウェアアップグレードと呼ばれることがある。ファームウェアアップグレード処理８５０は、２段階コミットの概念を用い、より複雑で失敗しやすい第１段階（コミット準備）が全ノードで完了してから、第２段階が、失敗の確率を最小化する順番で全ノードに次々と適用される極めて高速のトランザクションコミットを実行する。
【０１３２】
クラウド構成サービス５０４はまた、ＯＴＡファームウェアアップデートサービス（又は単に、ＯＴＡサービス）と呼ばれるか又はそれを含むことができる。クラウド構成サービス５０４は、どのノードＨ１．Ｎ１等が一緒に場所５７２に属するかについて、演繹的知識を有する。つまり、クラウド構成サービス５０４は、どのＷｉ−Ｆｉネットワークがその制御下にあるかについての、どのノードが各Ｗｉ−Ｆｉネットワークと関連付けられているかについての、及びファームウェア／ソフトウェアの現在のバージョンを含むノードの動作パラメーターの、レジストリ又はデータベースを含むことができる。
【０１３３】
アップグレード処理８５０は、利用可能になるファームウェア／ソフトウェアの新バージョン、及びどのノードがこのバージョンを要求するかを認識しているクラウド構成サービス５０４を含む（ステップ８５１）。例えば、管理者は、新バージョン（例えば、ｖ０．２）を準備し、ＯＴＡサービス処理を開始して、ノードを旧バージョン（例えば、ｖ０．ｌ）から新バージョン（例えば、ｖ０．２）へとアップグレードする。クラウド構成サービス５０４は、Ｗｉ−Ｆｉネットワーク内の全ノードにファームウェア／ソフトウェアアップデートを強要する（ステップ８５２）。アップグレード処理６５０は、異なる場所５７２Ａ、５７２Ｂで同時に動作可能である。例えば、ＯＴＡサービスはまず、ファームウェアアップデートのイメージを全ノードに送りつけるが、これは失敗しやすい、時間のかかる活動である。これは「コミット準備」すなわち２段階コミットプロトコルの第１段階に相当する。
【０１３４】
クラウド構成サービス５０４は、Ｗｉ−Ｆｉネットワーク内の全ノードでファームウェア／ソフトウェアアップデートのダウンロードが成功したと、全ノードから通知されるのを待機する（ステップ８５３）。これは「コミット準備済み」すなわち２段階コミットプロトコルの第１段階の成功裏の完了に相当する。尚、いずれかのノードがファームウェア／ソフトウェアアップデートのダウンロードに失敗した場合、アップグレード処理８５０はそのＷｉ−Ｆｉネットワーク内のどのノードもアップグレードしない。例えば、いずれかのノードがダウンロードに失敗した場合、アップグレード処理８５０は、ステップ８５２から繰り返すことができる。
【０１３５】
全ノードが２段階コミットプロトコルの第１段階の完了を成功裏に通知すると、クラウド構成サービス５０４は、順次又はグループで、アップグレードメッセージを各ノードに送信し、当該送信はＷｉ−Ｆｉネットワークのノード接続ツリーに基づき最下位のリーフから親機まで上方向に移動する（ステップ８５４）。このアップグレードメッセージの送信の移動は、２段階コミットプロトコルの第２段階でどのノードも切断しないことを保証する。全ノードがアップグレードメッセージを受信し、当該アップグレードを同時に実行し、新バージョンへとリブートする（ステップ８５５）。
【０１３６】
場所５７２内の全ノードは、クラウド１２内で稼働している同バージョンのサービス５０４と共働しなければならない。クラウドサービスバージョンが進化すると、全ノードのファームウェア／ソフトウェアもクラウドサービスの能力に合わせて進化しなければならない。この２段階コミットアップグレード処理８５０は、場所５７２内の全ノードが同じバージョンに一緒にアップグレードされ、バージョンのミスマッチによりノードが失敗する危険性が最小化されるか又はなくなることを保証する。
【０１３７】
複数の時間スケールでの分散Ｗｉ−Ｆｉネットワークの最適化
図３１を参照すると、一例示的実施形態では、フローチャートが、複数の時間スケールで実行される分散Ｗｉ−Ｆｉネットワークの最適化方法９００を説明する。図３２を参照すると、一例示的実施形態では、ブロック図が、最適化９００と関連する低速及び高速制御ループを実施するクラウドシステム１０００を説明する。最適化方法９００は、あらゆる分散Ｗｉ−Ｆｉネットワークを最適化するためのクラウドシステム１０００（すなわち、クラウドサービス、クラウドコントローラー等）による操作を意図している。ここでまた、分散Ｗｉ−Ｆｉネットワークは、分散Ｗｉ−Ｆｉシステム１０、Ｗｉ−Ｆｉメッシュネットワーク３２、Ｗｉ−Ｆｉリピーターネットワーク３３等を含むことができる。本明細書で説明するように、分散Ｗｉ−Ｆｉネットワークは、最適化７０に基づき調節可能なトポロジーで相互接続されている複数のノードを含む。トポロジーは、アクセスポイント１４を互いに無線接続する複数のバックホールリンクにより形成される。最適化７０は、ノード接続性、無線波（２．４Ｇ／５Ｇ）、チャンネル、チャンネル幅等の点で最適なトポロジーを決定するため、定期的に実行することができる。
【０１３８】
最適化方法９００は、データ収集ステップ９１０、高速制御ループ９２０、及び低速制御ループ９３０を含む。最適化方法９００は、事前対応型の長期最適化（低速ループ制御９３０）及び短期最適化（高速ループ制御９２０）を含む複数の時間スケールで最適化７０を実行する。低速ループ制御９３０は定期的に実行される。低速最適化ループの一利点は、その結果を直ちに適用する必要がないことである。むしろ、低速ループ最適化の結果は、Ｗｉ−Ｆｉネットワークの負荷が低いときに適用することができる。さらに、低速ループ最適化自体、スケジュールに則り実行してもよいし、又は最適化を行うのに都合がよくなるまで延期してもよい。例えば、最適化は、演算リソースの負荷がより低くなるまで、又は演算コストがより低くなるまで延期することができる。低速ループ制御９３０の長期最適化は、急変動しない挙動傾向に基づく。低速ループ制御９３０の長期最適化は、Ｗｉ−Ｆｉネットワークをより細かい時間スケールの長期予測の変動に適応させる短期最適化（高速ループ制御９３０）により補完される。短期最適化の一利点は、急速に変化するネットワーク条件に反応できることであり、したがって最適化が完了した後直ちに適用することができる。高速ループ制御９２０と低速制御ループ９３０とは、特定のネットワークパラメーターの新セットが原因となるＷｉ−Ｆｉネットワークの中断の量に関し、異なる目的関数重み付けを用いることができる。
【０１３９】
データ収集ステップ９１０は、アクセスポイント１４が、それが現在動作しているホームチャンネルの測定値及び統計値を収集するインサービスオンチャンネル測定９５１、及び、アクセスポイント１４がホームチャンネルを定期的にオフに切り換え、他のチャンネル（すなわち、ホームチャンネルではないチャンネル）を測定することができるオフチャンネル測定９５２を含む。データ収集ステップ９１０は、データの前処理及びクラウド転送（ステップ９５３、９５４）を含むことができ、データ（測定値、統計値等）はアクセスポイント１４からクラウドシステム１０００に提供される。測定値は定期的に取得することができる（ステップ９５５）。
【０１４０】
測定値は、クラウドシステム１０００において、構造化データベース１００２の構造化クラウド記憶領域に記憶される（ステップ９５６）ことができ、また、非構造化データベース１００４の非構造化クラウド記憶領域に記憶される（ステップ９５７）ことができる。構造化クラウド記憶領域は、メトリクスの演算に用いる（ステップ９５８）ことができ、当該メトリクスは再最適化閾値の決定のために報告され及び／又は使用される（ステップ９５９）ことがある。非構造化記憶領域は、ビッグデータを用いる分析、機械学習その他などのオフライン学習（ステップ９６０）に用いることができる。
【０１４１】
再最適化閾値（ステップ９５９）は、Ｗｉ−Ｆｉネットワークが急速に変化する条件に基づく再最適化すなわち高速ループ制御９２０を現在必要としていると、メトリクスが示しているかどうかを判定する。そうであれば、再クラスター化ヒューリスティックを用いて（ステップ９６１）、高速ループ最適化ができる（ステップ９６２）。定期的に、例えば１日１回（ステップ９６３）、クラスター化を実行して（ステップ９６４）、低速ループ最適化ができる（ステップ９６５）。クラスター化ステップにより、一緒に最適化されるデバイスの数を少なく維持することの利点と、物理的領域内の全デバイスを考慮した場合にネットワークの近隣部分を別々に最適化して全体的最適状態に達する能力を低下させることの欠点との均衡がとれる。
【０１４２】
長期最適化は、単に時間制として、ある時間が経つとトリガされるようにすることができる。例えば、１日１回、深夜、つまり最適化のためのより高い演算負荷がより低く、且つ、最適化の結果をユーザーのネットワークに展開する際に何らかの中断があってもさほど混乱しないときに、トリガすることができる。長期最適化は、短期最適化をトリガするいくつかの方法と同様、何らかのタイプの閾値を超える測定値によりトリガされることもできる。しかし、長期最適化の閾値は異なることもある。短期最適化をあまりたびたびトリガするのは望ましくないが、それは、直ちに稼働するので、演算負荷が生じ何度も中断する可能性があるためである。しかし、長期最適化を便利なときたまにしか稼働しないように制限してしまうことは、よりはるかに望ましくない。したがって、長期最適化を後回しに待機させ行列に入れる可能性のあるトリガをタイトにして、ネットワークが経時的に真の最適な状態に近づくように徹底することができる。
【０１４３】
長期最適化（低速ループ制御９３０）は、ネットワークトラフィック、アクセスポイント１４間の容量、アクセスポイント１４とＷｉ−Ｆｉクライアントデバイス１６との間の容量、チャンネル利用可能性等の履歴及び数時間先の予想により起動することができる。予想は、数週間から数か月にわたる履歴データから取得された、ピーク期間の特徴付け、クライアント容量及びチャンネルビジー度の統計値を含むことができる。長期最適化は、１軒の家での活動がいくつかの隣家の性能に及ぼす高度な影響に基づきグループ化（すなわち、クラスター化）された当該いくつかの隣家でも実行することができる。長期最適化の出力は、単一ネットワーク構成の形態、又は、異なる時間区分に用いるべき構成を特定する複数ネットワーク構成のスケジュールの形態であってもよい。
【０１４４】
短期最適化（高速ループ制御９２０）は、数十秒から数分という時間スケールのネットワークトラフィック負荷及び干渉条件の変動に適合する。最適化は、フィルタリングされ集計された短期データを用いてネットワーク条件の変化及び性能の低下を検出することによって、又は長期予想からのずれがメトリクスに基づき観察されたときに、トリガされることができる。高速ループ制御９２０は、直近の過去に収集された測定値に基づく短期的視点での予想、並びに長期履歴データ及び低速ループ制御９３０の結果に基づき起動される。高速ループ制御９２０は、低速ループ制御９３０よりもローカル化されることがあり、演算時間を減じ、ネットワークのほぼリアルタイムの制御を可能にするために、１軒の家又はより少数の家のグループの構成を決定するように実行することができる（再クラスター化ヒューリスティック）。しかし、高速ループ制御９２０は、低速ループ制御９３０で用いられるより大きな家クラスターに及ぼすあらゆる変更の影響を考慮に入れることができる。
【０１４５】
高速ループ制御９２０の一部として最適化されるネットワークパラメーターは、低速ループ制御９３０と同一である必要はない。高速ループ制御９２０は、演算及び制御をより高効率とするためのパラメーターのサブセットを考慮することができ、又は、低速ループ制御９３０によって設定されない他のパラメーターを考慮することができる。例えば、高速ループ制御９２０は、トポロジー変更ではなく、チャンネル割当及びチャンネル帯域幅に焦点を当てることができる。高速ループ制御９２０はまた、ビジー期間中にネットワーク構成を変更する際に課せられるオーバーヘッド及び中断を考慮に入れることができる。種々の構成変更に、制御操作に基づき異なるコストを割り当てることができ、最適化は、実現される性能の改善と新構成への移行コストとの均衡がとれる新構成を見出すことができる。
【０１４６】
図３２は、クラウドベースのシステム１０００を説明する。一例示的実施形態では、クラウドベースのシステム１０００は、ＯｐｅｎＦｌｏｗインターフェース及びＯｐｅｎ  ｖＳｗｉｔｃｈ  Ｄａｔａｂａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ（ＯＶＳＤＢ）インターフェースを有するＳｏｆｔｗａｒｅ  Ｄｅｆｉｎｅｄ  Ｎｅｔｗｏｒｋｉｎｇ（ＳＤＮ）コントローラー１０１０を含むことができる。ＳＤＮコントローラー１０１０は、アプリケーションプログラミングインターフェース（ＡＰＩ）及びサービス１０２０に接続することができる。非構造化データベース１００４は、ＡＰＩ及びサービス１０２０に接続し、低速制御ループ９３０を実施するように構成され得るオフライン予測可能分析サービス１０３０に接続することができる。リアルタイムフィルタリング及び集計サービス１０３２は、ＡＰＩ及びサービス１０２０に接続することができ、高速制御ループ９２０を実施することができる。構造化データベース１００２は、高速制御ループ９２０及びオフライン予測可能分析サービス４３０からデータを受信することができ、リアルタイム分析及び制御サービス１０３４、消費者アプリ及び制御インターフェース１０３６、並びにデータ調査及び提示サービス１０３８に入力を提供することができる。
【０１４７】
最適化処理
ここでまた、図４を参照すると、最適化７０は、ある場所に展開しているアクセスポイント１４の各々によってなされる測定を入力６０として取る。このような測定値には、限定ではないが、各クライアント１６により要求されるトラフィック負荷、各アクセスポイント１４間で、及び各アクセスポイント１４から各クライアント１６までの間で維持され得る信号強度及びデータレート、アクセスポイント１４間、及びアクセスポイント１４とクライアント１６との間のリンクにおけるパケットエラーレート等が含まれることがある。それに加えて、アクセスポイント１４は、分散Ｗｉ−Ｆｉシステム１０に影響する干渉レベルの測定をする。これには、他のクラウド制御の分散Ｗｉ−Ｆｉシステム１０からの干渉（「ネットワーク内インターフェアラー」）、及び制御可能なネットワークの一部ではないデバイスからの干渉（「ネットワーク外インターフェアラー」）が含まれる。これらのタイプのインターフェアラーを区別することは重要である。ネットワーク内インターフェアラーは、クラウドシステムにより制御可能なので、ネットワーク内システム全体の大きな最適化に含まれ得る。ネットワーク外インターフェアラーは、クラウドからは制御できないので、これらの干渉を別のチャンネルに移動させたり別途変更したりすることはできない。分散Ｗｉ−Ｆｉシステム１０はこれらを変更するのではなく、これらに適合しなければならない。これらのネットワーク外インターフェアラーは、クラウド制御されないＷｉ−Ｆｉネットワーク、及びＷｉ−Ｆｉにより使用される周波数で送信するＢｌｕｅｔｏｏｔｈデバイス、ベビーモニター、コードレス電話その他などの非Ｗｉ−Ｆｉデバイスを含む。各リンクの容量は、移動したデータの量（負荷）、及び干渉のせいでメディアがビジーである時間の量を検証することによって導出することができる。これはまた、リンクを通過して移動したデータと送信キューがビジーだった時間割合との比をとることによって導出することもできる。この容量は、リンクに飽和状態になるまで負荷がかかり、可能な限りのデータ量を移動させると仮定した場合に実現され得る仮想スループットを表す。
【０１４８】
別の重要な入力は、分散Ｗｉ−Ｆｉシステム１０を移動するパケットの遅延である。これらの遅延は、直接の測定値から、分散Ｗｉ−Ｆｉシステム１０のゲートウェイアクセスポイント１４（モデム／ルーター１８に接続されている）に到着したパケットをタイムスタンプし、それらが当該アクセスポイント１４を離れるまでの経過時間を測定することによって導出することができる。しかし、そのような測定は、アクセスポイント１４間のある程度の時刻同期を要することになる。別の手法は、各アクセスポイント１４を通過する遅延の統計値を個々に測定する、というものになる。次に、分散Ｗｉ−Ｆｉシステム１０全体の総遅延の平均及び何らかの仮定を与えられた遅延の分布を各アクセスポイント１４の個々の遅延統計値に基づき計算することができる。こうして、遅延は、最適化７０において最小化されるべきパラメーターとなることができる。また、各アクセスポイント１４が送信及び受信に費やす時間を把握することも最適化７０にとっては有用である。これは、送信又は受信された情報の量とともに、様々なリンクが維持している平均データレートを判定するために用いることができる。
【０１４９】
最適化７０の出力６２は、分散Ｗｉ−Ｆｉシステム１０の動作パラメーターである。これには、各アクセスポイント１４が動作する周波数チャンネル、及び使用されるチャンネルの帯域幅が含まれる。８０２．１１ａｃ規格は、チャンネル帯域幅２０、４０、８０、及び１６０MHzを可能にする。使用する帯域幅の選択は、より高いデータレート（広いチャンネル帯域幅）をサポートすることと、分散Ｗｉ−Ｆｉシステム１０で用いる異なる非干渉チャンネルの数が多いこととの間のトレードオフである。最適化７０は、様々なユーザーのアプリケーションにより要求される負荷をサポートする可能な限り低いチャンネル帯域を各リンクで使用させようとする。必要十分な最狭のスループットチャンネルを用いることにより、分散Ｗｉ−Ｆｉシステム１０内の他のリンク用に最大数の非干渉チャンネルが残される。
【０１５０】
別のセットの最適化７０の出力６２は、分散Ｗｉ−Ｆｉシステム１０のトポロジー、つまりどのアクセスポイント１４が他のどのアクセスポイント１４と接続するかを定める。分散Ｗｉ−Ｆｉシステム１０内の２つのクライアント間又はクライアントとインターネットゲートウェイ（モデム／ルーター１８）との間の実際の経路もまた、最適化７０の出力である。ここでまた、最適化７０は経路内の最良のトレードオフを選択しようとする。一般に、より多くのホップを移動するほど、各ホップの範囲は短くなり、データレートが高くなり、より堅牢になる。しかし、ホップが多いと、待機時間及びジッターが増え、チャンネル周波数割り当てによっては分散Ｗｉ−Ｆｉシステム１０の残りからより多くの容量が奪われる。後に説明する最適化方法は、これらすべてを考慮に入れ、真に最適な構成に想到する。
【０１５１】
最適化７０はまた、分散Ｗｉ−Ｆｉシステム１０内のどのリンクがＲＴＳ／ＣＴＳプロトコルを使用して隠れノードの問題を回避するかを決定することができ、各アクセスポイント１４の送信電力レベルを調節することができる。送信電力がより高いと、そのアクセスポイント１４からのリンクのデータレート及びスループットが増加するが、分散Ｗｉ−Ｆｉシステム１０内の他のアクセスポイント１４及び近隣システムへの干渉がより高くなる。送信電力の変更と密接に関連して、最適化７０はまた、そこで電波上のトラフィックに譲るか又はそのまま他の送信と重なって送信するかのどちらかとなるクリアチャンネル評価閾値を設定することができる。これは、近隣ネットワークからの送信を無視し、他の信号と重なって送信するのが条件的に可能であれば送信を遅延しない、有効な方法である。
【０１５２】
家の中でどのアクセスポイント１４に各Ｗｉ−Ｆｉクライアントデバイス１６が接続するかを最適化７０が選択することが可能であれば、システム性能は多大な恩恵を受けることができる。この能力は、いくつかの事項に役立つ。第１に、Ｗｉ−Ｆｉクライアントデバイス１６は、それらが接続されているアクセスポイント１４から、移動してより近くなり得たアクセスポイント１４へのローミングが上手くできないことが多い。こうした「粘着性」のクライアントは、距離が離れすぎているアクセスポイント１４と通信しようとして、不必要に低いスループットをもたらすことになる。クライアントの関連付けを制御することの別の利点は、分散Ｗｉ−Ｆｉシステム１０内の特定のアクセスポイント１４での輻輳を回避することである。例えば、家の中の全てのＷｉ−Ｆｉクライアントデバイス１６が、１つの特定のアクセスポイント１４と最も近い場所にある場合がある。それらのスループットは、この１つのアクセスポイント１４の総容量を共有することにより、限られたものになる。この場合、Ｗｉ−Ｆｉクライアントデバイス１６の一部を異なるアクセスポイント１４と強制的に関連付けると、それらのアクセスポイント１４が多少遠くにあるとしても、うまくいく。その時点で各アクセスポイント１４の容量はより少数のＷｉ−Ｆｉクライアントデバイス１６の間で共有されるので、各々のスループットはより高くなる。Ｗｉ−Ｆｉクライアントデバイス１６を移動させるさらに別の理由は、バックホールリンクにおける輻輳の緩和である。Ｗｉ−Ｆｉクライアントデバイス１６がアクセスポイント１４間に程よく点在したとしても、それらのアクセスポイント１４の全てがバックホールで１つのアクセスポイント１４に接続することもあり得る。この場合、バックホールに輻輳が生じる。ここでまた、Ｗｉ−Ｆｉクライアントデバイス１６を、バックホールの異なる経路を有する他のアクセスポイント１４に移動させることで、輻輳を緩和することができる。
【０１５３】
Ｗｉ−Ｆｉクライアントデバイス１６をどこに関連付けるかのステアリングと密接に関連するのが、クライアントがどの周波数帯域に接続するかのステアリングである。多くのシステム及び好ましい実装形態では、アクセスポイント１４は、２つ以上の周波数帯域で同時に動作することができる。例えば、一部のアクセスポイント１４は、２．４GHz帯域と５GHz帯域とで同時に動作することができる。
【０１５４】
最適化７０は、上述したように目的関数を最大化することにより、入力６０から出力６２を生成する。多くの異なる可能な目的関数がある。１つの目的は、全てのＷｉ−Ｆｉクライアントデバイス１６に提供される総スループットを最大化することであり得る。このゴールの短所は、最大の総スループットの実現が、既に良好に通信中のＷｉ−Ｆｉクライアントデバイス１６の性能を改善するために一部のＷｉ−Ｆｉクライアントデバイス１６を完全に干上がらせることにより、なされ得ることである。別の目的は、最悪の状況にあるネットワーク内のＷｉ−Ｆｉクライアントデバイス１６の性能をできる限り高めることであり得る（Ｗｉ−Ｆｉクライアントデバイス１６への最小のスループットの最大化）。このゴールは、公平性を高めるのには役立つが、最悪のＷｉ−Ｆｉクライアントデバイス１６で漸増的な改善を得るために多大な総容量を引き換えにする場合がある。
【０１５５】
図３３を参照すると、一例示的実施形態では、グラフが、２つのアクセスポイント１４の互いに対し相対的な容量負荷を説明する。好ましい方法は、ネットワーク内の各Ｗｉ−Ｆｉクライアントデバイス１６の所望の負荷を考慮し、その負荷比の余剰容量を最大化する。図３３は、２つの異なるアクセスポイント１４の容量要件を示して、この手法を説明する。最適化は、容量を改善できるとともに、２つのアクセスポイント１４間で容量を変えることもできる。望ましい最適化７０は、負荷比１１５０の方向に余剰容量を最大化するものである。このことは、システムに望ましい負荷を伝送する最大のマージンを与えて、それらの性能をより堅牢にし、より少ない待機時間及びより少ないジッターとすることを表す。この厳格な最適化は、可変スケールで容量割当に重み付けするよりソフトな最適化関数／最適化機能を提供することにより、さらに強化することができる。要求された負荷と等しいか又はそれよりも少し高いスループットとすることには高い利用価値が置かれよう。要求された負荷を上回るスループットをＷｉ−Ｆｉクライアントデバイス１６又はアクセスポイント１４に提供することは尚も利点とみなされようが、全てのＷｉ−Ｆｉクライアントデバイス１６／アクセスポイント１４にそれらが要求している負荷を与えることよりは、重み付けははるかに低くなる。そのようなソフトな重み付けの最適化関数は、デバイス間の余剰性能のより操作容易なトレードオフを可能にする。
【０１５６】
前述の手法が強調するのは、望ましい負荷の知識を有しての最適化である。アクセスポイント１４が望ましい負荷を把握している場合は、それを直接通信することができる。直近の期間（例えば過去数分間）で、推定することもできる。負荷はまた、長期履歴データから推定することができる。例えば、過去３０日間で記録された負荷を用いて予期される負荷を決定することができ、次いでそれを最適化７０に用いる。こうして、予期される最悪の場合の負荷について、ネットワークが事前構成される。
【０１５７】
しかし、負荷を把握し得ないときもあり得る。例えば、新ネットワークを立ち上げた直後は、長期負荷履歴も短期（例えば５分）負荷要件もなく、アクセスポイント１４もその環境でＷｉ−Ｆｉクライアントデバイス１６がどういった負荷を要求するかについて何の知識もない。この場合、負荷情報なしで最適化する必要がある。合理的な手法は、各アクセスポイント１４の負荷要件が均等であるという仮定の下で最適化することである。
【０１５８】
負荷を把握している場合でも、負荷を人工的に操作することは有益であり得る。例えば、最近の履歴から、又は長期履歴からであっても、特定のアクセスポイント１４の負荷がゼロになることを予測することができる。しかし、誰かがその部屋に入って、分散Ｗｉ−Ｆｉシステム１０でＷｉ−Ｆｉクライアントデバイス１６にデータを取り込もうとする機会は尚もある。したがって、各Ｗｉ−Ｆｉクライアントデバイス１６又はアクセスポイント１４で最低限の負荷を保留しておくことは有益であり、稀な事態に難なく対処できるように少なくとも多少の容量が全ての場所に存在することが保証される。
【０１５９】
他の要因を目的関数に入れることができる。例えば、分散Ｗｉ−Ｆｉシステム１０に対する特定のタイプの変更は極めて混乱を招きやすく、変更中に分散Ｗｉ−Ｆｉシステム１０内のトラフィックを遮断する。分散Ｗｉ−Ｆｉシステム１０に対し特定のタイプの変更を行うことの不利益を表す目的関数にコストを追加することができる。このコスト対他の要因を適切に重み付けすることによって、利得が大きいときは最適化７０に分散Ｗｉ−Ｆｉシステム１０の構成を変更させるが、少々の利得しかない場合は分散Ｗｉ−Ｆｉシステム１０はそのままにしておくように、目的関数を調節することができる。同様に、ヒステリシス閾値を最適化７０の出力に適用して、状況の微小な変化で分散Ｗｉ−Ｆｉシステム１０が２つの構成間を行き来するのではなく、比較的安定していることを保証することができる。
【０１６０】
図３４を参照すると、一例示的実施形態では、方程式が、最適化７０のための混合整数線形計画（ＭＩＬＰ）の一例を説明する。入力６０があって、目的関数がわかっていれば、目的関数を最大化する出力６２のセットを見出すことは数学的な問題となる。これを行う極めて高効率な方法は、ＭＩＬＰとして問題を公式化することである。この公式にはいくつかの利点がある。第１に、連続変数と離散変数との両方が関与するので、問題の性質に合う。例えば、チャンネル選択は整数の変数である。第２に、ＭＩＬＰの問題を解く高効率な方法が公知である。第３に、公式はかなり包括的であり、多様な目的関数及び解の制約に対応する。図３４は、ＭＩＬＰの公式の一例の数学的表示を示し、注釈が方程式の様々な要素を説明している。
【０１６１】
理想的には、この最適化は、１軒の家だけでなく、互いにＷｉ−Ｆｉ範囲内にある全ての家で行われ、したがって互いに干渉が生じる。当然ながら、第１の家に干渉する家にも、さらに遠く離れたインターフェアラーが存在する。このように進行していくと、１回の最適化だけで非常に多数の家、例えばマンハッタン中の全ての家を最適化しようとすることになる。ＭＩＬＰの解の演算時間は、最適化の対象のパラメーターの数とともに幾何級数的に増加し、また、１回の最適化を実行する家の数とともに幾何級数的に増加する。この解決策は、クラスター化を行うことである。
【０１６２】
図３５を参照すると、一例示的実施形態では、図が、一緒に最適化される家の数を減じ、それによって演算の複雑性を管理可能なものにするためのクラスター化の一例を説明する。別々のクラスターがそれらの境界で尚も高レベルな重複を有する場合、反復手法を適用することができる。第１回目は、クラスター間に干渉がないものと仮定することができる。第２回目は、第２のクラスターから第１のクラスターへの干渉を計算することができ、次いでその情報を用いて第１のクラスターの最良の構成を再計算することができる。次に、第１のクラスターからの新たな干渉を計算に入れて、第２のクラスターを再最適化することができる。クラスターのサイズは演算を幾何級数的に増加させるが、反復は演算負荷を直線的に増加させるので、数回の反復により、全問題をまとめて解くよりも、はるかに演算が少なくなる。
【０１６３】
最適化７０には複雑さがあり得る。いくつかの最適化パラメーターは、最適化７０への入力そのものを変える。例えば、帯域又はチャンネルの変更は、そのアクセスポイント１４が出力する送信電力を変更することがあり、ひいては当該アクセスポイント１４が他のアクセスポイント１４に対し示す干渉が変更される。同様に、異なるデータレートは多くの場合異なる電力レベルで送信されるので、Ｗｉ−Ｆｉクライアントデバイス１６又はアクセスポイント１４の関連付けが変更されると、干渉効果も再計算されなくてはならない。
【０１６４】
また、考慮すべきＷｉ−Ｆｉクライアントデバイス１６の特定の挙動もある。例えば、一部のＷｉ−Ｆｉクライアントデバイス１６は、異なる送信帯域幅（２０、４０、８０MHz等）をパケットによって動的に切り換える。他のＷｉ−Ｆｉクライアントデバイス１６はそれほど柔軟ではなく、４０MHzのチャンネルを使用するように指示されると、４０MHzのパケットしか送らない。第１のグループのＷｉ−Ｆｉクライアントデバイス１６は、４０MHzの帯域幅のチャンネルの割当の恩恵をほぼ常に受けるが、それは、可能なときにはそれを使用するが、４０MHzチャンネルの一部に干渉がある場合は、より低い帯域幅モードでも送信するからである。後者の分類のＷｉ−Ｆｉクライアントデバイス１６は、４０MHzチャンネルの恩恵を、そのチャンネルのどこかに微小な干渉しかない場合だけ受けることができる。Ｗｉ−Ｆｉクライアントデバイス１６の挙動の違いは、クラウドサービスに報告されてくるネットワークの測定値から経時的に学習することができるものである。
【０１６５】
図３６を参照すると、一例示的実施形態では、グラフが、例示的な場所における最適化７０の出力６２のサンプルを説明する。最適化された分散Ｗｉ−Ｆｉシステム１０の一意性が、最適化７０の結果に表れているいくつかの特性からわかる。図３６はこれらのタイプのネットワークの３つの重要な側面を強調しており、それらはリピーター又はメッシュネットワークを使用する従来技術のＷｉ−Ｆｉシステムでは現れない。第１に、全部のアクセスポイント１４を使用するわけではない。既存のシステムでは、リピーター又はメッシュノードからマスターノードへの通信がとにかく可能ならば、また、いずれかのクライアントがそれと関連する場合（他のどのノードよりもそのノードが近いからという理由のこともある）、その経路は使用されることになる。しかし、その経路は極めて性能が低い経路であり得る。消費者が、ゲートウェイ／マスターノードからかなり離れた自宅の片隅にリピーターを１つ配置するとする。このリピーターは、その家全体で最も接続し難い最低データレートのデバイスとなる。実のところ、その家のどのクライアントと直接通信するよりも、そのリピーターに達するほうが困難であろう。しかし、既存のシステムでは、トラフィックはそのデバイスを通ってルーティングされることになる。分散Ｗｉ−Ｆｉシステム１０では、最適化が当然このアクセスポイント１４をネットワークから外し、どの親機ノードにも接続せず、又は全クライアントの関連付けをそのデバイスから移動させる。
【０１６６】
図３６に示す第２の重要な側面は、バックホールリンク（アクセスポイント１４を一緒に接続し、（モデム／ルーター１８に接続されている）マスターゲートウェイアクセスポイント１４からの及びそれへのトラフィックを伝送するリンク）は、全てが同じ周波数チャンネル上にあるわけではない。こうすれば、異なる周波数の送信は干渉しないので、ネットワークのバックホール部分で複数の送信を同時に行うことが可能になる。リピーター又はメッシュネットワークを使用する既存のＷｉ−Ｆｉシステムは、バックホールに１つの周波数チャンネルを用いる。したがって、バックホールシステム全体で、常に１つの通信だけが可能となり、スループット及び容量が限られる。
【０１６７】
図３６に示す第３の重要な側面は、Ｗｉ−Ｆｉクライアントデバイス１６が、そのＷｉ−Ｆｉクライアントデバイス１６に最も近いアクセスポイント１４ではないアクセスポイント１４に接続するように、多くの場合に指令されることである。こうすれば、必要に応じてリーフノードでもバックホールでも負荷のバランスをとることができる。リピーター及びメッシュネットワークを有するシステムなどの現在のＷｉ−Ｆｉシステムは、クライアントをどこに関連付けるかを制御しないので、輻輳するポイントを有し、性能が低下する。
【０１６８】
図３７を参照すると、一例示的実施形態では、グラフが、ツリー構造の最適化７０の出力を説明する。上に示す最適化７０の出力はツリー構造をとっている。各アクセスポイント１４には親機が１つまでしかない。しかし、より完全に相互接続されたグラフを形成することができる。図３７は、グラフ構造の一例を示す。この図でＡＰ３と表示されるアクセスポイント１４には、２つの親機デバイス、ＡＰ４及びＡＰ０がある。このことは、ＡＰ４及びＡＰ０の２つの並列リンクから、そのうちの一方だけが接続されている場合に提供され得るよりも高い総スループットをＡＰ３に提供することができるという点で役に立ち得る。このことを有効にするためには、複数の並列リンクを活用することができるネットワーキングプロトコルを用いなければならない。そのようなプロトコルの一例は、Ｍｕｌｔｉ−Ｐａｔｈ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ（Ｍｕｌｔｉ−Ｐａｔｈ  ＴＣＰ）である。このプロトコルは、複数経路の通信のために特別に設計されており、複数の並列経路の帯域幅を集計する需要に非常に役立つ。
【０１６９】
Ｗｉ−Ｆｉクライアントのブリッジング用Ｌ２トンネル
一般的なＩＥＥＥ８０２．１１では、分散Ｗｉ−Ｆｉネットワーキングには限界があり、規格の非標準的手法への修正、又はネットワークルーティングプロトコルの使用のどちらかを必要とする。様々な例示的実施形態では、分散Ｗｉ−Ｆｉネットワーキングをサポートして、全既存のＷｉ−Ｆｉクライアントが分散Ｗｉ−Ｆｉネットワークに接続できることを保証できるように、システム及び方法は、Ｌａｙｅｒ  ２（Ｌ２）ネットワークトンネル、及びソフトウェアブリッジインターフェースを用いる。これらのインターフェースは、分散Ｗｉ−Ｆｉネットワークの一部となるアクセスポイントの各々に存在する。全クライアントに十分なネットワークサービスを保証するために、システム及び方法は、Ｗｉ−Ｆｉで稼働するＬ２ネットワークトンネルによってＷｉ−Ｆｉアクセスポイント同士を互いに接続し、Ｌ２インターフェースを、各アクセスポイントで稼動するブリッジインターフェースに接続する。この手法は、分散Ｗｉ−Ｆｉネットワークに接続する全クライアントが、Ｌ２又は高次ネットワークプロトコルを用いて、互いに通信できることを保証する。また、全てのクライアントがゲートウェイノードを介してあらゆるパブリックネットワークサービスに到達できることを保証する。論理的には、システム及び方法は、分散Ｗｉ−Ｆｉソリューションを単一Ｗｉ−Ｆｉアクセスポイントソリューションと完全に等価とする。具体的には、システム及び方法は、Ｗｉ−ＦｉクライアントとＷｉ−Ｆｉアクセスポイントとの接続を、当該ブリッジデバイスを通じて確立する際に、中間Ｗｉ−Ｆｉクライアントをネットワークブリッジとして用いるという問題を解決する。システム及び方法は、あらゆるＩＥＥＥ８０２．１１ネットワークに適用可能であるが、特に、分散Ｗｉ−Ｆｉネットワークソリューション（複数のアクセスポイント）にとって有用である。システム及び方法は、それに接続された全クライアントについて、これらのクライアントのトラフィックが中間Ｗｉ−Ｆｉデバイスを通じて複数のホップを介して移動する場合でも、十分なネットワーク接続性を保証する。
【０１７０】
図３８を参照すると、一例示的実施形態では、ネットワーク図が、Ｌ２トンネルを用いて２つのアクセスポイント１４間に形成されたバックホールリンク１２０２を有するＷｉ−Ｆｉネットワーク５００を説明する。Ｗｉ−Ｆｉネットワーク５００は、分散Ｗｉ−Ｆｉシステム１０を含むことができる。Ｗｉ−Ｆｉネットワーク５００は、インターネットサービスプロバイダー（ＩＳＰ）ネットワークなどのネットワーク３０８を介して接続されたクラウド１２内の認証サービス５０２及びクラウド構成サービス５０４を通してなどの、アクセスポイント１４のクラウドベースの制御を含むことができる。図３８の例では、２つのアクセスポイント１４Ａ、１４Ｂがあり、ゲートウェイアクセスポイント１４Ａはネットワーク５０８に接続され、アクセスポイント１４Ｂはバックホールリンク１２０２を介してゲートウェイアクセスポイント１４Ａに接続されている。Ｗｉ−Ｆｉクライアントブリッジモード、すなわちアクセスポイント１４間のバックホールリンク１２０２などのバックホール接続を可能にするために、システム及び方法は、任意のＬ２トンネルを利用する（例えば、どのイーサネット−オーバー−ＩＰトンネルプロトコルを用いてもよい）。
【０１７１】
一例示的実施形態では、Ｗｉ−Ｆｉネットワークは、Ｇｅｎｅｒｉｃ  Ｒｏｕｔｉｎｇ  Ｅｎｃａｐｓｕｌａｔｉｏｎ（ＧＲＥ）及びその変更形態、例えばＧＲＥｔａｐを用いることができる。ＧＲＥプロトコルは基本的に、そのインターフェースに送信された任意のイーサネットパケットのトンネル他端までのトンネリングを可能にする。したがってこの技法は、あらゆるポイントツーポイントＬａｙｅｒ  ３（Ｌ３）プロトコルで用いることができる。図３８では、バックホールリンク１２０２が既定のＳＳＩＤ１２１０でＧＲＥトンネルとして形成される。既定のＳＳＩＤ１２１０は、バックホールリンク１２０２を形成するためのアクセスポイント１４間のＷｉ−Ｆｉクライアントブリッジングに用いられる。尚、既定のＳＳＩＤ１２１０は、Ｗｉ−Ｆｉクライアントデバイス１６がＷｉ−Ｆｉネットワーク５００に接続するためのホームＳＳＩＤ１２１２とは異なる。一般に、ＧＲＥトンネルを確立するには、トンネルの両端で、（ｉ）ローカルインターフェースＩＰアドレス、（ｉｉ）遠隔インターフェースＩＰアドレス、及び（ｉｉｉ）遠隔側はローカルユニットから到達できなくてはならないし逆もまた然り、という前提条件を要する。
【０１７２】
Ｗｉ−Ｆｉネットワーク５００、分散Ｗｉ−Ｆｉシステム１０、又は別の分散Ｗｉ−Ｆｉネットワークでは、リピーターノード、すなわちゲートウェイノードではないアクセスポイント１４Ｂは、少なくとも１つの親機ノード及び１つの子機ノード又はＷｉ−Ｆｉクライアントデバイス１６と一緒になる。したがって、リピーターノード（アクセスポイント１４Ｂ）は２つ以上のインターフェースを有する。第１のインターフェースは、ノードの親機デバイスに接続し、クライアント又はＳＴＡモードインターフェースとして機能し、すなわち、第１のインターフェースはバックホールリンク１２０２を提供する。第２のインターフェースは、子機又はＷｉ−Ｆｉクライアントデバイス１６に接続し、当該インターフェースがＡＰモードインターフェースとして機能する。
【０１７３】
図３９を参照すると、一例示的実施形態では、フローチャートが、Ｗｉ−Ｆｉネットワーク５００のトンネル確立方法１２５０を説明する。ここでまた、確立方法１２５０はＧＲＥを例示的Ｌ２トンネルとして用いるが、当業者であれば、あらゆるＬ２トンネリングプロトコルが意図されることを認識しよう。さらに、図３９の確立方法１２５０ステップは、本明細書では図７のＷｉ−Ｆｉネットワーク５００を参照して説明するが、分散Ｗｉ−Ｆｉシステム１０、又は別の分散Ｗｉ−Ｆｉネットワークでも動作できる。
【０１７４】
確立方法１２５０は、クラウド構成サービス５０４に接続した後、親機ノード（例えば、アクセスポイント１４Ａ）が既定のＳＳＩＤでインフラストラクチャーモードＷｉ−Ｆｉサービスをイネーブルすることを含む（ステップ１２５１）。クラウド構成サービス５０４は、ＡＰモードインターフェースの固定のＩＰアドレスを親機ノードアクセスポイント１４Ａに提供する（ステップ１２５２）。具体的には、クラウド構成サービス５０４はこのＩＰアドレスを親機デバイスに転送し、親機デバイスはこのＩＰアドレス及び関連するネットワーク設定をＡＰモードネットワークインターフェース、例えばアクセスポイント１４ＡのホームＳＳＩＤ１２１２に割り当てる。動作については、Ｗｉ−Ｆｉネットワーク５００は、ＡＰモードインターフェースが常に特定のフォーマットのＩＰアドレス、例えば、プライベートＩＰｖ４アドレスのプールからどのＩＰｖ４アドレスのサブネットが選ばれても１つ又は一部の他の一意の取り決めで終わるＩＰアドレスを有するような、合意された取り決めを含むことができる。例えば、有効なＡＰモードネットワークインターフェースアドレスは、１９２．１６８．３．１、１９２．１６８．７７．１、１９２．１６８．１１６．１等であり得る。例えば、図３８では、アクセスポイントは、ＡＰモードネットワークインターフェースのＩＰアドレス１２１４を有する。
【０１７５】
クラウド構成サービス５０４は、Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＤＨＣＰ）サービス構成を新たに作成されたＡＰモードインターフェース（ＩＰアドレス１２１４）に提供する（ステップ１２５３）。ＤＨＣＰサービスは、親機デバイスのその特定のインターフェース、すなわち新たに作成されたＡＰモードインターフェースで開始される（ＩＰアドレス１２１４）。既定のＳＳＩＤでネットワークに接続し、ネットワーク認証を成功裏に通過すると、子機デバイス（アクセスポイント１４Ｂ）が、ＤＨＣＰを用いてＩＰアドレスを取得する（ステップ１２５４）。これには、ＤＨＣＰ発見パケットを送信し、ＤＨＣＰプロトコルを用いることによってＩＰアドレスを取得することが含まれることがあり、子機Ｗｉ−Ｆｉネットワークインターフェースは、親機デバイスと同じサブネットから同じネットワークマスクを有する１つのＩＰアドレス１２１６を割り当てられる。用語法の観点から、親機ノード又はデバイスは、ネットワーク５０８に接続されたゲートウェイであり、子機ノード又はデバイスは、アクセスポイント１４Ｂ、又はネットワーク５０８に直接接続しているのではなくバックホールリンク１２０２又は複数のバックホールリンクを通じて接続している任意の他のアクセスポイント１４である。ＤＨＣＰプロトコルは、親機ノード（アクセスポイント１４Ａ）により操作される。
【０１７６】
親機ノードは、子機ノードに割り当てられたＩＰアドレスをクラウド構成サービス５０４と共有する（ステップ１２５５）。子機ノードに割り当てられたＩＰアドレスにより、クラウド構成サービス５０４は、親機ノードと子機ノードとの間にトンネルを確立させる（ステップ１２５６）。アクセスポイント１４（親機ノード及び子機ノード）内のプロセッサー１０２上で実行されるマネージャーアプリケーションが、トンネルを確立する（ステップ１２５７）。具体的には、クラウド構成サービス５０４は、親機ノードと子機ノードとの間にダウンリンクＧＲＥトンネルを確立する要求を発行することができる。親機ノードのマネージャーアプリケーションは、ＧＲＥトンネルを親機ノード上に確立することができる。次に、子機ノード上で稼働しているマネージャーアプリケーションが、割り当てられたＩＰ及び割り当てられたサブネットマスク情報に基づきＩＰアドレスサブネット情報を抽出する。子機ノードで稼働しているマネージャーアプリケーションは、ＡＰモードインターフェースのＩＰアドレス１２１４に関し合意された取り決めに基づき、アップリンクＧＲＥトンネルを確立する。例えば、合意された取り決めが、１で終わるＩＰアドレス、と仮定すると、子機ノードは、親機側の確立されたＷｉ−Ｆｉインターフェースの接続ＩＰアドレスが「ＳＵＢＮＥＴ＿ＩＰ＿ＡＤＤＲＥＳＳ  ＯＲ  １」に該当するので、アップリンクＧＲＥトンネルを確立する。
【０１７７】
この時点で、親機Ｗｉ−Ｆｉアクセスポイントデバイスと子機Ｗｉ−Ｆｉアクセスポイントデバイスとの間に、十分に機能するトンネルが確立されている（ステップ１２５８）。各デバイスで、新たに作成されたＧＲＥＴＡＰネットワークインターフェース１２２０が利用可能である。このトンネルの一方の側のネットワークインターフェースに入るどのイーサネットパケットも、確立されたトンネルの他方の側まで無修正のまま通される。パケットごとの少々の追加処理以外のこのトンネルの唯一のコストは、転送される各パケットにＧＲＥヘッダーとして付加される追加バイトである。ＧＲＥプロトコルの場合、この追加コストはちょうど３６バイトである。このトンネルでノード接続すると、Ｍａｘｉｍｕｍ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｕｎｉｔ（ＭＴＵ）のサイズは、少なくとも所与のバイト量の分は正確に増加しなければならない。
【０１７８】
親機と子機ノードとの間のＬ２ネットワーク確立
図４０を参照すると、一例示的実施形態では、ネットワーク図が、Ｌ２トンネルでブリッジインターフェースを接続するＷｉ−Ｆｉネットワーク５００を説明する。ネットワークデバイスをターゲットとする現代のほとんどのオペレーティングシステムは、Ｌ２学習Ｍｅｄｉａ  ＭＡＣブリッジ（以後、ブリッジインターフェース１２６０と呼ぶ）のソフトウェアの実装を有する。分散Ｗｉ−Ｆｉネットワーク（すなわち、Ｗｉ−Ｆｉネットワーク５００、分散Ｗｉ−Ｆｉシステム１０等）に接続される全Ｗｉ−Ｆｉクライアントデバイス１６に対する十分なネットワークサービスを可能にするためには、全インフラストラクチャーモードインターフェースが「ブリッジ」とならなくてはならず、すなわち、同じブリッジインターフェース１２６０に接続されるか、又は透過的に相互接続される一連のブリッジインターフェースに接続されなくてはならない。
【０１７９】
従来の単一ＡＰのＷｉ−Ｆｉソリューションでは、インフラストラクチャーモードのＷｉ−Ｆｉインターフェースは既にローカルでブリッジされており、すなわち、デバイス上に存在する同じブリッジインターフェースに接続されている。これは、全てのデュアルバンドＷｉ−Ｆｉアクセスポイントが、各々１帯域用の２つのＷｉ−Ｆｉインターフェースを有しているからである。それに加えて、Ｗｉ−Ｆｉルーターが有線のＩＥＥＥ８０２．３ローカルエリアネットワーク（ＬＡＮ）ポートを有する場合、これらのポートもＷｉ−Ｆｉインターフェースへとブリッジされている。これによって、同じルーターに接続されている全デバイスが十分なＬ２ネットワーク可視性を有することができ、つまり全てのＬ２プロトコルがデバイス間に適用できるようになる。
【０１８０】
本明細書で開示する分散Ｗｉ−Ｆｉネットワークの場合、ブリッジインターフェース１２６０に接続しなければならないＬＡＮポートが存在しない場合がある。しかし、いくつかのＷｉ−Ｆｉインフラストラクチャーモードインターフェース１２６２、１２６４が存在し、各デュアルバンドアクセスポイントに２つずつ存在して分散Ｗｉ−Ｆｉシステム１０内のリピーターの役割を果たしている。各ノードで、ブリッジインターフェース１２６０が作成されて、デバイスのＷｉ−Ｆｉインターフェース１２６２、１２６４の両方に接続されなくてはならない。それに加えて、これらのブリッジ１２６０は、何らかの方法で接続される必要がある。この目的のために、前述したＬ２トンネルが用いられる。
【０１８１】
両端にＬ２トンネルが確立されるとすぐ、ＧＲＥトンネルインターフェースがブリッジインターフェース１２６０に加えられ、すなわち、ＧＲＥＴＡＰネットワークインターフェース１２２０をブリッジインターフェース１２６０に加えることができる。Ｗｉ−Ｆｉネットワークの一部であるデバイスの全てでこの処理を繰り返すことで、ゲートウェイアクセスポイント１４Ａを通じて、Ｗｉ−Ｆｉネットワーク５００内の任意の２つのクライアント間の十分なＬ２ネットワーク接続性、並びに任意のクライアントに対し十分なネットワーキングサービスが保証される。
【０１８２】
図４１を参照すると、一例示的実施形態では、ネットワーク図が、Ｗｉ−Ｆｉクライアントデバイス１６間のデータ経路を例示するＷｉ−Ｆｉネットワーク５００を説明する。ここで、Ｗｉ−Ｆｉネットワーク５００は、ゲートウェイノードとしての、及び子機ノードであるアクセスポイント１４Ｂ、１４Ｃの親機ノードとしての、アクセスポイント１４Ａを有している。各アクセスポイント１４Ａ、１４Ｂ、１４Ｃはブリッジインターフェース１２６０を含み、アクセスポイント１４Ａ、１４Ｂ間にＬ２トンネル１２７０があり、アクセスポイント１４Ａ、１４Ｃ間にＬ２トンネル１２７０がある。
【０１８３】
同じアクセスポイント１４ＣにＷｉ−Ｆｉ接続されている２つのクライアント１６−１、１６−２が互いに通信する場合、クライアント１６−１によってクライアント１６−２へと送信されるパケットはローカルブリッジインターフェース１２６０に入り、クライアント１６へと直接転送され、その一方、データ経路１２８０として図示されるように逆もまた然りである。クライアント１６−２、１６−３が互いに通信する必要がある場合、データ経路１２８２として図示されるように、クライアント１６−３により作成されたパケットはローカルブリッジインターフェース１２６０に入り、クライアント１６−２のローカルブリッジインターフェース１２６０へと転送され、次いでクライアント１６−３へと転送される。パケットの目的地がネットワーク又はサービス５０２、５０４の外部である場合、パケットはゲートウェイアクセスポイント１４Ａへと転送される。ゲートウェイアクセスポイント１４Ａで、データ経路１２８４として図示されるように、このパケットはルーター鎖内の次のルーターへと送られる。ゲートウェイノードに入るパケットは、目的地のＭＡＣアドレスに基づき、逆の方向における場合と同じデータ経路を使って転送されることになる。
【０１８４】
クライアントステアリング
ここでまた、構成及び最適化処理５０の出力の１つは、分散Ｗｉ−Ｆｉシステム１０（又は任意の他のＷｉ−Ｆｉネットワーク）と関連付けられたＷｉ−Ｆｉクライアントデバイス１６を構成することである。本明細書ではそれを「クライアントステアリング」と呼ぶことがある。一般的なシステムでは、Ｗｉ−Ｆｉクライアントデバイス１６は、どのアクセスポイントと関連するかをローカルで決定する。したがって、一般的なクライアント関連付けは分散される。本明細書で説明するシステム及び方法では、クライアントの関連付けは、構成及び最適化処理５０の一部であってクラウドコントローラーによって制御されることができる。つまり、分散Ｗｉ−Ｆｉシステム１０又は任意の他のＷｉ−Ｆｉネットワークは、クライアント関連付けの決定を、クラウド１２において遠隔的になされることができる。クライアントステアリングの主な原則は、結果としてＷｉ−Ｆｉクライアントデバイス１６のＷｉ−Ｆｉ接続性の中断量が最低となり、大半のＷｉ−Ｆｉクライアントデバイス１６で有効であるべき、ということである。
【０１８５】
図４２を参照すると、一例示的実施形態では、流れ図が、任意の分散Ｗｉ−Ｆｉネットワークでクライアント関連付けを遠隔で制御するために使用されるクライアントステアリング処理１３００を説明する。クライアントステアリング処理１３００は、クラウド１２内のクラウドコントローラー１３１０、Ｏｐｅｎ  ｖＳｗｉｔｃｈ  Ｄａｔａｂａｓｅ（ＯＶＳＤＢ）１３１２、アクセスポイント１４と関連付けられたＷｉ−Ｆｉマネージャー１３１４、及びやはりアクセスポイント１４と関連付けられたＷｉ−Ｆｉドライバー３１６を参照して説明される。クラウドコントローラー１３１０は、クラウド１２内のサーバー２０であってもよい。ＯＶＳＤＢ１３１２は、Ｓｏｆｔｗａｒｅ  Ｄｅｆｉｎｅｄ  Ｎｅｔｗｏｒｋｉｎｇ（ＳＤＮ）環境の管理プロトコルである。ほとんどのネットワークデバイスは、シンプルネットワーク管理プロトコル（ＳＮＭＰ）などのレガシープロトコルによる遠隔構成が可能である。ＯＶＳＤＢの重点は、現代的な、プログラムに基づく管理プロトコルインターフェースを作成することであった。ＯＶＳＤＢ１３１２は、ＲＦＣ７０４７「Ｔｈｅ  Ｏｐｅｎ  ｖＳｗｉｔｃｈ  Ｄａｔａｂａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ」（１２／２０１３）に基づくことができ、その内容を参照により本明細書に援用する。アクセスポイント１４はプロセッサー１０２を介するなどしてＷｉ−Ｆｉマネージャー１３１４を実行することができ、Ｗｉ−Ｆｉドライバー１３１６によって無線機１０４のＷｉ−Ｆｉインターフェースを制御することができる。クライアントステアリング処理１３００は堅牢で、ほぼ全てのＷｉ−Ｆｉクライアントデバイス１６で有効である。
【０１８６】
例示の目的で、ノード１からノード２（すなわち、アクセスポイント１４）へと誘導されている１つのクライアントを参照してクライアントステアリング処理１３００を説明する。尚、アクセスポイント１４は、Ｗｉ−Ｆｉマネージャー３１４と関連付けられており、Ｗｉ−Ｆｉドライバー３１６は現在Ｗｉ−Ｆｉクライアント１６、すなわちノード１と関連付けられており、クラウドコントローラー１３１０はクライアントステアリング処理１３００によって当該クライアントを別のアクセスポイント１４、すなわちノード２（図４２では示さず）へと誘導している。しかし、ノード２は、同様のＷｉ−Ｆｉマネージャー１３１４及びＷｉ−Ｆｉドライバー１３１６を有する。当業者であれば、クライアントステアリング処理１３００は、複数のＷｉ−Ｆｉクライアントデバイス１６及び複数のＷｉ−Ｆｉネットワークで用いることができることを認識しよう。クラウドコントローラー１３１０は、構成及び最適化処理５０に基づきＷｉ−Ｆｉクライアントデバイス１６を誘導する必要性を判定することができる。しかし、Ｗｉ−Ｆｉクライアントデバイス１６は、負荷バランシング、最適化、メンテナンス、オフチャンネルスキャニング等を含む何らかの理由により誘導されることがある。
【０１８７】
クラウドコントローラー１３１０は、クライアント（すなわちＷｉ−Ｆｉクライアントデバイス１６）をノード１からノード２へと誘導する必要があると判定する。具体的には、クラウドコントローラー１３１０は、その制御下にある各アクセスノード１４のＡｓｓｏｃｉａｔｅｄ  Ｃｌｉｅｎｔ  Ｌｉｓｔ（ＡＣＬ）テーブルを維持することができる。クライアントステアリング処理１３００では、クラウドコントローラー１３１０は、特定のＷｉ−Ｆｉクライアントデバイス１６を、関連付けられたアクセスポイント１４のＡＣＬテーブルに追加する／そこから除去することができる（ステップ１３２０、１３２１）。例えば、クライアントＡをノード１から離れてノード２へと誘導するには、クラウドコントローラー１３１０はクライアントＡをノード１のＡＣＬテーブルから除去し、当該クライアントをノード２のＡＣＬテーブルに追加する。
【０１８８】
クライアントステアリング処理１３００では、クラウドコントローラー１３１０は、Ｗｉ−Ｆｉネットワーク内の様々なノードに、使用されるステアリング技法のタイプとともに、ステアリングが必要なクライアントの詳細を含むメッセージを送信する。一例示的実施形態では、クラウドコントローラー１３１０は、そのようなメッセージをノードに送るのにＯＶＳＤＢ１３１２を使用することができる。例えば、クラウドコントローラー１３１０は、ＯＶＳＤＢ１３１２を介して、各ノードにＡＣＬテーブルのアップデートを提供することができる。アクセスポイント１４（ノード）は、アップデートに基づいて動作することができ、すなわち、除去されたクライアントからの関連付けを解除し、追加されたクライアントから関連付けられようとする。
【０１８９】
クラウドコントローラー１３１０がＡＣＬテーブルからの／へのノードＡの除去／追加を実行するとき（ステップ１３２０、１３２１）、アップデート通知メッセージをノード１及びノード２の両方のＷｉ−Ｆｉマネージャー１３１４に送信することができる（ステップ１３２２）。ノード１は、そのＡＣＬリストを消去して（ステップ１３２３）、ブラックリストモードをイネーブルし（ステップ１３２４）、クライアントＡのＭｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ（ＭＡＣ）アドレス（又は何らかの他の一意識別子）をＡＣＬリストのブラックリストに追加することができる（ステップ１３２５）。次に、ノード１のＷｉ−Ｆｉマネージャー１３１４は、ＯＶＳＤＢ３１２からの変更があるまで待機する状態に進む（ステップ１３２６）。ノード１のＷｉ−Ｆｉマネージャー１３１４は、Ｗｉ−Ｆｉドライバー１３１６（例えばＩｎｐｕｔ／Ｏｕｔｐｕｔ  Ｃｏｎｔｒｏｌ（ＩＯＣＴＬ））にコールすることができる。
【０１９０】
このコールを受信すると、クライアントＡが現在関連付けられているノード１は、次のことを行う。クライアントＡに関連付け解除要求を送信し（ステップ１３２７）、当該クライアントＡからのプローブ要求への応答を停止し（ステップ１３２８）、クライアントが尚も関連しようとした場合は理由コード３４とともに認証失敗を送信する（ステップ１３２９）。また、ＡＣＬリストにクライアントＡが載っていないＷｉ−Ｆｉネットワーク内の他のノード及びノード１は、クライアントＡからのプローブ要求に応答しない。反対に、クライアントＡが誘導されているノード２は、当該クライアントＡからのプローブ要求に応答する。
【０１９１】
Ｗｉ−Ｆｉクライアントデバイス１６を１つのアクセスポイント１４から別のアクセスポイント１４へと誘導（ステアリング）するのに使用できる方法は他にもある。これらの手法はさほど一般的ではないかもしれないが、はるかに高速に動作することもあり、Ｗｉ−Ｆｉクライアントデバイス１６がその関連付けを１つのアクセスポイント１４から別のアクセスポイント１４へと移動している際のネットワークの中断時間を減じることができる。そのような機構の１つは、Ｃｈａｎｎｅｌ  Ｓｗｉｔｃｈ  ＡｎｎｏｕｎｃｅｍｅｎｔすなわちＣＳＡを使用することである。ＩＥＥＥ８０２．１１標準化チャンネル切換えアナウンスメントを理解するクライアントは、その命令に従い同意された時間で非常に速やかにチャンネル移動する。しかし、ＣＳＡは高速チャンネル切換えを誘導しはするが、それ自体ではデバイスを新アクセスポイント１４へローミングさせない。ＣＳＡによってＷｉ−Ｆｉクライアントデバイス１６を速やかにチャンネル移動させたら、Ｗｉ−Ｆｉクライアントデバイス１６に関連付け解除メッセージを送信することによって、実際にローミングさせることができる。このメッセージは、新チャンネル上の新アクセスポイント１４によって送信されることができ、旧チャンネル上の旧アクセスポイント１４としてのアクセスポイント１４が、旧アクセスポイント１４の基本サービスセット識別子（ＢＳＳＩＤ）を妨害することによって自己妨害している、というものである。明確な関連付け解除メッセージなしでも、一部のＷｉ−Ｆｉクライアントデバイス１６はそれらの旧接続を時間切れとして、ＣＳＡが送信されないときよりも手早く新アクセスポイント１４を発見する。一部のＷｉ−Ｆｉクライアントデバイス１６は、スキャンして関連付け解除メッセージに従って新チャンネル上の新アクセスポイント１４を発見するのは非常に遅い。
【０１９２】
ＩＥＥＥ８０２．１１ｋ規格のローミング支援及びＩＥＥＥ８０２．ｌｌｖ規格のマルチキャスト指定内で、Ｗｉ−Ｆｉクライアントデバイス１６を１つのアクセスポイント１４から別のアクセスポイント１４へとローミングさせる機構もある。これらの機構は、サービスの中断がより少なく、より手早くＷｉ−Ｆｉクライアントデバイス１６を新アクセスポイント１４へと移動させることができるので、有利である。しかし、全てのＷｉ−Ｆｉクライアントデバイス１６がこれらの動作モードをサポートするわけではない。同様に、高速ローミングプロトコルであるＩＥＥＥ８０２．ｌｌｒの使用も、１つのアクセスポイント１４から別のアクセスポイント１４への移動を加速するのに用いることができる。しかし、ＩＥＥＥ８０２．１１ｋ及びＩＥＥＥ８０２．ｌｌｖと同様に、この手法は全てのＷｉ−Ｆｉクライアントデバイス１６にサポートされるわけではない。
【０１９３】
尚、クラウドコントローラー１３１０は、クライアントステアリング処理１３００、ＣＳＡアナウンスメント、ＩＥＥＥ８０２．ｌｌｒ規格の高速ローミング、ＩＥＥＥ８０２．１１ｋ規格のローミング支援、及びＩＥＥＥ８０２．ｌｌｖ規格のマルチキャスト指定等を使用することができる。本明細書で説明するように、クラウドコントローラー１３１０は、クライアントステアリング処理１３００、ＣＳＡを含む複数のステアリング手法を利用することができ、アクセスポイント１４に関連付けを解除させ、アクセスポイントのＡＣＬリスト中のクライアントをブラックリスト化させる。
【０１９４】
全ての手法（ＣＳＡ、ＩＥＥＥ８０２．１１ｋ及びＩＥＥＥ８０２．ｌｌｖ規格の高速ローミング）が全てのＷｉ−Ｆｉクライアントデバイス１６にサポートされるわけではなく、また、手法によっては一部のＷｉ−Ｆｉクライアントデバイス１６では高速だがそれ以外ではそうではないので、どのＷｉ−Ｆｉクライアントデバイス１６がどの手法をサポートし、どの手法が所与のＷｉ−Ｆｉクライアントデバイス１６でネットワーク中断を最短とするかを、クラウドコントローラー１３１０が学習することが重要になる。どの手法がうまくいくかを学習することに加えて、所与の手法をどのくらいの頻度で使用すべきかを学習することも必要である。デバイスによっては、一定数の関連付け解除しか許容しないことで、対象となるネットワークを放棄して再接続を拒否する。特定クライアントに対し、上述したどのタイプのステアリングコマンドにも数及び頻度の制限を設けなければならない。これらの制限は、クライアントのタイプごとに特異的であり、一定の期間にわたり多くの数のデバイスの挙動を観察することによって学習されなくてはならない。クラウドコントローラー１３１０を基礎とする学習システムは、このことを実施するには良い方法である。そのようなシステムは、多数のＷｉ−Ｆｉクライアントデバイス１６の挙動の可視性を有し、どのＷｉ−Ｆｉクライアントデバイス１６がどの手法で最良に動作するかを理解するのに必要な統計値を当該システムが抽出することが可能になる。
【０１９５】
これを行うための一手法は、ネットワーキングノード（アクセスポイント１４）に、異なるステアリングアルゴリズムに対する様々なＷｉ−Ｆｉクライアントデバイス１６の挙動をクライアントＭＡＣアドレス及びクライアント名を用いて把握させておき、それらをクラウドコントローラー１３１０に報告させることである。クライアントに特異的なその他の情報、例えばデバイスが使用しているＤＮＳ機構、プロトコルスタックバージョン等もコントローラーに報告して、管理しているデバイスのタイプの特定に役立てることができる。このことは、システムがクライアントステアリングアルゴリズムの変更形態を異なるクライアントデバイスの誘導に用いることができるように、クライアントの挙動を学習するのに役立つ。どの手法が最もうまくいくかを学習することと合わせて、システムは、各手法をある特定のＷｉ−Ｆｉクライアントデバイス１６に関していかにして最適化できるかについて具体的な詳細を学習することができる。例えば、関連付け解除要求を送ること、及びプローブ要求に応答しないことは、ほとんどのＷｉ−Ｆｉクライアントデバイス１６を誘導するのに十分な場合もあるが、誘導の認証失敗を送ることを要求し得るＷｉ−Ｆｉクライアントデバイス１６の特定のセットがあってもよい。
【０１９６】
推定及び学習に基づく最適化
図４３を参照すると、一例示的実施形態では、フローチャートが、クラウドコントローラーによる、分散Ｗｉ−Ｆｉシステム１０などのＷｉ−Ｆｉネットワークの推定及び学習処理１４００を説明する。ここでまた、本明細書で説明するように、アクセスポイント１４（ノード）は、測定区間におけるＷｉ−Ｆｉシステムの様々なパラメーターについて、平均値、分散、及びヒストグラムなどの統計的データを収集し報告する（ステップ１４０１）。これらのパラメーターは、限定ではないが、スループット、アプリケーションのタイプ、ネットワーク内の全てのノードから／へのクライアントへのトラフィックを消費する信号の強度、空間ストリームの数、チャンネル幅、ＭＣＳその他などのクライアントの能力を含む。
【０１９７】
クラウドコントローラーは、収集され報告された統計的データを処理するように構成されている（ステップ１４０２）。データは時系列として収集され、ある場所の全ノードでコレートされて、ネットワーク負荷の全貌が把握される。このデータは、例えば週の曜日、一日の時刻等に基づいて、時間を類似の負荷特徴を有する期間に分割するのに用いられる。それに加えて、データは、時間の相関構造、すなわち自己回帰的特徴を決定するのに用いられる。
【０１９８】
処理された統計的データは、クラウドコントローラーが予想、予測、傾向、及び／又は干渉を決定するのに用いられる（ステップ１４０３）。次に、数分から数時間先、又は数日先の将来の期間の予想を立てることができ、確率的負荷（負荷予測）の代表セットが類似期間の履歴データ並びに過去データを用いて抽出される。負荷予測は、トラフィックの量、並びにアプリケーションのタイプ、及びＷｉ−Ｆｉクライアントデバイス１６が異なるノードから取得可能な理論的データレートを含む。このデータは、ネットワークスパンの推量、すなわちＷｉ−Ｆｉクライアントデバイス１６がそこからサービスを要求する場所の範囲（ネットワークノードへの信号強度のベクトルにより特定される）を特徴付けるのにも用いられる。Ｗｉ−Ｆｉネットワークのスパン及び境界を特定することにより、送信電力、サポートされるデータレートのセットその他などの動作パラメーターの最適化７０が可能になる。データはまた、ネットワーク内の冗長ノード、ネットワーク内の配置が悪いノード、並びに負荷に適切に対応するために追加のノードが要求される場合を特定するのに用いられる。
【０１９９】
ネットワーク外からの干渉は、全てのノードの全てのチャンネルから時系列として測定又は推量され、収集される。集計干渉レベル並びに特定の干渉アクセスポイント１４からの干渉の両方が追跡される。時系列データを時間で分割して、類似の特徴を有する期間を決定する。傾向、定期性、及び自己回帰的特徴が抽出され、数分から数時間先、又は数日先の範囲の、将来の期間の干渉レベルの分布を予測するのに用いられる。ある場所の全ノードで報告された干渉データは、当該場所の異なるノードにより検出された干渉の相関を決定するのに用いられる。相関行列に基づき、あるノードの干渉予想を、全ノードで測定値を加重し合計する予測変数によって、改善することができる。
【０２００】
ノードとそれらに関連付けられているクライアントとの間の信号強度のマトリックスによっては、近隣ノードの送信活動及び近隣クライアントの受信活動は、ノードの性能に変動的な影響を及ぼし得る。送信活動及び受信活動の両方、並びに性能（パケットエラーレート、キュー利用、容量、キュー長さ、パケット遅延、チャンネルビジー度等）に関する時系列データが収集される。いかなるときでも、ノードの性能は、全ての近隣ノード及びＷｉ−Ｆｉクライアントデバイス１６の総合的な活動により影響を受ける。しかし、経時的に、当然ながら変化する活動レベルによって、各近隣ノードの活動とノードの異なる性能特徴との関係を司る関数の推量が可能になる。例えば、パケットエラー及び確認応答消失を、近隣ノード又はそのクライアントの活動と相関させることで、隠れノードが検出可能になる。同様に、パケット遅延、ジッター、容量、チャンネルビジー度に影響する関係を各々決定することができ、したがって、あるノードの活動が別のノードの性能に及ぼす影響を決定する重み又は関数によりノード間のエッジがパラメーター化された関係性グラフが構築される。
【０２０１】
ネットワーク内のあるクライアントと全ノードとの間の信号強度のベクトルについて収集された時系列データは、ノード軌線の抽出、すなわち直近の過去の軌線に基づき、ノードの（信号強度の空間における）将来の場所の予測を可能にする。このデータは、近い将来の有望なハンドオフ候補を予測するのに用いられる。Ｗｉ−Ｆｉクライアントデバイス１６の軌線も、それらの移動特徴（例えば静止性、遊動性、移動性、及び多移動性クライアントで区別される）に基づきクライアントを分類するのに用いられる。この分類は、周波数帯域の選択並びにＷｉ−Ｆｉクライアントデバイス１６に対応するノードを通知するのに用いられる。
【０２０２】
Ｗｉ−Ｆｉクライアントデバイス１６から収集されたデータはまた、異なるクライアントを特徴付けとプロファイル化し、それらを類似の特徴をもつグループに分類するのに用いられる。クライアントから測定した信号強度、並びにクライアントが使用するＭＣＳレート及びノードが使用するＭＣＳレートが記録されたデータが、パケットエラーレート情報とともに、クライアントとノードとの間の信号強度と可能な容量との関係を推量し較正するのに用いられる。クライアントと対応アクセスポイント１４並びに非対応アクセスポイント１４との間の、関連付け及びプローブ要求並びにクライアントのハンドオーバーが記録されたデータとともに信号強度情報が、ローミング、アクセスポイントの選択、及びクライアントデバイスの関連付け挙動を分類するのに用いられる。
【０２０３】
それに加えて、ノードによってクラウド１２に転送されたデータは、異常挙動又はバグを探すために分析されることがある。これらのバグは、分散Ｗｉ−Ｆｉシステム１０の動作と関連していることもあるし、又は特定のＷｉ−Ｆｉクライアントデバイス１６の挙動と関連していることもある。見つかるバグ又は異常挙動は、その挙動を有するＷｉ−Ｆｉクライアントデバイス１６のＭｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ（ＭＡＣ）アドレスを検証することによって、特定のタイプのクライアントと関連付けることができる。ＭＡＣアドレスからデバイスタイプへのマッピングは、どのデバイスタイプにどの問題があるかを理解するために用いることができる。多数のネットワークで挙動に関する統計値を収集することによって、異常蔓延度の正確な統計が含まれる、Ｗｉ−Ｆｉクライアントデバイス１６の挙動の大規模なデータベースを形成することができる。
【０２０４】
推定及び学習処理１４００は、最適化７０が、決定された予想、予測、傾向、及び／又は干渉に基づき実行されることを可能にする（ステップ１４０４）。上述した分析は全て、公知の機械学習アルゴリズム及び技法を用いて実施することができる。例えば、異常挙動の調査は、様々なクラスター化アルゴリズム、例えばｋ平均法、外れ値検出、又は多変量正規分布により行うことができる。この学習は、教師なし学習（異常挙動は未知であり、何でも「正常ではない」ものを探す）でも、教師あり学習（正及び不正の挙動は既知）でもよい。
【０２０５】
ホームネットワークの視覚化
ここでまた、Ｗｉ−Ｆｉネットワーク、又は他の同様の無線技術は、広く普及している。人々は、自宅、職場、及び公共の場で、例えば学校やカフェ、更には公園でもそれらを使用している。Ｗｉ−Ｆｉは、ケーブルを排除し移動性を可能にすることによって、高い利便性を提供する。消費者がＷｉ−Ｆｉで実行する各種アプリケーションは拡大の一途を辿っている。今日、人々は、ビデオトラフィック、オーディオトラフィック、電話での通話、ビデオ会議、オンラインゲーム、及び防犯カメラの映像など、あらゆる種類のメディアの伝送にＷｉ−Ｆｉを使用している。ウェブ閲覧、ファイルのアップロード／ダウンロード、ディスクドライブのバックアップ、及びいくつかのモバイルデバイス用アプリケーションなどの従来のデータサービスも同時に使用されることが多い。
【０２０６】
Ｗｉ−Ｆｉの人気及び高普及率にもかかわらず、消費者の多くは尚もＷｉ−Ｆｉで苦労している。上述したようなリアルタイムのメディアアプリケーションを供給する難題は、Ｗｉ−Ｆｉのスループット、待機時間、ジッター、及び堅牢性に大きな負担をかける。無線ネットワークの性能に対処する定評のある一つの解決策は、より多くの無線機をより密な空間内で提供して、受信デバイスと送信デバイスとの間の無線信号のスペクトル密度及び高周波（ＲＦ）信号強度を高めることである。家の中の無線ネットワークを監視することは、環境が動的であることが多く、また、ユーザーの技術知識も限られることがあるため、難しい。したがって、データ視覚化及びネットワークトラブルシューティングのための様々な機構を実装して、分散Ｗｉ−Ｆｉシステム１０の使い勝手を改善する。この情報は、ユーザーに、ｗｅｂ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ（ＧＵＩ）、又はユーザーデバイス２２上で動作するモバイルアプリケーションの一部などであるモバイルＧＵＩフォーマットを通じて提供されることがある。
【０２０７】
図４４を参照すると、一例示的実施形態では、ネットワーク図が、家庭用のＷｉ−Ｆｉネットワーク１５００を説明する。Ｗｉ−Ｆｉネットワーク１５００は、分散Ｗｉ−Ｆｉシステム１０等であり得る。Ｗｉ−Ｆｉネットワーク１５００は、典型的には、インターネット６２０及びＤｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍ（ＤＮＳ）１５０４などのサービスに接続しているゲートウェイノード１４Ａと、ゲートウェイノード１４Ａに接続してインターネット６２０にアクセスし、Ｗｉ−Ｆｉクライアントデバイス１６にサービスを提供するノード１４Ｂ、１４Ｃの１つ又は複数と、データを消費及び生成するエンドデバイスであるＷｉ−Ｆｉクライアントデバイス１６Ａ、１６Ｂ、１６Ｃの１つ又は複数と、Ｗｉ−Ｆｉクライアントデバイス１６のオペレーターであるユーザーと、を含む。ユーザーは人間でも機械でもよい。
【０２０８】
ゲートウェイノード１４Ａは、ノード１４Ｂ、１４Ｃと同じであり、さらに、モデム／ゲートウェイ１８を介してインターネット６２０に接続している。それに加えて、ゲートウェイノード１４Ａは、Ｗｉ−Ｆｉネットワーク１５００とインターネット６２０との間のインターフェースを管理することができる。ノード１４Ａ、１４Ｂ、１４Ｃは、Ｗｉ−Ｆｉネットワーク１５００のコアを形成するのに使用され、Ｗｉ−Ｆｉクライアントデバイス１６と他のノード１４との間で、又はノード１４から他のノード１４へ、又は他のノード１４からゲートウェイノード１４Ａへ、データを渡す中継機能として動作する。Ｗｉ−Ｆｉクライアントデバイス１６は、ノード１４に接続してＷｉ−Ｆｉネットワーク１５００へのアクセスを得る。Ｗｉ−Ｆｉクライアントデバイス１６はアプリケーションを実行し、Ｗｉ−Ｆｉネットワーク１５００上のデータの生成者及び消費者である。それらはＷｉ−Ｆｉネットワーク１５００内の最終接続である。ユーザーは、Ｗｉ−Ｆｉネットワーク１５００内でＷｉ−Ｆｉクライアントデバイス１６を制御する機械又は人間である。ユーザーの一例は、携帯電話（Ｗｉ−Ｆｉクライアントデバイス１６）を使ってウェブページにアクセスするか、又はモバイルアプリを使用する人である。
【０２０９】
Ｗｉ−Ｆｉネットワーク１５００の異なる構成要素の視覚化は、Ｗｉ−Ｆｉネットワーク１５００を監視する管理者又は所有者が、大量のデータを視覚的に消費して、Ｗｉ−Ｆｉネットワーク１５００の状況、性能、及び動作を速やかに理解することを助けるために重要である。したがって、Ｗｉ−Ｆｉネットワーク１５００の視覚化及びトラブルシューティングを表示するためのシステム及び方法が本明細書で説明される。
【０２１０】
図４５を参照すると、一例示的実施形態では、スクリーンショットが、Ｗｉ−Ｆｉネットワーク１５００の視覚化及びトラブルシューティングのためにモバイルアプリケーション又はウェブページと関連付けられたＧＵＩ１６００を説明する。本明細書で説明するシステム及び方法は、ユーザーデバイス２２で動作するモバイルアプリケーションを通じて実現することができる。また、システム及び方法は、任意のウェブブラウザーからアクセス可能なウェブページ、例えばＨＴＭＬを通じて実現することができる。ＧＵＩ１６００は、分散Ｗｉ−Ｆｉシステム１０などのＷｉ−Ｆｉネットワーク１５００の視覚化を提供する。
【０２１１】
ＧＵＩ１６００では、Ｗｉ−Ｆｉネットワーク１５００は、Ｗｉ−Ｆｉネットワーク１５００を、ゲートウェイノード１４Ａを中心とする配置にすることで、視覚的に表示することができる。ゲートウェイノード１４Ａは、インターネット６２０との接続を管理しているので、ほぼ全てのデータのシンク及びソースである。ＧＵＩ１６００では、ゲートウェイノード１４Ａを円又は他の形状で示して、Ｗｉ−Ｆｉネットワーク１５００内の１つのエンティティを表示することができる。典型的には、地球又は地球儀の形状の、インターネット接続が当該地球儀を取り囲んでいるアイコンによって、全インターネット接続データのソース及びシンクとしてのゲートウェイノード１４Ａの機能を表示することができる。つまり、ＧＵＩ１６００ではそれを他のノードと区別するための何らかの指示法がある。ネットワークは１つ又は複数のゲートウェイノード１４Ａを有することができる。
【０２１２】
任意選択により、ノード１４Ｂ〜１４Ｈの１つ又は複数がゲートウェイノード１４Ａに接続されて、Ｗｉ−Ｆｉネットワーク１５００を形成する。ゲートウェイノード１４Ａと、隣接するノード１４Ｂ、１４Ｃ、１４Ｅ、１４Ｇとの間の接続は、コネクター１６０２により表示される。コネクター１６０２は、典型的には、異なる色、透明度、長さ、及び連続性の線である。コネクター１６０２は、ゲートウェイノード１４Ａと、隣接するノード１４Ｂ、１４Ｃ、１４Ｅ、１４Ｇとの間のデータ接続を表す。ノードは、ネットワークを延長するために、他のノードへのコネクター１６０４も有することができる。コネクター１６０２と同様に、コネクター１６０４は、異なる色、透明度、長さ、及び連続性を有することができる。具体的には、異なる色、透明度、長さ、及び連続性は、コネクター１６０２、１６０４のデータレート、負荷、チャンネル、帯域幅、信号強度その他などの動作的側面を視覚的に示すことができる。
【０２１３】
コネクターはまた、それがなければ別々の２つのＷｉ−Ｆｉネットワーク（図４５では示さず）間に存在することができる。ネットワーク間のコネクターは、２つの物理的又は論理的に別のＷｉ−Ｆｉネットワークを、場所間でデータを転送する経路を用いて論理的に接続するのに用いられる。ノード１４は、別のゲートウェイノード１４Ａ又はノード１４へのコネクター１６０２、１６０４の１つ又は複数を有することができる。
【０２１４】
ＧＵＩ１６００では、ゲートウェイノード１４Ａ及びノード１４Ｂ〜１４Ｈのデータ視覚化は、次の特徴を有することができる。アイコンの形状及びイラストレーションは、ノードのタイプを表示することができる。例えば、ゲートウェイノード１４Ａは、インターネット６２０への接続を表示するアイコンとして示すことができるが、ノード１４Ｂ〜１４Ｈは、内部接続だけをサポートすることを示すことができる。アイコンの色は、状況を表示することができる。例えば、赤色は問題を表示するが、白色又は緑色は良好に動作中のノード又はゲートウェイを表示する。
【０２１５】
アイコンの透明度は、Ｗｉ−Ｆｉネットワーク１５００上のノード又はゲートウェイのデータ送信活動を表示することができる。ゲートウェイ又はノードが見つからない場合、見つからないという状況（例えば、切断、電源喪失、装置の障害等）を示すために、元のアイコンの輪郭が違う色で示されることがある。アイコンのサイズは、データ送信活動、又は接続されている他のＷｉ−Ｆｉクライアントデバイス１６若しくはノード１４の数に基づき、より大きく、又はより小さく示されることがある。
【０２１６】
ゲートウェイ又はノードの名前又はニックネームをテキスト形式で示すことができる。名前は、Ｗｉ−Ｆｉネットワークの管理者又は所有者が決定することもできるし、接続しているＷｉ−Ｆｉクライアントデバイス１６を検証して突き止めることもできる。例えば、典型的な居間のクライアントであるＷｉ−Ｆｉクライアントデバイス１６との接続を有するノードは「居間」と名付けられて、ゲートウェイ又はノードが配置されている空間を表示することができる。
【０２１７】
コネクター１６０２、１６０４は、状況を伝える異なる属性、例えばコネクター１６０２、１６０４の長さ、コネクター１６０２、１６０４の色、透明度、形状、及び厚さ、並びにコネクター１６０２、１６０４のアニメーションで示すことができる。コネクター１６０２、１６０４の長さは、ゲートウェイ又はノード間の物理的距離、又はコネクター１６０２、１６０４の各端部の信号レベルによって測定される論理的距離を伝えることができる。コネクター１６０２、１６０４の色、透明度、形状、及び厚さは、接続の強度を表示することができる。コネクター１６０２、１６０４のアニメーションは、活動を示すために膨張又は脈動により表される、コネクター１６０２、１６０４上を送信されているデータのアニメーションを含むことができる。
【０２１８】
Ｗｉ−Ｆｉクライアントデバイス１６は、１つのノード又はゲートウェイとの関連付けを有する。Ｗｉ−Ｆｉクライアントデバイス１６は、異なる可能な接続の利用可能性及び接続の性能に基づき、例えば最適化７０又は他の動作条件に基づき、同じＷｉ−Ｆｉネットワーク内のノード又はゲートウェイの間で接続を移動することができる。Ｗｉ−Ｆｉクライアントデバイス１６のノード又はゲートウェイへの接続は、月が惑星の周りで軌道を描くのと同じように、より大きいオブジェクト（すなわちノード１４のアイコン）の周りで軌道を描くオブジェクト１６１０として視覚化することができる。軌道を描くオブジェクトはＷｉ−Ｆｉクライアントデバイス１６であり、惑星はゲートウェイ又はノードである。
【０２１９】
Ｗｉ−Ｆｉクライアントデバイス１６とノード／ゲートウェイとの関係は、次の属性により視覚化することができる。クライアントの色を用いて、Ｗｉ−Ｆｉクライアントデバイス１６の状況又はタイプを伝えることができる。ノード又はゲートウェイの周りのオブジェクト１６１０の軌道の形状は、消費又は生成されているアプリケーショントラフィックの活動又はタイプを表示することができる。オブジェクト１６１０のサイズは、Ｗｉ−Ｆｉクライアントデバイス１６の能力又は活動を伝えることができる。オブジェクト１６１０からノード又はゲートウェイまでの距離は、接続の強度又は質を表示することができる。オブジェクト１６１０の軌道の速度は、活動又は速度を示すことができる。オブジェクト１６１０の透明度は、活動又はノード若しくはゲートウェイに接続された時間を示すことができる。ネットワークのゲストとして属するＷｉ−Ｆｉクライアントデバイス１６は、異なるアイコン、色、透明度、軌道、又はゲストクライアントをホームクライアントと区別する別の識別可能な特徴として示してもよい。Ｗｉ−Ｆｉネットワーク１５００のユーザーは、いくつかのＷｉ−Ｆｉクライアントデバイス１６を所有することがあるので、Ｗｉ−Ｆｉネットワーク１５００に接続されているクライアントは、クライアントアイコンの代わりにユーザーを表すアイコンとして表してもよい。
【０２２０】
アイコン、コネクター１６０２、１６０４、及びオブジェクト１６１０は、視覚化においてそれらと関連付けられた１つ又は複数の視覚表示を有することができる。本明細書で説明するように、異なるアイコン、色、形状、サイズ、透明度、軌道、又は別の識別可能な特徴を用いて、Ｗｉ−Ｆｉネットワーク１５００の動作と関連する通知をユーザーに伝えることができる。それに加えて、他の通知、例えば特定の警告又は通知（例えば、インターネット接続性の喪失、ゲストのアクセス要求、ＤＮＳの問題等）、数値情報（例えば、帯域幅、クライアント接続／切断の数、スループット、負荷）、視覚化（例えば、カバレッジのヒートマップ、干渉等）も意図される。
【０２２１】
ヒートマップ
ヒートマップは、ゲートウェイ、ノード、又はクライアントの周りの色又は透明度の階調によって表示され、所与の時間のデバイスの性能又は可能な性能を表示するために用いることができる。ヒートマップは、Ｗｉ−Ｆｉネットワーク１５００内のデバイスを他のデバイスと比較して相対的な性能を知らせる手早い方法である。比較される性能特徴は、信号強度、信号の質、速度、遅延、パケット消失、ジッター、又は他の類似の統計値に関連し得る。
【０２２２】
外部干渉のヒートマップも視覚化することができる。無線ネットワークへの干渉は、特にＷｉ−Ｆｉネットワーク１５００のような免許不要の無線ネットワークではよくあることである。無線干渉の持続時間及び強度は、ヒートマップ又は離散数の形態で視覚化して、Ｗｉ−Ｆｉネットワーク１５００への干渉量を管理者に知らせることができる。干渉を受けているノード、ゲートウェイ、又はクライアントは、例えば、より高い階調の色度によって説明することができる。干渉レベルが低いデバイスは、より低い階調の濃度によって説明することができる。
【０２２３】
低性能の領域
Ｗｉ−Ｆｉネットワーク１５００の一部分が低性能である場合、Ｗｉ−Ｆｉネットワーク１５００の被影響領域を空白又は対照的な色で示すイラストレーションにより視覚化することができる。Ｗｉ−Ｆｉネットワーク１５００の被影響領域は、空間における物理的場所又は論理的場所に関連し得る。被影響領域は、信号強度、信号の質、速度、遅延、パケット消失、ジッター、又は他の類似の統計値で相対的に低い性能に関連し得る。
【０２２４】
時間スケール
ゲートウェイ、ノード、クライアント、及びユーザーのデータの視覚化は、ネットワークの活動とともに変化する動的な環境である。Ｗｉ−Ｆｉネットワーク１５００内の変化は、定められた制限時間に基づき、又はイベントに基づき記録され再生されることができる。開始時間及び終止時間を有する制限時間が定められている場合、Ｗｉ−Ｆｉネットワーク１５００の変化は、異なる再生速度で視覚的に示すことができる。同様に、Ｗｉ−Ｆｉネットワーク１５００内のイベント又は大きな変化を隔離し再生して、ユーザー又は管理者のためにネットワークの変化及び活動を視覚化することができる。
【０２２５】
冗長接続による、インターネット接続不良からの回復
携帯電話及び他の類似のクライアントなどのユーザーデバイス２２は、Ｗｉ−Ｆｉ及びセルラーなどの複数の通信インターフェースを有する。各インターフェースはインターネット接続を同時にサポートすることができるが、クライアントのオペレーティングシステム（ＯＳ）は典型的には、コスト、電源、性能、又は他の類似の理由のため、ある接続をその他の接続よりも選好する。Ｗｉ−Ｆｉネットワークでは、Ｗｉ−Ｆｉへの接続は、必ずしもインターネット６２０への接続を意味しない。多くの場合、携帯電話のＯＳは上流のインターネット不良の場合にＷｉ−Ｆｉ接続を切断するツールを備えておらず、Ｗｉ−Ｆｉクライアントデバイス１６は、Ｗｉ−Ｆｉネットワーク１５００には成功裏に接続しているのにインターネット６２０に接続できないままになる。ゲートウェイを監視する制御を有するネットワークの場合、インターネットの停止が監視される。
【０２２６】
Ｗｉ−Ｆｉネットワーク１５００内で検出されたインターネット停止の結果、次の動作となる。第１に、やはりインターネット６２０にアクセス可能な代替（alternate）データ接続を有すると考えられるあらゆるＷｉ−Ｆｉクライアントデバイス１６を切断する。この切断の結果、セルラークライアントは、セルラーインターフェースを通じてインターネット６２０への接続を確立する。第２に、Ｗｉ−Ｆｉクライアントデバイス１６又はユーザーデバイス２２に、Ｗｉ−Ｆｉネットワーク１５００を監視するモバイルアプリケーションを操作してプッシュ通知を送って、インターネット停止を知らせることができる。Ｗｉ−Ｆｉクライアントデバイス１６はインターネット接続性のためにセルラー接続に接続されているので、プッシュ通知は受信される。
【０２２７】
あるいは、ネットワークゲートウェイのインターネット停止の場合、同時のインターフェースのインターネット接続をサポートする能力のあるクライアント又はノードデバイスは、Ｗｉ−Ｆｉネットワーク１５００へのゲートウェイとして動作するように動作を変更することができる。したがって、このクライアント又はノードは、Ｗｉ−Ｆｉネットワーク１５００内の他のノード及びクライアントに対しゲートウェイ機能を提供することになる。インターネット接続性が、新たに形成されたゲートウェイによって確立され共有され、Ｗｉ−Ｆｉネットワーク１５００に冗長的インターネットアクセスが提供される。要するに、これはゲートウェイフェイルオーバー機構である。
【０２２８】
障害の隔離及び分割
Ｗｉ−Ｆｉネットワーク１５００内の障害は、多数の監視拠点を通じて測定することができる。次の事項を監視して、ＧＵＩ１６００、モバイルアプリケーション、プッシュ通知等を通じるなどして管理者又はユーザーに報告することができる。例えば、ブロードバンドＩＳＰ接続の速度及び遅延を提供することができる。速度が低速であるか、又は遅延が長い場合、結果としてエンドクライアント及びユーザーにとって低性能となる。ＤＮＳ情報を提供することができる。ＤＮＳ情報は、Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ（ＵＲＬ）をインターネット６２０での通信のためにインターネットプロトコル（ＩＰ）アドレスに変換するのに用いられる。ＤＮＳが正しく動作しなければ、エンドユーザーはほとんどのインターネットサービスを利用できない。特定されたＤＮＳが動作しない場合、ＤＮＳサーバーのアドレスは、システムによって自律的に、ＵＲＬからＩＰアドレスへの変換処理のための既知の有効なＤＮＳに切り換えられることがある。これはＤＮＳフェイルオーバー機構である。
【０２２９】
Ｗｉ−Ｆｉネットワーク１５００内のモデム／ゲートウェイ１８は、インターネット接続とホームネットワーク接続とを分ける役割を果たす。モデム／ゲートウェイ１８が応答しないか、又はインターネット６２０への接続維持に失敗した場合、モデムサービスを回復する動作が必要になる。インターネット６２０上でウェブサイト又は他のコンテンツに通信できないことで示されるインターネット停止は、公知の外部インターネットアドレスへの接続性をチェックすることによって、Ｗｉ−Ｆｉネットワーク１５００内部を監視することからの検出であり得る。
【０２３０】
スループット、遅延、及びパケット消失は、正しい量の性能が異なるノード又はクライアントに送達されているかどうかを判定するための基本的な測定パラメーターである。ホームネットワーキングシステムは、各Ｋｅｙ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｉｎｄｉｃａｔｏｒ（ＫＰＩ）を測定する能力をもつべきであり、相対的又は絶対的性能が基準性能を下回る場合は、問題を解決する処置をとることができる。
【０２３１】
クライアントが無効な認証情報のせいでＷｉ−Ｆｉネットワーク１５００に接続できないことは、セキュリティ攻撃の兆候であり得る。失敗した攻撃を管理者に通知し、被害にあったクライアントによるアクセスのブロックを実施して、望ましくないアクセスの回避に役立てることができる。
【０２３２】
ゲストアクセス
図４６を参照すると、一例示的実施形態では、フローチャートが、Ｗｉ−Ｆｉネットワーク１５００のゲストアクセス処理１７００を説明する。ゲストは、Ｗｉ−Ｆｉネットワーク１５００の所有者又は管理者によって提供される必要な許可を得て、Ｗｉ−Ｆｉネットワーク１５００にアクセスすることができる。ゲストアクセスのために、Ｗｉ−Ｆｉネットワーク１５００は、オープンサービスセット識別子（オープンＳＳＩＤ）を含むことができ、ゲストはこのオープンＳＳＩＤに加わることができる（ステップ１７０１）。クライアントデバイスは、ゲストに、自らがウェブページを介するなどしてＷｉ−Ｆｉネットワーク１５００にアクセスしようとしているゲストであることを知らせることができる。Ｗｉ−Ｆｉネットワーク１５００へのアクセス要求は管理者に送信される。所望により又は必要に応じて、要求しているゲストは、ゲストの名前及びＷｉ−Ｆｉネットワーク１５００へのアクセス要件などの、要求についての詳細を追加することができる。
【０２３３】
管理者は、ゲストアクセスに関する通知を受信する（ステップ１７０２）。通知は、モバイルアプリケーション、テキスト、電子メール、又は他の機構を用いることができる。クライアントタイプ、及びクライアントのホストネームなどの、ゲストに関する詳細も示されることがある。それに加えて、ユーザーが追加したあらゆる詳細が管理者に表示されることがある。管理者は、提供された情報に基づきＷｉ−Ｆｉネットワーク１５００へのアクセスを許可又は拒否することができる（ステップ１７０３）。許可した場合、管理者は制限時間を設定することができ、また、ゲストがＷｉ−Ｆｉネットワーク１５００上で他のクライアントにアクセスする能力を限定することができる。それに加えて、管理者は、クライアントが実行するアプリケーションを限定することができる。
【０２３４】
アクセスを認められると、ゲストクライアントデバイスはＷｉ−Ｆｉネットワーク１５００へのアクセスを取得する（ステップ１７０４）。クライアントデバイスは、ゲストクライアントデバイスに証明書をインストールすることにより接続を安全なものにするオプションを表示する。承認されると、証明書がインストールされ、ゲストクライアントデバイスは安全な暗号化された接続で同じＳＳＩＤに再接続される。管理者はいつでも許可を変更するか、又はゲストクライアントデバイスに対しアクセスをブロックすることができる（ステップ１７０５）。
【０２３５】
管理者によって開始されるアクセス
図４７を参照すると、一例示的実施形態では、フローチャートが、管理者によって開始されるＷｉ−Ｆｉネットワーク１５００のゲストアクセス処理１８００を説明する。また、管理者は、テキスト、電子メール、アプリ内メッセージを送信すること、又は他の類似の通信技法によって、ゲストがＷｉ−Ｆｉネットワーク１５００にアクセスするように招待することがある。管理者は、ゲストデバイスのアクセスを要求し、ゲストにプロファイルを適用する（ステップ１８０１）。このプロファイルは、許可されるゲストクライアントの数、制限時間、他のクライアントへのアクセスレベル、帯域幅の限界及び速度、暗号化の要件、許可されるアプリケーション、並びに他の類似のネットワークアクセスの限界についての情報を提供する。ゲストへの招待状が、ＵＲＬリンク、ユーザーネーム、及びパスワード、又はアクセス証明書のいずれかと一緒にユーザーに送信される。
【０２３６】
ゲストに証明書が送信されると、証明書はクライアントデバイスにインストールされる（ステップ１８０２）。クライアントデバイスがＷｉ−Ｆｉネットワーク１５００の範囲内にあるとき、クライアントデバイスは、証明書に埋め込まれた認証情報により、安全にＷｉ−Ｆｉネットワーク１５００に加わる。ゲストクライアントデバイスに証明書がインストールされていない場合は、ゲストは、クライアントデバイスに送信された招待状中に提供されるオープンＳＳＩＤに加わる（ステップ１８０３）。ゲストクライアントは次に、ユーザー名／パスワードで接続するオプションを表示するか、又は単に招待状中に提供されたＵＲＬを訪れてアクセスすることができる。招待状中に提供された一意のＵＲＬへの訪問は、ネットワークへのエントリーの「チケット」として用いられる。
【０２３７】
アクセスを認められると、ゲストクライアントデバイスはＷｉ−Ｆｉネットワーク１５００へのアクセスを取得する（ステップ１８０４）。クライアントデバイスは、ゲストクライアントデバイスに証明書をインストールすることにより接続を安全なものにするオプションを表示する。承認されると、証明書がインストールされ、ゲストクライアントデバイスは安全な暗号化された接続で同じＳＳＩＤに再接続される。管理者はいつでも許可を変更するか、又はゲストクライアントデバイスに対しアクセスをブロックすることができる（ステップ１８０５）。任意選択による方法として、管理者は、テキストメッセージ、電子メール、アプリ内招待状、又は別のそのような機構を送信して、ゲストネットワークのＳＳＩＤ及びＰｒｅ−Ｓｈａｒｅｄ  Ｋｅｙ（ＰＳＫ）を共有することができる。そのような招待により、ゲストはＷｉ−Ｆｉネットワーク１５００のＳＳＩＤ及びＰＳＫに簡単に加わることができる。
【０２３８】
証明書に基づく認証
様々な制御レベルのＷｉ−Ｆｉネットワーク１５００へのアクセスを取得するために、証明書をクライアントデバイスにインストールすることができる。証明書には、Ｗｉ−Ｆｉネットワーク１５００に加わるための認証要件が含まれ、クラウド１２内などの中央サーバーによって制御される。証明書からのプロファイルは、制限時間、他のクライアントへのアクセスレベル、帯域幅の限界及び速度、暗号化の要件、並びに他の類似のネットワークアクセスの限界についての情報を提供する。証明書は、クライアントの製造又は販売の際も含め、いつでもクライアントデバイスにインストールしてよい。クライアントが目的のＷｉ−Ｆｉネットワーク１５００の範囲内にあるとき、安全に自動接続することができ、中央サーバーによって管理されるプロファイルに従うことができる。プロファイルはいつでも変更又は破棄され得る。
【０２３９】
管理者による認証及び要求のために、２ステップの処理を実施することができる。この場合、Ｗｉ−Ｆｉネットワーク１５００へのアクセスが証明書により実現された後、管理者は、Ｗｉ−Ｆｉネットワーク１５００へのフルアクセスを取得するために、クライアントに一意的なコードを入力することによって第２のステップの認証を実行することを要求されることがある。
【０２４０】
適合性セキュリティ
Ｗｉ−Ｆｉネットワーク１５００内の各クライアントに適合性ファイヤーウォール設定を適用することができる。ラップトップコンピューター又は携帯電話などの一部のクライアントは、無数のアプリケーションを実行するために多数のポート及びＩＰアドレスへのアクセスを要求する。Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ（ＩｏＴ）センサーなどの他のデバイスがそれらの情報を外部サーバーに渡すためには、狭小な通常は固定されているポート範囲及びＩＰアドレス接続性しか必要としない。Ｗｉ−Ｆｉネットワーク１５００は、クライアントがゲートウェイを通じて通信することが許可されるポート及びＵＲＬ又はＩＰアドレスを制限することによって、これらのセキュリティ設定を適合的に変更することができる。これらのセキュリティ設定は、経時的に学習されることもあるし、各クライアント接続につき初期接続の際に適用されることもある。クライアントが規定のファイヤーウォール設定から逸脱しようとすると、管理者に警告を送って危険を評価することができる。それに加えて、管理者は、いつでも中央サーバーからファイヤーウォール設定を変更することができる。
【０２４１】
本明細書で説明するいくつかの例示的実施形態は、一般又は専用プロセッサー（「１つ又は複数のプロセッサー」）の１つ又は複数、例えばマイクロプロセッサー；中央処理装置（ＣＰＵ）；デジタル信号プロセッサー（ＤＳＰ）：カスタム化プロセッサー、例えばネットワークプロセッサー（ＮＰ）又はＮｅｔｗｏｒｋ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＮＰＵ）、Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＧＰＵ）等；Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ（ＦＰＧＡ）等を、それらを制御するための一意の記憶されたプログラム命令（ソフトウェア及びファームウェアの両方を含む）とともに含んで、特定の非プロセッサー回路と関連して、本明細書で説明する方法及び／又はシステムの一部、ほとんど、又は全部の機能を実装することができることを理解されよう。あるいは、一部又は全部の機能は、プログラム命令が記憶されていない状態のマシンによって実装されるか、又は特定用途向け集積回路（ＡＳＩＣ）の１つ又は複数に実装されてもよく、各機能又は特定の機能の何らかの組合せがカスタム論理又は回路として実装される。当然ながら、前述の手法を組合せて使用してもよい。本明細書で説明する例示的実施形態の一部では、ハードウェアであって任意選択によりソフトウェア、ファームウェア、及びそれらの組合せを有するものに、対応するデバイスは、１セットの動作、ステップ、方法、処理、アルゴリズム、機能、技法等を、デジタル及び／又はアナログ信号で、様々な例示的実施形態について本明細書で説明するようにして実行する「ように構成されているか又はそのようにされている回路」、「ように構成されているか又はそのようにされている論理」等と呼ばれることがある。
【０２４２】
さらに、いくつかの例示的実施形態は、本明細書で説明し特許請求する機能を実行するプロセッサーを各々含むことができるコンピューター、サーバー、アプライアンス、デバイス、プロセッサー、回路等をプログラムするためのコンピューター可読コードが記憶されている非一過性コンピューター可読記憶媒体を含むことができる。そのようなコンピューター可読記憶媒体の例としては、限定ではないが、ハードディスク、光学記憶装置、磁気記憶装置、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリー等が挙げられる。非一過性コンピューター可読媒体に記憶される場合、ソフトウェアは、プロセッサー又はデバイス（例えば、任意のタイプのプログラム可能回路又は論理）により実行命令を含むことができ、当該命令は、そのような実行に応答して、様々な例示的実施形態について本明細書で説明するような１セットの動作、ステップ、方法、処理、アルゴリズム、機能、技法等を当該プロセッサー又はデバイスに実行させるものである。
【０２４３】
本開示を好ましい実施形態及びそれらの具体的な例を参照して例示し説明してきたが、当業者であれば、他の実施形態及び例も同様に機能し且つ／又は同様の結果を実現することができることは容易に理解できる。そのような均等の実施形態及び例は全て、本開示の趣旨及び範囲内であり、本開示の趣旨及び範囲によって意図されるものであり、以下の特許請求の範囲によって保護されるものとする。
【図１】
2019509703.tif 000004
【図２】
2019509703.tif 000005
【図３】
2019509703.tif 000006
【図４】
2019509703.tif 000007
【図５】
2019509703.tif 000008
【図６】
2019509703.tif 000009
【図７】
2019509703.tif 000010
【図８】
2019509703.tif 000011
【図９】
2019509703.tif 000012
【図１０Ａ】
2019509703.tif 000013
【図１０Ｂ】
2019509703.tif 000014
【図１１Ａ】
2019509703.tif 000015
【図１１Ｂ】
2019509703.tif 000016
【図１２】
2019509703.tif 000017
【図１３】
2019509703.tif 000018
【図１４】
2019509703.tif 000019
【図１５】
2019509703.tif 000020
【図１６】
2019509703.tif 000021
【図１７】
2019509703.tif 000022
【図１８】
2019509703.tif 000023
【図１９】
2019509703.tif 000024
【図２０】
2019509703.tif 000025
【図２１】
2019509703.tif 000026
【図２２】
2019509703.tif 000027
【図２３】
2019509703.tif 000028
【図２４】
2019509703.tif 000029
【図２５】
2019509703.tif 000030
【図２６】
2019509703.tif 000031
【図２７】
2019509703.tif 000032
【図２８】
2019509703.tif 000033
【図２９】
2019509703.tif 000034
【図３０】
2019509703.tif 000035
【図３１】
2019509703.tif 000036
【図３２】
2019509703.tif 000037
【図３３】
2019509703.tif 000038
【図３４】
2019509703.tif 000039
【図３５】
2019509703.tif 000040
【図３６】
2019509703.tif 000041
【図３７】
2019509703.tif 000042
【図３８】
2019509703.tif 000043
【図３９】
2019509703.tif 000044
【図４０】
2019509703.tif 000045
【図４１】
2019509703.tif 000046
【図４２】
2019509703.tif 000047
【図４３】
2019509703.tif 000048
【図４４】
2019509703.tif 000049
【図４５】
2019509703.tif 000050
【図４６】
2019509703.tif 000051
【図４７】
2019509703.tif 000052
【国際調査報告】
2019509703.tif 000053
2019509703.tif 000054