以下、図面を参照し、本発明の実施形態について説明する。
図1は、一実施形態に係る無線通信システム1の構成例を示す図である。図1において、無線通信システム1は、基地局装置10と端末装置30とを備える。無線通信システム1は、例えばWLAN(無線LAN)を構築する。該WLANは、例えばIEEE802.11シリーズのWLANである。例えば、基地局装置10はIEEE802.11シリーズのWLANのアクセスポイント(Access Point:AP)であり、端末装置30はIEEE802.11シリーズのWLANの端末装置である。
基地局装置10と端末装置30とは、第1共有通信媒体及び第2共有通信媒体を使用して通信を行う。第1共有通信媒体と第2共有通信媒体とは異なる通信媒体である。例えば、無線通信システム1が利用可能な複数の周波数帯のうち、第1共有通信媒体として比較的高い周波数帯が利用されてもよく、また、第2共有通信媒体として、第1共有通信媒体の周波数帯とは異なる比較的低い周波数帯が利用されてもよい。また、第1共有通信媒体は、無線通信システム1が利用可能な複数の周波数帯のうち、複数の連続する周波数帯を含んでもよく、又は、複数の非連続の周波数帯を含んでもよい。また、第2共有通信媒体は、無線通信システム1が利用可能な複数の周波数帯のうち、複数の連続する周波数帯を含んでもよく、又は、複数の非連続の周波数帯を含んでもよい。
例えば、第1共有通信媒体は、主に、基地局装置10から端末装置30へ向かう方向のデータ信号の伝送に使用されてもよく、また、第2共有通信媒体は、主に、端末装置30から基地局装置10へ向かう方向のデータ信号の伝送に使用されてもよい。
図2は、本実施形態に係る送信元ノードSRCの構成例を示す図である。図1に示す基地局装置10(通信装置)は、図2に示す送信元ノードSRCの構成を備える。図2において、送信元ノードSRCは、受信部11と、制御部12と、データフレーム生成部13と、トリガフレーム生成部14と、送信部15とを備える。
データフレーム生成部13は、複数の宛先ノードの各々に送信するデータ信号を含むデータフレームを生成する。本実施形態において、データフレームは、第1フレームに対応する。トリガフレーム生成部14は、トリガフレームを生成する。トリガフレームは、ACKフレームを複数の宛先ノードの各々が送信する異なるタイミングの基準を表すフレームである。ACKフレームは、データフレームに含まれるデータ信号についての確認応答信号を含むフレームである。本実施形態において、トリガフレームは、第2フレームに対応する。本実施形態において、ACKフレームは、第3フレームに対応する。
送信部15は、データフレームを複数の宛先ノードの各々に対応する第1通信チャネルにより送信する。送信部15は、トリガフレームを第2通信チャネルにより送信する。第2通信チャネルは、第1通信チャネルとは異なる通信チャネルであってACKフレームの伝送に使用される通信チャネルである。受信部11は、第2通信チャネルによりACKフレームを受信する。制御部12は、送信元ノードSRCの制御を行う。
図3は、本実施形態に係る宛先ノードDSTの構成例を示す図である。図1に示す端末装置30(通信装置)は、図3に示す宛先ノードDSTの構成を備える。図3において、宛先ノードDSTは、受信部31と、制御部32と、ACKフレーム生成部33と、送信部34とを備える。
受信部31は、送信元ノードSRCが複数の宛先ノードの各々に送信するデータ信号を含むデータフレームを自宛先ノードDSTに対応する第1通信チャネルにより受信する。受信部31は、トリガフレームを第2通信チャネルにより受信する。ACKフレーム生成部33は、ACKフレームを生成する。送信部34は、トリガフレームが表す基準に基づく自宛先ノードのタイミングでACKフレームを第2通信チャネルにより送信する。制御部32は、宛先ノードDSTの制御を行う。
次に図4を参照して本実施形態に係る通信方法の例を説明する。図4は、本実施形態に係る通信方法の例の説明図である。送信元ノードSRCは、M個の宛先ノードDSTへ、データパケットを送信する。図4の例では、Mは3であり、送信元ノードSRCは、3個の宛先ノードDST1、DST2及びDST3へ、データパケットを送信する。宛先ノードDST1、DST2及びDST3は、図3に示す宛先ノードDSTの構成を備える。
送信元ノードSRCと宛先ノードDST1、DST2及びDST3とは、第1共有通信媒体と第2共有通信媒体とを使用して通信を行う。第1共有通信媒体と第2共有通信媒体とは異なる通信媒体である。例えば、無線通信システム1が利用可能な複数の周波数帯のうち、第1共有通信媒体は比較的高い周波数帯であって、第2共有通信媒体は第1共有通信媒体の周波数帯とは異なる比較的低い周波数帯であってもよい。
通信チャネルCH1、CH2及びCH3は第1共有通信媒体に設けられている。通信チャネルCH4は第2共有通信媒体に設けられている。送信元ノードSRCは、通信チャネルCH1、CH2、CH3及びCH4を使用する。宛先ノードDST1は、通信チャネルCH1及びCH4を使用する。宛先ノードDST2は、通信チャネルCH2及びCH4を使用する。宛先ノードDST3は、通信チャネルCH3及びCH4を使用する。
(ステップS1)送信元ノードSRCにおいて、データフレーム生成部13は、宛先ノードDST1、DST2及びDST3の各々に送信するデータパケットを含むデータフレームを生成する。本実施形態において、データパケットは、データ信号に対応する。送信部15は、該データフレームを宛先ノードDST1、DST2及びDST3の各々に対応する通信チャネルCH1、CH2及びCH3により送信する。
制御部12は、送信部15がデータフレームを通信チャネルCH1、CH2及びCH3により送信する前に、受信部11に対して通信チャネルCH1、CH2及びCH3のCS(キャリアセンス)を指示する。受信部11は、該制御部12からの指示に応じて、通信チャネルCH1、CH2及びCH3においてCSを実施する。図4の例では、制御部12は、受信部11のCSによって通信チャネルCH1、CH2及びCH3のアイドル状態を確認した。次いで、制御部12は、送信部15へ、通信チャネルCH1、CH2及びCH3におけるデータフレームの送信を指示する。これにより、送信部15は、受信部11のCSによってアイドル状態が確認された通信チャネルCH1、CH2及びCH3により、データフレームを送信する。
なお、通信チャネルCH1、CH2及びCH3のCSにおいて、通信チャネルCH1、CH2及びCH3の全てがビジーである場合、送信元ノードSRCは、BO(バックオフ)だけデータフレームの送信を待機し、チャンネルアクセス獲得の次の機会を探す。一方、通信チャネルCH1、CH2及びCH3のCSにおいて、通信チャネルCH1、CH2又はCH3のいずれかがアイドル状態である場合、送信元ノードSRCは、BOだけデータフレームの送信を待機した後に、該アイドル状態の通信チャネルによりデータフレームを送信してもよい。
(ステップS2)送信元ノードSRCにおいて、トリガフレーム生成部14は、トリガフレームを生成する。送信部15は、宛先ノードDST1、DST2及びDST3へ、トリガフレームを通信チャネルCH4により送信する。
制御部12は、送信部15がトリガフレームを通信チャネルCH4により送信する前に、受信部11に対して通信チャネルCH4のCSを指示する。受信部11は、該制御部12からの指示に応じて、通信チャネルCH4においてCSを実施する。図4の例では、制御部12は、受信部11のCSによって通信チャネルCH4のアイドル状態を確認した。次いで、制御部12は、BOだけ待機してから、送信部15へ、通信チャネルCH4におけるトリガフレームの送信を指示する。これにより、送信部15は、受信部11のCSによって通信チャネルCH4のアイドル状態が確認されてからBOだけ待機した後に、通信チャネルCH4によりトリガフレームを送信する。一方、通信チャネルCH4のCSによって通信チャネルCH4のビジーが確認された場合、送信元ノードSRCは、BOだけトリガフレームの送信を待機し、チャンネルアクセス獲得の次の機会を探す。
なお、通信チャネルCH4のCSは、データフレームの送信完了後に開始してもよく、又は、データフレームの送信完了前に開始してもよい。但し、通信チャネルCH4のCSがデータフレームの送信完了前に開始される場合には、制御部12は、通信チャネルCH4におけるトリガフレームの送信完了がデータフレームの送信完了後になるように、送信部15を制御する。
(ステップS3)送信元ノードSRCにおいて、制御部12は、トリガフレームの送信が完了すると、ACK待ちのタイマーを起動する。送信元ノードSRCは、ACK待ちのタイマーがタイムアウトする前に宛先ノードDST1、DST2及びDST3の全てからのACKを受信した場合には、上述したステップS1に進む。一方、送信元ノードSRCは、宛先ノードDST1、DST2及びDST3の全てからのACKを受信する前に、ACK待ちのタイマーがタイムアウトした場合には、後述するステップS5を実行する。
(ステップS4)各宛先ノードDST1、DST2及びDST3において、受信部31は、データフレームを自宛先ノードに対応する通信チャネルにより受信する。図4の例では、宛先ノードDST1は通信チャネルCH1によりデータフレームを受信し、宛先ノードDST2は通信チャネルCH2によりデータフレームを受信し、宛先ノードDST3は通信チャネルCH3によりデータフレームを受信する。
次いで、各宛先ノードDST1、DST2及びDST3において、制御部32は、ACKフレーム生成部33へ、ACKフレームの生成を指示する。ACKフレーム生成部33は、該制御部32からの指示に応じて、ACKフレームを生成する。該ACKフレームは、データフレームに含まれるデータパケットについてのACKパケットを含むフレームである。本実施形態において、ACKパケットは、確認応答信号に対応する。
次いで、各宛先ノードDST1、DST2及びDST3において、受信部31は、トリガフレームを通信チャネルCH4により受信する。制御部32は、該トリガフレームを受信したタイミングを基準にして自宛先ノードのタイミングでACKフレームを通信チャネルCH4により送信するように、送信部34へ指示する。送信部34は、該制御部32からの指示に応じて、該自宛先ノードのタイミングでACKフレームを通信チャネルCH4により送信する。
図4の例では、宛先ノードDST1はトリガフレームを受信完了したタイミングから時間t1経過後にACKフレームACK1を通信チャネルCH4により送信し、宛先ノードDST2はトリガフレームを受信完了したタイミングから時間t2経過後にACKフレームACK2を通信チャネルCH4により送信し、宛先ノードDST3はトリガフレームを受信完了したタイミングから時間t3経過後にACKフレームACK3を通信チャネルCH4により送信する。時間t2は、時間t1とACKフレームACK1の送信に要する時間との合計の時間よりも長い時間である。時間t3は、時間t2とACKフレームACK2の送信に要する時間との合計の時間よりも長い時間である。これにより、通信チャネルCH4において、各宛先ノードDST1、DST2及びDST3から送信されるACKフレームACK1、ACK2及びACK3の衝突が回避される。
時間t1、t2及びt3は応答タイミング情報によって示される。時間t1を示す応答タイミング情報は、宛先ノードDST1が受信するデータパケットに含まれている。宛先ノードDST1の制御部32は、該データパケットから応答タイミング情報を取得して時間t1を認識する。時間t2を示す応答タイミング情報は、宛先ノードDST2が受信するデータパケットに含まれている。宛先ノードDST2の制御部32は、該データパケットから応答タイミング情報を取得して時間t2を認識する。時間t3を示す応答タイミング情報は、宛先ノードDST3が受信するデータパケットに含まれている。宛先ノードDST3の制御部32は、該データパケットから応答タイミング情報を取得して時間t3を認識する。
なお、各宛先ノードDST1、DST2及びDST3は、自己のデータパケットの復号に成功した場合にACKフレームを送信し、一方、自己のデータパケットの復号に失敗した場合にはACKフレームを送信しない。
(ステップS5)送信元ノードSRCは、宛先ノードDST1、DST2及びDST3の全てから通信チャネルCH4によりACKフレームを受信する前に、ACK待ちのタイマーがタイムアウトすると、ACKフレームを受信しなかった宛先ノードに対してデータパケットの再送を行う。
次に図5及び図6を参照して、本実施形態に係るデータフレーム及びトリガフレームの構成例を説明する。図5は、本実施形態に係るデータフレームの構成例を示す図である。図6は、本実施形態に係るトリガフレームの構成例を示す図である。
まずデータフレームの構成例を説明する。図5には、データフレームに格納される一つのデータパケットについての構成例が示されている。M個のデータパケットが一つのデータフレームに格納される場合(図4の例では、M=3)、該データフレームは、図5に示されるデータパケットの構成をM個含む。
図5において、データフレームは、PHY(物理)ヘッダとMACヘッダとペイロード(Payload)とFCS(Frame Check Sequence)とを含む。データフレームのMACヘッダは、少なくとも、データフレームIDフィールドと、RelativeDurationフィールドとを含む。データフレームIDフィールドは、データフレームの識別情報(データフレームID)を格納するフィールドである。RelativeDurationフィールドは、応答タイミング情報を格納するフィールドである。
データフレームのMACヘッダは、さらに、MCS_ACKフィールドを含んでもよい。MCS_ACKフィールドは、宛先ノードDSTがACKフレームに使用するMCS(Modulation and Coding Scheme、変調及び符号化方式)の情報を格納するフィールドである。なお、宛先ノードDSTがACKフレームに使用するMCSは、予め、送信元ノードSRCと宛先ノードDSTとの間で決定されてもよい。データフレームのMACヘッダにおいて、データフレームIDフィールド、RelativeDurationフィールド及びMCS_ACKフィールドの配置は、予め、該MACヘッダ内の任意の場所に決定されていればよい。
データフレームに含まれるデータフレームIDは、宛先ノードDSTにより、トリガフレームに含まれるデータフレームIDとの比較に使用される。宛先ノードDSTは、データフレームに含まれるデータフレームIDと同じデータフレームIDを含むトリガフレームを該データフレームについてのACKフレームを返信するタイミングの基準に使用する。
MCS_ACKフィールドは、宛先ノードDSTがACKフレームの送信に使用するMCSを示す情報を格納する。ACKのためのMCSを判定する種々のアルゴリズムが存在し、以下に該アルゴリズムの一例を示すが、これに限定されるものではない。
(MCS選択のためのアルゴリズムの例)
与えられたMCSセットの中から、最低レートのMCSを初期値として選択する。次いで、送信元ノードSRCが受信したACKのRSSI(Received Signal Strength Indicator、受信信号強度)に応じてMCSを更新する。より高いレートのMCSが許容可能であることをRSSIが示す場合、一つ高いレートのMCSに更新され、新たなMCSが次のデータパケットで指定される。選択されるMCSは、与えられたMCSセットの中の最大レートのMCSと、前回のRSSI及び背景ノイズによって示される最大許容レートのMCSとの両方を下回るレートのMCSである。
以上がMCS選択のためのアルゴリズムの例の説明である。
RelativeDurationフィールドは、応答タイミング情報を格納する。図4に示す例では、宛先ノードDST1へのデータパケットのRelativeDurationフィールドは、時間t1を示す応答タイミング情報を格納する。また、宛先ノードDST2へのデータパケットのRelativeDurationフィールドは、時間t2を示す応答タイミング情報を格納する。また、宛先ノードDST3へのデータパケットのRelativeDurationフィールドは、時間t3を示す応答タイミング情報を格納する。
応答タイミング情報が示す時間を算出する種々のアルゴリズムが存在してもよく、以下に該アルゴリズムの一例を示すが、これに限定されるものではない。
(応答タイミング情報の算出アルゴリズムの例)
ここでは、図4の例を挙げて、時間t1、t2及びt3を算出する場合について説明する。
t1=SIFS
t2=t1+t_ACK1+SIFS
t3=t2+t_ACK2+SIFS
t_ACK1=(ACK1のサイズ)/(ACK1の送信レート)
t_ACK2=(ACK2のサイズ)/(ACK2の送信レート)
但し、SIFS(Short Inter Frame Space)は、ACKフレームを送信する前の待ち時間である。t_ACK1は、ACKフレームACK1の送信に要する時間である。t_ACK2は、ACKフレームACK2の送信に要する時間である。ACKフレームのサイズは同一である。ACKフレームの送信レートは、MCS_ACKフィールドで指定されるMCSによって決まる。
以上が応答タイミング情報の算出アルゴリズムの例の説明である。
次にトリガフレームの構成例を説明する。図6において、トリガフレームは、PHYヘッダとMACヘッダとFCSとを含む。本実施形態において、トリガフレームに関し、以下の3つの機能を有する。
第1の機能として、トリガフレームの送信前に実施されるCS及びBOによって、トリガフレームと次のACKとの両方のために、トリガフレームと次のACKの伝送に使用される通信チャネル(図4の例では通信チャネルCH4)のアクセス権を獲得する。
第2の機能として、トリガフレームのPHYヘッダは、トリガフレームのPHYヘッダを復号することのできる他のノードに対するTXOP保護を提供する。これにより、トリガフレームの少なくともPHYヘッダを復号することのできる例えば従来のレガシーWi−Fiデバイス等の通信デバイスの干渉から次のACKを保護することができる。
第3の機能として、トリガフレームのMACヘッダは、トリガフレームを復号することのできる他のノードに対するNAV保護を提供する。
トリガフレームのPHYヘッダは、レガシーWi−FiパケットのPHYヘッダと同じ構成である。これにより、レガシーWi−FiデバイスはトリガフレームのPHYヘッダを認識できる。図6に示すとおり、トリガフレームのPHYヘッダのSignalフィールドはRATE及びLENGTHを格納する。該RATE及びLENGTHを使用して待機時間を算出することができる。レガシーWi−Fiデバイスは、トリガフレーム内のSignalフィールドを検出すると、該SignalフィールドのRATE及びLENGTHを使用して算出した待機時間だけ、自己の送信を待機する。
RATEは例えば6Mbpsに設定され、LENGTHは、該RATE「6Mbps」に基づいて、データフレームに対して返信される最終ACKまでをカバーできる待機時間になるように設定される。図4の例においては、トリガフレームのPHYヘッダのSignalフィールドに適用される待機時間は、「t_trigger+t3+t_ACK3」以上である。但し、t_triggerは、トリガフレームのPHYヘッダのSignalフィールドの終わりからトリガフレームの終わりまでの継続時間である。t_ACK3は、ACKフレームACK3の送信に要する時間であり、「t_ACK3=(ACK3のサイズ)/(ACK3の送信レート)」である。
トリガフレームのMACヘッダは、少なくとも、FrameControlフィールドと、Durationフィールドと、データフレームIDフィールドとを含む。FrameControlフィールドは、フレームの機能を識別する情報を格納する。トリガフレームのFrameControlフィールドは、当該フレームがトリガフレームであることを示す情報を格納する。
Durationフィールドは、NAVの値を格納する。トリガフレームのDurationフィールドに格納されるNAVの値は、トリガフレームの送信完了から最終ACKの送信完了までNAV保護が継続される値である。図4の例では、トリガフレームのDurationフィールドに格納されるNAVの値は、「t3+t_ACK3」以上である。
データフレームIDフィールドは、データフレームIDを格納する。トリガフレームのデータフレームIDフィールドに格納されるデータフレームIDは、該トリガフレームに対応するデータフレームのデータフレームIDである。宛先ノードDSTは、受信したトリガフレームのデータフレームIDフィールドに格納されるデータフレームIDが以前に受信したデータフレームのデータフレームIDと同一であるか否かを判断する。該判断の結果、同一である場合に、宛先ノードDSTは、該トリガフレームの受信完了のタイミングを基準にして、該同一のデータフレームIDのデータフレームのRelativeDurationフィールドに格納される応答タイミング情報で示されるタイミングで、該同一のデータフレームIDのデータフレームについてのACKフレームを返信する。
次に本実施形態に係る適用例を説明する。
(適用例1)
図7を参照して本実施形態に係る適用例1を説明する。図7は、本実施形態に係る適用例1の説明図である。適用例1では、即時ACK(Immediate ACK)に適用する。即時ACKが適用される場合、送信元ノードSRCは、送信したデータフレームについての全てのACKフレームを受信するか、又は、いずれかのACKフレームについてのACK待ちのタイマーがタイムアウトするまでは、次のデータフレームを送信することができない。
送信元ノードSRCと宛先ノードDST1、DST2及びDST3とは、第1共有通信媒体と、第2共有通信媒体とを使用して通信を行う。通信チャネルCH1、CH2及びCH3は第1共有通信媒体に設けられている。通信チャネルCH4は第2共有通信媒体に設けられている。送信元ノードSRCは、通信チャネルCH1、CH2、CH3及びCH4を使用する。宛先ノードDST1は、通信チャネルCH1及びCH4を使用する。宛先ノードDST2は、通信チャネルCH2及びCH4を使用する。宛先ノードDST3は、通信チャネルCH3及びCH4を使用する。
図7の最初の例は、第1データフレームの送信前のCSによって、通信チャネルCH1及びCH2のアイドル状態と、通信チャネルCH3のビジーとが確認された場合である。第1データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットとを含む。送信元ノードSRCは、通信チャネルCH1及びCH2により第1データフレームを送信する。次いで、送信元ノードSRCは、該第1データフレームに対応する第1トリガフレームを通信チャネルCH4により送信する。第1データフレームの各データパケットと第1トリガフレームとは、同一のデータフレームID1を含む。
宛先ノードDST1は、通信チャネルCH1により第1データフレームを受信し、次いで通信チャネルCH4により第1トリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2により第1データフレームを受信し、次いで通信チャネルCH4により第1トリガフレームを受信する。宛先ノードDST1は、第1トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第1データフレームについてのACKフレームACK1を通信チャネルCH4により送信する。宛先ノードDST2は、第1トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第1データフレームについてのACKフレームACK2を通信チャネルCH4により送信する。図7の例では、通信チャネルCH4において、第1データフレームに関し、宛先ノードDST1のACKフレームACK1の送信完了後に、宛先ノードDST2のACKフレームACK2が送信される。これにより、通信チャネルCH4において、第1データフレームに関し、ACKフレームACK1とACKフレームACK2との衝突が回避される。
図7の次の例は、第2データフレームの送信前のCSによって、通信チャネルCH3のアイドル状態と、通信チャネルCH1及びCH2のビジーとが確認された場合である。
第2データフレームは、宛先ノードDST3へのデータパケットを含む。送信元ノードSRCは、通信チャネルCH3により第2データフレームを送信する。次いで、送信元ノードSRCは、該第2データフレームに対応する第2トリガフレームを通信チャネルCH4により送信する。第2データフレームのデータパケットと第2トリガフレームとは、同一のデータフレームID1を含む。
宛先ノードDST3は、通信チャネルCH3により第2データフレームを受信し、次いで通信チャネルCH4により第2トリガフレームを受信する。宛先ノードDST3は、第2トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第2データフレームについてのACKフレームACK3を通信チャネルCH4により送信する。
図7の次の例は、第3データフレームの送信前のCSによって、通信チャネルCH1、CH2及びCH3のアイドル状態が確認された場合である。なお、CSによってアイドル状態が確認された通信チャネルを通信に使用し、CSによってビジーが確認された通信チャネルを通信に使用しない。
第3データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットと、宛先ノードDST3へのデータパケットとを含む。送信元ノードSRCは、通信チャネルCH1、CH2及びCH3により第3データフレームを送信する。次いで、送信元ノードSRCは、該第3データフレームに対応する第3トリガフレームを通信チャネルCH4により送信する。第3データフレームの各データパケットと第3トリガフレームとは、同一のデータフレームID1を含む。
宛先ノードDST1は、通信チャネルCH1により第3データフレームを受信し、次いで通信チャネルCH4により第3トリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2により第3データフレームを受信し、次いで通信チャネルCH4により第3トリガフレームを受信する。宛先ノードDST3は、通信チャネルCH3により第3データフレームを受信し、次いで通信チャネルCH4により第3トリガフレームを受信する。
宛先ノードDST1は、第3トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第3データフレームについてのACKフレームACK1を通信チャネルCH4により送信する。宛先ノードDST2は、第3トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第3データフレームについてのACKフレームACK2を通信チャネルCH4により送信する。宛先ノードDST3は、第3トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第3データフレームについてのACKフレームACK3を通信チャネルCH4により送信する。図7の例では、通信チャネルCH4において、第3データフレームに関し、宛先ノードDST1のACKフレームACK1の送信完了後に、宛先ノードDST2のACKフレームACK2が送信され、該宛先ノードDST2のACKフレームACK2の送信完了後に、宛先ノードDST3のACKフレームACK3が送信される。これにより、通信チャネルCH4において、第3データフレームに関し、ACKフレームACK1とACKフレームACK2とACKフレームACK3との衝突が回避される。
なお、図7の例では、第1データフレーム、第2データフレーム及び第3データフレームのデータフレームIDは全て同一であるが、各データフレームのデータフレームIDは異なってもよい。
(適用例2)
図8、図9及び図10を参照して本実施形態に係る適用例2を説明する。図8は、本実施形態に係る適用例2のネットワークトポロジーを示す図である。図8に示すネットワークトポロジーでは、送信元ノードSRCと、宛先ノードDST1及びDST2と、従来のWi−Fiデバイスとが存在する。図8において、双方向矢印の実線で示されるとおり、送信元ノードSRCと各宛先ノードDST1及びDST2との間は相手の信号を検出できる状態にある。同様に、双方向矢印の実線で示されるとおり、送信元ノードSRCとWi−Fiデバイスとの間は相手の信号を検出できる状態にある。同様に、双方向矢印の実線で示されるとおり、宛先ノードDST1と宛先ノードDST2との間は相手の信号を検出できる状態にある。一方、図8において、双方向矢印の破線で示されるとおり、各宛先ノードDST1及びDST2とWi−Fiデバイスとの間は相手の信号を検出できない状態にある。なお、本適用例2では、トリガフレームの少なくともPHYヘッダを復号することのできる通信デバイスの一例として、従来のWi−Fiデバイスを挙げて説明するが、従来のWi−Fiデバイス以外の通信デバイスにも適用できる。
図9は、本実施形態に係る適用例2を説明するための従来の通信方法の説明図である。図10は、本実施形態に係る適用例2の通信方法の説明図である。図9及び図10において、通信チャネルCH1及びCH2は第1共有通信媒体に設けられている。通信チャネルCH4は第2共有通信媒体に設けられている。
まず図9を参照して従来の通信方法を説明する。図9において、送信元ノードSRC_oldは図8のネットワークトポロジーにおける送信元ノードSRCに、宛先ノードDST1_oldは図8のネットワークトポロジーにおける宛先ノードDST1に、宛先ノードDST2_oldは図8のネットワークトポロジーにおける宛先ノードDST2に、Wi−Fiデバイスは図8のネットワークトポロジーにおけるWi−Fiデバイスに、それぞれの信号検出状態(相手の信号を検出可能か否か)が対応する。
データフレームは、宛先ノードDST1_oldへのデータパケットと、宛先ノードDST2_oldへのデータパケットとを含む。送信元ノードSRC_oldは、通信チャネルCH1及びCH2によりデータフレームを送信する。宛先ノードDST1_oldは、通信チャネルCH1によりデータフレームを受信する。宛先ノードDST2_oldは、通信チャネルCH2によりデータフレームを受信する。
宛先ノードDST1_oldは、データフレームの受信完了後に、通信チャネルCH4においてCS及びBOを実施してから、ACKフレームACK1を通信チャネルCH4により送信する。宛先ノードDST2_oldは、通信チャネルCH4においてCSを実施後にBOを実施し、宛先ノードDST1_oldのACKフレームACK1の送信完了後にCSを実施後にBOを実施してから、ACKフレームACK2を通信チャネルCH4により送信する。これにより、通信チャネルCH4において、ACKフレームACK1とACKフレームACK2との衝突は回避される。
しかしながら、各宛先ノードDST1_old及びDST2_oldとWi−Fiデバイスとの間は、相手の信号を検出できない状態にある。このため、Wi−Fiデバイスは、通信チャネルCH4においてCSを実施しても、宛先ノードDST1_old及びDST2_oldの通信チャネルCH4の使用を検出できない。また、各宛先ノードDST1_old及びDST2_oldは、通信チャネルCH4においてCSを実施しても、Wi−Fiデバイスの通信チャネルCH4の使用を検出できない。このため、図9に示すとおり、通信チャネルCH4において、各宛先ノードDST1_old及びDST2_oldが送信したACKフレームACK1及びACK2と、Wi−Fiデバイスが送信したデータフレームとの衝突(衝突タイプ1)が発生する可能性があった。
次に図10を参照して、本実施形態に係る適用例2の通信方法を説明する。データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットとを含む。送信元ノードSRCは、通信チャネルCH1及びCH2においてCS及びBOを実施してから、データフレームを送信する。次いで、送信元ノードSRCは、通信チャネルCH4においてCS及びBOを実施してから、該データフレームに対応するトリガフレームを通信チャネルCH4により送信する。該データフレームの各データパケットと該トリガフレームとは、同一のデータフレームIDを含む。
宛先ノードDST1は、通信チャネルCH1によりデータフレームを受信し、次いで通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2によりデータフレームを受信し、次いで通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST1は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK1を通信チャネルCH4により送信する。宛先ノードDST2は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK2を通信チャネルCH4により送信する。図10の例では、通信チャネルCH4において、同じデータフレームに関し、宛先ノードDST1のACKフレームACK1の送信完了後に、宛先ノードDST2のACKフレームACK2が送信される。これにより、通信チャネルCH4において、同じデータフレームに関し、ACKフレームACK1とACKフレームACK2との衝突が回避される。
また、Wi−Fiデバイスと送信元ノードSRCとの間は相手の信号を検出できる状態にある。このため、Wi−Fiデバイスは、通信チャネルCH4において、送信元ノードSRCが送信したトリガフレームを検出する。Wi−Fiデバイスは、該トリガフレームのSignalフィールドで示される待機時間だけ、通信チャネルCH4において自己の送信を待機する。これにより、図10に示すとおり、トリガフレームによるTXOP保護期間が終了するまでは、通信チャネルCH4において、Wi−Fiデバイスの送信が待機される。該トリガフレームによるTXOP保護期間は、各宛先ノードDST1及びDST2がACKフレームACK1及びACK2を送信完了するまで継続する。この結果、通信チャネルCH4において、各宛先ノードDST1及びDST2が送信したACKフレームACK1及びACK2と、Wi−Fiデバイスからの送信との衝突が回避される。Wi−Fiデバイスは、該トリガフレームのSignalフィールドで示される待機時間だけ自己の送信を待機した後に、通信チャネルCH4においてCS及びBOを実施してから、データフレームを通信チャネルCH4により送信する。
(適用例3)
図11、図12及び図13を参照して本実施形態に係る適用例3を説明する。図11は、本実施形態に係る適用例3のネットワークトポロジーを示す図である。図11に示すネットワークトポロジーでは、送信元ノードSRCと、宛先ノードDST1、DST2及びDST3とが存在する。図11において、双方向矢印の実線で示されるとおり、送信元ノードSRCと各宛先ノードDST1、DST2及びDST3との間は相手の信号を検出できる状態にある。一方、図11において、双方向矢印の破線で示されるとおり、宛先ノードDST1と宛先ノードDST2との間、宛先ノードDST1と宛先ノードDST3との間、及び、宛先ノードDST2と宛先ノードDST3との間は、相手の信号を検出できない状態にある。
図12は、本実施形態に係る適用例3を説明するための従来の通信方法の説明図である。図13は、本実施形態に係る適用例3の通信方法の説明図である。図12及び図13において、通信チャネルCH1、CH2及びCH3は第1共有通信媒体に設けられている。通信チャネルCH4は第2共有通信媒体に設けられている。
まず図12を参照して従来の通信方法を説明する。図12において、送信元ノードSRC_oldは図11のネットワークトポロジーにおける送信元ノードSRCに、宛先ノードDST1_oldは図11のネットワークトポロジーにおける宛先ノードDST1に、宛先ノードDST2_oldは図11のネットワークトポロジーにおける宛先ノードDST2に、宛先ノードDST3_oldは図11のネットワークトポロジーにおける宛先ノードDST3に、それぞれの信号検出状態(相手の信号を検出可能か否か)が対応する。
データフレームは、宛先ノードDST1_oldへのデータパケットと、宛先ノードDST2_oldへのデータパケットと、宛先ノードDST3_oldへのデータパケットとを含む。送信元ノードSRC_oldは、通信チャネルCH1、CH2及びCH3によりデータフレームを送信する。宛先ノードDST1_oldは、通信チャネルCH1によりデータフレームを受信する。宛先ノードDST2_oldは、通信チャネルCH2によりデータフレームを受信する。宛先ノードDST3_oldは、通信チャネルCH3によりデータフレームを受信する。
各宛先ノードDST1_old、DST2_old及びDST3_oldは、データフレームの受信完了後に、通信チャネルCH4においてCSを実施する。しかし、宛先ノードDST1_old、DST2_old及びDST3_oldにおいては、互いに相手の信号を検出できない状態にあるので、たとえ他の宛先ノードが通信チャネルCH4において送信を行っても該送信を検出できない。このため、各宛先ノードDST1_old、DST2_old及びDST3_oldは、図12に示すとおり、データフレームの受信完了後に、通信チャネルCH4においてCS及びBOを実施してから、各ACKフレームACK1、ACK2及びACK3を通信チャネルCH4により送信する。この結果、該ACKフレームACK1、ACK2及びACK3同士の衝突(衝突タイプ2)が発生する可能性があった。
次に図13を参照して、本実施形態に係る適用例3の通信方法を説明する。データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットと、宛先ノードDST3へのデータパケットとを含む。送信元ノードSRCは、CS及びBOを実施してから通信チャネルCH1、CH2及びCH3によりデータフレームを送信する。次いで、送信元ノードSRCは、通信チャネルCH4においてCS及びBOを実施してから、該データフレームに対応するトリガフレームを通信チャネルCH4により送信する。該データフレームの各データパケットと該トリガフレームとは、同一のデータフレームIDを含む。
宛先ノードDST1は、通信チャネルCH1によりデータフレームを受信し、次いで通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2によりデータフレームを受信し、次いで通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST3は、通信チャネルCH3によりデータフレームを受信し、次いで通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST1は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK1を通信チャネルCH4により送信する。宛先ノードDST2は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK2を通信チャネルCH4により送信する。宛先ノードDST3は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK3を通信チャネルCH4により送信する。図13の例では、通信チャネルCH4において、同じデータフレームに関し、宛先ノードDST1のACKフレームACK1の送信完了後に宛先ノードDST2のACKフレームACK2が送信され、該宛先ノードDST2のACKフレームACK2の送信完了後に宛先ノードDST3のACKフレームACK3が送信される。これにより、通信チャネルCH4において、同じデータフレームに関し、ACKフレームACK1、ACK2及びACK3同士の衝突が回避される。
(適用例4)
図14、図15及び図16を参照して本実施形態に係る適用例4を説明する。図14は、本実施形態に係る適用例4のネットワークトポロジーを示す図である。図14に示すネットワークトポロジーでは、送信元ノードSRC1及びSRC2と、宛先ノードDST1、DST2、DST5及びDST6とが存在する。送信元ノードSRC1と宛先ノードDST1及びDST2とはグループ1に属する。送信元ノードSRC2と宛先ノードDST5及びDST6とはグループ2に属する。送信元ノードSRC1及びSRC2は、図2に示す送信元ノードSRCの構成を備える。宛先ノードDST1、DST2、DST5及びDST6は、図3に示す宛先ノードDSTの構成を備える。
図14において、双方向矢印の実線で示されるとおり、送信元ノードSRC1と送信元ノードSRC2との間、送信元ノードSRC1と各宛先ノードDST1、DST2、DST5及びDST6との間、並びに、送信元ノードSRC2と各宛先ノードDST1、DST2、DST5及びDST6との間は相手の信号を検出できる状態にある。また、同じグループに属する宛先ノード同士、つまり、宛先ノードDST1と宛先ノードDST2との間、及び、宛先ノードDST5と宛先ノードDST5との間は相手の信号を検出できる状態にある。一方、異なるグループに属する宛先ノード同士、つまり、宛先ノードDST1と各宛先ノードDST5及びDST6との間、並びに、宛先ノードDST2と各宛先ノードDST5及びDST6との間は相手の信号を検出できない状態にある。
図15は、本実施形態に係る適用例4を説明するための従来の通信方法の説明図である。図16は、本実施形態に係る適用例4の通信方法の説明図である。図15及び図16において、通信チャネルCH1、CH2、CH5及びCH6は第1共有通信媒体に設けられている。通信チャネルCH4は第2共有通信媒体に設けられている。
まず図15を参照して従来の通信方法を説明する。図15において、送信元ノードSRC1_oldは図14のネットワークトポロジーにおける送信元ノードSRC1に、送信元ノードSRC2_oldは図14のネットワークトポロジーにおける送信元ノードSRC2に、宛先ノードDST1_oldは図14のネットワークトポロジーにおける宛先ノードDST1に、宛先ノードDST2_oldは図14のネットワークトポロジーにおける宛先ノードDST2に、宛先ノードDST5_oldは図14のネットワークトポロジーにおける宛先ノードDST5に、宛先ノードDST6_oldは図14のネットワークトポロジーにおける宛先ノードDST6に、それぞれの信号検出状態(相手の信号を検出可能か否か)が対応する。
第1データフレームは、宛先ノードDST1_oldへのデータパケットと、宛先ノードDST2_oldへのデータパケットとを含む。送信元ノードSRC1_oldは、CS及びBOを実施してから通信チャネルCH1及びCH2により第1データフレームを送信する。宛先ノードDST1_oldは、通信チャネルCH1により第1データフレームを受信する。宛先ノードDST2_oldは、通信チャネルCH2により第1データフレームを受信する。
第2データフレームは、宛先ノードDST5_oldへのデータパケットと、宛先ノードDST6_oldへのデータパケットとを含む。送信元ノードSRC2_oldは、CS及びBOを実施してから通信チャネルCH5及びCH6により第2データフレームを送信する。宛先ノードDST5_oldは、通信チャネルCH5により第2データフレームを受信する。宛先ノードDST6_oldは、通信チャネルCH6により第2データフレームを受信する。
各宛先ノードDST1_old、DST2_old、DST5_old及びDST6_oldは、データフレームの受信完了後に、通信チャネルCH4においてCSを実施する。同じグループに属する宛先ノード同士の間は相手の信号を検出できる状態にあるので、CSにより他の宛先ノードの送信を検出できる。このため、同じグループに属する宛先ノード同士の間では、通信チャネルCH4においてCS及びBOを実施することによって、ACKフレーム同士の衝突が回避される。しかし、異なるグループに属する宛先ノード同士の間は相手の信号を検出できない状態にあるので、CSを実施しても他の宛先ノードの送信を検出できない。このため、異なるグループに属する宛先ノード同士の間では、図15に示すとおり、通信チャネルCH4においてCS及びBOを実施しても、ACKフレーム同士の衝突(衝突タイプ3)が発生する可能性があった。
次に図16を参照して、本実施形態に係る適用例4の通信方法を説明する。第1データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットとを含む。送信元ノードSRC1は、CS及びBOを実施してから通信チャネルCH1及びCH2により第1データフレームを送信する。送信元ノードSRC1は、該第1データフレームの次に、通信チャネルCH4においてCS及びBOを実施してから、該第1データフレームに対応する第1トリガフレームを通信チャネルCH4により送信する。該第1データフレームの各データパケットと該第1トリガフレームとは、同一のデータフレームIDを含む。
宛先ノードDST1は、通信チャネルCH1により第1データフレームを受信し、次いで通信チャネルCH4により第1トリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2により第1データフレームを受信し、次いで通信チャネルCH4により第1トリガフレームを受信する。宛先ノードDST1は、第1トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第1データフレームについてのACKフレームACK1を通信チャネルCH4により送信する。宛先ノードDST2は、第1トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第1データフレームについてのACKフレームACK2を通信チャネルCH4により送信する。図16の例では、通信チャネルCH4において、第1データフレームに関し、宛先ノードDST1のACKフレームACK1の送信完了後に宛先ノードDST2のACKフレームACK2が送信される。これにより、通信チャネルCH4において、第1データフレームに関し、ACKフレームACK1とACKフレームACK2との衝突が回避される。
第2データフレームは、宛先ノードDST5へのデータパケットと、宛先ノードDST6へのデータパケットとを含む。送信元ノードSRC2は、CS及びBOを実施してから通信チャネルCH5及びCH6により第2データフレームを送信する。次いで、送信元ノードSRC2は、該第2データフレームに対応する第2トリガフレームの送信前に、通信チャネルCH4においてCS及びBOを実施する。送信元ノードSRC2は、該CS及びBOの実施により、通信チャネルCH4において送信元ノードSRC1から送信された第1トリガフレームを検出する。そして、送信元ノードSRC2は、該第1トリガフレームによるTXOP保護期間及びNAV保護期間が終了するまでは、通信チャネルCH4において自己の送信を待機する。該第1トリガフレームによるTXOP保護期間及びNAV保護期間は、各宛先ノードDST1及びDST2がACKフレームACK1及びACK2を送信完了するまで継続する。この結果、通信チャネルCH4において、各宛先ノードDST1及びDST2が送信したACKフレームACK1及びACK2と、送信元ノードSRC2からの送信との衝突が回避される。送信元ノードSRC2は、該第1トリガフレームによるTXOP保護期間及びNAV保護期間が終了するまで自己の送信を待機した後に、通信チャネルCH4においてCS及びBOを実施してから、第2トリガフレームを通信チャネルCH4により送信する。第2データフレームの各データパケットと第2トリガフレームとは、同一のデータフレームIDを含む。
宛先ノードDST5は、通信チャネルCH5により第2データフレームを受信し、次いで通信チャネルCH4により第2トリガフレームを受信する。宛先ノードDST6は、通信チャネルCH6により第2データフレームを受信し、次いで通信チャネルCH4により第2トリガフレームを受信する。宛先ノードDST5は、第2トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第2データフレームについてのACKフレームACK5を通信チャネルCH4により送信する。宛先ノードDST6は、第2トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第2データフレームについてのACKフレームACK6を通信チャネルCH4により送信する。図16の例では、通信チャネルCH4において、第2データフレームに関し、宛先ノードDST5のACKフレームACK5の送信完了後に宛先ノードDST6のACKフレームACK6が送信される。これにより、通信チャネルCH4において、第2データフレームに関し、ACKフレームACK5とACKフレームACK6との衝突が回避される。また、第2トリガフレームによるTXOP保護期間及びNAV保護期間によって、各宛先ノードDST5及びDST6による各ACKフレームACK5及びACK6の送信完了が保護される。
(適用例5)
図17、図18及び図19を参照して本実施形態に係る適用例5を説明する。図17は、本実施形態に係る適用例5のネットワークトポロジーを示す図である。図17に示すネットワークトポロジーでは、送信元ノードSRCと、宛先ノードDST1、DST2及びDST3とが存在する。図17において、双方向矢印の実線で示されるとおり、送信元ノードSRCと各宛先ノードDST1、DST2及びDST3との間は相手の信号を検出できる状態にある。また、同様に、双方向矢印の実線で示されるとおり、宛先ノードDST1と宛先ノードDST2との間、宛先ノードDST1と宛先ノードDST3との間、及び、宛先ノードDST2と宛先ノードDST3との間は、相手の信号を検出できる状態にある。
図18は、本実施形態に係る適用例5を説明するための従来の通信方法の説明図である。図19は、本実施形態に係る適用例5の通信方法の説明図である。図18及び図19において、通信チャネルCH1、CH2及びCH3は第1共有通信媒体に設けられている。通信チャネルCH4は第2共有通信媒体に設けられている。
まず図18を参照して従来の通信方法を説明する。図18において、送信元ノードSRC_oldは図17のネットワークトポロジーにおける送信元ノードSRCに、宛先ノードDST1_oldは図17のネットワークトポロジーにおける宛先ノードDST1に、宛先ノードDST2_oldは図17のネットワークトポロジーにおける宛先ノードDST2に、宛先ノードDST3_oldは図17のネットワークトポロジーにおける宛先ノードDST3に、それぞれの信号検出状態(相手の信号を検出可能か否か)が対応する。
データフレームは、宛先ノードDST1_oldへのデータパケットと、宛先ノードDST2_oldへのデータパケットと、宛先ノードDST3_oldへのデータパケットとを含む。送信元ノードSRC_oldは、通信チャネルCH1、CH2及びCH3によりデータフレームを送信する。宛先ノードDST1_oldは、通信チャネルCH1によりデータフレームを受信する。宛先ノードDST2_oldは、通信チャネルCH2によりデータフレームを受信する。宛先ノードDST3_oldは、通信チャネルCH3によりデータフレームを受信する。
各宛先ノードDST1_old、DST2_old及びDST3_oldは、データフレームの受信完了後に、通信チャネルCH4においてCSを実施する。宛先ノードDST1_old、DST2_old及びDST3_oldは、互いに相手の信号を検出できる状態にあるので、他の宛先ノードが通信チャネルCH4において送信を行うと該送信を検出できる。このため、各宛先ノードDST1_old、DST2_old及びDST3_oldは、図12に示すとおり、データフレームの受信完了後に、通信チャネルCH4においてCS及びBOを実施してから、各ACKフレームACK1、ACK2及びACK3を通信チャネルCH4により送信する。この結果、図18の例では、通信チャネルCH4において、同じデータフレームに関し、宛先ノードDST1_oldのACKフレームACK1の送信完了後に、宛先ノードDST2_oldのACKフレームACK2が送信され、該宛先ノードDST2_oldのACKフレームACK2の送信完了後に、宛先ノードDST3_oldのACKフレームACK3が送信される。これにより、通信チャネルCH4において、同じデータフレームに関し、ACKフレームACK1とACKフレームACK2とACKフレームACK3との衝突が回避される。
しかしながら、各宛先ノードDST1_old、DST2_old及びDST3_oldが、自己のACKフレームを送信する前に、通信チャネルCH4においてCS及びBOを実施するために、通信チャネルCH4の利用効率が低下する。また、同一のデータフレームについての宛先ノードの数が増えると、その増えた分、BOの合計時間も長くなる。また、全ての宛先ノードのACKフレームの送信完了までに要する時間が送信元ノードにおけるACK待ちのタイマーのタイムアウト時間よりも長くなると、送信元ノードは該当するデータパケットを再送信することになるので、通信効率が低下する。
次に図19を参照して、本実施形態に係る適用例5の通信方法を説明する。データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットと、宛先ノードDST3へのデータパケットとを含む。送信元ノードSRCは、CS及びBOを実施してから通信チャネルCH1、CH2及びCH3によりデータフレームを送信する。次いで、送信元ノードSRCは、通信チャネルCH4においてCS及びBOを実施してから、該データフレームに対応するトリガフレームを通信チャネルCH4により送信する。該データフレームの各データパケットと該トリガフレームとは、同一のデータフレームIDを含む。
宛先ノードDST1は、通信チャネルCH1によりデータフレームを受信し、次いで通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2によりデータフレームを受信し、次いで通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST3は、通信チャネルCH3によりデータフレームを受信し、次いで通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST1は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK1を通信チャネルCH4により送信する。宛先ノードDST2は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK2を通信チャネルCH4により送信する。宛先ノードDST3は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK3を通信チャネルCH4により送信する。図19の例では、通信チャネルCH4において、同じデータフレームに関し、宛先ノードDST1のACKフレームACK1の送信完了後に宛先ノードDST2のACKフレームACK2が送信され、該宛先ノードDST2のACKフレームACK2の送信完了後に宛先ノードDST3のACKフレームACK3が送信される。これにより、通信チャネルCH4において、同じデータフレームに関し、ACKフレームACK1、ACK2及びACK3同士の衝突が回避される。
また、各宛先ノードDST1、DST2及びDST3は、自己のACKフレームを送信する前に、通信チャネルCH4においてCS及びBOを実施しない。これにより、上述した図18に示す従来の通信方法に比して、通信チャネルCH4の利用効率が向上する。また、同一のデータフレームについての宛先ノードの数が増えても、BOの時間はトリガフレームの送信前の1回分だけで済む。このため、全ての宛先ノードのACKフレームの送信完了までに要する時間が送信元ノードにおけるACK待ちのタイマーのタイムアウト時間よりも長くなることを抑制できる。これにより、送信元ノードにおけるデータパケットの再送信の発生を低減し、通信効率の低下を防止する効果が得られる。
(適用例6)
図20を参照して本実施形態に係る適用例6を説明する。図20は、本実施形態に係る適用例6の説明図である。適用例6では、遅延ACK(Delayed ACK)に適用する。遅延ACKが適用される場合、上述した即時ACKとは異なり、送信元ノードSRCは、送信したデータフレームについてのACKフレームを待たずに、次のデータフレームを送信することができる。
送信元ノードSRCと宛先ノードDST1、DST2及びDST3とは、第1共有通信媒体と第2共有通信媒体とを使用して通信を行う。通信チャネルCH1、CH2及びCH3は第1共有通信媒体に設けられている。通信チャネルCH4は第2共有通信媒体に設けられている。送信元ノードSRCは、通信チャネルCH1、CH2、CH3及びCH4を使用する。宛先ノードDST1は、通信チャネルCH1及びCH4を使用する。宛先ノードDST2は、通信チャネルCH2及びCH4を使用する。宛先ノードDST3は、通信チャネルCH3及びCH4を使用する。
第1データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットとを含む。第2データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST3へのデータパケットとを含む。送信元ノードSRCは、通信チャネルCH1及びCH2により第1データフレームを送信する。次いで、送信元ノードSRCは、通信チャネルCH1及びCH3により第2データフレームを送信する。次いで、送信元ノードSRCは、第1データフレームに対応する第1トリガフレームを通信チャネルCH4により送信する。第1データフレームの各データパケットと第1トリガフレームとは、同一のデータフレームID1を含む。第2データフレームの各データパケットは、データフレームID2を含む。
宛先ノードDST1は、通信チャネルCH1により第1データフレームを受信し、次いで通信チャネルCH1により第2データフレームを受信し、次いで通信チャネルCH4により第1トリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2により第1データフレームを受信し、次いで通信チャネルCH4により第1トリガフレームを受信する。宛先ノードDST3は、通信チャネルCH3により第2データフレームを受信し、次いで通信チャネルCH4により第1トリガフレームを受信する。
宛先ノードDST1は、第1トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第1データフレームについてのACKフレームACK1を通信チャネルCH4により送信する。宛先ノードDST2は、第1トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第1データフレームについてのACKフレームACK2を通信チャネルCH4により送信する。宛先ノードDST3は、第1トリガフレームを受信するが、該第1トリガフレームに含まれるデータフレームID1は第2データフレームに含まれるデータフレームID2とは異なるので、第2データフレームについてのACKフレームACK3をまだ送信しない。図20の例では、通信チャネルCH4において、第1データフレームに関し、宛先ノードDST1のACKフレームACK1の送信完了後に、宛先ノードDST2のACKフレームACK2が送信される。これにより、通信チャネルCH4において、第1データフレームに関し、ACKフレームACK1とACKフレームACK2との衝突が回避される。
次いで、送信元ノードSRCは、第2データフレームに対応する第2トリガフレームを通信チャネルCH4により送信する。第2トリガフレームは、データフレームID2を含む。各宛先ノードDST1、DST2及びDST3は、通信チャネルCH4により第2トリガフレームを受信する。宛先ノードDST1は、第2トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第2データフレームについてのACKフレームACK1を通信チャネルCH4により送信する。宛先ノードDST3は、第2トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第2データフレームについてのACKフレームACK3を通信チャネルCH4により送信する。宛先ノードDST2は、第2トリガフレームを受信するが、該第2トリガフレームに含まれるデータフレームID2に対応する第2データフレームを受信していないので、第2データフレームについてのACKフレームACK2を送信しない。図20の例では、通信チャネルCH4において、第2データフレームに関し、宛先ノードDST1のACKフレームACK1の送信完了後に、宛先ノードDST3のACKフレームACK3が送信される。これにより、通信チャネルCH4において、第2データフレームに関し、ACKフレームACK1とACKフレームACK3との衝突が回避される。
第3データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットと、宛先ノードDST3へのデータパケットとを含む。送信元ノードSRCは、CS及びBOを実施してから通信チャネルCH1、CH2及びCH3により第3データフレームを送信する。次いで、送信元ノードSRCは、第3データフレームに対応する第3トリガフレームを通信チャネルCH4により送信する。第3データフレームの各データパケットと第3トリガフレームとは、同一のデータフレームID3を含む。
宛先ノードDST1は、通信チャネルCH1により第3データフレームを受信し、次いで通信チャネルCH4により第3トリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2により第3データフレームを受信し、次いで通信チャネルCH4により第3トリガフレームを受信する。宛先ノードDST3は、通信チャネルCH3により第3データフレームを受信し、次いで通信チャネルCH4により第3トリガフレームを受信する。
宛先ノードDST1は、第3トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第3データフレームについてのACKフレームACK1を通信チャネルCH4により送信する。宛先ノードDST2は、第3トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第3データフレームについてのACKフレームACK2を通信チャネルCH4により送信する。宛先ノードDST3は、第3トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、第3データフレームについてのACKフレームACK3を通信チャネルCH4により送信する。図20の例では、通信チャネルCH4において、第3データフレームに関し、宛先ノードDST1のACKフレームACK1の送信完了後に、宛先ノードDST2のACKフレームACK2が送信され、該宛先ノードDST2のACKフレームACK2の送信完了後に、宛先ノードDST3のACKフレームACK3が送信される。これにより、通信チャネルCH4において、第3データフレームに関し、ACKフレームACK1とACKフレームACK2とACKフレームACK3との衝突が回避される。
なお、例えば、送信元ノードSRCが第2データフレームに含めて送信した宛先ノードDST3へのデータパケットを再送信する場合、送信元ノードSRCは、第3データフレームに宛先ノードDST3へのデータパケットを含めて送信してもよい。
次に本実施形態に係る変形例を説明する。
(変形例1)
図21及び図22を参照して本実施形態に係る変形例1を説明する。図21は、本実施形態に係る変形例1の説明図である。図22は、本実施形態に係る変形例1のトリガフレームの構成例を示す図である。変形例1では、ACKフレームの伝送に使用可能な通信チャネルが複数設けられる。図21の例では、ACKフレームの伝送に使用可能な通信チャネルとして、2つの通信チャネルCH7及びCH8が設けられる。
図21を参照して、本実施形態に係る変形例1の通信方法を説明する。送信元ノードSRCと宛先ノードDST1及びDST2とは、第1共有通信媒体と、第2共有通信媒体とを使用して通信を行う。通信チャネルCH1及びCH2は第1共有通信媒体に設けられている。通信チャネルCH7及びCH8は第2共有通信媒体に設けられている。送信元ノードSRCは、通信チャネルCH1、CH2、CH7及びCH8を使用する。宛先ノードDST1は、通信チャネルCH1、CH7及びCH8を使用する。宛先ノードDST2は、通信チャネルCH2、CH7及びCH8を使用する。第2共有通信媒体に設けられる通信チャネルCH7及びCH8のうち、通信チャネルCH7はプライマリ・チャネル(primary channel)に指定されている。宛先ノードDST1及びDST2は、受信対象の通信チャネルとして、少なくともプライマリ・チャネルを設定する。
データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットとを含む。送信元ノードSRCは、CS及びBOを実施してから通信チャネルCH1及びCH2によりデータフレームを送信する。次いで、送信元ノードSRCは、通信チャネルCH7及びCH8においてCSを実施する。このCSにより、図21の例では、通信チャネルCH7はアイドル状態であり、通信チャネルCH8はビジーであった。送信元ノードSRCは、通信チャネルCH7においてBOを実施してから、該データフレームに対応するトリガフレームを通信チャネルCH7により送信する。該データフレームの各データパケットと該トリガフレームとは、同一のデータフレームIDを含む。なお、プライマリ・チャネルである通信チャネルCH7がビジーである場合、送信元ノードSRCは、トリガフレームの送信を遅延させる。
宛先ノードDST1は、通信チャネルCH1によりデータフレームを受信し、次いで通信チャネルCH7によりトリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2によりデータフレームを受信し、次いで通信チャネルCH7によりトリガフレームを受信する。宛先ノードDST1は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK1を通信チャネルCH7により送信する。宛先ノードDST2は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK2を通信チャネルCH7により送信する。図21の例では、通信チャネルCH7において、同じデータフレームに関し、宛先ノードDST1のACKフレームACK1の送信完了後に、宛先ノードDST2のACKフレームACK2が送信される。これにより、通信チャネルCH7において、同じデータフレームに関し、ACKフレームACK1とACKフレームACK2との衝突が回避される。
図22を参照して、本実施形態に係る変形例1のトリガフレームの構成例を説明する。図22に示す変形例1のトリガフレームは、上述した図6に示すトリガフレームの構成例に対して、さらに各宛先ノードDST1及びDST2に対応する各フィールドDST1及びDST2が設けられる。この点以外は上述した図6に示すトリガフレームの構成例と同じである。
フィールドDST1は、宛先ノードDST1に通知する情報を格納するフィールドであってRelativeDurationフィールドを含む。フィールドDST1のRelativeDurationフィールドは、宛先ノードDST1へ通知する応答タイミング情報を格納するフィールドである。フィールドDST1は、さらに宛先ノードDST1に通知する情報を格納するフィールドであってMCS_ACKフィールドを含んでもよい。フィールドDST1のMCS_ACKフィールドは、宛先ノードDST1がACKフレームに使用するMCSの情報を格納するフィールドである。同様に、フィールドDST2は、宛先ノードDST2に通知する情報を格納するフィールドであってRelativeDurationフィールドを含む。さらに、フィールドDST2は、宛先ノードDST2に通知する情報を格納するフィールドであってMCS_ACKフィールドを含んでもよい。
本変形例1では、ACKフレームの伝送に使用可能な通信チャネルのうち、どの通信チャネルを実際に使用するのかはトリガフレームの送信前のCSによって決まる。したがって、データフレームの送信時点では、ACKフレームの伝送に使用する通信チャネルが未定であるので、ACKフレームに使用するMCS、つまりACKフレームの送信レートも未定であり、よって応答タイミング情報が決まらない。このため、本変形例1では、トリガフレームにRelativeDurationフィールドを設ける。また、MCS_ACKフィールドを設ける場合にはトリガフレームに設ける。一方、データフレームには、RelativeDurationフィールドやMCS_ACKフィールドを設けなくてもよい。
(変形例2)
図23及び図24を参照して本実施形態に係る変形例2を説明する。図23は、本実施形態に係る変形例2の説明図である。図24は、本実施形態に係る変形例2のトリガフレームの構成例を示す図である。変形例2では、上述した変形例1と同様に、ACKフレームの伝送に使用可能な通信チャネルが複数設けられる。図23の例では、上述した図21の例と同様に、ACKフレームの伝送に使用可能な通信チャネルとして、2つの通信チャネルCH7及びCH8が設けられる。但し、本変形例2では、複数の宛先ノードDSTが複数の通信チャネルによりACKフレームを送信してもよい。
図23を参照して、本実施形態に係る変形例2の通信方法を説明する。送信元ノードSRCと宛先ノードDST1及びDST2とは、第1共有通信媒体と、第2共有通信媒体とを使用して通信を行う。通信チャネルCH1及びCH2は第1共有通信媒体に設けられている。通信チャネルCH7及びCH8は第2共有通信媒体に設けられている。送信元ノードSRCは、通信チャネルCH1、CH2、CH7及びCH8を使用する。宛先ノードDST1は、通信チャネルCH1、CH7及びCH8を使用する。宛先ノードDST2は、通信チャネルCH2、CH7及びCH8を使用する。第2共有通信媒体に設けられる通信チャネルCH7及びCH8のうち、通信チャネルCH7はプライマリ・チャネルに指定されている。宛先ノードDST1及びDST2は、受信対象の通信チャネルとして、少なくともプライマリ・チャネルを設定する。
データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットとを含む。送信元ノードSRCは、CS及びBOを実施してから通信チャネルCH1及びCH2によりデータフレームを送信する。次いで、送信元ノードSRCは、通信チャネルCH7及びCH8においてCSを実施する。このCSにより、図23の例では、通信チャネルCH7及びCH8の両方がアイドル状態であった。送信元ノードSRCは、プライマリ・チャネルである通信チャネルCH7においてBOを実施してから、該データフレームに対応するトリガフレームを通信チャネルCH7により送信する。該データフレームの各データパケットと該トリガフレームとは、同一のデータフレームIDを含む。なお、プライマリ・チャネルである通信チャネルCH7がビジーである場合、送信元ノードSRCは、トリガフレームの送信を遅延させる。
宛先ノードDST1は、通信チャネルCH1によりデータフレームを受信し、次いで通信チャネルCH7によりトリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2によりデータフレームを受信し、次いで通信チャネルCH7によりトリガフレームを受信する。
宛先ノードDST1は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK1を自己の通信チャネルにより送信する。宛先ノードDST2は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK2を自己の通信チャネルにより送信する。各宛先ノードDST1及びDST2がACKフレームを送信する通信チャネルを示すACKチャネル情報は、トリガフレームに含まれる。図23の例では、同じデータフレームに関し、宛先ノードDST1は通信チャネルCH7によりACKフレームACK1を送信し、一方、宛先ノードDST2は通信チャネルCH8によりACKフレームACK2を送信する。つまり、トリガフレームには、ACKフレームの送信に使用する通信チャネルとして、宛先ノードDST1に対して通信チャネルCH7を指定するACKチャネル情報と、宛先ノードDST2に対して通信チャネルCH8を指定するACKチャネル情報とが含まれる。これにより、同じデータフレームに関し、ACKフレームACK1とACKフレームACK2との衝突が回避される。
図24を参照して、本実施形態に係る変形例2のトリガフレームの構成例を説明する。図24に示す変形例2のトリガフレームは、上述した図22に示す変形例1のトリガフレームの構成例に対して、さらに各宛先ノードDST1及びDST2に対応するCH_ACKフィールドが設けられる。この点以外は上述した図22に示す変形例1のトリガフレームの構成例と同じである。
宛先ノードDST1に対応するCH_ACKフィールドはフィールドDST1内に設けられる。フィールドDST1のCH_ACKフィールドは、宛先ノードDST1へ通知するACKチャネル情報を格納するフィールドである。ACKチャネル情報は、ACKフレームを送信する通信チャネルを示す情報である。同様に、宛先ノードDST2に対応するCH_ACKフィールドはフィールドDST2内に設けられる。フィールドDST2のCH_ACKフィールドは、宛先ノードDST2へ通知するACKチャネル情報を格納するフィールドである。各宛先ノードDST1及びDST2は、トリガフレームに含まれる自己のACKチャネル情報によって、自己がACKフレームを送信する通信チャネルを認識する。
(変形例3)
図25を参照して本実施形態に係る変形例3を説明する。図25は、本実施形態に係る変形例3の説明図である。変形例3では、上述した変形例2と同様に、ACKフレームの伝送に使用可能な通信チャネルが複数設けられると共に、複数の宛先ノードDSTが複数の通信チャネルによりACKフレームを送信してもよい。図25の例では、上述した図23の例と同様に、ACKフレームの伝送に使用可能な通信チャネルとして、2つの通信チャネルCH7及びCH8が設けられる。但し、本変形例3では、トリガフレームを複数の通信チャネルにより送信してもよい。
図25を参照して、本実施形態に係る変形例3の通信方法を説明する。送信元ノードSRCと宛先ノードDST1及びDST2とは、第1共有通信媒体と、第2共有通信媒体とを使用して通信を行う。通信チャネルCH1及びCH2は第1共有通信媒体に設けられている。通信チャネルCH7及びCH8は第2共有通信媒体に設けられている。送信元ノードSRCは、通信チャネルCH1、CH2、CH7及びCH8を使用する。宛先ノードDST1は、通信チャネルCH1、CH7及びCH8を使用する。宛先ノードDST2は、通信チャネルCH2、CH7及びCH8を使用する。第2共有通信媒体に設けられる通信チャネルCH7及びCH8のうち、通信チャネルCH7はプライマリ・チャネルに指定されている。宛先ノードDST1及びDST2は、受信対象の通信チャネルとして、少なくともプライマリ・チャネルを設定する。
データフレームは、宛先ノードDST1へのデータパケットと、宛先ノードDST2へのデータパケットとを含む。送信元ノードSRCは、CS及びBOを実施してから通信チャネルCH1及びCH2によりデータフレームを送信する。次いで、送信元ノードSRCは、通信チャネルCH7及びCH8においてCSを実施する。このCSにより、図25の例では、通信チャネルCH7及びCH8の両方がアイドル状態であった。送信元ノードSRCは、BOを実施してから、該データフレームに対応するトリガフレームを通信チャネルCH7及びCH8の両方により送信する。該データフレームの各データパケットと該トリガフレームとは、同一のデータフレームIDを含む。なお、プライマリ・チャネルである通信チャネルCH7がビジーである場合、送信元ノードSRCは、トリガフレームの送信を遅延させる。
宛先ノードDST1は、通信チャネルCH1によりデータフレームを受信し、次いで、少なくともプライマリ・チャネルである通信チャネルCH7によりトリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2によりデータフレームを受信し、次いで、少なくともプライマリ・チャネルである通信チャネルCH7によりトリガフレームを受信する。
宛先ノードDST1は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK1を自己の通信チャネルにより送信する。宛先ノードDST2は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、データフレームについてのACKフレームACK2を自己の通信チャネルにより送信する。各宛先ノードDST1及びDST2がACKフレームを送信する通信チャネルを示すACKチャネル情報は、トリガフレームに含まれる。図25の例では、同じデータフレームに関し、宛先ノードDST1は通信チャネルCH7によりACKフレームACK1を送信し、一方、宛先ノードDST2は通信チャネルCH8によりACKフレームACK2を送信する。つまり、トリガフレームには、ACKフレームの送信に使用する通信チャネルとして、宛先ノードDST1に対して通信チャネルCH7を指定するACKチャネル情報と、宛先ノードDST2に対して通信チャネルCH8を指定するACKチャネル情報とが含まれる。これにより、同じデータフレームに関し、ACKフレームACK1とACKフレームACK2との衝突が回避される。また、通信チャネルCH7のトリガフレームによるTXOP保護期間及びNAV保護期間によって、通信チャネルCH7において、宛先ノードDST1によるACKフレームACK1の送信完了が保護される。同様に、通信チャネルCH8のトリガフレームによるTXOP保護期間及びNAV保護期間によって、通信チャネルCH8において、宛先ノードDST2によるACKフレームACK2の送信完了が保護される。
本変形例3のトリガフレームには、上述した図24に示す変形例2のトリガフレームの構成例を適用できる。
(変形例4)
図26を参照して本実施形態に係る変形例4を説明する。図26は、本実施形態に係る変形例4の説明図である。送信元ノードSRCと宛先ノードDST1及びDST2とは、第1共有通信媒体と、第2共有通信媒体とを使用して通信を行う。通信チャネルCH1及びCH2は第1共有通信媒体に設けられている。通信チャネルCH4は第2共有通信媒体に設けられている。送信元ノードSRCは、通信チャネルCH1、CH2及びCH4を使用する。宛先ノードDST1は、通信チャネルCH1及びCH4を使用する。宛先ノードDST2は、通信チャネルCH2及びCH4を使用する。
変形例4では、DLフレームは、ULACKとDL−DATAとを含む。また、ULフレームは、DLACKとUL−DATAとを含む。DLフレームは、送信元ノードから宛先ノードへ向かう方向の下りリンク(Downlink:DL)のフレームである。ULフレームは、宛先ノードから送信元ノードへ向かう方向の上りリンク(Uplink:UL)のフレームである。UL−DATAは、ULのデータ信号のパケットである。DL−DATAは、DLのデータ信号のパケットである。ULACKは、UL−DATAについてのACK信号である。DLACKは、DL−DATAについてのACK信号である。
UL−DATAは、DLACKにピギーバック(piggyback、相乗り)する。DL−DATAは、ULACKにピギーバックする。ULフレーム(m)には、DLフレーム(n)のDL−DATA1についてのDLACK1と、ULフレーム(m)におけるDL−DATA1とが含まれる。ULフレーム(m+1)には、DLフレーム(n)のDL−DATA2についてのDLACK2と、ULフレーム(m+1)におけるDL−DATA2とが含まれる。
送信元ノードSRCは、通信チャネルCH1及びCH2によりDLフレーム(n)を送信する。次いで、送信元ノードSRCは、通信チャネルCH4においてCS及びBOを実施してから、該DLフレーム(n)に対応するトリガフレームを通信チャネルCH4により送信する。該DLフレーム(n)の各DL−DATAと該トリガフレームとは、同一のデータフレームIDを含む。
宛先ノードDST1は、通信チャネルCH1によりDLフレーム(n)を受信し、次いで通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST2は、通信チャネルCH2によりDLフレーム(n)を受信し、次いで通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST1は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、ULフレーム(m)を通信チャネルCH4により送信する。宛先ノードDST1は、ULフレーム(m)に、DLフレーム(n)のDL−DATA1についてのDLACK1と、ULフレーム(m)におけるUL−DATA1とを含める。
宛先ノードDST2は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、ULフレーム(m+1)を通信チャネルCH4により送信する。宛先ノードDST2は、ULフレーム(m+1)に、DLフレーム(n)のDL−DATA2についてのDLACK2と、ULフレーム(m+1)におけるUL−DATA2とを含める。
送信元ノードSRCは、通信チャネルCH4により、ULフレーム(m)及びULフレーム(m+1)を受信する。次いで、送信元ノードSRCは、通信チャネルCH1及びCH2においてCS及びBOを実施してから、DLフレーム(n+1)を通信チャネルCH1及びCH2により送信する。送信元ノードSRCは、DLフレーム(n+1)に、ULフレーム(m)のUL−DATA1についてのULACK1と、DLフレーム(n+1)におけるDL−DATA1と、ULフレーム(m+1)のUL−DATA2についてのULACK2と、DLフレーム(n+1)におけるDL−DATA1とを含める。
本変形例4によれば、通信チャネルCH4において、DLACK及びUL−DATAの衝突が回避される。
なお、宛先ノードDSTは、自己のUL−DATAの存在を送信元ノードSRCへ通知する。例えば、UL−DATAの存在を示す情報をDLACKに含めてもよい。送信元ノードSRCは、宛先ノードDSTのUL−DATAの存在を認識すると、トリガフレームによるTXOP保護期間及びNAV保護期間を、該UL−DATAの送信を保護するように調整する。
(変形例5)
図27を参照して本実施形態に係る変形例5を説明する。図27は、本実施形態に係る変形例5の説明図である。送信元ノードSRCと宛先ノードDST1及びDST2とは、第1共有通信媒体と、第2共有通信媒体とを使用して通信を行う。通信チャネルCH1及びCH2は第1共有通信媒体に設けられている。通信チャネルCH4は第2共有通信媒体に設けられている。送信元ノードSRCは、通信チャネルCH1、CH2及びCH4を使用する。宛先ノードDST1は、通信チャネルCH1及びCH4を使用する。宛先ノードDST2は、通信チャネルCH2及びCH4を使用する。変形例5では、送信元ノードSRCは、トリガフレームによって、UL−DATAの送信タイミングを宛先ノードDSTへ通知し、UL−DATAの送信を保護する。
送信元ノードSRCは、通信チャネルCH4においてCS及びBOを実施してから、トリガフレームを通信チャネルCH4により送信する。各宛先ノードDST1及びDST2は、通信チャネルCH4によりトリガフレームを受信する。宛先ノードDST1は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、ULフレーム(m)を通信チャネルCH4により送信する。宛先ノードDST2は、トリガフレームの受信完了のタイミングに基づく自己の応答タイミング情報のタイミングで、ULフレーム(m+1)を通信チャネルCH4により送信する。本変形例5のトリガフレームには、上述した図22に示す変形例1のトリガフレームの構成例を適用できる。
送信元ノードSRCは、通信チャネルCH4により、ULフレーム(m)及びULフレーム(m+1)を受信する。次いで、送信元ノードSRCは、通信チャネルCH1及びCH2においてCS及びBOを実施してから、ULフレーム(m)のUL−DATA1についてのULACK1を通信チャネル1により、ULフレーム(m+1)のUL−DATA2についてのULACK2を通信チャネル2により、それぞれ送信する。
上述した変形例4、5によれば以下に示す効果が得られる。
従来のWi−FiプロトコルにおけるPCF(Point Coordination Function)及びHCCA(Hybrid coordination function Controlled Channel Access)は、ULデータパケットの衝突問題をある程度緩和することができるが、以下に示すような制限がある。
PCFは、CFP(Contention Free Period)中に実施されるが、少なくとも2つの制限に直面する。第1に、PCF及びDCF(Distributed Coordination Function)の両方のトラフィックに潜在的遅延をもたらし、遅延に厳しいトラフィックに深刻な影響を与え得る。第2に、共存するBSS(Basic Service Set)のCFPの総継続期間が各BSSにおけるCFP反復間隔よりも長い場合、PCFによって提供されるサービス保証が達成できない。
HCCAは、CFP及びCP(Contention Period)の両方において実施可能であるが、複数の共存するBSSが第2共有通信媒体のアクセス権の獲得を規則的に試みている場合、ULデータパケットの頻繁な衝突に直面する可能性がある。
これに対して上述した変形例4、5によれば、以下に示すように、PCF及びHCCAの両方の制限を緩和することができる。
第1に、PCFとは異なり、上述した変形例4、5は競合に基づく通信方法である。従って、CFP反復期間をCFP及びCPに分割することによって、PCFに生じる問題を解決することができる。第2に、トリガフレームの送信前にBOが実施されるため、複数のトリガフレームの送信機会が重なったとしても、該複数のトリガフレームが同時に送信される可能性を著しく低減することができる。
上述したように本実施形態によれば、送信元ノードが宛先ノードへデータフレームを送信する通信チャネルと、宛先ノードが送信元ノードへ該データフレームについてのACKフレームを返信する通信チャネルとが異なる場合に、トリガフレームによって、ACKフレームの送信を保護することができる。これにより、送信元ノードにおけるACKフレームの受信成功率を向上させることができるという効果が得られる。
なお、上述した実施形態では、応答信号として確認応答信号(ACK)を使用したが、応答信号として否定応答信号(NACK)を使用してもよい。また、応答信号として確認応答信号(ACK)及び否定応答信号(NACK)の両方を使用してもよい。
また、上述した送信元ノードSRC又は宛先ノードDSTの機能を実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disc)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。