説明

情報通信端末、無線通信装置、および、無線通信ネットワーク

【課題】やりとりされるデータの重要度に応じた通信を可能とする情報通信端末、無線通信装置、および、情報通信ネットワークを提供する。
【解決手段】ネットワーク10(アドホック・ネットワーク)を構成する端末1〜4では、共通する複数のIBSSID(例として、BSS♯1,BSS♯2,BSS♯3)が格納されている。ネットワーク10内の端末間で通信が行なわれる際、送信側の端末で、送信するファイルが生成されたアプリケーションの種類に応じて、利用するIBSSIDが特定される。これにより、ネットワーク10では、互いに異なるIBSSIDが利用された複数の無線セルが形成される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報通信端末、無線通信装置、および、無線通信ネットワークに関し、特に、用途に応じた態様で通信を行なうことができる情報通信端末、無線通信装置、および、無線通信ネットワークに関する。
【背景技術】
【0002】
近年、複数の情報通信端末において、基地局(アクセス・ポイント)を使用しない無線通信が普及しつつある。なお、このような無線通信のできる端末のみで構成されるネットワークは、アドホック・ネットワーク(ad hoc network)と呼ばれる。
【0003】
アドホック・ネットワークにおける通信が可能な端末に関する技術は、種々開示されており、たとえば、特開2005−176021号公報(特許文献1)には、アクセス・ポイントを有するネットワークとアドホック・ネットワークとを含む複数のネットワークに接続可能なパーソナルコンピュータが、予め設定された優先条件(電波強度等)に基づいて、当該複数のネットワークの中から接続するネットワークを選択するための技術が開示されている。
【特許文献1】特開2005−176021号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
無線LAN(Local Area Network)の規格の一つである、IEEE802.11規格に基づいて通信が行なわれる場合、MAC(Media Access Control)ヘッダに含まれるIBSSID(Independent Basic Service Set IDentification)によって無線セルが定義され、当該無線セル上で、端末同士の通信が行なわれる。
【0005】
なお、従来のアドホック・ネットワークは、上記したような無線セル内では全端末が同じ通信方式でデータのやり取りするように構成されていたため、一度、一部の端末間の通信が始まってしまうと、たとえ優先度の高いデータのやり取りであっても、当該無線セル内では、他の端末間の通信は待機させられる場合があった。
【0006】
具体的には、たとえば図34に示されるように、無線セル900内に4台の端末901〜904が存在し、端末901と端末902が、端末903と端末904が、それぞれ無線通信を行なおうとしている場合について説明する。この場合、端末901と端末902との間で通信が開始されてしまえば、端末903と端末904の間での通信は、たとえ端末901と端末902でやり取りされるデータより重要度の高いデータの通信であっても、端末901と端末902との間の通信が終了し、チャンネルが空くまでは、待機しなければならなかった。
【0007】
本発明は係る実情に鑑み考え出されたものであり、その目的は、やりとりされるデータの重要度に応じた通信を可能とする情報通信端末、無線通信装置、および、無線通信ネットワークを提供することである。
【課題を解決するための手段】
【0008】
本発明に従った情報通信端末は、無線通信ネットワークにおいて複数の属性のデータを送信可能な情報通信端末であって、無線通信ネットワークにデータを送信する送信手段と、無線通信ネットワークのネットワークアドレスと送信するデータの属性とを関連付ける情報を記憶する記憶手段と、送信されるデータの属性を抽出する第1の抽出手段と、前記記憶手段において、前記第1の抽出手段によって抽出された属性に関連付けられているネットワークアドレスを抽出する第2の抽出手段と、前記送信手段に、前記第2の抽出手段によって抽出されたネットワークアドレスを含むビーコンを送信させる制御手段とを備えることを特徴とする。
【0009】
また、本発明に従った情報通信端末は、データを送信する要求を受け付ける受付手段をさらに備え、前記第1の抽出手段は、前記受付手段によって送信を受け付けられたデータの属性を抽出することが好ましい。
【0010】
また、本発明に従った情報通信端末では、前記記憶手段は、前記データの属性としてデータの送信を行なうためのアプリケーションを特定する情報を記憶することが好ましい。
【0011】
また、本発明に従った情報通信端末では、前記記憶手段は、前記データの属性として、送信されるデータの種類を特定する情報を記憶することが好ましい。
【0012】
また、本発明に従った情報通信端末では、前記無線通信ネットワークは、アドホック通信ネットワークであることが好ましい。
【0013】
また、本発明に従った情報通信端末では、前記制御手段は、前記第1の抽出手段によって抽出されたデータの属性が所定の属性である場合であって、前記所定の属性以外のデータの属性に基づいた通信動作を行なっているときには、当該所定の属性のデータを割り込み送信させることが好ましい。
【0014】
また、本発明に従った情報通信端末では、前記記憶手段は、割り込み送信に関するデータの属性についての優先順位をさらに記憶し、前記制御手段は、前記記憶手段における前記所定の属性についての優先順位が、通信動作が行なわれているデータの属性よりも高い場合に、当該所定の属性のデータを割り込み送信させることが好ましい。
【0015】
本発明に従った無線通信装置は、無線通信ネットワークにおいて複数の属性のデータを送信可能な情報通信端末に搭載される無線通信装置であって、無線通信ネットワークにデータを送信する送信手段と、無線通信ネットワークのネットワークアドレスと送信するデータの属性とを関連付ける情報を記憶する記憶手段と、送信されるデータの属性を抽出する第1の抽出手段と、前記記憶手段において、前記第1の抽出手段によって抽出された属性に関連付けられているネットワークアドレスを抽出する第2の抽出手段と、前記送信手段に、前記第2の抽出手段によって抽出されたネットワークアドレスを含むビーコンを送信させる制御手段とを備えることを特徴とする。
【0016】
本発明に従った無線通信ネットワークは、複数の属性のデータを送信可能な第1の情報通信端末と、前記第1の情報通信端末によって送信されたデータを受信する第2の情報通信端末とを備える情報通信ネットワークであって、前記第1の情報通信端末は、無線通信ネットワークにデータを送信する送信手段と、無線通信ネットワークのネットワークアドレスと送信するデータの属性とを関連付ける情報を記憶する記憶手段と、送信されるデータの属性を抽出する第1の抽出手段と、前記記憶手段において、前記抽出手段によって抽出された属性に関連付けられているネットワークアドレスを抽出する第2の抽出手段と、前記送信手段に、前記第2の抽出手段によって抽出されたネットワークアドレスを含むビーコンを送信させる制御手段とを含み、前記第2の情報通信端末は、前記送信手段によって送信されたビーコンに含まれるネットワークアドレスに基づいてデータを受信する受信手段を含むことを特徴とする。
【発明の効果】
【0017】
本発明によれば、無線通信ネットワークにおいて、データの属性に基づいて、異なったネットワークアドレスでデータの通信が行なわれる。
【0018】
これにより、1つの無線通信ネットワークにおいて複数のチャンネルでデータ通信を行なえるようになるため、優先度の低いデータの通信と優先度の高いデータの通信が異なるチャンネル(ネットワークアドレス)を利用して通信でき、したがって、優先度の低いデータの通信にチャンネルが占有されて優先度の高いデータの到着が遅れるといった事態を回避できる。
【0019】
したがって、無線通信ネットワークにおいて通信効率を向上させることができる。
【発明を実施するための最良の形態】
【0020】
以下、本発明の無線通信ネットワークの実施の形態について図面を参照して説明する。
[第1の実施の形態]
図1は、本発明の無線通信ネットワークの第1の実施の形態であるアドホック・ネットワークの構成の一例を模式的に示す図である。
【0021】
まず、図1(A)を参照して、ネットワーク10には、本発明の情報通信端末の一実施の形態である端末1〜4が含まれる。ネットワーク10は、複数の情報通信端末によって構成される、基地局を使用しない無線通信ネットワーク(アドホック・ネットワーク)である。
【0022】
本実施の形態のネットワーク10では、互いに異なるIBSSID(Independent Basic Service Set IDentification)が利用された、それぞれ独立した複数の無線セルが形成される。具体的には、あるIBSSID(図1では一例として「BSS♯1」と記述されるものが記載されている)を利用して端末1と端末2の間で通信が行なわれるのと同時に、他のIBSSIDを利用して、端末3と端末4の間での通信が可能となる。図1(A)では、「あるIBSSID」が利用されることによって形成される無線セルが無線セル11として示され、また、「他のIBSSID」(図1では一例として「BSS♯2」と記述されるものが記載されている)によって形成される無線セルが無線セル12として示されている。
【0023】
また、本実施の形態のネットワーク10では、端末1は、「あるIBSSID」(または、別のIBSSID)を利用して端末3や端末4との間で通信が可能であり、端末2も、「他のIBSSID」(または、さらに別のIBSSID)を利用して端末3や端末4との間で通信が可能である。図1(B)では、「BSS♯1」が利用されることによって端末1と端末3の間で形成される無線セルが無線セル13として示され、また、「BSS♯3」(図1ではさらの別のIBSSIDの一例)が利用されることによって端末2と端末4との間で形成される無線セルが無線セル14として示されている。
【0024】
図2は、図1の端末1のハードウェア構成を模式的に示す図である。
図2を参照して、端末1は、主にホストシステム100と通信回路200から構成される。ホストシステム100は、当該ホストシステム100の動作を全体的に制御するCPU(Central Processing Unit)を含む。また、ホストシステム100では、種々のアプリケーションが実行される。各アプリケーションのプログラムは、HD(ハードディスク)102に格納されている。また、ホストシステム100は、CPU101のワークエリアとなるRAM(Random Access Memory)103、情報を表示するディスプレイ104、音声を出力するスピーカ105、キーやボタンなどの外部からの情報の入力に用いられる入力部106、および、通信回路200との間で情報のやり取りを行なうインターフェイス107を含む。
【0025】
通信回路200は、ベースバンド/MAC(Media Access Control)回路250、RF(Radio Frequency)回路205、バラン204、アンテナ203、EEPROM(Electronically Erasable and Programmable Read Only Memory)206,207、電源回路201、および、クロック回路202を含む。
【0026】
クロック回路202は、ベースバンド/MAC回路250とRF回路205にクロック信号を供給する。電源回路201は、ベースバンド/MAC回路250とRF回路205に対する電力の供給を制御する。
【0027】
RF回路205は、アンテナ203を介してデータの送受信を行なう。アンテナ203とRF回路205との間に、バラン204が設けられている。
【0028】
ベースバンド/MAC回路250は、CPU251、インターフェイス252、外部バスコントローラ253、プログラムメモリ254、共有メモリ255、タイマ256、コントロールMAC部257、ADC(analog-digital converter)258、および、DAC(digital-analog converter)259を含む。
【0029】
インターフェイス252は、ホストシステム100に対するインターフェイスである。CPU251は、ホストシステム100から、データをネットワークに対して送信する指示を受けると、インターフェイス252に、ホストシステム100内のメモリ(たとえば、RAM103)に格納された当該データを取出させる。なお、ホストシステム100は、送信を指示するデータを生成し、当該データを上記メモリに格納した後、当該データの送信指示を通信回路200へ送信する。また、インターフェイス252によって取出されたデータは、ネットワークに対して送信するフレームの「ユーザ・データ・ボディ部」を構成するデータとして、プログラムメモリ254に一時的に格納される。
【0030】
そして、CPU251は、プログラムメモリ254に格納されたデータに対してMACヘッダとFCS(Frame Check Sequence)を含む種々のデータを付加することにより、ネットワークに対して送信するフレームを生成し、プログラムメモリ254に格納するとともに、共有メモリ255において当該フレームを生成した旨のフラグを立てる。ここで、ネットワークに送信されるフレームの一例であるBeaconフレームの構成を、図3を参照して説明する。
【0031】
図3は、IEEE802.11規格に準拠するフレームの構成を示す図である。
図3を参照して、フレーム300は、MACヘッダ部310と、フレーム・ボディ部320と、FCS部330とを含む。
【0032】
MACヘッダ部310は、DA(Destination Address)311、SA(Source Address)312およびIBSSID313を含む。DA311は、フレーム300の宛先アドレスである。SA312は、フレーム300の送信元アドレスである。DA311およびSA312は、6バイトのMACアドレスである。これらのアドレスは、EEPROM206に格納されている。また、IBSSID313は、アドホック・ネットワークを識別するためのネットワーク識別情報である。本実施の形態では、端末1は、送信するデータ(ホストシステム100においてアプリケーションから送信の要求がなされたデータ)の属性に応じて、データ送信の際に異なるIBSSIDを利用することができる。具体的には、MACヘッダ部310を構成するIBSSID313の値が、送信されるデータの属性に応じて変更される。
【0033】
フレーム・ボディ部320は、ビーコン・フレーム・ボディ部321と、ユーザ・データ・ボディ部322とを含む。ビーコン・フレーム・ボディ部321は、SSID(Service Set Identifier)を含む。SSID3211は、たとえば、ネットワークの名称を特定する情報とされ、32バイト以内の文字列として設定される。ユーザ・データ・ボディ部322は、通信される実際のデータ(ホストシステム100で実行されるアプリケーションから送信を要求されたデータ)を含む。ユーザ・データ・ボディ部322は、たとえば、1500バイトのデータを含む。
【0034】
なお、図3のフレーム300は、Beaconフレームであるため、フレーム・ボディ部320にはビーコン・フレーム・ボディ部等のデータを含むが、フレーム300が他の用途のフレームである場合には、フレーム・ボディ部320に含まれるデータは適宜変更される。
【0035】
FCS部330は、フレームの誤り検出に使用される情報(FCS)を含む。
図2に戻って、プログラムメモリ254に格納された送信用のフレームは、コントロールMAC部257によって、DAC259へ送られた後、アナログデータに変換されて、RF回路205、バラン204、アンテナ203を介して、ネットワークへと送信される。
【0036】
通信回路200において、ネットワークを介して送信されてきたデータが受信される際の動作について説明する。アンテナ203およびバラン204を介してRF回路205に送られてきたフレームは、ADC258においてデジタルデータに変換された後、コントロールMAC部257に送られる。コントロールMAC部257は、デジタル信号に変換されたフレームに対して、フレーム先頭検出、時間および周波数の同期処理を行なった後、誤り訂正復号を行なう。そして、コントロールMAC部257は、さらに、当該フレームのDA311がEEPROM206に格納される当該通信回路200のMACアドレスと一致するか否かを判断し、一致すると判断すると、フレームからMACヘッダ部310とFCS部330を取除いた後、プログラムメモリ254に、残ったデータ(フレーム・ボディ部320)を転送する。なお、一致しないと判断すると、コントロールMAC部257は、受信したフレームを破棄する。
【0037】
また、コントロールMAC部257は、受信したフレーム・ボディ部320をプログラムメモリ254に格納したときに、共有メモリ255において、その旨を示すフラグをセットする。CPU251は、当該フラグがセットされたことに応じて、プログラムメモリ254に格納されたフレーム・ボディ部320を、インターフェイス252を介して、ホストシステム100へ送る。
【0038】
図1の端末2〜4の構成は、図2を用いて説明した端末1の構成と同様とすることができるため、ここでは説明を繰返さない。
【0039】
次に、本実施の形態のネットワーク10で行なわれる通信のためにホストシステム100および通信回路200で実行される処理の内容について説明する。
【0040】
図4は、端末1がネットワーク10に対してデータを送信する際にホストシステム100のCPU101が実行する処理のフローチャートであり、図5は、通信回路200のCPU251が実行する処理のフローチャートである。
【0041】
図4を参照して、CPU101は、まずステップSA10で、入力部106に対してファイルを送信するための操作がなされたか否かを判断し、そのような操作がなされたと判断すると、ステップSA20へ処理を進める。
【0042】
ステップSA20では、CPU101は、当該ファイルの送信に利用するIBSSIDを決定して、ステップSA30へ処理を進める。なお、ステップSA20におけるIBSSIDの決定の際には、たとえば表1に示されるようなテーブルが利用される。当該テーブルは、たとえばHD102に格納される。
【0043】
【表1】

