以下、本発明に係る好適な実施の形態を添付の図面を参照して詳しく説明する。添付の図面と共に以下に開示される詳細な説明は、本発明の例示的な実施の形態を説明するためのもので、本発明の唯一の実施の形態を示すためのものではない。以下の詳細な説明は本発明の完全な理解を提供するために具体的な細部事項を含む。しかし、このような具体的な細部事項なしにも本発明が実施され得るということが当業者には理解される。
以下の実施例は、本発明の構成要素と特徴を所定の形態で結合したものである。各構成要素又は特徴は、特別の言及がない限り、選択的なものと考慮すればよい。各構成要素又は特徴は、他の構成要素や特徴と結合していない形態で実施されてもよく、一部の構成要素及び/又は特徴を結合して本発明の実施例を構成してもよい。本発明の実施例で説明される動作の順序は変更されてもよい。ある実施例の一部の構成や特徴は、他の実施例に含まれてもよく、他の実施例の対応する構成又は特徴に取り替えられてもよい。
以下の説明で使われる特定用語は、本発明の理解を助けるために提供されるものであり、このような特定用語の使用は、本発明の技術的思想から逸脱しない範囲で他の形態に変更してもよい。
場合によって、本発明の概念が曖昧になることを避けるために、公知の構造及び装置は省略されたり、各構造及び装置の核心機能を中心にしたブロック図の形式で図示されることもある。また、本明細書全体を通じて同一の構成要素には同一の図面符号を付して説明する。
本発明の実施例は、無線アクセスシステムであるIEEE 802システム、3GPPシステム、3GPP LTE及びLTE−A(LTE−Advanced)システム、並びに3GPP2システムの少なくとも一つに開示された標準文書によって裏付けることができる。すなわち、本発明の実施例において、本発明の技術的思想を明確にするために説明を省いた段階又は部分は、上記の文書によって裏付けることができる。また、本文書で開示している用語はいずれも上記の標準文書によって説明することができる。
以下の技術は、CDMA(Code Division Multiple Access)、FDMA(Frequency Division Multiple Access)、TDMA(Time Division Multiple Access)、OFDMA(Orthogonal Frequency Division Multiple Access)、SC−FDMA(Single Carrier Frequency Division Multiple Access)などのような様々な無線アクセスシステムに用いることができる。CDMAは、UTRA(Universal Terrestrial Radio Access)やCDMA2000のような無線技術(radio technology)によって具現することができる。TDMAは、GSM(登録商標)(Global System for Mobile communications)/GPRS(General Packet Radio Service)/EDGE(Enhanced Data Rates for GSM(登録商標) Evolution)のような無線技術によって具現することができる。OFDMAは、IEEE 802.11(Wi−Fi)、IEEE 802.16(WiMAX)、IEEE 802−20、E−UTRA(Evolved UTRA)などのような無線技術によって具現することができる。明確性のために、以下では3GPP LTE及び3GPP LTE−Aシステムを中心に説明するが、本発明の技術的思想がこれに制限されるものではない。
(WLANシステムの構造)
図1は、本発明を適用できるIEEE 802.11システムの例示的な構造を示す図である。
IEEE 802.11構造は複数個の構成要素を含むことができ、それら構成要素の相互作用によって上位層に対してトランスペアレントなSTA移動性を支援するWLANを提供することができる。基本サービスセット(Basic Service Set;BSS)はIEEE 802.11 LANにおける基本的な構成ブロックに該当し得る。図1では、2個のBSS(BSS1及びBSS2)が存在し、それぞれのBSSのメンバーとして2個のSTAが含まれること(STA1及びSTA2はBSS1に含まれ、STA3及びSTA4はBSS2に含まれる)を例示的に示している。図1で、BSSを示す楕円は、当該BSSに含まれたSTAが通信を維持するカバレッジ領域を示すものと理解してもよい。この領域をBSA(Basic Service Area)と称することができる。STAがBSAの外へ移動すると、当該BSA内の他のSTAと直接通信できなくなる。
IEEE 802.11 LANにおいて最も基本的なタイプのBSSは、独立したBSS(Independent BSS;IBSS)である。例えば、IBSSは、2個のSTAだけで構成された最小の形態を有することができる。また、最も単純な形態であるとともに他の構成要素が省略されている図1のBSS(BSS1又はBSS2)がIBSSの代表的な例示に該当する。このような構成は、STA同士が直接通信できる場合に可能である。また、このような形態のLANは、あらかじめ計画して構成されるものではなく、LANが必要な場合に構成され、これをアド−ホック(ad−hoc)ネットワークと呼ぶこともできる。
STAの電源オン/オフ、STAのBSS領域への入/出などによって、BSSにおいてSTAのメンバーシップが動的に変更することがある。BSSのメンバーになるためには、STAは同期化過程を用いてBSSにジョインすればよい。BSS基盤構造の全てのサービスにアクセスするためには、STAはBSSに関連付けられなければならない。このような関連付け(association)は動的に設定され、分配システムサービス(Distribution System Service;DSS)の利用を含んでもよい。
図2は、本発明を適用できるIEEE 802.11システムの他の例示的な構造を示す図である。図2は、図1の構造において、分配システム(Distribution System;DS)、分配システム媒体(Distribution System Medium;DSM)、アクセスポイント(Access Point;AP)などの構成要素が追加された形態である。
LANにおいて直接的なステーション−対−ステーションの距離はPHY性能によって制限されることがある。このような距離の限界が充分な場合もあれば、より遠い距離のステーション間の通信が必要な場合もある。拡張されたカバレッジを支援するために分配システム(DS)を構成することができる。
DSは、BSS同士が相互接続される構造を意味する。具体的に、図1のようにBSSが独立して存在する代わりに、複数個のBSSで構成されたネットワークの拡張された形態の構成要素としてBSSが存在してもよい。
DSは論理的な概念であり、分配システム媒体(DSM)の特性によって特定することができる。これと関連して、IEEE 802.11標準では無線媒体(Wireless Medium;WM)と分配システム媒体(DSM)とを論理的に区別している。それぞれの論理的媒体は互いに異なる目的のために使用され、互いに異なる構成要素によって使用される。IEEE 802.11標準の定義では、このような媒体を互いに同一なものとも、互いに異なるものとも制限しない。このように複数個の媒体が論理的に互いに異なるという点で、IEEE 802.11 LAN構造(DS構造又は他のネットワーク構造)の柔軟性を説明することができる。すなわち、IEEE 802.11 LAN構造は様々に具現することができ、それぞれの具現例の物理的な特性によって独立的に当該LAN構造を特定することができる。
DSは複数個のBSSのシームレス(seamless)な統合を提供し、あて先へのアドレスを扱うために必要な論理的サービスを提供することによって移動機器を支援することができる。
APとは、関連付いているSTAに対してWMを通じてDSへのアクセスを可能にし、且つSTA機能性を有する個体を意味する。APを通じてBSS及びDS間のデータ移動が行われてもよい。例えば、図2に示すSTA2及びSTA3は、STAの機能性を有するとともに、関連付いているSTA(STA1及びSTA4)をDSにアクセスさせる機能を持つ。また、いかなるAPも基本的にSTAに該当するため、APはいずれもアドレス可能な個体である。WM上での通信のためにAPによって用いられるアドレスとDSM上での通信のためにAPによって用いられるアドレスは必ずしも同一である必要はない。
APに関連付いているSTAのいずれか一つから当該APのSTAアドレスに送信されるデータは、常に非制御ポート(uncontrolled port)で受信され、IEEE 802.1Xポートアクセス個体によって処理されてもよい。また、制御ポート(controlled port)が認証されると、送信データ(又は、フレーム)はDSに伝達されてもよい。
図3は、本発明を適用できるIEEE 802.11システムのさらに他の例示的な構造を示す図である。図3では、図2の構造にさらに広いカバレッジを提供するための拡張されたサービスセット(Extended Service Set;ESS)を概念的に示す。
任意の(arbitrary)大きさ及び複雑度を有する無線ネットワークがDS及びBSSで構成されてもよい。IEEE 802.11システムではこのような方式のネットワークをESSネットワークと称する。ESSは、一つのDSに接続されたBSSの集合に該当し得る。しかし、ESSはDSを含まない。ESSネットワークはLLC(Logical Link Control)層でIBSSネットワークとして見える点が特徴である。ESSに含まれるSTAは互いに通信することができ、移動STAはLLCにトランスペアレントに一つのBSSから他のBSSに(同一ESS内で)移動することができる。
IEEE 802.11では、図3におけるBSSの相対的な物理的位置について何ら仮定しておらず、次のようないずれの形態も可能である。BSSは部分的に重なってもよく、これは、連続したカバレッジを提供するために一般に利用される形態である。また、BSSは物理的に接続していなくてもよく、論理的にはBSS同士間の距離に制限はない。また、BSS同士は物理的に同一位置に位置してもよく、これはリダンダンシーを提供するために用いることができる。また、一つ(又は、一つ以上の)IBSS又はESSネットワークが一つ(又は一つ以上の)ESSネットワークとして同一空間に物理的に存在してもよい。これは、ESSネットワークが存在する位置にアド−ホックネットワークが動作する場合、互いに異なる機関(organizations)によって物理的に重なるIEEE 802.11ネットワークが構成される場合、又は、同一位置で2つ以上の互いに異なるアクセス及び保安政策が必要な場合などにおける、ESSネットワーク形態に該当し得る。
図4は、無線LANシステムの例示的な構造を示す図である。図4では、DSを含む基盤構造BSSの一例が示されている。
図4の例示で、BSS1及びBSS2がESSを構成する。無線LANシステムにおいてSTAはIEEE 802.11のMAC/PHY規定に従って動作する機器である。STAはAP STA及び非−AP(non−AP)STAを含む。Non−AP STAは、ラップトップコンピュータ、移動電話機のように、一般にユーザが直接扱う機器に該当する。図4の例示で、STA1、STA3、STA4はnon−AP STAに該当し、STA2及びSTA5はAP STAに該当する。
以下の説明で、non−AP STAは、端末(terminal)、無線送受信ユニット(Wireless Transmit/Receive Unit;WTRU)、ユーザ装置(User Equipment;UE)、移動局(Mobile Station;MS)、移動端末(Mobile Terminal)、移動加入者局(Mobile Subscriber Station;MSS)などと呼ぶことができる。また、APは、他の無線通信分野における基地局(Base Station;BS)、ノード−B(Node−B)、発展したノード−B(evolved Node−B;eNB)、基底送受信システム(Base Transceiver System;BTS)、フェムト基地局(Femto BS)などに対応する概念である。
(リンクセットアップ過程)
図5は、一般のリンクセットアップ(link setup)過程を説明するための図である。
STAがネットワークに対してリンクをセットアップし、データを送受信するためには、まず、ネットワークを発見(discovery)し、認証(authentication)を行い、関連付け(association)を確立(establish)し、保安(security)のための認証手順などを行わなければならない。リンクセットアップ過程をセッション開始過程、セッションセットアップ過程と呼ぶこともできる。また、リンクセットアップ過程における発見、認証、関連付け、保安設定の過程を総称して関連付け過程と呼ぶこともできる。
図5を参照して例示的なリンクセットアップ過程について説明する。
段階S510で、STAはネットワーク発見動作を行うことができる。ネットワーク発見動作はSTAのスキャニング(scanning)動作を含むことができる。すなわち、STAがネットワークにアクセスするためには、参加可能なネットワークを探さなければならない。STAは無線ネットワークに参加する前に互換可能なネットワークを識別しなければならないが、特定領域に存在するネットワーク識別過程をスキャニングという。
スキャニング方式には、能動的スキャニング(active scanning)と受動的スキャニング(passive scanning)がある。
図5では例示として能動的スキャニング過程を含むネットワーク発見動作を示す。能動的スキャニングにおいて、スキャニングを行うSTAはチャネルを移りながら周辺にどのAPが存在するかを探索するためにプローブ要請フレーム(probe request frame)を送信して、それに対する応答を待つ。応答者(responder)は、プローブ要請フレームを送信したSTAに、プローブ要請フレームに対する応答としてプローブ応答フレーム(probe response frame)を送信する。ここで、応答者は、スキャニングされているチャネルのBSSで最後にビーコンフレーム(beacon frame)を送信したSTAであってもよい。BSSでは、APがビーコンフレームを送信するため、APが応答者となり、IBSSでは、IBSS内のSTAが交互にビーコンフレームを送信するため、応答者が一定でない。例えば、1番チャネルでプローブ要請フレームを送信し、1番チャネルでプローブ応答フレームを受信したSTAは、受信したプローブ応答フレームに含まれたBSS関連情報を保存し、次のチャネル(例えば、2番チャネル)に移動して同一の方法でスキャニング(すなわち、2番チャネル上でプローブ要請/応答の送受信)を行うことができる。
図5には示していないが、スキャニング動作は受動的スキャニング方式で行われてもよい。受動的スキャニングにおいて、スキャニングを行うSTAはチャネルを移りながらビーコンフレームを待つ。ビーコンフレームは、IEEE 802.11において管理フレーム(management frame)の一つであり、無線ネットワークの存在を知らせ、スキャニングを行うSTAが無線ネットワークを探して無線ネットワークに参加できるように、周期的に送信される。BSSでAPがビーコンフレームを周期的に送信する役割を担い、IBSSではIBSS内のSTAが交互にビーコンフレームを送信する。スキャニングを行うSTAはビーコンフレームを受信すると、ビーコンフレームに含まれたBSSに関する情報を保存し、他のチャネルに移動しながら各チャネルでビーコンフレーム情報を記録する。ビーコンフレームを受信したSTAは、受信したビーコンフレームに含まれたBSS関連情報を保存し、次のチャネルに移動して同一の方法で次のチャネルでスキャニングを行うことができる。
能動的スキャニングと受動的スキャニングとを比較すれば、能動的スキャニングが受動的スキャニングに比べてディレー(delay)及び電力消耗が小さいという利点がある。
STAがネットワークを発見した後に、段階S520で認証過程を行うことができる。このような認証過程は、後述する段階S540の保安セットアップ動作と明確に区別するために、第1の認証(first authentication)過程と呼ぶことができる。
認証過程は、STAが認証要請フレーム(authentication request frame)をAPに送信し、これに応答してAPが認証応答フレーム(authentication response frame)をSTAに送信する過程を含む。認証要請/応答に用いられる認証フレーム(authentication frame)は管理フレームに該当する。
認証フレームは、認証アルゴリズム番号(authentication algorithm number)、認証トランザクションシーケンス番号(authentication transaction sequence number)、状態コード(status code)、検問テキスト(challenge text)、RSN(Robust Security Network)、有限循環グループ(Finite Cyclic Group)などに関する情報を含むことができる。これは、認証要請/応答フレームに含まれ得る情報の一例示に過ぎず、他の情報に置き換わったり、追加の情報がさらに含まれたりしてもよい。
STAは認証要請フレームをAPに送信することができる。APは、受信された認証要請フレームに含まれた情報に基づいて、当該STAに対する認証を許容するか否かを決定することができる。APは認証処理の結果を認証応答フレームを通じてSTAに提供することができる。
STAが成功的に認証された後に、段階S530で関連付け過程を行うことができる。関連付け過程は、STAが関連付け要請フレーム(association request frame)をAPに送信し、それに応答してAPが関連付け応答フレーム(association response frame)をSTAに送信する過程を含む。
例えば、関連付け要請フレームは、様々な能力(capability)に関する情報、ビーコン聴取間隔(listen interval)、SSID(service set identifier)、支援レート(supported rates)、支援チャネル(supported channels)、RSN、移動性ドメイン、支援オペレーティングクラス(supported operating classes)、TIM放送要請(Traffic Indication Map Broadcast request)、相互動作(interworking)サービス能力などに関する情報を含むことができる。
例えば、関連付け応答フレームは、様々な能力に関する情報、状態コード、AID(Association ID)、支援レート、EDCA(Enhanced Distributed Channel Access)パラメータセット、RCPI(Received Channel Power Indicator)、RSNI(Received Signal to Noise Indicator)、移動性ドメイン、タイムアウト間隔(関連付けカムバック時間(association comeback time))、重畳(overlapping)BSSスキャンパラメータ、TIM放送応答、QoSマップなどの情報を含むことができる。
これは関連付け要請/応答フレームに含まれ得る情報の一例に過ぎず、他の情報に置き換わったり、追加の情報がさらに含まれたりしてもよい。
STAがネットワークに成功的に関連付けられた後に、段階S540で保安セットアップ過程を行うことができる。段階S540の保安セットアップ過程は、RSNA(Robust Security Network Association)要請/応答を通じた認証過程ということもでき、上記の段階S520の認証過程を第1の認証(first authentication)過程とし、段階S540の保安セットアップ過程を単純に認証過程と呼ぶこともできる。
段階S540の保安セットアップ過程は、例えば、EAPOL(Extensible Authentication Protocol over LAN)フレームを通じた4−ウェイ(way)ハンドシェーキングを通じて、プライベートキーセットアップ(private key setup)をする過程を含むことができる。また、保安セットアップ過程は、IEEE 802.11標準で定義しない保安方式によって行われてもよい。
(WLANの進化)
無線LANで通信速度の限界を克服するために比較的最近に制定された技術標準としてIEEE 802.11nがある。IEEE 802.11nは、ネットワークの速度と信頼性を増大させ、且つ無線ネットワークの運営距離を拡張することに目的がある。より具体的に、IEEE 802.11nは、データ処理速度が最大540Mbps以上である高処理率(High Throughput;HT)を支援するとともに、送信エラーを最小化し、データ速度を最適化するために送信端と受信端の両方とも多重アンテナを使用するMIMO(Multiple Inputs and Multiple Outputs)技術に基づいている。
無線LANの普及が活性化され、さらにそれを用いたアプリケーションが多様化するに伴って、最近ではIEEE 802.11nが支援するデータ処理速度よりも高い処理率を支援するための新しい無線LANシステムの必要性が台頭している。超高処理率(Very High Throughput;VHT)を支援する次世代無線LANシステムは、IEEE 802.11n無線LANシステムの次のバージョン(例えば、IEEE 802.11ac)であり、MACサービスアクセスポイント(Service Access Point;SAP)で1Gbps以上のデータ処理速度を支援するために最近に新しく提案されているIEEE 802.11無線LANシステムの一つである。
次世代無線LANシステムは、無線チャネルを效率的に利用するために複数のSTAが同時にチャネルにアクセスするMU−MIMO(Multi User Multiple Input Multiple Output)方式の送信を支援する。MU−MIMO送信方式によれば、APが、MIMOペアリング(pairing)された一つ以上のSTAに同時にパケットを送信することができる。
また、ホワイトスペース(white space)で無線LANシステム動作を支援することが議論されている。例えば、アナログTVのデジタル化による遊休状態の周波数帯域(例えば、54〜698MHz帯域)のようなTVホワイトスペース(TVWS)での無線LANシステムの導入は、IEEE 802.11af標準として議論されている。しかし、これは例示に過ぎず、ホワイトスペースは、許可されたユーザ(licensed user)が優先して使用できる許可された帯域といえる。許可されたユーザは、許可された帯域の使用が許可されたユーザのことを意味し、許可された装置(licensed device)、プライマリユーザ(primary user)、優先的ユーザ(incumbent user)などと呼ぶこともできる。
例えば、WSで動作するAP及び/又はSTAは、許可されたユーザに対する保護(protection)機能を提供しなければならない。例えば、WS帯域で特定帯域幅を有するように規約(regulation)上分割されている周波数帯域である特定WSチャネルを、マイクロホン(microphone)のような許可されたユーザが既に使用している場合、許可されたユーザを保護するために、AP及び/又はSTAは当該WSチャネルに該当する周波数帯域は使用することができない。また、AP及び/又はSTAは、現在フレーム送信及び/又は受信のために使用している周波数帯域を許可されたユーザが使用するようになると、当該周波数帯域の使用を中止しなければならない。
そのため、AP及び/又はSTAは、WS帯域中の特定周波数帯域の使用が可能か否か、すなわち、当該周波数帯域に許可されたユーザが存在するか否かを把握する手順を先行しなければならない。許可されたユーザが特定周波数帯域に存在するか否かを把握することをスペクトルセンシング(spectrum sensing)という。スペクトルセンシングメカニズムとして、エネルギー探知(energy detection)方式、信号探知(signature detection)方式などが活用される。受信信号の強度が一定値以上であれば、許可されたユーザが使用中であると判断したり、DTVプリアンブル(preamble)が検出されると、許可されたユーザが使用中であると判断すればよい。
また、次世代通信技術としてM2M(Machine−to−Machine)通信技術が議論されている。IEEE 802.11無線LANシステムでもM2M通信を支援するための技術標準がIEEE 802.11ahとして開発されている。M2M通信は、一つ以上のマシン(Machine)が含まれる通信方式を意味し、MTC(Machine Type Communication)又は事物通信と呼ばれることもある。ここで、マシンとは、人間の直接的な操作や介入を必要としない個体(entity)を意味する。例えば、無線通信モジュールが搭載された検針機(meter)や自動販売機のような装置を含めて、ユーザの操作/介入無しで自動でネットワークに接続して通信を行うことができるスマートフォンのようなユーザ機器もマシンの例示に該当し得る。M2M通信は、デバイス間の通信(例えば、D2D(Device−to−Device)通信)、デバイスとサーバー(application server)間の通信などを含むことができる。デバイスとサーバー間の通信の例示としては、自動販売機とサーバー、POS(Point of Sale)装置とサーバー、電気、ガス又は水道検針機とサーバー間の通信が挙げられる。その他にも、M2M通信ベースのアプリケーション(application)には、保安(security)、運送(transportation)、ヘルスケア(health care)などが含まれてもよい。このような適用例の特性を考慮すると、一般に、M2M通信は、数多くの機器が存在する環境でたまに少量のデータを低速で送受信することを支援できるものでなければならない。
具体的に、M2M通信は多数のSTAを支援できるものでなければならない。現在定義されている無線LANシステムでは、一つのAPに最大2007個のSTAが関連付けられる場合を仮定するが、M2M通信ではそれよりも多い個数(約6000個)のSTAが一つのAPに関連付けられる場合を支援する方案が議論されている。また、M2M通信では低い送信速度を支援/要求するアプリケーションが多いと予想される。これを円滑に支援するために、例えば、無線LANシステムでは、TIM(Traffic Indication Map)要素に基づいてSTAが自身に送信されるデータの有無を認知できるが、TIMのビットマップサイズを減らす方案が議論されている。また、M2M通信では送信/受信間隔が非常に長いトラフィックが多いと予想される。例えば、電気/ガス/水道の使用量のように長い周期(例えば、1ケ月)ごとに大変少ない量のデータをやり取りすることが要求される。そのため、無線LANシステムでは、一つのAPに関連付けられ得るSTAの個数が非常に多くなっても、一つのビーコン周期の間にAPから受信するデータフレームが存在するSTAの個数が大変少ない場合を效率的に支援する方案が議論されている。
このように無線LAN技術は急速に進化しつつあり、前述の例示に加えて、直接リンクセットアップ、メディアストリーミング性能の改善、高速及び/又は大規模の初期セッションセットアップの支援、拡張された帯域幅及び動作周波数の支援などのための技術が開発されている。
(媒体アクセスメカニズム)
IEEE 802.11に基づく無線LANシステムにおいて、MAC(Medium Access Control)の基本アクセスメカニズムは、CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance)メカニズムである。CSMA/CAメカニズムは、IEEE 802.11 MACの分配調整機能(Distributed Coordination Function、DCF)とも呼ばれるが、基本的に「listen before talk」アクセスメカニズムを採用している。このような類型のアクセスメカニズムによれば、AP及び/又はSTAは送信を開始するに先立ち、所定の時間区間(例えば、DIFS(DCF Inter−Frame Space)の間に無線チャネル又は媒体(medium)をセンシング(sensing)するCCA(Clear Channel Assessment)を行うことができる。センシングの結果、媒体が遊休状態(idle status)と判断されると、当該媒体を通じてフレーム送信を始める。一方、媒体が占有状態(occupied status)と感知されると、当該AP及び/又はSTAは自分の送信を開始せず、媒体アクセスのための遅延期間(例えば、任意バックオフ周期(random backoff period))を設定して待った後、フレーム送信を試みることができる。任意バックオフ周期の適用から、複数のSTAはそれぞれ異なった時間待った後にフレーム送信を試みることが期待されるため、衝突(collision)を最小化することができる。
また、IEEE 802.11 MACプロトコルはHCF(Hybrid Coordination Function)を提供する。HCFはDCFとPCF(Point Coordination Function)に基づく。PCFは、ポーリング(polling)ベースの同期式アクセス方式で、全ての受信AP及び/又はSTAがデータフレームを受信できるように周期的にポーリングする方式のことをいう。また、HCFは、EDCA(Enhanced Distributed Channel Access)とHCCA(HCF Controlled Channel Access)を有する。EDCAは、提供者が複数のユーザにデータフレームを提供するためのアクセス方式を競合ベースとするものであり、HCCAは、ポーリングメカニズムを用いた非競合ベースのチャネルアクセス方式を用いるものである。また、HCFは、WLANのQoS(Quality of Service)を向上させるための媒体アクセスメカニズムを含み、競合周期(Contention Period;CP)、非競合周期(Contention Free Period;CFP)のいずれにおいてもQoSデータを送信することができる。
図6は、バックオフ過程を説明するための図である。
図6を参照して任意バックオフ周期に基づく動作について説明する。占有(occupy又はbusy)状態だった媒体が遊休(idle)状態に変更されると、複数のSTAはデータ(又はフレーム)送信を試みることができる。この時、衝突を最小化するための方案として、STAはそれぞれ任意バックオフカウントを選択し、それに該当するスロット時間だけ待機した後、送信を試みることができる。任意バックオフカウントは、擬似−任意整数(pseudo−random integer)値を有し、0乃至CW範囲の値のいずれか一つに決定され得る。ここで、CWは、競合ウィンドウ(Contention Window)パラメータ値である。CWパラメータは初期値としてCWminが与えられるが、送信失敗の場合(例えば、送信されたフレームに対するACKを受信できなかった場合)に2倍の値を取ることができる。CWパラメータ値がCWmaxになると、データ送信に成功するまでCWmax値を維持しながらデータ送信を試みることができ、データ送信に成功する場合にはCWmin値にリセットされる。CW、CWmin及びCWmax値は2n−1(n=0,1,2,…)に設定されることが好ましい。
任意バックオフ過程が始まると、STAは、決定されたバックオフカウント値によってバックオフスロットをカウントダウンする間に続けて媒体をモニタする。媒体が占有状態とモニタされるとカウントダウンを止めて待機し、媒体が遊休状態になると残りのカウントダウンを再開する。
図6の例示で、STA3のMACに送信するパケットが到達した場合に、STA3はDIFSだけ媒体が遊休状態であることを確認し、直ちにフレームを送信することができる。一方、残りのSTAは、媒体が占有(busy)状態であることをモニタして待機する。その間にSTA1、STA2及びSTA5のそれぞれでも送信するデータが発生することがあり、それぞれのSTAは、媒体が遊休状態とモニタされると、DIFSだけ待機した後に、それぞれ選択した任意バックオフカウント値によってバックオフスロットのカウントダウンを行うことができる。図6の例示では、STA2が最も小さいバックオフカウント値を選択し、STA1が最も大きいバックオフカウント値を選択した場合を示す。すなわち、STA2がバックオフカウントを終えてフレーム送信を始める時点でSTA5の残余バックオフ時間はSTA1の残余バックオフ時間よりも短い場合を例示する。STA1及びSTA5は、STA2が媒体を占有する間に暫くカウントダウンを止めて待機する。STA2の占有が終了して媒体が再び遊休状態になると、STA1及びSTA5はDIFSだけ待機した後に、止めていたバックオフカウントを再開する。すなわち、残余バックオフ時間だけの余りのバックオフスロットをカウントダウンした後にフレーム送信を始めることができる。STA5の残余バックオフ時間がSTA1よりも短かったため、STA5がフレーム送信を始めるようになる。一方、STA2が媒体を占有する間にSTA4でも送信するデータが発生することがある。このとき、STA4の立場では、媒体が遊休状態になるとDIFSだけ待機した後、自身が選択した任意バックオフカウント値によるカウントダウンを行ってフレーム送信を始めることができる。図6の例示では、STA5の残余バックオフ時間がSTA4の任意バックオフカウント値と偶然に一致する場合を示し、この場合、STA4とSTA5間に衝突が発生することがある。衝突が発生する場合はSTA4、STA5両方ともACKを受けることができず、データ送信に失敗することになる。この場合、STA4とSTA5はCW値を2倍に増やした後に任意バックオフカウント値を選択してカウントダウンを行うことができる。一方、STA1は、STA4とSTA5の送信によって媒体が占有状態である間に待機しているが、媒体が遊休状態になると、DIFSだけ待機した後、残余バックオフ時間が経過するとフレーム送信を開始することができる。
(STAのセンシング動作)
前述したように、CSMA/CAメカニズムは、AP及び/又はSTAが媒体を直接センシングする物理的キャリアセンシング(physical carrier sensing)の他、仮想キャリアセンシング(virtual carrier sensing)も含む。仮想キャリアセンシングは、隠れたノード問題(hidden node problem)などのように媒体アクセスで発生し得る問題を補完するために用いられる。仮想キャリアセンシングのために、無線LANシステムのMACはネットワーク割当ベクトル(Network Allocation Vector;NAV)を用いることができる。NAVは、現在媒体を利用していたり又は利用する権限のあるAP及び/又はSTAが、媒体を使用可能な状態になるまで残っている時間を、他のAP及び/又はSTAに指示(indicate)する値である。したがって、NAVに設定された値は、当該フレームを送信するAP及び/又はSTAによって媒体の利用が予定されている期間に該当し、NAV値を受信するSTAは、当該期間において媒体アクセスが禁止される。NAVは、例えば、フレームのMACヘッダ(header)の「duration」フィールドの値によって設定されてもよい。
また、衝突可能性を低減するために堅牢な衝突検出(robust collision detect)メカニズムが導入された。これについて図7及び図8を参照して説明する。実際にキャリアセンシング範囲と送信範囲は同一でないこともあるが、説明の便宜のために両者は同一であると仮定する。
図7は、隠れたノード及び露出されたノードを説明するための図である。
図7(a)は、隠れたノードに対する例示であり、STA AとSTA Bとが通信中にあり、STA Cが送信する情報を持っている場合である。具体的に、STA AがSTA Bに情報を送信している状況であるにもかかわらず、STA CがSTA Bにデータを送る前にキャリアセンシングを行う際、媒体が遊休状態にあると判断することがある。これは、STA Aの送信(すなわち、媒体占有)をSTA Cの位置ではセンシングできないこともあるためである。このような場合、STA BはSTA AとSTA Cの情報を同時に受け、衝突が発生することになる。このとき、STA AをSTA Cの隠れたノードということができる。
図7(b)は、露出されたノード(exposed node)に対する例示であり、STA BがSTA Aにデータを送信している状況で、STA CがSTA Dに送信する情報を持っている場合である。この場合、STA Cがキャリアセンシングを行うと、STA Bの送信によって媒体が占有された状態であると判断することができる。そのため、STA CがSTA Dに送信する情報を持っていても、媒体占有状態とセンシングされたため、媒体が遊休状態になるまで待たなければならない。しかし、実際にはSTA AはSTA Cの送信範囲外にあるため、STA Cからの送信とSTA Bからの送信とがSTA Aの立場では衝突しないこともあるため、STA Cは、STA Bが送信を止めるまで余計に待機することになる。このとき、STA CをSTA Bの露出されたノードということができる。
図8は、RTSとCTSを説明するための図である。
図7のような例示的な状況で衝突回避(collision voidance)メカニズムを效率的に利用するために、RTS(request to send)とCTS(clear to send)などの短いシグナリングパケット(short signaling packet)を利用することができる。両STA間のRTS/CTSは周囲のSTAがオーバーヒヤリング(overhearing)できるようにし、この周囲のSTAが上記両STA間の情報送信の有無を考慮するようにすることができる。例えば、データを送信しようとするSTAがデータを受けるSTAにRTSフレームを送信すると、データを受けるSTAはCTSフレームを周囲の端末に送信することによって、自身がデータを受けることを知らせることができる。
図8(a)は、隠れたノード問題を解決する方法に関する例示であり、STA AとSTA CがいずれもSTA Bにデータを送信しようとする場合を仮定する。STA AがRTSをSTA Bに送ると、STA BはCTSを自身の周囲にあるSTA A及びSTA Cの両方に送信する。その結果、STA CはSTA AとSTA Bのデータ送信が終わるまで待機し、衝突を避けることとなる。
図8(b)は、露出されたノード問題を解決する方法に対する例示であり、STA AとSTA B間のRTS/CTS送信をSTA Cがオーバーヒヤリングすることによって、STA Cは自身が他のSTA(例えば、STA D)にデータを送信しても衝突が発生しないことと判断することができる。すなわち、STA Bは周囲の全ての端末機にRTSを送信し、実際に送るデータを持っているSTA AのみがCTSを送信するようになる。STA CはRTSを受信できるだけで、STA AのCTSは受信できないため、STA AはSTA Cのキャリアセンシング外にあるということがわかる。
(電力管理)
前述したように、無線LANシステムではSTAが送受信を行う前にチャネルセンシングを行わなければならないが、チャネルを常にセンシングすることはSTAの持続的な電力消耗を引き起こす。受信状態での電力消耗は送信状態での電力消耗と大差がないため、受信状態を持続することも、電力の制限された(すなわち、バッテリーによって動作する)STAには大きな負担となる。したがって、STAが持続的にチャネルをセンシングするために受信待機状態を維持すると、無線LAN処理率の側面で特別な利点もなく電力を非効率的に消耗することになる。このような問題点を解決するために、無線LANシステムではSTAの電力管理(power management;PM)モードを支援する。
STAの電力管理モードはアクティブ(active)モード及び電力節約(power save;PS)モードに区別される。STAは基本的にアクティブモードで動作する。アクティブモードで動作するSTAは、アウェイク状態(awake state)を維持する。アウェイク状態は、フレーム送受信やチャネルスキャニングなどの正常動作が可能な状態である。一方、PSモードで動作するSTAはスリープ状態(sleep state)(又は、ドーズ(doze)状態)とアウェイク状態(awake state)を切り替えながら動作する。スリープ状態で動作するSTAは、最小限の電力で動作し、フレーム送受信もチャネルスキャニングも行わない。
STAがスリープ状態でできるだけ長く動作するほど電力消耗が減るため、STAの動作期間が増加する。しかし、スリープ状態ではフレーム送受信が不可能なため、無条件に長く動作するわけにはいかない。スリープ状態で動作するSTAがAPに送信するフレームを有すると、アウェイク状態に切り替えてフレームを送信すればよい。一方、APがSTAに送信するフレームがある場合、スリープ状態のSTAはそれを受信できないことはもとより、受信するフレームが存在するということも把握できない。したがって、STAは自身に送信されるフレームの存在有無を確認するために(また、存在するならそれを受信するために)特定周期に従ってアウェイク状態に切り替える動作が必要なことがある。
図9は、電力管理動作を説明するための図である。
図9を参照すると、AP 210は、一定の周期でビーコンフレーム(beacon frame)をBSS内のSTAに送信する(S211、S212、S213、S214、S215、S216)。ビーコンフレームには、TIM(Traffic Indication Map)情報要素(Information Element)が含まれる。TIM情報要素は、AP 210が自身と関連付いているSTAに対するバッファされたトラフィックが存在し、フレームを送信する旨を知らせる情報を含む。TIM要素には、ユニキャスト(unicast)フレームを知らせるために用いられるTIMと、マルチキャスト(multicast)又はブロードキャスト(broadcast)フレームを知らせるために用いられるDTIM(delivery traffic indication map)がある。
AP 210は、3回のビーコンフレームを送信する度に1回ずつDTIMを送信することができる。STA1 220及びSTA2 230はPSモードで動作するSTAである。STA1 220及びSTA2 230は、所定の周期のウェイクアップインターバル(wakeup interval)ごとにスリープ状態からアウェイク状態に切り替えて、AP 210によって送信されたTIM要素を受信できるように設定されてもよい。それぞれのSTAは、自身のローカルクロック(local clock)に基づいてアウェイク状態に切り替える時点を計算することができ、図9の例示ではSTAのクロックがAPのクロックと一致すると仮定する。
例えば、所定のウェイクアップインターバルは、STA1 220がビーコンインターバルごとにアウェイク状態に切り替わってTIM要素を受信できるように設定されてもよい。そのため、STA1 220は、AP 210が最初にビーコンフレームを送信する時(S211)にアウェイク状態に切り替わり得る(S221)。STA1 220は、ビーコンフレームを受信してTIM要素を取得することができる。取得されたTIM要素が、STA1 220に送信されるフレームがある旨を指示すると、STA1 220は、AP 210にフレーム送信を要請するPS−Poll(Power Save−Poll)フレームをAP 210に送信することができる(S221a)。AP 210は、PS−Pollフレームに対応してフレームをSTA1 220に送信することができる(S231)。フレーム受信を完了したSTA1 220は再びスリープ状態に切り替わって動作する。
AP 210が二番目にビーコンフレームを送信するにあたり、他の装置が媒体にアクセスするなどして媒体が占有された(busy medium)状態であるから、AP 210は正確なビーコンインターバルに合わせてビーコンフレームを送信できず、遅延された時点に送信することがある(S212)。この場合、STA1 220はビーコンインターバルに合わせて動作モードをアウェイク状態に切り替えるが、遅延送信されるビーコンフレームを受信できず、再びスリープ状態に切り替わる(S222)。
AP 210が三番目にビーコンフレームを送信する時、当該ビーコンフレームはDTIMと設定されたTIM要素を含むことができる。ただし、媒体が占有された(busy medium)状態であるから、AP 210はビーコンフレームを遅延して送信する(S213)。STA1 220は、ビーコンインターバルに合わせてアウェイク状態に切り替わって動作し、AP 210によって送信されるビーコンフレームからDTIMを取得することができる。STA1 220が取得したDTIMは、STA1 220に送信されるフレームはなく、他のSTAのためのフレームが存在する旨を指示する場合を仮定する。この場合、STA1 220は、自身が受信するフレームがないことを確認し、再びスリープ状態に切り替わって動作することができる。AP 210はビーコンフレーム送信後にフレームを該当のSTAに送信する(S232)。
AP 210は、四番目にビーコンフレームを送信する(S214)。ただし、STA1 220は、その以前の2回にわたるTIM要素受信から、自身に対するバッファされたトラフィックが存在するという情報が取得できなかったため、TIM要素受信のためのウェイクアップインターバルを調整してもよい。又は、AP 210によって送信されるビーコンフレームにSTA1 220のウェイクアップインターバル値を調整するためのシグナリング情報が含まれた場合、STA1 220のウェイクアップインターバル値が調整されてもよい。本例示で、STA1 220はビーコンインターバルごとにTIM要素受信のために運営状態を切り替えたが、3回のビーコンインターバルごとに1回起床するように運営状態を切り替えるように設定してもよい。したがって、STA1 220は、AP 210が四番目のビーコンフレームを送信し(S214)、五番目のビーコンフレームを送信する時点に(S215)スリープ状態を維持するため、TIM要素を取得することができない。
AP 210が六番目にビーコンフレームを送信する時(S216)、STA1 220はアウェイク状態に切り替わって動作し、ビーコンフレームに含まれたTIM要素を取得することができる(S224)。TIM要素は、ブロードキャストフレームが存在する旨を指示するDTIMであるから、STA1 220はPS−PollフレームをAP 210に送信することなく、AP 210によって送信されるブロードキャストフレームを受信すればよい(S234)。一方、STA2 230に設定されたウェイクアップインターバルはSTA1 220に比べて長い周期に設定されてもよい。そのため、STA2 230は、AP 210が五番目にビーコンフレームを送信する時点(S215)にアウェイク状態に切り替わってTIM要素を受信することができる(S241)。STA2 230は、TIM要素から、自身に送信されるフレームが存在することがわかり、フレーム送信を要請するためにAP 210にPS−Pollフレームを送信することができる(S241a)。AP 210はPS−Pollフレームに対応してSTA2 230にフレームを送信することができる(S233)。
図9のような電力節約モードの運営のためにTIM要素には、STAに送信されるフレームが存在するか否かを指示するTIM、又はブロードキャスト/マルチキャストフレームが存在するか否かを指示するDTIMが含まれる。DTIMはTIM要素のフィールド設定によって具現することができる。
図10乃至図12は、TIMを受信したSTAの動作を詳しく説明するための図である。
図10を参照すると、STAは、APからTIMを含むビーコンフレームを受信するためにスリープ状態からアウェイク状態に切り替わり、受信したTIM要素を解釈して、自身に送信されるバッファされたトラフィックがあることを確認できる。STAは、PS−Pollフレームの送信のための媒体アクセスのために他のSTAと競合(contending)を行った後に、APにデータフレーム送信を要請するためにPS−Pollフレームを送信することができる。STAによって送信されたPS−Pollフレームを受信したAPは、STAにフレームを送信することができる。STAはデータフレームを受信し、それに対する確認応答(ACK)フレームをAPに送信することができる。以降、STAは再びスリープ状態に切り替わればよい。
図10のように、APは、STAからPS−Pollフレームを受信した後、所定の時間(例えば、SIFS(Short Inter−Frame Space))後にデータフレームを送信する即時応答(immediate response)方式によって動作することができる。一方、APがPS−Pollフレームを受信した後に、STAに送信するデータフレームをSIFS時間の間に用意できなかった場合は、遅れた応答(deferred response)方式によって動作してもよく、それについて図11を参照して説明する。
図11の例示で、STAがスリープ状態からアウェイク状態に切り替わってAPからTIMを受信し、競合を経てPS−PollフレームをAPに送信する動作は、図10の例示と同一である。APがPS−Pollフレームを受信したが、SIFSの間にデータフレームを用意できなかった場合、データフレームを送信する代わりにACKフレームをSTAに送信してもよい。APは、ACKフレーム送信後にデータフレームが用意されると、競合を行った後、データフレームをSTAに送信することができる。STAはデータフレームを成功的に受信したことを示すACKフレームをAPに送信し、スリープ状態に切り替わればよい。
図12は、APがDTIMを送信する例示に関するものである。STAはAPからDTIM要素を含むビーコンフレームを受信するためにスリープ状態からアウェイク状態に切り替わってもよい。これらのSTAは、受信したDTIMから、マルチキャスト/ブロードキャストフレームが送信されることがわかる。APは、DTIMを含むビーコンフレームを送信後に、PS−Pollフレームの送受信動作無しで直ちにデータ(すなわち、マルチキャスト/ブロードキャストフレーム)を送信することができる。これらのSTAは、DTIMを含むビーコンフレームを受信してから引き続きアウェイク状態を維持しながらデータを受信し、データ受信が完了した後再びスリープ状態に切り替わればよい。
(TIM構造)
図9乃至図12を参照して上述したTIM(又は、DTIM)プロトコルに基づく電力節約モード運営方法において、STAは、TIM要素に含まれたSTA識別情報から、自身のために送信されるデータフレームが存在するか否かを確認することができる。STA識別情報は、STAとAPとの関連付け(association)時にSTAに割り当てられた識別子であるAID(Association Identifier)に関する情報であってよい。
AIDは一つのBSS内ではそれぞれのSTAに対する固有の(unique)識別子として使われる。一例として、現在無線LANシステムにおいてAIDとしては1から2007までのいずれか一つの値を割り当てることができる。現在定義されている無線LANシステムでは、AP及び/又はSTAが送信するフレームにはAIDのために14ビットを割り当てることができ、AID値は16383まで割り当てることができるが、2008〜16383は予備(reserved)値として設定されている。
既存の定義によるTIM要素は、一つのAPに多数(例えば、2007個を超える)のSTAが関連付けられ得るM2Mアプリケーションの適用には適していない。既存のTIM構造をそのまま拡張するとTIMビットマップのサイズが過大になるため、既存のフレームフォーマットでは支援することができず、また、低い伝送レートのアプリケーションを考慮するM2M通信に適していない。また、M2M通信では、一つのビーコン周期の間に受信データフレームが存在するSTAの個数は大変少ないと予想される。したがって、このようなM2M通信の適用例を考慮すれば、TIMビットマップのサイズは大きくなるが、大部分のビットが0値を有する場合が多く発生すると予想されるため、ビットマップを效率的に圧縮する技術が要求される。
既存のビットマップ圧縮技術として、ビットマップの先頭部分に連続する0を省略し、オフセット(offset)(又は、開始点)値で定義する方案がある。しかし、バッファされたフレームが存在するSTAの個数は少ないが、それぞれのSTAのAID値の差が大きい場合には圧縮効率が高くない。例えば、AIDが10と2000の値であるただ2つのSTAに送信するフレームのみがバッファされている場合、圧縮されたビットマップの長さは1990であるが、両端を除いてはいずれも0の値を有することになる。一つのAPに関連付けられ得るSTAの個数が少ない場合にはビットマップ圧縮の非効率性があまり問題にならないが、STAの個数が増加する場合は、このような非効率性が全体システム性能を阻害する要素になることもある。
これを解決するための方案として、AIDを複数のグループに分けてより効果的なデータ送信を行うようにすることができる。各グループには、指定されたグループID(GID)が割り当てられる。このようなグループベースで割り当てられるAIDについて図13を参照して説明する。
図13(a)は、グループベースで割り当てられたAIDの一例を示す図である。図13(a)の例示では、AIDビットマップの先頭部におけるいくつかのビットを、GIDを示すために用いることができる。例えば、AIDビットマップにおける先頭の2ビットを用いて4個のGIDを示すことができる。AIDビットマップの全体長がNビットである場合、先頭の2ビット(B1及びB2)の値は当該AIDのGIDを示す。
図13(b)は、グループベースで割り当てられたAIDの他の例を示す図である。図13(b)の例示では、AIDの位置によってGIDを割り当てることができる。このとき、同一のGIDを使用するAIDはオフセット(offset)及び長さ(length)の値で表現することができる。例えば、GID 1がオフセットA及び長さBで表現されると、ビットマップ上でA乃至A+B−1のAIDがGID 1を有するということを意味する。例えば、図13(b)の例示で、全体1乃至N4のAIDが4個のグループに分割されると仮定する。この場合、GID 1に属するAIDは1乃至N1であり、このグループに属するAIDはオフセット1及び長さN1で表現することができる。次に、GID 2に属するAIDをオフセットN1+1及び長さN2−N1+1で表現することができ、GID 3に属するAIDをオフセットN2+1及び長さN3−N2+1で表現することができ、GID 4に属するAIDをオフセットN3+1及び長さN4−N3+1で表現することができる。
このようなグループベースで割り当てられるAIDが導入されると、GIDによって異なる時間区間にチャネルアクセスを許容できるようにすることによって、多数のSTAに対するTIM要素不足の問題を解決すると同時に、効率的なデータの送受信を行うことができる。例えば、特定時間区間では特定グループに該当するSTAにのみチャネルアクセスが許容され、残り他のSTAにはチャネルアクセスが制限(restrict)されてもよい。このように特定STAにのみアクセスが許容される所定の時間区間を、制限されたアクセスウィンドウ(Restricted Access Window;RAW)と呼ぶこともできる。
GIDによるチャネルアクセスについて図13(c)を参照して説明する。図13(c)では、AIDが3個のグループに分けられている場合、ビーコンインターバルによるチャネルアクセスメカニズムを例示的に示す。一番目のビーコンインターバル(又は、一番目のRAW)は、GID 1に属するAIDに該当するSTAのチャネルアクセスが許容される区間で、他のGIDに属するSTAのチャネルアクセスは許容されない。これを具現するために、一番目のビーコンにはGID 1に該当するAIDのみのためのTIM要素が含まれる。二番目のビーコンフレームにはGID 2を有するAIDのみのためのTIM要素が含まれ、これによって二番目のビーコンインターバル(又は、二番目のRAW)の間には、GID 2に属するAIDに該当するSTAのチャネルアクセスのみが許容される。三番目のビーコンフレームには、GID 3を有するAIDのみのためのTIM要素が含まれ、これによって三番目のビーコンインターバル(又は、三番目のRAW)の間には、GID 3に属するAIDに該当するSTAのチャネルアクセスのみが許容される。四番目のビーコンフレームには再びGID 1を有するAIDのみのためのTIM要素が含まれ、これによって四番目のビーコンインターバル(又は、四番目のRAW)の間には、GID 1に属するAIDに該当するSTAのチャネルアクセスのみが許容される。続いて、五番目以降のビーコンインターバル(又は、五番目以降のRAW)のそれぞれにおいても、当該ビーコンフレームに含まれたTIMで指示される特定グループに属したSTAのチャネルアクセスのみが許容されてもよい。
図13(c)では、ビーコンインターバルによって許容されるGIDの順序が循環的又は周期的である例示を示しているが、これに制限されることはない。すなわち、TIM要素に特定GIDに属するAIDのみを含めることによって、特定時間区間(例えば、特定RAW)の間に、これら特定AIDに該当するSTAのみのチャネルアクセスを許容し、残りのSTAのチャネルアクセスは許容しない方式で動作してもよい。
前述したようなグループベースAID割当方式は、TIMの階層的(hierarchical)構造と呼ぶこともできる。すなわち、全体AID空間を複数個のブロックに分割し、0以外の値を持つ特定ブロックに該当するSTA(すなわち、特定グループのSTA)のチャネルアクセスのみが許容されるようにすることができる。これによって、大きいサイズのTIMを小さいブロック/グループに分割して、STAがTIM情報を維持しやすくし、STAのクラス、サービス品質(QoS)、又は用途によってブロック/グループが管理しやすくなる。図13の例示では2−レベルの階層を示しているが、2つ以上のレベルの形態で階層的構造のTIMが構成されてもよい。例えば、全体AID空間を複数個のページ(page)グループに分割し、それぞれのページグループを複数個のブロックに区別し、それぞれのブロックを複数個のサブ−ブロックに分割することができる。このような場合、図13(a)の例示の拡張として、AIDビットマップにおいて先頭のN1個のビットはページID(すなわち、PID)を示し、その次のN2個のビットはブロックIDを示し、その次のN3個のビットはサブ−ブロックIDを示し、残りのビットがサブ−ブロック内のSTAビット位置を示す方式で構成されてもよい。
以下に説明する本発明の例示において、STA(又は、それぞれのSTAに割り当てられたAID)を所定の階層的なグループ単位に分割して管理する様々な方式が適用されてもよく、グループベースAID割当方式は上記の例示に制限されるものではない。
(改善されたチャネルアクセス方案)
図14は、PS−Pollメカニズムを説明するための図である。図14は、図11に示したPS−Pollメカニズムの具体的な例示に該当する。
前述したように、STAは、自身にAPから送信されるデータが存在するか否かをビーコンのTIM要素から確認することができる。自身に送信されるデータが存在することを確認したSTAは、APからのデータ(すなわち、下りリンク(DL)データ)を要請するためにAPにPS−Pollフレームを送信することができる。PS−Pollフレームを受信したAPは、競合(contention)を経てSTAにデータを送信することができる。具体的に、データを送信しようとするAPが、データを受信するSTAにRTSフレームを送信し、データを受信するSTAはCTSフレームを送信することによって自身がデータを受信することを知らせることができる。これによって、APはデータフレームをSTAに送信し、ACKフレームを受信することができる。この場合、APはSTAに1回に1個のPSDU(Physical layer Service Data Unit)しか送信できない。そのため、APがSTAに送るデータの量が多い場合は、STAからの新しいPS−Pollに応答して競合を経てデータを送信しなければならず、非効率的なデータ送信が行われることがある。
図15は、U−APSDメカニズムを説明するための図である。
U−APSD(Unscheduled−Automatic Power Save Delivery)メカニズムによれば、U−APSDサービス期間(service period;SP)を用いるために、STAはAPに要請送信期間(requested transmission duration)を知らせることができ、APは上記SPにおいてSTAにフレームを送信することができる。U−APSDメカニズムによれば、STAは自身のSPを用いてAPから1回に複数のPSDUを受信することができる。
図15を参照すると、STAは、ビーコンのTIM要素から、APが自身に送信しようとするデータがあることを認知することができる。以降、STAが所望の時点にトリガーフレーム(Trigger frame)をAPに送信することによって、自身のSPが始まったことをAPに知らせながら、APにデータを送信することを要請することができる。APはトリガーフレームに対する応答としてACKを送信することができる。その後、APは競合を経てSTAにRTSを送信し、STAからCTSフレームを受信した後、STAにデータを送信することができる。ここで、APが送信するデータは、一つ以上のデータフレームで構成することができる。APが最後のデータフレームを送信する時、当該データフレームにおけるEOSP(End Of Service Period)を1に設定してSTAに送信すると、STAはそれを認知してSPを終了することができる。これで、STAはAPに成功的なデータ受信を知らせるACKを送信することができる。このように、U−APSDメカニズムによれば、STAは、自身が希望する時に自身のSPを開始してデータを受信することができ、一つのSPにおいて複数のデータフレームを受信することができるため、より効率的なデータの受信が可能となる。
一方、前述した図14及び図15の例示のように、隠れたノード問題を防止するためにデータ送受信時にRTS/CTSフレームを交換することは、データ送信側にも受信側にも多量のシグナリングオーバーヘッドを誘発することになる。また、図15の例示のように、STAがトリガーフレームを送信してAPにデータ送信を要請した時点から、APがSTAに送るデータを用意し、データ送信のための競合を経て、RTS/CTSフレームの送受信以降に実際にデータ送信を開始するまでは相当の時間がかかるため、STAにとって多量の電力消耗が発生することがある。
例えば、隠れたノード環境では、他のSTAが送信するPS−PollフレームをオーバーヒヤリングできないSTAがあり、複数のSTAからPS−Pollが同時に送信されて衝突が発生することもある。しかも、M2M通信のように、一つのAPに多数のSTAが関連付いている環境では、隠れたノード問題がより発生しやすくなる。また、隠れたノード問題を解決するための既存のCTS/RTSフレーム交換などの方法を用いるとしても、M2M通信に適した低電力STAなどにとっては、CTS/RTSフレーム送受信による電力消耗も大きな負担となり得る。
このような問題を解決するために、本発明では、電力節約(PS)モードで動作するSTAがチャネルアクセスを行う新しい方案を提案する。
そのために、本発明では、STAがチャネルアクセス動作を行うとき(例えば、STAがAPにPS−Pollフレームを送信するとき)に、スロットベース動作方式を提案する。例えば、スロットに該当する時間区間を、PS−Pollフレームの送信時間よりも長く設定することができる。また、本発明では、STAのチャネルセンシング区間をPS−Poll時間の長さよりも長いスロットの単位に設定することによって、隠れたノード環境で他のSTAのPS−Pollフレームをオーバーヒヤリングできない問題を解決することができる。また、本発明では、STAがチャネルセンシングをスロット期間の全時間にわたって行うのではなく、一部の時間にのみ行うことによって、STAの電力消耗を減らしながら効率的なチャネルセンシングを行うようにすることができる。また、本発明では、ヌルデータパケット(Null Data Packet;NDP)フレームを用いる方案を提案する。例えば、下りリンク(DL)チャネルアクセス又は上りリンク(UL)チャネルアクセスと関連してNDPフレームを用いることができる。
(スロットベースチャネルアクセス動作)
図16は、隠れたノード環境におけるPS−Poll衝突を説明するための図である。
図16の例示では、APがSTA1のためのデータフレーム及びSTA2のためのデータフレームを有する場合を仮定する。また、STA1とSTA2は互いに隠れたノードに該当すると仮定する。
図16の例示で、APが送信するビーコンフレームのTIM要素を用いて、STA1及びSTA2に、バッファされたDLデータが存在することを知らせることができる。これによって、STA1及びSTA2のそれぞれは競合を経てPS−Pollを送信することができる。具体的に、STA1及びSTA2のそれぞれは、DIFSだけ待機した後に、各自の任意バックオフカウンター値に該当するバックオフスロットだけ(すなわち、バックオフタイマーが満了するまで)さらに待機しながらチャネルをセンシングした後、チャネルが遊休状態であればPS−Pollを送信することができる。図16の例示では、STA1の任意バックオフタイマー値は4で、STA2は6である場合を仮定する。この場合、STA1のバックオフタイマーがSTA2よりも先に満了し、STA1が先にPS−Pollフレームを送信することができる。STA1のPS−PollがAPに成功的に伝達されると、APはSTA1のためにバッファされたデータフレームを送信することができる。一方、STA2はSTA1の隠れたノードであるから、STA1がAPに送信したPS−Pollをオーバーヒヤリングすることができない。したがって、STA1がPS−Pollを送信している間にも、STA2は、チャネルが遊休状態であると判断するため、自身のバックオフタイマーを中止することなく進行させる。その結果、STA2のバックオフタイマーが満了すると、STA2もPS−PollフレームをAPに送信することができる。これによって、図16に示すように、STA1のPS−PollフレームとSTA2のPS−Pollフレームが互いに衝突することになる。
図16の例示のような問題を解決するために、本発明ではSTAに一つ以上のスロットを設定し、該一つ以上のスロットの一部でチャネルアクセス(例えば、PS−Pollの送受信)を行うようにすることができる。一つ以上のスロットは、当該STAに制限的にアクセスが許容されるウィンドウ(例えば、RAW)に該当し得る。すなわち、本発明によれば、RAWを構成する一つ以上のスロットに対する設定をAPがSTAに提供することができる。また、RAWを構成する一つ以上のスロットのうちの一スロットでSTAはNDPフレームを用いて競合ベースでチャネルアクセス関連動作を行うことができる。
例えば、本発明で提案する上記一つ以上のスロットにおいて、一つのスロットの長さをPS−Poll送信時間(又は、PS−Pollフレームの長さ)よりも大きく設定することができる。これと同時に又は別個に、上記スロットはSTAがバックオフタイマーを減少させるために必要なチャネル遊休時間単位に該当してもよい。また、一つのスロット単位の長さ内で、APがPS−Pollフレームを成功的に受信してそれに対する応答フレーム(例えば、ACKフレーム)を送るようにすることもできる。この場合、隠れたノードに該当する他のSTAでもAPの送信する応答フレーム(すなわち、STAのPS−Pollに対する応答フレーム)をオーバーヒヤリングできる可能性が非常に高くなるため、当該チャネルが占有中であるということがわかる。これによって、他のSTAは自身のバックオフタイマーを減少させなくなり、PS−Poll衝突を防止することが可能になる。
図17は、本発明の一例に係るチャネルアクセス方案を説明するための図である。
図17のチャネルアクセス方案を、隠れたノード状況でのPS−Poll競合技法と表現することもできる。また、図17ではスロットがバックオフスロットに該当する場合を例示的に示すが、本発明の範囲はこれに制限されない。例えば、図17の一つの時間スロットは、それぞれのSTAに割り当てられるRAWを構成する一つのスロットに該当してもよい。
図17の例示では、APがSTA1のためのデータフレーム及びSTA2のためのデータフレームを有する場合を仮定する。また、STA1とSTA2は互いに隠れたノードに該当すると仮定する。
図17の例示で、APが送信するビーコンフレームのTIM要素を用いて、STA1及びSTA2に、バッファされたDLデータが存在することを知らせることができる。これによって、STA1及びSTA2のそれぞれは競合を経てチャネルアクセスを試みることができる。図17の例示でSTA1のバックオフタイマーが1で、STA2のバックオフタイマーが2であるとすれば、STA1が先にPS−Pollフレームを送信することができる。STA1のPS−PollフレームがAPに成功的に伝達されると、APはSTA1にACKフレームを送信することができる。STA2はSTA1の隠れたノードであるため、STA1のPS−Pollフレームをオーバーヒヤリングできず、スロット時間の前の部分(すなわち、STA1のPS−Pollフレーム長及びSIFSに対応する時間)においてはチャネルが遊休状態であると判断する。しかし、STA1のPS−Pollが送信されて短い時間(例えば、SIFS)後にAPがACKフレームを送信すると、STA2は、APが送信するACKフレームをオーバーヒヤリングできるはずであるため、STA2は、チャネルが占有中であると判断する。これによって、STA1がチャネルアクセスを行うスロット(又は、PS−Pollフレームを送信したスロット)で、STA2は自身のバックオフタイマーを進行せず、結局としてはPS−Pollフレームを送信しないため、PS−Pollフレームの衝突を防止することができる。
なお、本発明で提案するスロットの長さは、次式1のように定義することができる。
式1で、Tsは、スロット時間を表す。TPS−Pollは、PS−Pollフレームの送信時間を表す。TCCA_Responseは、APがPS−Pollフレームに対する応答フレームを送る時、それに対するCCA検出時間を表す。PDは、空中伝播遅延(Air Propagation Delay)値を表す。
また、本発明の追加の例示として、スロット時間を決定する時に応答フレームの受信のための時間を除外してもよい。すなわち、次式2によってスロット時間(Ts)を決定してもよい。
式2のようにスロット時間が設定される場合は、STAがPS−Pollフレームを送信した後にそれに対する応答フレームを期待しない場合ということができる。これによって、STAの電力消耗及び競合ベースPS−Poll動作にかかる時間を最小化することができる。
(STAのNDPフレーム送信を用いたチャネルアクセス動作)
本発明の追加の例示として、より効率的なチャネルアクセス動作を具現するために、チャネルアクセスに用いられるフレーム(例えば、PS−Pollフレーム)の長さを縮めた新しい形態のフレームを用いる方案を提案する。これによって、前述したように定義されるスロット時間の長さも減少するため、競合過程にかかる時間を減らすことができる。
図18は、本発明の一例に係るNDPフレームフォーマットについて説明するための図である。
図18(a)は、既存の基本的なIEEE802.11 PPDU(PLCP(Physical Layer Convergence Protocol) Packet Data Unit)フレームフォーマットを示す。
既存のPPDUフレームフォーマットは、STF(Short Training Field)、LTF(Long Training Field)、SIG(SIGNAL)フィールド、及びデータ(Data)フィールドで構成される。最も基本的な(例えば、non−HT(High Throughput))PPDUフレームフォーマットは、L−STF(Legacy−STF)、L−LTF(Legacy−LTF)、SIGフィールド及びデータフィールドだけで構成されてもよい。また、PPDUフレームフォーマットの種類(例えば、HT−mixedフォーマットPPDU、HT−greenfieldフォーマットPPDU、VHT(Very High Throughput)PPDUなど)によって、SIGフィールドとデータフィールドとの間に追加の(又は、他の種類の)STF、LTF、SIGフィールドが含まれてもよい。
STFは、信号検出、AGC(Automatic Gain Control)、ダイバーシティ選択、精密な時間同期などのための信号であり、LTFは、チャネル推定、周波数誤差推定などのための信号である。STFとLTFを合わせてPCLPプリアンブル(preamble)と称することができ、PLCPプリアンブルはOFDM物理層の同期化及びチャネル推定のための信号ということができる。
SIGフィールドは、RATEフィールド及びLENGTHフィールドを含むことができる。RATEフィールドは、データの変調及びコーディングレートに関する情報を含むことができる。LENGTHフィールドは、データの長さに関する情報を含むことができる。さらに、SIGフィールドはパリティ(parity)ビット、SIG TAILビットなどを含むこともできる。
データフィールドは、SERVICEフィールド、PSDU(PLCP Service Data Unit)、PPDU TAILビットを含むことができ、必要な場合には埋め草(padding)ビットを含むこともできる。SERVICEフィールドの一部ビットは、受信端におけるデスクランブラの同期化のために用いることができる。PSDUは、MAC層で定義されるMAC PDUに対応し、上位層で生成/利用されるデータを含むことができる。PPDU TAILビットはエンコーダを0状態にリターンするために用いることができる。埋め草(padding)ビットは、データフィールドの長さを所定の単位に合わせるために用いることができる。
図18(b)は、既存のPS−Pollフレームフォーマットを示す図である。
既存のPS−Pollフレームは、MACフレームフォーマットとして定義され、種類によって区別すると制御フレーム(Control Frame)に該当する。MACフレームは、基本的に、MACヘッダー、フレームボディー、及びFCS(Frame Check Sequence)で構成される。MACフレームは、MAC PDUで構成されて、図18(a)のPPDUフレームフォーマットのデータ部分におけるPSDUを通じて送信/受信されてもよい。
図18(b)の例示で、PS−Pollフレームフォーマットは、フレーム制御(frame control)フィールド、AIDフィールド、BSSID(RA(Receiving Address))フィールド、TA(Transmitting Address)フィールド及びFCSフィールドで構成される。フレーム制御フィールドは、フレーム送信/受信に必要な制御情報を含むことができる。AIDフィールドは、PS−Pollを送信するSTAに割り当てられたAID値を有する。BSSID(RA)フィールドはAPのアドレスに該当し、TAフィールドは、フレームを送信するSTAのアドレスに該当する。ここで、フレーム制御フィールド、AIDフィールド、BSSID(RA)フィールド、TAフィールドがMACヘッダーを構成する。すなわち、PS−Pollフレームフォーマットは、フレームボディー無しでMACヘッダー及びFCSだけで構成される。
フレーム制御フィールドは、プロトコルバージョン(Protocol Version)フィールド、Typeフィールド、Subtypeフィールド、To DSフィールド、From DSフィールド、MF(More Fragment)フィールド、Retryフィールド、PM(Power Management)フィールド、MD(More Data)フィールド、PF(Protected Frame)フィールド、及びOrderフィールドで構成することができる。
図18(c)は、本発明で提案するNDPフレームフォーマットを示す。NDPフレームは、データパケットを含まないフレーム構造を意味する。すなわち、NDPフレームは、図18(a)において先頭におけるPLCPプリアンブル部分とSIGフィールドのみを含み、残りの部分(すなわち、データフィールド)は含まないフレームフォーマットを意味する。本発明では、チャネルアクセスのためにSTAがAPに送信するフレームとAPがSTAに送信するフレームに対して、図18(c)のようなNDPフレームフォーマットを用いることによって、STAの電力消耗を低減し、遅延時間を減らす方案について提案する。
例えば、STAがAPに送信するPS−Pollフレームに代え、本発明で提案するNDPフレームを用いることができる。すなわち、既存のPS−Pollフレームは、図18(a)のデータフィールドにおけるPSDUを通じて送信されるMAC制御フレームだったが、本発明では、PSDUを持たない形態のNDP PS−Pollを用いることができる。具体的に、前述した本発明の提案のように、APが特定STAのために設定する一つ以上のスロット(例えば、RAW)のうち一つ(すなわち、RAWのうちの一つのスロット)でPS−Pollを送信することが許容されるが、この時に送信されるPS−Pollとして本発明で提案するNDP PS−Pollを用いることができる。
図18(c)のようにNDPフレームフォーマットを構成する場合に、図18(a)のデータフィールド(例えば、図18(b)のMAC制御フレーム)が含まれないため、データフィールドに属するPSDU(すなわち、MACフレーム)のフレーム制御フィールドに該当する情報も含まれない。しかし、NDPフレームを送受信するために最小限の制御情報はNDPフレーム内に含まれなければならない。そのために、本発明では、このような情報が図18(c)のSIGフィールドに含まれることを提案する。
すなわち、前述したように、NDPフレームは、STF、LTE、SIGフィールドだけで構成される。ここで、STF及びLTFフィールドは、SIGフィールドをデコードするために必要なチャネル推定信号(又は、シーケンス)で構成される。SIGフィールドは、複数のサブフィールドで構成することができる。例えば、SIGフィールドは、Typeサブフィールド、AIDサブフィールド、BSSIDサブフィールド及びCRC(Cyclic Redundancy Check)サブフィールドなどを含むことができる。また、SIGフィールドは、上記4つのサブフィールドに加えて他のサブフィールドを含んでもよい。上記サブフィールドの順序は特に制限されず、例示的なものである。
Typeサブフィールドは、NDPフレームのSIGフィールドを解釈するためのもので、当該NDPフレームの用途を指示する値に設定することができる。例えば、Typeフィールドが所定の値を持つ場合、当該NDPフレームがNDP PS−Pollフレームである旨を指示することができる。言い換えると、NDPフレームのSIGフィールドは、既存のSIGフィールド(すなわち、RATEフィールド及びLENGTHフィールドで構成される)とは異なる修正されたSIGフィールドということができる。そのため、SIGフィールドの最初のサブフィールドであるTypeフィールドを用いて、当該SIGフィールドが既存のSIGフィールドであるか、又は修正されたSIGフィールドであるかを知らせることができる。
AIDサブフィールドは、NDPフレームを送信するSTAのAIDに該当する。AIDは、図13を参照して説明したグループID(又は、PID)を識別できる形態で構成されてもよい。また、AIDサブフィールドは、AIDの短縮された(abbreviated)形態で定義される部分AID(Partial AID;PAID)に該当してもよい。また、AIDサブフィールドは、当該STAを識別するための用途の所定の形態のID値(例えば、新しい形態のAID、又は既存のAIDをハッシュ(hashing)した結果値など)に該当してもよい。NDP PS−Pollフレームを受信したAPは、どのSTAがPS−Pollフレームを送信したかをAID(PAID)からわかる。
ここで、13ビットサイズのAIDに代えて、9ビットサイズの部分AID(すなわち、PAID)がAIDサブフィールドに含まれてもよい。PAIDは、下記の式3のように計算することができる。
上記の式3で、dec(A)は、Aを10進水に変換した値を意味する。A[b:c]は、2進数Aの最初のビット位置がbit 0のとき、このAのbit bからbit cまでを意味する。すなわち、AID[0:8]は、13ビットのAIDビット列のうち、0番位置から8番位置までの9個のビットで構成されたビット列を意味する。modは、モジューロ(modulo)演算を意味し、X mod Yは、XをYで割った余りの値と定義される。
は、ビット単位(bitwise)に適用されるXOR(exclusive OR)演算を表す。例えば、1 XOR 1=0、0 XOR 1=1、1 XOR 0=1、0 XOR 0=0と計算できる。
次に、BSSIDサブフィールドは、NDPフレームを送信するSTAが属しているAPのBSSIDに該当する。また、BSSIDサブフィールドは、BSSIDの短縮された(abbreviated)形態で定義される部分BSSID(Partial BSSID;PBSSID)に該当してもよい。また、BSSIDサブフィールドは、当該APを識別するための用途の所定の形態のID値(例えば、新しい形態のBSSID、又は既存のBSSIDをハッシュ(hashing)した結果値など)に該当してもよい。BSSIDサブフィールドは、NDPフレームの受信アドレス(RA)の意味を有してもよい。
CRCサブフィールドは、NDPフレームのSIGフィールドに対するエラー検出のために用いることができる。
前述したように構成されるNDPフレームを用いてNDP PS−PollフレームをSTAが送信する本発明の例示について以下に説明する。
STAは、自身がチャネルアクセスを行うことが許容された一つ以上のスロットのうち一つでNDP PS−Pollフレームを送信することができる。NDP PS−Pollフレームを受信したAPは、SIGフィールド内のBSSID(又は、PBSSID)サブフィールドから、自身が当該NDP PS−Pollフレームに応答すべきAPか否かを決定することができる。NDP PS−Pollフレームに対する応答として、APはACKフレームを送信したり、当該STAのためにバッファされたデータフレームを送信することができる。
APがACKフレームを送信する場合は、当該STAのためにバッファされたデータがないか、又はバッファされたデータがあってもNDP PS−Pollフレームを受信してからSIFS後に直ちにデータフレームを送信することが困難である場合に該当し得る。STAのためにバッファされたデータがない場合にAPが当該STAに送信するACKフレームのフレーム制御フィールドのMD(More Data)ビットは0に設定することができる。又は、STAのためにバッファされたデータがあるが、ACKフレームが送信される場合は、MDビットを1に設定することもできる。
図18(d)は、本発明で提案するNDPタイプACKフレームを示す図である。
APがACKフレームを送信する場合にACKフレームのオーバーヘッドを縮めるために、本発明では修正されたACKフレームを定義及び用いるのを提案する。既存のACKフレームがPSDU上で送信されるMAC制御フレーム(図18(a)のDATAフィールドを参照)であるが、本発明で提案するACKフレームは、NDPフレーム(図18(d)参照)とすることができる。
具体的に、本発明で提案するNDP ACKフレームは、STF、LTF、SIGフィールドのみで構成される。STF、LTFフィールドは、SIGフィールドをデコーティングするために必要なチャネル推定シーケンス(channel estimation sequence)で構成される。SIGフィールドは、以下に説明する4つのサブフィールドのうち一つ以上を含むことができる。ただし、これに制限されず、さらなるサブフィールドが含まれてもよい。
Typeサブフィールドは、NDPフレームのSIGフィールドを解釈するためのもので、当該NDPフレームの用途を示す値に設定することができる。例えば、Typeフィールドが所定の値を有する場合、当該NDPフレームがNDP ACKフレームであることが示すことができる。言い換えると、NDPフレームのSIGフィールドは、既存のSIGフィールド(すなわち、RATEフィールド及びLENGTHフィールドで構成される)とは異なる修正されたSIGフィールドといえるが、SIGフィールドの最初のサブフィールドであるTypeフィールドを用いて、当該SIGフィールドが既存のSIGフィールドであるか、或いは修正されたSIGフィールドであるかを知らせることだとできる。
ACK IDサブフィールドは、NDP ACKフレームのターゲットSTAを指示するためのものである。例えば、NDP PS−Pollフレームに対する応答としてNDP ACKフレームを送信する場合に、該NDP ACKフレームを受信すべきSTAを示す値としてACK IDサブフィールドを設定することができる。ACK IDフィールドの値は、NDP PS−Pollフレーム(例えば、図18(c)参照)に含まれるAID(又は、PAID)サブフィールド及びBSSID(又は、部分BSSID)サブフィールドの組合せで構成することができる。もし、NDP PS−PollフレームでAIDがPAID値に設定される場合、NDP ACKフレームのACK IDもPAIDに基づく値に設定する。
MD(More Data)ビットサブフィールドでは、STAのためにバッファされたデータがAPに存在しない場合にMDビットを0に設定し、STAのためにバッファされたデータがAPに存在する場合にはMDビットを1に設定することができる。
CRCサブフィールドは、当該NDP ACKフレームにおけるSIGフィールドのエラー検出の用途に用いることができる。
(改善されたチャネルセンシング動作)
本発明で提案するスロットベースチャネルアクセス動作(図17参照)によれば、STAは、スロット時間の間にチャネルが遊休状態であると判断されると、バックオフタイマーを漸次減少させ、バックオフタイマーが満了するとチャネルアクセス動作(例えば、PS−Poll又はNDP PS−Pollフレーム送信)を行うことができる。ここで、STAがスロット時間中ずっとチャネルセンシングを行うと、STAの電力消耗を増加させることにつながる。したがって、本発明では、STAがスロット時間の一部でのみチャネルセンシングを行うことを提案する。
例えば、一つのスロット単位における先頭の一部分又は末尾の一部分でのみチャネルセンシングを行うだけでも、当該一つのスロット単位の全体時間においてチャネルが占有状態であるか遊休状態であるかが正確に判断できる。すなわち、チャネルセンシング時間(又は、CCA検出時間)を、一つのスロット単位における先頭の一部分又は末尾の一部分に設定してもよい。言い換えると、STAがチャネルをセンシングする時間は、スロット境界(slot boundary)に設定してもよい。
図19は、本発明の一例に係るチャネルセンシング動作を説明するための図である。
図19の例示は、図17の例示と同じ状況を仮定する。すなわち、STA1及びSTA2が、APのビーコンフレームのTIM要素から、自身に対するデータが存在するこが認知でき、STA1とSTA2は互いに隠れたノードに該当する。STA1のバックオフタイマーが先に満了し、一番目のスロットが終わった後にPS−Poll(又は、NDP PS−Poll)を送信することができる。
このとき、STA2は、スロット時間の末尾の一部分でのみチャネルセンシング(例えば、CCA)を行い、当該スロット時間単位に占有/遊休を判定し、それによってバックオフタイマーを進行するか否かを決定することができる。
具体的に、STA2は、一番目のスロットにおける末尾の一部分でCCAを行って、チャネルが遊休状態であると判断してバックオフタイマーを進行させる。次に、STA2は、二番目のスロットにおいてSTA1が送信するPS−Poll(又は、NDP PS−Poll)フレームが送信される期間(又は、その期間の大部分)ではCCAを行わないが、二番目のスロットにおける末尾の一部分ではCCAを行う。すなわち、STA1がSTA2にとって隠れたノードである場合、STA2が一つのスロット単位全体において続けてCCAを行ってもSTA1のPS−Poll(又は、NDP PS−Poll)をオーバーヒヤリングすることはできず、このような余計なCCAをしないようにすることによってSTA2の電力消耗を低減させることができる。また、STA2がオーバーヒヤリングできない状況で、STA1がPS−Poll(又は、NDP PS−Poll)フレームを送信してそれに応答するAPのACKフレームは、STA2がCCAを通じて検出でき、これで、当該スロットでSTA1がチャネルを占有することが認知できる。もし、STA1がPS−Poll(又は、NDP PS−Poll)フレームを送信していない場合なら、APの応答(ACK又はデータフレーム)はないはずである。したがって、STA2にとっては、一つのスロットにおける末尾の一部分でのみCCAをしても、当該スロットに対する占有/遊休を正確に判定することが可能になる。
(APのNDPフレーム送信を用いたチャネルアクセス動作)
前述した例示では、STAがAPに送信するNDPフレーム(例えば、NDP PS−Pollフレーム)を用いたチャネルアクセス方案について説明した。さらに、本発明ではAPがSTAに送信するNDPフレームを用いたチャネルアクセス動作について提案する。
例えば、APがSTAに送信するバッファされたデータ(例えば、BU(Bufferable Unit))が存在する場合、これをSTAに知らせるためにNDPフレームを送ることができる。言い換えると、STAにバッファされたフレームを送信するために、APが能動的にポーリングを行うことということができ、このような観点で、APが送信するPS−Pollフレームということもできる。ただし、その名称によって本発明の提案が制限されることはなく、本発明で提案するAPからのPS−Pollフレームは、APがSTAにBUの存在を知らせるために送信するNDPフレームを意味する。
このようなAPからのNDP PS−Pollフレームには、当該フレームが送信されるターゲットSTAの識別子(例えば、AID又はPAID)が含まれてもよい。また、バッファされたデータ(例えば、BU)の存在を知らせる情報が含まれてもよい。本発明の範囲はこれに制限されるものではなく、上記例示した情報に加えて他の情報が含まれてもよい。
APからのNDP PS−Pollフレームが向かうSTAがアウェイク状態である場合、該NDP PS−Pollを受信したSTAは、それに応答してACKフレームをAPに送信して自身が起床していることを知らせることができる。続いて、APは当該STA(すなわち、APからのPS−Pollフレームに応答したSTA)にバッファされたフレームを直ちに送信することができる。
一方、APからのNDP PS−Pollフレームが向かうSTAがスリープ状態である場合は、該STAはNDP PS−Pollフレームに応答することができない。APからのNDP PS−Pollフレームに対する応答をSTAから受信できなかったAPは、他のSTAにNDP PS−Pollフレームを送信することができる。
図20は、APからのNDP PS−Pollフレームを用いたチャネルアクセス方案について説明する図である。
図20の例示で、STA1とSTA2は互いに隠れたノードに該当し、APがそれぞれのSTAに送信するデータ(又は、BU)が存在する場合を仮定する。例えば、APはSTA1にNDP PS−Pollフレームを送信するが、STA1はスリープ状態であるためそれに対して応答できない。STA1からの応答を受信できなかったAPはSTA2にNDP PS−Pollフレームを送信することができる。
アウェイク状態のSTA2はAPからのNDP PS−Pollフレームを受信し、それによってチャネルアクセス動作を開始することができる。例えば、競合ベースでAPからデータを受信することができる。図20で例示するように、STA2はAPからのNDP PS−Pollフレームに応答してACKフレームを当該APに送信し、STA2がBUを受信できる状態であることを確認したAPは、STA2にBU(すなわち、バッファされたデータ)を送信することができる。STA2はAPからのデータフレームを成功的に受信した後に、APに応答フレーム(例えば、ACKフレーム)を送信することができる。
図20の例示で、APがSTAにNDP PS−Pollフレームを送信するタイミングは、STAが起床するように設定されている時点であってもよい。又は、STA1及びSTA2のそれぞれにAPによって一つ以上のスロット(例えば、RAW)が割り当てられた場合に、STAがスロット単位に(又は、スロット境界で)チャネルをセンシングしたりPS−Pollフレームを送信するなどの動作を行うのと同様に、APからのPS−Pollフレームもスロット単位に(又は、スロット境界で)送信されてもよい。また、APからのNDP PS−Pollフレームは、APが現在チャネルを遊休状態とセンシングする場合にSTAに送信されてもよい。
(スロットベーストリガーフレーム)
前述の例示では、STAがAPにPS−Pollフレームを送信する時、NDPフレームで構成されたPS−Pollフレームを用いる方案について説明した。以下では、STAがトリガーフレームを用いてAPからのデータ送信を要請する方案について説明する。
STAは、ビーコンフレームに含まれたTIM要素などから、自身が受信すべきバッファされたフレームが存在するか否かを確認できる。バッファされたフレームをSTAが受信するために、APにPS−Pollフレームを送信してもよく、又はトリガーフレームの送信によって開始されるSP(Service Period)を用いてもよい。STAがスケジュールされた(scheduled)又はスケジュールされていない(unscheduled)APSDを支援する場合、STAはPS−Pollの代わりにトリガーフレームをAPに送信することがより有効であろう。
一方、複数個のSTAが同時にトリガーフレームをAPに送信する場合に、隠れたノードに該当するSTAのトリガーフレームは互いに衝突することがある。このような問題を解決するために、図17のPS−Pollフレーム送信でのスロットベースチャネルアクセス方式と同様に、STAに一つ以上のスロット(例えば、RAW)を割り当て、一つ以上のスロットのうちの一つでトリガーフレームを送信するようにする方案を適用することができる。
ここで、一つのスロット単位の長さは、トリガーフレームの送信時間よりも長く設定することができる。また、一つのスロット時間は競合過程でバックオフタイマーを減少させるために必要なチャネル遊休時間単位に該当してもよい。この場合、APがトリガーフレームを成功的に受信してそれに対する応答フレームを送る場合に、隠れたノードに該当する他のSTAはトリガーフレームをオーバーヒヤリングすることはできなくても、APが送信する応答フレームはオーバーヒヤリングすることができるため、チャネルが占有中であるということがわかる。これによって、上記スロット時間においてバックオフタイマーは進行しなくなる。
図21は、本発明の一例に係るトリガーフレーム競合方式を説明するための図である。
図21の例示で、STA1及びSTA2のためのデータフレームをAPが持っており、このような事実をビーコンフレームのTIM要素を通じてSTA1及びSTA2に知らせることができる。STA1及びSTA2は隠れたノードに該当し、それぞれ、競合ベースでチャネルアクセスを試みることができる。また、STA1のバックオフタイマーが1で、STA2のバックオフタイマーが2である場合に、STA1が先にトリガーフレームを送信することができる。STA1からのトリガーフレームがAPに成功的に伝達されると、APはSTA1のためにACKフレームを送信することができる。一方、STA2は隠れたノードであるから、STA1が送信するトリガーフレームをオーバーヒヤリングできず、チャネルが遊休状態であると判断することがある。しかし、STA2は、APが送信するACKフレームを受信することはできるため、その時はチャネルが占有状態であると判断することができる。したがって、STA2は、STA1がチャネルを占有した時間に自身のバックオフタイマーを進行させず、その次のスロットでトリガーフレームを送信しなくなるため、トリガーフレームの衝突を避けることができる。
トリガーフレーム競合メカニズムを支援するために、スロット時間を次式4のように設定することができる。
式4で、Tsはスロット時間を表す。TTriggerはトリガーフレームの送信時間を表す。TCCA_Responseは、APがトリガーフレームに対する応答フレームを送る時に、それに対するCCA検出時間を表す。PDは、空中伝播遅延(Air Propagation Delay)値を表す。
また、本発明の追加の例示として、スロット時間を決定する時に応答フレームの受信のための時間を除外してもよい。すなわち、次式5によってスロット時間(Ts)を決定してもよい。
式5のようにスロット時間が設定される場合は、STAがトリガーフレームを送信した後にそれに対する応答フレームを期待しない場合ということができる。これによって、STAの電力消耗及び競合ベーストリガー動作にかかる時間を最小化することができる。
前述したようにスロットベーストリガーフレーム送信動作によって、隠れたノード問題を解決することができるが、スロット時間が長く設定される場合にはSTAの電力消耗と競合にかかる時間が増加するなどの問題がある。そこで、トリガーフレームの送信時間をより縮める方案について提案する。
図22は、本発明の一例に係るNDPトリガーフレームを説明するための図である。
既存のトリガーフレームはPPDUフレームのデータフィールドにおけるPSDUで送信されるMACフレームとして定義されたが、本発明では、PSDUを持たない形態(すなわち、NDP形態)のトリガーフレームフォーマットを提案する。NDPトリガーフレームは、STF、LTF及びSIGフィールドだけで構成される。STF及びLTFはSIGフィールドをデコードするために必要なチャネル推定シーケンスで構成される。
SIGフィールドは例示的に次の6通りのサブフィールドを含む。しかし、本発明の範囲がこれに制限されるものではなく、他のサブフィールドがさらに定義されてもよい。
Typeサブフィールドは、NDPフレームのSIGを解釈するためのもので、当該NDPフレームがトリガーフレームであることを指示することができる。
EOSP(End Of Service Period)サブフィールドは、トリガーフレームがSPの開始を示すか又は終了を示すかを知らせることができる。
AC(Access Category)サブフィールドは、トリガーされたSPのアクセスカテゴリー情報を示すことができる。
AIDサブフィールドは、NDPトリガーフレームを送信するSTAの識別子に該当する。前述した例示のように、AIDは、部分AID(PAID)又はグループIDを示す方式などで構成されてもよい。また、AIDサブフィールドは、当該STAを識別するための用途の所定形態のID値(例えば、新しい形態のAID、又は既存のAIDをハッシュ(hashing)した結果値など)に該当してもよい。NDPトリガーフレームを受信したAPは、どのSTAがトリガーフレームを送信したかをAID(PAID)からわかる。PAIDは、例えば、上記の式3で説明した通りに定義できる。
BSSIDサブフィールドは、NDPトリガーフレームを送信するSTAが属しているAPのBSSIDに該当する。また、BSSIDサブフィールドは、BSSIDの短縮された(abbreviated)形態で定義される部分BSSID(Partial BSSID;PBSSID)に該当してもよい。また、BSSIDサブフィールドは、当該APを識別するための用途の所定形態のID値(例えば、新しい形態のBSSID、又は既存のBSSIDをハッシュ(hashing)した結果値など)に該当してもよい。
CRCサブフィールドは、NDPトリガーフレームのSIGフィールドに対するエラー検出のために用いることができる。
前述したように構成されるNDPトリガーフレームをSTAが送信する本発明の例示について以下に説明する。
STAは、自身がチャネルアクセスを行うことが許容された一つ以上のスロットのうちの一つでNDPトリガーフレームを送信することができる。NDPトリガーフレームを受信したAPは、SIGフィールド内のBSSID(又は、PBSSID)サブフィールドから、自身が当該NDPトリガーフレームに応答すべきAPであるか否かを決定することができる。NDPトリガーフレームに対する応答として、APはACKフレームを送信したり、当該STAのためにバッファされたデータフレームを送信することができる。
APがACKフレームを送信する場合は、当該STAのためにバッファされたデータがないか、又はバッファされたデータがあってもNDPトリガーフレームを受信してからSIFS後に直ちにデータフレームを送信することが困難である場合に該当し得る。STAのためにバッファされたデータがない場合にAPが当該STAに送信するACKフレームのフレーム制御フィールドのMD(More Data)ビットは0に設定することができる。又は、STAのためにバッファされたデータはあるが、ACKフレームが送信される場合は、MDビットを1に設定することができる。
また、STAの電力消耗をさらに減らすために、STAが定められた時点にトリガーフレームを送信するように設定してもよい。
また、NDPトリガーフレームが用いられる場合には、NDPフレームが最も低い変調及びコーディング技法(MCS)を用いて構成されるため、ブロックエラー率(BER)が低いことと期待される。
(NDPタイプフレームを用いる動作の追加の例示)
前述した本発明の様々な実施例では、STAがAPに送信するNDPタイプフレーム(例えば、NDP PS−Pollフレーム、NDPトリガーフレームなど)、APがSTAに送信するNDPタイプフレーム(例えば、NDP PS−Pollフレーム)を用いる動作について説明した。以下では、STAからAPへのNDPタイプフレームを用いる動作の追加の例示について説明し、APからSTAへのNDPタイプフレームを用いる動作の追加的な例示について説明する。
(STAからAPにNDP PS−Pollフレームを送信する動作の追加の例示)
STAからAPに送信されるNDP PS−Pollフレームに関する動作は、図19を参照して説明した。ここで、STAがAPに送信するNDPタイプフレームには、図18(c)で説明した通り、部分BSSIDフィールドが含まれてもよい。
STAからのNDP PS−Pollフレームを受信するAPは、部分BSSIDフィールドから、自身が当該NDP PS−Pollフレームに応答しなければならないAPであるか否かを決定する。ここで、部分BSSIDはBSSIDの一部ビット(又は、BSSID値にハッシュ関数が適用された値)で構成されるため、異なるBSSID値のそれぞれの部分BSSIDが同一である場合がある。そのため、同一の部分BSSIDに該当するAPが複数個存在する場合には、複数のAPが当該STAのNDP PS−Pollフレームに対して応答することもできる。
例えば、同一の部分BSSID値を有する2つのAP(例えば、AP1及びAP2)が隣接しており、AP1にSTA1が、AP2にSTA2がそれぞれ関連づいている場合を仮定できる。仮に、STA1とSTA2のAIDが同一である場合、STA1が送信したNDP PS−Pollフレームに対して、AP2は、STA2がNDP PS−Pollフレームを送ったと誤認しうる。このとき、AP2にSTA2のためのデータがバッファされていると、AP2はSTA2に、バッファされたフレームの送信を試みることができる。ここで、STA2がドーズ状態にあると、当該バッファされたフレームは再送信され、結局としては廃棄(discard)される。
したがって、このような誤動作又はリソースの浪費を防止するためには、APがSTAからNDP PS−Pollフレームを受信する場合、NDP PS−Pollフレームに含まれた部分BSSID値が自身のものと同一であっても、当該PS−Pollフレームが実際には、他のBSSに属したSTAから他のBSSのAPに送信されるものであるかもしれないということを考慮して動作しなければならない。そのために、次の方案を提案する。
第一の方案によれば、APがNDP PS−Pollフレームを受信した以降、NDP PS−Pollフレームに対する応答フレームとしてACKフレームのみを送信するようにすることができる。一般には、APがSTAからのPS−Poll又はNDP PS−Pollフレームを受信する場合、データが用意されていれば直ちにデータフレームを送り、データフレームの用意に時間がかかると判断すれる場合にはACKフレームを送ることができる。しかし、本発明の提案によれば、STAからのNDP PS−Pollを受信したAPは、データが用意されていても、バッファされたデータフレームを直ちに送信せず、ACKフレームを送る動作だけが許容される。すなわち、APがNDP PS−Pollフレームを受信する場合には、バッファされたフレームが存在するという事実のみをACKフレームを介してSTAに知らせるだけで、バッファされたフレームの送信は直ちに行わない。
第二の方案によれば、NDP PS−Pollフレームに応答するACKフレームを受信したSTAが、バッファされたフレームをAPから受信するために、APにトリガーフレームを送信してサービス期間(SP)を開始するようにすることができる。このとき、トリガーフレームは、48ビットサイズのBSSIDフィールド(すなわち、完全な(full)BSSID値)を含む正常(normal)トリガーフレームである。
第三の方案によれば、STAからのNDP PS−Pollフレームに対するACKフレームを送信したAPが、バッファされたフレームを当該STAに送信する前に必ずRTS/CTSフレームの交換を行い、バッファされたフレームを送ろうとする対象STAが、NDP PS−Pollフレームを送信したSTAであるか否かをさらに確認することもできる。
第四の方案によれば、STAからのNDP PS−Pollフレームに応答してAPが送信するバッファされたフレームは、送信に失敗しても再送信を行わないようにすることができる。これによって、送信に失敗しても、APにバッファされたフレームは引き続きバッファに保管され、STAが再びPS−Pollフレームを送信する場合に送信されるようにすることができる。
第五の方案によれば、STAからのNDP PS−Pollフレームに応答してAPが送信するバッファされたフレームは、送信に失敗する場合に再送信を行うものの、再試限界(retry limit)に到達しても、当該バッファされたフレームを廃棄しないようにすることができる。これによって、再試限界まで再送信を行った後にも、バッファされたフレームは引き続きバッファに保管され、STAが再びPS−Pollフレームを送信する場合に送信されるようにすることができる。
第六の方案によれば、部分BSSIDが同一であるAPが複数個存在するということをSTAが検出する場合には、当該STAはNDP PS−Pollフレームを用いないようにすることができる。
さらに、STAからAPにNDP PS−Pollフレームを送信する動作のさらに他の例示として、本発明では、修正されたNDP PS−Pollを定義及び利用することを提案する。
図23は、本発明の一例によって、STAが送信する修正されたNDP PS−Pollフレームを用いる動作について説明するための図である。
図23で、STAがAPに送信するNDP PS−Pollフレームに含まれるフィールドの構成を参照すると、図18(c)における部分BSSIDに代えて、又は部分BSSIDフィールドに追加して、”以前TBTTオフセット(previous TBTT(Target Beacon Transmission Time) offset)”フィールドが含まれる。
以前TBTTオフセット値は、STAがNDP PS−Pollフレームを送信した時点と、STAがNDP PS−Pollフレームを送信した時点以前において最後のビーコンフレームの受信時点(又は、APのビーコンフレーム送信時点)との差値(すなわち、オフセット値)を意味する。
例えば、APがビーコンフレームをT1に送信したし、STAが当該ビーコンフレームに含まれたTIM情報要素から、自身が受信すべきバッファされたフレームがあるということを把握し、当該バッファされたフレームを受信するためにNDP PS−PollフレームをAPに送信する時点をT2と仮定する。この場合、上記の修正されたNDP PS−PollフレームのSIGフィールドにおける以前TBTTオフセット値は、STAがビーコンを受信した時点とSTAがNDP PS−Pollフレームを送信する時点との差値、すなわち、T2−T1に設定することができる。
図23を参照すると、STAがAPからビーコンを受信した後にバックオフ過程を経てNDP PS−Pollフレームを送信することができる。ここで、NDP PS−Pollフレームには以前TBTTオフセットフィールドを含むことができる。NDP PS−Pollフレームを受信したAPは、以前TBTTオフセット値から、当該NDP PS−Pollフレームをトリガーしたビーコンが、自身が送信したビーコンであるか否かが判定できる。すなわち、APにとっては、自身がビーコンを送信した時点とSTAからNDP PS−Pollフレームを受信した時点との差値が、STAが送信したNDP PS−Pollフレームにおける以前TBTTオフセット値と同一である場合に、自身が送信したビーコンフレームに基づいてSTAがNDP PS−Pollを送信したと見なすことができる。すると、APはACKフレーム又はデータフレームを当該STAに送信することができる。仮に、APがビーコンを送信した時点とSTAからのNDP PS−Pollフレームを受信した時点との差値が、STAから受信したNDP PS−Pollフレームにおける以前TBTTオフセット値と異なる場合には、APは、STAからのNDP PS−Pollフレームに応答するいかなるフレームも送信しないように動作することができる。
ここで、以前TBTTオフセット値によって特定されるAPは一つしか存在しないため、前述したような部分BSSID値によってAPがNDP PS−Pollフレームに応答するか否を決定する上での不明さを除去することができる。具体的に、異なるBSSのカバレッジが重なる(overlap)OBSS(Overlapping BSS)環境で、異なる複数個のAPが同時にビーコンフレームを送信する場合に、それらの間に衝突が発生してSTAはいずれのビーコンフレームも受信できなくなる。また、OBSS環境でない場合は、STAがビーコンを受信可能なAPは一つしか存在していないといえる。そのため、STAがビーコンフレームを受信したということは、STAの受信範囲内で該当の時点にビーコンを送信するAPは一つのみ存在するということを意味できる。したがって、NDP PS−Pollフレームに以前TBTTオフセット値が含まれると、一つのAPのみが特定され、当該APのみから応答フレーム(例えば、ACKフレーム又はデータフレーム)を受信することができる。
(APからSTAにNDP PS−Pollフレームを送信する動作の追加の例示)
APからSTAに送信されるNDP PS−Pollフレームに関する動作は、図20を参照して説明した。ここで、APがSTAに送信するNDPタイプフレームには、図18(c)で説明した通り、部分BSSIDフィールドが含まれてもよい。
前述したようなSTAがAPにNDP PS−Pollフレームを送信する動作の追加の例示において説明した修正された形態のNDP PS−Pollフレーム(すなわち、部分BSSIDに代えて又は追加して以前TBTTオフセットフィールドを含むNDP PS−Pollフレーム)は、APがSTAに送信するNDP PS−Pollフレームにも同様に適用されてもよい。この場合、APが送信するNDP PS−Pollフレームに含まれた以前TBTTオフセット値から、STAは、どのAPが当該NDP PS−Pollフレームを送信したかが確認できる。
図24は、本発明の一例によって、APが送信する修正されたNDP PS−Pollフレームを用いる動作について説明するための図である。
図24の例示では、APがビーコンフレームを送信し、続いてバックオフ過程を経てNDP PS−PollフレームをSTAに送信する場合を仮定する。このとき、APは、自身が直前に送信したビーコンフレームの送信時点と現在送信するNDP PS−Pollフレームの送信時点との差値を、以前TBTTオフセットフィールドの値に設定してNDP PS−Pollフレームに含めることができる。
APと同一のBSSに属したSTAはビーコンの受信時点を知っているため、APからNDP PS−Pollフレームを受信したSTAは、以前ビーコンの受信時点と新しく受信したNDP PS−Pollフレームの受信時点との差値を計算できる。この差値が上記受信したNDP PS−Pollフレームにおける以前TBTTオフセットフィールドの値と同一であれば、STAは、自身の属したBSSのAPが送ったNDP PS−Pollフレームであると見なすことができる。
ここでは、PS−Poll非競合(Contention−free)メカニズムを例にして本発明で提案する動作の原理について説明したが、本発明の範囲がそれに制限されるものではない。すなわち、PS−Poll非競合(Contention−free)メカニズムの他にも、NDPタイプ制御フレームをポーリングフレームとして用いる、類似の他のメカニズムにも適用可能である。具体的には、48ビットサイズの完全な(full)BSSIDフィールドを含まないフレームにおいてAP又はBSSを明確に特定し難い場合、本発明で提案する以前特定フレームを基準とするオフセットフィールドを用いることによって、AP又はBSS特定における不明さを除去することができる。
例えば、NDPサウンディング(sounding)過程に、本発明で提案する以前特定フレームを基準とするオフセット値を用いることができる。
図25は、NDPサウンディング過程を説明するための図である。
サウンディングプロトコルは、APがSTAにビームフォーミング送信(beamforming transmission)を行うために、APとSTA間のチャネル状態情報(Channel State Information;CSI)に対するフィードバック情報をSTAから獲得するための過程である。ビームフォーミング送信は、それぞれのSTAへのビームの方向を制御する送信方式を意味し、多重ユーザ(MU)−MIMO送信などのために用いることができる。また、CSIは、当該チャネルに適すると判断される変調及びコーディング技法(Modulation and Coding Scheme;MCS)などを含むことができる。
サウンディング過程で、APはNDPフレーム(すなわち、PSDU長が0であるPPDUフレーム)をSTAに送信し、STAはNDPフレームに基づいてCSIを計算/推定し、その結果(すなわち、フィードバック情報)をAPに送信することができる。NDPフレームに基づいて計算/推定されたCSIは、例えば、圧縮されたビームフォーミング報告フレーム(Compressed Beamforming Report frame)を介して、サウンディングを要請したAPにフィードバックされる。また、APが送信するNDPフレームは複数個のSTAに受信されてもよく、APはそれぞれのSTAからのフィードバック情報を取得することができる。
APが送信するNDPフレームに先立ってNDPA(NDP Announcement)フレームを送信することができる。NDPAフレームは、NDPフレームが後続するということを知らせる役割を持つPPDUフレームである。NDPAフレームに含まれたSTAリスト中の最初のSTAは、APからの別のポーリング(polling)なしでも直ちにフィードバックフレームをAPに送信することができる。
NDPAフレームは、NDP announcementサブフィールドの値が1に設定された制御フレーム(例えば、HTC(High Throughput Control)フレームである。また、NDPAフレームは、サウンディング過程の全ターゲットSTAが受信できるようにして送信されなければならない。そのため、NDPAフレームの送信にはビームフォーミングが適用されてはならない(すなわち、全方向(omni−directional)に送信されなければならない)。
図25を参照すると、APはNDPAフレームを送信し、SIFSインターバル後にNDPフレームを送信することができる。NDPAフレームはMRQ(MCS ReQuest)サブフィールドを含むことができる。APが送信するNDPAフレームのMRQサブフィールドが1に設定される場合、このようなNDPAフレームを受信するSTAは、APがMCSフィードバックを要請するということがわかる。
NDPAに含まれたSTAリスト中の最初のSTA(例えば、STA1)は、APからNDPフレームを受信してSIFSインターバル後にフィードバック情報をAPに送信することができる。APはSTA1からのフィードバック情報を受信してSIFSインターバル後にSTA2にPollフレームを送信し、APからPollフレームを受信したSTA2は、SIFSインターバル後にフィードバック情報をAPに送信することができる。続いて、APがポーリングするSTAが順次にフィードバック情報をAPに送信することができる。
図25からわかるように、サウンディング過程でフィードバックを要請するSTA(すなわち、AP)が送信するNDPフレーム及びPollフレームはいずれも、サウンディング過程のターゲットSTA(すなわち、STA1、STA2、STA3)からのフィードバックフレームをトリガー(trigger)するフレームであるという点で共通するため、NDPフレームとPollフレームを総称してフィードバックトリガーフレームと呼ぶことができる。
NDPAに続いて送信されるNDPフレーム(又は、Pollフレーム)に48ビットサイズの完全なBSSID値が含まれない場合に、STAがNDPフレーム(又は、Pollフレーム)を送信したAPを明確に特定できなくなる場合が発生しうる。
ここで、前述した本発明の提案によってNDPタイプフレームに含まれる以前TBTTオフセットフィールドが、NDPサウンディング過程でAPによって送信されるNDPフレーム(又は、Pollフレーム)にも含まれてもよい。これによって、STAにとっては、ビーコンフレーム送信時点を基準に、ビーコンフレームを送信したAPとNDPフレーム(又は、Pollフレーム)を送信したAPとが同一であるか否かが判定できる。
さらに、前述したように、NDPAフレームは複数個のSTAが共通に受信するフレームであるから、その受信時点をそれらのSTAが知っているといえる。したがって、NDP過程で送信されるNDPフレーム(又は、Pollフレーム)には、以前TBTTオフセットに代えて、以前NDPAオフセットフィールドが定義及び利用されてもよい。
図26は、本発明の例示によるNDPサウンディング過程を説明するための図である。
APがNDPAフレーム及びNDPフレームを送信した場合、NDPAフレームでサウンディングのターゲットSTAとして指示されたSTAは、NDPAフレームの受信時点を記憶する。続いて、APが送るNDPフレームを用いてCSIを計算し、APがNDPビームフォーミング報告Pollフレームを送信するまで待つ。
APは、STAにNDPAフレームを送信し、続いてNDPフレーム及びPollフレーム(具体的に、NDPビームフォーミング報告Pollフレーム)を個別のSTAに送信する際、NDPフレーム(又は、Pollフレーム)には部分BSSIDフィールドに代えて又は追加して以前NDPAオフセットフィールドを含めることができる。
STAは、NDPフレーム(又は、Pollフレーム)に含まれた以前NDPAオフセット値が、STAがNDPAフレームを受信した時点とNDPフレーム(又は、Pollフレーム)を受信した時点との差値と同一であるか否か判定し、同一であるとフィードバックフレーム(例えば、圧縮されたビームフォーミング報告フレーム)を送信し、同一でないと、フィードバックフレームを生成/送信しなくて済む。
(STAからAPにNDPトリガーフレームを送信する動作の追加の例示)
STAからAPに送信されるNDPトリガーフレームに関する動作は、図21を参照して説明した。ここで、STAがAPに送信するNDPタイプフレームには、図18(c)又は図22で説明した通り、部分BSSIDフィールドが含まれてもよい。
前述したようなSTAがAPにNDP PS−Pollフレームを送信する動作の追加の例示は、STAがAPにNDPトリガーフレームを送信する場合にも同様に適用可能であり、その詳細を以下に説明する。
STAからのNDPトリガーフレームを受信するAPは、部分BSSIDフィールドから、自身が当該NDPトリガーフレームに応答すべきAPか否かを決定する。ここで、部分BSSIDは、BSSIDの一部ビット(又は、BSSID値にハッシュ関数が適用された値)で構成することができるため、異なるBSSID値のそれぞれの部分BSSIDが同一である場合がありうる。そのため、同一の部分BSSIDに該当するAPが複数個存在する場合は、複数のAPが当該STAのNDPトリガーフレームに対して応答することがある。
例えば、同一の部分BSSID値を有する2つのAP(例えば、AP1及びAP2)が隣接しており、AP1にSTA1が、AP2にSTA2が関連づいている場合を仮定できる。仮に、STA1とSTA2のAIDが同一である場合、STA1が送信したNDPトリガーフレームに対して、AP2は、STA2がNDPトリガーフレームを送ったと誤認しうる。このとき、AP2にSTA2のためのデータがバッファされていると、AP2はSTA2に、バッファされたフレームの送信を試みることができる。ここで、STA2がドーズ状態にあると、当該バッファされたフレームは再送信され、結局としては廃棄(discard)されうる。
したがって、このような誤動作又はリソースの浪費を防止するためには、APがSTAからNDPトリガーフレームを受信すると、NDPトリガーフレームに含まれた部分BSSID値が自身のものと同一であっても、当該NDPトリガーフレームが実際には、他のBSSに属したSTAから他のBSSのAPに送信されるものであるかもしれないということを考慮して動作しなければならない。そのために、次の方案を提案する。
第一の方案によれば、NDPトリガーフレームに応答するACKフレームを受信したSTAが、バッファされたフレームをAPから受信するために、APにトリガーフレーム(すなわち、48ビットサイズのBSSIDフィールド(すなわち、完全な(full)BSSID値)を含む正常(normal)トリガーフレーム)を送信し、サービス期間(SP)を開始させることができる。
第二の方案によれば、STAからのNDPトリガーフレームに対するACKフレームを送信したAPが、バッファされたフレームを当該STAに送信する前に必ずRTS/CTSフレームの交換を行い、バッファされたフレームを送ろうとする対象STAが、NDPトリガーフレームを送信したSTAであるか否かを再び確認することもできる。
第三の方案によれば、STAからのNDPトリガーフレームに応答してAPが送信するバッファされたフレームは、送信に失敗しても再送信を行わないようにすることができる。これによって、送信に失敗になっても、APでバッファされたフレームは引き続きバッファに保管され、STAが再びトリガーフレームを送信する場合に送信されるようにすることができる。
第四の方案によれば、STAからのNDPトリガーフレームに応答してAPが送信するバッファされたフレームは、送信に失敗する場合に再送信を行うものの、再試限界(retry limit)に到達しても、当該バッファされたフレームを廃棄しないようにすることができる。これによって、再試限界まで再送信を行った後にも、バッファされたフレームは引き続きバッファに保管され、STAが再びトリガーフレームを送信する場合に送信されるようにすることができる。
第五の方案によれば、部分BSSIDが同一であるAPが複数個存在するということをSTAが検出する場合は、当該STAはNDPトリガーフレームを利用しないようにすることができる。
また、NDPトリガーフレームにも、前述したNDP PS−Pollフレームと同様に、部分BSSIDフィールドに代えて又は追加して以前TBTTオフセットフィールドが含まれてもよい。APは、NDPトリガーフレームに含まれた以前TBTTオフセットフィールドから、STAが意図したAPが自身であるか否かを確認し、自身であれば、NDPトリガーフレームに応答するフレームを送信し、そうでなければNDPトリガーフレームに応答しなくて済む。
図27は、本発明の一例に係るSTA−主導(STA−initiated)のスロットベースチャネルアクセス方法を説明するための図である。
段階S2310で第1のSTA(例えば、AP)は第2のSTA(例えば、non−AP STA)にスロット設定情報を送信することができる。スロット設定情報は、第2のSTAがチャネルアクセスを試みることが許容される一つ以上のスロット(例えば、RAW)に関する設定情報を意味する。このスロット設定情報はビーコンフレームを通じて送信されてもよい。スロット設定についての具体的な説明は、前述した本発明の例示に関する説明と同一であるため、明瞭性のために省略する。
段階S2320で、第2のSTAは第1のフレームを第1のSTAに送信することができる。ここで、第1のフレームはPS−Poll又はトリガーフレームであってよい。また、第1のフレームはNDPフレームであってもよい。第1のフレームは競合方式で又はバックオフ方式で、上記一つ以上のスロットのうち一つのスロットで送信されてもよい。第1のフレームの送信時点の決定、第1のフレームの細部的なフォーマットに関する説明は、前述した本発明の例示に関する説明と同一であるため、明瞭性のために省略する。
段階S2330で、第1のSTAは第1のフレームに対する応答として第2のフレームを第2のフレームに送信することができる。第2のフレームは、PS−Poll又はトリガーフレームに対するACKフレームであってもよく、即時データ送信方式では、データフレームが直接送信されてもよい。
段階S2330及び追加の動作として、当該NDPタイプフレームに含まれた部分BSSIDを用いる場合の追加の例示で説明した通り、第2フレームの種類が制限されるか、又はSTA及び/又はAPの動作がさらに定義されてもよい。また、第2フレームに以前TBTTオフセット値が含まれてもよい。
図28は、本発明の一例に係るAP−主導(AP−initiated)のスロットベースチャネルアクセス方法を説明するための図である。
段階S2410は、図27の段階S2310と同一であり、重複する説明は省略する。
段階S2420で、第1のSTA(例えば、AP)は第2のSTA(例えば、non−AP STA)に、第2のSTAのチャネルアクセスのための情報を含む第1のフレームを送信することができる。図24の例示で、第1のフレームは、第1のSTAが送信するNDPフレームであってよい。また、第1のフレームには第2のSTAのAID(又は、PAID)と第2のSTAのためのバッファされたデータ(又は、BU)が存在することを知らせる情報が含まれてもよい。第1のフレームの送信時点の決定、第1のフレームの細部的なフォーマットに関する説明は、前述した本発明の例示に関する説明と同一であるため、明瞭性のために省略する。
段階S2420で、第2のSTAに送信された第1のフレームに基づいて第2のSTAのチャネルアクセス動作を開始することができる。
段階S2430で、第1のSTAは第2のSTAに第2のフレーム(例えば、データフレーム)を送信することができる。図28の例示では示していないが、図20の例示と同様に、第2のSTAが第1のフレームに対する応答フレーム(例えば、ACKフレーム)を第1のSTAに送信することもできる。
さらに、段階S2420で、第1のSTA(例えば、AP)は第2のSTA(例えば、non−AP STA)にNDPフレームを送信する際に、NDPフレームには以前TBTTオフセットフィールド又は以前NDPAオフセットフィールドが含まれてもよい。
前述した本発明の様々な実施例で説明した事項は、独立して適用されてもよく、又は2つ以上の実施例が同時に適用されるように具現されてもよい。
図29は、本発明の一実施例に係る無線装置の構成を示すブロック図である。
AP10は、プロセッサ11、メモリー12、送受信器13を備えることができる。STA20は、プロセッサ21、メモリー22、送受信器23を備えることができる。送受信器13及び23は、無線信号を送信/受信することができ、例えば、IEEE 802システムに基づく物理層を具現することができる。プロセッサ11及び21は、送受信器13及び21と接続して、IEEE 802システムに基づく物理層及び/又はMAC層を具現することができる。プロセッサ11及び21は、前述した本発明の様々な実施例に係る動作を行うように構成されてもよい。また、前述した本発明の様々な実施例に係るAP及びSTAの動作を具現するモジュールがメモリー12及び22に格納され、プロセッサ11及び21によって実行されてもよい。メモリー12及び22は、プロセッサ11及び21の内部に含まれてもよく、又はプロセッサ11及び21の外部に設けられて、プロセッサ11及び21と公知の手段によって接続されてもよい。
このようなAP及びSTA装置の具体的な構成は、前述した本発明の様々な実施例で説明した事項が独立して適用されたり、又は2つ以上の実施例が同時に適用されるように具現されてもよく、重複する内容は明確性のために説明を省略する。
上述した本発明の実施例は様々な手段を用いて具現することができる。例えば、本発明の実施例は、ハードウェア、ファームウェア(firmware)、ソフトウェア又はそれらの結合などによって具現することができる。
ハードウェアによる具現の場合、本発明の実施例に係る方法は、一つ又はそれ以上のASICs(Application Specific Integrated Circuits)、DSPs(Digital Signal Processors)、DSPDs(Digital Signal Processing Devices)、PLDs(Programmable Logic Devices)、FPGAs(Field Programmable Gate Arrays)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサなどによって具現することができる。
ファームウェアやソフトウェアによる具現の場合、本発明の実施例に係る方法は、以上で説明された機能又は動作を実行するモジュール、手順又は関数などの形態で具現することができる。ソフトウェアコードは、メモリーユニットに保存され、プロセッサによって駆動されてよい。メモリーユニットは、プロセッサの内部又は外部に設けられ、既に公知の様々な手段によってプロセッサとデータを交換することができる。
以上開示された本発明の好ましい実施例についての詳細な説明は、当業者が本発明を具現して実施できるように提供された。以上では本発明の好適な実施例を参照して説明したが、当該技術の分野における熟練した当業者に理解されるように、本発明の領域から逸脱しない範囲内で本発明を様々に修正及び変更することもできる。例えば、当業者は、上記の実施例に記載された各構成を互いに組み合わせる方式で用いてもよい。したがって、本発明は、ここに開示されている実施形態に制限されるものではなく、ここに開示されている原理及び新規な特徴と一致する最も広い範囲を与えるためのものである。