(57)【特許請求の範囲】
【請求項１】
タイムスロット化ネットワークにおいて差別化されたＱｏＳ（サービスの質）を提供する方法であって、
前記ネットワークを介する伝送に関する失敗確率を計算すること、
前記失敗確率のマップされた関数に従って、コンテンションウィンドウを算出するため目標値を算出すること、および
前記目標値のスケーリング関数に従って前記コンテンションウィンドウを変更し、前記スケーリングは、前記伝送の前記ＱｏＳに応じること
を含み、
前記コンテンションウィンドウを前記変更することは、前記伝送に関する新たなコンテンションウィンドウを算出することを含み、前記新たなコンテンションウィンドウは、ΔＣＷが、前のコンテンションウィンドウを変更する量を表し、ＣＷｔａｒｇが、目標コンテンションウィンドウを表し、ＣＷｃｕｒが、該前のコンテンションウィンドウを表し、Ｓが、前記スケーリング関数を表す、
【数１】
0004495721.tif 000007
に従って算出された変更を該前のコンテンションウィンドウに適用することによって算出される
ことを特徴とする方法。
【請求項２】
（１）前記コンテンションウィンドウに対する前の変更が増加であり、前記失敗確率が前の失敗確率より低い場合、および、（２）前記コンテンションウィンドウに対する前記前の変更が減少であり、前記失敗確率が前記前の失敗確率より高い場合、前記コンテンションウィンドウを変更することをさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
経時的な前記コンテンションウィンドウの繰り返される変更は、前記コンテンションウィンドウを前記目標値に収束させることを特徴とする請求項１に記載の方法。
【請求項４】
時間、および試みられた伝送の回数の１つまたは複数を含む所定のパラメータに従って、前記コンテンションウィンドウを前記変更することを繰り返すことをさらに含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記目標値は、ＣＳＭＡ／ＣＡ（搬送波感知多重アクセス／衝突回避方式）無線ローカルエリアネットワークＷＬＡＮに関する目標コンテンションウィンドウ値であることを特徴とする請求項１に記載の方法。
【請求項６】
前記目標値は、目標コンテンションウィンドウ値であり、前記失敗確率の前記マップされた関数は、前記伝送の前記ＱｏＳに応じて、前記目標コンテンションウィンドウ値をスケール変更することを特徴とする請求項１に記載の方法。
【請求項７】
前記ネットワーク用のネットワークドライバインターフェースから統計的データを取得することをさらに含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記ネットワークドライバインターフェースから取得される前記統計的データは、前記失敗確率を提供することを特徴とする請求項７に記載の方法。
【請求項９】
前記ネットワークドライバインターフェースから取得される前記統計的データは、統計エンジンが、前記失敗確率を算出することを可能にすることを特徴とする請求項７に記載の方法。
【請求項１０】
前記ネットワークは、ＩＥＥＥ（電気電子技術者協会）８０２．１１プロトコルに準拠するＷＬＡＮ（無線ローカルエリアネットワーク）であることを特徴とする請求項１に記載の方法。
【請求項１１】
前記失敗確率を前記計算することは、前記失敗確率を平滑化することをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１２】
前記平滑化することは、Ｐｍｅａｓｕｒｅｄが、測定された失敗確率を表し、αが、平滑化係数を表す、Ｐ（ｎ）＝αＰ（ｎ−１）＋（１−α）Ｐｍｅａｓｕｒｅｄ（ｎ）によることを特徴とする請求項１１に記載の方法。
【請求項１３】
無線タイムスロット化ネットワークにおいて公平性を確実にする方法であって、
前記ネットワークを介して伝送することに関する失敗確率を計算すること、
前記失敗確率を、伝送に関する差別化されたＱｏＳ（サービスの質）に応じた範囲の目標コンテンションウィンドウ値にマップすることにより、コンテンションウィンドウに対する変更を算出するための目標コンテンションウィンドウ値を算出すること、
所定の回数の試みられた伝送の後の前記コンテンションウィンドウに対する前記算出された変更、および１つまたは複数の公平性メトリックに従って、伝送のための前記コンテンションウィンドウを繰り返し変更すること、
を含み、
前記公平性メトリックは、（１）前記コンテンションウィンドウに対する前の変更が増加であり、前記失敗確率が前の失敗確率より低い場合、および、（２）前記コンテンションウィンドウに対する前記前の変更が減少であり、前記失敗確率が前記前の失敗確率より高い場合を特定することを含む
ことを特徴とする方法。
【請求項１４】
Ｐｍｅａｓｕｒｅｄが、測定された失敗確率を表し、αが、平滑化係数を表す、Ｐ（ｎ）＝αＰ（ｎ−１）＋（１−α）Ｐｍｅａｓｕｒｅｄ（ｎ）に従って前記失敗確率を平滑化することをさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１５】
タイムスロット化ネットワークにおいて差別化されたＱｏＳ（サービスの質）を提供する方法を実行するコンピュータ実行可能命令を有するコンピュータ読み取り可能記憶媒体であって、
前記方法が、
前記ネットワークを介する伝送に関する失敗確率を計算すること、
前記失敗確率のマップされた関数に従ってコンテンションウィンドウを算出するための目標値を算出すること、および
前記目標値のスケーリング関数に従って前記コンテンションウィンドウを変更し、前記スケーリングは、前記伝送の前記ＱｏＳに応じること
を含み、
前記コンテンションウィンドウを前記変更することは、前記伝送に関する新たなコンテンションウィンドウを算出することをさらに含み、前記新たなコンテンションウィンドウは、ΔＣＷが、前のコンテンションウィンドウを変更する量を表し、ＣＷｔａｒｇが、目標コンテンションウィンドウを表し、ＣＷｃｕｒが、該前のコンテンションウィンドウを表し、Ｓが、前記スケーリング関数を表す
【数２】
0004495721.tif 000008
に従って算出された変更を該前のコンテンションウィンドウに適用することによって算出される
ことを特徴とするコンピュータ読み取り可能記憶媒体。
【請求項１６】
前記方法は、（１）前記コンテンションウィンドウに対する前の変更が増加であり、前記失敗確率が前の失敗確率より低い場合、および、（２）前記コンテンションウィンドウに対する前記前の変更が減少であり、前記失敗確率が前記前の失敗確率より高い場合、前記コンテンションウィンドウを変更することをさらに含むことを特徴とする請求項１５に記載のコンピュータ読み取り可能記憶媒体。
【請求項１７】
経時的な前記コンテンションウィンドウの繰り返される変更は、前記コンテンションウィンドウを前記目標値に収束させることを特徴とする請求項１５に記載のコンピュータ読み取り可能記憶媒体。
【請求項１８】
前記方法は、時間、および試みられた伝送の回数の１つまたは複数を含む所定のパラメータに従って、前記コンテンションウィンドウを前記変更することを繰り返すことをさらに含むことを特徴とする請求項１５に記載のコンピュータ読み取り可能記憶媒体。
【請求項１９】
前記目標値は、ＣＳＭＡ／ＣＡ（搬送波感知多重アクセス／衝突回避方式）無線ローカルエリアネットワークＷＬＡＮに関する目標コンテンションウィンドウ値であることを特徴とする請求項１５に記載のコンピュータ読み取り可能記憶媒体。
【請求項２０】
前記目標値は、目標コンテンションウィンドウ値であり、前記失敗確率の前記マップされた関数は、前記伝送の前記ＱｏＳに応じて、前記目標コンテンションウィンドウ値をスケール変更することを特徴とする請求項１５に記載のコンピュータ読み取り可能記憶媒体。
【請求項２１】
前記ネットワーク用のネットワークドライバインターフェースから統計的データを取得することをさらに含むことを特徴とする請求項１５に記載のコンピュータ読み取り可能記憶媒体。
【請求項２２】
前記ネットワークドライバインターフェースから取得される前記統計的データは、前記失敗確率を提供することを特徴とする請求項２１に記載のコンピュータ読み取り可能記憶媒体。
【請求項２３】
前記ネットワークドライバインターフェースから取得される前記統計的データは、統計エンジンが、前記失敗確率を算出することを可能にすることを特徴とする請求項２１に記載の方法。
【請求項２４】
前記失敗確率を前記計算することは、前記失敗確率を平滑化することをさらに含むことを特徴とする請求項１５に記載のコンピュータ読み取り可能記憶媒体。
【請求項２５】
前記平滑化することは、Ｐｍｅａｓｕｒｅｄが、測定された失敗確率を表し、αが、平滑化係数を表す、Ｐ（ｎ）＝αＰ（ｎ−１）＋（１−α）Ｐｍｅａｓｕｒｅｄ（ｎ）によることを特徴とする請求項２４に記載のコンピュータ読み取り可能記憶媒体。
【請求項２６】
無線タイムスロット化ネットワークにおいて公平性を確実にする方法を実行するコンピュータ実行可能命令を有するコンピュータ読み取り可能記憶媒体であって、
前記方法が、
前記ネットワークを介して伝送することに関する失敗確率を計算すること、
前記失敗確率を、伝送に関する差別化されたＱｏＳ（サービスの質）に応じた範囲の目標コンテンションウィンドウ値にマップすることにより、コンテンションウィンドウに対する変更を算出するための目標コンテンションウィンドウ値を算出すること、
所定の回数の試みられた伝送の後の前記コンテンションウィンドウに対する前記算出された変更、および１つまたは複数の公平性メトリックに従って、伝送のための前記コンテンションウィンドウを繰り返し変更すること
を含み、
前記公平性メトリックは、（１）前記コンテンションウィンドウに対する前の変更が増加であり、前記失敗確率が前の失敗確率より低い場合、および、（２）前記コンテンションウィンドウに対する前記前の変更が減少であり、前記失敗確率が前記前の失敗確率より高い場合を特定することを含む
ことを特徴とするコンピュータ読み取り可能記憶媒体。
【請求項２７】
Ｐｍｅａｓｕｒｅｄが、測定された失敗確率を表し、αが、平滑化係数を表す、Ｐ（ｎ）＝αＰ（ｎ−１）＋（１−α）Ｐｍｅａｓｕｒｅｄ（ｎ）に従って前記失敗確率を平滑化することをさらに含むことを特徴とする請求項２６に記載のコンピュータ読み取り可能記憶媒体。
【請求項２８】
無線タイムスロット化ネットワークにおいて公平性を確実にすることができる無線デバイスであって、
前記無線タイムスロット化ネットワークに対して信号を送受信するように構成されたＮＩＣ（ネットワークインターフェースカード）と、
前記無線タイムスロット化ネットワークに関する統計的パラメータを提供するように構成された、前記ＮＩＣに結合されたネットワークドライバインターフェースと、
ネットワーク統計を監視するように構成された、前記ネットワークドライバインターフェースに結合されたネットワークモニタと、
前記統計的パラメータを受け取り、前記統計的パラメータに対して演算を実行して、１つまたは複数の確率を算出するように構成された、少なくとも前記ネットワークモニタに結合された統計エンジンと、
前記１つまたは複数の確率のマップされた関数に従ってコンテンションウィンドウを算出するための目標値を算出して、前記バックオフ期間の変更を可能にするように構成された、前記統計エンジンおよび前記ネットワークドライバインターフェースの１つまたは複数に結合された適応パラメータエンジンと
を備え、
前記コンテンションウィンドウを前記算出することは、前記伝送に関する新たなコンテンションウィンドウを算出することを含み、前記新たなコンテンションウィンドウは、ΔＣＷが、前のコンテンションウィンドウを変更する量を表し、ＣＷｔａｒｇが、目標コンテンションウィンドウを表し、ＣＷｃｕｒが、該前のコンテンションウィンドウを表し、Ｓが、前記スケーリング関数を表す、
【数１】
0004495721.tif 000009
に従って算出された変更を該前のコンテンションウィンドウに適用することによって算出される
ことを特徴とする無線デバイス。
【請求項２９】
前記適応パラメータエンジンは、前記目標値のスケーリング関数を適用するようにさらに構成され、前記スケーリングは、前記ネットワーク全体で伝送を行うための差別化されたＱｏＳ（サービスの質）に応じることを特徴とする請求項２８に記載の無線デバイス。
【請求項３０】
前記ネットワークモニタは、オペレーティングシステムの一部であり、カーネルモードで実行されるように構成されることを特徴とする請求項２８に記載の無線デバイス。
【請求項３１】
前記ネットワークモニタは、オペレーティングシステム要件に応じたオブジェクトとして前記統計的パラメータを受け取る、クラスベースのモジュールとして動作するように構成されることを特徴とする請求項２８に記載の無線デバイス。
【請求項３２】
前記適応パラメータエンジンは、前記ネットワークドライバインターフェースによって保持される、ＭＡＣ（メディアアクセス制御）レイヤに関する新たなパラメータを算出して、ＱｏＳ（サービスの質）の差別化を提供するようにさらに構成されることを特徴とする請求項２８に記載の無線デバイス。
【請求項３３】
無線タイムスロット化ネットワークにおいて公平性を確実にすることができるコンピュータシステムであって、
プロセッサと、
前記プロセッサに結合されたメモリと、
前記無線タイムスロット化ネットワークに対して信号を送受信するように構成された、前記プロセッサに結合されたＮＩＣ（ネットワークインターフェースカード）と、
前記無線タイムスロット化ネットワークに関する統計的パラメータを提供するように構成された、前記ＮＩＣに結合されたネットワークドライバインターフェースと、
ネットワーク統計を監視するように構成された、前記ネットワークドライバインターフェースに結合されたネットワークモニタと、
前記統計的パラメータを受け取り、前記統計的パラメータに対して演算を実行して、１つまたは複数の確率を算出するように構成された、少なくとも前記ネットワークモニタに結合された統計エンジンと、
前記１つまたは複数の確率のマップされた関数に従ってコンテンションウィンドウを算出するための目標値を算出して、前記コンテンションウィンドウの変更を可能にするように構成された、前記統計エンジンおよび前記ネットワークドライバインターフェースの１つまたは複数に結合された適応パラメータエンジンであって、（１）前記コンテンションウィンドウに対する前の変更が増加であり、前記失敗確率が前の失敗確率より低い場合、および、（２）前記コンテンションウィンドウに対する前記前の変更が減少であり、前記失敗確率が前記前の失敗確率より高い場合に前記コンテンションウィンドウを変更する適応型パラメータエンジンと、
を含むことを特徴とするコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、コンピュータシステムに関し、より詳細には、コンピュータシステムおよびコンピュータデバイスのサービスの質の差別化に関する。
【背景技術】
【０００２】
無線ネットワークは、ますます普及している。無線ネットワークが普及するにつれ、ユーザは、音声通信サポート、ビデオ通信サポート、およびデータ通信サポートなどの、より広範なカバレッジ（coverage）も無線ネットワークに要求している。無線ネットワークに対してより広範な要求が行われるにつれ、差別化されたサービスのためにより複雑な機構が要求される。例えば、より高い優先順位を有するユーザに、より低い優先順位のユーザよりも高い帯域幅が保証される必要がある。残念ながら、ＩＥＥＥ８０２．１１プロトコルなどのＷＬＡＮ（無線ローカルエリアネットワーク）プロトコルは、ＱｏＳ（サービスの質）サポートを伴わないベストエフォート（best-effort）データ通信向けに設計されている。
【０００３】
現行の８０２．１１プロトコルは、ＣＳＭＡ／ＣＡ（搬送波感知多重アクセス／衝突回避方式）プロトコルに基づくＤＣＦ（分散調整機能）を提供するＭＡＣ（メディアアクセス制御）レイヤを有する。ＣＳＭＡ／ＣＡプロトコルによれば、パケット伝送は、２回の待機期間の後に行われる。第１に、ＤＩＦＳ（ＤＣＦフレーム間隔）期間と呼ばれる第１の待機期間にわたって、チャネルがアイドルであることが検出される。第２の待機期間は、ランダムな期間である、追加のバックオフ期間である。
【０００４】
ＭＡＣレイヤプロトコルが、コンテンションウィンドウ（contention window）に応じて、バックオフ期間を設定する。ＣＷ（コンテンションウィンドウ）は、ランダムなバックオフ期間を選択することができる、ある範囲の値である。具体的には、伝送前に、バックオフ期間が、０からＣＷまでの範囲内のランダムな値を見出すことによって計算される。その場合、バックオフ期間は、ランダムな値、Ｂａｃｋｏｆｆ＝Ｒａｎｄ（０，ＣＷ）＊Ｔｓｌｏｔを使用して計算される。Ｔｓｌｏｔは、スロット時間を表す。アイドルなＤＩＦＳの後に続く時間がスロット化され、伝送は、スロットの先頭でだけ行われる。バックオフ期間を使用して、バックオフ手続きが初期設定される。チャネルがアイドルである場合、タイマは減らされる。別の伝送が検出された場合、タイマは停止される。ＤＩＦＳより長い期間にわたってチャネルがアイドルであるたびに、バックオフタイマが、各スロット時間ごとに１回、定期的に減少される。伝送の試みが不成功であった場合、ＣＷは、ＣＷの所定の最大値に達するまで、２倍にされる。このように、ＣＷは、パケット伝送を試みる前に、ランダムなバックオフ期間を算出するのに使用される。ＩＥＥＥ８０２．１１プロトコルに関するＭＡＣレイヤにおいて、パラメータは、すべてのタイプのトラフィックに関して同一であるように設定される。詳細には、伝送の開始時に、初期コンテンションウィンドウ（ＣＷｍｉｎ）が、各フローに関して３１に設定され、ＱＩＦＳ（ＱｏＳフレーム間隔）も同様に、すべてのユーザに関してＤＩＦＳ期間に設定される。その結果、各デバイスは、まったく同じように扱われ、サービスの差別化はまったく利用できない。サービスの差別化の欠如のため、様々なＱｏＳ要件を有するマルチメディアタイプのトラフィック、およびいずれのリアルタイムトラフィックのパフォーマンスも、現行のＷＬＡＮシステムにおいては、不十分である。本開示では、明記しない場合、コンテンションウィンドウは、ＣＷｍｉｎを表す。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
したがって、方法、無線デバイス、およびコンピュータシステムは、分散ベースでＭＡＣ（メディアアクセス制御）レイヤパラメータを適応更新（adaptive update）することにより、差別化されたＱｏＳ（サービスの質）を提供する。
【課題を解決するための手段】
【０００６】
方法は、ネットワークを介する伝送の失敗確率（failure probability）を計算すること、失敗確率のマップされた関数に応じてコンテンションウィンドウを算出するための目標値を算出すること、および、目標値のスケーリング関数に応じてコンテンションウィンドウを変更することを含む。目標値のマップされた関数とスケーリング関数はともに、伝送に関するＱｏＳの差別化を提供することができる。実施形態では、方法は、（１）コンテンションウィンドウに対する前の変更が増加であり、失敗確率が前の失敗確率より低い場合、および（２）コンテンションウィンドウに対する前の変更が減少であり、失敗確率が前の失敗確率より高い場合にだけ、コンテンションウィンドウを変更することが行われるように規定することにより、ユーザ間の公平性を可能にする。
【０００７】
方法は、所定の回数の伝送が試みられるたびに実行されることが可能である。したがって、方法を数回繰り返した後、コンテンションウィンドウは目標値に収束する。
【０００８】
別の実施形態は、無線タイムスロット化ネットワーク（wireless time slotted network）において、公平性を確実にすることができる無線デバイスを対象とする。無線デバイスは、無線タイムスロット化ネットワークと信号を送受信するように構成されたＮＩＣ（ネットワークインターフェースカード）と、ＮＩＣに結合されて、無線タイムスロット化ネットワークに関する統計的パラメータを提供するネットワークドライバインターフェースと、ネットワークドライバインターフェースに結合されて、ネットワーク統計を監視するネットワークモニタと、少なくともネットワークモニタに結合されて、統計的パラメータを受け取り、統計的パラメータに対する演算を実行して、１つまたは複数の確率を算出する統計エンジンと、コンテンションウィンドウの変更を可能にするために、１つまたは複数の確率のマップされた関数に応じてコンテンションウィンドウを算出するための、目標値を算出するための適応パラメータエンジンとを含む。
【０００９】
適応パラメータエンジンは、差別化されたＱｏＳ（サービスの質）に応じて、目標値のスケーリング関数をネットワーク上の伝送に適用する。より詳細には、適応パラメータエンジンは、ネットワークドライバインターフェースによって保持される、ＭＡＣ（メディアアクセス制御）レイヤに関する新たなパラメータを算出して、ＱｏＳ（サービスの質）の差別化を提供する。
【００１０】
本発明のさらなる特徴および利点は、添付の図を参照して行う、例示的な諸実施形態の以下の詳細な説明から明白となろう。
【００１１】
添付の特許請求の範囲は、本発明の特徴を詳細に記載するが、本発明は、本発明の目的および利点とともに、添付の図面と併せて解釈される以下の詳細な説明からよく理解することができる。
【発明を実施するための最良の形態】
【００１２】
同様の符号が同様の要素を指す図面を参照すると、本発明が、適切なコンピューティング環境において実装されているのが示されている。必須ではないが、本発明は、パーソナルコンピュータによって実行されるプログラムモジュールなどの、コンピュータ実行可能命令の一般的な文脈で説明される。一般に、プログラムモジュールには、特定のタスクを実行する、または特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。さらに、本発明は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースの家庭用電化製品またはプログラマブル家庭用電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータなどを含む、他のコンピュータシステム構成を使用して実施してもよいことが、当業者には理解されよう。本発明は、通信ネットワークを介してリンクされたリモート処理装置によってタスクが実行される、分散コンピューティング環境において実施することもできる。分散コンピューティング環境では、プログラムモジュールは、ローカルメモリ記憶装置とリモートメモリ記憶装置の両方の中に配置することができる。
【００１３】
図１は、本発明を実施することができる適切なコンピューティングシステム環境１００の実施例を示す。コンピューティングシステム環境１００は、適切なコンピューティング環境の一実施例に過ぎず、本発明の用法または機能の範囲について何ら限定を示唆することも意図しない。また、コンピューティング環境１００が、典型的な動作環境１００に例示したコンポーネントのいずれの１つ、または組合せに関連する依存関係または要件も有すると解釈してはならない。
【００１４】
本発明は、他の多数の汎用または専用のコンピューティングシステム環境またはコンピューティングシステム構成で動作する。本発明で使用するのに適する可能性がある、周知のコンピューティングシステム、コンピューティング環境、および／またはコンピューティング構成の例には、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはラップトップデバイス、タブレットデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラマブル家庭用電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、以上のシステムまたはデバイスなどのいずれかを含む分散コンピューティング環境が含まれるが、以上には限定されない。
【００１５】
本発明は、コンピュータによって実行されるプログラムモジュールなどの、コンピュータ実行可能命令の一般的な文脈で説明することができる。一般に、プログラムモジュールには、特定のタスクを実行する、または特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。本発明は、通信ネットワークを介してリンクされたリモート処理装置によってタスクが実行される、分散コンピューティング環境において実施することもできる。分散コンピューティング環境では、プログラムモジュールは、ローカルコンピュータ記憶媒体および／またはリモートコンピュータ記憶媒体の中に配置することができる。
【００１６】
本発明は、プロセッサによって実行されるプログラムモジュールなどの命令を使用して、携帯電話、ハンドヘルドデバイス、無線監視デバイス、マイクロプロセッサベースのプログラマブル家庭用電化製品などを含め、様々なタイプのマシンを使用するシステムにおいて実施することができる。一般に、プログラムモジュールには、特定のタスクを実行する、または特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。「プログラム」という用語には、１つまたは複数のプログラムモジュールが含まれる。
【００１７】
図１は、本発明の１つまたは複数の実施形態を実施するための、典型的なコンピューティングデバイス１００を示す。最も基本的な構成では、コンピューティングデバイス１００は、少なくとも１つの処理装置１０２と、メモリ１０４とを含む。コンピューティングデバイスの厳密な構成およびタイプによって、メモリ１０４は、揮発性（ＲＡＭなど）であることも、不揮発性（ＲＯＭ、フラッシュメモリなど）であることも、その２つの組合せであることも可能である。基本的な構成は、図１に破線１０６で示される。さらに、デバイス１００は、追加の特徴／機能も有することが可能である。例えば、デバイス１００は、磁気または光学のディスクまたはテープを含むが、以上には限定されない、追加の記憶装置（取り外し可能な記憶装置および／または取り外し不可能な記憶装置）も含むことが可能である。そのような追加の記憶装置を、図１に、取り外し可能な記憶装置１０８および取り外し不可能な記憶装置１１０で示す。コンピュータ記憶媒体には、コンピュータ読み取り可能命令、データ構造、プログラムモジュール、またはその他のデータなどの情報の記憶のために任意の方法または技術で実装された、揮発性媒体および不揮発性媒体、取り外し可能な媒体および取り外し不可能な媒体が含まれる。メモリ１０４、取り外し可能な記憶装置１０８、および取り外し不可能な記憶装置１１０はすべて、コンピュータ記憶媒体の例である。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤＲＯＭ、ＤＶＤ（デジタルバーサタイルディスク）または他の光学式記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、あるいは所望の情報を格納するのに使用することができ、デバイス１００がアクセスすることができる他の任意の媒体が含まれるが、以上には限定されない。いずれのそのようなコンピュータ記憶媒体も、デバイス１００の一部であることが可能である。
【００１８】
デバイス１００は、デバイスが他のデバイスと通信することを可能にする、１つまたは複数の通信接続１１２も含むことが可能である。通信接続１１２は、通信媒体の実施例である。通信媒体は、通常、搬送波などの被変調データ信号、または他のトランスポート機構で、コンピュータ読み取り可能命令、データ構造、プログラムモジュール、またはその他のデータを実装し、あらゆる情報送達媒体を含む。「被変調データ信号」という用語は、信号内に情報を符号化するような形で、特性の１つまたは複数が設定または変更されている信号を意味する。例として、限定としてではなく、通信媒体には、有線ネットワークまたは直接有線接続などの有線媒体、ならびに音響媒体、無線周波数（RF）媒体、赤外線媒体、およびその他の無線媒体などの無線媒体が含まれる。前述したとおり、本明細書で使用するコンピュータ読み取り可能記憶媒体には、記憶媒体と通信媒体がともに含まれる。
【００１９】
デバイス１００は、キーボード、マウス、ペン、音声入力装置、タッチ入力装置などの、１つまたは複数の入力装置１１４も有することが可能である。ディスプレイ、スピーカ、プリンタなどの、１つまたは複数の出力装置１１６も含まれることが可能である。これらすべてのデバイスは、当技術分野で周知であり、本明細書でより詳細に説明する必要はない。
【００２０】
本発明の意図される用途に合わせて、デバイス１００は、無線携帯装置として構成される。そのために、デバイス１００は、バッテリパック、燃料電池などの、携帯電源１２０を備える。電源１２０は、デバイス１００による計算および無線データ伝送のための電力を供給する。
【００２１】
次に、図２を参照すると、無線コンピューティングデバイス１００は、様々な種類の無線ネットワークと無線通信するためのＮＩＣ（ネットワークインターフェースカード）２０１をさらに含む。ＮＩＣ２０１は、適切な周波数チャネルを介してデータを無線で送信するためにアンテナ２０２に結合された、送信機１２２を含む。受信機１２６も、ネットワークから無線送信された通信パケットを受信するために、アンテナ２０２に結合される。ネットワークインターフェースモジュール２０１およびアンテナ２０２は、図１の通信接続１１２の一部である。一実施形態では、ネットワークインターフェースカード２０１は、ＩＥＥＥ８０２．１１無線接続を介する無線構成サービスを使用して、インフラストラクチャネットワークおよびアドホックネットワークを含む、ネットワーク構成を容易にする。典型的なネットワークインターフェースカードは、ＰＣＭＣＩＡ無線カードである。ネットワークインターフェースカードのインターフェースタイプおよび物理的構成は、本発明に重要ではないことが理解されよう。例えば、インターフェースタイプは、ＰＣＩタイプまたは別のタイプであることが可能であり、ネットワークインターフェースモジュールは、別個のカード上に存在する必要はない。ネットワークインターフェースモジュールは、コンピュータのマザーボード上に含まれること、またはもしかすると、将来、プロセッサに組み込まれることさえ可能である。
【００２２】
無線ネットワークインターフェースカードを介して、無線コンピューティングデバイス１００は、様々な種類の無線ネットワークと通信することができる。例えば、図２の例示した環境では、無線デバイス１００は、インフラストラクチャネットワーク２３０に、ネットワーク２３０のアクセスポイント２３１を介して、無線で接続されることが可能である。無線デバイス１００は、無線デバイス２２１、２２２、および２２３などの他の無線デバイスを含む、アドホックネットワークとも呼ばれる、ピアツーピアネットワーク２２０の一部であることも可能である。インフラストラクチャネットワークのアクセスポイント２３１またはアドホックネットワーク２２０のいずれかに接続する前に、無線デバイス１００は、プローブ（probe）要求を送信し、アクセスポイントまたは他のデバイスによって送信される、プローブ応答信号をスキャンすることによって、定期的に能動的にスキャンすることにより、ネットワークに属するデバイスを探索する状態にあることが可能である。代替として、無線デバイス１００は、アクセスポイントによって送信されるビーコン（beacon）を探してスキャンすることにより、受動的に探索を行うこともできる。
【００２３】
ＮＤＩＳ（ネットワークドライバインターフェース仕様）インターフェース２０３が、ネットワークインターフェースカード２０１の動作を制御する。ネットワークドライバインターフェース２０３は、無線デバイス１００のオペレーティングシステムの一部であるか、または無線デバイス１００上で実行される、別個の実行可能プログラムである。本発明の諸実施形態によれば、典型的なＮＤＩＳインターフェース２０３は、ＩＥＥＥ８０２．１１仕様に準拠し、送信機１２２および受信機１２６を介して送受信されるネットワークトラフィックに関する統計的データを含む。
【００２４】
ＮＤＩＳインターフェース２０３は、本明細書で説明する１つまたは複数の方法を実施するのに役立つオブジェクトを提供する。例えば、ＮＤＩＳインターフェースを介して利用可能なメトリック（metrics）の１つが、OBJ_802_11_STATISTICSという名前のオブジェクトである。このオブジェクトは、衝突確率を算出するのに役立つ統計を提供する。
【００２５】
【表１】
0004495721.tif 000002
【００２６】
ＮＤＩＳインターフェース２０３からのパラメータに関して、「TransmittedFragmentCount」は、ＮＩＣ（ネットワークインターフェースカード）が伝送するのに成功したデータフラグメントおよび管理フラグメントの数を与える。「MulticastTransmittedFrameCount」は、ＮＩＣが、マルチキャストまたはブロードキャストによって伝送したフレームの数を与える。マルチキャストカウントは、伝送されるフレームの宛先ＭＡＣアドレスの中で、マルチキャスト／ブロードキャストビットが設定されるたびに増分される。
【００２７】
「FailedCount」は、ショートフレーム再試行限度、またはロングフレーム再試行限度を超えた後に失敗した、ＮＩＣフレーム伝送の数を与える。
【００２８】
「RetryCount」は、１回または複数回の再伝送の試みの後、ＮＩＣが再伝送することに成功したフレームの数を与える。
【００２９】
「MultipleRetryCount」は、１回または複数回の再伝送の試みの後、ＮＩＣが再伝送することに成功したフレームの数を与える。
【００３０】
「RTSSuccessCount」は、ＮＩＣが、応答としてＣＴＳ（「送信可（clear to send）」）を受信した回数を与える。
【００３１】
「RTSFailureCount」は、ＮＩＣが、ＲＴＳ（「送信要求（request to send）」）に対する応答として、ＣＴＳを受信しなかった回数を与える。
【００３２】
「ACKFailureCount」は、ＮＩＣが、受信されなかったＡＣＫ（確認応答）を予期した回数を与える。
【００３３】
「FrameDuplicateCount」は、受信された重複フレームの数を与える。フレームの中のシーケンス制御フィールドが、重複フレームを明らかにする。
【００３４】
「ReceivedFragmentCount」は、ＮＩＣが受信することに成功したデータフラグメントおよび管理フラグメントの数を与える。ReceivedFragmentCountは、データフラグメントまたは管理フラグメントが受信されるたびに増分される。
【００３５】
「MulticastReceivedFrameCount」は、マルチキャストまたはブロードキャストに設定されていた受信フレームの数を与える。MulticastReceivedFrameCountは、ＮＩＣが、宛先ＭＡＣアドレスの中でマルチキャスト／ブロードキャストビットが設定されているフレームを受信するたびに増分される。
【００３６】
「FCSErrorCount」は、ＮＩＣが受信した、ＦＣＳ（フレームチェックシーケンス）エラーを含んでいたフレームの数を与える。
【００３７】
実施形態によれば、ネットワークモニタ２０４が、ＮＤＩＳインターフェース２０３に結合されて、１つまたは複数の統計的パラメータを受け取る。ネットワークモニタ２０４は、オペレーティングシステムの一部であることが可能であり、カーネルモードで実行される。さらに、ネットワークモニタ２０４は、オペレーティングシステム要件の範囲内に合うオブジェクトとして統計的パラメータを受け取る、クラスベースのモジュールとして動作することができる。以下により詳細に説明するとおり、統計エンジン２０６が、統計パラメータを受け取り、そのパラメータに対して演算を実行して、衝突確率などの確率を算出する。確率は、ＮＤＩＳインターフェース２０３によって保持される、ＭＡＣ（メディアアクセス制御）レイヤに関する新たなパラメータを算出して、ＱｏＳ（サービスの質）の差別化を提供するために、適応パラメータエンジン２０８に伝送される。
【００３８】
次に、図３を図２と併せて参照すると、流れ図が、ＷＬＡＮ（無線ローカルエリアネットワーク）においてＱｏＳの差別化を提供することを対象とする実施形態を示している。流れ図は、ＷＬＡＮのＩＥＥＥ（電気電子技術者協会）８０２．１１インプリメンテーションのＭＡＣ（メディアアクセス制御）レイヤに関する適応を対象とする。
【００３９】
ＩＥＥＥ８０２．１１プロトコルは、ＣＳＭＡ／ＣＡ（搬送波感知多重アクセス／衝突回避方式）プロトコルに基づくＤＣＦ（分散調整機能）を提供する。リアルタイムのデータフローに関してなど、チャネルを流れるデバイスパケットまたはデバイスフローの間でサービスの差別化が要求される場合、チャネルリソースを公平に、および効率的に共用する方法が必要とされる。実施形態によれば、図３に示した方法が、各デバイスまたは所定のデータフローに関して要求されるＱｏＳに応じてコンテンションウィンドウを変更する更新を、ＣＷ（コンテンションウィンドウ）に与える。この実施形態によれば、バックオフ期間は、Ｔｂａｃｋｏｆｆ＝Ｒａｎｄ（０，（ＣＷ±ΔＣＷ）＊２ｉ）＊Ｔｓｌｏｔを使用して計算される。ｉは、バックオフステージである。
【００４０】
方法は、ＣＷを算出するための適応方法も提供する。適応方法が望ましいのは、ＣＷに関するサイズ制限が、チャネルを介して試みられる伝送の回数の関数として、ＷＬＡＮシステム効率に影響を与えるからである。チャネルが混んでいる場合、つまり、伝送を試みるデバイスでチャネルがビジーである場合、小さい固定のＣＷ値は、すべてのデバイスが伝送するには小さ過ぎる期間の機会をもたらす。小さい固定のＣＷは、スペクトル効率を浪費する衝突をもたらす。ＣＷの増加により、衝突確率が低くなる。また、待機の時間費用は、衝突の費用にバックオフ期間を足したものより、はるかに小さい。ただし、ＷＬＡＮシステムが少数のデバイスしか含まない場合、衝突確率は極めて低い。したがって、大き過ぎるＣＷ値は、デバイスがフレームを伝送するのに、不必要に待つことを要求する。ＣＷの減少により、データ伝送が促進され、システムスループットが増加する。したがって、任意の所与の時点におけるデバイスの数、および衝突の可能性に依存して、効率的な伝送のための適切なＣＷは、時とともに変化する可能性がある。したがって、適応ＣＷ計算が好ましい。
【００４１】
デバイスごとの算出、またはフローごとの算出についての適応ＣＷ計算は、ＷＬＡＮに関する分散タイプの制御として実施することができる。分散制御システムは、集中制御システムより好ましい。というのは、集中制御システムは、ＡＰ（アクセスポイント）が、ネットワークに関する情報を特定することを要求し、現行のＩＥＥＥ８０２．１１ＤＣＦに不適合だからである。これに対して、分散制御システムは、現行のＩＥＥＥ８０２．１１ＤＣＦに適合する。
【００４２】
図示した方法は、ユーザコンピュータ内で分散ベースで実施される。図３に示すとおり、ブロック３１０は、所定の秒数Ｔごとに、または別の所定の時間ごとに行われることが可能な、方法の開始を明らかにする。
【００４３】
判定ブロック３２０が、試みられた伝送の回数が、所定の閾値より小さいかどうかを判定することを提供する。より詳細には、ネットワークモニタ２０４が、ＮＤＩＳインターフェース２０３のパラメータとしてカウントを取得することができる。ＣＷに対する前回の調整からのカウントを開始点として使用することができる。その数が、所定の閾値より小さい場合、ＣＷの変更はまったく要求されず、方法は、試みられた伝送の回数をカウントすることに戻る。
【００４４】
一実施形態では、ネットワークモニタ２０４が、Ｔ秒ごとに、ＮＤＩＳインターフェース２０３から受け取られた値、ＲＴＳが使用される場合は、RTSFailureCountおよびRTSSuccessCount、または（ＲＴＳが使用されない場合は、ACKFailureCountおよびTransmittedFragmentCount）を調べ、それらの値を足して、合計カウントを算出する。そのカウントが、事前定義された閾値Ｎ（例えば、１００）より小さい場合、ネットワークモニタ２０４は、さらにＴ秒、待ち、前回の調整からのカウントが、少なくともＮになるまで、RTSFailureCount＋RTSSuccessCountを調べる。
【００４５】
閾値が所定の閾値より大きい場合、方法は、ブロック３３０に進む。ブロック３３０は、衝突確率を計算することを提供し、一実施形態では、失敗の確率を計算することも提供する。これらの確率を算出するため、実施形態は、ＮＤＩＳインターフェースからの利用可能なメトリックを使用することを提供する。衝突確率などの確率を算出するためのメトリックは、他のソースから決定可能であり、本発明の範囲内であることが、本開示を役立てる当業者には理解されよう。一実施形態では、確率は、ネットワークモニタ２０４からか、またはＮＤＩＳインターフェース２０３から直接受け取られたパラメータから、統計エンジン２０６において算出される。
【００４６】
前述したとおり、ＮＤＩＳインターフェース２０３において提供されるメトリックにより、確率を算出することが可能になる。所与のＷＬＡＮシステムに関して適切な確率は、ＷＬＡＮシステムのタイプに依存する。例えば、ＲＴＳ＋ＣＴＳ＋データ＋ＡＣＫタイプのＷＬＡＮシステムの場合、失敗の確率は、衝突以外にエラーはまったく存在しなかったという想定で、総伝送数に対する失敗した伝送の数によって与えられる。
【００４７】
【数１】
0004495721.tif 000003
【００４８】
ＲＴＳが使用されない場合、失敗の確率は、失敗数を合計の試みられた伝送数で割った値によって近似することができる。
【００４９】
【数２】
0004495721.tif 000004
【００５０】
衝突確率は、再試行カウントを合計の伝送されたフラグメントカウントで割った値などの、より一般的なメトリックに従って算出することができる。
【００５１】
【数３】
0004495721.tif 000005
【００５２】
システム要件に依存して、衝突確率だけ、失敗確率だけ、または失敗確率と衝突確率の両方が、本明細書の諸実施形態のために使用されることが可能である。ネットワーク統計およびネットワーク応答性をより綿密に把握しておくために、衝突確率と失敗確率の両方が、適切な統計である。
【００５３】
衝突確率および／または失敗確率が算出された後、ブロック３４０が、平滑化関数を適用して、平均確率を得て、ネットワークの振舞いを反映しないネットワークにおける瞬間的な変化に応答してＣＷに変更を行うのを回避する。変動を小さくするように、経時的なネットワーク特性を算出するために利用可能ないくつもの平滑化関数が存在することが、当業者には理解されよう。 
Ｐｃ（ｎ）＝αＰｃ（ｎ−１）＋（１−α）Ｐｃ，ｍｅａｓｕｒｅｄ（ｎ）
Ｐｆ（ｎ）＝αＰｆ（ｎ−１）＋（１−α）Ｐｆ，ｍｅａｓｕｒｅｄ（ｎ）        数式４
【００５４】
記号αは、平滑化係数を表し、Ｐｃ，ｍｅａｓｕｒｅｄおよびＰｆ，ｍｅａｓｕｒｅｄは、統計エンジン２０６に与えられた現在のメトリックに従って計算される。ＷＬＡＮ  ＮＤＩＳインターフェースは、当業者には理解されるとおり、本明細書で説明する諸実施形態に要求される確率統計の１つ、２つ、またはそれより多くを算出するためのメトリックを提供するように構造化されることが可能である。
【００５５】
失敗または衝突の平滑化された確率が算出された後、ブロック３５０およびブロック３６０は、公平性判定を適用する。ブロック３５０およびブロック３６０は、システムの不安定さおよび不公平さを回避するために適用される。例えば、衝突を経験しているデバイスにＣＷを増加させる一方で、その他のデバイスはそうしないことにより、不公平さが生じる可能性がある。そのような増加は、ＣＷのさらなる増加を生じさせる可能性がある、多くの衝突を生じさせ、システムの不安定さおよび不公平を生じさせる。
【００５６】
具体的には、ブロック３５０が、コンテンションウィンドウに対する前回の変更が、コンテンションウィンドウを増加させることであったかどうかを判定し、そうであった場合、失敗した伝送／衝突の確率が増大したかどうか（ΔＣＷ＞０およびＰ（ｎ）＞Ｐ（ｎ−１））を判定することを提供する。コンテンションウィンドウに対する前回の変更が、コンテンションウィンドウのサイズを増加させることであり、失敗した伝送／衝突の確率が、前回の伝送から増大している場合、ブロック３５０は、伝送数をカウントすること、およびブロック３２０に戻ることを提供する。それ以外の場合、方法は、ブロック３６０に進む。
【００５７】
ブロック３６０は、コンテンションウィンドウに対する前回の変更が、コンテンションウィンドウのサイズを小さくすることであったかどうかを判定し、そうであった場合、失敗した伝送／衝突の確率が小さくなったかどうか（ΔＣＷ＜０およびＰ（ｎ）＜Ｐ（ｎ−１））を判定することを提供する。コンテンションウィンドウに対する前回の変更が、コンテンションウィンドウのサイズを減少させることであり、失敗した伝送／衝突の確率が減少した場合、ブロック３６０は、伝送数をカウントすること、およびブロック３２０に戻ることを提供する。それ以外の場合、方法は、ブロック３７０に進む。
【００５８】
ブロック３５０およびブロック３６０は、「ラウンドで止まる（stop for a round）」を要求することによって、一部の所定の状況で、同一サイズのコンテンションウィンドウを維持することにより、公平性および安定性をもたらす。これらの不等式は、コンテンションウィンドウを増加させ、失敗および／または衝突の確率の低下を統計的に経験するはずのデバイスが、それを経験しない場合に、公平性を維持するための方法を提供する。例えば、同一クラスのサービスの質における他のすべてのデバイスが、所与の失敗／衝突確率に従ってコンテンションウィンドウサイズを変更した場合、失敗および／または衝突の減少が生じるはずである。しかし、次のラウンドで、そのデバイスが、失敗／衝突の確率の増加を経験した場合、１つの可能性は、ＷＬＡＮにおける同一のＱｏＳクラスの他のデバイスが、それぞれのコンテンションウィンドウサイズを増加させておらず、その所与のデバイスが、単独の犠牲であることである。ある実施形態、具体的には、ブロック３５０およびブロック３６０によれば、その所与のデバイスは、１つのラウンドでＣＷを保留し、他のデバイスがＣＷを調整する時間を残す。ＣＷを小さくする際にも、同様のアクションが行われる。この結果、公平性を統計的に維持することができる。
【００５９】
ブロック３７０は、図４を参照して以下に説明するマッピング関数に従って、このデバイスの目標コンテンションウィンドウを算出することを提供する。マッピング関数は、コンテンションウィンドウのサイズに対する変更に関して、正または負の方向を提供する。マッピング関数は、様々なＱｏＳクラスに関して異なり、サービスの差別化を提供することが可能である。
【００６０】
マッピング関数は、目標コンテンションウィンドウの値を算出する。ブロック３８０が、目標コンテンションウィンドウ、スケーリング関数、および現在のコンテンションウィンドウサイズを使用して、コンテンションウィンドウサイズに対する変更を計算することを提供する。より詳細には、コンテンションウィンドウに対する変更、したがって、コンテンションウィンドウは、以下の数式を使用して計算される。
【００６１】
【数４】
0004495721.tif 000006
【００６２】
Ｓは、様々なＱｏＳクラスに関して異なることが可能なスケーリング係数を表す。スケーリング係数Ｓは、ＣＷを増加させるため、およびＣＷを減少させるためにそれぞれ使用される、アップスケール（up scale）とダウンスケール（down scale）に分けることができる。より高い優先順位のＱｏＳクラスに関して、アップスケールは、より低い優先順位のアップスケールより小さく設定され、他方、ダウンスケールは、より低い優先順位のダウンスケールより大きく設定される。
【００６３】
ＣＷｔａｒｇｅｔが、目標ＣＷ値を表し、ＣＷｃｕｒが、現在のＣＷ値である。
【００６４】
次に、図４を参照すると、グラフが、実施形態に従って、目標ＣＷを算出するための可能なマッピング関数を示している。グラフは、「目標ＣＷ」というラベルが付けられた、可能なコンテンションウィンドウサイズを明らかにするｙ軸４１０を示す。ｘ軸４２０は、衝突した伝送または失敗した伝送のいずれかの確率を表す、０から０．３５までの確率を明らかにする。示される線は、異なるマッピング関数を示し、線４３０が、線形マッピング関数を明らかにし、線４４０が、指数マッピング関数を明らかにし、線４５０が、２次（quadratic）マッピング関数を明らかにしている。重要なことだが、マッピング関数のそれぞれは、増加関数であり、所与のＷＬＡＮにいずれを適用するかの選択は、システム要件に応じることが可能である。図４に示したグラフは、１５のＣＷｍｉｎｌとして表される、コンテンションウィンドウＣＷｍｉｎの下限を有するタイプのトラフィッククラスに適切である可能性がある。ＣＷｍｉｎｕとして表される、最小コンテンションウィンドウＣＷｍｉｎの上限は、６３である。下限に関する失敗／衝突の対応する確率Ｐは、２％（０．０２）であり、上限に関する失敗／衝突の確率は、３０％（０．３）である。ある実施形態では、下限より小さいいずれの確率も、ＣＷｍｉｎｌにマップされ、上限より大きいいずれの確率Ｐも、ＣＷｍｉｎｕにマップされる。このように、各確率は、目標コンテンションウィンドウサイズを有する。
【００６５】
目標コンテンションウィンドウサイズの範囲により、所定のクラスに関するサービスの質が決まる。このため、差別化は、マッピング関数によってサポートされる。より高い優先順位のフローの場合、ＣＷｍｉｎｌおよびＣＷｍｉｎｕを、より低い優先順位のフローのものよりも小さく設定することができる。一実施形態では、リアルタイムトラフィックに関して、以下のとおりである。
【００６６】
ＣＷｍｉｎｌ＝１５、ＣＷｍｉｎｕ＝６３、およびＰｌｏｗｅｒ ｂｏｕｎｄ＝２％、Ｐｕｐｐｅｒ ｂｏｕｎｄ＝３０％
ベストエフォートトラフィックに関して、以下のとおりである。
【００６７】
ＣＷｍｉｎｌ＝３１、ＣＷｍｉｎｕ＝１２７、およびＰｌｏｗｅｒ ｂｏｕｎｄ＝２％、Ｐｕｐｐｅｒ ｂｏｕｎｄ＝３０％
マッピング関数が通過しなければならない少なくとも２つのポイント、４６０で表される確率の下限と最小コンテンションウィンドウの下限（Ｐｆｌ，ＣＷｍｉｎｌ），および４７０で表される確率の上限と最小コンテンションウィンドウの上限（Ｐｆｕ，ＣＷｍｉｎｕ）が存在する。２つのポイントの間で、画一的に（monolithically）増加する関数が、失敗／衝突の観察された確率Ｐを目標ＣＷにマップする。例えば、リアルタイムのフローに関連して、線形関数に関して、以下のとおりである。 
ＣＷ＝１７１．４２８６＊Ｐ＋１１．５７１４（線４３０）            数式６
【００６８】
２次マッピング関数に関して、以下のとおりである。 
ＣＷ＝５３５．７１４３＊Ｐ２＋１４．７８５７（線４５０）          数式７
【００６９】
指数マッピング関数に関して、以下のとおりである。 
ＣＷ＝１３．５３８６＊ｅｘｐ（５．１２５３＊Ｐ）（線４４０）      数式８
【００７０】
図４と併せて図３を再び参照すると、実施形態によれば、ブロック３４０で失敗／衝突の平滑化された確率が見出された後、ブロック３７０で提供されるとおり、マッピング関数を使用して、その確率が関連する目標ＣＷにマップされる。例えば、衝突の確率が、０．１５％または１５％であると算出され、線形マッピング関数が適用される場合、図４による目標ＣＷは、およそ３５である。目標ＣＷが見出された後、その目標ＣＷを使用して、ＣＷを調整する方向を提供することにより、現在のＣＷに対する変更を計算することができる（ブロック３８０）。数式５は、局（station）の目標ＣＷと現在のＣＷの両方を使用して、実際の調整（adjustment）ステップサイズを算出する。目標ＣＷを使用して、コンテンションウィンドウを変更する方向を算出することにより、２つの局は、同一の確率でチャネルを推定することが可能であるが、それぞれのコンテンションウィンドウに関する実際のステップサイズは、異なることが可能である。
【００７１】
同一のクラス内のデバイスによって観察される過渡的なＰｃおよびＰｆは異なり、一部のケースでは、変動に起因して、大きい場合には、１５％にもなる可能性があるが、ΔＣＷの差は、デバイスのサービスの質に応じて、現在のコンテンションウィンドウサイズおよびスケーリングに重みを与えて、数式５のために、妥当な閾値内に保たれる。このように、数式５はユーザの公平性を保つのに役立つ。
【００７２】
一実施形態では、コンテンションウィンドウサイズに対する調整は、定常状態のコンテンションウィンドウサイズに収束するように適応する。より詳細には、図５を参照すると、図３に示した方法がどのようにコンテンションウィンドウの適応収束をもたらすかをグラフが示す。図５のグラフは、ｙ軸を、最小コンテンションウィンドウの下限５１０を表す１５と、最小コンテンションウィンドウの上限５２０を表す６３の間の可能な目標ＣＷ値とする、マッピング関数を示す。ｘ軸は、０．０３という失敗／衝突の下方の確率５４０、０．３０という失敗／衝突の上方の確率５５０を示す。マッピング関数５７０は、指数型のマッピング関数として示されている。図５は、数式５によるいずれの変更も、段階的な線５８０で示すとおり、段階的に行われることを示す。具体的には、数式５を使用すると、現在のコンテンションウィンドウＣＷｃｕｒｒｅｎｔと目標コンテンションウィンドウＣＷｔａｒｇｅｔの間の差が大きいほど、コンテンションウィンドウに対する変更ΔＣＷも大きくなる。したがって、図５を参照すると、線５８０が、実際の現在のコンテンションウィンドウサイズ、および対応する失敗／衝突確率を示している。図示するとおり、図３に示した方法による第１の調整は、ポイント５９０からポイント５９２への最大のジャンプをもたらす。方法をもう１回、反復した後、コンテンションウィンドウのサイズは、ポイント５９２からポイント５９４にジャンプする。最後に、第３の反復の後、コンテンションウィンドウのサイズは、ポイント５９４からポイント５９６にジャンプする。ポイント５９６で、現在のコンテンションウィンドウのサイズは、目標コンテンションウィンドウと一致する。目標ＣＷあたりで、定常状態ＣＷの小さい変動が存在することが可能である。このため、初期コンテンションウィンドウがかなり小さく、Ｐｆがかなり大きいデバイスに関して、ＣＷｔａｒｇｅｔは、例えば、ＣＷｍｉｎｕである６３ほどに大きくなければならない。方法の反復の結果、実際のＣＷが増加される。この増加の結果、観察される失敗／衝突確率が、わずかに低下する。その結果、方法は、前の目標コンテンションウィンドウより小さい、別のＣＷｔａｒｇｅｔを算出して、コンテンションウィンドウのさらなる増加をもたらす。最後に、ＰがＣＷｃｕｒｒｅｎｔと正確に一致すると、ＣＷｃｕｒｒｅｎｔが、ＣＷｔａｒｇｅｔまで増加される。つまり、ポイント５９６として示すとおり、ＣＷｃｕｒｒｅｎｔ＝ＣＷｔａｒｇｅｔである場合、伝送は平衡状態にある。
【００７３】
次に、図６〜図９を参照すると、比較グラフが、本明細書の諸実施形態による適応ＭＡＣレイヤシステム、現行のＭＡＣレイヤシステム、およびＱｏＳ要件に応じた固定コンテンションウィンドウサイズを有する、固定の差別化タイプのＭＡＣレイヤシステムの間の違いを示す。図６Ａおよび図６ＢのＷＬＡＮシステムは、１２８ｋｂｐｓの平均ビットレートでリアルタイムのフローが流れている１５のデバイスと、ベストエフォートのフローが流れている１５のデバイスから成る。各デバイスは、アクセスポイントを介して通信する。グラフは、２つのＱｏＳクラス、すなわち、リアルタイムのデータおよびベストエフォートのデータを想定しているが、さらなるクラスを同様の形で管理することもできることが、当業者には理解されよう。リアルタイムのフローは、ＣＢＲ（固定ビットレート）のトラフィックであり、ベストエフォートのフローは、常にアクティブである、すなわち、送信されるべきフレームを常に有するものと想定される。図６Ａは、現行の８０２．１１スキームを示す。図示するとおり、ｙ軸６０２は、平均終端間遅延をミリ秒単位で明らかにし、ｘ軸６０４は、ユーザ１〜１５を示す。線６３０は、８０２．１１スキームを明らかにし、ＣＷは、すべてのデバイスに関して３１に固定される。図示するとおり、現行の構成の８０２．１１ｂＭＡＣレイヤを使用した結果である線６３０は、一部のデバイスが、１秒を超える遅延を経験し、他のデバイスが、０．５秒の遅延を経験することをもたらす。
【００７４】
図６Ｂは、平均終端間遅延をミリ秒単位で明らかにするｙ軸６１０、およびユーザ１〜１５を示すｘ軸６２０を示す。線６４０は、固定差別化スキームを示し、２つのクラスに関するＣＷ値が、それぞれ、３１および６３に固定されている。比較のため、本明細書の諸実施形態による適応ＭＡＣレイヤが、線６５０として示され、２つのクラスに関する初期ＣＷ値が、それぞれ、３１および６３に設定されている。
【００７５】
前述した数式４および数式５を使用して線６５０で表される適応ＭＡＣレイヤのパラメータは、次のとおり構成される。α＝０．３、リアルタイムのトラフィックではＳｕｐ＝２０、Ｓｄｏｗｎ＝２０、ベストエフォートのトラフィックではＳｕｐ＝４０、Ｓｄｏｗｎ＝１０である。マッピング関数は最も単純な線形関数であり、Ｔが１秒に設定される。シミュレートされた８０２．１１ｂネットワークは、パケットサイズ＝５００バイトを有するものと想定され、ＲＴＳは使用されない。
【００７６】
図示するとおり、本発明の諸実施形態による適応スキームの遅延は、固定差別化６４０の２分の１に過ぎない。さらに、本明細書の諸実施形態による適応スキームは、すべてのユーザにわたって公平性を維持する。
【００７７】
次に、図７を参照すると、３つの異なるタイプのＭＡＣレイヤシステムを介するスループットが示されている。Ｙ軸７１０は、毎秒のメガバイト数によって帯域幅を示す。ｘ軸７２０は、秒単位で時間を示す。線７３０は、すべてのユーザに関して、３１という現行のＭＡＣレイヤ固定コンテンションウィンドウサイズを使用する、８０２．１１ｂシステムを示す。線７４０は、固定差別化システムを使用することを示す。線７５０は、本明細書の諸実施形態による適応コンテンションウィンドウを示す。図示するとおり、適応コンテンションウィンドウ方法の合計システムスループットが、最大である。このため、適応システムは、リアルタイムのフローの遅延を大幅に短縮し、差別化されたサービスを提供し、チャネル利用率を向上させることができる。前述したとおり、本明細書で開示する適応方法は、ＣＷを適応的に増加させることによって衝突を減らし、増加したシステム合計スループットにより、リアルタイムのフローのＱｏＳ、ならびにベストエフォートのフローのスループットを向上させる。
【００７８】
次に、図８を参照すると、待ち時間分布が、適応コンテンションウィンドウを使用して本明細書で説明する諸実施形態に従って動作する、２つのクラスのフローの累積分布関数として示されている。ｙ軸８１０は、パケットの累積パーセンテージを与え、ｘ軸８２０は、待ち時間メトリックをミリ秒単位で与える。シミュレーションは、１２８ｋｂｐｓの平均ビットレートでリアルタイムのフローが流れているデバイス、およびベストエフォートのフローが流れているデバイスを含む。図示するとおり、本明細書の諸実施形態による分散適応ＭＡＣレイヤは、緊密にグループ化された曲線で差別化された２つのクラス８３０および８４０をもたらす。緊密なグループ化は、各クラス内のデバイスが、公平な扱いを受けることを示す。
【００７９】
次に、図９を参照すると、別のシミュレーションが、実施形態による適応コンテンションウィンドウシステム、現行の８０２．１１ｂＭＡＣレイヤシステム、および固定差別化システムの間の比較を示している。図９は、５００バイトというパケットサイズ、およびＲＴＳを使用する、参加および離脱（join-and-leave）のシナリオを示す。ｙ軸９１０は、リアルタイムのフローに関するＦＬＲ（フレーム損失率）を与え、ｘ軸９２０は、ユーザ１ないし５０を明らかにする。シミュレーションは、異なる期間における３つの８０秒ステージ９０２、９０４、および９０６を示す。より詳細には、２０のベストエフォートのフローと２０のリアルタイムのフロー（それぞれ、１００ｋｂｐｓ）９０２、その後に、１０のリアルタイムのフロー（それぞれ、１００ｋｂｐｓ）と９のリアルタイムのフロー（それぞれ、２００ｋｂｐｓ）９０４、その後に、１つのリアルタイムのフロー（１００ｋｂｐｓ）と２つのリアルタイムのフロー（１．４Ｍｂｐｓ）９０６を含む、各ステージが、８０秒間にわたってシミュレートされる。
【００８０】
図示するとおり、第１のステージ９０２は、適応コンテンションウィンドウ９４０および固定差別化システム９５０をもたらして、固定コンテンションウィンドウを有する８０２．１１ｂシステム９３０よりはるかに良好なＦＬＲを実現する。第２のステージおよび第３のステージでは、本明細書の諸実施形態による適応コンテンションウィンドウシステム９４０が、０のＦＬＲを実現する一方で、他の２つのシステムはともに、およそ５％のＦＬＲをもたらす。
【００８１】
本発明の原理を適用することができる多数の可能な実施形態に鑑みて、図面に関連して本明細書で説明する実施形態は、単に例示的であることを意図し、本発明の範囲を限定するものと解釈されるべきではないことが認識されよう。例えば、ソフトウェアで示される例示した実施形態の諸要素は、ハードウェアで実施することもでき、その逆も同様であること、または、本発明の趣旨を逸脱することなく、例示した実施形態の構成および詳細を変更することができることが、当業者には認識されよう。したがって、本明細書で説明した本発明は、添付の特許請求の範囲、および均等の範囲に含まれることが可能な、すべてのそのような実施形態を企図している。
【図面の簡単な説明】
【００８２】
【図１】本発明が存在する典型的なコンピュータシステムを全体的に示すブロック図である。
【図２】本発明の実施形態による無線ネットワークに接続された無線デバイスを示すブロック図である。
【図３】本発明の実施形態による方法を示す流れ図である。
【図４】本発明の実施形態によるマッピング関数を示すグラフである。
【図５】本発明の実施形態による目標コンテンションウィンドウへの収束を示すグラフである。
【図６Ａ】現行の８０２．１１伝送における平均終端間遅延を示すグラフである。
【図６Ｂ】本発明の諸実施形態による固定の差別化、および適応コンテンションウィンドウ方法を使用する、８０２．１１伝送における平均終端間遅延を示すグラフである。
【図７】本発明の諸実施形態による適応コンテンションウィンドウ方法を現行の８０２．１１伝送、および固定の差別化スキームと比較して、伝送のスループットを示すグラフである。
【図８】本発明の諸実施形態による適応コンテンションウィンドウ方法を現行の８０２．１１伝送、および固定の差別化スキームと比較して、ユーザ数に対する３相フレーム損失率を示すグラフである。
【図９】本発明の実施形態による、待ち時間に対する伝送されたパケットの累積パーセンテージを示すグラフである。
【図１】
0004495721.tif 000010
【図２】
0004495721.tif 000011
【図３】
0004495721.tif 000012
【図４】
0004495721.tif 000013
【図５】
0004495721.tif 000014
【図６Ａ】
0004495721.tif 000015
【図６Ｂ】
0004495721.tif 000016
【図７】
0004495721.tif 000017
【図８】
0004495721.tif 000018
【図９】
0004495721.tif 000019