【0044】
表1では、ホストシステム100から通信回路200に対してデータの送信要求がなされた際に当該ホストシステム100において利用されているアプリケーションと、当該データの送信の際に利用されるIBSSIDとが関連付けられて記憶されている。具体的には、「AA」で特定されるアプリケーションに対しては、「BSS♯1」で特定されるIBSSIDが関連付けられており、「BB」で特定されるアプリケーションに対しては「BSS♯2」で特定されるIBSSIDが関連付けられ、そして、「CC」で特定されるアプリケーションに対しては「BSS♯3」で特定されるIBSSIDが関連付けられている。
【0045】
そして、ステップSA20では、CPU101は、ステップSA10でファイルの送信を指示された際に実行されているアプリケーションに対応するIBSSIDを、ファイルの送信に利用するIBSSIDと決定する。
【0046】
次に、ステップSA30では、CPU101は、通信回路200に対してBeaconフレームの送信を指示して、ステップSA40へ処理を進める。なお、ステップSA30では、CPU101は、上記指示とともに、ステップSA20で決定したIBSSIDを特定する情報も通信回路200へ送る。
【0047】
ここで、図5を参照して、ホストシステム100からBeaconフレームを送信する指示がなされると、通信回路200では、CPU251が、ステップSB10からステップSB20へ処理を進める。
【0048】
ステップSB20では、CPU251は、ステップSA30(図4参照)の処理により送信されてきたIBSSIDに基づいてBeaconフレームを生成して、ステップSB30へ処理を進める。具体的には、ステップSB20では、CPU251は、図3を参照して説明したようなフレームにおいて、IBSSID313としてホストシステム100から送信されてきたIBSSIDを特定する情報を組込むことにより、Beaconフレームを生成する。
【0049】
次に、ステップSB30で、CPU251は、ステップSB20で生成したBeaconフレームをアンテナ203から送信して、ステップSB40へ処理を進める。
【0050】
ステップSB40では、CPU251は、ホストシステム100からファイル送信の指示があるまで待機する。
【0051】
図4に戻って、ステップSA30でBeaconフレームの送信を通信回路200に対して指示した後、CPU101は、ステップSA40で、ステップSA10で操作を受付けたファイルを当該ホストシステム100内のメモリ(たとえば、RAM103)に格納するとともに当該ファイルの送信を通信回路200に指示する情報を送信して、処理を終了する。
【0052】
図5を参照して、ホストシステム100からファイルの送信の指示がなされると、CPU251は、ステップSB40からステップSB50へ処理を進める。
【0053】
ステップSB50では、ファイル送信用のフレームを生成して、ステップSB60へ処理を進める。なお、ステップSB50では、図3を参照して説明したフレームにおいて、ユーザ・データ・ボディ部322を構成するデータとして、ホストシステム100のメモリから取出したファイルのデータを挿入することにより、ファイル送信用パケットを生成する。
【0054】
ステップSB60では、CPU251は、ステップSB50で生成したフレームを送信して、処理を終了する。
【0055】
図6は、端末2〜4の中で、図4および図5を参照して説明したような態様で送信されたフレームを受信する側の端末において通信回路200のCPU251が実行する処理のフローチャートである。
【0056】
図6を参照して、CPU251は、ステップSC10でBeaconフレームを受信したか否かを判断し、受信したと判断するとステップSC20へ処理を進める。
【0057】
ステップSC20では、CPU251は、ステップSC10で受信したと判断したフレームに含まれるIBSSIDを、通信に利用するIBSSIDとして設定して、ステップSC30へ処理を進める。なお、ここで受信するBeaconフレームとは、ステップSA30(図4参照)で送信指示がなされ、ステップSB30(図5参照)で送信されたBeaconフレームである。また、IBSSIDの設定とは、BeaconフレームからIBSSIDを特定するデータ(図3のIBSSID313)を抽出し、EEPROM206に格納することを意味する。
【0058】
ステップSC30では、CPU251は、ステップSC20で設定したIBSSIDを含むパケットを受信したか否かを判断し、受信したと判断するとステップSC40へ処理を進める。
【0059】
ステップSC40では、CPU251は、SC30で受信したと判断したパケットユーザ・データ・ボディ部322を構成するデータをプログラムメモリ254に格納するとともに当該データをホストシステム100に対して送信して、処理を終了させる。
【0060】
以上説明した本実施の形態では、ネットワーク10を構成する複数の端末において、共通する複数のIBSSID(例として、BSS♯1,BSS♯2,BSS♯3)が格納されている。そして、当該ネットワーク10内の端末間でデータの送信が行なわれる際に、送信側の端末で送信するファイルが生成されたアプリケーションの種類に応じて、通信に利用するIBSSIDが特定される。
【0061】
なお、ファイルの生成に利用されたアプリケーションは、送信されるファイルの属性の一例である。通信に利用するIBSSIDを決定する情報が、送信されるファイルの形式など、他の情報であってもよい。通信に利用されるIBSSIDを決定する際に利用されるデータの属性として、アプリケーションの種類の代わりにファイル形式が利用される場合には、表1の代わりに表2が、ステップSA20におけるIBSSIDの決定の際に利用される。
【0062】
【表2】

