(57)【特許請求の範囲】
【請求項１】
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備え、
前記適応レート制御部は、
前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第１の閾値以上となった場合には前記MCSを高いレベルに引き上げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記MCSを１段階低いレベルに戻すと共に、前記第１の閾値を大きくし、
前記MCSを高いレベルに引き上げた後に前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第２の閾値以上となった場合には前記第１の閾値を小さくする
送信装置。
【請求項２】
前記第２の閾値は、前記第１の閾値の初期値である
請求項１に記載の送信装置。
【請求項３】
前記適応レート制御部は、受信側から送信されるACKフレームに基づき、前記フレーム単位での送信の成否を判定する
請求項１または２に記載の送信装置。
【請求項４】
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の送信方法において、
前記適応レート制御部による、
前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第１の閾値以上となった場合には前記MCSを高いレベルに引き上げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記MCSを１段階低いレベルに戻すと共に、前記第１の閾値を大きくし、
前記MCSを高いレベルに引き上げた後に前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第２の閾値以上となった場合には前記第１の閾値を小さくする
ステップを含む送信方法。
【請求項５】
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の制御用のプログラムであって、
前記適応レート制御部に、
前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第１の閾値以上となった場合には前記MCSを１段階低いレベルに戻すと共に、前記MCSを高いレベルに引き上げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を大きくし、
前記MCSを高いレベルに引き上げた後に前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第２の閾値以上となった場合には前記第１の閾値を小さくする
ステップを含む処理を送信装置のコンピュータに実行させるプログラム。
【請求項６】
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備え、
前記適応レート制御部は、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第１の閾値未満となった場合には前記MCSを高いレベルに引き上げ、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第２の閾値以上となった場合には前記MCSを低いレベルに引き下げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を小さくし、
前記MCSを高いレベルに引き上げた後に前記送信失敗確率ｒまたは前記値ｒ’が第３の閾値未満となった場合には前記第１の閾値を大きくする
送信装置。
【請求項７】
前記第３の閾値は、前記第１の閾値の初期値である
請求項６に記載の送信装置。
【請求項８】
前記適応レート制御部は、
前記第１の閾値を小さくするに際して前記送信失敗確率ｒの算出期間を長くし、
前記第１の閾値を大きくするに際して前記送信失敗確率ｒの算出期間を短くする
請求項６または７に記載の送信装置。
【請求項９】
前記適応レート制御部は、
前記MCSを高いレベルに引き上げた後、送信失敗確率ｒの算出期間を短くする
請求項６から８のいずれかに記載の送信装置。
【請求項１０】
前記適応レート制御部は、
前記MCSを高いレベルに引き上げた後、送信失敗確率ｒの算出期間を初期化する
請求項６から８のいずれかに記載の送信装置。
【請求項１１】
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の送信方法において、
前記適応レート制御部による、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第１の閾値未満となった場合には前記MCSを高いレベルに引き上げ、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第２の閾値以上となった場合には前記MCSを低いレベルに引き下げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を小さくし、
前記MCSを高いレベルに引き上げた後に前記送信失敗確率ｒまたは前記値ｒ’が第３の閾値未満となった場合には前記第１の閾値を大きくする
ステップを含む送信方法。
【請求項１２】
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の制御用のプログラムであって、
前記適応レート制御部に、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第１の閾値未満となった場合には前記MCSを高いレベルに引き上げ、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第２の閾値以上となった場合には前記MCSを低いレベルに引き下げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を小さくし、
前記MCSを高いレベルに引き上げた後に前記送信失敗確率ｒまたは前記値ｒ’が第３の閾値未満となった場合には前記第１の閾値を大きくする
ステップを含む処理を送信装置のコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、送信装置、送信方法、およびプログラムに関し、特に、通信状況に応じて適応的にMCS(Modulation and Coding Scheme：変調符号化方式)を変更するようにした送信装置、送信方法、およびプログラムに関する。
【背景技術】
【０００２】
既存の無線通信システムでは、予め複数用意されているMCSのうちの最適と推定されるものを、通信状況に応じて適応的に切り替えて送信を行うものがある。通常、複数用意されているMCSのうち、データ伝送速度が低いMCSほど、通信路が低品質であっても通信が成立するが、反対に、データ伝送速度が高いMCSほど、通信を成功させるためには高品質な通信路が要求される。
【０００３】
なお、通信システムの送信側が通信路の品質を直接的に知ることができれば、通信状況に応じた適応的なMCSの切り替えは容易である。ただし、送信側が通信路の品質を直接的に知ることができない場合、受信側から送信されるACKフレーム等に基づいて通信状況を推定し、その推定結果に応じてMCSを切り替える方法がある。
【０００４】
受信側からのACKフレームに基づいて、データの送信単位であるフレームの送信の成否を推定し、送信成功の連続回数に応じてMCSを切り替える適応レート制御技術としては、IEEE 802.11規格に準拠した無線システムで用いられているARF(Automatic Rate Fallback)（例えば、非特許文献１参照）と、ARFを発展させたAARF(Adaptive ARF)（例えば、非特許文献２参照）が知られている。また、受信側からのACKフレームに基づいて、フレームの送信の成否を推定し、過去一定時間における送信の送信失敗率に応じてMCSを切り替える適応レート制御技術も存在する（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−５１７８１号公報
【非特許文献】
【０００６】
【非特許文献１】A. Kamerman and L. Monteban, “WaveLAN-II: A High-Performance Wireless LAN for the Unlicensed Band”, Bell Labs Technical Journal, pp. 118-133, Summer 1997.
【非特許文献２】M. Lacage, M. H. Manshaei, and T. Turletti. "IEEE802.11 Rate Adaptation: A Practical Approach". INRIA Research Report number 5208, May2004.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
図１は、AARFによる適応レート制御処理（以下、AARF処理と称する）を説明するフローチャートである。なお、同図からステップＳ１３とステップＳ２０の処理を省略すれば、ARFによる適応レート制御処理（以下、ARF処理と称する）を説明するフローチャートとなる。図２は、図１のフローチャートにおける閾値や変数などを表す記号の意味と初期値を示している。
【０００８】
ARF処理およびAARF処理の概要を説明する。ARF処理では、データの送信単位であるフレームの送信成功の連続回数ｎが、閾値ａ（ａは固定値、図１は一例として閾値ａ＝ａｍｉｎの場合を示している）以上となった場合、MCSが現状よりも１段階高いレベル（データ転送速度が速いレベル）に変更される。また、MCSが１段階高いレベルに変更された直後にフレームの送信が失敗した場合、またはフレームの送信がｍ回連続で失敗した場合、MCSが現状よりも１段階低いレベル（データ転送速度が遅いレベル）に変更される。さらに、フレームの送信の成否に拘わらず、フレームの送信回数ｔが閾値ｇ以上となった時にMCSが１段階高いレベルに変更される。なお、送信側におけるフレームの送信の成否は、受信側からのACKフレームを受信できるか否かに基づいて判断される。
【０００９】
一方、AARF処理では、ARF処理と同様、フレームの送信成功の連続回数ｎが、閾値ａ（ａはａｍｉｎからａｍａｘまで可変）以上となった場合、MCSが現状よりも１段階高いレベルに変更される。また、MCSが１段階高いレベルに変更された直後にフレームの送信が失敗した場合、またはフレームの送信がｍ回連続で失敗した場合、MCSが現状よりも１段階低いレベルに変更される。さらに、フレームの送信の成否に拘わらず、同一MCSでの連続送信回数ｔが閾値ｇ以上となった時にMCSが１段階高いレベルに変更される。
【００１０】
ただし、AARF処理では、MCSが１段階高いレベルに変更された直後にフレームの送信が失敗したことによって、MCSが１段階低いレベルに変更された場合、閾値ａはａｍａｘ未満である限りｋ１倍に変更される。
【００１１】
ARF処理によれば、送信側は、受信側からのACKフレームだけで適応的に送信レートを制御できる。よって、ARF処理は、多くの無線規格製品に適用が可能である。ただし、ARF処理を実行したために、ARF処理を実行しない場合に比較して、フレームの送信成功確率が通信路の品質が安定時に劣化してしまう問題が起こり得る。
【００１２】
図３は、上述した問題の具体例で、通信品質が一定の場合の、ARF処理におけるMCSの送信フレーム数依存性のシミュレーション結果の一例である。MCSのレベルは低い方から順にmcs0からmcs5までの６段階が存在し、下から４番目のmcs3までPER(Packet Error Rate)は０に近い値であり、且つ、それよりも１段階高いmcs4でPERが１となることを想定する。また、閾値ａの初期値ａｍｉｎは１０に設定する。
【００１３】
この場合、mcs3では、フレームの送信成功の連続回数ｎが閾値ａである１０回以上となる可能性が極めて高く、その場合にはMCSはmcs4に変更される。しかしながら、MCSがmcs4に変更されると、その直後にフレームの送信は失敗してしまうので、MCSはmcs3に戻される。想定した通信路の品質に変化が無いと、このようなMCSの変更が繰り返される。この場合、フレームの送信成功確率は、ARF処理を実行しなければ１であるが、ARF処理を実行したために、ａ／(ａ＋１)（＝１０／１１）に劣化してしまう。この劣化は、閾値であるａを大きくすれば緩和可能であるが、その場合、MCSの初期引き込み性能や、通信路の品質が通信途中で向上した時の追従性能が劣化してしまう。
【００１４】
図４は、通信品質が一定の場合の、AARF処理によるMCSの送信フレーム数依存性シミュレーション結果の一例を示している。図３と同様、MCSのレベルは低い方から順にmcs0からmcs5までの６段階が存在し、下から４番目のmcs3までPERは０に近い値であり、且つ、それよりも１段階高いmcs4でPERが１となることを想定する。また、閾値ａの初期値ａｍｉｎ＝１０、その最大値ａｍａｘ＝５０、閾値ｇの初期値ｇｍｉｎ＝２５０、係数ｋ１＝２に設定する。
【００１５】
この場合、mcs3まではARF処理と同様に上がっていくが、mcs3からmcs4に変更され、その直後にフレームの送信が失敗してmcs3に戻されると、閾値ａは初期値ａｍｉｎ×ｋ１＝２０となる。次に、mcs3からmcs4に変更され、その直後にフレームの送信が失敗してmcs3に戻されると、閾値ａは２倍の４０に変更される。さらに、次に、mcs3からmcs4に変更され、その直後にフレームの送信が失敗してmcs3に戻されると、閾値ａは上限値の５０に変更される。閾値ａが上限値の５０となった場合、それ以降のフレームの送信成功確率は、５０／５１＝98%となる。
【００１６】
上述したように、閾値ａの初期値が同じ値の時のARF処理のフレームの送信成功確率は、１０／１１＝90.9%であるので、AARF処理では、ARF処理に比較して、フレームの送信成功確率を7.1%だけ向上させることができる。また、AARF処理とARF処理の閾値ａの初期値が同じ場合、MCSの初期引き込み性能の劣化は生じない。
【００１７】
したがって、AARF処理では、ARF処理に比較して、MCSの初期引き込み性能の劣化を生じさせることなく、フレームの送信成功確率を向上させることができる。
【００１８】
ただし、AARF処理であっても、通信路品質が通信途中で向上したときのMCSの追従性能がARF処理に比較して劣ることがある。図５および図６を参照して具体的に説明する。
【００１９】
図５は、通信品質が通信途中で向上した場合のARF処理によるMCSの送信フレーム数依存性シミュレーション結果の一例、図６は通信品質が通信途中で向上した場合のAARF処理によるシミュレーション結果の一例を、各々示している。図５および図６については、MCSのレベルは低い方から順にmcs0からmcs5までの６段階が存在し、１２０フレーム送信時までは、下から４番目のmcs3までPERは０に近い値であり、且つ、それよりも１段階高いmcs4でPERが１となることを想定する。１２０フレーム送信時以降は、通信路の品質が向上し、mcs4やmcs5であってもPERは０に近い値であると想定する。また、閾値ａの初期値ａｍｉｎ＝１０、その最大値ａｍａｘ＝５０、閾値ｇの初期値ｇｍｉｎ＝２５０、係数ｋ１＝２に設定する。
【００２０】
ARF処理の場合、図５に示されるように、約１４０フレーム送信時にはmcs5にまで引き上げられてそのまま安定する。しかしながら、AARF処理では、１２０フレーム送信以前の送信失敗に起因して閾値ａが最大値ａｍａｘになってしまっているので、mcs5にまで引き上げられるのは２００フレーム送信時になってしまう。
【００２１】
すなわち、AARF処理では、通信路品質が通信途中で向上したときのMCSの最大収束時間が、ARF処理に比較して（ａｍａｘ−ａｍｉｎ）／ａｍｉｎ（上記例では４）倍劣化（延長）してしまうことになる。
【００２２】
なお、特許文献１に開示されている適応レート制御技術では、過去一定時間のフレームの送信回数と送信失敗回数から送信失敗率ｒを計算し、失敗確率ｒが閾値ｐ未満であった場合、MCSを現在よりも１段階高いレートに変化させる。反対に、失敗確率ｒが閾値ｑ以上であった場合、MCSを現在よりも１段階低い低レートに変化させる。
【００２３】
このように、特許文献１の適応レート制御技術では、送信失敗率ｒに基づいてレートを制御するので、送信成功の連続回数や失敗の連続回数に基づいてレートを制御するARF処理よりも正確なレート制御が可能となる。すなわち、MCSが最適となっている場合、送信失敗率ｒが閾値ｐよりも大きく、閾値ｑよりも小さい範囲で通信が安定し、MCSが変更されないので、ARF処理で問題が生じた通信路品質が安定している場合のレート劣化が全く生じない可能性が高い。さらに、通信途中で通信品質が向上した場合にも、その際の収束時間は初期状態と同じ性能が得られる。
【００２４】
ただし、MCSを最適とするためには、用いる通信システムによっては、閾値ｐを比較的小さな値に設定しない場合、一定時間毎にMCSが１段階異なるレベルを交互に繰り返してしまい、送信成功率が制御前の最小１／２となってしまう期間が発生し得る。また、この期間を発生させないために閾値ｐを比較的小さな値に設定すると、送信失敗率ｒを長い時間観測しなければならず、収束時間が長くなってしまう。
【００２５】
本開示はこのような状況に鑑みてなされたものであり、通信途中に通信路の品質が変化した場合のMCSの追従性を向上させるようにするものである。
【課題を解決するための手段】
【００２６】
本開示の第１の側面である送信装置は、データを送信する際に適用するMCSを通信状況に応じて制御する適応レート制御部と、前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備え、前記適応レート制御部は、前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第１の閾値以上となった場合には前記MCSを高いレベルに引き上げ、前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記MCSを１段階低いレベルに戻すと共に、前記第１の閾値を大きくし、前記MCSを高いレベルに引き上げた後に前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第２の閾値以上となった場合には前記第１の閾値を小さくする。
【００２７】
前記第２の閾値は、前記第１の閾値の初期値とすることができる。
【００２９】
前記適応レート制御部は、受信側から送信されるACKフレームに基づき、前記フレーム単位での送信の成否を判定することができる。
【００３０】
本開示の第１の側面である送信方法は、データを送信する際に適用するMCSを通信状況に応じて制御する適応レート制御部と、前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の送信方法において、前記適応レート制御部による、前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第１の閾値以上となった場合には前記MCSを高いレベルに引き上げ、前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記MCSを１段階低いレベルに戻すと共に、前記第１の閾値を大きくし、前記MCSを高いレベルに引き上げた後に前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第２の閾値以上となった場合には前記第１の閾値を小さくするステップを含む。
【００３１】
本開示の第１の側面であるプログラムは、データを送信する際に適用するMCSを通信状況に応じて制御する適応レート制御部と、前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の制御用のプログラムであって、前記適応レート制御部に、前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第１の閾値以上となった場合には前記MCSを高いレベルに引き上げ、前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記MCSを１段階低いレベルに戻すと共に、前記第１の閾値を大きくし、前記MCSを高いレベルに引き上げた後に前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第２の閾値以上となった場合には前記第１の閾値を小さくするステップを含む処理を送信装置のコンピュータに実行させる。
【００３２】
本開示の第１の側面においては、フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第１の閾値以上となった場合にはMCSが高いレベルに引き上げられ、前記MCSが高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記MCSが１段階低いレベルに戻されると共に、前記第１の閾値が大きくされ、前記MCSが高いレベルに引き上げた後に前記フレーム単位での送信成功の連続回数ｎまたは前記送信成功の連続回数ｎに基づく値ｎ’が第２の閾値以上となった場合には前記第１の閾値が小さくされる。
【００３３】
本開示の第２の側面である送信装置は、データを送信する際に適用するMCSを通信状況に応じて制御する適応レート制御部と、前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備え、前記適応レート制御部は、前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第１の閾値未満となった場合には前記MCSを高いレベルに引き上げ、前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第２の閾値以上となった場合には前記MCSを低いレベルに引き下げ、前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を小さくし、前記MCSを高いレベルに引き上げた後に前記送信失敗確率ｒまたは前記値ｒ’が第３の閾値未満となった場合には前記第１の閾値を大きくする。
【００３４】
前記第３の閾値は、前記第１の閾値の初期値とすることができる。
【００３５】
前記適応レート制御部は、前記第１の閾値を小さくするに際して前記送信失敗確率ｒの算出期間を長くし、前記第１の閾値を大きくするに際して前記送信失敗確率ｒの算出期間を短くすることができる。
【００３６】
前記適応レート制御部は、前記MCSを高いレベルに引き上げた後、送信失敗確率ｒの算出期間を短くすることができる。
【００３７】
前記適応レート制御部は、前記MCSを高いレベルに引き上げた後、送信失敗確率ｒの算出期間を初期化することができる。
【００３８】
本開示の第２の側面である送信方法は、データを送信する際に適用するMCSを通信状況に応じて制御する適応レート制御部と、前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の送信方法において、前記適応レート制御部による、前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第１の閾値未満となった場合には前記MCSを高いレベルに引き上げ、前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第２の閾値以上となった場合には前記MCSを低いレベルに引き下げ、前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を小さくし、前記MCSを高いレベルに引き上げた後に前記送信失敗確率ｒまたは前記値ｒ’が第３の閾値未満となった場合には前記第１の閾値を大きくするステップを含む。
【００３９】
本開示の第２の側面であるプログラムは、データを送信する際に適用するMCSを通信状況に応じて制御する適応レート制御部と、前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の制御用のプログラムであって、前記適応レート制御部に、前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第１の閾値未満となった場合には前記MCSを高いレベルに引き上げ、前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第２の閾値以上となった場合には前記MCSを低いレベルに引き下げ、前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を小さくし、前記MCSを高いレベルに引き上げた後に前記送信失敗確率ｒまたは前記値ｒ’が第３の閾値未満となった場合には前記第１の閾値を大きくするステップを含む処理を送信装置のコンピュータに実行させる。
【００４０】
本開示の第２の側面においては、フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第１の閾値未満となった場合にはMCSが高いレベルに引き上げられ、前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第２の閾値以上となった場合には前記MCSが低いレベルに引き下げられ、前記MCSが高いレベルに引き上げられた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値が小さくされ、前記MCSが高いレベルに引き上げられた後に前記送信失敗確率ｒまたは前記値ｒ’が第３の閾値未満となった場合には前記第１の閾値が大きくされる。
【発明の効果】
【００４１】
本開示の第１および第２の側面によれば、通信途中に通信路の品質が変化した場合のMCSの追従性を向上させることができる。
【図面の簡単な説明】
【００４２】
【図１】AARF処理を説明するフローチャートである。
【図２】図１における記号の意味と初期値を示す図である。
【図３】ARF処理による不具合を表すシミュレーション結果を示す図である。
【図４】AARF処理によるシミュレーション結果を示す図である。
【図５】ARF処理によるシミュレーション結果を示す図である。
【図６】AARF処理による不具合を表すシミュレーション結果を示す図である。
【図７】本開示を適用した送信装置の構成例を示すブロック図である。
【図８】図７の適応レート制御部の構成例を示すブロック図である。
【図９】第１の適応レート制御処理を説明するためのフローチャートである。
【図１０】第１の適応レート制御処理を説明するためのフローチャートである。
【図１１】図９および図１０における記号の意味と初期値を示す図である。
【図１２】第１の適応レート制御処理によるシミュレーション結果を示す図である。
【図１３】第２の適応レート制御処理を説明するためのフローチャートである。
【図１４】図１３における記号の意味と初期値を示す図である。
【図１５】汎用のコンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００４３】
以下、本開示を実施するための最良の形態（以下、実施の形態と称する）について、図面を参照しながら詳細に説明する。
【００４４】
＜本開示の実施の形態である送信装置の構成例＞
図７は、本開示の実施の形態である送信装置の構成例を示している。この送信装置１０は、通信途中に通信路の品質が向上した場合に最適なMCSに収束するまでの収束時間を短くできるようにしたものである。
【００４５】
送信装置１０は、適応レート制御部１１、送信部１２、および受信部１３から構成される。適応レート制御部１１は、受信部１３から逐次通知される適応レート判断情報に基づき、送信部１２がデータを送信するに際して採用するMCSを決定して送信部１２に通知する。なお、適応レート判断情報には、送信装置１０が送信したデータを受信する受信側から送信されるACKフレームの受信の有無を表す情報が含まれているものとする。
【００４６】
送信部１２は、送信するデータを、適応レート制御部１１から通知されるMCSを採用して変調、符号化し、その結果得られる送信データを受信側に無線送信する。受信部１３は、受信側から送信されるACKフレームを受信する。また、受信部１３は、ACKフレームの受信の有無を表す情報を含む適応レート判断情報を適応レート制御部１１に逐次通知する。
【００４７】
図８は、適応レート制御部１１の詳細な構成例を示している。適応レート制御部１１は、判定部２１、カウント部２２、閾値設定部２３、レート決定部２４、および確率算出部２５を含む。
【００４８】
判定部２１は、受信部１３からの適応レート判断情報に基づき、フレーム（送信データの送信単位）の送信の成否を判定する。また、判定部２１は、変数の閾値に対する関係を判定する。カウント部２２は、フレームの送信成功の連続回数ｎなどの各種の変数を初期化したり、カウントしたりする。閾値設定部２３は、各種の閾値を初期化したり、増減したりする。レート決定部２４は、MCSを決定して送信部１２に通知する。確率算出部２５は、フレームの送信失敗率を算出する。
【００４９】
＜適応レート制御部１１による第１の適応レート制御処理＞
次に、適応レート制御部１１による第１の適応レート制御処理について説明する。
【００５０】
図９および図１０は、第１の適応レート制御処理を説明するフローチャートである。なお、該フローチャートには、図２に意味と初期値が示された記号が使用され、さらに、図１１に意味と初期値が示された記号が使用される。
【００５１】
ステップＳ３１において、カウント部２２により、各種の変数が初期化される（初期値が代入される）。また、閾値設定部２３により、各種の閾値が初期化される。ステップＳ３２において、送信部１２が送信するフレームに対して送信順序を表すために付与される番号ｉがカウント部２２により１だけインクリメントされる。
【００５２】
ステップＳ３３において、送信部１２により、ｉ番目のフレームが送信される。ステップＳ３４において、判定部２１により、受信部１３からの適用レート判断情報に基づいて、ステップＳ３３で送信されたｉ番目のフレームの送信の成否が判定される。送信成功と判定された場合、処理はステップＳ３５に進められる。
【００５３】
ステップＳ３５において、カウント部２２により、フレームの送信成功の連続回数ｎが１だけインクリメントされ、且つ、フレームの送信失敗の連続回数ｍが０に初期化される。
【００５４】
ステップＳ３６において、判定部２１により、フレームの送信成功の連続回数ｎが閾値ｂと等しく、且つ、現在のMCSは直前にそのレベルが１段階上げられたものであるか否かが判定される。この判定結果が肯定（YES）である場合、処理はステップＳ３７に進められ、判定結果が否定（NO）である場合、ステップＳ３７はスキップされる。
【００５５】
ステップＳ３７において、閾値設定部２３により、閾値ａが小さい値に変更される。具体的には、現状の閾値ａに１よりも小さい係数ｋ３を乗算した値と、閾値ａの初期値ａｍｉｎが比較され、それらの大きい方の値に閾値ａが変更される。
【００５６】
ステップＳ３８において、判定部２１により、フレームの送信成功の連続回数ｎが閾値ａと等しい）または（MCSを上げるまでのフレーム送信回数ｔが閾値ｇと等しい）のどちらかを満たし、且つ、（現在のMCSのレベルが最上位ではない）との条件を満たすか否かが判定される。
【００５７】
ステップＳ３８における判定結果が肯定である場合、処理はステップＳ３９に進められる。ステップＳ３９において、レート決定部２４により、MCSが１段階高いレベルに変更される。また、カウント部２２により、フレーム送信回数ｔと、フレームの送信成功の連続回数ｎが０に初期化され、MCSのレベルが１段階上げられてから１度もフレームの送信が成功していないことを示すフラグrecがTrueに変更される。この後、処理はステップＳ４１に進められる。
【００５８】
反対に、ステップＳ３８における判定結果が否定である場合、処理はステップＳ４０に進められる。ステップＳ４０において、カウント部２２により、フレーム送信回数ｔが１だけインクリメントされ、また、フラグrecがFalseに変更される。この後、処理はステップＳ４１に進められる。
【００５９】
ステップＳ４１において、判定部２１により、送信したフレームの番号ｉが転送フレーム数ｎｄに達していないか否かが判定される。この判定結果が否定である（フレームの番号ｉが転送フレーム数ｎｄに達している）場合、第１の適応レート制御処理は終了される。
【００６０】
反対に、ステップＳ４１における判定結果が肯定である（フレームの番号ｉが転送フレーム数ｎｄに達していない）場合、処理はステップＳ３２に戻されて、それ以降が繰り返される。
【００６１】
なお、ステップＳ３４において、ステップＳ３３で送信されたフレームの送信が失敗と判定された場合、処理は図１０のステップＳ５１に進められる。
【００６２】
ステップＳ５１において、カウント部２２により、フレーム送信回数ｔが１だけインクリメントされ、フレームの送信失敗の連続回数ｍが１だけインクリメントされ、フレームの送信成功の連続回数ｎが０に初期化される。
【００６３】
ステップＳ５２において、判定部２１により、フラグrecがTrueであるか否かが判定される。この判定結果が否定である（フラグrecがFalseである）場合、処理はステップＳ５３に進められる。ステップＳ５３において、判定部２１により、送信失敗の連続回数ｍが２，４，６，８または１０のいずれかであるか否かが判定される。この判定結果が肯定である場合、処理はステップＳ５４に進められる。
【００６４】
ステップＳ５４において、閾値設定部２３により、閾値ａがその初期値であるａｍｉｎに変更されるとともに、閾値ｇがその初期値であるｇｍｉｎに変更される。ステップＳ５５において、判定部２１により、現在のMCSのレベルが最下位ではないか否かが判定される。
【００６５】
ステップＳ５５における判定結果が肯定である（現在のMCSのレベルが最下位ではない）場合、処理はステップＳ５６に進められる。ステップＳ５６において、レート決定部２４により、MCSが１段階低いレベルに変更される。ステップＳ５５における判定結果が否定である（現在のMCSのレベルが最下位である）場合、ステップＳ５６はスキップされて、処理はステップＳ６０に進められる。
【００６６】
なお、ステップＳ５３における判定結果が否定である場合にも処理はステップＳ６０に進められる。
【００６７】
一方、ステップＳ５２における判定結果が肯定である（フラグrecがTrueである）場合、処理はステップＳ５７に進められる。ステップＳ５７において、カウント部２２により、フレーム送信回数ｔが０に初期化される。
【００６８】
ステップＳ５８において、判定部２１により、送信失敗の連続回数ｍが１であるか否かが判定される。この判定結果が否定である（送信失敗の連続回数ｍが１ではない）場合、処理はステップＳ６０に進められる。反対に、この判定結果が肯定である（送信失敗の連続回数ｍが１である）場合、処理はステップＳ５９に進められる。
【００６９】
ステップＳ５９において、閾値設定部２３により、閾値ａと閾値ｇが変更される。具体的には、現状の閾値ａに１よりも大きい係数ｋ３を乗算した値と、閾値ａの最大値ａｍａｘが比較され、それらの小さい方の値に閾値ａが変更される。また、現状の閾値ａに係数ｋ２を乗算した値と、閾値ｇの初期値ｇｍｉｎが比較され、それらの大きい方の値に閾値ｇが変更される。この後、処理は、ステップＳ５５に進められる。
【００７０】
ステップＳ６０において、判定部２１により、送信失敗の連続回数ｍが２以上であるか否かが判定される。この判定結果が肯定である（送信失敗の連続回数ｍが２以上である）場合、処理はステップＳ６１に進められる。ステップＳ６１において、カウント部２２により、フレーム送信回数ｔが０に初期化される。なお、ステップＳ６０における判定結果が否定である（送信失敗の連続回数ｍが２未満である）場合、ステップＳ６１はスキップされる。この後、処理は、図９のステップＳ３３に戻されて、それ以降が繰り返される。
【００７１】
以上説明した第１の適応レート制御処理では、要するに、フレームの送信成功の連続回数ｎが閾値ａ以上である場合にMCSを１段階高いレベルに変更し、MCSを１段階高いレベルに変更した直後にフレームの送信が失敗した場合にはMCSを１段階低いレベルに戻すとともに閾値ａを大きくし、MCSのレベルを上げた後にフレームの送信成功の連続回数ｎが閾値ｂ以上である場合には、閾値ａを小さくするような制御を行っている。
【００７２】
第１の適応レート制御処理によれば、AARF処理と同様、ARF処理に比較して、MCSの初期引き込み性能の劣化を生じさせることなく、フレームの送信成功確率を向上させることが
できる。
【００７３】
なお、フレームの送信成功の連続回数ｎと閾値とを比較する代わりに、ｎに基づいて計算される値ｎ’とそれに合わせて調整した閾値とを比較するようにしてもよい。
【００７４】
図１２は、第１の適応レート制御処理による、通信路の品質が通信途中で向上した場合のシミュレーション結果を示している。
【００７５】
ただし、図１２については、図５および図６と同様、MCSのレベルは低い方から順にmcs0からmcs5までの６段階が存在し、１２０フレーム送信時までは、下から４番目のmcs3までPERは０に近い値であり、且つ、それよりも１段階高いmcs4でPERが１となることを想定する。１２０フレーム送信時以降は、通信路の品質が向上し、mcs4やmcs5であってもPERは０に近い値であると想定する。また、閾値ａの初期値ａｍｉｎ＝１０、その最大値ａｍａｘ＝５０、閾値ｇの初期値ｇｍｉｎ＝２５０、係数ｋ１＝２、閾値ｂ＝閾値ａの初期値ａｍｉｎ、係数ｋ１＝０に設定する。
【００７６】
図１２に示される第１の適応レート制御処理の場合、約１５５フレーム送信時にmcs4に引き上げられ、約１６５フレーム送信時にはmcs5にまで引き上げられてそのまま安定する。
【００７７】
したがって、第１の適応レート制御処理によれば、図６に示されたAARF処理の場合に比較して、最適なMCSを収束するまでの収束時間を大幅に短縮することができる。
【００７８】
＜適応レート制御部１１による第２の適応レート制御処理＞
ところで、上述した第１の適応レート制御処理では、フレームの送信成功の連続回数や送信失敗の連続回数に基づいてMCSを決定していたが、フレームの送信失敗確率に基づいてMCSを決定するようにしてもよい。
【００７９】
次に、適応レート制御部１１による、フレームの送信失敗確率に基づいてMCSを決定する第２の適応レート制御処理について説明する。
【００８０】
図１３は、第２の適応レート制御処理を説明するフローチャートである。図１４は、図１３のフローチャートにおける閾値や変数などを表す記号の意味と初期値を示している。
【００８１】
ステップＳ８１において、カウント部２２により、各種の変数が初期化される（初期値が代入される）。また、閾値設定部２３により、各種の閾値が初期化される。ステップＳ８２において、カウント部２２により、送信部１２が送信するフレームに対して送信順序を表すために付与される番号ｉが１だけインクリメントされる。ステップＳ８３において、カウント部２２により、送信部１２によるフレームの送信数ｌが１だけインクリメントされる。
【００８２】
ステップＳ８４において、送信部１２により、ｉ番目のフレームが送信される。ステップＳ８５において、判定部２１により、受信部１３からの適用レート判断情報に基づいて、ステップＳ８４で送信されたｉ番目のフレームの送信の成否が判定される。送信成功と判定された場合、処理はステップＳ８６に進められる。
【００８３】
ステップＳ８６において、判定部２１により、フレーム数ｌが、MCSを上げるときの送信失敗率の閾値であるｐを大きくする際の判断基準となるフレーム数ｆと等しく、且つ、フレームの送信失敗数ｓをフレームの送信数ｌで乗算した値ｓ／ｌが閾値ｃより小さく、且つ、現在のMCSは直前にそのレベルが１段階上げられたものであるか否かが判定される。この判定結果が肯定である場合、処理はステップＳ８７に進められる。反対に、この判定結果が否定である場合、ステップＳ８７はスキップされる。
【００８４】
ステップＳ８７において、閾値設定部２３により、閾値ｐとフレーム数ｅが変更される。具体的には、現状の閾値ｐに係数ｋ７を乗算した値と、閾値ｐの最大値ｐｍａｘが比較され、それらの小さい方の値に閾値ｐが変更される。また、現状のフレーム数ｅに係数ｋ８を乗算した値と、フレーム数ｅの最小値ｅｍｉｎが比較され、それらの大きい方の値にフレーム数ｅが変更される。
【００８５】
ステップＳ８８において、判定部２１により、送信したフレーム数ｌが、送信失敗率ｒの算出期間を表すフレーム数ｅと異なるか否かが判定される。この判定結果が否定である（フレーム数ｌがフレーム数ｅと等しい）場合、処理はステップＳ８９に進められる。
【００８６】
ステップＳ８９において、判定部２１により、フレームの送信失敗数ｓをフレームの送信数ｌで乗算した値ｓ／ｌが閾値ｐより小さく、且つ、現在のMCSのレベルが最上位ではないか否かが判定される。この判定結果が肯定である場合、処理はステップＳ９０に進められる。ステップＳ９０において、レート決定部２４により、MCSが１段階高いレベルに変更される。また、カウント部２２により、MCSのレベルが１段階上げられてから１度もフレームの送信が成功していないことを示すフラグrecがTrueに変更される。この後、処理はステップＳ９２に進められる。
【００８７】
一方、ステップＳ８９における判定結果が否定である場合、処理はステップＳ９１に進められる。ステップＳ９１において、また、カウント部２２により、フラグrecがFalseに変更される。この後、処理はステップＳ９２に進められる。ステップＳ９２において、カウント部２２により、フレームの送信失敗回数ｓと、送信したフレーム数ｌが０に初期化される。
【００８８】
ステップＳ９３において、判定部２１により、送信したフレームの番号ｉが転送フレーム数ｎｄに達していないか否かが判定される。この判定結果が否定である（フレームの番号ｉが転送フレーム数ｎｄに達している）場合、第２の適応レート制御処理は終了される。この判定結果が否定である（フレームの番号ｉが転送フレーム数ｎｄに達していない）場合、処理はステップＳ８２に戻されて、それ以降が繰り返される。
【００８９】
なお、ステップＳ８５において、ステップＳ８４で送信されたｉ番目のフレームの送信が失敗と判定された場合、処理はステップＳ９４に進められる。ステップＳ９４において、カウント部２２により、フレームの送信失敗回数ｓが１だけインクリメントされる。
【００９０】
ステップＳ９５において、判定部２１により、フレームの送信失敗回数ｓが１であり、且つ、フラグrecがTrueであるか否かが判定される。この判定結果が否定である（送信失敗回数ｓが１ではない、またはフラグrecがFalseである）場合、処理はステップＳ９６に進められる。ステップＳ９６において、判定部２１により、送信したフレーム数ｌが閾値ｅに達していないか否かが判定される。この判定結果が肯定である（送信したフレーム数ｌが閾値ｅに達していない）場合、処理はステップＳ８３に戻されて、それ以降が繰り返される。
【００９１】
ステップＳ９６の判定結果が否定である（送信したフレーム数ｌが閾値ｅに達している）場合、処理はステップＳ９７に進められる。ステップＳ９７において、判定部２１により、フレームの送信失敗数ｓをフレームの送信数ｌで乗算した値ｓ／ｌが閾値ｑより大きいか否かが判定される。この判定結果が肯定である場合、処理はステップＳ９９に進められ、否定である場合、処理はステップＳ１０１に進められる。
【００９２】
一方、ステップＳ９５の判定結果が肯定である（フレームの送信失敗回数ｓが１であり、且つ、フラグrecがTrueである）場合、処理はステップＳ９８に進められる。ステップＳ９８において、閾値設定部２３により、閾値ｐとフレーム数ｅが変更される。具体的には、現状の閾値ｐに係数ｋ５を乗算した値と、閾値ｐの最小値ｐｍｉｎが比較され、それらの大きい方の値に閾値ｐが変更される。また、現状のフレーム数ｅに係数ｋ６を乗算した値と、フレーム数ｅの最大値ｅｍａｘが比較され、それらの小さい方の値にフレーム数ｅが変更される。
【００９３】
ステップＳ９９において、判定部２１により、現在のMCSのレベルが最下位ではないか否かが判定される。この判定結果が肯定である（現在のMCSのレベルが最下位ではない）場合、処理はステップＳ１００に進められる。反対に、この判定結果が否定である（現在のMCSのレベルが最下位である）場合、ステップＳ１００はスキップされる。ステップＳ１００において、レート決定部２４により、MCSが１段階低いレベルに変更される。この後、処理はステップＳ１０１に進められる。
【００９４】
ステップＳ１０１において、カウント部２２により、フレームの送信失敗回数ｓと、送信したフレーム数ｌが０に初期化され、フラグrecがFalseに変更される。この後、処理は、ステップＳ８３に戻されて、それ以降が繰り返される。
【００９５】
以上説明した第２の適応レート制御処理では、要するに、所定の期間ｅ（フレームをｅ回送信する期間）におけるフレームの送信失敗率ｒが閾値ｐよりも小さい場合にMCSを１段階高いレベルに引き上げ、送信失敗率ｒが閾値ｑよりも大きい場合にMCSを１段階低いレベルに引き下げる。さらに、MCSを１段階高いレベルに引き上げた直後に送信が失敗した場合には閾値ｐを小さくし、MCSを１段階高いレベルに引き上げた後に送信失敗率ｒが閾値ｃよりも小さくなった場合には閾値ｐを大きくする。さらに、閾値ｐを小さくするに際しては、期間ｅを長くし、反対に、閾値ｐを大きくするに際しては期間ｅを短くするような制御を行っている。
【００９６】
なお、MCSを１段階高いレベルに引き上げた直後の送信失敗確率ｒは、期間ｅよりも短い期間ｆ（フレームをｆ回送信する期間）における送信失敗の確率を計算することが望ましく、閾値ｃは閾値ｐの初期値ｐｍａｘとすることが望ましく、期間ｆは期間ｅの初期値とすることが望ましい。
【００９７】
第２の適応レート制御処理によれば、第１の適応レート制御処理と同様、ARF処理に比較して、MCSの初期引き込み性能の劣化を生じさせることなく、フレームの送信成功確率を向上させることができる。
【００９８】
なお、フレームの送信失敗確率ｒと閾値とを比較する代わりに、ｒに基づいて計算される値ｒ’とそれに合わせて調整した閾値とを比較するようにしてもよい。
【００９９】
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【０１００】
図１５は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０１０１】
このコンピュータ２００において、CPU（Central Processing Unit）２０１，ROM（Read Only Memory）２０２，RAM（Random Access Memory）２０３は、バス２０４により相互に接続されている。
【０１０２】
バス２０４には、さらに、入出力インタフェース２０５が接続されている。入出力インタフェース２０５には、入力部２０６、出力部２０７、記憶部２０８、通信部２０９、およびドライブ２１０が接続されている。
【０１０３】
入力部２０６は、キーボード、マウス、マイクロフォンなどよりなる。出力部２０７は、ディスプレイ、スピーカなどよりなる。記憶部２０８は、ハードディスクや不揮発性のメモリなどよりなる。通信部２０９は、ネットワークインタフェースなどよりなる。ドライブ２１０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア２１１を駆動する。
【０１０４】
以上のように構成されるコンピュータ２００では、CPU２０１が、例えば、記憶部２０８に記憶されているプログラムを、入出力インタフェース２０５およびバス２０４を介して、RAM２０３にロードして実行することにより、上述した一連の処理が行われる。
【０１０５】
なお、コンピュータ２００が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであってもよいし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであってもよい。
【０１０６】
本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
【０１０７】
本開示は以下のような構成も取ることができる。
（１）
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備え、
前記適応レート制御部は、
前記フレーム単位での送信成功回数ｎまたは前記送信成功回数ｎに基づく値ｎ’が第１の閾値以上となった場合には前記MCSを高いレベルに引き上げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を大きくし、
前記MCSを高いレベルに引き上げた後に前記フレーム単位での送信成功回数ｎまたは前記送信成功回数ｎに基づく値ｎ’が第２の閾値以上となった場合には前記第１の閾値を小さくする
送信装置。
（２）
前記第２の閾値は、前記第１の閾値の初期値である
前記（１）に記載の送信装置。
（３）
前記適応レート制御部は、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記MCSを低いレベルに引き下げる
前記（１）または（２）に記載の送信装置。
（４）
前記適応レート制御部は、受信側から送信されるACKフレームに基づき、前記フレーム単位での送信の成否を判定する
前記（１）から（３）のいずれかに記載の送信装置。
（５）
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の送信方法において、
前記適応レート制御部による、
前記フレーム単位での送信成功回数ｎまたは前記送信成功回数ｎに基づく値ｎ’が第１の閾値以上となった場合には前記MCSを高いレベルに引き上げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を大きくし、
前記MCSを高いレベルに引き上げた後に前記フレーム単位での送信成功回数ｎまたは前記送信成功回数ｎに基づく値ｎ’が第２の閾値以上となった場合には前記第１の閾値を小さくする
ステップを含む送信方法。
（６）
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の制御用のプログラムであって、
前記適応レート制御部に、
前記フレーム単位での送信成功回数ｎまたは前記送信成功回数ｎに基づく値ｎ’が第１の閾値以上となった場合には前記MCSを高いレベルに引き上げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を大きくし、
前記MCSを高いレベルに引き上げた後に前記フレーム単位での送信成功回数ｎまたは前記送信成功回数ｎに基づく値ｎ’が第２の閾値以上となった場合には前記第１の閾値を小さくする
ステップを含む処理を送信装置のコンピュータに実行させるプログラム。
（７）
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備え、
前記適応レート制御部は、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第１の閾値未満となった場合には前記MCSを高いレベルに引き上げ、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第２の閾値以上となった場合には前記MCSを低いレベルに引き下げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を小さくし、
前記MCSを高いレベルに引き上げた後に前記送信失敗確率ｒまたは前記値ｒ’が第３の閾値未満となった場合には前記第１の閾値を大きくする
送信装置。
（８）
前記第３の閾値は、前記第１の閾値の初期値である
前記（７）に記載の送信装置。
（９）
前記適応レート制御部は、
前記第１の閾値を小さくするに際して前記送信失敗確率ｒの算出期間を長くし、
前記第１の閾値を大きくするに際して前記送信失敗確率ｒの算出期間を短くする
前記（７）または（８）に記載の送信装置。
（１０）
前記適応レート制御部は、
前記MCSを高いレベルに引き上げた後、送信失敗確率ｒの算出期間を短くする
前記（７）から（９）のいずれかに記載の送信装置。
（１１）
前記適応レート制御部は、
前記MCSを高いレベルに引き上げた後、送信失敗確率ｒの算出期間を初期化する
前記（７）から（９）のいずれかに記載の送信装置。
（１２）
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の送信方法において、
前記適応レート制御部による、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第１の閾値未満となった場合には前記MCSを高いレベルに引き上げ、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第２の閾値以上となった場合には前記MCSを低いレベルに引き下げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を小さくし、
前記MCSを高いレベルに引き上げた後に前記送信失敗確率ｒまたは前記値ｒ’が第３の閾値未満となった場合には前記第１の閾値を大きくする
ステップを含む送信方法。
（１３）
データを送信する際に適用するMCS(Modulation Coding Scheme)を通信状況に応じて制御する適応レート制御部と、
前記適応レート制御部により決定された前記MCSを用いて前記データを変調符号化し、その結果得られる送信データをフレーム単位で送信する送信部とを備える送信装置の制御用のプログラムであって、
前記適応レート制御部に、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第１の閾値未満となった場合には前記MCSを高いレベルに引き上げ、
前記フレーム単位での送信失敗確率ｒまたは前記送信失敗確率ｒに基づく値ｒ’が第２の閾値以上となった場合には前記MCSを低いレベルに引き下げ、
前記MCSを高いレベルに引き上げた直後に前記フレーム単位での送信が失敗した場合には前記第１の閾値を小さくし、
前記MCSを高いレベルに引き上げた後に前記送信失敗確率ｒまたは前記値ｒ’が第３の閾値未満となった場合には前記第１の閾値を大きくする
ステップを含む処理を送信装置のコンピュータに実行させるプログラム。
【符号の説明】
【０１０８】
１０  送信装置，  １１  適応レート制御部，  １２  送信部，  １３  受信部，  ２１  判定部，  ２２  カウント部，  ２３  閾値設定部，  ２４  レート決定部，  ２５  確率算出部，  ２００  コンピュータ，  ２０１  CPU
【図１】
0006271466.tif 000002
【図２】
0006271466.tif 000003
【図３】
0006271466.tif 000004
【図４】
0006271466.tif 000005
【図５】
0006271466.tif 000006
【図６】
0006271466.tif 000007
【図７】
0006271466.tif 000008
【図８】
0006271466.tif 000009
【図９】
0006271466.tif 000010
【図１０】
0006271466.tif 000011
【図１１】
0006271466.tif 000012
【図１２】
0006271466.tif 000013
【図１３】
0006271466.tif 000014
【図１４】
0006271466.tif 000015
【図１５】
0006271466.tif 000016