(57)【要約】【課題】階層型の自動再送制御を実施する場合にスループットおよび遅延特性の劣化を防ぐことができる自動再送制御方法を得ること。【解決手段】上位ＡＲＱ処理部１１で送信データを出力し、ＨＡＲＱ処理部１２で送信データに対して所定の個数のＡＣＩＤを所定のデータ単位ごとに割当てる場合の自動再送制御方法であって、ＡＲＱウィンドウを常にＡＣＩＤの個数に所定のデータ単位を乗じたデータ量以上となるように決定するステップと、上位ＡＲＱ処理部１１で、そのＡＲＱウィンドウに基づいて送信データを送出するステップと、を含む。【選択図】        図１
2008278014.tif 000002
【特許請求の範囲】
【請求項１】
階層型ＡＲＱを上位層ＡＲＱと下位層ＨＡＲＱで実現する通信システムにおいて、前記上位層ＡＲＱで送信データを出力し、前記下位層ＨＡＲＱで前記送信データに対して所定の個数の、順序制御のための連続的な番号であるＡＣＩＤ（ＨＡＲＱ  Channel  Identifier）を所定のデータ単位ごとにサイクリックに割当てる場合の自動再送制御方法であって、
送達確認を待たずに送信可能なデータ量を示すＡＲＱウィンドウを、常に前記ＡＣＩＤの個数に前記所定のデータ単位を乗じたデータ量以上となるように決定するＡＲＱウィンドウ決定ステップと、
前記データ送信側の上位層ＡＲＱで、前記ＡＲＱウィンドウに基づいて送信データを送出する送信データ生成ステップと、
を含むことを特徴とする自動再送制御方法。
【請求項２】
前記所定のデータ単位および前記ＡＲＱウィンドウの単位を、１パケットとすることを特徴とする請求項１に記載の自動再送制御方法。
【請求項３】
前記ＡＲＱウィンドウ決定ステップでは、
前記前記ＡＣＩＤの個数をＮACIDとした場合、前記ＡＲＱウィンドウＮARQが、「ＮARQ＝ａ×ＮACID＋ｂ」（ａ≧１，ｂ≧０）を満たすことを特徴とする請求項２に記載の自動再送制御方法。
【請求項４】
前記ＡＲＱウィンドウ決定ステップでは、
前記ＡＣＩＤの個数をＮACIDとし、前記下位層ＨＡＲＱで用いるデータサイズ単位をＨＡＲＱブロックサイズとし、上位層ＡＲＱで用いるデータサイズ単位をＡＲＱブロックサイズとした場合、前記ＡＲＱウィンドウＮARQが、「ＮARQ＝（ｃ×ＮACID×ＨＡＲＱブロックサイズ＋ｄ）／（ＡＲＱブロックサイズ）」（ｃ≧１，ｄ≧０）を満たすことを特徴とする請求項１に記載の自動再送制御方法。
【請求項５】
前記ＡＲＱウィンドウ決定ステップを、前記データ送信側および前記データ受信側で実行することを特徴とする請求項１〜４のいずれか１つに記載の自動再送制御方法。
【請求項６】
前記ＡＲＱウィンドウ決定ステップを、前記データ送信側で実行し、決定したＡＲＱウィンドウを前記データ受信側に通知することを特徴とする請求項１〜４のいずれか１つに記載の自動再送制御方法。
【請求項７】
前記ＡＣＩＤが固定である場合、前記ＡＲＱウィンドウ決定ステップを初期起動時に一度実行し、そのＡＲＱウィンドウを継続して使用することを特徴とする請求項１〜６のいずれか１つに記載の自動再送制御方法。
【請求項８】
前記ＡＣＩＤが変更可能な場合、前記ＡＲＱウィンドウ決定ステップをＡＣＩＤが変更される毎に実行し、送受信側両方で再設定することを特徴とする請求項１〜６のいずれか１つに記載の自動再送制御方法。
【請求項９】
階層型ＡＲＱを上位層ＡＲＱと下位層ＨＡＲＱで実現する通信システムにおける自動再送制御方法であって、
データ受信側の前記下位層ＨＡＲＱで、受信パケットの復号を失敗してから所定の時間が経過した後に、復号を失敗してからその所定の時間が経過するまでに受信したパケットを破棄し、その後の受信パケットを上位層ＡＲＱに渡すパケット破棄ステップと、
データ受信側の前記上位層ＡＲＱで、前記破棄されたパケット以降のパケットの再送要求を送信側に通知する再送要求通知ステップと、
を含むことを特徴とする自動再送制御方法。
【請求項１０】
階層型ＡＲＱを上位層ＡＲＱと下位層ＨＡＲＱで実現する通信システムにおける自動再送制御方法であって、
データ送信側で複数の前記上位層ＡＲＱを実施し、それぞれ送信データを出力するＨＡＲＱ共有ステップと、
前記データ送信側で単一の前記下位層ＨＡＲＱを実施し、前記それぞれの送信データに一連のＡＣＩＤを割当てるＡＣＩＤ割当てステップと、
を含むことを特徴とする自動再送制御方法。
【請求項１１】
階層型ＡＲＱを上位層ＡＲＱと下位層ＨＡＲＱで実現する送信装置であって、
前記上位層ＡＲＱの実施により、送達確認を待たずに送信可能なデータ量を示すＡＲＱウィンドウを、常に前記ＡＣＩＤの個数に所定のデータ単位を乗じたデータ量以上となるように決定し、決定後のＡＲＱウィンドウに基づいて送信データを送出する上位層ＡＲＱ処理部と、
前記下位層ＨＡＲＱの実施により、前記上位層ＡＲＱ処理部から受け取った送信データに対して、所定の個数のＡＣＩＤを前記所定の単位データごとにサイクリックに割当てる下位層ＡＲＱ処理部と、
を備えることを特徴とする送信装置。
【請求項１２】
階層型ＡＲＱを上位層ＡＲＱと下位層ＨＡＲＱで実現する送信装置であって、
前記上位層ＡＲＱの実施により、送信データを生成する複数の上位層ＡＲＱ処理部と、
前記下位層ＨＡＲＱの実施により、前記複数の上位層ＡＲＱで生成された送信データに一連のＡＣＩＤを割当てる下位層ＨＡＲＱ処理部と、
を備えることを特徴とする送信装置。
【請求項１３】
階層型ＡＲＱを上位層ＡＲＱと下位層ＨＡＲＱで実現する受信装置であって、
前記下位層ＨＡＲＱの実施により、受信パケットの復号を失敗してから所定の時間が経過した後に、復号を失敗してからその所定の時間が経過するまでに受信したパケットを破棄し、その後の受信パケットを出力する下位層ＨＡＲＱ処理部と、
前記上位層ＡＲＱの実施により、前記破棄されたパケット以降のパケットの再送要求を送信側に通知する上位層ＡＲＱ処理部と、
を備えることを特徴とする受信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、階層型のＡＲＱを行う自動再送制御方法、送信装置および受信装置に関する。
【背景技術】
【０００２】
従来、無線通信システムでは、データの信頼性を確保するために自動再送制御（ＡＲＱ:Automatic  Repeat  reQuest）が広く用いられている。このＡＲＱの中でも、高い復号性能を持つハイブリッド自動再送制御（ＨＡＲＱ：Hybrid  ＡＲＱ）が用いられることが多い。
【０００３】
また、一般に、無線通信システムでは、伝送路における信号品質の劣化に起因するパケット誤り（消失）の発生によって、パケットを正しく復号できないことがある。このような場合に備え、ＡＲＱでは、受信側で正しく復号を行ったか否かを通知し、送信側は受信側から正しく復号が行えたという通知を得るまで送信データをバッファリングする。このように送達確認がされていないデータをバッファリングするための最大パケット数（送達確認を送信する単位）を、以下、ＡＲＱウィンドウとよぶこととする。
【０００４】
通信状態の悪いときには、パケット誤りの発生確率が上がるが、このような場合には、送達確認がされていないデータが送信側に蓄積され、ＡＲＱウィンドウのサイズを超えてしまうことがある。この場合、データの破棄または新規送信の停止（ロック）が発生することになる。
【０００５】
このような、データの破棄または送信の停止を防止するために、たとえば、下記特許文献１では、電波状態に応じてＡＲＱウィンドウのサイズを適切な大きさに制御する技術が開示されている。
【０００６】
一方、ＩＥＥＥ８０２．１６ｅ（Institute  of  Electrical  and  Electronic  Engineers）に準拠したシステムにおいて、ＡＲＱプロトコルとＨＡＲＱプロトコルは、物理層の上位に位置するＭＡＣ（Media  Access  Control）層に含まれる。このようなシステムでは、ＭＡＣ層をさらに上位の層（以下、ＭＡＣ上層という）と下位の層（以下、ＭＡＣ下層という）に分割し、ＭＡＣ下層でＨＡＲＱを実施し、ＭＡＣ上層でＡＲＱ（上位ＡＲＱ）を実施する、階層的なＡＲＱ（以下、階層型ＡＲＱという）が用いられることがある。
【０００７】
階層型ＡＲＱを実施する場合、送信機側のＨＡＲＱでは、上位ＡＲＱの生成したデータに対して、順序制御のための連続的な番号（ＡＣＩＤ：ＨＡＲＱ  Channel  Identifier）を割当てる。データはＡＣＩＤの順番で送信される。
【０００８】
受信側のＨＡＲＱでは、受信したデータの復号を行い、受信したデータのうち正常に復号することができたパケットをＭＡＣ上層に渡す。ＭＡＣ上層で実施する上位ＡＲＱでは、ＡＲＱウィンドウ分の正常復号パケットを受け取ると正常に受信できたことを示す応答（ＡＣＫ：Acknowledgment）を送信機へ通知する。一方、パケットを正しく復号できない場合、上位ＡＲＱでは、そのパケットについて否定応答（ＮＡＣＫ：Negative  Acknowledgment）を生成して送信機へ通知する。そして、送信機による上位ＡＲＱでは、ＮＡＣＫの通知を受けたパケットの再送処理を開始する。
【０００９】
また、パケット誤りによって、パケットの到着の順序がＡＣＩＤの順序と一致しない場合がある。このため、受信側のＨＡＲＱでは、受信したデータをバッファリングし、パケットをＡＣＩＤの順序通りにＭＡＣ上層に渡す（順序制御）。そして、ＭＡＣ上層で上位ＡＲＱを実施する。一方、ＡＣＩＤが順序通りに並んでいる場合は、パケットをそのままの順序でＭＡＣ上層に渡す。そのため、データはバッファリングされない。データは、復号が失敗したパケットがある場合またはパケットが順序通りにそろわない場合にバッファリングされる。
【００１０】
ここで、ＩＥＥＥ８０２．１６ｅに準拠したシステムの受信側のＨＡＲＱでは、復号に失敗した場合、ＡＣＩＤが一巡して受信機がバッファリングしているパケットのＡＣＩＤと同一のＡＣＩＤを持つパケットを受信したときに、はじめて復号不能と判断する。受信側のＨＡＲＱでは、その復号に失敗したパケットに復号失敗の情報を付加して、その後、受信機がバッファリングしているパケットをＭＡＣ上層に渡す。そして、ＭＡＣ上層で上位ＡＲＱを実施する。上位ＡＲＱでは、復号失敗のパケット以降のパケットの再送要求を送信機に通知する。すなわち、上位ＡＲＱでは、復号を失敗したパケットを受信した時点からＡＣＩＤが一巡して、受信機がバッファリングしているパケットのＡＣＩＤと同一のＡＣＩＤを持つパケットを受信するまで、再送要求を送信しない。
【００１１】
【特許文献１】特開２００３−２４４２７４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
前記従来の階層型ＡＲＱの技術を実施する場合、受信側のＨＡＲＱでは、データの復号を失敗すると、ＡＣＩＤが一巡して受信機がバッファリングしているパケットのＡＣＩＤと同一のＡＣＩＤを持つパケットを受信したときに復号不能と判断し、ＭＡＣ上層にパケットを渡す。そして、上位ＡＲＱによって再送要求が送信される。そのため、ＡＲＱウィンドウ（パケットの数）がＡＣＩＤの個数より小さい場合には、受信機が復号不能と判断する前に、送信機にバッファリングされている送信データがＡＲＱウィンドウを超えることになり、新規の送信が停止する。
【００１３】
このように新規の送信が停止すると、再送パケットを送信する場合にはその再送パケットにこれまで割当てたＡＣＩＤに続くＡＣＩＤが割当てられ、受信機の受信するパケットのＡＣＩＤが更新されていく。
【００１４】
しかしながら、受信機からの再送要求は、ＡＣＩＤが一巡して受信機がバッファリングしているパケットのＡＣＩＤと同一のＡＣＩＤを持つパケットを受信するまで送信することができない。したがって、再送要求を送信できないためＡＣＩＤが更新されない状態となり、ＡＣＩＤが更新されないため再送要求も送信されない状態となる、というデッドロック状態が生じ、無線通信システムのスループットや遅延特性が大幅に劣化してしまうという問題があった。
【００１５】
また、上記特許文献１に記載のＡＲＱウィンドウの制御方法では、電波の状態に基づいてＡＲＱウィンドウの大きさを制御しているが、ＡＣＩＤとの関係については触れられていない。したがって、このような階層型ＡＲＱで生じるＡＣＩＤの個数とＡＲＱウィンドウとの大小関係による送信停止には対応できないという問題があった。
【００１６】
本発明は、上記に鑑みてなされたものであって、階層型の自動再送制御を行った場合であってもスループットおよび遅延特性の劣化を防ぐことができる自動再送制御方法、送信装置および受信装置を得ることを目的とする。
【課題を解決するための手段】
【００１７】
上述した課題を解決し、目的を達成するために、本発明は、階層型ＡＲＱを上位層ＡＲＱと下位層ＨＡＲＱで実現する通信システムにおいて、前記上位層ＡＲＱで送信データを出力し、前記下位層ＨＡＲＱで前記送信データに対して所定の個数のＡＣＩＤを所定のデータ単位ごとにサイクリックに割当てる場合の自動再送制御方法であって、送達確認を待たずに送信可能なデータ量を示すＡＲＱウィンドウを、常に前記ＡＣＩＤの個数に前記所定のデータ単位を乗じたデータ量以上となるように決定するＡＲＱウィンドウ決定ステップと、前記データ送信側の上位層ＡＲＱで、前記ＡＲＱウィンドウに基づいて送信データを送出する送信データ生成ステップと、を含むことを特徴とする。
【発明の効果】
【００１８】
この発明によれば、階層型の自動再送制御において、上位ＡＲＱのＡＲＱウィンドウのサイズをＨＡＲＱの付与するＡＣＩＤの個数以上に設定するようにしたので、通信システムのスループットや遅延特性の劣化を防ぐことができるという効果を奏する。
【発明を実施するための最良の形態】
【００１９】
以下に、本発明にかかる自動再送制御方法および通信システムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００２０】
実施の形態１．
図１は、本発明にかかる通信システムの実施の形態１の機能構成例を示す図である。図１に示すように、本実施の形態の通信システムは、ＩＥＥＥ８０２．１６ｅに準拠することとし、階層型の自動再送制御の機能を備える送信機１と、階層型の自動再送制御の機能を備える受信機２とで構成される。図１では、各構成部の動作が属するＯＳＩ参照モデルの各層を同時に示している。本実施の形態では、ＯＳＩ参照モデルにおけるＭＡＣ層以下の動作について説明するため、図１は、アプリケーション層３、ＭＡＣ層４、物理層５の３つを示し、アプリケーション層３とＭＡＣ層４の間の層は省略している。
【００２１】
また、本実施の形態の通信システムでは、ＭＡＣ層４を上位層（ＭＡＣ上層６）と下位層（ＭＡＣ下層７）に分け、ＭＡＣ下層７でＨＡＲＱ機能を実現し、ＭＡＣ上層６で上位ＡＲＱ機能を実現する、階層型のＡＲＱを実施する。また、上位ＡＲＱの受信処理では、正常に受信できた場合には、Ｎパケットごとに送達確認（ＡＣＫ）を通知することとする。このＮは、送信側にとっては、送達確認を待たずに送信が行えるパケットの数となり、本実施の形態ではＡＲＱウィンドウと呼ぶこととする。
【００２２】
本実施の形態の送信機１は、ＡＲＱ機能の送信側の処理を実現する上位ＡＲＱ処理部１１と、上位ＡＲＱ処理部１１から送信データを受け取りデータにＡＣＩＤを割当て、ＡＣＩＤの順番に出力するＨＡＲＱ処理部１２と、物理層５における無線信号の受信処理および送信処理を行う送受信処理部１３と、無線信号の送受信を行うアンテナ１４と、で構成される。
【００２３】
また、本実施の形態の受信機２は、受信側のＡＲＱ機能を実現する上位ＡＲＱ処理部２１と、受信データの復号処理を行い正常に復号したデータを上位ＡＲＱ処理部２１に渡し、復号不能な場合にはその旨の通知とともにそのデータを上位ＡＲＱ処理部２１に渡すＨＡＲＱ処理部２２と、物理層５における無線信号の受信処理および送信処理を行う送受信処理部２３と、無線信号の送受信を行うアンテナ２４と、で構成される。
【００２４】
つづいて、本実施の形態の自動再送制御の動作について説明する。まず、送信機１の各アプリケーションにより送信データが生成されて、アプリケーション層３から上位ＡＲＱ処理部１１に送信データが渡される。上位ＡＲＱ処理部１１は、送信データをＨＡＲＱ処理部１２に渡すととともに、送信データをバッファにバッファリングする。ＨＡＲＱ処理部１２は、上位ＡＲＱ処理部１１から送信データを受け取ると、送信データに対して誤り訂正符号化処理を行い、パケットごとにＡＣＩＤを割当てて送信データに付加し、ＡＣＩＤの順番に送受信処理部１３に送信データを渡す。ここでは、例として誤り訂正符号としてＣＲＣ符号（Cyclic  Redundancy  Checking）を用いることとするが、これに限らず、どのような誤り訂正符号を用いてもよい。
【００２５】
ＡＣＩＤの数値の範囲と個数は、たとえば、０〜１０２３（１０２４個）というように、あらかじめ定められていることとする。ＡＣＩＤは、はじめは、最小値から順に割当てていき、ＡＣＩＤの最大値まで割当てられた場合には（一巡した場合）、次の送信データには、再びＡＣＩＤの最小値から順に割当てていくこととする。このように、ＡＣＩＤはサイクリックに割当てられていくため、「ＡＣＩＤの順に」という場合には、最大値の次は最小値へと連続していくこととする。
【００２６】
送受信処理部１３は、ＨＡＲＱ処理部１２から送信データを受け取ると、物理層５における所定の送信処理を行い送信データに付加されたＡＣＩＤの順に送信データをアンテナ１４に渡す。そして、アンテナ１４は、送信データを無線信号として送信する。
【００２７】
受信機２のアンテナ２４は、送信機１から送信された無線信号を受信すると、送受信処理部２３に渡す。送受信処理部２３は、受信信号に対して物理層５における受信処理を行い、受信データとしてＨＡＲＱ処理部２２に渡す。ＨＡＲＱ処理部２２は、受信データに対して復号処理（ＣＲＣ復号処理）を行い、正常に復号された場合は、復号された受信データ（パケット）を上位ＡＲＱ処理部２１に渡す。正常に復号できなかった場合には、そのパケットは上位ＡＲＱに渡さず、パケットをバッファリングする。そして、それ以降、受信するパケットについても復号後にバッファリングする。そして、バッファリングしたうちのいずれかのパケットのＡＣＩＤと同一のＡＣＩＤを持つパケットを受信した場合に復号不能と判断し、復号を失敗したパケットに復号失敗の情報を付加して、バッファリングされているパケットを上位ＡＲＱ処理部２１に渡す。
【００２８】
上位ＡＲＱ処理部２１は、ＨＡＲＱ処理部２２から受け取ったパケットを、正常に復号されたパケットがＡＲＱウィンドウの数になるまでバッファリングする。そして、ＡＲＱウィンドウの数分、正常なパケットがバッファリングされた場合、正常に受信したことを示すＡＣＫを送受信処理部２３とアンテナ２４を経由して送信機１に通知する。そして、上位ＡＲＱ処理部２１は、バッファリングしたパケットをアプリケーション層３の各アプリケーションに渡す。一方、上位ＡＲＱ処理部２１は、復号に失敗したパケットを受け取った場合には、ＮＡＣＫを送受信処理部２３とアンテナ２４を経由して送信機１に通知する。そして、送信機１の上位ＡＲＱ処理部１１との間で、その復号に失敗したパケット以降のデータを再送するための手順を実行する。
【００２９】
送信機１の上位ＡＲＱ処理部１１は、アンテナ１４および送受信処理部１３経由で受信機２からＡＣＫを受信すると、そのＡＣＫによって正常受信が確認できたデータをバッファから削除し、次の送信データの送信を開始する。また、アンテナ１４および送受信処理部１３経由で受信機２からＮＡＣＫを受信すると、受信機２からの再送要求に従って再送データ（この場合は、受信機２が復号に失敗したパケット以降のデータ）を、ＨＡＲＱ処理部１２に渡す。以降の処理は、前述の通常の送信データの送信処理と同様である。
【００３０】
ここで、ＡＣＩＤの個数とＡＲＱウィンドウの関係について、図を用いて説明する。図２は、ＡＣＩＤの個数がＡＲＱウィンドウより小さい場合のデータ送信の一例を示す図である。図３は、ＡＣＩＤの個数がＡＲＱウィンドウより大きい場合のデータ送信の一例を示す図である。図２および図３のＡＣＩＤとＡＲＱウィンドウ（Window）は、いずれも縦の方向がそのパケットの個数を示している。なお、ここでは、ＡＣＩＤはパケット単位で割当てられ、ＡＲＱウィンドウはパケット数で指定されることとし、ＡＣＩＤ，ＡＲＱウィンドウの単位はいずれもパケット数とする。
【００３１】
図２のデータブロック３１は、ＡＣＩＤの個数のパケット（送信データ）である。図２の例では、ＡＲＱウィンドウを１０２４個、ＡＣＩＤの個数を６１４個とした場合を示している。データブロック３２は、データブロック３１に続く送信データである。図２に示すように、送信機１の上位ＡＲＱ処理部１１では、送達確認がされていない送信データをバッファリングするとともに、ＨＡＲＱ処理部１２に渡す。なお、図２の上位ＡＲＱウィンドウでは、送信データがデータブロック３１とデータブロック３２に分かれているが、ＨＡＲＱ処理部１２以降の処理のために便宜上分けているだけであり、実際には、連続してデータが送出される。
【００３２】
ＨＡＲＱ処理部１２は、データブロック３１のデータを誤り訂正符号化し、ＡＣＩＤを割り当てＡＣＩＤの順に受信機２に送信する。ＨＡＲＱ処理部１２は、データブロック３１の処理が終わると同様にデータブロック３２の処理をはじめる。データブロック３１のパケットに対してＡＣＩＤの最小値から最大値まで割当てられているため、データブロック３２に対しては、再びＡＣＩＤの最小値から順に割当られていく。
【００３３】
一方、受信機２では、データブロック３１のデータを受信して、ＨＡＲＱ処理部２２が復号処理を行うが、このとき、データブロック３１のなかに復号ができない（復号失敗）パケットがあったとする。図２では、復号ができなかったパケットの位置を白の楕円で示している。ＨＡＲＱ処理部２２は、前述のように、復号失敗パケットがあった場合には、そのパケット以降のパケットをバッファリングする。ここで、データブロック３１を復号失敗パケットより前のパケットと、復号失敗パケット以降のパケットの２つに分けて示すこととする。図２では、この２つをそれぞれデータブロック３３とデータブロック３４としている。
【００３４】
ＨＡＲＱ処理部２２では、前述のようにＡＣＩＤが一巡して、受信データのパケットのＡＣＩＤがバッファリングしているパケットのいずれかと一致したときに、復号不能と判断し、バッファリングしたデータを上位ＡＲＱ処理部２１へ渡す。パケットの到着の順序が正常である場合、図２の例では、復号失敗パケットのＡＣＩＤと同じＡＣＩＤを持つデータブロック３２のパケットを受信したときに、復号不能と判断することになる。
【００３５】
上位ＡＲＱ処理部２１は、データブロック３３については、順次、ＨＡＲＱ処理部２２から復号されたパケットとして受け取る。そして、データブロック３３のすべてのパケットを受け取ると、ＨＡＲＱ処理部２２が復号不能と判断するまで待機することになる。そして、上位ＡＲＱ処理部２１は、ＨＡＲＱ処理部２２が復号不能と判断した後にＨＡＲＱ処理部２２からデータブロック３４およびデータブロック３２を受け取ると、復号を失敗したパケットの情報に基づいて、ＮＡＣＫを送信機１に通知して再送のための手順を実行する。なお、データブロック３２のうち、データブロック３１の復号失敗パケットのＡＣＩＤ（ＦＡＣＩＤとよぶ）と同一のＡＣＩＤを持つパケット以降のデータも、続けてＨＡＲＱ処理部２２に渡されることとし、図２では、ＦＡＣＩＤの前後でデータブロックを分けずに１つのデータブロック３２として示している。
【００３６】
つぎに、図３の例について説明する。図３のデータブロック４１は、上位ＡＲＱウィンドウの個数のパケット（送信データ）である。図３では、データブロック４１を、さらに、データブロック４１が受信機２で受信されて復号失敗するまでのデータブロック４３と復号失敗以降のデータブロック４４に分割して示している。図３の例では、ＡＲＱウィンドウを１０２４個、ＡＣＩＤの個数を２４５６個とした場合を示している。まず、上位ＡＲＱ処理部１１は、データブロック４１をＨＡＲＱ処理部１２経由で受信機２に送信する。この例では、ＡＲＱウィンドウの方が、ＡＣＩＤの個数より少ないため、データブロック４１のパケットは全て異なるＡＣＩＤが割当られて送信される。受信機２は、データブロック４１を受信すると復号処理を行うが、処理の途中で復号失敗パケットがあったとする。この場合、ＨＡＲＱ処理部２２は、ＡＣＩＤが一巡するのを待つことになる。
【００３７】
一方、送信機１のＡＲＱウィンドウは、送達確認のできていないデータブロック４１ですでにいっぱいになってしまっているため、上位ＡＲＱ処理部１１は、新たな送信データを送信することができない。このため、ＨＡＲＱ処理部１２も送信データに対してＡＣＩＤの割当動作をしないので、受信機２は、復号失敗したパケットと同じＡＣＩＤを持つパケットを受け取ることができない。このような状態になると、なんらかの対策を講じない限り、データの送信は停止し、再送要求も送信されない状態が続くことになる（デッドロック）。
【００３８】
このような状態が続くのを避けるために、送信機１の上位ＡＲＱ処理部１１では、データを送信してから所定の時間経過（タイムアウト）するまでにＡＣＫ，再送要求のいずれも受信しない場合には、上位ＡＲＱ処理部１１が、送達確認がとれていない（ＡＣＫを受信していない）パケットについて再送を行うこととする。図３のデータブロック４２−１は、このように所定の時間が経過したために再送されたデータを示している。このデータは、送信機１のＨＡＲＱ処理部１２によってデータブロック４１のパケットに割当てたＡＣＩＤの続きのＡＣＩＤを順次割当て受信機２に送信することになる。
【００３９】
受信機２のＨＡＲＱ処理部２２は、データブロック４２−１を受け取り、データブロック４１の復号失敗パケット以降のデータに続いてバッファリングする。しかし、バッファリングされたデータのＡＣＩＤは、この時点でもまだ一巡していないため、復号不能と判断されない。したがって、再びデッドロックの状態となる。そして、送信機１の上位ＡＲＱ処理部１１が、再びタイムアウトにより、データを再々送する。データブロック４２−２は、再々送のデータを示している。
【００４０】
ＨＡＲＱ処理部１２は、データブロック４２−２のパケットに、データブロック４２−１のパケットに割当てたＡＣＩＤの続きのＡＣＩＤを割当て、再び送信機１に送信する。以降、同様にＨＡＲＱ処理部２２では、バッファリングされているパケットのＡＣＩＤと同一のパケットが送信されるまで、これらの動作が繰り返される。
【００４１】
図３のデータブロック４２−３は３度目の再送データを示し、データブロック４２−４は４度目の再送データを示している。この例では、４度目の再送データの送信によって、ＨＡＲＱ処理部２２でバッファリングされているパケットのＡＣＩＤと同一のＡＣＩＤを持つパケットが受信されることになる。ＨＡＲＱ処理部２２は、データブロック４２−４を構成するパケットのＡＣＩＤが受信機２にバッファリングされているパケットのＡＣＩＤと一致すると判断し、上位ＡＲＱ処理部２１に、データブロック４１の復号失敗パケット以降のデータ（データブロック４４）とデータブロック４２−１〜４２−４を渡す。そして、上位ＡＲＱ処理部２１がＮＡＣＫを送信機１に通知し、正常に再送が行われるようになる。
【００４２】
このように、ＡＣＩＤの個数がＡＲＱウィンドウより大きい場合には、上記デッドロックという状態を回避することはできるが、送信が停止している時間が生じ、伝送効率が悪化する。したがって、本実施の形態では、ＡＣＩＤの個数に基づき、ＡＣＩＤの個数より大きくなるようにＡＲＱウィンドウを設定するようにする。
【００４３】
たとえば、ＮACIDをＡＣＩＤの個数，ＮARQをＡＲＱウィンドウ（パケット数）とするとき、以下の式（１）に従ってＮARQを求める。
ＮARQ＝ａ×ＮACID＋ｂ
ただし、ａ≧１，ｂ≧０                              …（１）
【００４４】
そして、このようにして求めたＮARQを上位ＡＲＱ処理部１１および上位ＡＲＱ処理部２１に設定し、常に上述した図２に示す自動再送制御の動作を行うようにする。
【００４５】
なお、ここでは、例として式（１）に従ってＮARQを求めるようにしたが、ＮARQがＮACID以上となるような決定方法であればどのような方法を用いてもよい。たとえば、ここでは、ＡＣＩＤの個数とＡＲＣウィンドウは、いずれもパケットの個数とした。しかし、一般に、上位ＡＲＱおよびＨＡＲＱでは、あるデータサイズ単位でパケットの送信を行い、そのデータサイズ単位の個数としてウィンドウを定義する場合、または、ＡＣＩＤを割当てている場合、もある。さらに、ＨＡＲＱで用いるデータサイズ単位（以下、ＨＡＲＱブロックサイズという）と上位ＡＲＱ処理部（１１，２１）で用いるデータサイズ単位（以下、ＡＲＱブロックサイズという）が異なる場合がある。これらのような場合には、ＡＲＱブロックサイズの差異を考慮して、たとえば、以下の式（２）に従ってＮARQを求めるようにしてもよい。
ＮARQ＝（ｃ×ＮACID×ＨＡＲＱブロックサイズ＋ｄ）／（ＡＲＱブロックサイズ）
ただし、ｃ≧１，ｄ≧０                              …（２）
【００４６】
また、本実施の形態では、上記決定方法でＮARQを決定する場合であって、かつＡＣＩＤが固定である場合には、ＮARQは通信システムの初期起動時に一度求めてその数値を継続して使用する。また、ＡＣＩＤが変更可能な通信システムでは、変更のたびにＮARQを求めて再設定する。
【００４７】
また、本実施の形態では、上位ＡＲＱ処理部１１および／または上位ＡＲＱ処理部２１が、それぞれＨＡＲＱ処理部１２，ＨＡＲＱ処理部２２からＮACIDを受け取ってＮARQを求めることとする。なお、これに限らず、たとえば、上位ＡＲＱ処理部１１がＮARQを求めて上位ＡＲＱ処理部２１に通知することとしてもよいし、または、ＨＡＲＱ処理部１２がＮARQを求めて上位ＡＲＱ処理部１１，上位ＡＲＱ処理部２１に通知するようにしてもよい。
【００４８】
また、本実施の形態では、ＩＥＥＥ８０２．１６ｅに準拠した通信システムにおける自動再送制御について説明したが、これに限らず、同様に通信のためのウィンドウの設定を行う他の通信システムにも適用できる。また、階層型のＡＲＱとして、上位ＡＲＱとＨＡＲＱについて説明したが、他の階層型ＡＲＱ方式にも、同様に本実施の形態の自動再送制御は適用できる。
【００４９】
このように、本実施の形態では、ＡＲＱウィンドウがＡＣＩＤの個数以上となるように設定するようにしたので、通信システムのスループットや遅延特性の劣化を防ぐことができる。
【００５０】
実施の形態２．
図４は、本発明にかかる通信システムの実施の形態２の機能構成例を示す図である。本実施の形態の通信システムでは、実施の形態１のＨＡＲＱ処理部２２に替えて、パケット破棄タイマ２５を追加したＨＡＲＱ処理部２２ａを備えている。また、実施の形態１の受信機２に替えて、ＨＡＲＱ処理部２２をＨＡＲＱ処理部２２ａとした受信機２ａを備えている。これら以外は、実施の形態１と同様である。実施の形態１と同様の機能を有する構成については同一の符号を付して説明を省略する。
【００５１】
実施の形態１では、ＡＲＱウィンドウをＡＣＩＤの個数以上となるように設定することで、ＡＣＩＤの個数と上位ＡＲＱのＡＲＱウィンドウの大きさの関係に起因するデットロックを避けるようにしたが、ＡＲＱウィンドウサイズの変更は、遅延量やスループット等の通信品質に影響を与えてしまう。したがって、通信品質の保持に厳しいサービスでは、ＡＲＱウィンドウサイズを調整する以外の方法によってデットロックを回避することが望ましい。
【００５２】
そこで、本実施の形態では、受信機２ａのＨＡＲＱ処理部２２ａにパケット破棄タイマ２５を設け、パケット破棄タイマ２５のタイムアウト時に復号が完了していなければ、上位ＡＲＱ処理部２１にパケットを受け渡すことによって上記デットロックを回避する。
【００５３】
図５は、本実施の形態のＨＡＲＱ処理部２２ａのパケット破棄タイマ２５を用いた処理のシーケンスを示す図である。まず、上位ＡＲＱ処理部１１は、送信データをＨＡＲＱ部１２に渡す（ステップＳ１）。そして、ＨＡＲＱ処理部１２は、誤り訂正符号化を行った後に、送受信処理部１３とアンテナ１４経由で受信機２ａに送信データを送信し、受信機２ａのＨＡＲＱ処理部２２ａがアンテナ２４および送受信処理部２３経由でデータを受信し、データの復号を行う（ステップＳ２）。そして、受信機２ａのＨＡＲＱ処理部２２ａは、正常に復号できた場合には、上位ＡＲＱ処理部２１に復号したデータを渡す（ステップＳ３）。
【００５４】
一方、ステップＳ２のＨＡＲＱ処理部２２ａの復号処理で正常に復号できなかった場合（復号失敗の場合）は、それ以降のデータをバッファリングし（ステップＳ４）、パケット破棄タイマ２５を起動する（ステップＳ５）。そして、パケット破棄タイマ２５の起動から所定の時間が経過して、パケット破棄タイマ２５がタイムアウトした場合には、パケット破棄タイマ２５の起動からその時点までにＨＡＲＱ処理部２２ａが受信したデータを破棄する（ステップＳ６）。そして、それ以降の受信データ（パケット）の復号処理が正常に行われた場合には、そのデータを上位ＡＲＱ処理部２１に渡す（ステップＳ７）。
【００５５】
この処理によって、上位ＡＲＱ処理部２１は、ＡＣＩＤの一巡を待たずに、ＨＡＲＱ処理部２２ａからデータを受け取ることができ、破棄されたパケットのＡＣＩＤが欠落することから、データの欠損と判断してＮＡＣＫを送信機１に送信することができる。以上説明した以外の処理は、実施の形態１と同様である。なお、ここでは、ＨＡＲＱ処理部２２ａでパケット破棄タイマ２５の起動からタイムアウトまでに受信したパケットを廃棄するようにしたが、復号不能の情報を付加してそのパケットを上位ＡＲＱ処理部２１に渡すようにしてもよい。この場合、上位ＡＲＱ処理部２１は、復号不能の情報に基づいて再送の要求を通知するようにすればよい。
【００５６】
なお、ここでは、ＨＡＲＱ処理部２２ａの処理で復号を失敗した場合のみ、パケット破棄タイマ２５を起動するようにしたが、ＨＡＲＱ処理部２２ａがパケットを受信するごとに、パケット破棄タイマ２５を起動し、正常に復号して上位ＡＲＱ処理部２１にそのパケットを渡した場合には、パケット破棄タイマ２５を停止するようにしてもよい。
【００５７】
また、パケット破棄タイマ２５に設定するタイムアウトの時間は、パケットを受信してからの経過時間によって規定しても良いし、通信システムのフレーム数やバッファに滞留しているパケット数等で規定してもよい。経過時間以外の場合には、パケット破棄タイマ２５は、フレーム数やバッファに滞留しているパケット数を監視する。さらに、タイムアウトの時間の値を、スループットや誤り率等の通信品質によって変更できるようにしてもよい。また、アプリケーションが要求するスループットや遅延量等によって変更しても良い。
【００５８】
このように、本実施の形態では、ＨＡＲＱ処理部２２ａがパケット破棄タイマ２５を備え、タイムアウトした場合には、ＡＣＩＤの一巡を待たずに、復号の失敗のパケットを受信した時点からタイムアウトまでに受信したパケットを廃棄して、その後に受信した正常パケットを上位ＡＲＱ処理部２１に渡すようにしたので、ＡＲＱウィンドウのサイズを変えることなく、デッドロックを防ぐことができる。これによって、通信品質の保持に厳しいサービスでは、ＡＲＱウィンドウサイズをＡＣＩＤの個数とは独立に設定でき、通信システムのスループットや遅延特性の劣化を防ぐことができる。
【００５９】
実施の形態３．
図６は、本発明にかかる自動制御方法を実現する通信システムの実施の形態３の送信機の機能構成例を示す図である。本実施の形態の送信機は、実施の形態１の送信機１の上位ＡＲＱ処理部１１に替えて、上位ＡＲＱ処理部１１ａ−１〜１１ａ−３を備えているが、これ以外は、実施の形態１の送信機１と同様である。実施の形態１と同様の機能を有する構成については同一の符号を付して説明を省略する。
【００６０】
また、図示しないが、本実施の形態の受信機は、本実施の形態の送信機１と同様に、３つの上位ＡＲＱ処理部を備えることとする。本実施の形態では、複数の上位ＡＲＱ処理部１１ａ−１〜１１ａ−３で１つのＨＡＲＱ処理部１２を共有することで、仮想的にＡＲＱウィンドウのサイズを増加させて、デットロックを避ける。
【００６１】
図５では、コネクションごとに上位ＡＲＱ処理部１１ａ−１〜１１ａ−３を備える例を示している。ここでは、コネクションの数を３とし、上位ＡＲＱ処理部も３つとしているが、コネクションおよび上位ＡＲＱ処理部の数はこれに限らずどのような数にしてもよい。
【００６２】
仮想共有ＡＲＱウィンドウ６０は、上位ＡＲＱ処理部１１ａ−１〜１１ａ−３の各々のＡＲＱを仮想的に統合した概念を示している。上位ＡＲＱ処理部１１ａ−１〜１１ａ−３では、それぞれ送信データをＨＡＲＱ処理部１２に渡す。ＨＡＲＱ処理部１２では、送信元の上位ＡＲＱ処理部１１ａ−１〜１１ａ−３を区別せずにＡＣＩＤを割当て、誤り訂正符号化を行って受信機２に送信する。このとき、上位ＡＲＱ処理部１１ａ−１〜１１ａ−３の各々のＡＲＱウィンドウのサイズをＮiとし、上位ＡＲＱ処理部１１ａ−１〜１１ａ−３からそれぞれ等しいデータレートで送信データが送られていると想定すると、仮想共有ＡＲＱウィンドウ６０のサイズはほぼ３×Ｎiとみなすことができる。
【００６３】
上位ＡＲＱ処理部１１ａ−１〜１１ａ−３からＨＡＲＱ処理部１２に送られるデータレートなどがそれぞれ異なる場合には、仮想共有ＡＲＱウィンドウ６０のサイズは３×Ｎiより小さくなるが、単独でＨＡＲＱ処理部１２を利用する場合に比べて仮想的なサイズは増大する。受信機２でも同様に、ＨＡＲＱ処理部２２を共有し、ＨＡＲＱ処理部２２は、復号した受信データをコネクション別にそれぞれに対応する上位ＡＲＱ処理部に分配する。以上説明した以外の処理は実施の形態１と同様である。
【００６４】
このように、仮想的なＡＲＱウィンドウを用いて、仮想的なＡＲＱウィンドウのサイズをＡＣＩＤの個数より大きくすれば、実施の形態１と同様の効果を得ることができる。
【００６５】
なお、本実施の形態では、複数のコネクションでＨＡＲＱ処理部１２を共有するようにした。この使用例として、たとえば、下りリンク通信（基地局から端末への通信）では、１つの端末内の複数コネクションでＨＡＲＱ処理部１２を共用することができる。また、複数端末のそれぞれのコネクションで共用しても良い。また、コネクション間の共有に限らず、複数のサービス種別でＨＡＲＱ処理部１２を共有するようにしてもよい。
【００６６】
このように、本実施の形態では、複数の上位ＡＲＱ処理部で１つのＨＡＲＱ処理部１２を共有し、ＡＣＩＤの個数に対して仮想的にＡＲＱウィンドウを増やすようにしたので、実際のＡＲＱウィンドウのサイズを変更することなく、実施の形態１と同様の効果を得ることができる。
【産業上の利用可能性】
【００６７】
以上のように、本発明にかかる自動再送制御方法、送信装置および受信装置は、ＡＲＱを行う通信システムに有用であり、特に、階層型ＡＲＱを行う自動再送制御方法および通信システムに適している。
【図面の簡単な説明】
【００６８】
【図１】本発明にかかる自動制御方法を実現する通信システムの実施の形態１の機能構成例を示す図である。
【図２】ＡＣＩＤの個数がＡＲＱウィンドウより小さい場合のデータ送信の一例を示す図である。
【図３】ＡＣＩＤの個数がＡＲＱウィンドウより大きい場合のデータ送信の一例を示す図である。
【図４】本発明にかかる自動制御方法を実現する通信システムの実施の形態２の機能構成例を示す図である。
【図５】実施の形態２のＨＡＲＱ処理部の処理のシーケンスを示す図である。
【図６】本発明にかかる自動制御方法を実現する通信システムの実施の形態３の送信機の機能構成例を示す図である。
【符号の説明】
【００６９】
１  送信機
２，２ａ  受信機
３  アプリケーション層
４  ＭＡＣ層
５  物理層
６  ＭＡＣ上層
７  ＭＡＣ下層
１１，２１  上位ＡＲＱ処理部
１２，２２，２２ａ  ＨＡＲＱ処理部
１３，２３  送受信処理部
１４，２４  アンテナ
２５  パケット破棄タイマ
【図１】
2008278014.tif 000003
【図２】
2008278014.tif 000004
【図３】
2008278014.tif 000005
【図４】
2008278014.tif 000006
【図５】
2008278014.tif 000007
【図６】
2008278014.tif 000008