【0063】
表2では、ファイル形式とIBSSIDとが関連付けられて記憶されている。なお、ファイル形式として示された「X」「Y」「Z」は、それぞれ、たとえばファイルの拡張子とすることができる。
【0064】
また、表1に示したアプリケーション「AA」「BB」「CC」とは、それぞれ、ファイルなどのデータを高速で転送するためのアプリケーション、AV(Audio Visual)データなどの大容量のデータをストリーム転送するためのアプリケーション、チャットなどの小容量のデータ転送のためのアプリケーションとすることができる。
【0065】
また、以上説明した本実施の形態では、表1(または表2)に示されたテーブルはホストシステム100側に格納され、IBSSIDの決定は100側で行なわれていた。なお、このようなIBSSIDの決定は、通信回路200側で行なわれてもよい。この場合、表1または表2に示したテーブルは、たとえばEEPROM207に格納され、そして、CPU251が、通信に利用するIBSSIDを決定する。端末1がこのように構成される場合のCPU101とCPU251のそれぞれの処理内容を図7と図8に示す。
【0066】
図7を参照して、CPU101は、入力部106からの操作を受付けると、ステップSA31へ処理を進める。
【0067】
ステップSA31では、CPU101は、通信回路200に対してBeaconフレームの送信を指示して、ステップSA40に処理を進める。
【0068】
なお、ステップSA31では、CPU101は、ステップSA10でファイル送信の操作を受付けたときに、当該ファイル送信に利用されていたアプリケーションを特定する情報も、通信回路200に対して送信する。
【0069】
図8を参照して、ステップSA31でホストシステム100からBeaconフレームの送信を指示されると、CPU251は、ステップSB10からステップSB11に処理を進める。
【0070】
ステップSB11では、CPU251は、表1を参照することにより、ステップSA31でCPU101が送信してきたアプリケーションを特定する情報に基づいて、通信で利用するIBSSIDを決定して、ステップSB20へ処理を進める。
【0071】
ステップSB20では、CPU251は、図5を参照して説明したのと同様に、Beaconフレームを生成する。
【0072】
図8のステップSB30の以降の処理は、図5のステップSB30以降の処理と同様であるため、重複した説明は繰返さない。
【0073】
なお、以上説明した本実施の形態では、無線通信装置の一実施の形態として通信回路200を示したが、無線通信装置の実施の形態は、これに限定されない。たとえば、通信回路200を構成するハードウェアによって実現された機能の一部または全部は、ソフトウェアによって実現されても良い。
【0074】
また、以上説明された本実施の形態の無線通信ネットワークでは、端末1(端末1〜4)において、ファイルを送信するための操作がなされると、ホストシステム100または通信回路200において、ファイルの属性に応じて、IBSSIDが決定された。
【0075】
このようなネットワークにおいて、さらに、端末1(端末1〜4)を、送信するファイルの属性に応じて割り込み送信を行なうか否かを決定するように構成することが考えられる。
【0076】
このような場合、たとえば、HD102には、さらに、表3または表4に示されるような、ファイルの属性と割り込み送信に関する優先順位とを関連付ける情報が格納される。
【0077】
【表3】

【0078】
【表4】

