(57)【要約】【課題】ピア・ノード（コンピュータ・システムやアクセス・ポイントなど）を含む無線ネットワーク通信デバイスが、ネットワークで検出されるＲＦ干渉情報を協調的に交換するプロトコルを提供すること。【解決手段】このプロトコルは、フォーマット化された制御データであって、これを処理することのできるサービスを実行中の計算ノード間での、検出された干渉に対応する制御データ、の交換を管理する。ピア・テーブルでローカルおよびリモートでの取得制御データが維持される。このレコードは干渉及びネットワーク情報を異なるレベルの粒度を有する。協調プロトコルを介して収集される干渉情報は、ネットワーク内のピア・デバイスで使用され、干渉関係問題を緩和する。このプロトコルは、ピア・ノード能力の発見も提供し、メイン・データ・チャネル・トランスポートとは異なることも可能な、制御データ用のネゴシエーション可能なトランスポートを含む。【選択図】図１１
2006186993.tif 000002
【特許請求の範囲】
【請求項１】
無線ネットワークを含むコンピューティング環境において、
前記ネットワークのローカル・ノードにおいて、前記ネットワーク内の前記リモート・ノードのリモートで取得された制御データであって、前記リモート・ノードに対応するＲＦスペクトル干渉関係情報を含む制御データを取得すること、および
前記リモートで取得された制御データを、干渉に起因する問題を緩和するのに関係する動作を決定する構成要素に提供すること
を備えることを特徴とする方法。
【請求項２】
前記ローカル・ノードにおいて、前記ローカル・ノードに対応するＲＦスペクトル干渉関係情報を含むローカル制御データを取得すること、および前記ローカル制御データを前記リモート・ノードに送ることをさらに備えることを特徴とする請求項１に記載の方法。
【請求項３】
前記ローカル制御データを前記リモート・ノードに送ることは、ハートビートと併せて前記ローカル制御データを伝送することを備えることを特徴とする請求項２に記載の方法。
【請求項４】
前記ローカル制御データを前記リモート・ノードに送ることは、前記ローカル・ノードにおいて検知される分類データを受け取ること、および前記分類データに対応する前記ローカル制御データを、通知と併せて伝送することを備えることを特徴とする請求項２に記載の方法。
【請求項５】
前記リモートで取得された制御データを、干渉に起因する問題を緩和するのに関係する動作を決定する構成要素に提供することをさらに備えることを特徴とする請求項１に記載の方法。
【請求項６】
前記ネットワークにおけるノードにおいて、前記リモート・ノードの能力を発見することをさらに備えることを特徴とする請求項１に記載の方法。
【請求項７】
前記ローカル・ノードはアクセス・ポイントを備え、前記リモートで取得された制御データをピア・テーブルに維持することをさらに備えることを特徴とする請求項１に記載の方法。
【請求項８】
前記リモート・ノードはアクセス・ポイントを備え、前記リモートで取得された制御データをピア・テーブルに維持することをさらに備えることを特徴とする請求項１に記載の方法。
【請求項９】
前記ローカル・ノードと前記リモート・ノードとの間で制御データを伝達するために、トランスポートをネゴシエートすることをさらに備えることを特徴とする請求項１に記載の方法。
【請求項１０】
前記リモートで取得された制御データが取得することは、前記制御データを、ハートビートと併せて受け取ることを備えることを特徴とする請求項２に記載の方法。
【請求項１１】
前記リモートで取得された制御データを取得することは、前記制御データを、通知に合わせて受け取ることを備えることを特徴とする請求項２に記載の方法。
【請求項１２】
実行されると請求項１に記載の方法を実行するコンピュータ実行可能命令を有することを特徴とする少なくとも１つのコンピュータ可読媒体。
【請求項１３】
コンピュータ実行可能命令を有する少なくとも１つのコンピュータ可読媒体であって、
前記コンピュータ実行可能命令は、実行されるときに、
無線ネットワーク内のピア・ノードの、それぞれがＲＦスペクトル関係干渉関係情報を含むローカルに取得された制御データとリモートで取得されたデータとを交換することに関する能力を発見するステップ、および
発見された能力に基づいて制御データを交換するステップであって、前記ローカルに取得された制御データを前記ピア・ノードに送信し、かつ前記ピア・ノードから前記リモートで取得された制御データを受け取ることを含ステップ
を実行することを特徴とするコンピュータ可読媒体。
【請求項１４】
前記ピア・ノードの前記能力を発見することは、前記ピア・ノードがロバスト共存サービスを実行していることの指示（indication）を受け取ることを備えることを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１５】
前記ピア・ノードの前記能力を発見することは、前記ピア・ノードが、主データ通信チャネルとは別個であるトランスポートによって前記ローカルに取得された制御データを受け取る能力を有することの指示（indication）を受け取ることを備えることを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１６】
前記ローカル・ノードと前記リモート・ノードとの間で制御データを伝達するための、トランスポートをネゴシエートすることをさらに備えることを特徴とする請求項１５に記載のコンピュータ可読媒体。
【請求項１７】
前記ピア・ノードの前記能力を発見することは、前記ピア・ノードが協調プロトコルに従って前記ローカルに取得された制御データを受け取る能力を有することの指示（indication）を受け取ることを備え、前記制御データは複数のレベルの粒度にフォーマットされていることを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１８】
前記ローカルに取得された制御データを前記ピア・ノードに伝送することは、前記ローカルに取得された制御データをハートビートと併せて伝送することを備えることを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１９】
前記ローカルに取得された制御データを前記ピア・ノードに伝送することは、前記ローカルに取得された制御データを通知と併せて伝送することを備えることを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項２０】
前記リモートで取得された制御データを、干渉に起因する問題を緩和するのに関係する動作を決定する構成要素に提供することを備えることを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項２１】
前記ローカル・ノードはアクセス・ポイントを備え、前記リモートで取得された制御データをピア・テーブルに維持することをさらに備えることを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項２２】
前記リモート・ノードは、アクセス・ポイントを備え、前記リモートで取得された制御データをピア・テーブルに維持することをさらに備えることを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項２３】
前記リモートで取得された制御データをピア・テーブルに維持すること、前記リモートで取得された制御データへの更新を受け取ること、および前記更新に基づいて前記ピア・テーブルを更新することをさらに備えることを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項２４】
無線ネットワークを含むコンピューティング環境において、
リモート・ノードの機構に関する能力情報についてリモート・ピア・ノードに照会し、ＲＦスペクトル干渉関係情報を含むリモートで取得された制御データを提供する、ローカル・ノードにおける発見機構、および
前記リモートで取得された制御情報を受け取り、それに対応するレコードをピア・テーブルに維持する、前記ローカル・ノードにおけるピア・プロセス
を備え、
前記ピア・テーブルは、主データ・チャネル上で前記リモート・ピア・ノードとの通信に備えて前記干渉関係情報に基づいて緩和解決策を決定する際に、前記ピアクセス可能である
ことを特徴とするシステム。
【請求項２５】
前記発見機構は、前記リモート・ピア・ノードから前記制御データを受け取るためのトランスポートを確立することを特徴とする請求項２４に記載のシステム。
【請求項２６】
前記発見機構は、前記リモート・ピア・ノードから前記制御データを受け取るための固有の協調プロトコルを確立することを特徴とする請求項２４に記載のシステム。
【請求項２７】
前記発見機構は、あるバージョンの共存サービスが前記リモート・ピア・ノード上で実行されていることを確立することを特徴とする請求項２４に記載のシステム。
【請求項２８】
前記ピア・プロセスは、前記リモート・ピア・ノードから前記リモートで取得された制御データに対する更新を受け取り、前記更新に基づいて前記ピア・テーブルを更新することを特徴とする請求項２４に記載のシステム。
【請求項２９】
前記ピア・プロセスは、前記ローカルに取得された制御データを前記リモート・ピア・ノードに送信することを特徴とする請求項２４に記載のシステム。
【請求項３０】
前記ローカル・ノードは、アクセス・ポイントを備え、前記ピア・テーブルは、前記アクセス・ポイントに関連付けられた少なくとも１つの他のピア・ノードのためのエントリを備えることを特徴とする請求項２４に記載のシステム。
【請求項３１】
前記リモート・ノードは、アクセス・ポイントを備えることを特徴とする請求項２４に記載のシステム。
【請求項３２】
前記ローカル・ノードは、メッシュ型ネットワークの一部であり、前記ピア・テーブルは、前記アクセス・ポイントに関連付けられた少なくとも１つの他のリモート・ピアのためのエントリを備えることを特徴とする請求項２４に記載のシステム。
【請求項３３】
データ構造を格納した少なくとも１つのコンピュータ可読媒体であって、
無線ネットワーク内のローカル・ノードに対応する第１の制御データであって、前記ローカル・ノードで検出されたＲＦスペクトル干渉関係情報を含む第１の制御データを含む第１のレコード、および
無線ネットワーク内のリモート・ノードに対応する第２の制御データであって、前記リモート・ノードで検出されたＲＦスペクトル干渉関係情報を含む第２の制御データを含む第２のレコード
を備え
前記第１のノードから前記第２のノードへのデータ送信に与える干渉の影響を緩和するため、干渉関係情報に基づいてデータ送信パラメータを決定する際に、前記第２のレコードは第１のノードにおいてアクセス可能であることを特徴とするコンピュータ可読媒体。
【請求項３４】
前記第１のレコードは、少なくとも２つのフィールドを含み、各フィールドは前記干渉関係情報に関する粒度のレベルに対応することを特徴とする請求項３３に記載のコンピュータ可読媒体。
【請求項３５】
前記第１のレコードは、ＲＦ環境データを含む第１のフィールド、ＲＦ帯域におけるチャネルに関する粗い帯域情報を含む第２のフィールド、およびＲＦ干渉データを含む第３のフィールドを含む、少なくとも３つのフィールドを含むことを特徴とする請求項３３に記載のコンピュータ可読媒体。
【請求項３６】
前記第３のフィールドは、１組の特定の干渉関係情報のうちの少なくとも１つのアイテムを含み、前記組は、干渉源のタイプを指示するデータ、干渉周波数データ、干渉デューティ・サイクル情報；および干渉周期性データを含むことを特徴とする請求項３５に記載のコンピュータ可読媒体。
【請求項３７】
拡張データのための第４のフィールドをさらに備えることを特徴とする請求項３５に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にはコンピュータ・システムに関し、より詳細には無線ネットワークにおける情報交換に関する。
【背景技術】
【０００２】
無線ローカル・エリア・ネットワーク（ＷＬＡＮ）は、家庭および企業の両方において急増しつつある。このような無線ネットワークは、ウエブ・ブラウジング、ファイル転送、オーディオ・ビジュアル・ストリーミング、メッセージの送受信、およびその他の目的に使用することができる。無線接続が普及するにつれて、無線ネットワーク帯域外および無線ネットワーク帯域に重なる帯域の無線周波数（ＲＦ）信号が発生している可能性は、想定されるどのような場所においても増大し、その結果として、無線ネットワーク・ユーザの大部分に干渉を起こさせることになる。
【０００３】
さらに、無線ネットワークは、２．４ＧＨｚおよび５Ｇｈｚ領域におけるライセンスのない帯域で動作するために、多くの他のＲＦ装置がこれらの周波数で情報（または雑音）を伝送しており、このためにＷＬＡＮ通信に対する干渉を引き起こすことになる。ホーム無線ネットワークが経験する干渉の様々な発生源（sources）およびタイプとしては、遅い周期的な干渉を生ずるマイクロ波オーブン；「スロー・ホッパー（slow hopper）」と呼ばれるタイプの干渉を生ずるコードレス・フォン；（ファースト・ホッパー干渉を生じる）ブルートゥース・ヘッドセット；一定な固有の波形干渉（constant custom waveform interference）を生じる、ディジタル・スペクトル拡散（digital spread spectrum：ＤＳＳ）コードレス・フォン；および、一定の標準的な波形干渉を生じる無線監視カメラが挙げられる。さらに、同一チャネル上で動作する近傍の他のＷＬＡＮ、たとえば隣人のＷＬＡＮのなど、が干渉を引き起こす可能性がある。
【０００４】
理解されるように、無線ネットワークにおけるＲＦ干渉の結果として、利用可能なデータ・レートおよび／またはデータ・レンジの実効的な低下を引起し、不満足なユーザ経験の原因となる。技術的知識のあるユーザは、定期的に発生する干渉問題を、ネットワーク・デバイスを別のチャネルで動作するように再構成することによって緩和することができるが、多くの干渉源は断続的に送信し、そのために、別のチャネルに変更することによって１つの問題を解決したとしても、断続的に発生する別の問題が起こる可能性があり、この問題を見つけ出して解決するのはより難しい。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本質的に、主要な問題は、無線ネットワーク・コンピューティング・デバイスは、無線ネットワークのＲＦ干渉について何が発生しているのかが分からず、その結果、それに適応できないことである。必要なことは、ＲＦ干渉が存在しても、そのＲＦ干渉についての情報をコンピューティング・デバイスに提供し、その結果、干渉問題を緩和することができるようにすることによって、適度に良好な無線体験を提供する方法である。
【課題を解決するための手段】
【０００６】
要約すると、本発明は、システム、方法およびデータ構造を含むプロトコルであって、それによってネットワーク通信デバイス（コンピュータ・システムおよびアクセス・ポイントなどのピア・ノード）が、そのネットワーク内で検出されたＲＦ干渉についての情報を交換することのできるプロトコルを目的とする。協調プロトコル（cooperative protocol）と呼ぶ、このプロトコルは、検出された干渉に対応するフォーマット化された制御データの交換を管理する。この制御データの交換は、そのような制御データを処理することのできるサービスで、ロバスト共存サービス（robust coexistence service）と呼ばれるサービスを実行しているネットワーク内のコンピューティング・ノード間で行われる。
【０００７】
ロバスト共存サービス（robust coexistence service：ＲＣＳ）は、フレキシブルで拡張可能なフレームワークを備え、このフレームワークは、スペクトル・センサ・ハードウエアがプラグ・インされて、干渉を含む、検知されたＲＦ状態に対応するデータを出力することを可能にするローカル処理サブ・システムを含む。また、このフレームワークには、通知目的の、および、干渉に関係する通信障害を緩和するための、干渉関係情報を提供するために、１つまたは複数のソフトウエア分類器（classifier）およびアプリケーション・プログラムが、プラグ・インされ、検知されたＲＦデータを評価する動作をする。
【０００８】
一実装形態において、この協調プロトコルは、ピア発見（peer discovery）およびピア情報交換に使用されるフレームワークおよび構造、およびこのプロトコルを配信するのに使用されるトランスポート機構、を提供する。この協調プロトコルによれば、ローカルで検出された干渉関係情報は、全体的な環境情報などと共に、制御データにフォーマット化され、次いで、この制御データは、そのローカル・ノードからＲＣＳ可能（ロバスト共存サービスを実行する）な、無線ネットワーク内のリモート・ピア・ノード（remote peer node）に配信され、それによってリモート・ノードは、ローカル・ノードの現在のＲＦ環境を知る。同様の制御データの交換が反対方向に行われる。その結果、ピア・ノードは互いの環境を知り、いずれかのノードが主（非制御）データを受信ノードに伝送するときに、その伝送は、干渉を回避するか、またはその干渉の影響を何らかの方法で緩和するように適応させることができる。たとえば、アクセス・ポイントが、それが関連しているデバイスが１つのチャネルにおいて干渉を受けていることを知っている場合には、そのアクセス・ポイントおよびデバイスは、異なるチャネルに切り替えることに同意することができる。ここで留意すべきことは、アクセス・ポイントによって、それぞれの関連するコンピューティング・デバイスはそのピアとしてのそのアクセス・ポイントだけを有するのに対して、そのアクセス・ポイントは、それぞれの関連するアクセス・ポイントとピア関係を有することである。アドホック（ad hoc）ネットワークにおいては、デバイスは複数のピアを有することがある。
【０００９】
制御データを配信するために、各ロバスト共存サービスは、情報配信サブ・システムも含む。情報配信サブ・システムはトランスポート・モジュールを含み、このトランスモジュールは、コンピュータ・システムにおいてローカルに検知されたすべての干渉情報を含む制御データを、ネットワーク上の別のリモート・ノードに伝達するとともに、そのノードで、リモートで検知された同様の情報を受け取る。
【００１０】
協調プロトコルをサポートするために、情報配信サービスはピア・プロセスをさらに含み、このピア・プロセスは、ローカルおよびリモートの干渉関係制御データを収容するピア・テーブルを管理し、ピア発見およびピア・フィードバック処理を含むタスクを実行する。ピア・フィードバックは、リモートＲＦ環境において検知された干渉関係情報を、ローカル緩和の目的での使用に活用するように使用することができる。
【００１１】
協調プロトコルを使用して、（ローカルおよびリモートの）ピアは、その近接する環境についての無線干渉およびスペクトルの詳細を提供して、局在する（ローカルの）干渉をリモート・ピアに通知する。次いで、協調プロトコルによって収集された、干渉および周波数情報は、ネットワーク内のピア・デバイスが使用することによって、干渉関係問題を緩和するように適応することができる。
【００１２】
ピア発見を達成するために、ＲＣＳ可能システムがＷＡＮアクセス・ポイントに関連付けされると、そのシステムは、発見メッセージ交換を使用して、その他のＲＣＳ可能システムを捜し始める。この交換の間に、プロトコルデータの交換のためのトランスポートと共に、協調プロトコルのバージョンなどについて同意される。選択されたトランスポート（主データ・チャネルと異なるチャネル上にある可能性がある）は、ＩＰ層またはリンク層とすることができる。トランスポート・ネゴシエーションによって、より古いシステムが、それを使用するために備えられているチャネル上で、制御データを伝達することが可能になる。
【００１３】
発見と設定のフェーズに続いて、２つのピア・デバイスは、ＲＦスペクトルおよび干渉情報交換のための定常状態（steady stat）に達する。一実装形態において、交換制御データは、１から３のレベルの情報を含むことができ、それには、デバイスの環境についての汎用の（干渉関係でない）情報（レベル１）、何らかの干渉が存在するかどうかを指示する汎用データを含む、主データ・チャネルについての粗情報（レベル２）、および干渉源（interferer）のタイプ、周波数、デューティ・サイクル、干渉の周期性その他の、専用の干渉関係情報（レベル３）がある。拡張された情報も通信されることもできる。
【００１４】
一般に、各ピアはそれ自体の制御データを、そのピア・テーブルのレコードの中に維持するとともに、別のピアから受け取る情報を、別のレコード内に、またはアクセス・ポイントの場合もしくは複数のピアが存在するアッドホック・ネットワークにおいては、後続のレコードの中に、維持する。ローカル・レコードは、干渉変化が検出されるときに更新されるが、ピア・レコードは、ピア・デバイスとデータを交換するときに更新される。
【００１５】
ピア・デバイスは、一方（または両方）がディスコネクト（disconnect）を開始するまで、協調プロトコルを介して接続されたままとなる。このプロトコルは、また、キープ・アライブ・ハートビート（keep-alive heartbeat）機構をサポートし、それによって、動作デバイスに対しては、ピア・テーブルへの更新を行うことができ、同時に非動作デバイスに対しては、対応するレコードをピア・テーブルから除去することができる。
【００１６】
その他の利点は、以下の詳細な説明を図面と合わせて読めば、明白となるであろう。
【発明を実施するための最良の形態】
【００１７】
例示的動作環境
図１は、本発明を実装することのできる好適なコンピューティング・システム環境１００の例を示している。コンピューティング・システム環境１００は、好適なコンピューティング環境の一例にすぎず、本発明の使用または機能の範囲について、いかなる限定も示唆するものではない。また、コンピューティング環境１００は、例示的動作環境１００に示す構成要素のいずれか、またはそれらの組合せに対して、何らかの依存性または必要条件を有するものとは解釈すべきではない。
【００１８】
本発明は、その他の汎用または専用のコンピューティング環境または構成において動作可能である。本発明での使用に好適な、よく知られたコンピューティング・システム、環境および／または構成の例としては、それに限定はされないが、パーソナル・コンピュータ、サーバ・コンピュータ、ハンドヘルドまたはラップトップ・デバイス、タブレット・デバイス、マルチ・プロセッサ・システム、マイクロ・プロセッサ・ベース・システム、セットトップボックス（set top boxes）、プログラム可能消費者電子製品、ネットワークＰＣ、ミニ・コンピュータ、メインフレーム・コンピュータ、上記のシステムまたはデバイスの任意のものを含む分散コンピューティング環境、その他が挙げられる。
【００１９】
本発明は、コンピュータによって実行される、プログラム・モジュールなどのコンピュータ実行可能命令の一般的文脈において説明することができる。一般に、プログラム・モジュールには、ルーチン、プログラム、オブジェクト、構成要素、データ構造、その他が含まれ、これらは特定のタスクを実行するか、または特定の抽象データ型を実装する。本発明は、分散コンピューティング環境においても実施が可能であり、このような環境では、通信ネットワークを介して連結されたリモート処理デバイスによってタスクが実行される。分散コンピューティング環境においては、プログラム・モジュールは、記憶装置を含む、ローカルおよび／リモートのコンピュータ記憶媒体に配置することができる。
【００２０】
図１を参照すると、本発明を実装するための例示的システムは、コンピュータ１１０の形態の汎用コンピューティング・デバイスを含む。コンピュータ１１０の構成要素としては、それに限定はされないが、処理ユニット１２０、システム・メモリ１３０、およびシステム・メモリを含む様々なシステム構成要素を処理ユニット１２０に結合する、システム・バス１２１を挙げることができる。システム・バス１２１は、メモリ・バスまたはメモリ・コントローラ、周辺バス、および様々なバス・アーキテクチャの任意のものを使用するローカル・バスを含む、いくつかのタイプのバス構造のいずれでもよい。一例であり、限定ではないが、そのようなアーキテクチャとしては、ＩＳＡ（Industry Standard Architecture：産業標準構成）バス、ＭＣＡ（Micro Channel Architecture）バス、ＥＩＳＡ（Enhanced Industry Standard Architecture：拡張産業標準構成）バス、ＶＥＳＡ（Video Electronics Standards Association：ビデオ電子装置規格化協会）ローカル・バス、およびメザニン（Mezzanine）バスとしても知られるＰＣＩ（Peripheral Component Interconnect：周辺装置相互接続）バスが挙げられる。
【００２１】
コンピュータ１１０は、通常、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ１１０がアクセスすることのできる任意の利用可能な媒体としてもよく、それには、揮発性および不揮発性媒体、ならびに移動型および固定型媒体が含まれる。一例であり、限定ではないが、コンピュータ可読媒体には、コンピュータ記憶媒体および通信媒体を含めることができる。コンピュータ記憶媒体としては、コンピュータ可読命令、データ構造、プログラム・モジュールまたはその他のデータなどの情報の記憶のために任意の方法または技術によって実装された、揮発性および不揮発性、移動型および固定型の媒体が挙げられる。コンピュータ記憶媒体としては、それに限定はされないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリまたはその他のメモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ（ディジタル・バーサタイル・ディスク）またはその他の光学ディクス記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶装置、または所望の情報を記憶するのに使用することができるとともに、コンピュータ１１０がアクセスすることのできる、その他任意の媒体を挙げることができる。通信媒体は、通常、搬送波またはその他のトランスポート機構などの変調データ信号の形で、コンピュータ可読命令、データ構造、プログラム・モジュールまたはその他のデータを具現化し、これには、任意の情報配信媒体が含まれる。「変調データ信号」という用語は、信号の特性の内の１つまたは複数を、その信号内の情報を符合化するように設定または変更した信号を意味する。一例であり、限定ではないが、通信媒体としては、有線ネットワークまたは直接配線接続（direct-wired connection）などの有線媒体、および音響、ＲＦ、赤外線およびその他の無線媒体などの無線媒体が挙げられる。上記したもののいずれかの組合せも、コンピュータ可読媒体の範囲に含めるものである。
【００２２】
システム・メモリ１３０は、読み取り専用メモリ（ＲＯＭ）１３１やランダム・アクセス・メモリ（RAM）１３２などの、揮発性および／または不揮発性メモリの形態の記憶媒体を含む。起動中などにコンピュータ１１０内の要素間での情報の転送を助ける基本ルーチンを含む、基本入出力システム１３３（ＢＩＯＳ）は、通常、ＲＯＭ１３１内に格納される。ＲＡＭ１３２は、通常、処理ユニット１２０によって即座にアクセス可能でかつ／または、処理ユニット１２０によって現在動作している、データおよび／またはプログラム・モジュールを含む。一例であり、限定ではないが、図１には、オペレーティング・システム１３４、アプリケーション・プログラム１３５、その他のプログラム・モジュール１３６およびプログラム・データ１３７を示してある。
【００２３】
コンピュータ１１０には、また、その他の移動型／固定型、揮発性／不揮発性のコンピュータ記憶媒体も含めてもよい。一例としてだけであるが、図１には、固定型、不揮発性磁気媒体、磁気ディスク・ドライブに読み取り／書き込みをするハードディスク・ドライブ１４１、移動型、不揮発性磁気ディスク１５２に読み取り／書き込みをする磁気ディスク・ドライブ１５１、およびＣＤ−ＲＯＭまたはその他の光学媒体などの移動型、不揮発性光学ディスク１５６に読み取り／書き込みをする光学ディスク・ドライブ１５５を示してある。この例示的動作環境で使用することのできるその他の移動型／固定型、揮発性／不揮発性のコンピュータ記憶媒体としては、それに限定はされないが、磁気テープカセット、フラッシュ・メモリ・カード、ＤＶＤ、ディジタル・ビデオ・テープ、ソリッド・ステートＲＡＭ、ソリッド・ステートＲＯＭ、その他がある。ハードディクス・ドライブ１４１は、通常、インターフェース１４０のような固定型メモリ・インターフェースを介してシステム・バス１２１に接続されており、磁気ディスク・ドライブ１５１および光学ディスク・ドライブ１５５は、通常、インターフェース１５０のような移動型メモリ・インターフェースによってシステム・バス１２１に接続されている。
【００２４】
上述し、また図１に示した、ドライブ類およびそれに付随するコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラム・モジュールおよびコンピュータ１１０用のその他のデータの記憶を提供する。図１において、たとえば、ハードディスク・ドライブ１４１は、オペレーティング・システム１４４、アプリケーション・プログラム１４５、その他のプログラム・モジュール１４６およびプログラム・データ１４７を格納する状態で示してある。ここで、これらの構成要素は、オペレーティング・システム１３４、アプリケーション・プログラム１３５、その他のプログラム・モジュール１３６、およびプログラム・データ１３７と同じでも、異なってもよいことに留意されたい。ここで、オペレーティング・システム１４４、アプリケーション・プログラム１４５、その他のプログラム・モジュール１４６、およびプログラム・データ１４７は、少なくとも、それらが異なるコピーであることを示すために、異なる番号を与えてある。ユーザは、タブレットまたは電子ディジタイザ１６４、マイクロフォン１６３、キーボード１６２および一般にマウスと呼ばれるポインティング・デバイス１６１、トラック・ボールまたはタッチ・パッドなどの入力装置を介して、コンピュータ１１０に命令および情報を入力することができる。図１に示していないその他の入力装置としては、ジョイスティック、ゲームパッド、サテライト・ディッシュ、スキャナ、その他を挙げることができる。これらおよびその他の入力装置は、通常、システム・バスに結合されたユーザ入力インターフェース１６０を介して処理ユニット１２０に接続されることが多いが、パラレル・ポート、ゲーム・ポートまたはユニバーサル・シリアル・バス（ＵＳＢ）などのその他のインターフェースおよびバス構造によって接続することもできる。モニタ１９１またはその他のタイプの表示装置も、ビデオ・インターフェース１９０などのインターフェースを介してシステム・バス１２１に接続される。モニタ１９１は、タッチ・スクリーン・パネルまたはその他と一体化してもよい。ここで、モニタおよび／またはタッチ・スクリーン・パネルは、タブレット式パーソナル・コンピュータにおけるように、コンピューティング・デバイス１１０をその中に組み入れるハウジングに物理的に結合することもできることに留意されたい。さらに、コンピューティング・デバイス１１０のようなコンピュータには、スピーカ１９５およびプリンタ１９６などのその他の周辺出力装置を含めてもよく、これらの周辺装置は、出力周辺インターフェース１９４その他を介して接続することができる。
【００２５】
コンピュータ１１０は、リモート・コンピュータ１８０のような、１つまたは複数のリモート・コンピュータへの論理接続を使用してネットワーク環境において動作することができる。リモート・コンピュータ１８０は、パーソナル・コンピュータ、サーバ、ルータ、ネットワークＰＣ、ピア・デバイスまたはその他の共通ネットワーク・ノードとしてもよく、図１には記憶装置１８１だけを示したが、通常、コンピュータ１１０に関して上述した多数またはすべての要素を含めてもよい。図１に示す論理接続は、ローカル・エリア・ネットワーク（LAN）１７１およびワイド・エリア・ネットワーク（WAN）１７３を含むが、その他のネットワークを含めてもよい。そのようなネットワーク環境は、オフィス、企業内コンピュータ・ネットワーク、イントラネットおよびインターネットにおいてありふれたものである。
【００２６】
ＬＡＮネットワーク環境において使用するときには、コンピュータ１１０は、ネットワーク・インターフェースまたはアダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーク環境において使用するときには、コンピュータ１１０は、通常、モデム１７２またはインターネットなどのＷＡＮ１７３上での通信を確立するためのその他の手段を含む。モデム１７２は、内部式でも外部式でもよく、ユーザ入力インターフェース１６０またはその他の適切な機構を介して、システム・バス１２１に接続することができる。ネットワーク環境において、コンピュータ１１０に関係して述べたプログラム・モジュール、またはその部分は、リモート記憶装置に格納することができる。一例であり、限定ではないが、図１は、アプリケーション・プログラム１８５がメモリ装置１８１に常駐している状態を示してある。ここで、図示したネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立するその他の手段を使用することができることに気づくであろう。
【００２７】
ロバスト共存サービス
本発明は、一般的には、プロトコルを対象としており、そのプロトコルによって、無線ネットワーク通信に使用されているＲＦスペクトルの部分において検出された干渉に関係するデータが、まずはその干渉を回避し、の無線ネットワークへのその影響を少なくとも緩和する目的で、ネットワーク内のピア・ノードに伝達されることになる。理解されるように、本発明を実装するために多数の方法が可能であり、ここではその代替案の一部だけを記述する。たとえば、本発明は、主として、ＲＦ関係センサ、分類器（クラシファイア）およびアプリケーション・プログラムが、そのスペクトルを動的に検知し、その検知データを処理して、ネットワーク通信に対する干渉の影響を緩和するようにプラグ・インされたフレームワークを参照して記述される。しかしながら、容易に気づくことができるように、そのプロトコルを使用するのに、そのようなフレームワークは必須ではなく、実際に、任意のソフトウエア・プログラム（またはその他の適切に構成されたハードウエア）に結合されたセンサは、このプロトコルを使用して検知される干渉関係情報を交換することができる。たとえば、このフレームワークは、コンピュータ・システム上で実行可能であるが、その代案として、アクセス・ポイント・デバイス、無線ブリッジ、その他に統合するために、ハードウエア製造会社が採用することもできる。さらに、理解されるように、順序付けは重要ではないので、プロトコルを再配置してもよく、また、干渉関係問題を緩和するのに、プロトコルに従って交換される情報の全部が必要なわけではない。したがって、本発明は、例示アーキテクチャ、または本明細書で用いた特定の実施例のいずれにも限定されることはなく、計算処理（computing）全般において利益および効果をもたらす様々な方法で使用することができる。
【００２８】
添付図面の図２に移ると、そこには、無線デバイスを含む、例示的無線ネットワーク２００を示してある。この無線デバイスは、ホーム・ネットワーク環境において見られるが、もちろんその他の環境においても使用できるとともに、有線ネットワーク・デバイス（単数または複数）に接続することもできる。図２の例示的ネットワーク２００では、ケーブル・モデムまたはＤＳＬモデムなどのブロードバンド・モデム２０２は、ネットワーク２００内でインターネットデータを送受信する。通常は有線接続でブロードバンド・モデム２０２に（直接または間接的に）接続されている、無線アクセス・ポイント（無線ルータ）２０４は、他方の無線デバイスをブロードバンド・ルータ２０２に、かつ互いに結合する。
【００２９】
図２に示すその他の無線デバイスには、メディア・コンピュータシ・ステム２０６、ラップトップ・コンピュータ２０８、異なるラップトップまたはデスクトップ・コンピュータなどのその他の無線デバイス２１０、およびオーディオ・ビジュアル信号をテレビジョン・モニタ２１４に結合する（セットトップボックスと類似の）メディア・センタ・エクステンダ（media center extender）２１２がある。ここで、代替的なメディア・センタ・エクステンダを、テレビジョン・モニタに直接組み込むことができることに留意されたい。また図２は、１つまたは複数の可能なＲＦ干渉源２１６も示しており、これは、コードレス電話のように、同一の周波数域で意図的に動作する場合であっても、マイクロ波オーブンの動作の副作用として生じるノイズの場合であっても、無線ネットワーク通信との干渉を引き起こす可能性のあるＲＦ送信を生成するすべてのものである可能性がある。
【００３０】
一例として、メディアセンタ２０６が、アクセス・ポイント２０４を経由してメディア・センタ・エクステンダ２１２にオーディオ・ビジュアル・コンテンツを流すことを考える。オーディオ・ビジュアル・データが流される間に、コードレス・フォンなどの様々なネットワークＲＦ源２１６が、そのオーディオ・ビジュアル・ストリームと干渉する可能性がある。容易に気づくように、ストリームが中断されるか、またはメディア・センタ・エクステンダ２１２がバッファリングしたデータを使い尽くす程度に帯域幅が制約され、それによってユーザの体験（エクスペリエンス）は、停止して、誤りの多い、またはそうでなければ不正確な映像および／または音声を体験することになる。電話の使用パターンに代表される、干渉デバイスの不定期の使用は、一般に予測不能であり、ユーザにとってさらに煩わしいものとなる可能性がある。
【００３１】
図２に示す無線デバイスのいくつかは、図２にＲＣＳインスタンス２２０1〜２２０3で示す、ロバスト共存サービス（ＲＣＳ）のインスタンスを含む。以下に記述するように、ロバスト共存サービスは、協調プロトコルと一緒に、それによってネットワークにおけるピア・デバイス（ノード）間で干渉関係情報を交換する機構およびフレームワークを提供し、それによって無線ネットワークにおけるＲＦ干渉の悪影響を、ある程度まで動的緩和したり、または場合によっては除去したりして、ユーザのネットワーク体験を改善することができる。
【００３２】
図３は、ローカル処理システム３２１と呼ばれる、ロバスト共存サービスの一構成要素サブ・システムを、ローカル処理システムの内部モジュール、およびその接続先の様々な他のモジュールおよび源と一緒に示してある。一般に、また以下に述べるように、干渉に起因する問題を緩和するように無線ネットワーク構成要素を動的に制御するのに使用することのできる緩和データを創出するために、ＲＣＳローカル処理システム３２１は、コンピュータ・システムまたはアクセス・ポイントなどのネットワーク・ノード上で実行中のロバスト共存サービスにプラグ・インされた様々な外部モジュールの動作を相互接続し、整合させる。この目的で、ＲＣＳローカル処理システム３２１は、ローカル・スペクトル・ハードウエア、たとえば、スタンドアローン・ハードウエアおよび／またはＷＬＡＮチップ・セットに統合されたハードウエアによって検知されるスペクトル・データを処理する外部モジュール、を相互接続して処理した情報を緩和プロセスにために利用可能にする。ＲＣＳ情報配信システム４２１と呼び、図４を参照して説明する、ロバスト共存サービスの別の部分は、ロバスト共存サービスのそれぞれのインスタンスを実行するとともに、それに加えて、それらのリモート・デバイスにおいて検知され、処理されて、そこから受け取られる制御情報を処理している、その他のリモート・デバイスへの制御情報の伝達、を調和させる。本発明の説明を以下に続けると、ＲＣＳ情報配信システム４２１は、任意その他のピア・リモート・ロバスト共存サービスがその対応するリモート・ノード上で干渉緩和のために使用し、ローカルに取得される制御データを提供するための、プロコルを実装するとともに、ローカル・ノードが干渉関係緩和に使用するための、リモートで検知される制御データを取得する。
【００３３】
図３に表すように、一般に、ＲＦ検知スペクトル・ハードウエアは、検知された生ＲＦデータ（raw RF data）をローカル処理システム３２１に提供する。より具体的には、スペクトル検知ハードウエアは、１つまたは複数のスタンドアローン・スペクトル・チップ（ゲート）３３２1〜３３２n、および／またはＷＬＡＮネットワーク・インターフェース・カード（ＮＩＣ）３３６（または類似の組込み回路）に埋め込まれたＲＦスペクトル・ゲート３３４を備えて、適切なアンテナまたはその他に結合されている。図３に示すように、スペクトル・ハードウエアは、それぞれの対応するドライバ３３３1〜３３３nおよび／または３３５を経由し、カーネル・モードＮＤＩＳ（Network Driver Interface Specification）インターフェース層３３８を介して、またはユーザ・モードＲＣＳローカル処理システム３２１へのインターフェースを提供する、スペクトル・デバイス・カーネル・モード・ドライバとして直接的に、ローカル処理システム３２１にデータを伝達する。ここで、ロバスト共存サービスは、カーネルに実装することも、カーネル・モード分類器（classifier）およびカーネル・モード・コンシューマ（consumer）をサポートすることもできることに留意されたい。完全にするために、図３には、有線ネットワーク接続用の、ＬＡＮミニポート（ＭＰ）ドライバ３３９も示してある。ここで、やはり完全にするために、図３には複数のセンサ、たとえば、スタンドアローン・センサ３３２1〜３３２nおよびそれぞれのドライバ３３３1〜３３３nを、ＲＦスペクトル・ゲート３３４および対応するＷＬＡＮミニ・ポート・ドライバ３３５と共に示してあり、このＷＬＡＮ・ミニ・ポート・ドライバには、ＲＦデータを取り扱うための、一体化されたＲＦスペクトル・データ・プロバイダが含まれる。しかしながら、ここで容易に気づくことは、干渉問題を緩和するために、２つ以上のＲＦスペクトル・センサは必要でないことである。実際に、明白になるであろうが、リモート検知のＲＦ制御データが、緩和を可能にするように利用可能である場合には、どのシステム上でもローカル・センサは必要ではない。
【００３４】
ＲＣＳローカル処理システム３２１は、内部モジュールへのインターフェースを提供し、それによって分類器（クラシファイア）３４０1〜３４０jおよびアプリケーション３４２1〜３４２kを含む外部モジュールが、ロバスト共存サービス３２１に登録（register）することができる。ここで、ミニ・ポート・ドライバ３３３1〜３３３nは、ユーザ・モード・ソフトウエア・モジュールを介して同様にプラグ・イン可能であり、必ずしもＮＤＩＳ層３３８を通過する必要がないことに留意されたい。登録の一部として、様々な登録モジュールが、それぞれがサポートする１つまたは複数の異なる型（type）のデータを識別し、この識別されるデータには、いずれかの分類モジュールによって理解される所定の一般フォーマットのデータ、および／または（対応する分類器に経路指定されるとブラブ（blobs）として取り扱われる）プロプラエタリ・フォーマットでのデータが含まれる。プロプラエタリ・フォーマットを使用する能力によって、特注のＲＦセンサおよび分類器をフレームワーク内で使用することが可能となる。データ型は、事前定義された汎用データとプロプラエタリ・データ型との組合せとすることができる。現行の情報セットを処理すべき方法を識別するために、プロバイダ、分類器、消費者およびドライバを関係づけるマッピングが、（たとえば、ＲＣＳエンジン３５０において）取得される。識別子は、生データの少なくとも一部は所定のフォーマットであるかどうかについての評価とすることができ、そのような場合にはどの分類器も生データの少なくとも一部を使用することができるので、カスタムデータを適正な分類器に経路設定するのに使用することができる。代替的に、分類器はそれ自体が理解しないデータを受け取って、廃棄することができる。
【００３５】
ＲＣＳローカル処理システム３２１において、ＲＣＳエンジン３５０は、以下に記述するように、その内部モジュール３５２〜３５８間での接続を提供し、一般にデータを適切に経路設定する。一般に、ＲＣＳエンジン３５０は、サービス内での様々なモジュールの活動を調整するとともに、たとえば、記憶装置３６０に、将来の使用のために分類データを格納する。たとえば、記憶装置３６０は、履歴分析に使用することのできる、タイム・スタンプの付与された干渉分類情報イベントを保存することができる。
【００３６】
上述の階層機構を介して、システム３２１のデータ・プロバイダ・モジュール３５２は、すべての生ＲＦデータとその他の低位ＭＡＣ（メディア・アクセス・コントローラ）層およびＰＨＹ（物理）層デバイスのデータに加えて、スペクトル検知ハードウエア３３２1〜３３２nおよび／または３３４によって検知される生データ、を取得する。そこから、データ・プロバイダ・モジュール３５２は、生データをＲＣＳエンジン３５０に転送して、分類データに加工するために、（たとえば、分類器が登録しているそれぞれのデータ型（単数または複数）に基づいて）適切な単数または複数の分類器に送られる。一実装形態においては、データ・プロバイダ・モジュール３５２およびドライバは、識別子（たとえば、ＯＩＤまたはＡＰＩ）を使用して、対応する単数または複数の分類器によって消費される、生ＲＦデータを伝えることができる。すぐに気づかれるように、ドライバ・モデルを使用することによって、開発された新規のものを含めて、様々なスペクトル・センサを、対応するドライバを介して接続することができるので、拡張性（extensibility）が得られる。
【００３７】
ここで、ローカル処理システム３２１は、必要とされるまで、すなわちＲＦ干渉が検知されるまで、アイドル状態のままとすることができることに留意されたい。ローカル処理システム３２１を正しい時刻にアウェイクする（awaken）ために、トリガ機構３６２を使用することができ、これは、ＮＤＩＳ層３３８を監視して、干渉の指示（indication）を提供する１つまたは複数の構成要素を備える。ここでもさらに、トリガ機構３６２は、干渉がある閾値レベルに到達するまで、ローカル処理システム３２１をアウェイクして干渉処理を開始することができないことに留意されたい。
【００３８】
ＲＦデータを適切な分類器へと経路設定するために、ＲＣＳエンジン３５０は、ローカル処理システム３２１のデータ分類モジュール３５４に生データを送る。一般に、分類モジュール３５４は、単数または複数の登録された分類器３４０1〜３４０jと通信して、生スペクトル・データをそこに供給するとともに、さらなる処理のために、分類データと呼ぶ、処理データを返す。これによって、新規および／または改良型の分類器を、それが利用可能になった際に簡単にプラグ・インすることが可能になるので、拡張性が得られることに留意されたい。
【００３９】
また、１つまたは複数のプラグ可能モジュールを含む、外部分類器３４０1〜３４０jは、本質的に生ＲＦデータに注目して、ＲＦ環境において何が発生しているかを判定する。この目的で、分類器３４０1〜３４０jは、生ＲＦデータを処理して、信号解析（signature analysis）およびその他を実行し、場合によってはそのＲＦデータをその他のネットワーク・トラフィック計測値と組み合わせることによって、そのデータの関係する特徴（characteristics）および場合によっては干渉源（たとえば、コードレス・フォン、マイクロ波オーブン、ブルートゥース・デバイス、およびその他）を識別して、そのような分類データをさらなる動作のために供給する。
【００４０】
ローカル処理システム３２１の消費モジュール（data consumer module）３５６は、検出された干渉の宣言のため、さらに、その干渉を回避するためにプログラムを適応させる方法を決定するより高位レベルの処理のために、分類データを取り込み、（ＲＣＳエンジン３５０を介して）それを記憶装置３６０に格納し、かつ／またはその分類データを登録されたアプリケーション・プログラム３４２1〜３４２kへと経路設定する。この目的で、１つまたは複数のアプリケーション・プログラムが、ローカル処理システム３２１に登録し、分類データを使用して、干渉に関する視認可能な通知またはその他の指示（indication）（たとえば、診断アプリケーションがＲＦ問題について、たとえば、ユーザを促す、「コードレス・フォン使用中」など）を提供するため、および／または、干渉関係の通信問題をある程度緩和する方法を決定するために、何らかの行動をとる。たとえば、この分類データは、進行中の伝送における画像サイズを縮小して、より少ない量のＡ／Ｖストリーミングデータを伝送するオーディオ／ビジュアル・ストリーミング・アプリケーション・プログラムなどの、アプリケーション・プログラムが使用することができる。この目的で、アプリケーション・プログラムは、それ自体の試験を実施し、その挙動の調整におけるしかるべき行動を決定するための、アプリケーション・プログラムに対するヒントとして分類データを使用することができる。
【００４１】
ここで、診断プログラムなどの１つのアプリケーション・プログラムが通知を処理できること、および別のプログラムが、分類データおよび何らかの試験結果に基づいてそれ自体の緩和解決法を工夫することができることに留意されたい。ここでも、アプリケーション・プログラムに対してプラグイン・モデルが用いられることから、フレームワークが拡張性特性を有することは明白である。
【００４２】
さらに、動的上部ＭＡＣおよび干渉緩和解決策を提供するその他の適応を実行するために、ロバスト共存サービスによって決定される干渉緩和関係の情報を、それがＷＬＡＮミニ・ポート・ドライバ３３５（またはＷＬＡＮ  ＮＩＣ３３６）に伝達されたところから、（たとえば、ＲＣＳエンジン３５０を経由して）フィードバック・モジュール３５８に伝えることができる。一例として、ＷＬＡＮミニ・ポート・ドライバ３３５（またはＷＬＡＮ  ＮＩＣ３３６）は、分類データおよび内部ＷＬＡＮデータから、周波数を別のチャネルに変更すること、データを送る速度を変更すること、（たとえば、予測可能なパターンで開始および停止する干渉を回避するために）データを送るタイミングを変更すること、およびチャネル、速度および／またはタイミング解決策、別の帯域へのスイッチング、伝送ドッジング（dodging）を使用しながら同一チャネルに留まること、パケット・サイズを低減するためのフラグメンテーションを使用すること（小さいパケットは大きなパケットと比較して衝突の確率が小さく、衝突の発生時には、再転送のサイズが小さいことが理由で、再転送のコストが小さい）、その他を含む、その他の方法によって干渉関係問題を緩和することができることを判定することができる。
【００４３】
図４を参照すると、上述のように、ロバスト共存サービスの別のサブ・システム構成要素は、ローカル・コンピュータ・システムにおいて検知される干渉情報をネットワーク上のその他のリモート・デバイスに伝達するとともに、ローカルに干渉を緩和するのに使用するために、リモートで検知される同様の情報を受け取る情報配信サービス４２１を備える。図４に表すように、情報配信システム４２１は、ピア・プロセス４７０およびトランスポート・モジュール４７２を含む。
【００４４】
本発明の一態様によれば、ピア・プロセスは、ピア・テーブル４８０を管理し、ピア発見４８２、ピア・フィードバック４８４を含むタスクを実行するとともに、以下に説明する、協調プロトコルと呼ばれる通信プロトコル４８６を介してのピア通信を管理する。一般に、ピア発見４８２には、プラグ・アンド・プレイ（uPnP: Plug-and-Play）技法を使用して、現行のオーディオ・ビジュアル・ストリームを処理するなどの、ロバスト共存サービスに参加する無線ノードを発見することができる。
【００４５】
ピア・フィードバック４８４は、干渉検出時および／または選択された間隔などの適切な時刻に更新される、各ノードのＲＦ環境およびその他の特性を、協調プロトコルを用いて通信するのに使用することができる。協調通信プロトコル４８６は、方法、フォーマットおよびＲＦ環境の型ならびにノード間に配信しようとする、各ノードのその他の特性を規定する。
【００４６】
トランスポート・モジュール４７２は、対応するプロトコル・パケットを配信する。パケットを移送する１つの方法は、有線または無線のＬＡＮを経由して、ＩＰ４９０層およびＴＣＰ／ＩＰ４９２層を使用する方法である。別の方法としては、同一もしくはその他の無線帯域を使用する、ＷＬＡＮまたはその他の無線技術を経由して、リンク層を使用する方法がある。この機構においては、パケットは、データと同じチャネルで送るか、または、「Use of Separate Control Channel to Mitigate Interference Problems in Wireless Networking」という名称の、関連する米国特許出願に記載されているように、ライセンスのない帯域内の異なるチャネルとして使用することができ、または場合によってはライセンス帯域内のチャネルを使用することができる。ここで留意すべきとは、本明細書において説明するように、制御情報を交換するために別個のチャネルを使用する利点は、正規のデータ通信に使用されるチャネルは、干渉時にそのような制御情報を交換することができない可能性があり、したがってこのような制御データは、緩和に使用するのに利用できない可能性があることである。
【００４７】
図５に表すように、複数の無線ノードを含む分散無線ネットワークにおいて、各ノードは、１つまたは複数のスペクトル・チップ５３２Ａ、５３２Ｂ、および関連するロバスト共存サービス５２０Ａ、５２０Ｂのそれぞれのインスタンスを有することができる。各ノードは、それぞれ自体の情報配信システム４２１Ａ、４２１Ｂを使用して、その他のノードをリモート・ピアとして処理して、分類情報を集約することができる。
【００４８】
別の態様は、ＲＣＳ可能無線ノードによる、同一の無線ノード上で実行されている別のロバスト共存式のサービスに基づく、集合処理（collective processing）を可能にする、ローカル・ピアである。これは、別個のノードであると考えるのではなく、これらのサービスを、同一ノード上に接続されて、同じノードで実行されているピア群とみなす場合には、図５において代替的に表すことができる。たとえば、チップ毎のロバスト共存式サービスが同一のノードで実行されている、２つ以上のスペクトル・チップを有する環境において、ロバスト共存サービス５２０Ａ、５２０Ｂは、それぞれの情報配信サブ・システム４２１Ａ、４２１Ｂを経由して通信することができ、この場合に、それらは互いにピア同士であるが、リモート・ピアではなくローカル・ピアである。
【００４９】
さらに、複数のロバスト共存サービスを同一ノード上で組み合わせると、たとえば、各ロバスト共存サービスが、それ自体で完全機能を有するフルセットの構成要素がない場合でも、完全機能を有する構成要素セットを得るオプションを提供する。したがって、図６は、ロバスト共存式サービス６２０Ａとそれに接続されたＭＡＣにインターフェースされたアプリケーション・プログラム６４２が、分類器６４０Ｂ、ドライバ６３３Ｂおよびロバスト共存サービス６２０Ｂに接続されたＲＦスペクトル・アナライザ６３２Ｂを補完して、完全機能を提供することを示している。
【００５０】
ロバスト共存サービス３２０の基本動作の説明に戻ると、図７は、ロバスト共存サービス３２０の様々な内部モジュールの初期化を示す、（尺度のない）時間経過の例を表す。図から分かるように、１つのモジュールの初期化からの情報が、別のモジュールを起動および／または完全に初期化するのに必要でない限り、順序付けは重要ではない。したがって、図７は、ＲＣＳエンジン３５０を始動し、様々な他のモジュール、たとえばＲＦデータ・プロバイダ・モジュール３５２、データ分類モジュール３５４、データ消費モジュール３５６およびＷＬＡＮフィードバック・モジュール３５８を初期化する、ロバスト共存サービス３２０を表す。また、本発明に準じて、ピア・プロセス４７０およびトランスポート・モジュール４７２が初期化される。
【００５１】
図８は、内部初期化に続いて、ＲＦスペクトル・センサ（ＲＦデータ・プロバイダ）３３２の、それのそれぞれのドライバを介しての列挙（enumeration）および登録を示す。ロバスト共存サービス３２０は、ＲＦデータ・プロバイダの動作（operation）パラメータ（たとえば、検出する帯域幅、チャネル検出シーケンス、検出間隔、その他）を選択して設定することができる。
【００５２】
やはり図８がわすように、ロバスト共存サービス３２０は、それぞれの要求している分類器（例えば、３４０）を登録し、それに、列挙されていたＲＦスペクトル・センサ／データ・プロバイダのリストを提供する。そのデータに応答して、データ分類モジュールは、リスト上の１つまたは複数のＲＦデータ・プロバイダに対する特定の登録要求を受け取る。アプリケーション登録およびリモート・ピア８００への接続も、図８に表してある。
【００５３】
図９は、ＲＦセンサ３３２からデータを受け取る際の、前記動作を反復している。上述のように、データは、適切に登録された分類器（例えば、３４０）に供給され、分類データが戻され、次いで適切に登録されたアプリケーション・プログラム３４２に送られる。対応する制御データを、リモート・ピア８００などの任意のリモート・ピアに伝えてもよく、ローカル・ピア・テーブルでは、本発明の協調プロトコルに従って、分類データに基づき、ローカル制御データが更新される。次いで、緩和情報（たとえば、分類データに基づいてロバスト共存サービス３２１によって計算されるか、分類データそれ自体）は、ネットワーク・パラメータの調整に使用するために、フィードバック・モジュールに送られて、上述のように、干渉問題が緩和される。
【００５４】
図１０は、たとえば、協調プロトコルに準ずる制御データとしてフォーマットされた分類データが、リモート・ピア８００から受け取られるときの動作を示す。図１０に表すように、このリモートで取得された分類データは、適切なアプリケーション・プログラム３４２またはＷＬＡＮミニ・ポート・ドライバ３３５（またはＷＬＡＮ  ＮＩＣ３３６）に送られ、これらは、処理したデータを使用してネットワーク・パラメータを動的に調節し、干渉問題を緩和する。本発明に従って、ピア・テーブルも更新される。
【００５５】
協調プロトコル
本発明の様々な態様によれば、協調プロトコルが、干渉情報を収容する制御データを含む、各ＲＣＳ可能システム間での情報交換のために提供され、それによって改良された無線体験がもたらされる。協調プロトコルは、ホーム・ネットワーク、企業ネットワーク、およびその他のコンピューティング環境において実行可能で、かつ拡張可能である。一般に、協調プロトコルは、ＲＣＳ可能システム・ノード間での制御データの交換を管理し、これはノード間での制御プレーン（control plane）を管理することとみなすことができる。上述のように、このプロトコルは、ピア発見、ピア情報交換、およびプロトコルを配信するのに使用されるトランスポート機構をバインド（binding）するための、構造／機構を提供する。
【００５６】
上記のように、ロバスト共存サービスは、ＲＦ干渉情報を収集するとともに、協調プロトコルと合わせて、かつアクセス・ポイントを有する通常の無線ネットワークにおいて、基本サービス・セット（ＢＳＳ：Basic Service Set）内で対応する制御データを交換する。この制御データは、その他のモジュールおよびアプリケーションに信号を送るのに使用して、その結果、干渉緩和動作を提示して、各ローカル受信システムにおいてその動作を実行することが可能となる。協調プロトコルの制御データを交換する経路は、現行ＲＦチャネル、現行スペクトル帯域内の別個のＲＦチャネル、ライセンスのない別の帯域内の完全に別個のチャネル（例えば、２．４ＧＨｚにおける８０２．１１ｇから５ＧＨｚにおける８０２．１１ａへ移動するか）のいずれかに割り当てたり、または「Use of Separate Control Channel to Mitigate Interference Problems in Wireless Networking」という名称の、関連する米国特許出願に記載されているように、場合によってはライセンスされたスペクトル帯域内のＲＦチャネルを選択することができる。３つのトランスポート・オプションは、スペクトルの拡張性とＲＣＳ可能システムの下位互換性（backward compatibility）をもたらし、これによってユーザは、たとえば、大量の干渉を受けているチャネルからより少ない干渉を受ける他のチャネルへＲＣＳ可能システムによって移行させることはできるが、別のライセンスなしのスペクトル帯域および／またはライセンスありの帯域へ移動させることはできない、古いデバイスを統合することが可能となる。
【００５７】
したがって、協調プロトコルを使用して、リモート（およびローカル）ピアは、それらの直近の（その時点における）環境についての電波干渉およびスペクトル詳細を提供することができる。重要なことは、１つのピアが、ローカルな干渉についてリモート・ピアに通知し、次いで、通知されたピアがこれを収集、使用して、干渉の緩和（動作）を開始できることである。
【００５８】
上述のように、干渉情報は、それがローカルに取得されようとリモートで取得されようとも、図１１においてピア・テーブル４８０Ａ〜４８０Ｃによって表されるように、各デバイス上でそれぞれのピア・テーブル４８０（図４）において維持されるレコードとしてフォーマットされる。ＲＦ干渉は、（すべてのノードによって類似の強度で観察される）ファー・フィールド（far-field）または（あるノードには観察され、他には観察されない）ニア・フィールド（near-field）である可能性がある。ニア・フィールドの場合には、受信側ノードにおける状態が、そのノードに直接送信しているノードに対して利用可能とされる。この情報は、ピア・テーブルに保持される。
【００５９】
ピア・テーブルのコンテンツ（例えば、４８０Ｃ）は、ローカル・ピアおよびリモート・ピアによって共有されて、あるノードからの送信を、主として受信側ノードにおける状態に基づいて修正する方法を決定するのに使用される。ロバスト共存サービスの様々な動作は、（詳細の度合いおよび時間において）様々なレベルの粒度（granularity）の環境データを収集すること、およびそれらをピアに対して利用可能にするように指示されている。
【００６０】
図１１に概要を表す一実装形態においては、ピア・テーブル４８０は、３つのレベルの粒度で、共存情報を収容し、その第１のレベル（レベル１）には、ノードＩＤ（ＭＡＣアドレス、物理的場所）、能力（ＷＰＡ／８０２．１１ｉ、伝送タイプａ／ｂ／ｇその他）、ＬＡＮ環境（現行ＢＳＳＩＤ、現行ＳＳＩＤ、現行チャネル、現行送信電力、現行信号強度ＲＳＳＩ）、（パケット損失、キュー長、および再送信の数などの）トラフィック・パラメータなどの、無線ノードに関する汎用情報を備える環境型情報が含まれる。
【００６１】
第２のレベル、レベル２は、干渉などの有無、などの粗いレベル（coarse level）における（通常はすべての）８０２．１１チャネルのための既知の帯域状態情報を含む。これは、８０２．１１ａ／ｂ／ｇ帯全体の概観と、さらにアプリケーション・プログラム内の緩和アルゴリズム、ＷＬＡＮ  ＭＰドライバまたはその他が、切り替えるべき帯域および／またはチャネル、および／または干渉を回避する別の方法、を決定することを可能にする十分な情報を提供する。この強化ＲＦ情報には、８０２．１１（ｋ）による無線計測および８０２．１１（ｈ）による電力調整情報を含めることができる。
【００６２】
第３のレベル、レベル３は、現在動作中の８０２．１１チャネルにおいて干渉源（interferer）があればその性質（nature）についての比較的詳細で具体的なチャネル条件情報を含む。そのような情報には、計測が行われた時間を指示するタイム・スタンプ、干渉源の性質、干渉源の周波数における位置、デューティ・サイクル、周期性、およびその他のタイプの検出または処理されたデータが含まれ、これらは、緩和動作を正確に特定するのに使用することのできる。
【００６３】
３つのレベル全体の情報は、常に利用可能である必要はないが、３つのレベルの情報が利用可能であるときに、ＲＣＳ緩和動作は、通常、最も効率的になる。しかしながら、緩和動作は、レベル１およびレベル２だけを使用して試みることも可能であり、レベル１だけが利用可能な場合でも、ある程度の緩和は可能である。
【００６４】
図１１に、異なる組のテーブル４８０Ａ〜４８０Ｃによって概略的に表してあるように、アクセス・ポイント環境において、各ＲＣＳの情報配信システムは、行１（Ｒ１）内のそのワン・ホップ（one-hop）ピアの制御データに加えて、そのシステムのそれぞれのピア・テーブルの行ゼロ（Ｒ０）にそれ自体の制御データ（共存情報）を保持する。緩和の目的では、どのノードもそれのワン・ホップまたはピアだけの知識を必要とする。したがって、この例ではアクセス・ポイントは、複数のピアを有するので、このアクセス・ポイントは、（行ゼロに）それ自体についての情報、および情報が既知である範囲、たとえば、ＲＣＳ可能デバイスに対して３つのレベルなどの範囲で完成した、各接続デバイスに対するレコードを保持する。アドホック・ネットワークにおいては、デバイスは互いに追跡し合う。以下のテーブルは、次のノード・タイプに対して維持される情報を記載する。
【００６５】
【表１】
2006186993.tif 000003
【００６６】
ＲＣＳの観点からは、任意のノード（例えば、ノードＡ）における制御データの第１の使用は、ノードＡ（送信ノード）において干渉があるかどうか、ワン・ホップ離れたノード（受信ノード）に干渉があるかどうか、および干渉がある場合には、ノードＡにおいてとるべき緩和動作を決定することである。第２には、制御データは、アクセス・ポイントのピア・テーブルに格納された情報にアクセスすることによって、その他のシステム機能で使用することができる。たとえば、そのような機能の非網羅的リストは、管理機能が含まれ、この管理機能は、メッシュ・ネットワークにおける、拡張サービスセット（ＥＳＳ）においてステーションが関連すべきアクセス・ポイント、最良マルチホップ経路、およびＱｏＳオプションおよび選択パラメータなどの追加情報、トラフィック負荷、場所情報、などの追加情報用の単一の拡張可能テーブルを提供する能力、を選択する。ここで、図１１に表すように、協調プロトコルは、最初の３つのレベルのデータに加えて、同じように、拡張データを維持して交換することも可能となることに留意されたい。
【００６７】
上述のようにロバスト共存サービスはＢＳＳ中心であり、したがって、ＩＢＳＳ（またはインフラストラクチャＢＳＳ）の形成は動作ノードを関連付けているので、別個のノード発見の必要はないが、能力発見（capability discovery）は制御データの交換の一部としてなお実行される。すなわち、ＲＣＳ可能システムがＷＬＡＮ  ＡＰを関連付けると、発見メッセージ交換を介して、他のＲＣＳ可能システムを探し始める。この交換の間に、協調プロトコルおよびこのプロトコルの交換のためのトランスポートが選択される。トランスポートの選択は、上記のように、ＩＰ層またはリンク層とすることができる。
【００６８】
図１２Ａおよび図１２Ｂに概要を表すように、協調プロトコル機構は、発見フェーズ中にネゴシエートされる。図１２Ａから分かるように、照会（query）および応答が交換されてこれらの機構が確立される。さらに、図１２Ｂに表すように、制御データが交換され、すなわち、他のそれぞれのノードＲ０情報が他方のノードに送られ、この他方のノードでは、それが行１（Ｒ１）情報として記録される。ここで留意すべきことは、アクセス・ポイントは行１（Ｒ１）にエントリを作成するように示してあるが、１つまたは複数のそれまでのピアからの制御データは行１で始まる行を既に取り込まれている可能性があるので、それ（行１の意味）は、次の利用可能な行であることに注意されたい。また、図１２Ｂには、定期ハートビート（heartbeat）情報の交換についても示してあり、これは制御データに付随する。すぐに分かるように、制御データに対する何らかの変更だけ（デルタ）を交換することもできるが、制御データは比較的小さく、単に制御データを供給することは重荷ではない。
【００６９】
この時点で、発見および設定は完了し、ＲＦスペクトルおよび干渉情報交換に関して、２つのピア間は定常状態に達している。図１３Ａおよび図１３Ｂに表されるように、ノードは接続されたままとなり、ハートビートが送られて検出される限り、それらのＲ０制御データを交換する。図示していないが、一方または両方のノードが、「ディスコネクト」を起動して、それによってＲＣＳ協調プロトコルセッションが終了し、それに応じてピア・テーブルを更新することができる。
【００７０】
このようにして、デバイスは、データ通信に対する干渉の影響を緩和する目的で、ピアと制御データを交換することができる。理解されるように、アドホック／メッシュ型ネットワークにおいては、ピア・テーブルを拡張して、複数ピアをサポートすることができる。ここで、受信データに１チャネルおよび送信に１チャネルなど、複数周波数上でデータが通信される可能性のある将来環境において、各周波数に関する制御データを別個に維持するために、異なるピア・テーブル（または追加のデータ）を使用することができる。
【００７１】
結論
前述の詳細な説明から分かるように、それによって無線ネットワークにおけるノードが制御データを交換し、それによって無線ネットワーク通信に対する干渉を回避するか、または干渉の影響を緩和することのできる、プロトコルが提供される。このプロトコルは、個々の可能なトランスポートの中からあるトランスポートを否定することを可能し、また制御データに関して異なるレベルの粒度を提供し、それによってデバイスがそれらの能力に基づいて異なるレベルの制御データを交換することができる。このプロトコルは、ローカルに検知されるデータおよびリモートで検知される干渉データに基づく緩和を可能とし、それによってＲＦ干渉の存在を含めて、改善された無線体験を提供する。
【００７２】
本発明は、様々な修正および代替構築を加えることができるが、そのいくつかの実施形態を、図面に示して詳細を上記で説明した。しかしながら、ここで理解すべきことは、開示した特定の形態に本発明を限定するものではなく、逆に、本発明は、本発明の趣旨と範囲に入るすべての修正形態、代替構築、および均等物を範囲に含めることを意図している。
【図面の簡単な説明】
【００７３】
【図１】本発明をそれに組み込むことのできる、コンピューティング環境を概略的に表すブロック図である。
【図２】本発明の多様な態様による、ロバスト共存サービスの複数のインスタンスを実行する複数の構成要素を含む、例示的な無線ネットワークを概略的に表すブロック図である。
【図３】本発明の多様な態様による、ロバスト共存サービスの複数のローカル処理構成要素に接続された複数の構成要素を概略的に表すブロック図である。
【図４】本発明の多様な態様による、ロバスト共存サービスの情報配信システムに接続されている複数の構成要素を概略的に表すブロック図である。
【図５】本発明の多様な態様による、いくつかの組のＲＦ関係情報を互いに伝達している、ロバスト共存サービスの２つのインスタンスを概略的に表すブロック図である。
【図６】本発明の多様な態様による、サービスの一方だけが１組の検知したＲＦ関係情報を有し、それを他方のサービスに伝達する、ロバスト共存サービスの２つの分離されたインスタンスを概略的に表すブロック図である。
【図７】本発明の多様な態様による様々なロバスト共存サービス動作の、例示的順序付けの表現を含む図である。
【図８】本発明の多様な態様による様々なロバスト共存サービス動作の、例示的順序付けの表現を含む図である。
【図９】本発明の多様な態様による様々なロバスト共存サービス動作の、例示的順序付けの表現を含む図である。
【図１０】本発明の多様な態様による様々なロバスト共存サービス動作の、例示的順序付けの表現を含む図である。
【図１１】本発明の多様な態様による、協調プロトコルによりフォーマット化された制御データをピア・テーブルに配置する方法を概略的に表すブロック図である。
【図１２Ａ】本発明の多様な態様による、協調プロトコルによるリモート・ピア発見動作の例示的順序付けの表現を含む図である。
【図１２Ｂ】本発明の多様な態様による、協調プロトコルによるリモート・ピア発見動作の例示的順序付けの表現を含む図である。
【図１３Ａ】本発明の多様な態様による、協調プロトコルによりピア・デバイス間で交換されている制御データの例示的順序付けの表現を含む図である。
【図１３Ｂ】本発明の多様な態様による、協調プロトコルによりピア・デバイス間で交換されている制御データの例示的順序付けの表現を含む図である。
【符号の説明】
【００７４】
１００    コンピューティング・システム環境
１１０    コンピュータ
１２０    処理ユニット
１２１    システム・バス
１３０    システム・メモリ
１３１    ＲＯＭ
１３２    ＲＡＭ
１３４    オペレーティング・システム
１３５    アプリケーション・プログラム
１３６    その他のプログラム・モジュール
１３７    プログラム・データ
１４０    固定型不揮発性メモリ・インターフェース
１４１    ハードディスク・ドライブ
１４４    オペレーティング・システム
１４５    アプリケーション・プログラム
１４６    その他のプログラム・モジュール
１４７    プログラム・データ
１５０    移動型不揮発性メモリ・インターフェース
１５１    磁気ディスク・ドライブ
１５２    不揮発性磁気ディスク
１５５    光学ディスク・ドライブ
１５６    不揮発性光学ディスク
１６０    ユーザ入力インターフェース
１６１    マウス
１６２    キーボード
１６３    マイク
１６４    タブレット
１７０    ネットワーク・インターフェース
１７１    ローカル・エリア・ネットワーク
１７２    モデム
１７３    ワイド・エリア・ネットワーク
１８０    リモート・コンピュータ（群）
１８１    記憶装置
１８５    リモート・アプリケーション・プログラム
１９０    ビデオ・インターフェース
１９１    モニタ
１９４    出力周辺インターフェース
１９５    スピーカ類
１９６    プリンタ
２００    例示的無線ネットワーク
２０２    ブロードバンド・モデム
２０４    アクセス・ポイント
２０６    メディア・センタ・コンピュータ・システム
２０８    ラップトップ・コンピュータ
２１０    その他の無線デバイス
２１２    メディア・センタ・エクステンダ
２１４    テレビジョン・モニタ
２１６    起こり得るＲＦ干渉源（群）
２２０    ロバスト共存サービス（ＲＣＳ）
３２１    ロバスト共存サービスのローカル処理システム
３３２    ＲＦスペクトル・センサ
３３３    ドライバ
３３４    ＲＦスペクトル・ゲート
３３５    ＷＬＡＮ    ＭＰ    ドライバ
３３６    ＷＬＡＮ    ＮＩＣ
３３８    ＮＤＩＳインターフェース層
３３９    ＬＡＮ    ＭＰドライバ
３４０    分類器（クラシファイア）
３４２    アプリケーション
３５０    ＲＣＳエンジン
３５２    データ（ＲＦ生データ）プロバイダ・モジュール
３５４    データ分類モジュール
３５６    消費モジュール
３５８    ＷＬＡＮフィードバック・モジュール
３６０    記憶装置
３６２    トリガ機構
４２１    ロバスト共存サービスの情報配信システム
４７０    ピア・プロセス
４７２    トランスポート・モジュール
４８０    ピア・テーブル
４８２    ピア発見
４８４    ピア・フィードバック
４８６    ピア通信プロトコル
４９０    ＩＰ層
４９２    ＴＣＰ／ＩＰ層
４９４    リンク層
５２０    ロバスト共存サービス
５３２    ＲＦスペクトル・アナライザ
５３３    ドライバ
５４０    分類器
５４２    アプリケーション
６２０    ロバスト共存サービス
６３２    ＲＦスペクトル・アナライザ
６３３    ドライバ
６４０    分類器
６４２    アプリケーション
８００    リモート・ピア
【図１】
2006186993.tif 000004
【図２】
2006186993.tif 000005
【図３】
2006186993.tif 000006
【図４】
2006186993.tif 000007
【図５】
2006186993.tif 000008
【図６】
2006186993.tif 000009
【図７】
2006186993.tif 000010
【図８】
2006186993.tif 000011
【図９】
2006186993.tif 000012
【図１０】
2006186993.tif 000013
【図１１】
2006186993.tif 000014
【図１２Ａ】
2006186993.tif 000015
【図１２Ｂ】
2006186993.tif 000016
【図１３Ａ】
2006186993.tif 000017
【図１３Ｂ】
2006186993.tif 000018
【外国語明細書】
2006186993000001.pdf