以下、添付の図面を参照して、本発明をその実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
[実施形態1]
図1は、実施形態1における映像伝送システムの構成例を示す図である。本システムは、PC11、13、HMD(Head Mounted Display)12、14、端末局1〜4、および制御局20から構成される。なお、以下の説明において、端末局1〜4および制御局20を、総称して「通信装置」と称する場合もある。PC11、13は、映像処理装置として機能する。HMD12、14は、使用者が装着する頭部搭載型の表示装置として機能する。PC11とHMD12はペアとなっており、PC11は、端末局1を用いて通信パス30を介して映像データを送信し、HMD12は、端末局2を用いて受信した映像データを再生する。同様に、PC13とHMD14はペアとなっており、PC13は、端末局3を用いて通信パス40を介して映像データを送信し、HMD14は、端末局4を用いて受信した映像データを再生する。
各通信装置は、アレイアンテナを備えており、通信相手に応じて最適な指向性を選択して無線通信を行うことができる。端末局1〜4は、通信帯域の割り当てを要求するために、チャネルアクセス要求を制御局20に送信する。端末局1〜4は、割り当てられた通信帯域を用いて、映像データフレームの伝送や、アンテナ指向性をより詳細にチューニングするためのトレーニングフレームの伝送を行う。チャネルアクセス要求には、データフレームの送信元である通信装置の識別子、受信先である通信装置の識別子、要求する通信帯域などの情報が含まれる。制御局20は、受信したチャネルアクセス要求に基づいて、Beaconフレームを生成し、端末局1〜4に通知することで、チャネルアクセス制御を行う。Beaconフレームには、データフレームの送信元である通信装置の識別子、受信先である通信装置の識別子、送受信のタイミングといったチャネルアクセス情報が含まれる。端末局1〜4は、チャネルアクセス情報に従って、データフレームの送受信(チャネルアクセス)を行うことができる。なお、本説明において、通信装置の識別子は、当該通信装置を識別情報に置き換えることが可能である。
次に、図2を参照して、制御局20が複数の指向性を用いてBeaconフレームを送信する動作を説明する。図2は、Beaconフレームの送信指向性(Beacon1〜4)を説明する図である。各Beaconフレームは、所定の指向性に対応する。なお、制御局20は、Beaconフレームの通信距離を伸ばすため、アレイアンテナを使用して指向性を絞ってBeaconフレームを送信する。指向性を絞ると電波の到達範囲が狭まるため、制御局20は、異なる複数の指向性を使用して、Beaconフレームを複数回送信することで、Beaconフレームの到達範囲を広げている。
図2では、制御局20が、Beacon1を範囲200に、Beacon2を範囲205に、Beacon3を範囲210に、Beacon4を範囲215に、順に送信する例が示されている。このように、制御局20は、指向性を切り替えて送信を行うことで、制御局20の周囲360°の方向に位置する端末局に対してBeaconフレームを届けることができる。なお、本実施形態では、制御局20は4つの指向性を用いているが、指向性の数はこの限りではない。また、Beaconフレームの到達範囲も、図2に示される範囲の限りではない。
本実施形態では、通信フレームは、Beacon区間(以下BI:Beacon Interval)と呼ばれる繰り返し周期において、制御局20により割り当てられた区間に従って送信される。制御局20は、1つのBIにおいて複数のBeaconフレームを送信することができる。また、制御局20は、指向性を考慮して、複数のBIに跨って複数のBeaconフレームを送信することもできる。
次に、図3を参照して、制御局20がBI毎に送信するBeaconフレームについて説明する。図3は、Beaconシーケンスの一例を示す図である。Beaconシーケンスとは、制御局20が複数のBIのそれぞれにおけるBeaconフレーム送信のための送信指向性の順番を指す。図3において、制御局20は、1番目のBIで、Beacon1とBeacon2を、それぞれ範囲200と範囲205に送信する。続いて制御局20は、2番目のBIで、Beacon3とBeacon4を、それぞれ範囲210と範囲215に送信する。なお、1番目のBIと2番目のBIという表現は便宜的なものであり、図3は繰り返される複数のBIのうち連続する2つのBIであることを示すものとする。
このように、制御局20は、4つのBeaconフレームを、指向性を変えて、2つのBIに跨って送信している。図3に示す端末局1〜4の配置状況では、1番目のBIで端末局1と端末局4はBeaconフレームを受信できるが、端末局2と端末局3は受信できない。一方、2番目のBIでは、端末局2と端末局3はBeaconフレームを受信できるが、端末局1と端末局4は受信できない。制御局20は、Beaconシーケンスが更新されると、別の送信指向性を用いて、Beaconフレームの送信を行うことができる。
次に、図4と図18を参照して、制御局20の構成について説明する。図4は、制御局20の機能ブロック構成の一例を示す図であり、図18は、制御局20のハードウェア構成の一例を示す図である。
まず、制御局20の機能ブロック構成について説明する。図4において、通信制御部400は、無線データの変復調を含む送受信の信号処理を行う。アンテナ制御部410は、アンテナ1806(図18を参照)の送受信指向性の制御を行う。チャネルアクセス要求取得部415は、端末局1〜4から送信された、データフレームを送信するためのチャネルアクセス要求を、通信制御部400により受信された信号から取得する。チャネルアクセス要求には、データフレームの送信元である通信装置の識別子、受信先である通信装置の識別子、要求する通信帯域などの情報が含まれる。
Beacon受信状態取得部420は、端末局1〜4から送信された、制御局20が送信したBeaconフレームの受信状態を、通信制御部400により受信された信号から取得する。Beaconシーケンス決定部425は、チャネルアクセス要求取得部415で取得されたチャネルアクセス要求と、Beacon受信状態取得部420で取得されたBeacon受信状態に基づいて、Beaconシーケンスを決定する。チャネルアクセス情報生成部430は、Beaconシーケンス決定部425で決定されたBeaconシーケンスに従って、端末局1〜4がデータフレームを送受信するためのチャネルアクセス情報を生成する。チャネルアクセス情報には、データフレームの送信元である通信装置の識別子、受信先である通信装置の識別子、送受信のタイミングといった情報が含まれる。
Beacon生成部435は、チャネルアクセス情報やネットワークに必要な情報を元にBeaconフレームを生成する。生成されたBeaconフレームは通信制御部400によって、Beaconシーケンスに従った指向性で送信される。Announceフレーム生成部440は、端末局1〜4に対して指向性を絞って個別にチャネルアクセス情報を送るためのAnnounceフレームを生成する。
次に、制御局20のハードウェア構成について説明する。図18において、記憶部1801は、ROM(Read Only Memory)、RAM(Random Access Memory)により構成され、後述する各種動作を行うためのプログラムや、無線通信のための通信パラメータ等の各種情報を記憶する。なお、記憶部1801として、ROM、RAM等のメモリの他に、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、DVDなどの記憶媒体を用いてもよい。
制御部1802は、CPU、または、MPUにより構成され、記憶部1801に記憶されたプログラムを実行することにより制御局20全体を制御する。なお、制御部1802が実行しているOS(Operating System)との協働により制御局20全体を制御するようにしてもよい。入力部1803は、ユーザからの各種操作の受付を行う。出力部1804は、ユーザに対して各種出力を行う。ここで、出力とは、画面上への表示や、スピーカーによる音声出力、振動出力等の少なくとも1つを含む。なお、タッチパネルのように入力部1803と出力部1804両方を1つのモジュールで実現するようにしてもよい。通信部1805は、IEEE802.11シリーズに準拠した無線通信の制御や、IP通信の制御を行う。また、通信部1805はアンテナ1806を制御して、無線通信のための無線信号の送受信を行う。アンテナ1806は、通信部1805による送受信に対して電磁波を放射・吸収する。また、制御局20は、ハードウェア構成として、制御部1802による制御により撮像や印刷等を行う機能部(不図示)を有してもよい。
次に、図5を参照して、端末局1の機能ブロック構成について説明する。図5は、端末局1の機能ブロック構成の一例を示す図である。なお、端末局1のハードウェア構成は、制御局20のハードウェア構成(図18)と同様である。また、端末局2〜4も、端末局1と同様の構成を有する。
図5において、通信制御部500は、無線データの変復調を含む送受信の信号処理を行う。アンテナ制御部510は、アンテナ1806(図18を参照)の送受信指向性の制御を行う。チャネルアクセス要求生成部515は、データフレームを送信するためのチャネルアクセス要求を制御局20に通知するための制御を行う。Beacon取得部520は、制御局20から送信された、指向性の異なる複数のBeaconフレームを、通信制御部500により受信された信号から取得する。
受信状態生成部525は、Beacon取得部520で取得されたBeaconフレームの受信状態の情報を生成する。Beaconフレーム受信状態の情報には、例えば受信状態の良かったBeaconの送信指向性を特定する情報を含まれる。Announceフレーム取得部530は、制御局20から送信されたAnnounceフレームを、通信制御部500により受信された信号から取得する。チャネルアクセス情報取得部535は、取得されたBeaconフレームもしくはAnnounceフレームから、チャネルアクセス情報を取得する。通信制御部500は、チャネルアクセス情報取得部535から取得したチャネルアクセス情報に定められるタイミングで、所定の通信装置とのデータフレームの送受信を行う。データフレーム処理部540は、通信制御部500により送受信されたデータフレームを処理する。なお、図4及び図5に示す各機能ブロックは、ソフトウェアによって提供されてもよいし、ハードウェアによって提供されてもよい。ソフトウェアによって提供される場合は、それらの機能ブロックを、例えば制御局20又は端末局1の制御部1802が実行することにより、その機能が実行される。一方、ハードウェアによって提供される場合には、例えばASIC(Application Specific Integrated Circuit)により、各機能ブロックが構成される。
次に、図6(A)〜(B)を参照して、BI(Beacon Interval)内で伝送される通信フレームについて説明する。図6(A)〜(B)は、BI内の通信フレームの構成一例を示す図である。本実施形態の無線ネットワークにおいて、各通信フレームは、繰り返し周期であるBI内で送信される。図6(A)は、Beaconシーケンスに従って繰り返される複数のBIのうちの、あるBIを示し、図6(B)は、図6(A)に示すBIの次のBIを示している。以下、説明では、便宜上、図6(A)と図6(B)のBIを、それぞれ1番目のBIと2番目のBIと称する。
1つのBIは、4つの区間から構成される。すなわち、Beacon送信区間(以下、BTI:Beacon Transmission Interval)、トレーニング区間(以下、A−BFT:Association Beamforming training)、管理フレーム送信区間(以下、ATI:Announcement Transmission Interval)、データ送信区間(以下、DTI:Data Transmission Interval)である。
BTIは、制御局20が、指向性を切り替えながら複数のBeaconフレームをネットワーク内の全ての端末局1〜4に向けて送信する区間である。本実施形態では、制御局20は、1つのBIに割当可能なBeaconフレームの数を、一例として、2とする。図6(A)におけるBTI610では、制御局20が、図3のBeaconシーケンスに従って、指向性を切り替えながらBeacon1とBeacon2の2つのBeaconフレームを送信している。
A−BFTは、制御局20が、端末局1〜4のいずれかからSSW(Sector Sweep)フレームを受信する区間である。A−BFTの直前のBTIにおいてBeaconフレームを受信した端末局は、受信したBeaconフレームの受信状態をSSWフレームに格納し、制御局20に送信する。端末局1〜4は、SSWフレームを複数回送信し、制御局20は指向性を切り替えながら受信することで、制御局20は、端末局1〜4のそれぞれからの受信に最適な指向性を探索することができる。
ATIは、制御局20が、端末局1〜4のいずれかに向けた指向性で管理フレームを送信し、管理フレームを受けた端末局が応答の管理フレームを送信する区間である。管理フレームには、無線ネットワークに参加する際のAssociationフレームや、チャネルアクセス問い合わせフレーム、チャネルアクセス要求フレーム、チャネルアクセス情報を含むAnnounceフレームなど含まれる。ATI630では、制御局20が端末局1に対してチャネルアクセス問い合わせフレームを送信し、端末局1からその応答として、チャネルアクセス要求フレームを受信している。
DTIは、端末局1〜4がデータフレームの送受信を行う区間である。当該区間におけるデータフレームの割り当ては、BeaconフレームもしくはAnnounceフレームのチャネルアクセス情報に従って決定される。データフレームには、ビデオデータのようなアプリケーションデータや、アンテナ指向性をより詳細にチューニングするためのトレーニングデータが含まれ得る。DTI640では、端末局1〜4のいずれもデータを送っていないが、制御局20は、ATI630で受信したチャネルアクセス要求に基づいて、データフレームを後続のBI(図6(B)に示す2番目のBI)で割り当てることが可能である。
図6(B)において、BTI660では、図3のBeaconシーケンスに従って、制御局20は、BTI610とは異なる指向性のBeacon3とBeacon4の2つのBeaconフレームを送信している。また、ATI670では、制御局20は、端末局3に対して、チャネルアクセスの問い合わせフレームを送信し、端末局3は、チャネルアクセス要求フレームを返している。Beaconシーケンスが更新されない限り、次のBI(不図示)では、制御局20により、BTI610と同じ指向性のBeaconフレームが送信される。
図7は、通信装置間のメッセージシーケンスを示す図である。まず、制御局20は、Beaconシーケンスに従って、N番目のBIの前に、N場目のBIのBeaconフレームの送信指向性を決定する。ここでは、図3のBeaconシーケンスに従って、制御局20は、BTI705で、Beacon1とBeacon2の2つのBeaconフレームを送信することを決定し、当該決定に従った送信を行う。次に、A−BFT710で、端末局1と端末局4は、BTI705で受信したBeaconの受信状態をSSWフレームに格納し、制御局20に複数回送信する。制御局20は、指向性を切り替えながらSSWフレーム受信することで、端末局1と端末局4からの受信に最適な指向性を決定することができる。
ATI715では、制御局20がチャネルアクセス問い合わせフレームを使用して、端末局1にチャネルアクセスを要求するかどうかを問い合わせている。端末局1は、端末局2に対してデータを送りたいため、チャネルアクセス要求フレームを制御局20に返している。DTI720では、制御局20がまだチャネルアクセスを端末局1〜4のいずれにも許可していないので、データフレームの伝送は行われない。
次に、制御局20は、Beaconシーケンスに従って(N+1)番目のBIのBeaconの送信指向性を決定するする。ここでは図3のBeaconシーケンスに従って、制御局20は、BTI730でBeacon3とBeacon4の2つのBeaconフレームを送信することを決定し、当該決定に従った送信を行う。次に、A−BFT735で、端末局2と端末局3はBTI730で受信したBeaconの受信状態をSSWフレームに格納し、制御局20に複数回送信する。ATI740では、制御局20がチャネルアクセス問い合わせフレームを使用して、端末局3にチャネルアクセスを要求するかどうかを問い合わせている。端末局3は端末局4に対してデータを送りたいため、チャネルアクセス要求フレームを制御局20に返している。DTI745では、制御局20がまだチャネルアクセスを端末局1〜4のいずれにも許可していないので、データフレームの伝送は行われない。
この時点で、制御局20は、端末局1と端末局3からチャネルアクセス要求を受信している。しかしながら、このままのBeaconシーケンスでは、同一BIで、端末局1と端末局2のペアと端末局3と端末局4のペアがBeaconを受信することができない。そのため、当該2つのペアの端末局のそれぞれは、DTIでのデータフレームの送受信ができない。そこで制御局20は、Beaconシーケンスの更新を行う。Beaconシーケンスの更新のためのBeaconシーケンスの決定処理は図9を用いて後述する。
ここで、図10(B)に示すようにBeaconシーケンスが更新されたと想定する。図10は、Beaconシーケンスの別の例を示す図である。図10(B)によれば、制御局20は、1番目のBIでBeacon1とBeacon4を送信し、2番目のBIでBeacon2とBeacon3を送信する。なお、1番目のBIと2番目のBIという表現は便宜的なものであり、図10は、繰り返される複数のBIのうち、図3に示すBeaconシーケンスの更新処理後に連続する2つのBIであることを示すものとする。
図8は、Beaconシーケンスを更新した後の通信装置間のメッセージシーケンスを示す図である。Beaconシーケンスの更新後、まず、制御局20は、Beaconシーケンスに従って、(N+2)番目のBIのBeaconフレームの送信指向性を決定する。ここでは、制御局20は、図10(B)のBeaconシーケンスに従うことを決定し、BTI805でBeacon1とBeacon4の2つのBeaconフレームを送信する。このときBeaconフレームを正しく受信できた端末局は、BTI中に後続のBeaconフレームがあったとしても受信動作を行わないことで省電力状態に遷移しても良い。次に、A−BFT810で、端末局1と端末局2は、BTI805で受信したBeaconの受信状態をSSWフレームに格納し、制御局20に送信する。
ATI815では、制御局20と端末局1〜4は特に管理フレームを交換していない。次にDTI820では、端末局1は、BTI805で受信したBeaconフレームに含まれるチャネルアクセス情報に従って、データフレームを送信し、端末局2はデータフレームを受信している。続いて制御局20は、Beaconシーケンスに従って(N+3)番目のBIのBeaconの送信指向性を決定する。ここでは図10(B)のBeaconシーケンスに従うことを決定し、制御局20は、BTI830でBeacon2とBeacon3の2つのBeaconフレームを送信する。
次に、A−BFT835で、端末局3と端末局4はBTI830で受信したBeaconの受信状態をSSWフレームに格納し、制御局20に送信する。ATI840では、制御局20と端末局1〜4は特に管理フレームを交換していない。次にDTI845では、端末局3は、BTI830で受信したBeaconフレームに含まれるチャネルアクセス情報に従って、データフレームを送信し、端末局4はデータフレームを受信している。この後、制御局20は、再度Beaconシーケンスを決定・更新することができる。
このようにして、制御局20は、チャネルアクセスを要求する端末局に合わせて定期的にBeaconシーケンスを更新する。これにより、チャネルアクセスを行う複数の端末局がBeaconフレームを受信できるように、Beaconシーケンスが更新される(Beaconフレームが割り当てられる)。また、端末局間でデータフレームの送受信ができなくなる状況が効果的に回避される。
図9は、本実施形態におけるBeaconシーケンスを決定する処理の詳細を示すフローチャートである。第1の例として、制御局20と端末局1〜4が図10(A)に示す位置関係である場合について説明する。Beacon1〜4は、図3に示した送信指向性を有し、端末局1はBeacon1、端末局2はBeacon4、端末局3はBeacon3、端末局4はBeacon2を受信可能な位置にいる。また、制御局20は、端末局1と端末局3からチャネルアクセス要求を受信している。
まずS900では、制御局20は、端末局1〜4から受信したチャネルアクセス要求をチェックし、そのうちの1つを選択しS905へ進む。本第1の例では、制御局20は、端末局1と端末局3からチャネルアクセス要求を受信しており、始めに端末局1のチャネルアクセス要求を選択する。次にS905で、制御局20は、これまでA−BFTで受信したSSWフレームに基づき、チャネルアクセスを行う2つの端末局にとって最適な送信指向性のBeaconフレームを選択する。端末局1は端末局2に向けたデータ送信を要求しているので、制御局20は、端末局1に適した送信指向性としてBeacon1を、端末局2に適した送信指向性としてBeacon4を選択する。
続いて、制御局20は、所定の条件に基づいて、2つのBeaconフレームを同じBIに割り当て可能かどうかを判定する(S910)。本実施形態では、当該条件を、1つのBIに割り当て可能なBeaconフレームの数に基づき、以下のように設定する。すなわち、本実施形態では、1つのBIに割り当て可能なBeaconフレームの数は2とし、当該条件を、1つのBIへのBeaconフレームの割り当てが2以下であるか否かとする。なお、他にも指向性や通信装置の数や位置に応じて、当該条件が設定されてもよい。
制御局20は、4つのBeaconフレームをBIに割り当てる必要があるため、2つのBIに跨ってBeaconフレームを割り当てる。制御局20は、まだ1つ目と2つ目のBIにBeaconフレームを割り当てていないので、2つのBeaconフレームを同じBIに割り当て可能と判定する(S910のYes)。続いて、制御局20は、Beacon1とBeacon4を1つ目のBIに割り当てる(S915)。さらに、制御局20は、同じ1つ目のBIに、端末局1から端末局2に送信するデータフレームを割り当てる(S920)。
その後、全チャネルアクセス要求が選択されていないのであれば(S935のNo)、処理はS900へ戻る。本第1の例では、制御局20は端末局3のチャネルアクセス要求を選択する。S905では、制御局20は、端末局3に適した送信指向性としてBeacon3を、端末局4に適した送信指向性としてBeacon2を選択する。続いて、制御局20は、2つのBeaconフレームを同じBIに割り当て可能かどうかを判定する(S910)。制御局20は、既に1つ目のBIにはBeacon1とBeacon4を割り当てたので、2つ目のBIに割り当て可能かどうかを判定する。その結果2つ目のBIに割り当て可能なので(S910のYes)、Beacon2とBeacon3を2つ目のBIに割り当てる。制御局20は、Beaconフレームを割り当てた後、同じ2つ目のBIに端末局3から端末局4に送信するデータフレームを割り当てる。その後、処理はS935に進む。全チャネルアクセス要求が選択されたので(S935のYes)、処理はS940に進む。S940では、制御局20は、未割当のBeaconフレームがある場合にBIに割り当てるが、本第1の例では、未割当のものはないので、処理を終了する。
この結果として決定されるBeaconシーケンスは図10(B)のようになる。すなわち、1番目のBIでは、制御局20は、Beacon1とBeacon4を送信し、これにより端末局1と端末局2のチャネルアクセスが可能となる。2番目のBIでは、制御局20はBeacon2とBeacon3を送信し、これにより端末局3と端末局4のチャネルアクセスが可能となる。
図11(A)〜(B)に、このときの通信フレームの構成を示す。図11(A)は、Beaconシーケンスに従って繰り返される複数のBIのうちの、上記第1の例に従って更新後のBIを示し、図11(B)は、図11(A)に示すBIの次のBIを示している。以下、説明では、便宜上、図11(A)と図11(B)のBIを、それぞれ1番目のBIと2番目のBIと称する。
図11に示すように、図11(A)の1番目のBIで、制御局20は、Beacon3とBeacon4を送信し、これによりDTIで端末局1は端末局2にデータフレームを送信することが可能となる。図11(B)の2番目のBI1110で、制御局20は、Beacon2とBeacon3を送信し、これによりDTIで端末局3は端末局4にデータフレームを送信することが可能となる。このように、本実施形態における制御局20は、同じBIにチャネルアクセスを要求する端末局ペアに適したBeaconフレームの送信指向性を割り当てる。これにより、端末局1〜4は、Beaconフレームを正しく受信することができ、データフレームの送受信ができなくなることが回避可能となる。
また、図9のフローチャートを説明する第2の例として、制御局20と端末局1〜4が図12(A)に示す位置関係である場合について説明する。Beacon1〜4は、図3に示した送信指向性を有し、端末局1と端末局4はBeacon1、端末局2はBeacon4、端末局3はBeacon3を受信可能な位置にいる。また、制御局20は、端末局1と端末局3からチャネルアクセス要求を受信している。
まずS900では、制御局20が、端末局1〜4から受信したチャネルアクセス要求をチェックし、そのうちの1つを選択しS905へ進む。本第2の例では、制御局20は、端末局1と端末局3からチャネルアクセス要求を受信しており、始めに端末局1のチャネルアクセス要求を選択する。次にS905で、制御局20は、これまでA−BFTで受信したSSWフレームに基づき、チャネルアクセスを行う2つの端末局にとって最適な送信指向性のBeaconフレームを選択する。端末局1は端末局2に向けたデータ送信を要求しているので、制御局20は、端末局1に適した送信指向性としてBeacon1を、端末局2に適した送信指向性としてBeacon4を選択する。
続いて、制御局20は、2つのBeaconフレームを同じBIに割り当て可能かどうかを判定する(S910)。上述したように、本実施形態では、1つのBIに割り当て可能なBeaconフレームの数は2とする。制御局20は、4つのBeaconフレームを、2つのBIに跨って割り当てる。制御局20は、まだ1つ目と2つ目のBIにBeaconフレームを割り当てていないので、2つのBeaconフレームを同じBIに割り当て可能と判定する(S910のYes)。続いて、制御局20は、Beacon1とBeacon4を1つ目のBIに割り当てる(S915)。さらに、制御局20は、同じ1つ目のBIに、端末局1から端末局2に送信するデータフレームを割り当てる(S920)。
その後、全チャネルアクセス要求が選択されていないのであれば(S935のNo)、処理はS900へ戻る。本第2の例では、制御局20は端末局3のチャネルアクセス要求を選択する。S905では、制御局20は、端末局3に適した送信指向性としてBeacon3を、端末局4に適した送信指向性としてBeacon1を選択する。続いて、制御局20は、2つのBeaconフレームを同じBIに割り当て可能かどうかを判定する(S910)。制御局20は、既に1つ目のBIにはBeacon1とBeacon4を割り当てたので、Beacon3とBeacon1は同じBIに割り当てることができないと判定する(S910のNo)。従ってS925で、制御局20は、Beacon3を2つ目のBIに割り当てる。しかし、このままでは、2つ目のBIで、端末局4がBeaconフレームを受信できない。そこで、S930では、制御局20は、ATIで端末局4に向けてチャネルアクセス情報を含むAnnounceフレームの送信を予約する。S920では、制御局20は、2つ目のBIに端末局3から端末局4に送信するデータフレームを割り当てる。
その後、処理はS935に進み、全チャネルアクセス要求が選択されたので(S935のYes)、処理はS940に進む。S940では、制御局20は、未割当のBeaconフレームがある場合にBIに割り当てる。本第2の例では、制御局20は、Beacon2をまだ割り当てていないので、2つ目のBIにBeacon2を割り当て、処理を終了する。
この結果として決定されるBeaconシーケンスは図12(B)のようになる。すなわち、1番目のBIでは、制御局20は、Beacon1とBeacon4を送信し、これにより端末局1と端末局2のチャネルアクセスが可能となる。2番目のBIでは、制御局20は、Beacon2とBeacon3を送信し、更にATIで制御局20に向けてチャネルアクセス情報を含むAnnounceフレームを送信することにより、端末局3と端末局4のチャネルアクセスが可能となる。なお、1番目のBIと2番目のBIという表現は便宜的なものであり、図12は、繰り返される複数のBIのうち、図3に示すBeaconシーケンスの更新処理後に連続する2つのBIであることを示すものとする。
図13(A)〜(B)に、このときの通信フレームの構成を示す。図13(A)は、Beaconシーケンスに従って繰り返される複数のBIのうちの、上記第2の例に従って更新後のBIを示し、図13(B)は、図13(A)に示すBIの次のBIを示している。以下、説明では、便宜上、図13(A)と図13(B)のBIを、それぞれ1番目のBIと2番目のBIと称する。
図13に示すように、図13(A)の1番目のBIで、制御局20はBeacon1とBeacon4を送信し、これによりDTIで端末局1は端末局2にデータフレームを送信することが可能となる。図13(B)の2番目のBIで、制御局20は、Beacon2とBeacon3を送信し、更にATIで制御局20に向けてチャネルアクセス情報を含むAnnounceフレームを送信することにより、DTIで端末局3は端末局4にデータフレームを送信することが可能となる。
このように、本実施形態によれば、制御局は端末局の位置により送信指向性を制御するため、Beaconフレームを端末局が受信できないことにより、データフレームの送受信ができなくなることを回避できる。また、制御局がチャネルアクセスを要求する端末局に適した送信指向性のBeaconフレームを同じBIに割り当てることができない場合であっても、Announceフレームを併用することで、端末局がデータフレームの送受信ができるようになる。これにより、通信帯域を効率的に利用することが可能となる。
[実施形態2]
実施形態1では、PC及びHMDに接続される全ての通信装置を端末局としていたが、PCもしくはHMDに接続される通信装置のいずれかを制御局としても良い。図14は、実施形態2における映像伝送システムの構成例を示す図である。本実施形態では、図14に示すように、HMD14に制御局20が接続されている。PC11とHMD12はペアとなっており、PC11は、端末局1を用いて通信パス30を介して映像データを送信し、HMD12は、端末局2を用いて受信した映像データを再生する。同様に、PC13とHMD14はペアとなっており、PC13は、端末局3を用いて通信パス40を介して映像データを送信し、HMD14は、制御局20を用いて受信した映像データを再生する。
図15は、本実施形態におけるBeaconシーケンスを決定する処理の詳細を示すフローチャートである。まずS1500では、制御局20は、端末局1〜3から受信したチャネルアクセス要求をチェックし、そのうちの1つを選択しS1501へ進む。S1501では、制御局20は、選択したチャネルアクセス要求におけるチャネルアクセスの通信形態が、端末局と端末局間の通信であるか、制御局と端末局間の通信であるかを判別する。これはチャネルアクセス要求に含まれるデータフレームの送信元である通信装置の識別子や受信先である通信装置の識別子により判別可能である。
図14における端末局1と端末局2間の通信の場合は、処理はS1505に進む。S1505、S1510、S1515、S1520、S1525、S1530、S1535およびS1540の処理は、それぞれ図9のS905、S910、S915、S920、S925、S930、S935およびS940の処理と同様であるため、説明を省略する。一方、図14における端末局3と制御局20間の通信の場合は、処理はS1502に進む。S1502では、制御局20は、端末局に適した送信指向性のBeaconフレームを選択する。図14の場合は、制御局20は、端末局3に適したBeaconフレームを選択する。制御局20は、さらに、選択したBeaconフレームを、所定のBIに割り当て(S1503)、同じBIにデータフレームを割り当てる(S1520)。これにより、端末局3と制御局20間でデータフレームの送受信ができるようになる。
このように、本実施形態によれば、実施形態1に述べた利点に加え、制御局と端末局との間の通信では、処理が簡易化される。すなわち、制御局と端末局間の通信の場合は、制御局がチャネルアクセス情報を既に保持しているため、1つの端末局に最適な送信指向性のBeaconフレームとデータフレームを同一のBIに割り当てさえすればよい。
[実施形態3]
実施形態3では、制御局が端末局に適した指向性のBeaconフレームを送信したのにも関わらず、障害物に遮られ、端末局がBeaconフレームの受信に失敗した場合に、制御局がBeaconフレームとは異なる指向性でAnnounceフレームを送信する例を示している。
図16にBeaconフレームの送信指向性とAnnounceフレームの送信指向性を示す。まず、制御局20は、端末局1のチャネルアクセス要求に従って、端末局1にはBeacon1を、端末局2にはBeacon4を送信している。しかしながら、障害物1601が制御局20と端末局1の間に突如出現した場合、端末局1はBeacon1が受信できなくなる。このとき、制御局20が同じBI内のATIで、Beacon1と同方向の指向性でAnnounceフレームを送信しても、障害物1601に遮られる可能性が高い。そこで、制御局20は、AnnounceフレームをBeaconフレームとは異なる指向性で送ることにより、壁等の反射物1602を利用した反射パスを用いて障害物1601を回避する。これにより端末局1は、チャネルアクセス情報を取得することができ、データフレームの送受信ができるようになる。
図17は、制御局においてAnnounceフレームの送信が必要かどうかを判定する処理を示すフローチャートである。この処理は、A−BFTとATIの間に実行され得る。制御局20は、S1700で、現在のBIにおいてSSWフレームを受信した結果、同じBIでチャネルアクセスを行う端末局のBeaconフレームの受信状態を取得する。次に、S1705にて、制御局20は、端末局が受信が失敗したと判断した場合には(S1705のYes)、処理はS1710へ進み、そうでない場合は(S1705のNo)、処理は終了する。S1710では、制御局20は、現在のBIで送信したBeaconフレーム以外で、端末局にとって有効な指向性のBeaconフレームが存在するかどうかを判定する。端末局にとって有効な指向性のBeaconフレームが存在するかどうかは、現在のBIより前のBIにおいて端末局から受信したBeaconフレームの受信状態等に基づいて決定される。有効な指向性のBeaconフレームが存在する場合には(S1710のYes)、処理はS1715へ進み、そうではない場合には(S1710のNo)、処理は終了する。S1715では、制御局20は、現在のBIのBeaconフレームとは異なる指向性を用いてATIでAnnounceフレームを端末局に向けて送信することを決定する。
このように、本実施形態によれば、実施形態1に述べた利点に加え、障害物が存在する場合であっても、Beaconフレームを端末局が受信できないことにより、データフレームの送受信ができなくなることを回避できる。
ここまでにおいて、本発明の実施形態について説明した。制御局は上述した制御を行うことにより、Beaconフレームの送信指向性が適応的に制御され、チャネルアクセスを要求する端末は適時にBeaconフレームを受信することが可能となる。このことにより、データフレームの伝送が効率よく行われ、システムにおけるスループットも向上する。
[その他の実施形態]
上述の実施形態では、通信装置の例として、HMD及びPCを用いた映像伝送システムにおいて説明したが、その他の通信装置、例えば、スマートフォン等の各種モバイル端末、プリンタ、デジタルカメラ、デジタル家電等にも適用可能である。
また、本発明は、60GHz帯を用いたミリ波通信に限らず、その他の周波数帯を用いた無線通信にも適用可能である。
また、本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。