【0079】
表3には、ファイルの属性としてアプリケーションの種類が採用された場合の、割り込み送信に関する優先順位との関連性が示されている。また、表4には、ファイルの属性としてファイル形式が採用された場合の、割り込み送信に関する優先順位との関連性が示されている。
【0080】
このような場合、ホストシステム100のCPU101は、ステップSA10(図4参照)においてファイル送信のための操作がなされたと判断した場合、ステップSA20で、ファイル送信に利用するIBSSIDを決定するとともに、現在他の端末との間で通信動作が行なわれているか否かを判断する。そして、行なわれていると判断した場合、通信動作がどのようなファイルの属性によるものかを判断し、当該属性が、その時点で(直前のステップSA10において)送信の操作があったファイルの属性よりも表3または表4における優先順位が低いか否かを判断する。そして、低いと判断すると、CPU101は、その時点で送信の操作がなされたファイルを、実行中の通信動作に対して、割り込み送信する。
【0081】
つまり、たとえば、割り込み送信に関する優先順位が表3に示されるようにアプリケーションの種類に関連付けられて記憶されている場合、CCまたはAA(表1参照)のアプリケーションに対応したファイルについての通信動作が行なわれているときに、BB(表1参照)のアプリケーションに対応したファイルを送信する操作がなされると、CPU101は、当該BBのアプリケーションに対応したファイルを割り込み送信する。具体的には、再度IBSSIDを決定し直し、当該IBSSIDを利用したBeaconフレームを通信回路200に送信させ、BBのファイルを送信させ、当該BBのファイル送信が終了した後、元のIBSSIDを利用した通信動作を再開させる。
【0082】
また、割り込み送信に関する優先順位が表4に示されるようにファイルの種類に関連付けられて記憶されている場合、Z(表2参照)という種類のファイルについての通信動作が行なわれているときに、XまたはYという種類のファイルを送信する操作がなされると、CPU101は、当該XまたはYという種類のファイルを割り込み送信する。具体的には、割り込み送信の対象となるファイルの種類に応じてIBSSIDを決定し直し、当該IBSSIDを利用したBeaconフレームを通信回路200に送信させ、割り込み送信の対象となるファイルを送信させ、割り込み送信が終了した後、元のIBSSIDを利用した通信動作を再開させる。
【0083】
表3のBBや表4のXのように、優先順位を1位とされたアプリケーションまたはファイルの種類については、その属性以外の属性に基づいた通信が行なわれている状態では、常に、割り込み送信が行なわれることになる。
【0084】
なお、表3または表4に示したような優先順位は、端末1で実行または送信されるすべてのアプリケーションまたはファイルの種類について格納されていても良いし、一部についてのみ格納されていても良い。
【0085】
また、優先順位は、予め端末1において設定されていても良いし、ユーザによる操作によって設定されても良い。
【0086】
また、このような割り込み送信の処理は、通信回路200のCPU251に実行させることもできる。この場合、表3または表4に示した情報は、EEPROM207に格納される。
【0087】
そして、CPU251は、ステップSB10(図8参照)においてホストシステム100からBeaconフレームを送信する指示がなされたと判断すると、ステップSB11で、CPU101が送信してきたファイルの属性(アプリケーションを特定する情報またはファイルの種類)に基づいて、IBSSIDを決定するとともに、現在他の端末との間で通信動作を行なっているか否かを判断する。そして、行なっていると判断した場合、通信動作がどのようなファイルの属性によるものかを判断し、当該属性が、その時点で(直前のステップSB10において)CPU101から受信した情報で特定されるファイルの属性よりも表3または表4における優先順位が低いか否かを判断する。そして、低いと判断すると、CPU251は、その時点で送信の操作がなされたファイルを、実行中の通信動作に対して、割り込み送信する。
【0088】
[第2の実施の形態]
上記した第1の実施の形態では、通信に利用されるIBSSIDは、端末1〜4において、アプリケーション上で送信を指示されたファイルの属性に基づいて決定されていた。本実施の形態では、IBSSIDは、各端末においてユーザから入力されるSSIDの内容に基づいて決定される。
【0089】
図9は、本発明の無線通信ネットワークの第2の実施の形態において、端末間で接続が確立される際の情報のやり取りを説明するための図である。
【0090】
図9を参照して、ネットワーク10において端末1と端末2との間で接続が確立される場合、まず、1)として示されるように、ネットワーク10内の各端末(端末1,2)においてIBSSIDが生成される。本実施の形態では、各端末が、入力部106を介して入力された情報(SSID)に対して同じ演算を施す。これにより、各端末に対して同じSSIDが入力されれば、生成されるIBSSIDも同じものとなる。
【0091】
そして、2)として示されるように、ネットワーク10内のある端末(図9では端末1)が、生成したIBSSIDを含むBeaconフレームをブロードキャストする。これにより、当該Beaconフレームを送信した端末1と、当該Beaconフレームを受信した端末2との間で、接続が確立する。
【0092】
本実施の形態のネットワーク10を構成する複数の端末(端末1,2)は、それぞれ、図2を参照して説明したハードウェア構成を有するものとできるため、ここでは、これらのハードウェア構成についての詳細な説明は繰返さない。
【0093】
また、本実施の形態のネットワーク10で送受信されるBeaconフレームの構成は、図3を参照して説明したものとすることができるため、詳細な説明は繰返さない。
【0094】
次に、本実施の形態のネットワーク10において、複数の端末間で接続が確立される際の、Beaconフレームを送信する端末において実行される処理について説明する。図10は、そのような端末(便宜上、端末1とする)のホストシステム100のCPU101が実行する処理のフローチャートであり、図11は、当該端末1の通信回路200のCPU251が実行する処理のフローチャートである。
【0095】
図10を参照して、ホストシステム100では、CPU101は、まずステップSD10において、SSIDを特定する情報を入力する操作が入力部106に対してなされたか否かを判断する。そして、CPU101は、そのような操作がなされたと判断すると、ステップSD20へ処理を進める。
【0096】
ステップSD20では、CPU101は、入力されたSSIDの値に基づいて、IBSSIDを生成して、ステップSD30へ処理を進める。なお、CPU101は、ステップSD20において、まず、入力部106に対して入力されたSSIDを特定する情報を受付け、当該情報をRAM103に一時的に格納する。そして、当該SSIDを特定する情報に対して、CPU101は、所定の演算を施す。所定の演算とは、たとえばハッシュ演算であり、CPU101が当該演算を実行するのに必要とされるプログラムは、HD102に格納されている。そして、CPU101は、当該演算の結果として得られた値をRAM103に格納して、ステップSD30へ処理を進める。
【0097】
ステップSD30では、CPU101は、インターフェイス107を介して、通信回路200に、IBSSIDを生成してRAM103に格納した旨を通知して、ステップSD40へ処理を進める。
【0098】
図11を参照して、通信回路200のCPU251は、ステップSE10で、ホストシステム100からIBSSIDが生成された旨の通知を受けるまで待機し、そして、当該通知を受けると、ステップSE20へ処理を進める。
【0099】
ステップSE20では、CPU251は、ホストシステム100において生成されたIBSSIDを、RAM103から読出し、EEPROM206に格納させて、ステップSE30へ処理を進める。
【0100】
そして、CPU251は、ステップSE30において、ホストシステム100からBeaconフレーム送信指示が来るまで待機する。
【0101】
図10に戻って、ステップSD30でIBSSIDを生成した旨の通知を行なった後、CPU101は、ステップSD40で、入力部106等を介して、ネットワークへの接続を要求する情報が入力されたか否かを判断し、当該情報が入力されたと判断すると、ステップSD50へ処理を進める。
【0102】
ステップSD50では、CPU101は、通信回路200に対して、Beaconフレームの送信を指示する情報を送信して、処理を終了させる。
【0103】
図11を参照して、ホストシステム100からBeaconフレームの送信を指示する情報を受取ると、CPU251は、ステップSE30からステップSE40へ処理を進める。
【0104】
ステップSE40では、CPU251は、Beaconフレームを生成して、ステップSE50へ処理を進める。なお、ステップSE40では、ステップSE20でEEPROM206に格納させたIBSSIDを、BeaconフレームのIBSSIDとしてセットする。
【0105】
ステップSE50では、CPU251は、ステップSE40で生成したBeaconフレームをアンテナ203を介してブロードキャスト送信する。
【0106】
なお、本実施の形態では、ネットワーク10を構成する各端末においてSSIDが入力されると、図10を参照して説明したのと同様に、IBSSIDが生成される。また、本実施の形態では各端末においてSSIDに対して同じ演算を行なうように構成されている。したがって、各端末に同じSSIDの値を入力すれば、ネットワーク10を構成するすべての端末において、同じIBSSIDが生成されることになる。
【0107】
また、ネットワーク10における通信のセキュリティを向上させるため、IBSSIDに対して施す演算の内容は、定期的に変更されてもよい。この場合、ネットワーク10を構成するすべての端末において演算の内容は同時に変更されるべきである。
【0108】
以上説明した本実施の形態では、各端末において、ホストシステム100側で、SSIDに演算を施すことによりBSSIDが生成されていた。なお、各端末において、BSSIDは、通信回路200側で生成されてもよい。ここで、通信回路200側でBSSIDが生成される場合の、ホストシステム100のCPU101で実行される処理のフローチャートを図12に示し、通信回路200のCPU251で実行される処理を図13に示す。
【0109】
図12を参照して、CPU101は、ステップSD10で、入力部106等を介してSSIDを特定する情報が入力されたと判断すると、ステップSD11へ処理を進める。
【0110】
ステップSD11では、CPU101は、当該SSIDをRAM103に格納するとともに、インターフェイス107を介して通信回路200にSSIDが入力されたことを通知する情報を送信して、ステップSD40へ処理を進める。
【0111】
図13を参照して、CPU251は、ステップSE11で、ホストシステム100からSSIDの入力の通知を受けるまで待機し、当該通知を受けると、ステップSE11からステップSE12へ処理を進める。
【0112】
ステップSE12では、CPU251は、RAM103に格納されたSSIDを読出し、そして、当該SSIDに対して所定の演算を施すことによりIBSSIDを生成する。ここで、所定の演算とは、たとえばハッシュ演算であり、CPU251が当該演算を実行するためのプログラムは、たとえばEEPROM207に格納されている。
【0113】
次に、CPU251は、ステップSE20で、ステップSE12で生成したIBSSIDの値を、通信に利用するIBSSIDとしてEEPROM206に格納させて、ステップSE30へ処理を進める。
【0114】
ステップSE30では、CPU251は、ホストシステム100からBeaconフレームの送信を指示されるまで待機する。
【0115】
図12に戻って、CPU101は、ステップSD11で通信回路200に対してSSIDの入力を通知した後、ステップSD40で、入力部106等を介してネットワークへの接続を要求する情報が入力されたか否かを判断する。そして、そのような情報が入力されたと判断すると、ステップSD50に処理を進める。
【0116】
ステップSD50では、CPU101は、通信回路200に対してBeaconフレームの送信を指示する情報を送信して、処理を終了する。
【0117】
図13を参照して、CPU251は、ホストシステム100からBeaconフレームの送信を指示されると、ステップSE30からステップSE40へ処理を進める。
【0118】
ステップSE40では、CPU251は、EEPROM206に格納させていたIBSSIDの値を利用してBeaconフレームを生成して、ステップSE50へ処理を進める。
【0119】
ステップSE50では、CPU251は、ステップSE40で生成したBeaconフレームを、アンテナ203を介してブロードキャスト送信して、処理を終了する。
【0120】
[第3の実施の形態]
本実施の形態では、無線LAN(Local Area Network)の規格の一つである、IEEE802.11規格に基づいて通信が行なわれる場合を想定し、図1および図2に示したネットワーク10において、受信側端末の通信回路200によるFCSが指す冗長コードに従うエラーチェックを省略するシステムが提供される。
【0121】
本実施の形態では、ネットワーク10においては同一無線セルを構成する端末STA1とSTA2とが無線通信する場合を想定する。図14と図15には、端末STA1とSTA2の構成が示される。図14と図15の構成は、図2に示した端末1の構成と同様である。ここでは、端末STA1とSTA2との構成を区別するために、図14の端末STA1の各部の符号には図2の対応する部分の符号に4桁目の“1”を付与しており、図15の端末STA2では、同様に符号に4桁目の“2”を付与して、両端末の各部を区別して示す。端末STA1は通信回路2001とホストシステム1001からなり、端末STA2は通信回路2002とホストシステム1002からなる。
【0122】
図16には、本実施の形態に係るFCSが指す冗長コードに従うエラーチェックを行なわない方式(ここでは、No FCS方式という)の通信シーケンスが模式的に示される。図17と図18には第3の実施の形態に係る通信処理のフローチャートが示される。図19と図20には第3の実施の形態に係るフレーム(Beaconフレーム)の構成が模式的に示される。図21と図22には第3の実施の形態に係るメモリの内容例が示される。
【0123】
図16のシーケンスを参照しながら、セッションを確立した端末STA1とSTA2により図17と図18のフローチャートに従い端末STA1側で、ファイルの送信要求が生じて、ファイルを端末STA2に送信する場合を説明する。
【0124】
まず、送信側の端末STA1のホストシステム1001のCPU1011は、ステップSF10において入力部1061から入力した指示または実行中のアプリケーション(アプリケーションプログラム)に従い、ファイル送信操作がなされたかを判別する。送信操作がなされたと判断すると、ステップSF13に処理を進める。
【0125】
ステップSF13においては、CPU1011は、入力部1061から入力した指示または実行中のアプリケーションに従い、No FCS方式の要求が入力されているかを判断する。当該要求の入力ありと判断すると、次のステップSF16において、No FCS通知のデータを生成し、当該データをRAM1031に格納した後、当該データの送信指示を通信回路2001へ送信する。
【0126】
通信回路2001のCPU2511はステップSF27において、ホストシステム1001からNo FCS方式の送信指示を入力するので、ステップSF30では、通信回路2001はRAM1031から読出したNo FCS通知を含むBeaconフレーム(図19参照)を第1の実施の形態と同様にして生成して送信する。
【0127】
受信側端末STA2の通信回路2002においては、ステップSG10とSG13において、第1の実施の形態と同様にして図19のBeaconフレーム300が受信されて、コントロールMAC2572に与えられる。図19のBeaconフレーム300はユーザ・データボディ部322にNo FCS通知340を含む。
【0128】
コントロールMAC部2572は、ステップSG15において、デジタル信号に変換されている図19のBeaconフレーム300を入力し、入力したBeaconフレーム300について、フレーム先頭検出、時間および周波数の同期処理を行なった後、No FCS通知340が含まれていることを検出するので、応じて、共有メモリ2552の所定領域2553にデータ2554を書込み設定する。
【0129】
具体的には、図21に示すように、所定領域2553のデータ2554は、通常はFCSエラーチェック(誤り訂正復号)を行なうことを指示(エラーチェックイネーブル)するように設定されているが、No FCS通知340を受信すると、コントロールMAC部2572によりFCSエラーチェックを行なわないことを指示(エラーチェックディスイネーブル)するように設定(更新)される。
【0130】
その後、CPU2552は、ステップSG16において、データ2554を共有メモリ2552から読出しホストシステム1002に通知する。
【0131】
ホストシステム1002のCPU1012は、ステップSG37とSG40において、通信回路2002からデータ2554を受信すると、ステップSG43において、受信データを用いて図22に示すRAM1031の所定領域1033のデータ1034を書換え(更新)する。
【0132】
所定領域1033のデータ1034は、通常はFCSエラーチェック(誤り訂正復号)を行なうことを指示(エラーチェックイネーブル)するように設定されているが、通信回路2002からデータ2554を入力し更新された場合には、FCSエラーチェックを行なわないことを指示(エラーチェックディスイネーブル)するように設定(更新)される。
【0133】
次に、送信が要求されているファイルの送信が開始される。ここでは、ファイルはリアルタイム処理が要求されるA/Vデータのファイルであると想定する。
【0134】
端末STA1において予め送信ファイルのデータは所定サイズに分割されて、ステップSF19とSF23において、分割後の各データ(A/Vデータ)は、全データを送信完了と判断されるまでファイル送信指示とともに通信回路2001に順次に与えられる。
【0135】
通信回路2001は、ステップSF33、SF36およびSF39において、ファイルの全データを端末STA2に送信完了するまで、ファイル送信指示を通信回路2001から入力する毎に、ユーザ・データボディ部322を当該指示とともに入力したデータ3221により構成されるBeaconフレーム300を生成し、ネットワーク10に送信する。
【0136】
通信回路2001はホストシステム1001からの通知によりファイル送信の終了を判断すると、ステップSF43では、データ340が‘No FCS解除通知’からなる図19のBeaconフレーム300を生成してネットワーク10に送信する。
【0137】
受信側の端末STA2では、通信回路2002は、ステップSG19〜SG26において、端末STA1から図20のBeaconフレーム300を、ファイルの送信が完了するまで繰返し受信する。図20のBeaconフレーム300はユーザ・データ・ボディ部322に送信するべきファイルデータを構成するA/Vデータ3221を含む。
【0138】
このとき、Beaconフレーム300を受信する毎にコントロールMAC部2572は、ステップSG20、SG21、SG22およびSG23において、共有メモリ2552のデータ2554に基づき次のように処理する。
【0139】
まず、ステップSG20において共有メモリ2552のデータ2554を参照し、エラーチェックイネーブルを指していると判断すると(ステップSG20でNO)、ステップSG21とSG22において、受信したデータ(A/Vデータ3221)を、同時に受信したFCS部330の冗長コードを用いてFCSエラーチェック(誤り訂正復号)し、その復号後のA/Vデータ3221をホストシステム1002に送信する。一方、ステップSG20において共有メモリ2552のデータ2554はエラーチェックディスイネーブルを指していると判断すると(ステップSG20でYES)、FCSエラーチェックを省略し、ステップSG23において受信したデータ(A/Vデータ3221)とFCS部330の冗長コードとを、ホストシステム1002に送信する。
【0140】
ホストシステム1002では、CPU1012はステップSG46〜SG53において、通信回路2002から最終データを受信するまでは次の処理を繰返す。
【0141】
つまり、通信回路2002からデータを受信する毎に、ステップSG47においてRAM1032のデータ1034を参照して‘エラーチェックイネーブル’を指示するか否か判断する。‘エラーチェックイネーブル’を指示すると判断すると(ステップSG47でYES)、ステップSG49において同時に受信しているFCS部330の冗長コードを用いて受信データ(A/Vデータ3221)を誤り訂正復号し、ステップSG51において、復号されたA/Vデータ3221に従う音・画像をスピーカ1052またはディスプレイ1042を介し出力する。
【0142】
一方、RAM1032から読出したデータ1034は‘エラーチェックディスイネーブル’を指示すると判断すると(ステップSG47でNO)、通信回路2002から入力した受信データ(A/Vデータ3221)をそのまま(誤り訂正なしに)復号し、ステップSG51において、復号されたA/Vデータ3221に従う音・画像をスピーカ1052またはディスプレイ1042を介し出力する。
【0143】
受信データであるA/Vデータ3221に最終データである旨の情報が付されている場合には、当該付された情報に基づきステップSG53においてCPU1012は最終データ受信完了と判断し(ステップSG53でYES)、処理はステップSG56以降に移る。
【0144】
一方、通信回路2002ではステップSG29において、コントロールMAC部2572はネットワーク10を介して図19のユーザ・データボディ部322を‘No FCS通知’に代替して‘No FCS解除通知’指示するデータ340で構成したBeaconフレーム300を受信し、ステップSG32において、受信した当該通知をホストシステム1002に送信する。その後、ステップSG33において、共有メモリ2552の所定領域2553のデータ2554を通常のデータに戻すように更新する。すなわちデータ2554を‘エラーチェックイネーブル’を指示するように更新する。なお、データ2554が‘エラーチェックイネーブル’を指す場合には更新は行なわれない。
【0145】
ホストシステム1002では、CPU1012はステップSG56において、通信回路2002から‘No FCS解除通知’を受信すると、ステップSG59において、RAM1032の所定領域1033のデータ1034を通常のデータに戻すように更新する。すなわちデータ1034を‘エラーチェックイネーブル’を指示するように更新する。なお、データ1034が‘エラーチェックイネーブル’を指す場合には更新は行なわれない。
【0146】
本実施の形態では図18において、ステップSG20およびSG47において、受信フレーム毎にNo FCS設定の有無を判断するようにしているが、図16に示すようにファイル送信開始から終了までの期間においては一旦設定されたNo FCS設定のデータの変更はない場合は、受信フレーム毎のNo FCS設定の有無判断を、ファイル受信開始時にのみに行なうようにしてもよい。
【0147】
本実施の形態によれば、FCSに従う冗長コードを用いた誤り訂正復号を通信回路2001(2002)では行なわず、後段のホストシステム1001(1002)で実行するというNo FCS方式を用いることにより、エラーチェック処理を省略したフレーム通信が可能となる。これにより、ホストシステム1001(1002)で実行されるべきアプリケーションが要求するデータに応じて(リアルタイム性の通信が要求されるデータであるか否かなど)に応じてNo FCS方式を設定するか否かを入力部1061(1062)を操作して適宜変更することができる。これにより、たとえば非圧縮A/Vデータを再生するアプリケーションプログラムを実行するホストシステム1001(1002)側でのデータ欠落のない精度の高いストリーミング再生が可能となる。
【0148】
[第4の実施の形態]
本実施の形態では、無線LAN(Local Area Network)の規格の一つである、IEEE802.11規格に基づいて通信が行なわれる場合を想定し、無線LANアドホック・ネットワークにおける端末の消費電力低減を実現するための通信方式として、間欠送受信アドホック・モードと称する方式が提示される。ここでは、同一無線セルを構成する2つの端末STA1とSTA2、およびSTA3を想定する。端末STA1とSTA2は図14と図15に示す構成を有するので構成の詳細説明は略す。端末STA3は図2に示すのと同様の構成を有する。
【0149】
図23は、本実施の形態に係る間欠送受信アドホック・モードのシーケンスを模式的に示す図である。ここで、間欠送受信アドホック・モードとは、通信回路200が、電源回路201により電源ONされて各部に電力が供給されてからOFFされる(各部の供給電力が断たれる)までのデータの送受信が可能な期間において、間欠的に送受信動作を行なうようなモードを指す。したがって、電源ONされてから電源OFFされるまでの間(これを、受信を待機する待機期間という)、通信回路200は、スリープ期間(図23の破線を示す)とウェイク期間(図23の斜線の期間を示す)を交互に繰返し、ウェイク期間において送受信が可能となる。
【0150】
ウェイク期間においては、クロック回路202により、通信回路200の各部にクロックが供給される。各部はクロックが供給される期間は電源回路201からの供給電力を受けて動作するので、各部により電力が消費される状態にある。この状態においては、データの送受信が可能である。
【0151】
ウェイク期間からスリープ期間に移行するとき、クロック回路200はCPU251によりOFFが指示される。クロック回路200はOFFが指示されると、タイマ255を除く各部にクロックの出力を停止する。これにより、通信回路200のタイマ255を除く各部にはクロックが供給されなくなる。各部はクロックが供給停止される期間は、動作が不可能である(停止する)。これにより、スリープ期間では各部は動作を停止するのでデータ送受信が不可能であるが、タイマ255を除く各部での電力消費はないので省電力できる。
【0152】
スリープ期間においては、タイマ256は計時動作を行ない、タイマ256は、一定のスリープ期間を計時すると、クロック回路202にONの指示を与える。クロック回路200はONの指示を入力すると、応じて通信回路200の各部にクロックの出力を再開する。これにより、各部は動作を再開し電力の消費が再開される。これによりスリープ期間からウェイク期間に移行する。
【0153】
ウェイク期間においては、CPU251は、タイマ256から入力する計時値に基づき、一定のウェイク期間が経過したことを検知すると、クロック回路202にOFFの指示を与える。これにより、通信回路200はウェイク期間からスリープ期間に移行する。
【0154】
図23を参照して、端末STA1とSTA2の両端末は、電源ONされると、ウェイク期間に入り、Beaconフレーム300を送信する。このBeaconフレーム300は、端末STA1から送信されるものについては、図24(A)に示すフォーマット有し、端末STA2から送信されるものについては図24(B)に示すフォーマットを有する。両方のBeaconフレーム300のDA311は、ブロードキャストに従う宛先を指している。
【0155】
図23において、端末STA1は、電源ONされた後の4回目のウェイク期間において、3回目のウェイク期間に移行している端末STA2から送信された図24(B)のBeaconフレーム300を受信することができるので、受信したことに応じて、MACヘッダ部310に確認応答のNULLを有するBeaconフレーム300(図24(C)参照)を端末STA2に送信する。端末STA2は、NULLのBeaconフレーム300を受信したことに応じて、MACヘッダB310にACK応答を有するBeaconフレーム300(図24(D)参照)を送信する。これにより、端末STA1とSTA2の間でセッションが確立(通信相手を確認し確認した通信相手と通信が可能な状態になること)して、端末STA1は、予めホストシステム1001側から受信していたデータ送信要求に応じたデータのフレームを端末STA2に送信する。
【0156】
図25と図26には、間欠送受信アドホック・モードを実装した場合において、端末STA1、STA2およびSTA3が待機時に周期的にスリープ期間に移行することによって待機電力(待機時の消費電力)を低減することが模式的に示される。図25の状態(1)では、端末STA3はスリープ期間にあるがウェイク期間の端末STA1から送信されたBeaconフレーム300は、ウェイク期間にある端末STA2により受信されて応答が返信されて、その後、端末STAとSTA2の間でセッションが確立してデータ通信をする(図26参照)。そして図25の状態(2)に移行する。データ通信をする期間において、同じ無線セルに在る端末STA3は、ウェイク期間とスリープ期間を交互に繰返して電力消費量を低減するように動作する。
【0157】
状態(2)では、端末STA1とSTA2の間でデータ通信をする期間において、同じ無線セルに在る端末STA3がウェイク期間にある。
【0158】
データ通信が終了した後、図25の状態(3)において、端末STA1から送信されたBeaconフレーム300をウェイク期間にある端末STA3(端末STA2はスリープ期間にある)が受信し、図26に示すように両者の間で応答が送受信されて、セッションが確立し、状態(4)のデータ通信が行なわれる。このデータ通信期間では、同じ無線セルに在る端末STA2は、ウェイク期間とスリープ期間を交互に繰返して電力消費量を低減するように動作する。
【0159】
図27には、本実施の形態によるシステム状態の遷移モデルが示される。この遷移モデルにおいては、説明を簡単にするためにBeaconフレーム送出中のクロック停止状態に関しての記述が省略されている。図示されるように端末では、電源ONされるとシステム設定がなされる。この設定では待機期間(ウェイク期間+スリープ期間)とウェイク期間を指定するデータなどが設定される。その後、待機状態(ウェイク期間)に移行しネットワーク10におけるBeaconフレームを監視する。設定された一定のウェイク期間内にBeaconフレームを受信できないときは(タイムアウト)、スリープ期間に移行する。一定のスリープ期間が終了すると(タイムアウト)、待機期間(ウェイク期間)に移行し、Beaconフレームを監視する。監視する中でBeaconフレームを受信すると(Beacon検出)セッション期間(データ送受信)に移行する。データ送受信が終了しセッション期間が終了すると、待機期間(ウェイク期間)に移行する。
【0160】
図27の状態遷移は共有メモリ(2551、2552)に予め設定された各種パラメータを参照することにより実現される。図28には共有メモリ(2551、2552)に予め格納される各種パラメータが示される。パラメータとしては、待機期間データ280、ウェイク期間データ281、MAX待機回数データ282、カウント待機回数データ283およびデフォルト待機期間データ284を含む。図28のデータが格納される記憶領域は、電源回路201からの電力供給が断たれる場合でも、その記憶内容を保持できるような記憶領域である。
【0161】
図28の各種パラメータは、ホストシステム(1001、1002)の入力部(1061、1062)が操作されて外部から入力されて共有メモリ(2551、2552)に格納され、または、ホストシステム(1001、1002)で実行されるべきアプリケーションプログラムに従いCPU(1011、1012)により共有メモリ(2551、2552)に格納される。したがって共有メモリのデータは入力部(1061、1062)を操作することにより、または実行されるべきアプリケーションの種類などに従い可変に設定することができる。
【0162】
ここでは、主に端末STA1とSTA2との間の間欠送受信アドホック・モードを想定するので、これらのパラメータは共有メモリ2551と2552に図28のように格納されるとしたが、端末STA3においても同様に格納される。
【0163】
図29に示されるように、待機期間はウェイク期間とスリープ期間からなる。したがって、スリープ期間=待機期間データ280−ウェイク期間データ281により算出することができる。
【0164】
MAX待機回数データ282は、待機期間データ280を更新(変更)するための閾値を示す。具体的にはMAX待機回数データ282が示す回数分連続して待機(ウェイク期間)を繰返してもBeaconフレームを受信(検出)できない場合に、待機期間データ280を変更(調整)する。カウント待機回数データ283が示す値は、Beaconフレームを受信したときから次のBeaconフレームを受信するまでの間に待機期間に移行した回数を指す1種のカウンタの機能を有する。カウント待機回数データ283の値は、Beaconフレームを受信する毎にリセットされる。たとえば0に更新される。
【0165】
デフォルト待機期間データ284は、後述するように待機期間データ280が指す待機期間(ms)を更新するための算出において参照される。
【0166】
図29に示すように、待機期間におけるウェイク期間においてはBeaconフレームを受信することが可能な期間であるので、たとえば、Beaconフレームの受信可能確率(Beaconフレーム検出率)を高くすることに重きを置くならば、待機期間データ280が指す待機期間(ms)を短く設定しかつ待機期間におけるウェイク期間データ281が指すウェイク期間(ms)を長く設定する。一方、待機期間に消費電力を低減することに重きを置くならば、待機期間(ms)が長くなり、かつウェイク期間を短くするように待機期間データ280およびウェイク期間データ281を設定する。
【0167】
図30と図31は、待機期間の可変設定(自動調整)について説明する図である。たとえば、図30に示されるように、待機期間が固定とされる場合には、端末STA1のBeaconフレームの送信完了周期と、端末STA2におけるウェイク期間開始の周期とが同じとなる(一致する)ケースが生じる可能性がある。そのケースでは端末STA2はウェイク期間においてBeaconフレーム300を受信できないので両者の間ではセッションが確立されることはなく、データ通信が行なわれることはない。
【0168】
これに対して、図31の待機期間の自動調整機能がある場合には、たとえば、カウント待機回数データ283の値が、矢印285で示す期間においてMAX待機回数データ282が指す値を超えた場合には、上述したように周期が同じになっている可能性があるので端末STA2の待機期間データ280が指す待機期間(ms)を変更(更新)する。これにより周期をずらすことができて、図31の矢印286で示すタイミングにおいて、端末STA1のBeaconフレーム300の発信期間と、端末STA2のウェイク期間とが一致し、端末STA2は、端末STA1側からのBeaconフレーム300を受信することができて、両者の間で、データ通信をすることができる。
【0169】
本実施の形態では、待機期間データ280が指す待機期間(ms)の更新は、(更新後待機期間=デフォルト待機期間データ284が指すデフォルト待機期間+ランダム係数)との計算式(1)に従いCPU(2511、2512)が新たな待機期間を算出し、算出された待機期間を共有メモリ(2551、2552)の待機期間データ280として格納(待機期間データ280を上書き)することにより行なわれる。
【0170】
待機期間(ms)の算出に用いられるランダム係数は、端末1が所有している以下のパラメータから生成することができる。たとえばMACアドレス、エラー回数、クロック回路202が指すリアルタイムクロック(日付、時間)およびハードウェアタイマ256が指す時間データなどである。ここで、エラー回数とはMAX待機回数データ282に照らして待機期間(ms)の更新が行なわれた回数のトータル値を指す。
【0171】
図32と図33のフローチャートを参照しながら、図23のシーケンスに従う間欠送受信アドホック・モードについて説明する。図32と図33のフローチャートは、端末STA1と端末STA2の間で通信が行なわれることを想定したものである。なお、予め電源がONされて共有メモリ2552(2552)には図28に示すデータの格納が完了していると想定する。ここでは、カウント待機回数データ283は0に初期設定される。
【0172】
図32に従い端末STA1がBeaconフレーム300を送信しながらネットワーク10を介してBeaconフレーム300の受信を待機する期間の動作について説明する。
【0173】
まず、電源ONして待機期間が開始されるとタイマ2561から入力する計時時間データに基づきCPU2511はステップSH10においてウェイク期間を計時開始する。待機時間が始まると、まずウェイク期間(ウェイクモード)に移行する。ステップSH13では、このウェイク期間の経過がタイマ2561の計時データに基づきCPU2511により計時(検知)される。このウェイク期間の処理は図33において後述する。
【0174】
ウェイク期間が経過したことが判断されると、スリープ期間に移行する。ステップSH16とSH19では、前述したようにクロック回路2021からのクロックの供給は停止して各部での電力消費はなされず送受信は不可能となる。また、タイマ2561によってスリープ期間の経過が計時される。
【0175】
ステップSH22においてタイマ2561は計時値とスリープ期間の値とを比較して、比較結果が(計時値≧スリープ期間の値)を指すと検知すると(ステップSH22でYES)、スリープ期間の終了、すなわち待機期間が終了したと判断し後述のステップSH25の処理に移行する。なお、スリープ期間の値は、CPU2511により共有メモリ2551から読出した値を用いて(待機期間データ280−ウェイク期間データ281)に従い予め算出されて、タイマ2561に与えられていると想定する。
【0176】
なお、比較結果が(計時値<スリープ期間の値)を指すと判断される間は(ステップSH22でNO)、待機期間が終了していないと検知されて、ステップSH16、SH19およびSH22の処理が繰返される。
【0177】
ステップSH25では、タイマ2561はクロック回路2021に対しONの指示を与えるので、応じてクロック回路2021が再起動し各部にクロック信号が供給されて送受信可能な状態となる。このとき、クロック信号を入力再開するとCPU2511は、ステップSH28においてメモリ2551のカウント待機回数データ283を+1アップする(更新する)。
【0178】
その後、CPU2511は、カウント待機回数データ283の値が、MAX待機回数データ282が示す値以上を指示するか否かを両者を比較して判定する。具体的にはステップSH31において、当該比較結果が(カウント待機回数データ283≧MAX待機回数データ282)を指すと判断されなければ(ステップSH31でNO)、待機期間データ280の変更処理は行なわれず、一連の処理は終了し、次の待機期間のための処理に移行する。
【0179】
一方、比較結果が(待機回数のデータ283≧MAX待機回数のデータ282)を指すと判断されると(ステップSH31でYES)、ステップSH33において待機期間の変更処理が上述の計算式(1)に従いCPU2511により算出されて、算出値を用いて共有メモリ2551の待機期間データ280が更新される。そして、CPU2511は、ステップSH36において共有メモリ2551のカウント待機回数データ283をリセット(0)する。その後、一連の処理は終了し、次の待機期間のための処理に移行する。
【0180】
図33を参照して、図32のステップSH13のウェイク期間処理について説明する。ウェイク期間においては、端末STA1のコントロールMAC部2571は、ステップSI10において、ブロードキャストのBeaconフレーム300を送信し、その後、ステップSI13において何らかの信号を受信したかを判定する。
【0181】
何らの信号も受信しないと判定されると(ステップSI13でNO)その旨がコントロールMAC部2571からCPU2511に通知されて、CPU2511は、ステップSI46において、タイマ2561から入力する計時データに基づき、ウェイク期間が終了したか否かを判断する。具体的には、入力計時データと共有メモリ2551から読出したウェイク期間データ281とを比較し、比較結果が(入力計時データ≧ウェイク期間データ281)を示すと判断すると、ウェイク期間を終了する(ステップSI46でYES)。そして、図32のステップSH16のスリープ期間に移行する。
【0182】
比較結果が(入力計時データ<ウェイク期間データ281)を示すと判定すると(ステップSI46でNO)、ステップSI10の処理に戻り、Beaconフレーム300の送信を行なう。
【0183】
一方、ネッオワーク10を介し端末STA1からのBeaconフレーム300を受信したことを判断すると(ステップSI13でYES、SI16でYES)、ステップSI19とSI23では、コントロールMAC部2571により前述したNULL応答のBeaconフレーム300が生成されて、当該フレームが端末STA1に送信される。その後、ステップSI31に移行して、相手側の端末STA2からACK応答のBeaconフレーム300を受信するか否かを判定する。
【0184】
コントロールMAC部2571はNULL応答のフレームを受信したと判定すると(ステップSI21でYES)、コントロールMAC部2571は、ステップSI25とSI28においてACK応答のBeaconフレーム300を生成し送信する。その後、処理は後述のステップSI43に移行する。
【0185】
コントロールMAC部2571によりACK応答のBeaconフレーム300を受信したと判定されると(ステップSI31でYES)、そのとき、ホストシステム1001からデータ送信要求を入力していれば(SI33でYES)、ステップSI37とSI40においてホストシステム1001から与えられるデータに基づき、コントロールMAC部257は、データ送信用のフレームを生成する。生成されたデータのフレームは送信される。
【0186】
一方、端末STA2からACKのBeaconフレーム300を受信できないと判定すると(ステップSI31でNO)、データフレームを受信したか否かを判定する(ステップSI43)。コントロールMAC部2571によりデータフレームを受信していないと判定されると(ステップSI33でNO)、前述したステップSI46の処理に移行する。
【0187】
データフレームを受信したと判定されると(ステップSI43でYES)、ステップSI44において当該データフレームのデータはたとえばプログラムメモリ2541に一時的に格納されて、プログラムメモリ2541に格納された受信データは、その後ホストシステム1001側に送信されて、ホストシステム1001側で処理される。データフレームを受信したと判定されないと(ステップSI43でNO)、処理はステップSI46に移行する。
【0188】
ここでは端末STA1側の待機期間の処理について述べたが、端末STA2においても待機期間では同様な処理を適用して消費電力を低減することができる。
【0189】
本実施の形態によれば、送受信待機期間中に周期的なスリープ期間(クロック停止期間)を設けて通信回路200の各部で電力消費がされない状態にするので、無線LAN機器である端末STA1、STA2、STA3の消費電力低減を実現することができる。
【0190】
また、スリープ期間内は各部にクロック供給が停止されるため他の端末との通信が行なえないけれども、通信が行なえない期間が一定時間以上続いた場合、前述の計算式(1)を用いてスリープ期間またはスリープ周期を各端末内で自動的に変更することができるので、Beaconフレーム300を受信できる確率に変更することができる。
【0191】
今回開示された各実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。また、各実施の形態に開示された技術は、可能な限り組み合わされて実現されることが意図される。
【図面の簡単な説明】
【0192】
【図1】本発明の無線通信ネットワークの第1の実施の形態であるアドホック・ネットワークの構成の一例を模式的に示す図である。
【図2】図1の端末のハードウェア構成を模式的に示す図である。
【図3】図1のネットワークにおいて送受信されるフレーム(Beaconフレーム)の構成を模式的に示す図である。
【図4】図1のネットワークにおいてフレームを送信する際に図1の端末のホストシステム側で実行される処理のフローチャートである。
【図5】図1のネットワークにおいてフレームを送信する際に図1の端末の通信回路側で実行される処理のフローチャートである。
【図6】図1のネットワークにおいてフレームを受信する際に図1の端末の通信回路側で実行される処理のフローチャートである。
【図7】図4の処理の変形例のフローチャートである。
【図8】図5の処理の変形例のフローチャートである。
【図9】本発明の無線通信ネットワークの第2の実施の形態において、端末間で接続が確立される際の情報のやり取りを説明するための図である。
【図10】図9の無線通信ネットワークを構成する端末のホストシステムのCPUが実行する処理のフローチャートである。
【図11】図9の無線通信ネットワークを構成する端末の通信回路のCPUが実行する処理のフローチャートである。
【図12】図10の処理の変形例のフローチャートである。
【図13】図11の処理の変形例のフローチャートである。
【図14】第3の実施の形態に係る端末の構成図である。
【図15】第3の実施の形態に係る端末の構成図である。
【図16】第3の実施の形態に係るNo FCSの通信シーケンスを模式的に示す図である。
【図17】第3の実施の形態に係る通信処理のフローチャートである。
【図18】第3の実施の形態に係る通信処理のフローチャートである。
【図19】第3の実施の形態に係る通信フレームの構成を模式的に示す図である。
【図20】第3の実施の形態に係る通信フレームの構成を模式的に示す図である。
【図21】第3の実施の形態に係る通信回路側のメモリの内容例を示す図である。
【図22】第3の実施の形態に係るホストシステム側のメモリの内容例を示す図である。
【図23】第4の実施の形態に係る間欠送受信アドホック・モードのシーケンスを模式的に示す図である。
【図24】(A)〜(D)は、第4の実施の形態に係るフレームの一例を示す図である。
【図25】第4の実施の形態に係る間欠送受信アドホック・モードの通信手順を模式的に説明する図である。
【図26】第4の実施の形態に係る間欠送受信アドホック・モードの通信手順を模式的に説明する図である。
【図27】第4の実施の形態に係るシステム状態遷移モデルを示す図である。
【図28】第4の実施の形態に係る各種パラメータを説明する図である。
【図29】第4の実施の形態に係る間欠周期の設定機能を説明する図である。
【図30】第4の実施の形態に係る間欠周期の調整機能を説明する図である。
【図31】第4の実施の形態に係る間欠周期の調整機能を説明する図である。
【図32】第4の実施の形態に係る待機期間の処理フローチャートである。
【図33】第4の実施の形態に係るウェイク期間の処理フローチャートである。
【図34】従来の無線通信ネットワークの構成の一例を模式的に示す図である。
【符号の説明】
【0193】
1〜4 端末、10 ネットワーク、11,12 無線セル、100 ホストシステム、101,251 CPU、102 HD、103 RAM、104 ディスプレイ、105 スピーカ、106 入力部、107,252 インターフェイス、200 通信回路、201 電源回路、202 クロック回路、203 アンテナ、204 バラン、205 RF回路、206,207 EEPROM、250 ベースバンド/MAC回路、253 外部バスコントローラ、254 プログラムメモリ、255 共有メモリ、256 タイマ、257 コントロールMAC部、258 ADC、259 DAC、280 待機期間データ、281 ウェイク期間データ、282 MAX待機回数データ、283 カウント待機回数データ、284 デフォルト待機期間データ、300 フレーム、340 No FCS通知のデータ、3221 A/Vデータ。

