近年、無線通信の普及が目覚しい。携帯電話等の移動通信から、準静止環境でのスポット的な無線LANサービスの提供、光ファイバ等の有線回線の代替として無線回線を各家庭に提供するFWA(Fixed Wireless Access )サービスの提供など、様々な形で無線通信の利点を利用したサービスが展開されている。この際、ビジネス的な見地からは、少ない基地局設備で広範囲のエリアをカバーし、より多くのユーザ端末を収容することが望ましい。しかし一般には、ひとつの基地局がカバーできるエリア面積は、そのシステム固有の条件(例えば周波数、送信出力、アンテナ利得、アンテナ設置場所、変調方式等)や伝搬環境により異なる。例えば、無線局の送信側の機能として、大出力の送信アンプを備えていた場合には、より広い領域をサービスエリアに設定することが可能である。また、一般には低い周波数ほど遠くまで伝達する。
しかし、線形性の高い高機能の大出力送信アンプを利用することは、装置の価格を押し上げることになり、さらには電波法等の規定による送信出力の上限もあり、あまり大出力の送信アンプを利用してサービスエリア拡大を図るのは好ましくない。一方で、周波数の低いマイクロ波帯などは使い勝手の良い周波数帯として多くのシステムで利用されているために、既に周波数資源は枯渇しつつある状況であり、新たなシステムへの免許の割り当ては期待できない。
この結果、比較的高い周波数帯を用いて広いサービスエリアに対してサービス提供を図る場合、回線設計から得られるサービスエリア面積はビジネス的な採算性の視点からは十分と言えないことが多い。この場合の対策としては、エリア内の多数の無線局を利用して、無線によるマルチホップネットワークを構築して中継伝送することが考えられる。この様なマルチホップネットワークの例としては、例えばIEEE802.11sと呼ばれる無線LAN規格におけるメッシュワークなどが有名であり(非特許文献1参照)、ここでは送信元無線局から宛先無線局へデータを到達させるためのルーチングとしてAODV等の方式が提案されている。
図16は、従来技術の無線マルチホップネットワークにおけるルーチングの概要を示す。
図16において、100はネットワーク、101〜104は無線局(詳細には、101は送信元無線局、102は宛先無線局、103〜104は中継ノード)を表し、各無線局間リンクの数値は無線メトリック値を表す。例えば、ネットワーク100から無線局103にデータを転送する場合には、単純に無線局101と無線局103が直接的に無線回線を介して通信を行うことで対処可能である。一方、無線局101と直接的に通信を行うことができない無線局102に対してデータを転送する場合には、送信元無線局101→中継ノード103→宛先無線局102のルートと、送信元無線局101→中継ノード104→宛先無線局102のルートの様に、複数の選択肢が存在するルートの中から最適なルートを検索するルーチング処理が必要になる。
このルーチング処理では、まず各無線局間で運用可能な伝送速度、トラフィック量、干渉量などの無線回線の状態を示す指標として定義された無線メトリックを利用する。説明を簡単にするため、ここでは無線メトリック値が少ない方が無線回線の状態が好ましいとする。例えば、図16において、送信元無線局101と中継ノード103との間の無線メトリック値は「12」、送信元無線局101と中継ノード104との間の無線メトリック値は「10」、中継ノード103と宛先無線局102との間の無線メトリック値は「20」、中継ノード104と宛先無線局102との間の無線メトリック値は「12」となっている。この条件において、ルーチングを行うための処理を以下に示す。
(ステップ1)各無線局は、相互に近隣の無線局との間で無線メトリックを交換する。
(ステップ2)送信元無線局101は、リクエストパケットをマルチホップネットワーク内にブロードキャストする。具体的には、送信元無線局101からは近隣の中継ノード103〜104に対し、無線メトリック値を収容したリクエストパケットを送付する。
(ステップ3)各中継ノード103〜104は、受信したリクエストパケット内の無線メトリック値に、次の無線局との間の無線メトリック値を追加(積算または加算)したリクエストパケットを更に先の無線局に宛てて送信する。図16においては、中継ノード103および中継ノード104共に中継先が宛先無線局102のみなので、この局宛にリクエストパケットを送信する。
(ステップ4)宛先無線局102では、受信したリクエストパケットに収容された無線メトリック値を参照し、経路全体で積算または加算された無線メトリック値が最小なものを選択する。図16においては、経路として送信元無線局101→中継ノード103→宛先無線局102のルートは無線メトリック値「12」と「20」の積算(または加算)値、送信元無線局101→中継ノード104→宛先無線局102のルートは無線メトリック値「10」と「12」の積算(または加算)値となるので、経路としては送信元無線局101→中継ノード104→宛先無線局102のルートが好ましいと判断される。
(ステップ5)宛先無線局102は、レスポンスパケットを用いて選択されたルートを中継ノードに通知する。図16においては、中継ノード104宛てにレスポンスパケットを送付する。
(ステップ6)レスポンスパケットを受け取った中継ノード104は、この経路上の先の無線局に対しレスポンスパケットを転送する。具体的には、送信元無線局101にレスポンスパケットを送信し、マルチホップネットワーク内では送信元無線局101、中継ノード104、宛先無線局102のルートを選択して通信を行うことを決定する。
以上がマルチホップネットワークにおけるルーチングの概要である。一般的に、多数の無線局が混在する場合には、論理的なルートの数は膨大となり、それらの中から最適なルートを選択するためには時間がかかる。したがって、この様なルーチング処理を適切に行うためには、ある程度の期間は当該マルチホップネットワークのトポロジーに変化がない、ないしは各ルートの個別のリンクの状態はある程度の期間は定常的で変化が小さいという前提が必要となる。
図17は、従来技術における無線局装置の構成例を示す。
図17において、121は無線局装置、122は無線部、123はベースバンド信号処理部、124は無線パケット終端手段、125はインタフェース部、126はアンテナ、127は通信制御部、128は識別子取得手段、129は識別子一致判断手段、130は無線メトリック管理手段、131は制御部全体を示す。ここでの無線局装置とは、基地局および端末局を含む一般的な無線局装置であり、基本的な動作は、以下に説明するとおりである。なお、基地局であれば配下の端末局を管理するための機能などが追加されることになるが、例えばこれらの機能は通信制御部127の機能の一部と見ることができる。
無線局装置121は、無線回線を介した信号をアンテナ126で受信し、無線部122で帯域外信号のフィルタリング、ローノイズアンプによる信号増幅、RF周波数からベースバンド帯への周波数変換、アナログ信号からデジタル信号へのA/D変換等の処理を行う。デジタル化されたベースバンド信号は、ベースバンド信号処理部123に入力され、タイミング検出、物理レイヤに関するヘッダ情報の終端、復調処理、誤り訂正などの一連のベースバンド信号処理が施される。ここでの具体的な処理内容は、この無線局装置が備える無線方式に依存したものとなるが、以下で説明する基本動作はその無線方式には依存しない。
ベースバンド信号処理部123から出力される復調処理された信号は無線パケット終端手段124に入力され、ここで無線通信用のフォーマットからイーサネット(登録商標)等の有線ネットワーク上で通信されるパケットのフォーマットに変換される。この無線パケットには、いわゆるヘッダ領域等のオーバヘッドが含まれており、各種の制御情報や誤り検出用のビットの終端が行われる。例えば、誤り検出機能で誤りなしと判断された無線パケットは、ヘッダ情報から宛先や送信元等を示す識別子が取り出され、これを通信制御部127に転送する。通信制御部127ではこれらのヘッダ情報を管理するが、この中から識別子取得手段128が宛先の識別子を抜き出し、識別子一致判断手段129にて自局の識別子との一致/不一致判定を行う。この結果は通信制御部127にフィードバックされ、宛先が自局であると判断された場合には、通信制御部127は無線パケット終端手段124に対してデータの出力を指示し、フォーマット変換されたパケットをインタフェース部125にて電気的な条件等を調整して、外部に対して出力する。
逆に外部よりパケットが入力された際には、インタフェース部125を介して無線パケット終端手段124に入力され、ここで通信制御部124からの指示に従いヘッダ情報を付加し、更には誤り検出符号などを付加して無線パケットを生成する。ここでは宛先無線局の識別子に加え、送信元の識別子として自局の識別子が付与されている。この信号をベースバンド信号処理部123に入力し、ここで物理レイヤに関するヘッダ情報の付加や誤り訂正のための符号化に加え各種変調処理を施し、さらにプリアンブル信号の付加などを行い無線パケットのベースバンド信号を生成する。この信号は無線部122に入力され、デジタル信号からアナログ信号に変換するD/A変換、周波数変換、帯域外信号のフィルタリング、信号増幅などを行い、アンテナ126より送信される。
なお、上述のルーチング処理を行う場合には、通信制御部127にてリクエストパケットやレスポンスパケットを生成、終端し、その際には周辺の無線局との間の通信状態である無線メトリック値を管理するための無線メトリック管理手段130を介して必要な情報をデータベース化して管理する。
以上の一連の信号処理は全体的な概要を説明したものであり、詳細には更に細かい処理が含まれるが、例えば無線部における送信と受信の切り替えに相当する時分割スイッチの管理などの各種タイミング管理から様々な制御情報の生成/終端など、通信制御部127が中心となって制御を行う。また、ここでは敢えて識別子取得手段128、識別子一致判断手段129、無線メトリック管理手段130を通信制御部127から切り離して説明を行ったが、これら全てをひとつの制御部全体131と捉えることも可能である。つまりハードウエア的に異なる別回路として構成をする必要はなく、ソフトウエア的な処理を行うひとつの回路として制御部全体131が存在し、その内部処理的に論理的な機能が分かれているとみなすことが可能である。
以下、図面を参照して本発明の無線通信システムの実施例について説明する。まず個々の実施例の説明の前に、全体的な基本動作について説明する。なお、本明細書においては「再送中継」という用語を用いているが、これはマルチホップ中継を行う際の1対1の通信を多段に組み合わせた通信と異なり、ヘッダ領域に記載される送信元および宛先無線局の識別子を書き換えることなしに中継することを意識したものであり、いわゆる誤り訂正のための再送(ARQ:Automatic Repeat reQest )を意味したものではない。
図1は、本発明における再送中継が適用されるシステム構成例を示す。
図1において、1−1〜1−2は基地局、2−1〜2−7および3−1〜3−7は無線局、4−1〜4−2は無線パケット、5−1〜5−2は各基地局のサービスエリア、100はネットワークを表す。
ネットワーク100に接続された基地局1−1,1−2は、それぞれがサービスエリア5−1,5−2を形成する。サービスエリア5−1は基地局1−1により管理されたエリアで、サービスエリア5−2は基地局1−2により管理されたエリアである。サービスエリア5−1内には無線局2−1〜2−7が存在し、サービスエリア5−2内には無線局3−1〜3−7が存在する。無線局2−1〜2−3は基地局1−1と通信できるが、その他の無線局2−4〜2−7は基地局1−1と直接通信を行うことはできない。なお、ここでのサービスエリアとは、たとえば、基地局1−1により管理される無線局によりマルチホップネットワークとして拡張される、無線局が基地局1−1と通信可能なエリアをいう。各基地局1−1〜1−2および各無線局2−1〜3−7にはそれぞれ識別子が付与されており、例えば基地局1−1には「A」、基地局1−2には「B」、無線局2−1には「a」、無線局2−2には「b」、…、無線局3−7には「n」の識別子が付与されている。
各サービスエリア5−1〜5−2に所属する無線局2−1〜3−7は、そのサービスエリアを管理する基地局の識別子を把握しているものとする。この把握方法は如何なるものであっても良く、例えばFWAサービスであればサービス契約時にサービスエリア毎の基地局情報を設定しても構わないし、無線局の位置が分かればネットワーク上ないしは無線局が備えるデータベースと位置情報を参照して基地局の識別子を把握しても良い。さらには、基地局がエリア内のユーザに対して通知しても構わない。この様にして、例えばサービスエリア5−1内の無線局2−1〜2−7は、自局を管理する基地局1−1の識別子が「A」であることを事前に認識している。
次に、ネットワーク100から無線局2−7に送信すべきデータが存在する場合を考える。このデータはネットワーク100から基地局1−1に入力され、基地局1−1は、ヘッダ領域に送信元識別子「A」と宛先識別子「g」を含む無線パケット4−1を生成し、これを送信する。この無線パケット4−1は基地局1−1の近傍の無線局2−1〜2−3が受信する。例えば、無線局2−1は無線パケット4−1を受信すると、そのヘッダ領域に付与された送信元識別子「A」と宛先識別子「g」を認識する。ここで、自局を管理する基地局1−1の識別子が「A」であることから、送信元が自局を管理する基地局1−1であると認識することができる。この様な条件の無線パケット4−1を受け取った無線局2−1〜2−3はその無線パケットを再送中継し、それを無線局2−4〜2−6が受信できたとする。これらの無線局2−4〜2−6も同様に、無線パケット4−1と同等の無線パケットを受信し、そのヘッダ領域に付与された送信元識別子「A」と宛先識別子「g」を認識する。
ここで、無線局2−4〜2−6も自局を管理する基地局1−1の識別子が「A」であることから、送信元が自局を管理する基地局1−1であると認識することができる。そして同様にその無線パケットを再送中継し、それを無線局2−7が受信する。無線局2−7は、受信した無線パケットのヘッダ領域に付与された送信元識別子「A」と宛先識別子「g」を認識し、宛先識別子が自局の識別子と一致することを認識する。これにより、この無線パケットが自局宛であることを認識し、この無線パケットを終端し、中に収容されたデータを取り出すことができる。この様にして、基地局1−1から無線局2−7への通信を実現する。
次に、マルチホップネットワークの下流から上流方向へのアップリンクの通信に関して説明する。例えば、無線局3−7からネットワーク100側に送信すべきデータが存在する場合を考える。無線局3−7は、ヘッダ領域に送信元識別子「n」と宛先識別子「B」を含む無線パケット4−2を生成し、これを送信する。この無線パケットは無線局3−7の近傍の無線局3−4〜3−6が受信する。例えば、無線局3−4は無線パケット4−2を受信すると、そのヘッダ領域に付与された送信元識別子「n」と宛先識別子「B」を認識する。ここで、自局を管理する基地局1−2の識別子が「B」であることから、宛先が自局を管理する基地局1−2であると認識することができる。この様な条件の無線パケット4−2を受け取った無線局3−4〜3−6は、その無線パケットを再送中継し、これを無線局3−1〜3−3が受信できたとする。これらの無線局3−1〜3−3も同様に、無線パケット4−2と同等の無線パケットを受信し、そのヘッダ領域に付与された送信元識別子「n」と宛先識別子「B」を認識する。
ここで、無線局3−1〜3−3も自局を管理する基地局1−2の識別子が「B」であることから、宛先が自局を管理する基地局1−2であると認識することができる。そして同様に、その無線パケットを再送中継し、これを基地局1−2が受信する。基地局1−2は、受信した無線パケットのヘッダ領域に付与された送信元識別子「n」と宛先識別子「B」を認識し、宛先識別子が自局の識別子と一致することを認識する。これにより、この無線パケットが自局宛であることを認識し、この無線パケットを終端し、中に収容されたデータを取り出しネットワーク100に転送することができる。この様にして、無線局3−7から基地局1−2への通信を実現する。
ここで注意しておくこととして、例えば近接するサービスエリアからの電波の漏れ込み等により、無線局3−4が再送中継した無線パケット4−2と同等の信号を、基地局1−1の配下(基地局1−1のサービスエリア5−1内に存在することを意味する)の例えば無線局2−3や無線局2−6が受信できたとする。この際、無線局2−3または2−6は、受信した無線パケットのヘッダ領域に付与された送信元識別子「n」と宛先識別子「B」を認識することができるが、そのいずれも自局を管理する基地局1−1の識別子「A」と一致しないため、再送中継を行うことはない。
以上が基本的な動作である。その特徴は、再送中継を行う無線局は複数存在し、それらは全て同一の内容の信号を同一周波数でかつ同一タイミングで送信する点にある。それぞれの無線局の周波数誤差が無視できる場合には、若干のタイミング誤差があったとしても、それはあたかもマルチパスの信号と等価な信号とみなすことができる。しかも、図1では3つの無線局が同時に送信するため、総送信電力は3倍となり、かつ物理的に異なる場所からの信号であるためにダイバーシチ効果も得られる。受信側では複数の無線局からの信号が合成されて受信することになるため、無線局毎に特性のばらつきが出ることは予想されるが、平均受信電力について中継局の数だけ利得が向上するため、システム全体としての回線利得が大幅に改善することが期待される。特に、局所的に見通しが利かないリンクがあっても、複数の無線局から信号を受信可能で、かつ受信側も複数の候補が存在するために、ダイバーシチ効果は非常に大きい。さらに、1対1の通信を多段に構成する構成ではないため、最適なルートを選定するルーチング処理が不要であり、トポロジーの急激な変化にも柔軟に対応可能である。
図2は、本発明における再送中継の基本動作例を示す。
図2において、11は基地局、12−1〜12−9は再送中継を行う無線局、13は宛先の無線局を表す。図2(1) は基地局11および無線局12−1〜12−9および宛先の無線局13の位置関係を示し、図2(2) はタイムスロット#1〜#8における各無線局の送信または受信状態を示し、横軸は時間を示す。
タイムスロット#1では、基地局11が無線局13宛てに無線パケットを送信すると、無線局12−1〜12−3がこの信号を受信する。次のタイムスロット#2では、前のタイムスロット#1で送信していた基地局11と、受信していた無線局12−1〜12−3が再送中継を行い、無線局12−4〜12−6がこの無線パケットを受信する。次のタイムスロット#3では、前のタイムスロット#2で送信していた基地局11および無線局12−1〜12−3と、受信していた無線局12−4〜12−6が再送中継を行い、無線局12−7〜12−9がこの無線パケットを受信する。次のタイムスロット#4では、前のタイムスロット#3で送信していた基地局11および無線局12−1〜12−6と、受信していた無線局12−7〜12−9が送信動作を行い、この無線パケットを宛先の無線局13が受信する。これにより、基地局11が送信した無線パケットを宛先の無線局13で受信することができる。
同様に、無線局13が基地局11宛てに無線パケットを送信する場合、タイムスロット#5で無線局13が無線パケットを送信すると、無線局12−7〜12−9がこの無線パケットを受信する。次のタイムスロット#6では、前のタイムスロット#5で送信していた無線局13と、受信していた無線局12−7〜12−9が再送中継を行い、無線局12−4〜12−6がこの無線パケットを受信する。次のタイムスロット#7では、前のタイムスロット#6で送信していた無線局13および無線局12−7〜12−9と、受信していた無線局12−4〜12−6が再送中継を行い、無線局12−1〜12−3がこの無線パケットを受信する。次のタイムスロット#8では、前のタイムスロット#7で送信していた無線局13および無線局12−4〜12−9と、受信していた無線局12−1〜12−3が再送中継を行い、この無線パケットを宛先の基地局11が受信する。これにより、無線局13が送信した無線パケットを基地局11で受信することができる。
ここでは、所定のタイムスロットまでの間は、各無線局は受信した無線パケットを何度も繰り返して送信し続ける。この様にして、トータルの送信電力を高めることで、最終的な無線パケットの送達を確実なものにすることができる。
図3は、本発明における無線局装置の基本構成例を示す。
図3において、21は無線局装置、22は無線部、23はベースバンド信号処理部、24は無線パケット終端手段、25はインタフェース部、26はアンテナ、27は通信制御部、28は識別子取得手段、29は識別子一致判断手段、30は基地局識別子取得手段、31は再送中継実施判断手段、32は制御部全体を示す。従来技術の説明でも述べたとおり、ここでの無線局装置とは、基地局および端末局を含む一般的な無線局装置であり、基地局であれば配下の端末局を管理するための機能などが追加されることになるが、これらの機能は通信制御部27の機能の一部と見ることができるため、基本的には以下の説明で基地局および端末局を含めた理解が可能である。
基本的な動作は従来技術の通りであるが、自局宛の無線パケット以外を再送中継する場合の動作が異なるので、その点に絞ってここでは説明を行う。無線回線を介した信号をアンテナ26で受信し、無線部22、ベースバンド信号処理部23で処理された信号は無線パケット終端手段24に入力され、ここで無線通信用のフォーマットからネットワーク上で一般的なパケットのフォーマットに変換される。ここでは、この無線パケットに付与されたヘッダ情報が取り出され、これを通信制御部27に転送する。通信制御部27ではこれらのヘッダ情報を管理するが、この中から識別子取得手段28が送信元識別子および宛先識別子を抜き出し、識別子一致判断手段29にて自局の識別子および自局が接続する基地局の識別子との一致/不一致判定を行う。この結果は通信制御部27にフィードバックされ、宛先が自局であると判断された場合には、通信制御部27は無線パケット終端手段24に対してデータの出力を指示し、フォーマット変換されたパケットをインタフェース部25にて電気的な条件等を調整して、外部に対して出力する。
一方、識別子一致判断手段29にて、送信元識別子または宛先識別子が自局宛ではないが自局が接続する基地局の識別子と一致すると判断した際には、この結果を再送中継実施判断手段31に通知し、再送中継実施判断手段31では後述する様々な判断条件を加味して再送中継の実施の可否を判断し、その結果を通信制御部27に通知する。通信制御部27では再送中継の実施指示を受けた際には、無線パケット終端手段24に対して受信した無線パケットをそのまま、ないしはヘッダ情報を所定のルールで変更し、誤り検出符号化などの処理を施し無線パケットを更新し、これをベースバンド信号処理部23、無線部22、アンテナ26を介して無線回線に送信する。この様にして再送中継を実施する。
なお、無線パケットのヘッダ情報の変更ルールや、再送中継実施判断の判断条件等は以下の実施例の中で説明を行うが、これらの例に限定されない。また、基地局識別子取得手段30は、基地局により報知された基地局識別子を通信制御部27が取得することにより、または自ら備えている様々な情報の中から、自局が接続すべき基地局の識別子情報を取得する。すなわち、基地局の識別子は基地局から受信した無線パケットから取得したものでも構わないし、自局がもつデータベースなどから参照したものでも構わない。この場合、当該無線局がGPS等の自局の位置情報を取得できる場合には、当該位置情報とデータベース上の基地局の位置に基づいて、最も近い基地局に対応する識別子を取得するなど、別の情報をもとにして取得することも可能である。また、FWAサービスなどの場合であれば、契約時、機器設置時などに設定しても構わない。この様に、基地局識別子取得手段30による「識別子の取得」の意図するところは、必ずしも能動的な取得である必要はなく、装置内の設定値の読み込みやデータベースからの検索という処理であっても良い。この様に様々な形で取得される識別子情報を基地局識別子取得手段30が管理し、識別子一致判断手段29の問合せに対して応答する。また、通信制御部27、識別子取得手段28、識別子一致判断手段29、基地局識別子取得手段30、再送中継実施判断手段31は、通信制御部27から切り離して説明を行ったが、これら全てをひとつの制御部全体32と捉えることも可能である。すなわち、ハードウエア的に異なる別回路として構成する必要はなく、ソフトウエア的な処理を行うひとつの回路として制御部全体32が存在し、その内部処理的に論理的な機能が分かれているとみなすことも可能である。
以上は無線回線で無線パケットを受信した場合の動作であるが、外部よりパケットが入力された際には、当然ながら識別子などの参照を省略して従来技術と同様の送信動作を行うことになる。ただし、従来技術ではルーチングのための動作が規定されていたが、ここではルーチングを行わずに無線パケットの転送を行うので、これらの機能は必要ない。
以上の一連の信号処理は全体的な概要を説明したものであり、詳細には更に細かい処理が含まれるが、例えば無線部における送信と受信の切り替えに相当する時分割スイッチの管理などの各種タイミング管理から様々な制御情報の生成/終端など、通信制御部27が中心となって制御を行う。
図4は、本発明における再送中継の基本処理フローを示す。
図4において、各無線局は無線パケットを受信する(S1 )と、受信した無線パケットの所定のフィールドから送信元識別子および宛先識別子を取得し(S2 )、宛先識別子が自局の識別子に一致するか否かを判定する(S3 )。一致した場合には、無線パケットを終端してデータの出力処理を実施し(S6 )、「再送中継なし」として処理を終了する(S7)。
一方、処理S3 にて一致しなかった場合は、送信元識別子または宛先識別子が自局を管理する基地局の識別子に一致するか否かを判断し(S4 )、一致しない場合には「再送中継なし」として処理を終了する(S7 )。一方、一致した場合には再送中継実施条件に合致するか否かの判断を行い(S5 )、再送中継実施条件に合致する場合には再送中継を実施し(S9 )、合致しない場合には再送中継を終了する(S8 )。なお、処理S9 にて再送中継を実施した場合には、再送中継の実施後に再度処理S5 に戻り、引き続き再送中継の実施条件に合致するか否かの判断を行う。繰り返し再送中継実施条件に合致する場合には、複数回の再送中継を継続し、条件に合致しなくなった段階で再送中継を終了する。なお、ここでの再送中継実施条件とは、以下の実施例でも具体例を示すが、例えば再送中継をどのタイムスロットまで継続するかや、何回まで再送中継を行ったら再送中継を終了するかなどの条件を意味する。
以上の説明では、従来技術において説明したようなルーチング処理は一切伴わない。基地局または端末局が送信局となる場合には、必要に応じて無線パケットのヘッダ情報を適宜設定したり、フレーム条件や報知情報などを再送中継条件に適合させるなどの整合性を確保する必要がある。さらに、送信局は無線パケットの新規送信(S10)の後、無線パケットの受信時と同様に処理S5 に移行し、この後の処理は無線パケット受信時と同様であり、再送中継実施条件に合致するか否かの判断を行い、その判断結果により再送中継の終了(S8 )または再送中継実施(S9 )の処理を実施する。
ここで、無線局が再送中継を繰り返す再送中継実施条件について説明する。再送中継実施条件として各無線局における再送回数を規定する場合は次のようになる。例えば、再送中継の実施は無線パケットを受信した次のタイムスロットのみの1回と限定しても構わない。同様に、無線パケットを受信した次のタイムスロットと更にその次のタイムスロットのみという様に2回と限定しても構わない。いずれにしても、先々の無線局で再送中継が繰り返されるが、各無線局における再送回数は限定される。
また、再送中継実施条件として再送中継が継続するタイムスロット(ホップ数)を規定する場合は次のようになる。無線パケット内に残りの再送回数を把握可能な条件として、例えば再送カウンタを記録しておき、無線パケットを受信した際に再送カウンタ数に残りがある場合には、残りがある間だけ再送中継を実施する。仮に再送カウンタ(以下「RC」という)が残りの再送回数を示すのであれば、RC=2と受信した場合には最初の再送中継時には、カウンタ値を1減算してRC=1、次の再送中継時にはRC=0として、このカウンタ値を更新して無線パケットに収容し、送信する。RC=0の無線パケットを受信した無線局は、次の再送中継を行わない。すなわち、最初に無線パケットを送信した無線局が再送カウンタに設定するタイムスロット(ホップ数)までの再送中継に限定される。なお、この動作では、再送中継の都度、無線パケットの中身は変更されることになるが、全ての無線局が同一のルールで無線パケットの中身を更新するため、結果的に同一の無線パケットを送信することが可能である。
以上説明した再送中継の基本概念は、先願(特願2011−082022)に記載の発明の技術的特徴である。
ここでは、受信した無線パケットの宛先が自局であれば、その無線局は当該無線パケットの再送中継は必要ないことを判断できるが、他の無線局は当該無線パケットが宛先の無線局に到達したか否かを再送中継実施の条件として考慮していない。したがって、再送中継によって、宛先の無線局およびその周辺に位置する無線局が無線パケットを受信したとき、宛先の無線局自身はそれ以降の再送中継が不要であることを認識するが、その周辺に位置する無線局は再送中継の必要性がなくなったことを認識できないために、不必要に再送中継を継続してしまう。本発明では、再送中継に関与する無線局が宛先の無線局に無線パケットが到達したことを把握する手段を設け、宛先の無線局へ無線パケットが到達した時点で再送中継を停止することができるようにする。
図5は、本発明の実施例1における再送中継の動作例を示す。
ここでは、タイムスロット毎の無線局の動作例を示す。タイムスロットを構成するためには、GPS等の時刻同期手段を用いてシステム全体を同期させてもよい。また、GPS等の時刻同期手段がなくても、各無線局が無線パケットを受信したら同一の所定期間後に送信を開始するように、同一の処理を実施することによって、タイムスロットを設けることと同様に送信タイミングを揃える方法でもよい。本発明は無線パケットを受信した無線局は、次のタイムスロットで、他の無線局から送信されるACKの有無を判定し、ACKを受信しない場合には再送中継を実施する。ACKを受信した場合には無線パケットが宛先の無線局に到達したものと認識し、再送中継を停止する。したがって、タイムスロットは、無線パケットを受信してから当該ACKの受信が可能な十分な長さに設定する。
図5において、基地局(A)11が無線局(Z)13を宛先とする無線パケットを送信する。当該無線パケットの送信元識別子は「A」、宛先識別子は「Z」である。タイムスロット#1では、基地局11が無線パケットを送信し、無線局12−1〜12−3がこの無線パケットを受信する。無線局12−1〜12−3は、受信した無線パケットの宛先識別子が自局の識別子と一致するか否かを判断し、不一致と判断する。続けて、宛先識別子または送信元識別子が自局を管理する基地局の識別子と一致するか否かを判断し、ここでは送信元識別子が自局を管理する基地局の識別子と一致するので、自局が再送中継を行うべきと認識する。次のタイムスロット#2では、他局(宛先の無線局)が送信するACKの受信有無を確認するために待機する。ACKを受信しなかった無線局12−1〜12−3は、受信している無線パケットをタイムスロット#3で再送中継を行い、無線局12−4〜12−6がこの無線パケットを受信する。
無線局12−4〜12−6は、同様に受信した無線パケットの宛先識別子が自局の識別子と不一致であり、さらに送信元識別子が自局を管理する基地局の識別子と一致することから、自局が再送中継を行うべきと認識し、次のタイムスロット#4で他局が送信するACKの受信有無を確認するために待機する。ACKを受信しなかった無線局12−4〜12−6は、受信している無線パケットをタイムスロット#5で再送中継を行い、無線局12−7,12−8および無線局13がこの無線パケットを受信する。
無線局12−7,12−8は、同様に受信した無線パケットの宛先識別子が自局の識別子と不一致であり、さらに送信元識別子が自局を管理する基地局の識別子と一致することから、自局が再送中継を行うべきと認識し、次のタイムスロット#6で他局が送信するACKの受信有無を確認するために待機する。一方、無線局13は、受信した無線パケットの宛先識別子が自局の識別子と一致することから、次のタイムスロット#6でACKを送信し、無線局12−7,12−8がこのACKを受信する。無線局12−7,12−8はACK受信により、宛先の無線局13に無線パケットが受信されたことを確認し、それ以降の再送中継を停止する。また、宛先の無線局13も当然に再送中継は行わない。
このように、無線局12−7,12−8の先に無線局12−9〜12−11が存在する場合には、先願の構成では無線局12−7,12−8が再送中継を行う可能性があったが、本発明では無線局12−7,12−8においてそれ以降の再送中継を停止することができる。
また、図5では、各無線局が受信した無線パケットを1回のみ再送中継する場合を示しているが、2回以上N回再送中継を行う構成としてもよい。すなわち、図5に示す再送中継では、基地局11および無線局12−1〜12−6はそれぞれ1回の再送中継で終了するが、無線局12−7,12−8はACKを受信することにより再送中継自体を行わない。いずれにしても、無線パケットが宛先の無線局13に到達すると、当該宛先の無線局以降の無線局が再送中継すること(無線パケットが無限に中継されること)を回避することができる。なお、無線局がACK受信以外で再送中継を停止する条件として、個々の無線局における再送回数ではなく、最初に無線パケットを送信した無線局が再送カウンタに設定するタイムスロット(ホップ数)を規定する場合については、実施例3以降で説明する。
図6は、本発明の実施例1における無線局装置の構成例を示す。
図6において、実施例1の無線局装置は、図3に示す無線局装置の基本構成例に対して、ACK受信判断手段40およびACK送信判断手段42を追加した構成である。通信制御部27は、無線部22等を介して他局が送信したACKを受信した場合は、その情報をACK受信判断手段40に転送し、ACK受信判断手段40は所定時間にACKの受信があったか否かについて判断し、その結果を再送中継実施判断手段31およびACK送信判断手段42に出力する。再送中継実施判断手段31およびACK送信判断手段42は、識別子一致判断手段29から出力された一致情報に基づいて、再送中継の要否およびACK送信の要否を判断する。なお、本構成例では再送中継実施判断手段31およびACK送信判断手段42等を通信制御部27から切り離した構成として示しているが、これらの機能は1つの制御部全体32に統合されていてもよい。すなわち、ハードウエア的に異なる別回路として構成をする必要はなく、ソフトウエア的な処理を行う1つの回路として制御部全体32が存在し、その内部処理的に論理的な機能が分かれているとみなすことが可能である。
図7は、本発明の実施例1における再送中継の処理フローを示す。
図7において、各無線局は無線パケットを受信する(S101 )と、受信した無線パケットの所定のフィールドから送信元識別子と宛先識別子を取得し(S102 )、宛先識別子が自局の識別子と一致するか否かを判断する(S103 )。一致する場合(S103 でYes )は、ACKを送信し(S104 )、無線パケットを終端してデータの出力処理を実施し(S105 )、「再送中継なし」として処理を終了する(S106 )。一方、自局の識別子が宛先識別子と一致しない場合(S103 でNo)は、送信元識別子または宛先識別子が自局を管理する基地局の識別子と一致するか否かを判断する(S107 )。一致しない場合(S107 でNo)は「再送中継なし」として処理を終了する(S106 )。一致する場合(S107 でYes )は1タイムスロット待機し(S108 )、その間にACKを受信したか否かを判断する(S109 )。ACKを受信した場合(S109 でYes )、「再送中継なし」として処理を終了する(S106 )。ACKを受信していない場合(S109 でNo)、再送中継実施条件に合致するか否かを判断し(S110 )、合致する限り(S110 でYes )、再送中継を実施し(S112 )、S108 〜S110 の処理を繰り返す。再送中継実施条件は、図5に示すようにパケット受信後に1回のみ再送中継することを条件にしてもよいし、所定回数だけ再送中継することを再送中継実施条件に設定してもよい。
なお、上記のACKの送受信に関しては、広範囲に存在する無線局または基地局が正常に受信可能な条件で通信を行う必要がある。大容量のユーザデータ等の送信時(タイムスロット#1、#3、#5等での通信に相当)に用いる伝送方式をそのままACKの送信に用いれば、回線設計的に利得不足が問題となることが想定されるが、あくまでも情報量の少ないACK通知であるため、非常にロバストな変調方式を用いたとしても伝送効率の低下は限られている。例えば、既知のパターンのトレーニング信号を送信して、相関検出によりACKと認識することとしても構わない。すなわち、このACKの送信における伝送方式を含む諸条件は、大容量のユーザデータ等の送信時とは全く異なるものであっても構わない。あくまでも本発明が開示する技術は、背景技術において大容量のユーザデータ等の再送中継を行うタイムスロットとタイムスロットの間に、ACKを送信するためのタイムスロットを設定し、このACK用のタイムスロットにてACKと認識される信号を検出した際に、再送中継を停止する信号処理および装置構成に関する技術である。
実施例1では、宛先の無線局のみがACKを送信する動作例を示したが、実施例2では宛先の無線局だけでなくその周辺に位置する無線局が協調してACKを送信する例について説明する。すなわち、ACKに関しても複数の無線局が協調的に再送中継する方法を採用する。この場合、複数の無線局が多数同時にACKを再送中継することでACKを通知する必要のあるエリアでの回線利得の不足を補うことが可能になる。
まず、あるタイムスロットで宛先の無線局を含む複数の無線局が無線パケットを受信しながらも、その無線局と宛先の無線局との距離が離れている場合、すなわち宛先の無線局が送信するACKを他の無線局が受信できないという状況が考えられる。このとき、ACKを受信できなかった無線局は不必要な再送中継を実施してしまうことになる。これを防ぐため、本実施形態は、宛先の無線局だけでなく周辺に位置する無線局と協調してACKを送信することで、宛先の無線局から遠くの無線局にもACKを到達させることを可能とする。
図8は、本発明の実施例2における再送中継の動作例を示す。ここでは、各無線局が1回のみ再送中継する場合を示しているが、2回以上N回再送中継を行う場合でもよい。すなわち、ACKを受信しない場合でも当該指定された回数以上の再送中継はない。
図8において、タイムスロット#5までの動作は図5に示す実施例1と同じである。すなわち、タイムスロット#4でACKを受信しなかった無線局12−4〜12−6は、受信している無線パケットをタイムスロット#5で再送中継を行い、無線局12−7〜12−9および宛先の無線局13がこの無線パケットを受信する。宛先の無線局13は、受信した無線パケットの宛先識別子が自局の識別子と一致することから、次のタイムスロット#6でACKを送信し、無線局12−8,12−9はこのACKを受信できるものの、無線局12−7はこのACKを直接受信できない位置にある。
そこで、実施例2では、各無線局はACKを送受信するタイムスロットをサブスロット化して認識する。図8では、タイムスロットを構成するサブスロット数を3としているが、この値に限定するものではなく、システム上の設定値等によって定まるものである。
無線パケットを受信した宛先の無線局13は、最初のサブスロット#1でACKを送信し(図中「A」と表記する)、それ以降のサブスロット#2,#3でも続けてACKを送信する。ここで、サブスロット#1で無線局13が送信したACKを無線局12−8,12−9が受信すると(図中「受」と表記する)、無線局12−8,12−9は次のサブスロット#2,#3でACKを再送中継する。すると、サブスロット#2,#3で無線局12−8が送信したACKを無線局12−7が受信する。このようにして、タイムスロット#5で無線パケットを受信した無線局12−7〜12−9は、宛先の無線局13が送信するACKを受信でき、再送中継が不要であることを認識することができる。
実施例2における無線局装置の構成は、図6に示す実施例1における無線局装置の構成と同一である。
図9は、本発明の実施例2における再送中継の処理フローを示す。図7に示す実施例1とは、S104 がS114 に置き換わり、S108 〜S109 がS115 〜S119 に置き換わっている点が異なる。
図9において、受信した無線パケットの宛先識別子が自局の識別子と一致する場合(S103 でYes )、その無線局はタイムスロットを構成する全てのサブスロットでACKを送信する(S114 )。受信した無線パケットの宛先識別子が自局の識別子と一致せず(S103 でNo)、送信元識別子または宛先識別子が自局を管理する基地局の識別子と一致する場合(S104 でYes )、1サブスロット待機し(S115 )、ACKを受信したか否か判断する(S116 )。ACKを受信していなければ、これをタイムスロットを構成する所定数のサブスロットだけ待機を繰り返し(S117 )、その間にACKを受信していない場合(S117 でYes )、再送中継実施条件に合致するか否かを判断し(S110 )、合致する限り(S110 でYes )、再送中継を実施し(S112 )、S115 〜S110 の処理を繰り返す。
一方、所定数のサブスロットを待機する中でACKを受信した場合(S116 でYes )、所定数のサブスロットを待機したか否か判断する(S118 )。所定数のサブスロットを待機してない場合(S118 でNo)、残りのサブスロット全てでACKを送信し(S119 )、データパケットの再送中継なしと判断する(S106 )。所定数のサブスロット待機した場合(S118 でYes )は、自らのACKを送信せずにデータパケットの再送中継なしと判断する(S105 )。
実施例1および実施例2では、ACKを受信した無線局はその時点で再送中継を停止するが、各無線局が再送中継する回数を制限しており(図5および図8では1回)、各無線局がACKを受信しない場合でも再送中継の回数が当該指定された回数に達した時点で再送中継を停止する。これにより、無線局がACKを受信できなくても、個々の無線局において無線パケットが無限に再送中継されることは回避できる。しかし、ACKを受信できない無線局から次の無線局へ再送中継自体は引き継がれるので、無線通信システム全体では再送中継が継続することになる。なお、実施例2は、ACKを直接受信できない無線局があっても、周辺の無線局が協調してACKを再送中継することによりACKを受信できる範囲を拡張する方法であったが、これでもサブスロット数とACKを送信する宛先の無線局からのホップ数との関係で限界がある。
実施例3では、これに対応するために、再送中継ごとにデクリメントする再送カウンタを利用し、無線通信システム全体における再送中継の実施回数の上限を設定する方法を用いる。この方法では、無線パケットを送信する無線局とその無線パケットを受信した無線局は、再送中継する毎に無線パケット内に保存された再送カウンタを1ずつ減算し、再送カウンタがゼロになるまで再送中継を繰り返す。一方、再送カウンタがゼロになって時点で再送中継を終了することにより、システム全体としてそれ以上の再送中継は行われない。しかし、この方法では、無線パケットが宛先の無線局まで到達したか否かを判断することができない。したがって、再送中継の回数に小さい上限値を設定してしまうと、再送カウンタがゼロの状態となりながらも、なお無線パケットが宛先の無線局に到達していない状況も発生しうる。
そこで、実施例3では、無線パケットが宛先の無線局に到達していない場合には、再送カウンタがゼロの無線パケットを受信した無線局のうち、無線パケットが宛先の無線局に到達していないことを把握した無線局が、再送カウンタを再設定した無線パケットを送信(再送中継を再開)することによって無線パケットを宛先の無線局へ到達させることを可能とする。また、実施例1および実施例2では、無線パケットを再送中継する毎にACK送受信用のタイムスロットを割り当てていたが、実施例3では再送カウンタが0となるまではACK送受信用のタイムスロットは割り当てず、再送カウンタが0の場合のみタイムスロットを割り当ててACKの送受信を行うようにする。
図10は、本発明の実施例2における再送中継の動作例を示す。
図10において、基地局(A)11が無線局(Z)13を宛先とする無線パケットを送信する。当該無線パケットの送信元識別子は「A」、宛先識別子は「Z」である。無線パケットの再送カウンタ(RC)は「2」が設定される。タイムスロット#1では、基地局11が無線パケットを送信し、無線局12−1〜12−3がこの無線パケットを受信する。無線局12−1〜12−3は、受信した無線パケットの宛先識別子が自局の識別子と一致せず、宛先識別子または送信元識別子が自局を管理する基地局の識別子と一致するので、自局が再送中継を行うべきと認識する。タイムスロット#2では、基地局11は送信した無線パケットのRCから1を減算し、RC=1に設定して再構築した無線パケットを送信する。また、同タイムスロット#2で無線局12−1〜12−3は受信した無線パケットのRCから1を減算し、RC=1に設定して再構築した無線パケットを再送中継し、無線局12−4〜12−6がこの無線パケットを受信する。タイムスロット#3では、基地局11および無線局12−1〜12−3は送信した無線パケットのRCから1を減算し、RC=0に設定して再構築した無線パケットを再送中継する。また、同タイムスロット#3で無線局12−4〜12−6は受信した無線パケットのRCから1を減算し、RC=0に設定して再構築した無線パケットを再送中継し、無線局12−7〜12−9がこの無線パケットを受信する。
基地局11および無線局12−1〜12−6は送信した無線パケットがRC=0であることからこれ以上の再送中継を停止する。一方、RC=0の無線パケットを受信した無線局12−7〜12−9は、タイムスロット#4で他局(宛先の無線局)が送信するACKの受信有無を確認するために待機する。ここでは、まだ宛先の無線局13が無線パケットを受信していないため、無線局12−7〜12−9はACKを受信せず、宛先の無線局に無線パケットが到達していないことを認識する。そのため、タイムスロット#5では、無線局12−7〜12−9は新たにRCを設定した無線パケットの再送中継を再開する。ここではRC=0に設定し、再送中継が1回実施されるようにする。
なお、再送カウンタを再設定して再送中継を再開する場合、無線局が受信する無線パケットが再開された再送中継であることを認識できるように、無線パケットのヘッダ領域にリトライフラッグやリトライカウンタを設定してもよい。再送カウンタの再設定および再送中継の再開が無限に繰り返されないようにするためである。例えば、再送中継を再開する無線局はリトライフラッグを0から1に設定することで、その後の再送中継の再開を禁止することを他の無線局に把握させることが可能となる。また、再送の再開回数の上限値を規定するリトライカウンタにおいて、再送中継の再開の度にカウンタ値を加算または減算し、所定値となるまで再送の再開を許容させることも可能である。なお、ここでは無線局12−7〜12−9はACKを受信していないために再送中継を再開しているが、ACKを受信した場合には再送中継は再開されない。
タイムスロット#5では、無線局12−7〜12−9がRC=0の無線パケットの再送中継を再開し、無線局12−10〜12−11および宛先の無線局13がその無線パケットを受信する。タイムスロット#6では、無線局12−10〜12−11が他局(宛先の無線局)が送信するACKの受信有無を確認するために待機する。
一方、無線局13は、タイムスロット#5で受信した無線パケットの宛先識別子が自局の識別子と一致することからACKを送信し、待機中の無線局12−10〜12−11がこのACKを受信する。無線局12−10〜12−11はACK受信により、宛先の無線局13に無線パケットが受信されたことを確認し、それ以降の再送中継を停止する。また、宛先の無線局13も当然に再送中継は行わない。
なお、再送中継を再開する際にRCを1以上に設定してもよい。例えばRC=1に設定すると、無線局12−7〜12−9はタイムスロット#5でRC=1、#6でRC=0の無線パケットを連続送信し、無線局12−10,12−11はタイムスロット#6でRC=0の無線パケットを1回送信して再送中継を終了する。ここで、宛先の無線局13は、タイムスロット#5で無線局12−7〜12−9が送信したRC=1の無線パケットを受信するが、RC=0の無線パケットが受信されるまでの時間を待機し、タイムスロット#7でACKを送信する。タイムスロット#6で無線局12−10,12−11からRC=0の無線パケットを受信した無線局12−12,12−13は、タイムスロット#7でACKを受信し、再送中継を終了する。この様子を図11に示す。
図12は、本発明の実施例3における無線局装置の構成例を示す。
図12において、実施例3の無線局装置は、図6に示す実施例1の無線局装置の構成例に対して、再送カウンタ取得手段33および再送カウンタ値一致判断手段34を追加した構成である。その動作は、無線パケットが無線回線を介して受信された際に、無線パケットのヘッダ領域から再送カウンタの情報を通信制御部27から再送カウンタ取得手段33に転送する。再送カウンタ取得手段33では、所定の値と再送カウンタの値が一致するか否かを確認する。その結果を再送中継実施判断手段31に通知し、その指示を参照して再送中継を実施する。
図13は、本発明の実施例3における再送中継の動作フローを示す。
図13において、各無線局は無線パケットを受信する(S201 )と、受信した無線パケットの所定のフィールドから送信元識別子、宛先識別子および再送カウンタRCを取得する(S202 )。続いて、宛先識別子が自局の識別子と一致するか否かを判断する(S203 )。一致する場合(S203 でYes )は、RC=0の無線パケットの受信時間を計算して待機し(S204 )、ACKを送信し(S205 )、無線パケットを終端してデータの出力処理を実施し(S206 )、「再送中継なし」として処理を終了する(S207 )。なお、RC=0の無線パケットを受信し、かつ、宛先識別子が自局の識別子と一致する場合には、待機することなくACKを送信する(S205 ) 。
一方、宛先識別子が自局の識別子と一致しない場合(S203 でNo)、送信元識別子または宛先識別子が自局を管理する基地局の識別子と一致するか否かを判断する(S208 )。一致しない場合(S208 でNo)、「再送中継なし」として処理を終了する(S207 )。一致する場合(S208 でYes )、受信した無線パケットがRC=0であるか否かを判断する(S209 )。RC=0でない場合(S209 でNo)、RCから1を減算し(S213 )、無線パケットを再構築し(S214 )、その無線パケットによって再送中継を実施する(S215 )。これをRC=0になるまで(S216 でNoになるまで)繰り返し、再送中継を終了する(S217 )。一方、RC=0である場合(S209 でYes )、1タイムスロット待機し(S210 )、ACKを受信したか否かを判断する(S211 )。ACKを受信した場合(S211 でYes )、無線パケットが宛先の無線局に到達したと把握し、再送中継は不要であると認識する(S207 )。ACKを受信していない場合(S211 でNo)、RCを再設定し(S212 )、無線パケットを再構築する(S214 )。再構築した無線パケットを再送中継し(S215 )、RC=0になるまで(S216 でYes )、S213 からS215 を繰り返し、再送中継を終了する(S217 )。
なお、実施例3では、宛先の無線局13のみがACKを送信する動作について説明したが、実施例2のように周辺の無線局と協調してACKを送信する処理に拡張してもよい。
実施例3は、RC=0の無線パケットを受信した後に設けたタイムスロット(図10のタイムスロット# 4)でACKを受信しない場合に、無線局は無線パケットが宛先の無線局に到達していないことを把握し、RCを再設定した無線パケットを送信(再送中継を再開)することによって無線パケットを宛先の無線局へ到達させることを可能にしている。ただし、RC=0の無線パケットを受信するまではACK送受信用のタイムスロットを割り当てず、RC=0の無線パケットを受信した場合のみ当該タイムスロットを割り当ててACKの送受信を行うようにしている。そのため、無線パケットのRCが0になる前に宛先の無線局に到達してもACKを送信できず、図11や図13のS204 に示すように、RC=0の無線パケットの受信時間を計算して待機することになる。
実施例4は、RC≠0の状態でも、その無線パケットを宛先の無線局が受信した時、それ以降の再送中継を停止することを可能にする。すなわち、無線パケットを再送中継する毎にACK送受信用のタイムスロットを割り当てることにする。
図14は、本発明の実施例4における再送中継の動作例を示す。ここでは、各無線局は再送中継におけるRCの更新の際に(無線パケットの受信からその無線パケットの再送中継まで、または無線パケットの送信から次の再送中継まで)に1タイムスロットの待機時間を設け、他局がACKを送信しているか否かを把握する。
図14において、基地局(A)11が無線局(Z)13を宛先とする無線パケットを送信する。当該無線パケットの送信元識別子は「A」、宛先識別子は「Z」である。無線パケットの再送カウンタ(RC)は「2」が設定される。タイムスロット#1では、基地局11が無線パケットを送信し、無線局12−1〜12−3がこの無線パケットを受信する。次のタイムスロット#2では、他局(宛先の無線局)が送信するACKの受信有無を確認するために待機する。タイムスロット#3では、基地局11は送信した無線パケットのRCから1を減算し、RC=1に設定して再構築した無線パケットを送信する。また、同タイムスロット#3で無線局12−1〜12−3は受信した無線パケットのRCから1を減算し、RC=1に設定して再構築した無線パケットを再送中継し、無線局12−4〜12−6がこの無線パケットを受信する。次のタイムスロット#4では、無線局12−1〜12−6が他局(宛先の無線局)が送信するACKの受信有無を確認するために待機する。
タイムスロット#5では、基地局11および無線局12−1〜12−3は送信した無線パケットのRCから1を減算し、RC=0に設定して再構築した無線パケットを再送中継する。また、同タイムスロット#5で無線局12−4〜12−6は受信した無線パケットのRCから1を減算し、RC=0に設定して再構築した無線パケットを再送中継し、無線局12−7〜12−9がこの無線パケットを受信する。
無線局12−1〜12−6は送信した無線パケットがRC=0であることからこれ以上の再送中継を停止する。一方、RC=0の無線パケットを受信した無線局12−7〜12−9は、タイムスロット#6で他局(宛先の無線局)が送信するACKの受信有無を確認するために待機する。ここでは、まだ宛先の無線局13が無線パケットを受信していないため、無線局12−7〜12−9はACKを受信せず、宛先の無線局に無線パケットが到達していないことを認識する。そのため、タイムスロット#7では、無線局12−7〜12−9は新たにRCを設定した無線パケットを再送中継する。ここではRC=2として3回の再送中継を実施することを設定している。
なお、再送カウンタを再設定して再送中継を再開する場合、無線局が受信する無線パケットが再開された再送中継であることを認識できるように、実施例3で説明したように、無線パケットのヘッダ領域にリトライフラッグやリトライカウンタを設定してもよい。
タイムスロット#7では、無線局12−10〜12−11および宛先の無線局13が再開された再送中継による無線パケットを受信する。次のタイムスロット#8では、無線局12−7〜12−11が他局(宛先の無線局)が送信するACKの受信有無を確認するために待機する。無線局13は、タイムスロット#7で受信した無線パケットの宛先識別子が自局の識別子と一致することから、タイムスロット#8でACKを送信し、無線局12−7〜12−11がこのACKを受信する。無線局12−7〜12−11はACK受信により、宛先の無線局13に無線パケットが受信されたことを確認し、RCが0でなくてもそれ以降の再送中継を停止する。また、宛先の無線局13も当然に再送中継は行わない。
図15は、本発明の実施例4における再送中継の動作フローを示す。
図15において、各無線局は無線パケットを受信する(S301 )と、受信した無線パケットの所定のフィールドから送信元識別子、宛先識別子および再送カウンタRCを取得する(S302 )。続いて、宛先識別子が自局の識別子と一致するか否かを判断する(S303 )。一致する場合(S303 でYes )は、ACKを送信し(S304 )、無線パケットを終端してデータの出力処理を実施し(S305 )、「再送中継なし」として処理を終了する(S306 )。一方、宛先識別子が自局の識別子と一致しない場合(S303 でNo)、送信元識別子または宛先識別子が自局を管理する基地局の識別子と一致するか否かを判断する(S307 )。一致しない場合(S308 でNo)、「再送中継なし」として処理を終了する(S307 )。一致する場合(S307 でYes )、受信した無線パケットがRC=0であるか否かを判断する(S308 )。
受信した無線パケットがRC=0でない場合(S308 でNo)、1タイムスロット待機し(S315 )、ACKを受信したか否かを判断する(S316 )。ACKを受信していない場合(S316 でNo)、RCから1を減算し(S312 )、無線パケットを再構築し(S313 )、その無線パケットの再送中継を実施する(S314 )。再び1タイムスロット待機し(S315 )、ACKを受信したか否かを判断する(S317 )。ACKを受信していない場合(S317 でNo)、RC=0になるまでS312 〜S317 を繰り返す。ACKを受信している場合(S316 でYes )は再送中継を終了する(S318 )。
一方、受信した無線パケットがRC=0である場合(S308 でYes )、1タイムスロット待機し(S309 )、ACKを受信したか否かを判断する(S310 )。ACKを受信した場合(S310 でYes )、再送中継が不要であることを認識する(S306 )。ACKを受信していない場合(S310 でNo)、RCを再設定し(S311 )、無線パケットを再構築し(S313 )、これを再送中継する(S314 )。再び1タイムスロット待機し(S315 )、ACKを受信したか否かを判断する(S316 )。ACKを受信していない場合(S316 でNo)、RC=0になるまでS313 〜S317 を繰り返す。ACKを受信している場合(S316 でYes )は再送中継を終了する(S318 )。
なお、実施例4は、宛先の無線局のみがACKを送信する動作例について説明したが、実施例2のように周辺の無線局と協調してACKを送信する処理に拡張してもよい。