(57)【特許請求の範囲】
【請求項１】
ワイヤレスローカルエリアネットワーク内の少なくとも１つのモバイルユニットとワイヤレスに通信する装置であって、
外部の有線ネットワークと通信するよう構成されたワイヤレスローカルエリアネットワークのノードに関連づけられたスタック上に配置されたベースモジュールと、
前記スタック上に配置されたアンテナモジュールと、
前記スタック上に配置され、前記ベースモジュールおよび前記アンテナモジュールに結合された１つまたは複数のワイヤレスモジュールと
を備え、前記１つまたは複数のワイヤレスモジュールは、前記スタック上のワイヤレスモジュールの各々の位置を自動的に決定することによって、前記スタックの他のモジュールを自動的に識別することによって、前記ノードのワイヤレスモジュールの各々が有線かワイヤレスかの通信リンクを介して前記外部の有線ネットワークと通信するよう構成されるかどうかおよび前記ワイヤレスローカルエリアネットワークに対してアクセスポイントかバックホールかであるかどうかを自動的に決定することによって自動的な自己発見を実行するように構成されることを特徴とする装置。
【請求項２】
前記ノードのワイヤレスモジュールの各々が有線かワイヤレスかの通信リンクを介して前記外部の有線ネットワークと通信するよう構成されるかどうかを自動的に決定することは、動的ホスト構成プロトコルによりワイヤレスに受信されるか有線イーサネット（登録商標）接続を介して受信されるかどうかを決定することにより与えられることを特徴とする請求項１に記載の装置。
【請求項３】
前記１つまたは複数のワイヤレスモジュールのうちの少なくとも１つは、自動的な自己発見を実行するよう構成された有限状態マシンを含むことを特徴とする請求項１に記載の装置。
【請求項４】
前記１つまたは複数のワイヤレスモジュールは、異なるＩＥＥＥ８０２型ワイヤレスプロトコルを使用することにより異なる近距離ワイヤレスプロトコルを使用する少なくとも２つのワイヤレスモジュールを含むことを特徴とする請求項１に記載の装置。
【請求項５】
前記異なる近距離ワイヤレスプロトコルは、少なくとも２つの異なるＩＥＥＥ８０２．１１型ワイヤレスプロトコルを、または前記１つもしくは複数のＩＥＥＥ８０２．１１型ワイヤレスプロトコルとＢｌｕｅｔｏｏｔｈプロトコルとのうちの少なくとも１つとの組合せを含むことを特徴とする請求項４に記載の装置。
【請求項６】
前記装置は、前記ワイヤレスローカルエリアネットワーク内の１つまたは複数のモバイルユニットとワイヤレスに通信するよう構成されたことを特徴とする請求項１に記載の装置。
【請求項７】
前記装置は、前記外部の有線ネットワークとの接続を与えるよう構成されることを特徴とする請求項１に記載の装置。
【請求項８】
前記アクセスポイントかバックホールかであるかどうかというワイヤレスモジュールの各々の役割は、動的ホスト構成プロトコルによりワイヤレスに受信されるか有線イーサネット（登録商標）接続を介して受信されるかによって、前記スタック上のワイヤレスモジュールの各々の位置によって、前記自己発見を使用して識別される前記スタックの他のモジュールの機能によって決定されることを特徴とする請求項１に記載の装置。
【請求項９】
ワイヤレスローカルエリアネットワーク内の少なくとも１つのモバイルユニットとワイヤレスに通信する方法であって、
ワイヤレスローカルエリアネットワークのノードに関連づけられたスタックに含まれる１つまたは複数のベースモジュールの各々が、前記スタック上のワイヤレスモジュールの各々の位置を自動的に決定することによって、前記スタックの他のモジュールを自動的に識別することによって、前記ワイヤレスモジュールの各々が有線かワイヤレスかの通信リンクを介して外部の有線ネットワークと通信するよう構成されるかどうかおよび前記ワイヤレスローカルエリアネットワークに対してアクセスポイントかバックホールかであるかどうかを自動的に決定することによって自動的な自己発見を実行するステップ
を備え、前記スタックは、ベースモジュールおよびアンテナモジュールをさらに含み、前記ワイヤレスローカルエリアネットワークは、前記外部の有線ネットワークと通信するよう構成され、前記１つまたは複数のワイヤレスモジュールの各々は、前記ベースモジュールおよび前記アンテナモジュールに結合されたことを特徴とする方法。
【請求項１０】
前記ワイヤレスモジュールの各々が有線かワイヤレスかの通信リンクを介して前記外部の有線ネットワークと通信するよう構成されるかどうかを自動的に決定することは、動的ホスト構成プロトコルによりワイヤレスに受信されるか有線イーサネット（登録商標）接続を介して受信されるかどうかを決定することにより与えられることを特徴とする請求項９に記載の方法。
【請求項１１】
前記１つまたは複数のワイヤレスモジュールのうちの少なくとも１つは、自動的な自己発見を実行するよう構成された有限状態マシンを含むことを特徴とする請求項９に記載の方法。
【請求項１２】
前記１つまたは複数のワイヤレスモジュールは、異なるＩＥＥＥ８０２型ワイヤレスプロトコルを使用することにより異なる近距離ワイヤレスプロトコルを使用する少なくとも２つのワイヤレスモジュールを含むことを特徴とする請求項９に記載の方法。
【請求項１３】
前記異なる近距離ワイヤレスプロトコルは、少なくとも２つの異なるＩＥＥＥ８０２．１１型ワイヤレスプロトコルを、または前記１つもしくは複数のＩＥＥＥ８０２．１１型ワイヤレスプロトコルとＢｌｕｅｔｏｏｔｈプロトコルとのうちの少なくとも１つとの組合せを含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記１つまたは複数のワイヤレスモジュールは、前記ワイヤレスローカルエリアネットワーク内の１つまたは複数のモバイルユニットとワイヤレスに通信するよう構成されたことを特徴とする請求項９に記載の方法。
【請求項１５】
前記アクセスポイントかバックホールかであるかどうかというワイヤレスモジュールの各々の役割は、動的ホスト構成プロトコルによりワイヤレスに受信されるか有線イーサネット（登録商標）接続を介して受信されるかによって、前記スタック上のワイヤレスモジュールの各々の位置によって、前記自己発見を使用して識別される前記スタックの他のモジュールの機能によって決定されることを特徴とする請求項９に記載の方法。
【請求項１６】
コンピュータに、
ワイヤレスローカルエリアネットワークのノードに関連づけられたスタックに含まれる１つまたは複数のベースモジュールの各々が、前記スタック上のワイヤレスモジュールの各々の位置を自動的に決定することによって、前記スタックの他のモジュールを自動的に識別することによって、前記ワイヤレスモジュールの各々が有線かワイヤレスかの通信リンクを介して外部の有線ネットワークと通信するよう構成されるかどうかおよび前記ワイヤレスローカルエリアネットワークに対してアクセスポイントかバックホールかであるかどうかを自動的に決定することによって自動的な自己発見を実行する手順
を実行させ、前記スタックは、ベースモジュールおよびアンテナモジュールをさらに含み、前記ワイヤレスローカルエリアネットワークは、前記外部の有線ネットワークと通信するよう構成され、前記１つまたは複数のワイヤレスモジュールの各々は、前記ベースモジュールおよび前記アンテナモジュールに結合された、ワイヤレスローカルエリアネットワーク内の少なくとも１つのモバイルユニットとワイヤレスに通信するためのプログラム。
【請求項１７】
前記ワイヤレスモジュールの各々が有線かワイヤレスかの通信リンクを介して前記外部の有線ネットワークと通信するよう構成されるかどうかを自動的に決定することは、動的ホスト構成プロトコルによりワイヤレスに受信されるか有線イーサネット（登録商標）接続を介して受信されるかどうかを決定することにより与えられることを特徴とする請求項１６に記載のプログラム。
【請求項１８】
前記１つまたは複数のワイヤレスモジュールのうちの少なくとも１つは、自動的な自己発見を実行するよう構成された有限状態マシンを含むことを特徴とする請求項１６に記載のプログラム。
【請求項１９】
前記１つまたは複数のワイヤレスモジュールは、異なるＩＥＥＥ８０２型ワイヤレスプロトコルを使用することにより異なる近距離ワイヤレスプロトコルを使用する少なくとも２つのワイヤレスモジュールを含むことを特徴とする請求項１６に記載のプログラム。
【請求項２０】
前記異なる近距離ワイヤレスプロトコルは、少なくとも２つの異なるＩＥＥＥ８０２．１１型ワイヤレスプロトコルを、または前記１つもしくは複数のＩＥＥＥ８０２．１１型ワイヤレスプロトコルとＢｌｕｅｔｏｏｔｈプロトコルとのうちの少なくとも１つとの組合せを含むことを特徴とする請求項１９に記載のプログラム。
【請求項２１】
前記１つまたは複数のワイヤレスモジュールは、前記ワイヤレスローカルエリアネットワーク内の１つまたは複数のモバイルユニットとワイヤレスに通信するよう構成されたことを特徴とする請求項１６に記載のプログラム。
【請求項２２】
前記アクセスポイントかバックホールかであるかどうかというワイヤレスモジュールの各々の役割は、動的ホスト構成プロトコルによりワイヤレスに受信されるか有線イーサネット（登録商標）接続を介して受信されるかによって、前記スタック上のワイヤレスモジュールの各々の位置によって、前記自己発見を使用して識別される前記スタックの他のモジュールの機能によって決定されることを特徴とする請求項１６に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には、ワイヤレス通信ネットワークに関し、より詳細には、自己構成と自己最適化とを行うワイヤレスローカルエリアネットワークシステムに関する。
【背景技術】
【０００２】
本出願は、２００３年３月２４日提出の米国仮特許出願第６０／４５７５２９号（整理番号３４０１５．８００９ＵＳ）の利点を主張するものである。
【０００３】
ワイヤレス通信ネットワークは、地理的な領域または空間内のノードまたはアクセスポイントを使用して、ユーザに対する無線カバレッジを提供する。通常、アクセスポイント（ＡＰ）は、ワイヤレスのユーザ装置にネットワーク資源へのアクセスを可能にする物理的なエッジ装置であり、ノードと呼ばれることがある。通常、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）は、ＷＬＡＮデータリンクおよび物理層を定義する仕様であるＩＥＥＥ８０２．１１準拠のプロトコルなどの既存のプロトコルを使用する。８０２．１１仕様は、データリンク層内のメディアアクセス制御（ＭＡＣ）サブレイヤ、および直交周波数分割多重（ＯＦＤＭ）と直接連鎖スペクトラム拡散（ＤＳＳＳ）変調スキームとの２つの物理層（ＰＨＹ）のサブレイヤを含む。Ｂｌｕｅｔｏｏｔｈ仕様（ＩＥＥＥ８０２．１５）は、周波数ホッピングスペクトラム拡散（ＦＨＳＳ）変調スキームを使用する。
【０００４】
ＦＨＳＳ方法は、時間の関数として広帯域周波数にわたって予測可能なシーケンスで周波数から周波数へ「ホップする」狭帯域搬送波信号によりデータ信号を変調する。狭帯域による干渉とスペクトラム拡散信号との両方が同一周波数および同一時間において伝送される場合に限り、狭帯域による干渉がスペクトラム拡散信号に影響を及ぼすので、干渉は低減される。伝送周波数は、拡散（ホッピング）符号により決定される。受信機を、同じホッピング符号に設定しなければならず、および受信機は、信号を受信するための適切な時間および周波数において入来する信号をリッスンしなければならない。ＯＦＤＭは、広周波数帯をいくつかの狭周波数帯に分割し、およびサブチャネルにわたってデータを送信する。ＤＳＳＳは、送信局でのデータ信号を、「チップシーケンス」と呼ばれることが多い、より高いデータ速度のビットシーケンスと合成する。高処理利得により、干渉に対する信号の抵抗力が向上する。
【０００５】
８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ、８０２．１１ｅ、８０２．１１ｉなどを含む、様々なＩＥＥＥ８０２．１１プロトコルが存在する。上記および他のプロトコルは、「ＷｉＦｉ」と呼ばれることが多い。ＷｉＦｉは、ｗｉｒｅｌｅｓｓ  ｆｉｄｅｌｉｔｙの略である。距離が限られた範囲の他のワイヤレスプロトコルは、欧州電気通信標準化機構（ＥＴＳＩ）によって採用されているＨｉｐｅｒｌａｎを含む。距離が限られた範囲の他のワイヤレスプロトコルおよび技術は、Ｂｌｕｅｔｏｏｔｈ（ＩＥＥＥ８０２．１５．１）、超音波、赤外線などを含む。全般的に言えば、距離が限られた範囲のワイヤレスネットワークを作成かつ実装することは、多くの困難を包含する。
【０００６】
本明細書において与える見出しは、便宜的なためだけであり、および請求する本発明の範囲または意味に必ずしも影響を与えない。
【０００７】
図面では、理解しやすいように、および便宜上、同一の参照符号および頭字語は、同一または類似の機能を有する要素または動作を識別する。あらゆる特定の要素または動作についての議論を容易に識別するために、参照番号の最上位桁は、その要素が最初に紹介される図の番号を引用する（例えば、要素２０４は、図２に関して最初に紹介され、かつ議論される）。
【０００８】
【特許文献１】米国特許出願第１０／１３９６０９号
【特許文献２】国際公開第２００４／０２５８８７号パンフレット
【発明の開示】
【発明が解決しようとする課題】
【０００９】
以下に説明するワイヤレスローカルエリアネットワークシステムは、設置および管理のコストが低く、複数の無線周波数技術により、ならびに高いレベルの性能、セキュリティ、堅牢性、および柔軟性とともに、多数のユーザに対してワイヤレス接続性を提供するという問題を解決する。
【課題を解決するための手段】
【００１０】
ワイヤレスローカルエリアネットワークシステムは、必要とされる接続性サービス（有線または無線でよい）をノードで提供する適切な機能モジュールセットと、制御ソフトウェアを実行する１つまたは複数のプロセッサとの各々を含む「ノード」のネットワークを使用する。ソフトウェアは、ノードがインテリジェントであり、自己充足であり、隣接するノードを発見するように動作することを保証する。分散インテリジェンスを用いて共に動作するノードは、データトラフィックを搬送する接続のネットワークを確立する。ソフトウェアは、接続のために「メッシュ」トポロジを採用し、およびルーティングが初期化されおよびその後の頻繁な間隔において自動的に最適化されることを保証する。したがって、システムは、ノードが追加され、除去され、または故障すると、システム自体で自動的に調整することができ、およびソフトウェアは、こうした場合でさえセキュリティを保持する機構を含む。他の詳細および態様を、以下に説明する。
【００１１】
広い意味では、本発明の態様は、モバイルユニットに外部の有線ネットワークと通信することを可能にするワイヤレスローカルエリアネットワーク（ＷＬＡＮ）を提供するシステムおよび関連する方法を含む。ＷＬＡＮにおけるノードは、ベースモジュール、アンテナモジュール、１つまたは複数のワイヤレスモジュールなど、複数の構成要素を含む。実際、このシステムは、ＩＥＥＥ８０２．１１型プロトコルおよびＢｌｕｅｔｏｏｔｈプロトコルなど、距離が限られた範囲の異なるワイヤレスプロトコルを使用する２つ以上のワイヤレスモジュールを使用することができる。ノードは、自己発見を実行して、ノード内のモジュールおよび関連する機能を決定することができ、隣接するノードを識別することによってメッシュ型ネットワークを確立することも同様にできる。ノードは、有線ネットワークへの接続性を提供するように構成することができるが、他（のアクセスポイント）は、モバイル装置とワイヤレスに通信する。次いでノードを、ワイヤレスに、または有線によって、相互接続することができる。
【００１２】
次に、様々な実施形態に関して、本発明を説明する。以下の説明は、本発明のこうした実施形態を完全に理解するための特定の詳細を与えるものであり、こうした実施形態についての説明を可能にするものである。しかし、こうした詳細を用いずに本発明を実施できることを当業者は理解されよう。別の例では、本発明の実施形態の説明を不必要に不明瞭にするのを避けるため、周知の構造および機能を詳細には図示または説明していない。
【００１３】
以下で提示する説明で使用する用語は、本発明のある特定の実施形態の詳細な説明に関連して使用しているとしても、その最も広い妥当な形で解釈されるものとする。以下では、ある用語を強調することさえある。しかし、何らかの制限された方法で解釈することが意図されるどんな用語も、この詳細な説明の部分では、そのように明白かつ具体的に定義される。
【発明を実施するための最良の形態】
【００１４】
図１Ａに、本発明の態様を具体化するワイヤレスローカルエリアネットワーク（ＷＬＡＮ）システムの例示的構成を示す。本明細書において説明する同じ方法および原理を使用して、多数の異なる構成が可能である。ワイヤレスユーザは、様々な種類の、ワイヤレス接続性を装備するパーソナルコンピュータ１０１またはポータブルワイヤレスデジタル装置１０２を利用していることがある。システムが対処するように意図される別のクラスのユーザは、有線イーサネット（登録商標）接続性付きパーソナルコンピュータを有するユーザの小グループから構成される。そのようなグループはワークグループと呼ばれ、および１０３において例を示す。１０４、１０５、１０６、１０７、１０８、および１０９において示す例などネットワークノードの様々な種類の各々の多数が、ワイヤレスネットワークを形成する。各ノードは、以下に説明する機能を実装する電子回路およびソフトウェアを含むモジュールの集まりである。
【００１５】
ワイヤレスネットワークは、本明細書においてアプリケーションサーバ１１０およびその有線イーサネット（登録商標）接続１１１により例示する従来技術のメインまたはバックボーンの有線ネットワークシステムと接続するように意図される。パーソナルコンピュータ１０１およびポータブル装置１０２は、標準的なデジタルワイヤレス技術を用いて、アクセスポイント１０４、１０５、および１０６として使用するノードを介してワイヤレスにネットワークに接続する。以下に説明するように、標準的なデジタルワイヤレス技術には、一般的な用途においていくつかの種類が存在する。通常、特定のパーソナルコンピュータまたは装置により使用されるアクセスポイントは、パーソナルコンピュータまたはワイヤレス装置により使用されるワイヤレス技術を支援する最も近いアクセスポイントである。１０３において示す例などのワークグループコンピュータは、イーサネット（登録商標）ケーブルを用いて１０７などのワークグループコンピュータのアクセスポイントノードに接続される。
【００１６】
ユーザまたはクライアントによる１０１、１０２、１０３などのノードへの接続は、アクセスポイント（ＡＰ）接続として知られている。さらに、アクセスポイントノードは、メインバックボーン有線ネットワークシステムにコネクトバックする。メインバックボーン有線ネットワークシステムへのコネクトバックがワイヤレスである場合、「バックホール（Ｂａｃｋｈａｕｌ）」（ＢＨ）接続として知られている。本明細書において１０４として図示するなど、システムにおけるアクセスポイントノードは、本明細書において１０５に示すなどのリレーとして動作する別のアクセスポイントノードによって、メインバックボーン有線ネットワークシステムにコネクトバックすることができる。本明細書において１０５および１０７に示す例など、他のアクセスポイントノードは、本明細書において１０８および１０９に示す、ネットワークコントローラ（ＮＣ）として動作するノードによってワイヤレスにコネクトバックする。１０６など、さらに別のアクセスポイントノードは、１０９などのネットワークコントローラノードをよって、イーサネット（登録商標）ワイヤ１１２を通じてコネクトバックすることができる。
【００１７】
ネットワークは、この例において示されるより多くの、または少ないノードを含むことができ、および特定のノードにおける有線およびワイヤレスのデータ通信機能の他の多数の組合せが可能である。すべてのそのようなネットワークは、ワイヤレスユーザ接続用の少なくとも１つのアクセスポイント、有線イーサネット（登録商標）による少なくとも１つのメインネットワーク接続、および管理サブシステムサービス用の少なくとも１つのネットワークコントローラを含む。
【００１８】
本明細書において別段の説明がない限り、図１Ａおよびその他の図に示すブロックおよび要素は周知であり、または上記の相互参照仮特許出願で詳細に説明されている。実際、本明細書で与える詳細な説明の多くは、上記の仮特許出願で明示的に開示されている。本発明の態様の追加の材料の多くがそのような仮特許出願で与えられている詳細な説明に固有のものであり、または当関連事業者にとって周知であることが、当関連事業者により理解されるであろう。当関連事業者は、この仮特許出願で与えられる図および詳細な説明に基づいて、本発明の態様を実装することができる。
【００１９】
図１Ｂおよび以下の議論は、本発明の諸態様を実施することのできる適切な環境の簡潔で一般的な説明を与えるものである。必須ではないが、汎用コンピュータ、例えばサーバコンピュータ、ワイヤレス装置、またはパーソナルコンピュータで実行されるルーチンなどのコンピュータ実行可能命令の一般的状況において、本発明を、以下に説明する。他の通信、データ処理、またはインターネットアプライアンス、ハンドヘルド装置（携帯情報端末（ＰＤＡ）を含む）、ウェアラブルコンピュータ、あらゆる種類の携帯電話、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラム可能な家庭用電化製品、セットトップボックス、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータなどを含むコンピュータシステム構成を用いて本発明を実施できることを関連技術の技術者は理解されよう。実際、用語の「コンピュータ」、「ホスト」、および「ホストコンピュータ」は、一般に交換可能に使用され、および上記の装置およびシステムのいずれか、あらゆるデータプロセッサも同様に引用する。
【００２０】
本発明の態様は、本明細書において詳細に説明するコンピュータ実行可能命令の１つまたは複数を実行するように具体的にプログラムされ、構成され、または構築された専用コンピュータまたはデータプロセッサに具体化することができる。以下に説明するように、ローカルエリアネットワーク（「ＬＡＮ」）、広域ネットワーク（「ＷＡＮ」）、またはインターネットなど、通信ネットワークを介してリンクされたリモート処理装置によりタスクまたはモジュールが実行される分散コンピューティング環境において、本発明の態様を、実行することができる。分散コンピューティング環境では、プログラムモジュールをローカルとリモートとの両方のメモリ記憶装置に配置することができる。
【００２１】
本発明の態様は、磁気的または光学的に読取可能なコンピュータディスク、ハードウェアに組み込まれたまたはプレプログラムされたチップ（例えば、ＥＥＰＲＯＭ半導体チップ）、ナノテクノロジーのメモリ、バイオロジカルなメモリ、または他のデータ記憶媒体を含むコンピュータ読取可能な媒体上に格納または分散させることができる。実際、本発明の態様によるコンピュータに実装された命令、データ構造、画面ディスプレイ、および他のデータは、インターネットまたは他のネットワーク（ワイヤレスネットワークを含む）を介して、伝達媒体上の伝播信号（例えば電磁波、音波など）に一定期間にわたって分配することができ、またはあらゆるアナログまたはデジタルネットワーク（パケット交換、回路交換、または他のスキーム）に提供することができる。本発明の部分はサーバコンピュータ上に常駐するが、対応する部分はモバイルまたはポータブル装置などのクライアントコンピュータに常駐し、したがって、あるハードウェアプラットフォームを本明細書において説明するが、本発明の態様はネットワーク上のノードに等しく適用可能であることを、当関連事業者は理解されよう。
【００２２】
図１Ｂを参照すると、１つまたは複数のユーザ入力装置１２２およびデータ記憶装置１２４に結合された１つまたは複数のプロセッサ１２０を通常は使用する、パーソナルコンピュータ１０１または他のコンピュータなどのコンピュータ上で、本発明の態様を、実行することができる。さらに、コンピュータは、ディスプレイ装置１２６および１つまたは複数の随意追加の出力装置１２８（例えばプリンタ、プロッタ、スピーカ、触覚または嗅覚出力装置など）などの少なくとも１つの出力装置に接続される。コンピュータは、ネットワーク接続１３０、ワイヤレストランシーバ１３２、またはその両方によってなど、外部コンピュータに結合することができる。
【００２３】
入力装置１２２は、キーボードおよび／またはマウスなどのポインティングデバイスを含むことができる。マイクロフォン、ジョイスティック、ペン、ゲームパッド、スキャナ、デジタルカメラ、ビデオカメラなどの、他の入力装置は可能性がある。データ記憶装置１２４は、磁気ハードおよびフロッピィディスクドライブ、光ディスクドライブ、磁気カセット、テープドライブ、フラッシュメモリカード、デジタルビデオディスク（ＤＶＤ）、ベルヌーイカートリッジ、ＲＡＭ、ＲＯＭ、スマートカードなど、コンピュータ１０１によりアクセス可能なデータを格納することのできるあらゆる種類のコンピュータ読取可能な媒体を含むことができる。実際、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、インターネット（図１Ｂにおいて図示せず）などのネットワークへの接続ポートを含む、コンピュータ読取可能な命令およびデータを格納または伝送するあらゆる媒体を、使用することができる。
【００２４】
図２は、図１における１０４に示すなどのノードの例示的実装を例示する。典型的実施形態では、各ノードは、設計された機能を実装するのに必要なハードウェアおよびソフトウェアを含むモジュールの各々の集まりまたは「スタック」である。
【００２５】
ネットワークアクセスポイントとしての役割において、ノード１０４は、２つの異なる標準的なワイヤレス技術を用いてユーザデータを伝達すること、およびネットワークシステム機能を実行することが必要となることがある。したがって、ノードのアクセスポイント例を、１）ＩＥＥＥ仕様８０２．１１ｂに記載されているなどの標準的なワイヤレスデータ通信技術を実装する無線周波数構成要素および他の電子回路を有するワイヤレスモジュールＢ  ２１４、２）プロセッサおよびメモリを含む組込まれたコンピュータ、および３）その上または下のモジュールと接続するためのロジック、を含む機能モジュールのスタックとして示す。ワイヤレスモジュールＡ  ２１５として示すスタック中の別のモジュールは、ＩＥＥＥ仕様８０２．１１ａに記載されているなどの別のワイヤレスデータ通信技術を実装するための無線周波数構成要素および他の電子回路を有するが、それ以外は２１４と同一である。２つのモジュール２１４および２１５は、アンテナモジュール２１３を共有し、およびその組込まれたコンピュータは、各々、アンテナモジュールによってネットワークシステム機能およびワイヤレス通信を実行するために、本明細書において説明するソフトウェアを実行する。ベースモジュール２１６は、上部スタックモジュール２１３、２１４、および２１５に電力を供給する。
【００２６】
したがって、ワイヤレスネットワークのローカルエリアネットワークシステムにおけるノードの各々は、データ通信機能を実装するのに必要な電子構成要素、およびソフトウェアを実行するための少なくとも１つの組込まれたコンピュータまたはプロセッサを含み、すべてのノードにおいて同一のソフトウェアが使用される。ノードの物理的な実装のこうした特徴は、周知の方法を使用して、本明細書において与えた例について多数の変形形態によって満たすことができる。
【００２７】
各ノード中の各プロセッサによって使用されるソフトウェアの図である（図４を参照して以下に特筆する例外を前提として）図３を参照すると、ソフトウェアは、よく知られている種類のプロセッサハードウェアプラットフォーム３２２上で実行する。ソフトウェアは、周知の方法によってメインの有線ネットワークからノードプロセッサハードウェアプラットフォームにロードされる。ソフトウェアは、図３に示す各グループに構成される。ソフトウェアグループ３２１は、オペレーティングシステムカーネル、特定のハードウェアプラットフォーム３２２により必要とされるボードサポート、ＩＥＥＥ標準８０２．３によるイーサネット（登録商標）接続用のソフトウェア、ＩＥＥＥ標準８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇにおいて指定されるワイヤレスプロトコル用のソフトウェア、およびネットワークシステムにおいて一般的に使用されるポイントツーポイントのプロトコル用のソフトウェアを含む周知の種類のものである。ＩＰスイートまたはグループ３２０は、インターネットプロトコルルーティング、伝送制御プロトコル、インターネットプロトコル、ユーザデータプロトコル、シンプルネットワーク管理プロトコルエージェント、ウェブサーバ、Ｔｅｌｎｅｔ仮想端末プロトコル、およびコマンドラインインターフェースを含む、インターネットプロトコル用の周知の種類のソフトウェアセットである。管理スイート３１８は、ほかのところで説明するノードディスカバリのロジックを支援するシンプルディスカバリプロトコル、ある標準的なネットワークサービスに関するコンパクト性および基本機能が理由のライトウェイトとして知られているクラスのオブジェクト要求ブローカ、およびハードウェアプラットフォームの各々の特定の種類に対するソフトウェアプロセスをリンクするためのプロセス間メッセージ交換を含む、周知の種類のソフトウェアを含む。
【００２８】
有限状態マシン（ＦＳＭ）スイート３１７は、いくつかのソフトウェアコンポーネントまたはブロックを含む。その機能を以下に説明する。ＦＳＭコーディネータ３２６は、スイート３１７中の他の構成要素を監督するメインの状態マシンである。ディスカバリプロセス３２７は、後に詳細に説明するスタック間（ｉｎｔｒａ−ｓｔａｃｋ）ディスカバリロジックを実装する。ユニット型ＦＳＭ３２３は、以下に詳細に説明するが、各々のノードスタックが従うロジックを含み、プロセッサを含むモジュールの役割を決定する。ＡＰ選択ＦＳＭ３２４は、以下に説明するように、最短のラウンドトリップ遅延とともにワイヤレスに接続するアクセスポイントをバックホールモジュールが決定するプロセスであり、最良の近隣のＡＰのセットを捜し求めてスタートアップおよびスタートアップの後に絶えずバックグラウンドにおいて動作する。ネットワークコントローラ（ＮＣ）選択ＦＳＭ３２５は、以下で説明する、メインの有線ネットワークシステムと接続するＮＣをＡＰが選択するロジックを含む。
【００２９】
ワイヤレス（ＷｉＦｉ）スイート３１９は、いくつかのワイヤレス通信機能を実装するソフトウェアを含む。周知の種類のＷｉＦｉデータ処理プログラム３２８は、ワイヤレスデータフレームのカプセル化およびカプセル化解除、ならびにオペレーティングシステムのデータパスに対するインターフェースを処理する。周知の種類の動的周波数アルゴリズムソフトウェア３２９は、ＡＰへの可能な接続に対してすべての利用可能なワイヤレスチャネルをスキャンし、および最小の同一チャネル干渉を有し、したがってネットワーク性能の最大化を助ける動作チャネルを選択するのに各々のＡＰが使用する受信信号強度表示（ＲＳＳＩ）の値のレコードを構築かつ維持する。バックグラウンドチャネルスキャンのソフトウェアルーチン３３０は、近隣のＡＰのリストを、関連するＲＳＳＩおよびラウンドトリップ遅延（ＲＴＤ）値とともに構築し、かつ周期的に更新し、ＡＰ選択ＦＳＭ３２４により使用することよって最良のＡＰセットを捜し求めおよび維持される。周知の種類のＷｉＦｉバックホール（ＢＨ）ソフトウェアタスク３３１は、アソシエーションを含み、および監視する、バックホール接続のルーチンの側面を管理および監視をする。周知の種類のＷｉＦｉ動的機能セレクタ／アクティベータのソフトウェアブロック３３２は、ユニット型ＦＳＭ３２３の決定に従ってそれぞれのバックホールおよびＡＰモジュールを初期化することによって、後述するユニット型ＦＳＭ３２３の決定を実行する任を担う。周知の種類のＷｉＦｉ  ＡＰのソフトウェアブロック３３３は、ラウンドトリップ遅延（ＲＴＤ）値を測定かつレポートする。
【００３０】
図４を参照すると、Ｂｌｕｅｔｏｏｔｈモジュールとして知られる、ＩＥＥＥ仕様８０２．１５．１に従うワイヤレス通信を支援するモジュールは、図３に示すソフトウェアに加えて、周知の種類の図４に示すスイートを必要とする。便宜上、すべてのプロセッサに装備されたモジュールにロードされるが、各々のＢｌｕｅｔｏｏｔｈモジュールによりのみ使用される。図４に示すＢｌｕｅｔｏｏｔｈスイートは、ポイントツーポイントプロトコル、無線周波数通信ソフトウェア、Ｂｌｕｅｔｏｏｔｈシンプルディスカバリプロトコル、論理リンク制御および適応プロトコル、ホスト制御インターフェース、ならびにユニバーサルシリアルバスインターフェースからなる。さらに、Ｂｌｕｅｔｏｏｔｈモジュールは、図３に示す構成要素、すなわちハードウェアプラットフォーム３２２、ソフトウェアグループ３２１、ＩＰスイート３２０、および管理スイート３１８を使用する。Ｂｌｕｅｔｏｏｔｈモジュールは、図３に示すワイヤレス（ＷｉＦｉ）スイート３１９もＦＳＭスイート３１７も使用しない。
【００３１】
本明細書において説明するソフトウェアにより、ノードが追加され、除去され、または故障する場合でさえ、ワイヤレスメッシュは、自動的に確立され、および維持される。メッシュは「部分的」である。なぜならば、ノード間のすべての可能な接続が使用のために選択されず、データトラフィックを、すべてのユーザと外部メインバックボーン有線ネットワークとの間でルーティングすることを可能にするのに必要な最小限の接続だけが選択されるからである。制御は、各々のノードに提供された処理およびソフトウェアによって配布され、各々のノードは、ノード自体および他のノードを発見し、および接続を選択するためにプログラムされた規則に従って独立に動作することによって、効果的なネットワークに統合される。さらに、選択された接続は、以下で述べるように、ノード自体が一貫してラウンドトリップ遅延（ＲＴＤ）および信号強度の最良の組合せ、すなわち最高のデータ通信速度を達成する組合せを有するように決定する接続である。したがって、ルーティングは、システムが最小かつ最良のルートを自動的に捜し求めかつ使用するという意味において最適である。ルーティングプロセスは連続的に動作し、および実行するのに数秒以下しかかからないので、システムは、ノードの追加もしくは除去またはノード障害などの変化に応答して、最適なルーティングを迅速に取り戻す。
【００３２】
（ノード／モジュールの初期化および維持）
新しいノードおよびその関連するユニットまたはモジュールのスタックに電源投入されたとき、プロセッサを備える各ワイヤレスモジュールは、イントラスタックディスカバリ（自己発見）を経由する。イントラスタックディスカバリはその型およびノード内の役割またはモードを決定する。ノードはアクセスポイントでよく、またはＢｌｕｅｔｏｏｔｈモジュールの場合を除いてインフラストラクチャの役割であるバックホールでよい。この後にＡＰ選択が続き、その後、ノードは（動的ホスト構成プロトコル）ＤＨＣＰ照会が完了するのを待つ。ＤＨＣＰは、ネットワーク上の装置にＩＰアドレスを動的に割り当てる方法であり、それによってＩＰアドレスが、指定の範囲内で、ＰＣなどの装置に、それが最初に電源投入されたときに自動的に発行される。装置は、システム管理者が定義する特定のライセンス期間の間ＩＰアドレスの使用を保持する。
【００３３】
以下の規則は、スタック上のモジュールのいずれかがバックホール（ＢＨ）であるかどうか、ならびに、そうである場合、スタック上のどのモジュールがバックホールであるかどうかを決定するために適用される。モジュール２１４または２１５などのワイヤレスモジュールがスタック内のその役割を決定するために、ワイヤレスモジュールは以下の３つの基準を使用する。  
（１）スタック上の位置  
（２）スタック内の他のモジュールの知識  
（３）どのようにＤＨＣＰが得られたか（ワイヤレスか、それとも有線イーサネット（登録商標）を介してか）
ＤＨＣＰソース（ワイヤレスバックホールまたは有線イーサネット（登録商標））、および他のスタックモジュールの機能に基づいて、バックホールからアクセスポイントへの役割変更がこの時点で行われる。周知の手段による提供がソフトウェアで行われ、その結果、ＤＨＣＰソースが後の任意の時間にワイヤレスバックホールと有線イーサネット（登録商標）の間で変化した場合、モジュールの役割は、同じ基準を使用してバックホールとアクセスポイントの間で変化する。このような変化は、例えばイーサネット（登録商標）ケーブルがノードに接続され、またはノードから切断された場合に生じる可能性がある。ネットワークコントローラ（ＮＣ）として機能すべきモジュールが、読取り専用メモリ内のコードなどの周知の手段によるハードウェア内の指示により、そのようにすることを最も好都合に指示されることに留意されたい。
【００３４】
図５は、状態遷移表と呼ばれる型の表である。列見出しはユニット型ＦＳＭ３２３の状態に対応し、行見出しは、ＦＳＭに入力されたシステムイベントに対応する。列と行の各交差でのエントリは、列見出しの名前の状態に対する行見出しの名前の入力イベントの結果を示す。この結果は、特定の交差について指定されているように、特定のアクション、別の状態への遷移、またはその両方、あるいは効果なしでよい。
【００３５】
図６は、実態表（Ｔｒｕｔｈ  Ｔａｂｌｅ）と呼ばれる型の表である。図６は、ワイヤレスデータ通信が可能なモジュールによる自己回復テストで評価される論理変数、すなわち、ＩＥＥＥ仕様８０２．１１（ｉａｍ８０２．１１）をサポートするかどうか、スタックのそのような唯一のモジュールかどうか（ｏｎｌｙ  ｒａｄｉｏ）、それぞれスタック中のそのような底部（ｉａｍＢｏｔｔｏｍＲａｄｉｏ）または頂部（ｉａｍＴｏｐＲａｄｉｏ）モジュールであるかどうか、ＩＥＥＥ仕様８０２．１１ａによるワイヤレス通信をサポートするモジュールがその上であるかどうか（１１Ａ＿ａｂｏｖｅＭｅ）、およびＩＥＥＥ仕様８０２．１１ｂによる通信をサポートするかどうか（ｉａｍ１１ｂ）を示す。Ｒｅｓｕｌｔｓ列は、変数のＴＲＵＥおよびＦＡＬＳＥ値の可能な組合せについての結果を示す。図６のＸは、特定のセルの値が結果に影響を及ぼさないことを示す。Ｒｅｓｕｌｔｓ列中の「ＡＰ」は、モジュールがＩＥＥＥ仕様８０２．１１によるワイヤレス通信をサポートするアクセスポイントとして動作することを意味する。「ＡＰ／Ｂ」は、「Ｂｌｕｅｔｏｏｔｈ」技術と呼ばれるＩＥＥＥ仕様８０２．１５．１によるアクセスポイントとして動作することを意味する。「ＰＥＮＤＩＮＧ」は、モジュールがアクセスポイントとして動作するか、それともバックホールとして動作するかについての決定を図７のロジックに従って行わなければならないことを意味する。
【００３６】
図７は、実態表と呼ばれる型の表である。図７は、ＤＨＣＰがモジュールの構成で使用可能にされたかどうか（ＤＨＣＰ  ｅｎａｂｌｅｄ）、およびメインまたはバックボーンネットワークに対する接続が見つかったかどうか（ｇａｔｅＷａｙ／ｓｅｒｖｅｒ  Ｆｏｕｎｄ）についてのテストで評価される論理変数を示す。テストに対して規定の時間が許され、テストにより、ｇａｔｅＷａｙ／ｓｅｒｖｅｒ  Ｆｏｕｎｄの値が求められる。規定の時間を超過した場合、変数Ｆｏｒｃｅ  ＢＨ  Ｔｉｍｅｒ  ｔｉｍｅｏｕｔはＴＲＵＥである。そうでない場合、Ｆｏｒｃｅ  ＢＨ  Ｔｉｍｅｒ  ｔｉｍｅｏｕｔはＦＡＬＳＥである。Ｒｅｓｕｌｔｓ列は、変数のＴＲＵＥ値とＦＡＬＳＥ値の可能な組合せについての結果を示す。Ｘは、特定の表エントリまたはセルの値が結果に影響を及ぼさないことを示す。Ｒｅｓｕｌｔｓ列中の「ＢＨ」は、モジュールがバックホールとして動作することを意味する。「ＡＰ」は、アクセスポイントとして動作することを意味する。「ＴＲＹ＿ＡＧＡＩＮ」は、メインまたはバックボーンネットワークへの接続が見つかったかどうか（ｇａｔｅＷａｙ／ｓｅｒｖｅｒ  Ｆｏｕｎｄ）についてのテストを反復しなければならないことを意味する。減分カウンタなどの周知の手段が、テストの反復を適切な数に制限する。制限に達したとき、ソフトウェアは、モジュールをバックホールとして動作するように割り当てる。
【００３７】
図５のＦＳＭ状態を介する可能な経路の例が続く。さらに、図５のエントリは、以下のキーから理解することができる（ここで、列中の数は次の状態を示す）。
【００３８】
ｒａｄｉｏｌｎｆｏ：ボード構成（物理的ハードウェア）内に保存される、ユニット無線（またはワイヤレス）型を含むレポートと可能な動作モード
Ｆｏｒｃｅ  ＢＨ  Ｔｉｍｅｒ：バックボーンのＤＨＣＰ応答に適用される安全タイマ
ｎｅｘｔ：実装を単純化するためにＰＳＭによって生成される内部イベント
ｉｎｔｒａＳｔａｃｋＲｐｒｔ：ユニットによって発見されるスタックトポロジを含むレポート（所与のスタック内に他のどんなモジュールがあるか）
ＤＨＣＰ（ｂ）Ｒｐｒｔ：ＤＨＣＰがワイヤレスポートを介して確立されたことを示す
ＤＨＣＰ（ｅ）Ｒｐｒｔ：ＤＨＣＰがイーサネット（登録商標）ポートを介して確立されたことを示す
ａｐＱｕａｌｉｆｉｅｄ：ユニットがＡＰとして動作できる能力を示す内部イベント（Ｓｔａｃｋ  Ｌｏｇｉｃの結果、図６）
ｂｈＱｕａｌｉｆｌｅｄ：ユニットがＢＨとして動作する能力を示す内部イベント（Ｓｔａｃｋ  Ｌｏｇｉｃの結果、図６）
Ｐｅｎｄｉｎｇ：ユニットがＢＨおよびＡＰとして動作する能力を示す内部イベント（Ｓｔａｃｋ  Ｌｏｇｉｃの結果、図６）
ｉｎｉｔ：状態マシンを初期化する
ｒｓｉ：自己情報を読み取る
ｓｄｆ：ＤＨＣＰフラグをセットする
ｉｎｔｒａ  ｓｔａｃｋ  ｌｏｇｉｃ：ＭＯＤＵＬＥ  ＩＮＴＲＡ−ＳＴＡＣＫ  ＬＯＧＩＣ、図６を実行する
ｐｎｄＬｏｇｉｃ：ＰＥＮＤＩＮＧ  ＬＯＧＩＣ、図７
【００３９】
例１。表を通じたこの例の下で、モジュールはソフトウェアを実行し、関連するモジュールがアクセスポイントの役割を有することを自動的に決定する。ソフトウェアの機能をここで説明する。
【００４０】
１）電力が印加されたとき、ワイヤレス通信サポートおよび許可モードの型を含むハードウェア構成情報がｒａｄｉｏｉｎｆｏイベント入力として自動的に供給されると共に、ＦＳＭ３２３が自己回復（ＳＥＬＦ＿ＤＩＳＣ）状態（列０）にあり、これがＦＳＭにローカル状態（ｉｎｉｔ）を初期化させ、自己情報を読み取らせ（ｒｓｉ）、ｎｅｘｔイベントを開始させる。
【００４１】
２）ＳＥＬＦ＿ＤＩＳＣ状態中にｎｅｘｔイベントに反応して、ＦＳＭ３２３は状態を次の状態に変更する。この場合、次の状態はスタックディスカバリ（ＳＴＡＣＫ＿ＤＩＳＣ、列１）である。
【００４２】
３）ＳＴＡＣＫ＿ＤＩＳＣ状態（列１）では、ＦＳＭ３２３がｉｎｔｒａＳｔａｃｋＲｐｒｔイベントを受信する場合、ＦＳＭは、図６に関連して説明した説明スタック間テストおよびロジック（ｉｎｔｒａ  ｓｔａｃｋ  ｌｏｇｉｃ）を実行する。ＭＯＤＵＬＥ  ＩＮＴＲＡ＿ＳＴＡＣＫ  ＬＯＧＩＣはＦｏｒｃｅ  ＢＨ  Ｔｉｍｅｒを開始する。スタック間テストおよびロジックの結果、発見されたスタックトポロジに基づいてＡＰ／Ｂ、ＡＰ、ＢＨ、またはＰＥＮＤＩＮＧに状態が変更されることがわかる。
【００４３】
４）有線イーサネット（登録商標）を介するＤＨＣＰ照会の完了を示す、ＰＥＮＤＩＮＧ状態中のＤＨＣＰ（ｅ）Ｒｐｒｔイベントは、ＦＳＭに状態をＡＰ（列４）に変更させる。図７のＰＥＮＤＩＮＧロジックテーブルの下で、モジュールは、ゲートウェイ／サーバが見つかった（第２列中のＴＲＵＥ値）こと、すなわち第４列中のＲｅｓｕｌｔが「ＡＰ」であることを決定する。
【００４４】
例２。表を通じたこの例の下では、モジュールがソフトウェアを実行し、関連するモジュールがバックホールの役割を有することを自動的に決定する。ソフトウェアの機能をここで説明する。
【００４５】
１）電源が供給されたとき、サポートされるワイヤレス通信の型を含むハードウェア構成情報がｒａｄｉｏＩｎｆｏイベント入力として自動的に供給されると共に、ＦＳＭ３２３が自己発見（ＳＥＬＦ＿ＤＩＳＣ）状態（列０）にあり、これがＦＳＭにローカル状態（ｉｎｉｔ）を初期化させ、自己情報を読み取らせ（ｒｓｉ）、ｎｅｘｔイベントを開始させる。
【００４６】
２）ＳＥＬＦ＿ＤＩＳＣ状態中にｎｅｘｔイベントに反応して、ＦＳＭは状態を次の状態に変更する。この場合、次の状態はＳＴＡＣＫ＿ＤＩＳＣ（列１）である。
【００４７】
３）ＳＴＡＣＫ＿ＤＩＳＣ状態（列１）では、ＦＳＭがｉｎｔｒａＳｔａｃｋＲｐｒｔイベントを受信する場合、ＦＳＭは、図６に関連して説明した説明スタック間テストおよびロジック（ｉｎｔｒａ  ｓｔａｃｋ  ｌｏｇｉｃ）を実行する。ＭＯＤＵＬＥ  ＩＮＴＲＡ＿ＳＴＡＣＫ  ＬＯＧＩＣはＦｏｒｃｅ  ＢＨ  Ｔｉｍｅｒを開始する。スタック間テストおよびロジックの結果、発見されたスタックトポロジに基づいてＡＰ／Ｂ、ＡＰ、ＢＨ、またはＰＥＮＤＩＮＧに状態が変更されることがわかる。
【００４８】
４）ＰＥＮＤＩＮＧ状態（列２）中、ＤＨＣＰ照会を完了することに失敗したことにより、「Ｆｏｒｃｅ  ＢＨ  Ｔｉｍｅｒ」タイムアウトが引き起こされ、この結果、ＦＳＭがＢＨ状態に状態を変更する（列４）。
【００４９】
５）ワイヤレス通信を介するＤＨＣＰ照会の完了を示す、ＢＨ状態中のＤＨＣＰ（ｂ）Ｒｐｒｔイベントは、ＦＳＭに状態をＢＨ＿ＦＩＮＡＬ（列５）に変更させる。
【００５０】
６）有線イーサネット（登録商標）を介するＤＨＣＰ照会の完了を示す、ＢＨ状態中のＤＨＣＰ（ｅ）Ｒｐｒｔイベントは、ＦＳＭに状態をＡＰ（列４）に変更させる。
【００５１】
（ＡＰ選択）
バックホールモジュールによるＡＰ選択プロセスは、ＩＥＥＥ仕様８０２．１１で定義されるステーションサービスでどのアクセスポイントにバックホールモジュールが接続するかを決定し、最短ラウンドトリップ遅延時間を有する。電源投入し、上述のスタック間ディスカバリを実施した後、ノードモジュールは、以下のステップを経由する。  
（１）ＡＰ選択  
（２）ＤＨＣＰ要求応答の待機  
（３）スタック間ディスカバリ
以下の議論でこのプロセスを説明する。
【００５２】
アクセスポイントモジュールがゲートウェイＩＰアドレスを有するＤＨＣＰ要求応答を受信したとき、アクセスポイントモジュールは、ゲートウェイにｐｉｎｇメッセージを送信し、待ち時間またはラウンドトリップ遅延を決定する。各モジュールは、周知の手段によって学習ブリッジ機能を実行し、ＡＰとゲートウェイの間のメッセージは、実際のネットワークのトポロジに応じて複数のワイヤレスホップでルーティングすることができる。ＤＨＣＰ応答を受信するすべてのＡＰモジュールがバックホールを有さないと仮定する。ＩＥＥＥ仕様８０２．１１に記載のプロトコルを使用して、アクセスポイントは、ｐｉｎｇメッセージまたはビーコンの一部として固有コードシーケンスメッセージを、それがゲートウェイに到達するためのラウンドトリップ遅延時間で同報通信する。固有コードは、ＡＰラウンドトリップ遅延を公示するためのプローブ応答パケット中の未使用情報要素（例えばｉｄ２１５）でよい。
【００５３】
このプロセスの間、バックホールモジュールを有するすべての他のノードは、固有コードシーケンスメッセージを求めてワイヤレス近隣（ｗｉｒｅｌｅｓｓ  ｎｅｉｇｈｂｏｒｈｏｏｄ）をスキャンすることを開始する。バックホールモジュールが固有メッセージを１つだけ受信した場合、固有メッセージを送信するＡＰに接続する。複数の固有コードシーケンスメッセージを受信した場合、比較プロセスを実行して、接続することが必要なアクセスポイントを決定する。これを決定するのに必要な情報は、次の通りである。  
（１）ＡＰからゲートウェイまでのラウンドトリップ遅延（ＲＴＤ）時間  
（２）アクセスポイント信号強度の受信信号強度（ＲＳＳＩ）値
複数のアクセスポイントのＲＳＳＩ値を使用して、バックホールモジュールは、固有コードシーケンスメッセージをそこから受信した異なるアクセスポイントを介して接続するための推定ラウンドトリップ遅延を求める。次いで、バックホールモジュールは、そのアクセスポイントについてのラウンドトリップ遅延時間に値を効果的に追加する。この計算から、バックホールは、ラウンドアップ遅延を最短にするために接続する必要があるＡＰを決定する。この計算プロセスが、進行中の活動である。
【００５４】
具体的には、ＲＴＤ値（通常はマイクロ秒単位）を求めるために、アクセスポイントは、図９に示すようなルックアップテーブルを使用して、ＲＳＳＩを推定リンクビットレートに変換する。図９を参照すると、第１列はワイヤレス技術を列挙し、第２列は、各技術でサポートされる異なるデータ速度の数（Ｍａｘｉｎｄｅｘ）を示し、残りの列は、それぞれの場合の標準データ速度をＭｂｉｔｓ／秒単位で示す。
【００５５】
ＲＳＳＩが０〜６０の範囲内であると仮定すると、アクセスポイントは、ＲＳＳＩ／ＭａｘＩｎｄｅｘを図９への索引として使用して、推定リンクビットレートを取り出す。次いでアクセスポイントは、以下の公式を使用して、１５００バイトフレームを使用する提案のリンクにわたってＲＴＤを推定する。
【００５６】
予測ＲＴＤ＝ＡＰ＿ＲＴＤ＋１５００＊８＊２／（推定ビットレート）
好ましいＡＰは、最低の予測ＲＴＤを有するＡＰである。
【００５７】
図８のアクセスポイントＦＳＭ３２４状態を介する可能な経路の一例が続く。図８のエントリは以下のキーから理解することができる。
【００５８】
ｉｎｉｔ：状態マシンを初期化する
Ｓ：選択したＡＰ
Ｃ：候補ＡＰ
Ｎ：新しいＡＰ
ｉ＿Ｃ＿ｃｎｔｒ：候補信頼カウンタを増分する
Ｃ＿ｃｎｔｒ−：候補信頼カウンタを減分する
ＳＴ：満了ｆｏｒｃｅ＿ｓｅｌイベントが生成されたときの選択タイマ
＿ｓｔｏｐＳＴ：選択タイマを停止する
ＰｏｓＩｎｆｏ：スタック名を含むディスカバリプロトコルによって生成されたレポート
ｓｅｔＳｔｋＮａｍｅ：スタック名を設定する
Ｒｃｖ＿ｒｐｏｒｔ：ポストされたワイヤレススキャンの結果
ｒｃｖ＿ｌｏｇｉｃ：ワイヤレススキャンレポートを処理し、新しいイベントを生成する
ｒｃｖ＿ＳＥＬ＿ＡＰ：選択したＡＰがスキャンレポート中の最高のスコアを有する
ｒｃｖ＿ＮＥＷ＿ＡＰ：新しいＡＰがスキャンレポート中の最高のスコアを有する
ｒｃｖ＿ＣＡＮ＿ＡＰ：候補ＡＰがスキャンレポート中の最高のスコアを有する
Ｎｅｘｔ：内部イベント
ｌｉｎｋ＿ｌｏｓｔ：失われたワイヤレスリンクの表示
ｆｏｒｃｅ＿ｓｅｌ：安全選択タイマ。複数のＡＰが同一のスコアを有することができる
ｍａｘ：変数の割り当てられた最大値
【００５９】
例。ＡＰ選択ＦＳＭ
１）Ｄｏｗｎ状態中にＰｏｓＩｎｆｏイベントに応答して、ＦＳＭは、ローカル状態、カウンタを初期化し、スタック名を記録して、可能なループを回避する。
【００６０】
２）Ｄｏｗｎ状態中にＲｃｖ＿ｒｐｏｒｔイベントに応答して、ＦＳＭは、Ｎｅｘｔイベントを実行し、ｒｃｖ＿ｌｏｇｉｃを実施し、ｒｃｖ＿ｌｏｇｉｃは、レポートを解析し、以下のイベントのうち１つを生成する。
【００６１】
ｒｃｖ＿ＳＥＬ＿ＡＰ、ｒｃｖ＿ＮＥＷ＿ＡＰ、またはｒｃｖ＿ＣＡＮ＿ＡＰ。この時点では候補ＡＰが存在しないので、ｒｃｖ＿ＮＥＷ＿ＡＰイベントが生成される。
【００６２】
３）Ｄｏｗｎ状態中のＮｅｘｔイベントは、ＦＳＭに、状態をＡＰ＿ＤＥＴＥＣＴＥＤ（列１）に変更させ、選択タイマＳＴを開始させる。
【００６３】
４）ＡＰ＿ＤＥＴＥＣＴＥＤ状態中にｒｃｖ＿ＮＥＷ＿ＡＰに応答して、ＦＳＭは、任意の現候補ＡＰを打ち切り、新しいＡＰをより良好な候補として採用し、候補信頼カウンタ（Ｃ＿ｃｎｔｒ）をその現状態が何であっても１に設定する。
【００６４】
５）ＡＰ＿ＤＥＴＥＣＴＥＤ状態中にＲｃｖ＿ｒｐｏｒｔに応答して、ＦＳＭはｒｃｖ＿ｌｏｇｉｃを実施し、ｒｃｖ＿ｌｏｇｉｃはｒｃｖ＿ＣＡＮ＿ＡＰイベントを生成する。
【００６５】
６）ＡＰ＿ＤＥＴＥＣＴＥＤ状態中にｒｃｖ＿ＣＡＮ＿ＡＰイベントに応答して、ＦＳＭは、候補信頼カウンタを増分し、完了、すなわちｉ＿Ｃ＿ｃｎｔｒ＝＝ｍａｘかどうかをチェックする。ｉ＿Ｃ＿ｃｎｔｒ＝＝ｍａｘである場合、ＦＳＭはＮｅｘｔイベントを生成する。
【００６６】
７）ＡＰ＿ＤＥＴＥＣＴＥＤ状態中のｒｃｖ＿ＳＥＬ＿ＡＰに応答して、ＦＳＭは、候補信頼カウンタをクリアする。
【００６７】
８）ＡＰ＿ＤＥＴＥＣＴＥＤ状態中のＮｅｘｔイベントに応答して、ＦＳＭは、選択したＡＰ、Ｓとして候補ＡＰを選択し、ＡＰ＿ＳＥＬＥＣＴＥＤ状態に変化し、選択タイマを停止する（＿ｓｔｏｐＳＴ）。
【００６８】
ＡＰモジュールの故障または除去の結果ｌｉｎｋ＿ｌｏｓｔイベントが生じ、ｌｉｎｋ＿ｌｏｓｔイベントは、ＢＨに、新しく発見した最良のＡＰの選択でＡＰ＿ＳＥＬＥＣＴＥＤに対する上述のプロセスをたどらせる。
【００６９】
少なくとも１つが存在しなければならず、かつ故障の場合の冗長性を与えるために複数存在する可能性がある、ネットワークコントローラ（ＮＣ）の統合によるメッシュの完了に関して、各ＡＰは、周知のＩＣＭＰ（ｐｉｎｇ）プロトコルによって各ＮＣに対するラウンドトリップ遅延（ＲＴＤ）を測定し、その結果をＮＣ  ＲＴＤレポートに収集する。ネットワークコントローラ（ＮＣ）ごとのラウンドトリップ遅延（ＲＴＤ）レポート値から、ワイヤレスモジュールは、受け取ったネットワークコントローラ（ＮＣ）が候補ＮＣ（ＮＣ＿Ｃ）、すなわち最良の（すなわち最小の）ラウンドトリップ遅延時間を有するＮＣであるかどうかを判断する。ＲＭが候補ＮＣとして同じＮＣを行中でｘ回（例えば３回）受け取った場合、そのＮＣを新しいＮＣ（ＮＣ＿Ｓ）として選択する。数（ｘ）は構成可能な値である。各ノードは、本節で説明した機能の少なくとも一部を周期的に実施することができる。
【００７０】
（バックホールセキュリティ）
バックホール接続は、すべてのユーザデータ伝送についてＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）静的暗号鍵を使用する（例えば、バックホールモジュールはＡＥＳ鍵を含むＡｔｈｅｒｏｓ  ＡＲ５００１ＡＰチップセットを使用することができる）。各ＡＰ（アクセスポイント）は、エンタプライズキーの共通キーテーブル、すなわちＷＬＡＮユーザについてのキーテーブルとＷＬＡＮバックホールモジュールについての追加のキーからなる共通テーブルを維持する。さらに、暗号鍵テーブル上では、普通なら未使用のキーが固有キーとして定義される。この固有キーは、すべてのワイヤレスモジュールによって使用されるソフトウェア内に存在する。この固有キーの目的は、既存のモジュールスタックとネットワークに導入されているがエンタプライズ暗号鍵でまだ構成されていない新しいスタックとの間で一時非セキュア限定接続を行うことを可能にすることである。
【００７１】
バックホールモジュールを有する新しいスタックがセキュリティキーを構成することなく電源投入されるとき、エンタプライズセキュリティキーで構成することができる前には依然として既存のシステムに接続する必要がある。制限された機能を有する接続が、すべてのワイヤレスモジュール上に存在する固有キーを使用することによって達成される。新しいスタックは、固有キーを用いて適切なＡＰに接続し、ＡＰは、ＷＬＡＮインフラストラクチャ管理サービスを許可するが、任意のユーザデータトラフィックをＡＰとの間で転送することはできない。制限された機能を有するこの接続を利用することにより、ネットワーク管理者は、新しいスタックがセキュア接続を行い、またはセキュア接続を未知のスタックとして切断することを許可することができる。新しいスタックがシステムに対する有効な新しい参入者である場合、新しいスタックは、管理者によって正しいセキュリティキーで構成され、セキュアバックホールリンクを作成するためにその接続をリセットする。制限モードでは、ＡＰは、ＭＡＣ層に保管されたＯＵＩ（Ｏｒｇａｎｉｚａｔｉｏｎａｌｌｙ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ）に基づいてＳｔｒｉｘ装置からの／へのトラフィックだけを許可する。
【００７２】
（結論）
本発明の諸態様は、ピコセルラシステム（ｐｉｃｏｃｅｌｌｕｌａｒ  ｓｙｓｔｅｍ）内のモバイルワイヤレスユニットまたは装置との通信を提供する際に特に有用である。ピコセルラシステムは一般に、オフィスビルの１フロアなどの極めて狭いエリアをカバーするように設計された極めて低出力のワイヤレス基地局を有するワイヤレスシステムを指す。実際、本明細書に記載の近距離ワイヤレス通信は一般に、有効範囲５００メートル以下（Ｂｌｕｅｔｏｏｔｈではしばしば１００メートル未満）を指すが、ワイヤレス伝送プロトコルおよび出力レベルに応じて１キロメートルまで達するシステムもある。本明細書に記載のアクセスポイント、ノード、または基地局ユニットは、一般に所与の場所に対して固定される。場所は、任意の静止した建物または地理的空間（駐車場や公園など）でよい。あるいは、ノードを輸送手段（例えば列車、船、飛行機）などの移動体に対して固定することもできる。
【００７３】
文脈が明白にそうでないことを必要としない限り、この説明および特許請求の範囲全体を通して、「含む、備える（ｃｏｍｐｒｉｓｅ、ｃｏｍｐｒｉｓｉｎｇ）」などの語を、排他的または網羅的な意味ではなく、包含的な意味で、言い換えれば「含むがそれに限定されない（ｉｎｃｌｕｄｉｎｇ，  ｂｕｔ  ｎｏｔ  ｌｉｍｉｔｅｄ  ｔｏ」の意味で理解すべきである。さらに、「本明細書（ｈｅｒｅｉｎ」、「上で（ａｂｏｖｅ）」、「下で（ｂｅｌｏｗ）」という語、および類似の意味の語は、本願では本願全体を指し、本願の何らかの特定の部分を指すのではない。特許請求の範囲で２つ以上の項目のリストを参照する際に「または（ｏｒ）」という語を使用するとき、その語は以下の語の解釈のすべてを包含する。リスト中の項目のいずれか、リスト中の項目のすべて、およびリスト中の項目の任意の組合せ。
【００７４】
本発明の実施形態の上記の詳細な説明は、網羅的ではなく、本発明を上記で開示した厳密な形態に限定するものではない。例示的な目的で本発明の特定の実施形態および本発明に関する例を説明したが、関連技術の技術者は理解するであろうが本発明の範囲内で様々な等価な修正形態が可能である。例えば、プロセスまたはブロックが所与の順序を提示したが、代替実施形態は、異なる順序で、ステップを有するルーチンを実施することができ、またはブロックを有するシステムを使用することができ、一部のプロセスまたはブロックを削除、移動、追加、分割、結合、および／または修正することができる。こうしたプロセスまたはブロックのそれぞれを多種多様な方法で実装することができる。さらに、プロセスまたはブロックを時には一続きで実施されるように示したが、こうしたプロセスまたはブロックを並列に実施することができ、または異なる時間に実施することができる。状況が許せば、単数または複数を使用した上記の詳細な説明中の語は、それぞれ複数または単数も含むことができる。
【００７５】
本明細書で与えた本発明の教示を、必ずしも本明細書に記載のシステムではなく、他のシステムに適用することもできる。例えば、上記の詳細な説明の多くではＩＥＥＥ８０２．１１規格およびＢｌｕｅｔｏｏｔｈ規格を論じたが、本発明の諸態様は、ＣＤＭＡ、ＧＳＭ、ＩＥＥＥ８０２．１および８０２．２０などの他のワイヤレス標準、プロトコル、または周波数を使用して実装することができる。上述の様々な実施形態の要素および動作を組み合わせて別の実施形態を提供することができる。
【００７６】
添付の出願用紙に列挙されるものを含む上記の特許および出願および他の参考文献のすべて、ならびに本願の譲受人に譲渡された２００４年３月２４日出願、「Self-configuring, Self-Optimizing Wireless Local Area Network System」（整理番号３４０１５−８００９）、２００２年５月２日出願、「Wireless Base Station To Base Station Synchronization In A Communication System, Such As A System Employing a Short-range Frequency Hopping Or Time Division Duplex Scheme」（整理番号３４０１５−８００３）の特許文献１、２００３年９月１２日出願、「Network Access Points Using Multiple Devices」（整理番号３４０１５−８００８）の特許文献２は、参照により本明細書に組み込まれる。必要なら本発明の諸態様は、上述の様々な参考文献のシステム、機能、および概念を使用して本発明のさらに別の実施形態を提供するように修正することができる。
【００７７】
上記の詳細な説明に照らして、本発明に対して上記およびその他の変更を行うことができる。上記の説明は本発明のある実施形態を詳述し、企図される最良の形態を説明するが、上記を文中でどのように詳述したとしても、本発明を多くの方法で実施することができる。ノード配置ルーチンの詳細は、その実装の詳細でかなり変化する可能性があるが、本明細書で開示される本発明によってなお包含される。上述のように、本発明のある機能または態様を説明する際に使用した特定の用語は、その用語が関連する本発明の何らかの特定の特徴、機能、または、諸態様に制限されるように本明細書で再定義されることを示唆すると理解すべきではない。一般に、添付の特許請求の範囲で使用される用語を、上記の詳細な説明の部分がそのような用語を明示的に定義しない限り、開示の特定の実施形態に本発明を限定するように解釈すべきではない。したがって、本発明の実際の範囲は、開示の実施形態を包含するだけではなく、特許請求の範囲下の発明を実施または実装するすべての等価な方法も包含する。
【００７８】
本発明のいくつかの態様を特許請求の範囲で一定のクレーム形式で提示するが、本発明者等は、任意の数のクレーム形式の本発明の様々な態様を企図する。例えば、本発明の一態様だけがコンピュータ読取可能な媒体として具体化されるものとして挙げられるが、他の態様も同様にコンピュータ読取可能な媒体として具体化することができる。したがって、本発明者等は、本願を出願後に追加のクレームを追加する権利を留保して、本発明の他の態様に関するそのような追加のクレームを追求する。
【図面の簡単な説明】
【００７９】
【図１Ａ】様々なユーザに対するワイヤレスサービス、ならびに従来の有線ネットワークとの接続を提供する本発明の一実施形態による１つの物理構成を示すワイヤレスローカルエリアネットワークすなわちＷＬＡＮの図である
【図１Ｂ】本発明の諸態様を使用するのに適したコンピュータのブロック図である。
【図２】図１Ａなどのようなワイヤレスネットワークを構築するのにいくつか使用することができる「ノード」の一例の略を示す図である。
【図３】図１のＷＬＡＮの各ノードに存在するソフトウェアのブロック図である。
【図４】「Ｂｌｕｅｔｏｏｔｈ」ワイヤレス機能に関するソフトウェアのブロック図である。
【図５】ノードのプロセッサを備える各モジュール内のソフトウェアによって適用され、それ自体の特徴（「自己発見」）およびＷＬＡＮ内での役割（「アクセスポイント」として働くか、それとも「バックホール」モジュールとして働くか）を求める有限状態マシンロジックを記述する状態テーブルの図である。
【図６】スタック間自己発見プロセスを示す実態表の図である。
【図７】図６の下のＰＥＮＤＩＮＧ状態についての実態表の図である。
【図８】役割が「バックホール」モジュールの役割であると判断したプロセッサを備えるモジュール内のソフトウェアが追従する有限状態マシンロジックを記述する状態テーブルの図である。
【図９】ラウンドトリップ遅延と信号強度の最良の組合せの計算で使用することのできるルックアップテーブルの一例の図である。
【図１Ａ】
0004515451.tif 000002
【図１Ｂ】
0004515451.tif 000003
【図２】
0004515451.tif 000004
【図３】
0004515451.tif 000005
【図４】
0004515451.tif 000006
【図５】
0004515451.tif 000007
【図６】
0004515451.tif 000008
【図７】
0004515451.tif 000009
【図８】
0004515451.tif 000010
【図９】
0004515451.tif 000011