【特許請求の範囲】
【請求項1】
無線通信ネットワークにおいて複数の属性のデータを送信可能な情報通信端末であって、
無線通信ネットワークにデータを送信する送信手段と、
無線通信ネットワークのネットワークアドレスと送信するデータの属性とを関連付ける情報を記憶する記憶手段と、
送信されるデータの属性を抽出する第1の抽出手段と、
前記記憶手段において、前記第1の抽出手段によって抽出された属性に関連付けられているネットワークアドレスを抽出する第2の抽出手段と、
前記送信手段に、前記第2の抽出手段によって抽出されたネットワークアドレスを含むビーコンを送信させる制御手段とを備える、情報通信端末。
【請求項2】
データを送信する要求を受け付ける受付手段をさらに備え、
前記第1の抽出手段は、前記受付手段によって送信を受け付けられたデータの属性を抽出する、請求項1に記載の情報通信端末。
【請求項3】
前記記憶手段は、前記データの属性としてデータの送信を行なうためのアプリケーションを特定する情報を記憶する、請求項1または請求項2に記載の情報通信端末。
【請求項4】
前記記憶手段は、前記データの属性として、送信されるデータの種類を特定する情報を記憶する、請求項1または請求項2に記載の情報通信端末。
【請求項5】
前記無線通信ネットワークは、アドホック通信ネットワークである、請求項1〜請求項4のいずれかに記載の情報通信端末。
【請求項6】
前記制御手段は、前記第1の抽出手段によって抽出されたデータの属性が所定の属性である場合であって、前記所定の属性以外のデータの属性に基づいた通信動作を行なっているときには、当該所定の属性のデータを割り込み送信させる、請求項1〜請求項5のいずれかに記載の情報通信端末。
【請求項7】
前記記憶手段は、割り込み送信に関するデータの属性についての優先順位をさらに記憶し、
前記制御手段は、前記記憶手段における前記所定の属性についての優先順位が、通信動作が行なわれているデータの属性よりも高い場合に、当該所定の属性のデータを割り込み送信させる、請求項6に記載の情報通信端末。
【請求項8】
無線通信ネットワークにおいて複数の属性のデータを送信可能な情報通信端末に搭載される無線通信装置であって、
無線通信ネットワークにデータを送信する送信手段と、
無線通信ネットワークのネットワークアドレスと送信するデータの属性とを関連付ける情報を記憶する記憶手段と、
送信されるデータの属性を抽出する第1の抽出手段と、
前記記憶手段において、前記第1の抽出手段によって抽出された属性に関連付けられているネットワークアドレスを抽出する第2の抽出手段と、
前記送信手段に、前記第2の抽出手段によって抽出されたネットワークアドレスを含むビーコンを送信させる制御手段とを備える、無線通信装置。
【請求項9】
複数の属性のデータを送信可能な第1の情報通信端末と、前記第1の情報通信端末によって送信されたデータを受信する第2の情報通信端末とを備える情報通信ネットワークであって、
前記第1の情報通信端末は、
無線通信ネットワークにデータを送信する送信手段と、
無線通信ネットワークのネットワークアドレスと送信するデータの属性とを関連付ける情報を記憶する記憶手段と、
送信されるデータの属性を抽出する第1の抽出手段と、
前記記憶手段において、前記抽出手段によって抽出された属性に関連付けられているネットワークアドレスを抽出する第2の抽出手段と、
前記送信手段に、前記第2の抽出手段によって抽出されたネットワークアドレスを含むビーコンを送信させる制御手段とを含み、
前記第2の情報通信端末は、
前記送信手段によって送信されたビーコンに含まれるネットワークアドレスに基づいてデータを受信する受信手段を含む、
無線通信ネットワーク。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate


【公開番号】特開2009−38659(P2009−38659A)
【公開日】平成21年2月19日(2009.2.19)
【国際特許分類】
【出願番号】特願2007−202169(P2007−202169)
【出願日】平成19年8月2日(2007.8.2)
【出願人】(000116024)ローム株式会社 (3,539)
【Fターム(参考)】