(57)【特許請求の範囲】
【請求項１】
送信データを変調し、無線伝送路を介して受信装置へ送信するデータ伝送装置において、
前記送信データに対する確認応答のＡＣＫを含むデータを、前記受信装置から受信して復調する受信復調部、前記受信装置により送信されたデータについての電波の電界強度を測定する電界強度測定部、前記電界強度測定部により測定された電界強度に基づいて変調方式を決定する変調方式決定部、及び、前記変調方式決定部により決定された変調方式に従って送信データを変調し、無線伝送路へ送信する変調送信部を有する送信部と、
前記送信部の変調方式決定部により決定された変調方式に基づいて、送信レートを決定する送信レート決定部、送信対象のデータにＴＣＰ／ＩＰヘッダを付加して出力するヘッダ付加部、及び、前記ヘッダ付加部により出力されたデータを格納し、前記格納したデータを送信データとして、前記送信レート決定部により決定された送信レートにて読み出し、送信量を調節する送信量調節バッファを有するＴＣＰ／ＩＰ処理部と、を備え、
前記ＴＣＰ／ＩＰ処理部の送信レート決定部は、
前記変調方式に基づいて送信可能な最大レートを算出し、変調方式が切り替わる場合の切り替え後の変調方式における送信可能な最大レートが、切り替え前の現在の変調方式における送信可能な最大レート以下の場合に、
前記切り替え後の変調方式における送信可能な最大レート以下の送信レートにて前記送信データを読み出すための指示を前記送信量調節バッファに出力し、前記指示を前記送信量調節バッファに出力してから、前記指示により送信レートが低下した送信データを前記送信部の変調送信部にて変調可能な所定時間が経過した後に、新たな変調方式に切り替えるための指示を前記送信部の変調送信部に出力し、
前記切り替え後の変調方式における送信可能な最大レートが、前記切り替え前の現在の変調方式における送信可能な最大レートよりも高い場合に、
前記新たな変調方式に切り替えるための指示を前記送信部の変調送信部に出力し、前記送信部の変調送信部から、前記新たな変調方式に切り替わったことを示す変調方式切替完了を入力した後に、または、前記指示を前記送信部の変調送信部に出力してから、前記指示により前記新たな変調方式に切り替わる所定時間が経過した後に、前記切り替え後の変調方式における送信可能な最大レート以下の送信レートにて前記送信データを読み出すための指示を前記送信量調節バッファに出力する、ことを特徴とするデータ伝送装置。
【請求項２】
送信データを変調し、無線伝送路を介して受信装置へ送信するデータ伝送装置において、
前記送信データに対する確認応答のＡＣＫを含むデータを、前記受信装置から受信して復調する受信復調部、前記受信装置により送信されたデータについての電波の電界強度を測定する電界強度測定部、前記電界強度測定部により測定された電界強度に基づいて変調方式を決定する変調方式決定部、及び、前記変調方式決定部により決定された変調方式に従って送信データを変調し、無線伝送路へ送信する変調送信部を有する送信部と、
前記送信部の変調方式決定部により決定された変調方式に基づいて、送信レートを決定する送信レート決定部、送信対象のデータにＴＣＰ／ＩＰヘッダを付加して出力するヘッダ付加部、及び、前記ヘッダ付加部により出力されたデータを格納し、前記格納したデータを送信データとして、前記送信レート決定部により決定された送信レートにて読み出し、送信量を調節する送信量調節バッファを有するＴＣＰ／ＩＰ処理部と、を備え、
前記送信部の変調送信部は、前記送信データを一時的に保持する送信バッファを有し、
前記ＴＣＰ／ＩＰ処理部の送信レート決定部は、
前記送信部の変調方式決定部により決定された変調方式、及び前記送信部の変調送信部における送信バッファに保持された送信データの量に基づいて、送信レートを決定する、ことを特徴とするデータ伝送装置。
【請求項３】
請求項２に記載のデータ伝送装置において、
前記ＴＣＰ／ＩＰ処理部の送信レート決定部は、
前記変調方式が切り替わる場合の切り替え後の変調方式に基づいて、送信可能な最大レートを算出し、前記送信バッファに保持された送信データの量の変化に基づいて送信バッファ内データレートを算出し、前記送信可能な最大レートから前記送信バッファ内データレートを減算して送信レートを決定する、ことを特徴とするデータ伝送装置。
【請求項４】
送信データを変調し、無線伝送路を介して受信装置へ送信するデータ伝送装置において、
前記送信データに対する確認応答のＡＣＫを含むデータを、前記受信装置から受信して復調する受信復調部、前記受信装置により送信されたデータについての電波の電界強度を測定する電界強度測定部、前記電界強度測定部により測定された電界強度に基づいて変調方式を決定する変調方式決定部、及び、前記変調方式決定部により決定された変調方式に従って送信データを変調し、無線伝送路へ送信する変調送信部を有する送信部と、
前記送信部の変調方式決定部により決定された変調方式に基づいて、送信レートを決定する送信レート決定部、送信対象のデータにＴＣＰ／ＩＰヘッダを付加して出力するヘッダ付加部、及び、前記ヘッダ付加部により出力されたデータを格納し、前記格納したデータを送信データとして、前記送信レート決定部により決定された送信レートにて読み出し、送信量を調節する送信量調節バッファを有するＴＣＰ／ＩＰ処理部と、を備え、
さらに、仮想送信量カウント部を備え、
前記仮想送信量カウント部は、前記送信部の受信復調部が所定時間内にＡＣＫを受信しない場合に、前記ＡＣＫを受信していたならば送信データを送信していたと想定されるデータ量を仮想送信量としてカウントし、
前記ＴＣＰ／ＩＰ処理部の送信レート決定部は、
前記送信部の変調方式決定部により決定された変調方式、及び前記仮想送信量カウント部によりカウントされた仮想送信量に基づいて、送信レートを決定する、ことを特徴とするデータ伝送装置。
【請求項５】
請求項４に記載のデータ伝送装置において、
前記ＴＣＰ／ＩＰ処理部の送信レート決定部は、
前記変調方式が切り替わる場合の切り替え後の変調方式に基づいて、送信可能な最大レートを算出し、前記送信可能な最大レートから前記仮想送信量を減算して送信レートを決定する、ことを特徴とするデータ伝送装置。
【請求項６】
送信データを変調し、無線伝送路を介して受信装置へ送信するデータ伝送装置において、
前記送信データに対する確認応答のＡＣＫを含むデータを、前記受信装置から受信して復調する受信復調部、前記受信装置により送信されたデータについての電波の電界強度を測定する電界強度測定部、前記電界強度測定部により測定された電界強度に基づいて変調方式を決定する変調方式決定部、及び、前記変調方式決定部により決定された変調方式に従って送信データを変調し、無線伝送路へ送信する変調送信部を有する送信部と、
前記送信部の変調方式決定部により決定された変調方式に基づいて、送信レートを決定する送信レート決定部、送信対象のデータにＴＣＰ／ＩＰヘッダを付加して出力するヘッダ付加部、及び、前記ヘッダ付加部により出力されたデータを格納し、前記格納したデータを送信データとして、前記送信レート決定部により決定された送信レートにて読み出し、送信量を調節する送信量調節バッファを有するＴＣＰ／ＩＰ処理部と、を備え、
さらに、位置情報測定部及び第２の送信レート決定部を備え、
前記位置情報測定部は、当該データ伝送装置の位置を測定して位置情報を生成し、
前記第２の送信レート決定部は、位置情報と送信レートとが対応して格納されたテーブルを有し、前記位置情報測定部により生成された位置情報、並びに前記テーブルに格納された位置情報及び送信レートに基づいて、送信レートを決定し、
前記ＴＣＰ／ＩＰ処理部の送信量調節バッファは、ＴＣＰ／ＩＰ処理部の送信レート決定部により決定された送信レートよりも優先して、前記第２の送信レート決定部により決定された送信レートにて送信量を調節する、ことを特徴とするデータ伝送装置。
【請求項７】
請求項１〜５までのいずれか一項に記載のデータ伝送装置において、
さらに、位置情報測定部及び第２の送信レート決定部を備え、
前記位置情報測定部は、当該データ伝送装置の位置を測定して位置情報を生成し、
前記第２の送信レート決定部は、位置情報と送信レートとが対応して格納されたテーブルを有し、前記位置情報測定部により生成された位置情報、並びに前記テーブルに格納された位置情報及び送信レートに基づいて、送信レートを決定し、
前記ＴＣＰ／ＩＰ処理部の送信量調節バッファは、ＴＣＰ／ＩＰ処理部の送信レート決定部により決定された送信レートよりも優先して、前記第２の送信レート決定部により決定された送信レートにて送信量を調節する、ことを特徴とするデータ伝送装置。
【請求項８】
請求項６または７に記載のデータ伝送装置において、
前記第２の送信レート決定部は、
前記位置情報測定部により生成された位置情報が前記テーブルに格納されているか否かを判定し、前記位置情報が格納されていない場合、前記現在の変調方式に基づいて、現在の送信可能な最大レートを算出し、前記現在の送信可能な最大レートを前記位置情報に対応する送信レートとして前記テーブルに格納し、前記位置情報が格納されている場合、前記位置情報に対応する送信レートを前記テーブルから読み出す、ことを特徴とするデータ伝送装置。
【請求項９】
請求項８に記載のデータ伝送装置において、
前記第２の送信レート決定部は、
前記現在の変調方式に基づいて、現在の送信可能な最大レートを算出し、前記テーブルから読み出した、前記位置情報に対応する送信レートと、前記現在の送信可能な最大レートとを比較し、前記読み出した送信レートが前記現在の送信可能な最大レート以下の場合、前記ＴＣＰ／ＩＰ処理部の送信量調節バッファに、前記読み出した送信レートにて送信量を調節させる、ことを特徴とするデータ伝送装置。
【請求項１０】
請求項９に記載のデータ伝送装置において、
前記第２の送信レート決定部は、
前記読み出した送信レートが前記現在の送信可能な最大レートよりも高い場合、所定時間経過後に、または、前記現在の送信可能な最大レートが所定のレートにまで高くなった後に、前記ＴＣＰ／ＩＰ処理部の送信量調節バッファに、前記読み出した送信レートにて送信量を調節させる、ことを特徴とするデータ伝送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線ＬＡＮによりデータを伝送するデータ伝送装置に関する。
【背景技術】
【０００２】
無線通信に関する各種手順を標準化した規格としてＩＥＥＥ８０２．１１が知られており、この規格に従った一連の伝送方式を利用した無線ＬＡＮが広く普及している。無線ＬＡＮによりデータを伝送するシステムでは、搬送波対ノイズ比（Ｃ／Ｎ比）によって、周波数帯域あたりの伝送可能なビットレート（伝送レート）が変化する。すなわち、無線ＬＡＮによりデータを伝送する送受信装置間の距離、または送受信装置間内の電波伝搬を妨げる障害物の有無によって、無線ＬＡＮの伝送路（無線伝送路）の伝搬状況が変化し、伝送レートが変動する。
【０００３】
一方、無線ＬＡＮの上位の伝送プロトコルとして、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）が一般に利用されている。ＴＣＰは、伝送路にて失われたパケットを再送することにより、パケットロスを回復する機能を提供する。また、パケットロスが発生した際には、伝送レートを下げて、経路を共有する他のトラフィックに帯域を譲る輻輳制御機能も提供する。伝送レートを調節する輻輳制御機能には多くの方式があるが、パケットロスが発生しない場合には少しずつ伝送レートを上げ、パケットロスが発生すると伝送レートを半分に下げるように制御するＴＣＰ−Ｒｅｎｏ方式が一般的である。
【０００４】
無線伝送路にてパケットロスが発生すると、無線ＬＡＮ装置であるデータ伝送装置は、まず始めにＩＥＥＥ８０２．１１で規定される手順に従い、装置内の再送機能によってパケットロスの回復を試みる。しかし、データ伝送装置は、パケットを規定回数以上再送してもパケットロスを回復できない場合、そのパケットを装置内で破棄し、次にＴＣＰによる再送機能によってパケットロスの回復を試みる。このとき、ＴＣＰの輻輳制御機能も同時に動作するが、この機能は、本来他のトラフィックとの競合を回避することを目的としている。そのため、無線伝送路でのパケットロスに対して、必要以上に伝送レートを下げてしまい、無線伝送路の伝送可能帯域を効率良く利用することができないという問題があった。
【０００５】
このような問題を解決するために、無線伝送路での利用を想定した、伝送可能帯域の利用率を向上させるための輻輳制御方式が開示されている（例えば、特許文献１，２を参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−１６７３５３号公報
【特許文献２】特表２００７−５０４６９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１，２に記載された輻輳制御方式は、ＴＣＰによるパケットの到着確認（ＡＣＫ）を行い、これに伴うパケットロスを検出することを契機にして輻輳制御を行うものである。すなわち、この輻輳制御方式では、無線伝送路のリンク状況が悪化すると、データ伝送装置内で変調方式が変更され、伝送可能なレートが下がった後に、実際にパケットロスが発生してからレートが変更される。そのため、急激に無線伝送路のリンク状況が悪化した場合には、レートが変更された後もしばらくはＴＣＰによるパケットの再送は避けられず、無線伝送路の伝送可能帯域を効率良く利用することができないという問題があった。
【０００８】
そこで、本発明は前記課題を鑑み、その目的は、無線伝送路のリンク状況が悪化して伝送レートが下がった場合であっても、無線伝送路の伝送可能帯域を効率良く利用可能なデータ伝送装置を提供することにある。
【課題を解決するための手段】
【０００９】
前記目的を達成するために、請求項１のデータ伝送装置は、送信データを変調し、無線伝送路を介して受信装置へ送信するデータ伝送装置において、前記送信データに対する確認応答のＡＣＫを含むデータを、前記受信装置から受信して復調する受信復調部、前記受信装置により送信されたデータについての電波の電界強度を測定する電界強度測定部、前記電界強度測定部により測定された電界強度に基づいて変調方式を決定する変調方式決定部、及び、前記変調方式決定部により決定された変調方式に従って送信データを変調し、無線伝送路へ送信する変調送信部を有する送信部と、前記送信部の変調方式決定部により決定された変調方式に基づいて、送信レートを決定する送信レート決定部、送信対象のデータにＴＣＰ／ＩＰヘッダを付加して出力するヘッダ付加部、及び、前記ヘッダ付加部により出力されたデータを格納し、前記格納したデータを送信データとして、前記送信レート決定部により決定された送信レートにて読み出し、送信量を調節する送信量調節バッファを有するＴＣＰ／ＩＰ処理部と、を備え、前記ＴＣＰ／ＩＰ処理部の送信レート決定部が、前記変調方式に基づいて送信可能な最大レートを算出し、変調方式が切り替わる場合の切り替え後の変調方式における送信可能な最大レートが、切り替え前の現在の変調方式における送信可能な最大レート以下の場合に、前記切り替え後の変調方式における送信可能な最大レート以下の送信レートにて前記送信データを読み出すための指示を前記送信量調節バッファに出力し、前記指示を前記送信量調節バッファに出力してから、前記指示により送信レートが低下した送信データを前記送信部の変調送信部にて変調可能な所定時間が経過した後に、新たな変調方式に切り替えるための指示を前記送信部の変調送信部に出力し、前記切り替え後の変調方式における送信可能な最大レートが、前記切り替え前の現在の変調方式における送信可能な最大レートよりも高い場合に、前記新たな変調方式に切り替えるための指示を前記送信部の変調送信部に出力し、前記送信部の変調送信部から、前記新たな変調方式に切り替わったことを示す変調方式切替完了を入力した後に、または、前記指示を前記送信部の変調送信部に出力してから、前記指示により前記新たな変調方式に切り替わる所定時間が経過した後に、前記切り替え後の変調方式における送信可能な最大レート以下の送信レートにて前記送信データを読み出すための指示を前記送信量調節バッファに出力する、ことを特徴とする。
【００１２】
また、請求項２のデータ伝送装置は、送信データを変調し、無線伝送路を介して受信装置へ送信するデータ伝送装置において、前記送信データに対する確認応答のＡＣＫを含むデータを、前記受信装置から受信して復調する受信復調部、前記受信装置により送信されたデータについての電波の電界強度を測定する電界強度測定部、前記電界強度測定部により測定された電界強度に基づいて変調方式を決定する変調方式決定部、及び、前記変調方式決定部により決定された変調方式に従って送信データを変調し、無線伝送路へ送信する変調送信部を有する送信部と、前記送信部の変調方式決定部により決定された変調方式に基づいて、送信レートを決定する送信レート決定部、送信対象のデータにＴＣＰ／ＩＰヘッダを付加して出力するヘッダ付加部、及び、前記ヘッダ付加部により出力されたデータを格納し、前記格納したデータを送信データとして、前記送信レート決定部により決定された送信レートにて読み出し、送信量を調節する送信量調節バッファを有するＴＣＰ／ＩＰ処理部と、を備え、前記送信部の変調送信部が、前記送信データを一時的に保持する送信バッファを有し、前記ＴＣＰ／ＩＰ処理部の送信レート決定部が、前記送信部の変調方式決定部により決定された変調方式、及び前記送信部の変調送信部における送信バッファに保持された送信データの量に基づいて、送信レートを決定する、ことを特徴とする。
【００１３】
また、請求項３のデータ伝送装置は、請求項２に記載のデータ伝送装置において、前記ＴＣＰ／ＩＰ処理部の送信レート決定部が、前記変調方式が切り替わる場合の切り替え後の変調方式に基づいて、送信可能な最大レートを算出し、前記送信バッファに保持された送信データの量の変化に基づいて送信バッファ内データレートを算出し、前記送信可能な最大レートから前記送信バッファ内データレートを減算して送信レートを決定する、ことを特徴とする。
【００１４】
また、請求項４のデータ伝送装置は、送信データを変調し、無線伝送路を介して受信装置へ送信するデータ伝送装置において、前記送信データに対する確認応答のＡＣＫを含むデータを、前記受信装置から受信して復調する受信復調部、前記受信装置により送信されたデータについての電波の電界強度を測定する電界強度測定部、前記電界強度測定部により測定された電界強度に基づいて変調方式を決定する変調方式決定部、及び、前記変調方式決定部により決定された変調方式に従って送信データを変調し、無線伝送路へ送信する変調送信部を有する送信部と、前記送信部の変調方式決定部により決定された変調方式に基づいて、送信レートを決定する送信レート決定部、送信対象のデータにＴＣＰ／ＩＰヘッダを付加して出力するヘッダ付加部、及び、前記ヘッダ付加部により出力されたデータを格納し、前記格納したデータを送信データとして、前記送信レート決定部により決定された送信レートにて読み出し、送信量を調節する送信量調節バッファを有するＴＣＰ／ＩＰ処理部と、を備え、さらに、仮想送信量カウント部を備え、前記仮想送信量カウント部が、前記送信部の受信復調部が所定時間内にＡＣＫを受信しない場合に、前記ＡＣＫを受信していたならば送信データを送信していたと想定されるデータ量を仮想送信量としてカウントし、前記ＴＣＰ／ＩＰ処理部の送信レート決定部が、前記送信部の変調方式決定部により決定された変調方式、及び前記仮想送信量カウント部によりカウントされた仮想送信量に基づいて、送信レートを決定する、ことを特徴とする。
【００１５】
また、請求項５のデータ伝送装置は、請求項４に記載のデータ伝送装置において、前記ＴＣＰ／ＩＰ処理部の送信レート決定部が、前記変調方式が切り替わる場合の切り替え後の変調方式に基づいて、送信可能な最大レートを算出し、前記送信可能な最大レートから前記仮想送信量を減算して送信レートを決定する、ことを特徴とする。
【００１６】
また、請求項６のデータ伝送装置は、送信データを変調し、無線伝送路を介して受信装置へ送信するデータ伝送装置において、前記送信データに対する確認応答のＡＣＫを含むデータを、前記受信装置から受信して復調する受信復調部、前記受信装置により送信されたデータについての電波の電界強度を測定する電界強度測定部、前記電界強度測定部により測定された電界強度に基づいて変調方式を決定する変調方式決定部、及び、前記変調方式決定部により決定された変調方式に従って送信データを変調し、無線伝送路へ送信する変調送信部を有する送信部と、前記送信部の変調方式決定部により決定された変調方式に基づいて、送信レートを決定する送信レート決定部、送信対象のデータにＴＣＰ／ＩＰヘッダを付加して出力するヘッダ付加部、及び、前記ヘッダ付加部により出力されたデータを格納し、前記格納したデータを送信データとして、前記送信レート決定部により決定された送信レートにて読み出し、送信量を調節する送信量調節バッファを有するＴＣＰ／ＩＰ処理部と、を備え、さらに、位置情報測定部及び第２の送信レート決定部を備え、前記位置情報測定部が、当該データ伝送装置の位置を測定して位置情報を生成し、前記第２の送信レート決定部が、位置情報と送信レートとが対応して格納されたテーブルを有し、前記位置情報測定部により生成された位置情報、並びに前記テーブルに格納された位置情報及び送信レートに基づいて、送信レートを決定し、前記ＴＣＰ／ＩＰ処理部の送信量調節バッファが、ＴＣＰ／ＩＰ処理部の送信レート決定部により決定された送信レートよりも優先して、前記第２の送信レート決定部により決定された送信レートにて送信量を調節する、ことを特徴とする。
また、請求項７のデータ伝送装置は、請求項１〜５までのいずれか一項に記載のデータ伝送装置において、さらに、位置情報測定部及び第２の送信レート決定部を備え、前記位置情報測定部が、当該データ伝送装置の位置を測定して位置情報を生成し、前記第２の送信レート決定部が、位置情報と送信レートとが対応して格納されたテーブルを有し、前記位置情報測定部により生成された位置情報、並びに前記テーブルに格納された位置情報及び送信レートに基づいて、送信レートを決定し、前記ＴＣＰ／ＩＰ処理部の送信量調節バッファが、ＴＣＰ／ＩＰ処理部の送信レート決定部により決定された送信レートよりも優先して、前記第２の送信レート決定部により決定された送信レートにて送信量を調節する、ことを特徴とする。
【００１７】
また、請求項８のデータ伝送装置は、請求項６または７に記載のデータ伝送装置において、前記第２の送信レート決定部が、前記位置情報測定部により生成された位置情報が前記テーブルに格納されているか否かを判定し、前記位置情報が格納されていない場合、前記現在の変調方式に基づいて、現在の送信可能な最大レートを算出し、前記現在の送信可能な最大レートを前記位置情報に対応する送信レートとして前記テーブルに格納し、前記位置情報が格納されている場合、前記位置情報に対応する送信レートを前記テーブルから読み出す、ことを特徴とする。
【００１８】
また、請求項９のデータ伝送装置は、請求項８に記載のデータ伝送装置において、前記第２の送信レート決定部が、前記現在の変調方式に基づいて、現在の送信可能な最大レートを算出し、前記テーブルから読み出した、前記位置情報に対応する送信レートと、前記現在の送信可能な最大レートとを比較し、前記読み出した送信レートが前記現在の送信可能な最大レート以下の場合、前記ＴＣＰ／ＩＰ処理部の送信量調節バッファに、前記読み出した送信レートにて送信量を調節させる、ことを特徴とする。
【００１９】
また、請求項１０のデータ伝送装置は、請求項９に記載のデータ伝送装置において、前記第２の送信レート決定部が、前記読み出した送信レートが前記現在の送信可能な最大レートよりも高い場合、所定時間経過後に、または、前記現在の送信可能な最大レートが所定のレートにまで高くなった後に、前記ＴＣＰ／ＩＰ処理部の送信量調節バッファに、前記読み出した送信レートにて送信量を調節させる、ことを特徴とする。
【発明の効果】
【００２０】
以上のように、本発明によれば、無線伝送路のリンク状況が悪化して伝送レートが下がった場合であっても、無線伝送路の伝送可能帯域を効率良く利用することが可能となる。また、各伝送アプリケーションが利用する共通の通信プロトコルであるＴＣＰの処理を改良するようにしたから、従来の伝送アプリケーションを変更することなく、無線伝送路の伝送可能帯域を効率良く利用した高速なデータ伝送が可能となる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施形態による送信装置（データ伝送装置）を含む伝送システムの全体構成を示す概略図である。
【図２】本発明の第１の実施形態（実施例１）による送信装置の構成を示すブロック図である。
【図３】実施例１の輻輳ウィンドウ制御部による処理を示すフローチャートである。
【図４】本発明の第２の実施形態（実施例２）による送信装置の構成を示すブロック図である。
【図５】実施例２の輻輳ウィンドウ制御部による処理を示すフローチャートである。
【図６】本発明の第３の実施形態（実施例３）による送信装置の構成を示すブロック図である。
【図７】実施例３の輻輳ウィンドウ制御部による処理を示すフローチャートである。
【図８】本発明の第４の実施形態（実施例４）による送信装置の構成を示すブロック図である。
【図９】実施例４の位置−送信レートテーブル保持部による処理を示すフローチャートである。
【図１０】本発明の第５の実施形態（実施例５）による送信装置の構成を示すブロック図である。
【発明を実施するための形態】
【００２２】
以下、本発明を実施するための形態について図面を用いて詳細に説明する。
〔全体システム〕
まず、本発明の実施形態による送信装置を含む伝送システムについて説明する。図１は、伝送システムの全体構成を示す概略図である。この伝送システムは、送信装置１及び受信装置２を備えて構成され、無線伝送路によりデータ伝送を行う。送信装置１及び受信装置２はデータ伝送装置であり、無線伝送路により双方向の伝送が可能であるが、以下、データ伝送装置の処理を明確に説明するために、送信装置１から受信装置２へデータを送信する場合について説明する。
【００２３】
送信装置１は、送信アプリケーション（伝送アプリケーション）により、送信データをパケット化し、変調等の処理を行い、無線にて送信データを受信装置２へ送信し、受信装置２から無線ＬＡＮ用ＡＣＫ、ＴＣＰ用ＡＣＫ等を受信する。受信装置２は、受信アプリケーション（伝送アプリケーション）により、送信装置１から送信された送信データを受信し、復調等の処理を行い、パケットから元の送信データを抽出する。また、受信装置２は、無線ＬＡＮプロトコルにおいて送信データを正常に受信した場合には無線ＬＡＮ用ＡＣＫを送信装置１へ送信し、ＴＣＰにおいて送信データを正常に受信した場合にはＴＣＰ用ＡＣＫを送信装置１へ送信し、また、必要に応じてその他のデータを送信装置１へ送信する。
【００２４】
送信装置１は、送信アプリケーション１０、ＴＣＰ／ＩＰ処理部１１、無線ＬＡＮドライバ１２及び無線ＬＡＮ物理層（送信部）１３を備えている。尚、後述する実施例１〜５の送信装置１−１〜１−５は、図１と基本的に同じ機能を有する構成部を備えているが、送信アプリケーション１０は省略してあり、図１の各構成部に加えて新たな機能を有する場合もあり、また、処理内容が異なる場合もある。
【００２５】
送信アプリケーション１０は、送信装置１内のデータを送信するアプリケーションであり、データをＴＣＰ／ＩＰ処理部１１に出力する。ＴＣＰ／ＩＰ処理部１１は、送信アプリケーション１０からデータを入力すると共に、無線ＬＡＮドライバ１２からＴＣＰ用ＡＣＫ、変調方式切替情報、電界強度等の情報を入力し、送信レートを算出する。また、ＴＣＰ／ＩＰ処理部１１は、入力したデータをパケット化し、ＴＣＰヘッダにシーケンス番号を付与する等の処理を行ってＴＣＰヘッダ及びＩＰヘッダを付加し、算出した送信レートにてパケット化したデータを無線ＬＡＮドライバ１２に出力する。また、ＴＣＰ／ＩＰ処理部１１は、入力したＴＣＰ用ＡＣＫに基づいて、パケットロスの発生有無を判定し、パケットロスの発生を検知した場合、パケットの再送処理を行う。例えば、パケットロスの発生の検知には、３回連続して同じＴＣＰ用ＡＣＫを受信（入力）した場合にパケットロスが発生したとみなす３ｄｕｐ−ａｃｋ方式を用いることが一般的である。
【００２６】
無線ＬＡＮドライバ１２は、ＴＣＰ／ＩＰ処理部１１からパケット化されたデータを入力し、入力したデータを無線ＬＡＮ物理層１３に出力する。また、無線ＬＡＮドライバ１２は、無線ＬＡＮ物理層１３からＴＣＰ用ＡＣＫ、変調方式切替情報、電界強度等の情報を入力し、入力した情報をＴＣＰ／ＩＰ処理部１１に出力する。ここで、無線ＬＡＮドライバ１２は、下位層である無線ＬＡＮ物理層１３の実装に伴う差異を吸収するためのソフトウェアであり、どのような種類の無線ＬＡＮ物理層１３であっても、ＴＣＰ／ＩＰ処理部１１からみると同一の物理層であるかのように見せかけるためのインターフェースとして機能する。したがって、無線ＬＡＮドライバ１２は、実装される無線ＬＡＮ物理層１３の種類に応じて、入力する情報が異なる。これは、無線ＬＡＮ物理層１３が各メーカから提供されるものであり、無線ＬＡＮ物理層１３の種類によって、変調方式の決定手法及び外部へ出力される情報等が異なるからである。
【００２７】
尚、図１に示した送信装置１の構成のように、データは、無線ＬＡＮドライバ１２を介して伝送されることが一般的であるが、本発明は、図１の構成に限定されるものではない。例えば、送信装置１は、送信アプリケーション１０、ＴＣＰ／ＩＰ処理部１１及び無線ＬＡＮドライバ１２を、一体化して構成するようにしてもよい。
【００２８】
無線ＬＡＮ物理層１３は、無線ＬＡＮドライバ１２からデータを入力し、そのときの無線伝送路の伝搬状況から変調方式を決定し、決定した変調方式にて変調を行い、データを無線にて受信装置２へ送信する。この場合、無線ＬＡＮ物理層１３は、入力したデータを送信バッファに格納し、無線伝送路の伝搬状況による実際の伝送レートに応じて送信バッファからデータを読み出し、前述の処理を行い送信する。また、無線ＬＡＮ物理層１３は、送信したデータに対する無線ＬＡＮ用ＡＣＫを受信装置２から受信する。これにより、無線ＬＡＮ物理層１３は、送信したデータが、受信装置２により正しく受信されたことを認識することができる。
【００２９】
ここで、無線ＬＡＮ物理層１３は、１つのデータ（パケット）を送信すると、受信装置２から無線ＬＡＮ用ＡＣＫの返信を待つ。しかし、送信装置１と受信装置２との間の無線伝送路の伝搬状況によっては、送信装置１から送信されたデータにノイズが加算される場合があり、受信装置２は、送信装置１からのデータを正常に受信できないこともあり得る。この場合、受信装置２は、無線ＬＡＮ用ＡＣＫを送信装置１へ送信することができず、送信装置１の無線ＬＡＮ物理層１３は、受信装置２から無線ＬＡＮ用ＡＣＫを所定時間待っても受信しないことになる。そこで、無線ＬＡＮ物理層１３は、無線ＬＡＮ用ＡＣＫを受信しない場合、一定時間待ってから再度データを送信する。そして、無線ＬＡＮ物理層１３は、再送を行っても無線ＬＡＮ用ＡＣＫを受信しない場合、前回よりも長い時間待ってから再度データを送信することを繰り返す。そして、無線ＬＡＮ物理層１３は、所定回数再送しても無線ＬＡＮ用ＡＣＫを受信しない場合、そのデータを破棄し、次のデータを送信する。無線ＬＡＮ物理層１３により破棄されたデータは、前述のＴＣＰ／ＩＰ処理部１１と後述する受信装置２のＴＣＰ／ＩＰ処理部２２との間の処理により、ＴＣＰ用ＡＣＫの送受信の有無にて検知され、ＴＣＰ／ＩＰ処理部１１により、破棄されたデータが再送される。
【００３０】
尚、ＴＣＰ／ＩＰ処理部１１による再送処理によってもパケットロスが回復できない場合には、すなわち、送信装置１が受信装置２からＴＣＰ用ＡＣＫを受信しない場合には、ＴＣＰ／ＩＰ処理部１１において、ＴＣＰのタイムアウト手順に従った処理が行われる。
【００３１】
受信装置２は、無線ＬＡＮ物理層（受信部）２０、無線ＬＡＮドライバ２１、ＴＣＰ／ＩＰ処理部２２及び受信アプリケーション２３を備えている。受信アプリケーション２３は、送信装置１により送信されたデータを受信するアプリケーションであり、ＴＣＰ／ＩＰ処理部２２から受信したデータを入力する。
【００３２】
無線ＬＡＮ物理層２０は、送信装置１により送信されたデータを受信し、データを復調し、復調したデータを無線ＬＡＮドライバ２１に出力する。また、無線ＬＡＮ物理層２０は、データを正しく受信したか否かを判定し、正しく受信したと判定した場合、受信確認応答の無線ＬＡＮ用ＡＣＫを送信装置１へ送信する。また、無線ＬＡＮ物理層２０は、無線ＬＡＮドライバ２１からＴＣＰ用ＡＣＫ等を入力し、送信装置１へ送信する。
【００３３】
無線ＬＡＮドライバ２１は、無線ＬＡＮ物理層２０からデータを入力し、入力したデータをＴＣＰ／ＩＰ処理部２２に出力する。また、無線ＬＡＮドライバ２１は、ＴＣＰ／ＩＰ処理部２２からＴＣＰ用ＡＣＫ等を入力し、入力したＴＣＰ用ＡＣＫ等を無線ＬＡＮ物理層２０に出力する。
【００３４】
ＴＣＰ／ＩＰ処理部２２は、無線ＬＡＮドライバ２１からデータを入力し、データのパケットに含まれるＴＣＰヘッダのシーケンス番号を確認し、正しいと判定した場合、ＴＣＰ用ＡＣＫを無線ＬＡＮドライバ２１に出力する。尚、ＴＣＰ／ＩＰ処理部２２は、ＴＣＰ用ＡＣＫ以外のデータも無線ＬＡＮドライバ２１に出力する。
【００３５】
以下、図１に示した送信装置１がデータ伝送を行う具体例について、実施例１〜５を挙げて詳細に説明する。実施例１は、ＲＳＳＩ（Received Signal Strength Indication：受信信号強度）に基づいて決定した変調方式の切替情報に従って、ＴＣＰ輻輳ウィンドウの送信レートを制御する例である。実施例２は、送信バッファに一時的に保持されているデータの量に従って、ＴＣＰ輻輳ウィンドウの送信レートを制御する例である。実施例３は、無線ＬＡＮ用ＡＣＫタイムアウト期間中送信できなかったデータの量（無線ＬＡＮ用ＡＣＫが想定通りに返信された場合に送信できていたと予想されるデータ量）に従って、ＴＣＰ輻輳ウィンドウの送信レートを制御する例である。実施例４は、ＧＰＳ（Global Positioning System）等により取得した送信装置の位置情報に従って、ＴＣＰ輻輳ウィンドウの送信レートを制御する例である。実施例５は、実施例１〜４の変形例であり、実施例１〜４における送信装置のＴＣＰ／ＩＰ処理部と無線ＬＡＮ物理層とが一体化されておらず、別々の装置として構成され、無線ＬＡＮ物理層が、無線ＬＡＮアクセスポイントまたは無線ＬＡＮブリッジ装置として外部に設置される場合の例である。
【００３６】
〔実施例１〕
まず、実施例１について説明する。実施例１は、前述のとおり、ＲＳＳＩに基づいて決定した変調方式の切替情報に従って、ＴＣＰ輻輳ウィンドウの送信レートを制御する例である。
【００３７】
図２は、実施例１による送信装置の構成を示すブロック図である。この送信装置１−１は、ＴＣＰ／ＩＰ処理部１１−１、無線ＬＡＮドライバ１２−１、無線ＬＡＮ物理層１３−１を備えている。送信装置１−１の送信アプリケーション１０（図示せず）から送信データがＴＣＰ／ＩＰ処理部１１−１に入力される。
【００３８】
ＴＣＰ／ＩＰ処理部１１−１は、ヘッダ付加部１１１、ＡＣＫ処理部１１２、輻輳ウィンドウ制御部（送信レート決定部）１１３−１及び送信量調節バッファ１１４を備えている。ヘッダ付加部１１１は、送信データを入力し、送信データにＴＣＰ／ＩＰのヘッダを付加してパケット化し、送信量調節バッファ１１４に出力する。ＡＣＫ処理部１１２は、無線ＬＡＮドライバ１２−１から受信データを入力し、受信データがＴＣＰ用ＡＣＫの場合、ＴＣＰ用ＡＣＫに基づいて、パケットロスの発生有無を判定し、パケットロスの発生を検知したとき、パケットを再送させるための再送指示を送信量調節バッファ１１４に出力する。一方、ＡＣＫ処理部１１２は、パケットロスの発生を検知しないとき、かつ次のパケットが要求されているとき、次のパケットを送信させるための新データ送信指示を送信量調節バッファ１１４に出力する。
【００３９】
輻輳ウィンドウ制御部１１３−１は、無線ＬＡＮドライバ１２−１から変調方式切替情報、電界強度及び変調方式切替完了を入力し、変調方式切替情報が示す切り替え後の変調方式について、送信可能な最大レートを算出する。そして、輻輳ウィンドウ制御部１１３−１は、変調方式切り替え後の送信可能な最大レートが現在の送信可能な最大レート以下であると判定した場合、無線ＬＡＮ物理層１３−１にて実際に変調方式が変更される前に、送信量調節バッファ１１４における送信レートが変調方式切り替え後の送信可能な最大レート以下になるように、送信レート指示を送信量調節バッファ１１４に出力する。一方、輻輳ウィンドウ制御部１１３−１は、変調方式切り替え後の送信可能な最大レートが現在の送信可能な最大レートよりも高いと判定した場合、無線ＬＡＮ物理層１３−１にて実際に変調方式が変更された後に（変調方式切替完了を入力した後に）、送信量調節バッファ１１４における送信レートが変調方式切り替え後の送信可能な最大レート以下になるように、送信レート指示を送信量調節バッファ１１４に出力する。また、輻輳ウィンドウ制御部１１３−１は、電界強度に基づいて、無線伝送路が完全に遮蔽されたと判断した場合、無線ＬＡＮドライバ１２−１を介して無線ＬＡＮ物理層１３−１に、変調及び送信処理を停止させ、入力及び保持した送信データを破棄させる。一方、輻輳ウィンドウ制御部１１３−１は、電界強度に基づいて、無線伝送路が回復したと判断した場合、無線ＬＡＮドライバ１２−１を介して無線ＬＡＮ物理層１３−１に、変調及び送信処理を再開させる。
【００４０】
図３は、輻輳ウィンドウ制御部１１３−１による処理を示すフローチャートである。輻輳ウィンドウ制御部１１３−１は、無線ＬＡＮドライバ１２−１から変調方式切替情報を入力したか否かを判定し（ステップＳ３０１）、変調方式切替情報を入力していないと判定した場合（ステップＳ３０１：Ｎ）、ステップＳ３０８へ移行する。一方、輻輳ウィンドウ制御部１１３−１は、ステップＳ３０１において、変調方式切替情報を入力したと判定した場合（ステップＳ３０１：Ｙ）、変調方式切替情報が示す切り替え後の変調方式について、この変調方式に対応する誤り訂正のための冗長データ量及び伝送プロトコルヘッダ量等を用いて所定の除算処理を行うことにより、送信可能な最大レートを算出する（ステップＳ３０２）。尚、送信可能な最大レートの算出手法は既知であるから、ここでは詳細な説明を省略する。
【００４１】
輻輳ウィンドウ制御部１１３−１は、変調方式切り替え後の送信可能な最大レートと、現在の送信可能な最大レート（以前に変調方式切替情報を入力したときに算出した、変調方式切り替え後の送信可能な最大レート）とを比較する（ステップＳ３０３）。そして、輻輳ウィンドウ制御部１１３−１は、ステップＳ３０３において、変調方式切り替え後の送信可能な最大レートが現在の送信可能な最大レート以下であると判定した場合（ステップＳ３０３：≦）、送信量調節バッファ１１４における送信レートが変調方式切り替え後の送信可能な最大レート以下になるように、送信レート指示を送信量調節バッファ１１４に出力し（ステップＳ３０４）、所定時間経過後、変調方式切替指示を、無線ＬＡＮドライバ１２−１を介して無線ＬＡＮ物理層１３−１へ出力する（ステップＳ３０５）。ここで、変調方式切替指示が出力されるタイミングを示す所定時間とは、送信レート指示が出力されてからの時間であり、送信量調節バッファ１１４の送信レートを低下させた後に、無線ＬＡＮ物理層１３−１の変調方式が実際に切り替えられ、送信レートが低下した送信データに対し、切り替え後の変調方式が適用可能な時間をいう。
【００４２】
このように、変調方式切り替え後の送信可能な最大レートが現在の送信可能な最大レート以下であると判定した場合、無線ＬＡＮ物理層１３−１にて実際に変調方式が変更される前に、送信量調節バッファ１１４の送信レートが変更される。したがって、変調方式切り替えに伴って伝送レートが低下する場合、送信量調節バッファ１１４の送信レートが低下した後に伝送レートが低下する。これにより、データ欠損を防ぐことができ、データを送信することができなくなるという不具合を解消することができる。また、受信装置２において、受信データが途切れることがない。
【００４３】
輻輳ウィンドウ制御部１１３−１は、変調方式切り替え後の送信可能な最大レートが現在の送信可能な最大レートよりも高いと判定した場合（ステップＳ３０３：＞）、変調方式切替指示を、無線ＬＡＮドライバ１２−１を介して無線ＬＡＮ物理層１３−１へ出力する（ステップＳ３０６）。これにより、無線ＬＡＮ物理層１３−１において実際に変調方式が切り替えられ、変調方式切替完了が、無線ＬＡＮ物理層１３−１から無線ＬＡＮドライバ１２−１を介して輻輳ウィンドウ制御部１１３−１へ出力される。そして、輻輳ウィンドウ制御部１１３−１は、変調方式切替完了を入力した後、送信量調節バッファ１１４における送信レートが変調方式切り替え後の送信可能な最大レート以下になるように、送信レート指示を送信量調節バッファ１１４に出力する（ステップＳ３０７）。
【００４４】
輻輳ウィンドウ制御部１１３−１は、ステップＳ３０１、ステップＳ３０５またはステップＳ３０７から移行して、無線ＬＡＮ物理層１３−１から無線ＬＡＮドライバ１２−１を介して入力した電界強度と所定の閾値とを比較し（ステップＳ３０８）、電界強度が閾値よりも小さいと判定した場合（ステップＳ３０８：＜）、無線伝送路が完全に遮蔽される等して通信できる伝搬状況ではない、すなわち送信可能な最大レートが０になったと判断し、破棄指示を、無線ＬＡＮドライバ１２−１を介して無線ＬＡＮ物理層１３−１へ出力する（ステップ３０９）。これにより、無線ＬＡＮ物理層１３−１は、破棄指示に基づいて、変調及び送信処理を停止し、入力した送信データを送信バッファ（後述する変調・送信部１３１−１に備えた送信バッファ）に保持することなく破棄すると共に、送信バッファに保持していた送信データを破棄する。
【００４５】
輻輳ウィンドウ制御部１１３−１は、ステップＳ３０８において、電界強度が閾値以上であると判定した場合（ステップＳ３０８：≧）、データ破棄指示の出力により、無線ＬＡＮ物理層１３−１において変調処理等が停止しているか否かを判定する（ステップＳ３１０）。輻輳ウィンドウ制御部１１３−１は、ステップＳ３１０において、データ破棄指示の出力により、無線ＬＡＮ物理層１３−１において変調処理等が停止していると判定した場合（ステップＳ３１０：Ｙ）、無線伝送路の伝搬状況が改善したと判断し、処理再開指示を、無線ＬＡＮドライバ１２−１を介して無線ＬＡＮ物理層１３−１へ出力する（ステップＳ３１１）。これにより、無線ＬＡＮ物理層１３−１は、処理再開指示に基づいて、入力した送信データに対する変調及び送信処理を再開する。一方、輻輳ウィンドウ制御部１１３−１は、ステップＳ３１０において、データ破棄指示を出力済みの状態ではなく、無線ＬＡＮ物理層１３−１において変調処理等が停止していないと判定した場合（ステップＳ３１０：Ｎ）、処理を終了し、ステップＳ３０１へ戻って処理を繰り返す。
【００４６】
このように、無線伝送路が途切れた場合には、送信データは、後述する無線ＬＡＮ物理層１３−１の変調・送信部１３１−１に備えた送信バッファに保持されることなく破棄され送信が停止するから、無線伝送路が回復した際に、送信データに対する変調及び送信処理が再開され、受信装置２において、迅速にデータの復号が再開される。
【００４７】
尚、前述のとおり、輻輳ウィンドウ制御部１１３−１は、無線ＬＡＮ物理層１３−１により決定された変調方式を含む変調方式切替情報を、無線ＬＡＮドライバ１２−１を介して入力する。これに対し、無線ＬＡＮ物理層１３−１が変調方式を決定する機能を有さない場合、または変調方式切替情報を出力する機能を有さない場合には、無線ＬＡＮドライバ１２−１が、無線ＬＡＮ物理層１３−１から入力した電界強度に基づいて、変調方式を決定するようにしてもよいし、輻輳ウィンドウ制御部１１３−１が、無線ＬＡＮ物理層１３−１から無線ＬＡＮドライバ１２−１を介して入力した電界強度に基づいて、変調方式を決定するようにしてもよい。電界強度に基づいて変調方式を決定する手法については、後述する無線ＬＡＮ物理層１３−１の変調方式決定部１３４の処理を参照されたい。また、輻輳ウィンドウ制御部１１３−１が、送信可能な最大レートを算出するようにしたが、無線ＬＡＮ物理層１３−１が、送信可能な最大レートを算出し、輻輳ウィンドウ制御部１１３−１が、送信可能な最大レートを、無線ＬＡＮ物理層１３−１から無線ＬＡＮドライバ１２−１を介して入力するようにしてもよい。
【００４８】
また、ＴＣＰ処理では、受信装置２が一度に受付可能なデータ量である受信ウィンドウサイズを送信装置１へ送信するから、輻輳ウィンドウ制御部１１３−１は、受信装置２からの受信ウィンドウサイズを超えないように、送信可能な最大レートを算出し、送信レート指示を送信量調節バッファ１１４に出力する。これにより、送信装置１によるデータ伝送は、受信ウィンドウサイズを超えるレートになることがない。
【００４９】
また、輻輳ウィンドウ制御部１１３−１は、送信可能な最大レートを算出する際に、一般的なＴＣＰ輻輳制御方法と同様に、送信可能な最大レートを、連続して送信可能なパケット数に換算し、そのパケット数を送信量調節バッファ１１４に出力するようにしてもよい。
【００５０】
ここで、一般のＴＣＰ処理では、ＴＣＰ用ＡＣＫの正常な受信及びパケットロスを判断基準にして、輻輳ウィンドウの送信レートの増減を制御するが、前述のとおり、実施例１の輻輳ウィンドウ制御部１１３−１による輻輳ウィンドウ制御の処理では、無線ＬＡＮ物理層１３−１から無線ＬＡＮドライバ１２−１を介して入力した変調方式切替情報または電界強度によって送信レートが制御される。実施例２〜５についても同様である。
【００５１】
また、輻輳ウィンドウ制御部１１３−１は、変調方式切り替え後の送信可能な最大レートが現在の送信可能な最大レートよりも高いと判定した場合、図３のステップＳ３０６及びステップＳ３０７において、変調方式切替指示を、無線ＬＡＮドライバ１２−１を介して無線ＬＡＮ物理層１３−１へ出力し、無線ＬＡＮ物理層１３−１から無線ＬＡＮドライバ１２−１を介して変調方式切替完了を入力した後、送信レート指示を送信量調節バッファ１１４に出力するようにした。これに対し、輻輳ウィンドウ制御部１１３−１は、変調方式切替指示を出力し、所定時間経過後（実際に変調方式が切り替わる時間を待った後）、送信レート指示を出力するようにしてもよい。
【００５２】
図２に戻って、ＴＣＰ／ＩＰ処理部１１−１の送信量調節バッファ１１４は、ヘッダ付加部１１１からパケット化された送信データを、ＡＣＫ処理部１１２から再送指示及び新データ送信指示を、輻輳ウィンドウ制御部１１３−１から送信レート指示をそれぞれ入力する。そして、送信量調節バッファ１１４は、入力した送信データをバッファに格納し、送信レート指示が示す送信レートにて送信データをバッファから読み出すことで送信量を調節し、無線ＬＡＮドライバ１２−１に出力する。また、送信量調節バッファ１１４は、ＡＣＫ処理部１１２からの再送指示に従い、同じパケットの送信データを無線ＬＡＮドライバ１２−１に出力し、ＡＣＫ処理部１１２からの新データ送信指示に従って、次のパケットの送信データを無線ＬＡＮドライバ１２−１に出力する。
【００５３】
無線ＬＡＮドライバ１２−１は、ＴＣＰ／ＩＰ処理部１１−１から送信データ、変調方式切替指示、データ破棄指示及び処理再開指示を入力し、入力した送信データ、変調方式切替指示、データ破棄指示及び処理再開指示を無線ＬＡＮ物理層１３−１に出力する。また、無線ＬＡＮドライバ１２−１は、無線ＬＡＮ物理層１３−１から変調方式切替情報、電界強度、受信データ及び変調方式切替完了を入力し、入力した変調方式切替情報、電界強度、受信データ及び変調方式切替完了をＴＣＰ／ＩＰ処理部１１−１に出力する。
【００５４】
無線ＬＡＮ物理層１３−１は、変調・送信部１３１−１、受信・復調部１３２、電界強度測定部１３３及び変調方式決定部１３４を備えている。変調・送信部１３１−１は、送信データを送信する際に一時的に保持する送信バッファを備えており、無線ＬＡＮドライバ１２−１から送信データを入力すると共に、変調方式決定部１３４から変調方式切替情報を入力し、入力した送信データを送信バッファに格納し、無線伝送路の伝搬状況による実際の伝送レートに応じて送信バッファから送信データを読み出し、変調方式切替情報が示す変調方式に従ってデータを変調し、無線にて受信装置２へ送信する。また、変調・送信部１３１−１は、無線ＬＡＮドライバ１２−１から変調方式切替指示を入力し、変調方式決定部１３４から入力した変調方式切替情報が示す変調方式に切り替え、切り替え後の変調方式に従って送信データを変調する。そして、変調・送信部１３１−１は、変調方式切替完了を無線ＬＡＮドライバ１２−１に出力する。また、変調・送信部１３１−１は、受信・復調部１３２から無線ＬＡＮ用ＡＣＫを入力し、送信データが受信装置２により正しく受信されたことを認識する。この場合、変調・送信部１３１−１は、無線ＬＡＮ用ＡＣＫを入力すると、次の送信データを送信する。
【００５５】
受信・復調部１３２は、受信装置２により送信された無線ＬＡＮ用ＡＣＫ、ＴＣＰ用ＡＣＫ等のデータを受信し、受信したこれらのデータを復調し、無線ＬＡＮ用ＡＣＫを変調・送信部１３１−１に出力すると共に、無線ＬＡＮ用ＡＣＫ以外のＴＣＰ用ＡＣＫ等のデータ（無線ＬＡＮの上位層のデータ）を受信データとして無線ＬＡＮドライバ１２−１に出力する。また、受信・復調部１３２は、復調前の受信データを電界強度測定部１３３に出力する。
【００５６】
尚、ＩＥＥＥ８０２．１１方式では、受信装置２から定期的にビーコン信号が送信される場合もある。また、図２に示した構成では、送信装置１と受信装置２とを明確に区別しているが、双方向に伝送を行う場合には、送信装置１が受信装置２から受信するデータには、無線ＬＡＮ用ＡＣＫ以外に実際に伝送されるデータが含まれる。このようなデータは、受信データとして無線ＬＡＮドライバ１２−１及びＴＣＰ／ＩＰ処理部１１−１を介して、図２には図示していない上位の送信アプリケーション１０に渡される。
【００５７】
電界強度測定部１３３は、受信・復調部１３２から復調前の受信データを入力し、復調前の受信データに基づいて、Ｃ／Ｎ比等の電界強度を測定し、測定した電界強度を変調方式決定部１３４及び無線ＬＡＮドライバ１２−１に出力する。
【００５８】
変調方式決定部１３４は、電界強度測定部１３３から電界強度を入力し、所定の変換方式テーブルを用いて、入力した電界強度に対応する変調方式を新たな変調方式に決定する。そして、変調方式決定部１３４は、変調方式が変わった場合、変調方式切替情報を無線ＬＡＮドライバ１２−１及び変調・送信部１３１−１に出力する。変換方式テーブルには、例えばＣ／Ｎ比等の電界強度と変調方式とが対になって格納されており、電界強度に基づいて変調方式が一義的に決定される。この場合、変調方式決定部１３４は、電界強度が高い場合、より高速な伝送レートを実現可能とする変調方式を決定し、電界強度が低い場合、低速な伝送レートであるがデータを受信し易い変調方式を決定する。これにより、無線伝送路の伝搬状況に応じたレートでのデータ伝送が可能となる。
【００５９】
尚、変調方式決定部１３４は、Ｃ／Ｎ比に基づいて変調方式を決定するだけでなく、ＡＣＫの非到着頻度、ＦＣＳ（Frame Check Sequence：フレームチェックシーケンス）部のエラー情報等に基づいて、変調方式を決定するようにしてもよい。この場合、受信・復調部１３２が、ＡＣＫの非到着頻度、ＦＣＳ部のエラー情報等を生成し、変調方式決定部１３４は、受信・復調部１３２からＡＣＫの非到着頻度、ＦＣＳ部のエラー情報等を入力し、例えば、ＡＣＫの非到着頻度が高い場合、送信可能な最大レートが一層低くなる変調方式を決定する。また、変調方式決定部１３４における変調方式を決定するアルゴリズムは、無線ＬＡＮ標準化方式にて規定されておらず、無線ＬＡＮ物理層１３−１の実装により異なるものである。実施例１は、無線ＬＡＮ物理層１３−１により決定される変調方式に従って、ＴＣＰ／ＩＰ処理部１１−１が送信レートを決定するものであり、どのようなアルゴリズムで変調方式が決定されても適用可能である（実施例２〜５においても同様）。
【００６０】
また、無線ＬＡＮ物理層１３−１の変調方式決定部１３４の前後に遅延部を設け（変調方式決定部１３４と無線ＬＡＮドライバ１２−１との間に第１の遅延部、変調方式決定部１３４と変調・送信部１３１−１との間に第２の遅延部を設け）、ＴＣＰ／ＩＰ処理部１１−１の輻輳ウィンドウ制御部１１３−１は、変調方式切り替え後の送信可能な最大レートが現在の送信可能な最大レート以下であると判定した場合、第１の遅延部に、変調方式決定部１３４から入力した変調方式切替情報を、即座に無線ＬＡＮドライバ１２−１に出力させるようにし、第２の遅延部に、変調方式決定部１３４から入力した変調方式切替情報を、所定時間経過後に変調・送信部１３１−１に出力させるようにする。一方、変調・送信部１３１−１は、変調方式切り替え後の送信可能な最大レートが現在の送信可能な最大レートよりも高いと判定した場合、第１の遅延部に、変調方式決定部１３４から入力した変調方式切替情報を、所定時間経過後に無線ＬＡＮドライバ１２−１に出力させるようにし、第２の遅延部に、変調方式決定部１３４から入力した変調方式切替情報を、即座に変調・送信部１３１−１に出力させるようにする。この場合、輻輳ウィンドウ制御部１１３−１は、図３に示したステップＳ３０４〜ステップＳ３０７の処理を行わず、無線ＬＡＮドライバ１２−１から入力した変調方式切替情報に従い、送信レート指示を送信量調節バッファ１１４に即座に出力する。また、変調・送信部１３１−１は、変調方式切替情報を入力すると、その変調方式に即座に切り替える。
【００６１】
また、図２では、送信装置１−１は、ＴＣＰ／ＩＰ処理部１１−１、無線ＬＡＮドライバ１２−１及び無線ＬＡＮ物理層１３−１を備え、無線ＬＡＮドライバ１２−１を介してＴＣＰ／ＩＰ処理部１１−１と無線ＬＡＮ物理層１３−１との間でデータの入出力を行うようにした。これに対し、送信装置１−１は、無線ＬＡＮドライバ１２−１を除き、ＴＣＰ／ＩＰ処理部１１−１及び無線ＬＡＮ物理層１３−１のみを備え、ＴＣＰ／ＩＰ処理部１１−１と無線ＬＡＮ物理層１３−１とがデータの入出力を直接行うようにしてもよい。また、無線ＬＡＮ物理層１３−１内に輻輳ウィンドウ制御部１１３−１を備えるようにしてもよい。実施例２〜５も同様である。
【００６２】
以上のように、実施例１の送信装置１−１によれば、ＴＣＰ／ＩＰ処理部１１−１の輻輳ウィンドウ制御部１１３−１が、変調方式切り替え後の送信可能な最大レートを算出し、この最大レートが現在の送信可能な最大レート以下であると判定した場合、送信量調節バッファ１１４における送信レートが変調方式切り替え後の送信可能な最大レート以下になるように、送信レート指示を送信量調節バッファ１１４に出力し、所定時間経過後、変調方式切替指示を、無線ＬＡＮドライバ１２−１を介して無線ＬＡＮ物理層１３−１へ出力するようにした。これにより、無線ＬＡＮ物理層１３−１にて実際に変調方式が変更されて伝送レートが低下する前に、ＴＣＰ／ＩＰ処理部１１−１の送信量調節バッファ１１４における送信レートを低下させることができる。したがって、変調方式切り替えに伴って伝送レートが低下する場合、送信量調節バッファ１１４における送信レートが低下した後に伝送レートが低下し、送信量調節バッファ１１４における送信レート（ＴＣＰ／ＩＰ処理部１１−１から送信データが出力される際のレート）よりも伝送レート（無線伝送路の伝搬状況に応じて切り替えられた変調方式によるレート、すなわち、変調・送信部１３１−１から送信データが送信される際のレート）が低くなるという状態を回避することができるから、無線ＬＡＮ物理層１３−１内の送信バッファから送信データが溢れることがなく、送信データが破棄されることを防ぎ、ＴＣＰ／ＩＰ処理部１１−１による送信データの不要な再送を避けることができる。つまり、無線伝送路の伝送可能帯域を効率良く利用することでき、高速伝送を実現することが可能となる。
【００６３】
一方、ＴＣＰ／ＩＰ処理部１１−１の輻輳ウィンドウ制御部１１３−１が、この最大レートが現在の送信可能な最大レートよりも高いと判定した場合、変調方式切替指示を、無線ＬＡＮドライバ１２−１を介して無線ＬＡＮ物理層１３−１へ出力して変調方式が実際に切り替わった後に、送信量調節バッファ１１４における送信レートが変調方式切り替え後の送信可能な最大レート以下になるように、送信レート指示を送信量調節バッファ１１４に出力するようにした。これにより、無線ＬＡＮ物理層１３−１にて実際に変調方式が変更されて伝送レートが高くなった後に、送信量調節バッファ１１４における送信レートを高くすることができる。したがって、変調方式切り替えに伴って伝送レートが高くなる場合、伝送レートが高くなった後に送信量調節バッファ１１４における送信レートが高くなり、送信量調節バッファ１１４における送信レートが伝送レートよりも高くなるという状態を回避することができるから、無線ＬＡＮ物理層１３−１内の送信バッファから送信データが溢れて送信データが破棄されることを防ぎ、ＴＣＰ／ＩＰ処理部１１−１による送信データの不要な再送を避けることができる。つまり、無線伝送路の伝送可能帯域を効率良く利用することでき、高速伝送を実現することが可能となる。尚、実施例１による受信装置２は、従来の無線ＬＡＮ標準化方式に従った構成でよい（実施例２〜５においても同様）。
【００６４】
〔実施例２〕
次に、実施例２について説明する。実施例２は、前述のとおり、送信バッファに一時的に保持されているデータの量に従って、ＴＣＰ輻輳ウィンドウの送信レートを制御する例である。
【００６５】
図４は、実施例２による送信装置の構成を示すブロック図である。この送信装置１−２は、ＴＣＰ／ＩＰ処理部１１−２、無線ＬＡＮドライバ１２−２及び無線ＬＡＮ物理層１３−２を備えている。ＴＣＰ／ＩＰ処理部１１−２は、ヘッダ付加部１１１、ＡＣＫ処理部１１２、輻輳ウィンドウ制御部１１３−２及び送信量調節バッファ１１４を備えている。ヘッダ付加部１１１、ＡＣＫ処理部１１２及び送信量調節バッファ１１４は、実施例１と同様であるから説明を省略する。
【００６６】
輻輳ウィンドウ制御部１１３−２は、無線ＬＡＮドライバ１２−２から変調方式切替情報、電界強度及びバッファデータ量（無線ＬＡＮ物理層１３−２の変調・送信部１３１−２に備えた送信バッファに保持されているデータの量）を入力し、変調方式切替情報及びバッファデータ量に基づいて、送信量調節バッファ１１４における送信レートを算出し、送信レート指示を送信量調節バッファ１１４に出力する。また、輻輳ウィンドウ制御部１１３−２は、入力した電界強度を用いて、図３に示したステップＳ３０８〜ステップＳ３１１の処理を行い、無線伝送路が完全に遮蔽される等して通信できる伝搬状況ではないと判断した場合、無線ＬＡＮ物理層１３−２に、変調及び送信処理を中止させることで、入力した送信データ及び保持していた送信データを破棄させ、無線伝送路の伝搬状況が改善したと判断した場合、無線ＬＡＮ物理層１３−２に、変調及び送信処理を再開させる。尚、図４において、データ破棄指示及び処理再開指示については省略してある。実施例３〜５についても同様である。
【００６７】
図５は、輻輳ウィンドウ制御部１１３−２による処理を示すフローチャートである。まず、輻輳ウィンドウ制御部１１３−２は、無線ＬＡＮドライバ１２−２から変調方式切替情報及びバッファデータ量を入力する（ステップＳ５０１）。そして、輻輳ウィンドウ制御部１１３−２は、変調方式切替情報が示す切り替え後の変調方式について、この変調方式に対応する誤り訂正のための冗長データ量及び伝送プロトコルヘッダ量等を用いて所定の除算処理を行うことにより、送信可能な最大レートを算出し（ステップＳ５０２）、バッファデータ量の時間的変化を求めて送信バッファ内データレートを算出する（ステップＳ５０３）。そして、輻輳ウィンドウ制御部１１３−２は、以下の数式により送信レートを算出し（ステップＳ５０４）、送信レート指示を送信量調節バッファ１１４に出力する（ステップＳ５０５）。
（数式１）
送信レート＝送信可能な最大レート−無線ＬＡＮ物理層１３−２の送信バッファ内データレート                                                  ・・・（１）
これにより、送信量調節バッファ１１４は、輻輳ウィンドウ制御部１１３−２により算出された送信レートにて、送信データを無線ＬＡＮドライバ１２−２に出力する。
【００６８】
ここで、データの送信中に変調方式が切り替わり、送信可能な最大レートが現在の送信レートより低くなると、無線ＬＡＮ物理層１３−２の送信バッファにデータが一時的に保持される。この場合、輻輳ウィンドウ制御部１１３−２は、送信可能な最大レートが低くなるから、前記数式（１）により、以前よりも低い送信レートを算出し、送信レート指示を送信量調節バッファ１１４に出力する。これにより、送信量調節バッファ１１４により出力される送信データの量は少なくなり、無線ＬＡＮ物理層１３−２が送信バッファから送信データを読み出して送信するに従って、送信バッファに保持されるデータの量が減少する。このとき、輻輳ウィンドウ制御部１１３−２は、送信バッファ内データレートが低くなるから、前記数式（１）により、以前よりも高い送信レートを算出し、送信レート指示を送信量調節バッファ１１４に出力する。これにより、送信量調節バッファ１１４により出力される送信データの量は多くなる。
【００６９】
このように、変調方式が切り替わり、送信可能な最大レートが現在の送信レートより低い場合、送信バッファから送信すべきデータを送信できるように送信レートは一旦下げられ、送信バッファ内のデータが送信されながら、送信バッファ内の送信データの量が減少するに従って、徐々に送信レートが上がっていく。これにより、輻輳ウィンドウ制御部１１３−２が前記数式（１）により送信レートを算出し、送信量調節バッファ１１４の送信レートを制御することで、所定の時間内に全ての送信データを送ることができ、無線ＬＡＮ物理層１３−２内の送信バッファから送信データが溢れて送信データが破棄されることを防ぎ、ＴＣＰ／ＩＰ処理部１１−２による送信データの不要な再送を避けることができる。
【００７０】
図４に戻って、無線ＬＡＮドライバ１２−２は、ＴＣＰ／ＩＰ処理部１１−２から送信データを入力し、入力した送信データを無線ＬＡＮ物理層１３−２に出力する。また、無線ＬＡＮドライバ１２−２は、無線ＬＡＮ物理層１３−２から変調方式切替情報、電界強度、受信データ及びバッファデータ量を入力し、入力した変調方式切替情報、電界強度、受信データ及びバッファデータ量をＴＣＰ／ＩＰ処理部１１−２に出力する。
【００７１】
無線ＬＡＮ物理層１３−２は、変調・送信部１３１−２、受信・復調部１３２、電界強度測定部１３３及び変調方式決定部１３４を備えている。受信・復調部１３２、電界強度測定部１３３及び変調方式決定部１３４は、実施例１と同様であるから説明を省略する。
【００７２】
変調・送信部１３１−２は、実施例１の変調・送信部１３１−１と同様の処理に加え、送信バッファに保持されているデータの量を算出し、バッファデータ量として無線ＬＡＮドライバ１２−２に出力する。
【００７３】
ここで、無線伝送路の伝搬状況によっては、受信装置２にて送信データを受信し易い変調方式に切り替えられる。そして、その変調方式にて送信データが送信されたとしても、受信装置２は、送信データを正常に受信できず、無線ＬＡＮ物理層１３−２において再送処理が繰り返される場合がある。このとき、送信データは、変調・送信部１３１−２に備えた送信バッファに一時保持される。また、無線伝送路では、ＣＳＭＡ（Carrier Sense Multiple Access）方式により、複数の送信装置１−２が同一の無線伝送路を共有して送信データを伝送する。ある送信装置１−２が送信データを伝送している間、無線伝送路を共有する他の送信装置１−２は送信データを伝送することができない。すなわち、無線伝送路の伝搬状況に加え、他の送信装置１−２の伝送状況によっても送信可能な最大レートは変化する。他の送信装置１−２が送信データを伝送している間、送信データは、無線ＬＡＮ物理層１３−２の変調・送信部１３１−２に備えた送信バッファに一時保持される。送信バッファ内に送信データが保持されると、ＴＣＰ／ＩＰ処理部１１−２の輻輳ウィンドウ制御部１１３−２は、送信バッファ内データレートが高くなり、前記数式（１）により、以前よりも低い送信レートを算出し、送信量調節バッファ１１４により出力される送信データの量は少なくなる。これにより、所定の時間内に全ての送信データを送ることができ、無線ＬＡＮ物理層１３−２内の送信バッファから送信データが溢れて送信データが破棄されることを防ぎ、ＴＣＰ／ＩＰ処理部１１−２による送信データの不要な再送を避けることができる。
【００７４】
以上のように、実施例２の送信装置１−２によれば、ＴＣＰ／ＩＰ処理部１１−２の輻輳ウィンドウ制御部１１３−２が、変調方式切替情報に基づいて、送信可能な最大レートを算出し、無線ＬＡＮ物理層１３−２における送信バッファ内のバッファデータ量の時間的変化を求めて送信バッファ内データレートを算出し、前記数式（１）により送信レートを算出するようにした。そして、送信量調節バッファ１１４が、輻輳ウィンドウ制御部１１３−２により算出された送信レートに従って、送信データを出力するようにした。これにより、無線伝送路の伝搬状況が悪化して変調方式が切り替わってもなお無線伝送路でパケットロスが発生する場合に、送信可能な最大レートが現在の送信レートより低くなり、無線ＬＡＮ物理層１３−２における送信バッファから送信すべきデータを送信できるように送信レートは一旦下げられ、送信バッファ内のデータが送信されながら、送信バッファ内のデータが減少するに従って、徐々に送信量調節バッファ１１４における送信レートが上がっていく。つまり、送信バッファに一時的に保持されているデータ量を考慮して送信量調節バッファ１１４における送信レートが制御され、無線伝送路の伝搬状況による送信可能な最大レートの変化に追従するだけでなく、他の送信装置１−２の伝送状況によって変化する伝送レートにも追従するから、無線ＬＡＮ物理層１３−２内の送信バッファから送信データが溢れて送信データが破棄されることを防ぎ、ＴＣＰ／ＩＰ処理部１１−２による送信データの不要な再送を避けることができる。また、無線伝送路の伝送可能帯域を効率良く利用することでき、高速伝送を実現することが可能となる。
【００７５】
〔実施例３〕
次に、実施例３について説明する。実施例３は、前述のとおり、無線ＬＡＮ用ＡＣＫタイムアウト期間中送信できなかったデータの量（無線ＬＡＮ用ＡＣＫが想定通りに返信された場合に送信できていたと予想されるデータ量）に従って、ＴＣＰ輻輳ウィンドウの送信レートを制御する例である。
【００７６】
図６は、実施例３による送信装置の構成を示すブロック図である。この送信装置１−３は、ＴＣＰ／ＩＰ処理部１１−３、無線ＬＡＮドライバ１２−３、無線ＬＡＮ物理層１３−３及び仮想送信量カウント部１４を備えている。ＴＣＰ／ＩＰ処理部１１−３は、ヘッダ付加部１１１、ＡＣＫ処理部１１２、輻輳ウィンドウ制御部１１３−３及び送信量調節バッファ１１４を備えている。ヘッダ付加部１１１、ＡＣＫ処理部１１２及び送信量調節バッファ１１４は、実施例１と同様であるから説明を省略する。
【００７７】
輻輳ウィンドウ制御部１１３−３は、無線ＬＡＮドライバ１２−３から変調方式切替情報、電界強度及び仮想送信量を入力し、変調方式切替情報及び仮想送信量（無線ＬＡＮ用ＡＣＫが想定通りに返信された場合に送信できていたと予想されるデータの量）に基づいて、送信量調節バッファ１１４における送信レートを算出し、送信レート指示を送信量調節バッファ１１４に出力する。また、輻輳ウィンドウ制御部１１３−３は、入力した電界強度を用いて、図３に示したステップＳ３０８〜ステップＳ３１１の処理を行い、無線伝送路が完全に遮蔽される等して通信できる伝搬状況ではないと判断した場合、無線ＬＡＮ物理層１３−３に、変調及び送信処理を中止させることで、入力した送信データ及び保持していた送信データを破棄させ、無線伝送路の伝搬状況が改善したと判断した場合、無線ＬＡＮ物理層１３−３に、変調及び送信処理を再開させる。
【００７８】
図７は、輻輳ウィンドウ制御部１１３−３による処理を示すフローチャートである。まず、輻輳ウィンドウ制御部１１３−３は、無線ＬＡＮドライバ１２−３から変調方式切替情報及び仮想送信量を入力する（ステップＳ７０１）。そして、輻輳ウィンドウ制御部１１３−３は、変調方式切替情報が示す切り替え後の変調方式について、この変調方式に対応する誤り訂正のための冗長データ量及び伝送プロトコルヘッダ量等を用いて所定の除算処理を行うことにより、送信可能な最大レートを算出する（ステップＳ７０２）。そして、輻輳ウィンドウ制御部１１３−３は、以下の数式により送信レートを算出し（ステップＳ７０３）、送信レート指示を送信量調節バッファ１１４に出力する（ステップＳ７０４）。
（数式２）
送信レート＝送信可能な最大レート−仮想送信量    ・・・（２）
これにより、送信量調節バッファ１１４は、輻輳ウィンドウ制御部１１３−３により算出された送信レートにて、送信データを無線ＬＡＮドライバ１２−３に出力する。
【００７９】
図６に戻って、無線ＬＡＮドライバ１２−３は、ＴＣＰ／ＩＰ処理部１１−３から送信データを入力し、入力した送信データを無線ＬＡＮ物理層１３−３に出力する。また、無線ＬＡＮドライバ１２−３は、無線ＬＡＮ物理層１３−３から変調方式切替情報、電界強度及び受信データを入力し、入力した変調方式切替情報、電界強度及び受信データをＴＣＰ／ＩＰ処理部１１−３に出力する。また、無線ＬＡＮドライバ１２−３は、仮想送信量カウント部１４から仮想送信量を入力し、入力した仮想送信量をＴＣＰ／ＩＰ処理部１１−３に出力する。
【００８０】
無線ＬＡＮ物理層１３−３は、変調・送信部１３１−３、受信・復調部１３２、電界強度測定部１３３及び変調方式決定部１３４を備えている。受信・復調部１３２、電界強度測定部１３３及び変調方式決定部１３４は、実施例１と同様であるから説明を省略する。
【００８１】
変調・送信部１３１−３は、実施例１の変調・送信部１３１−１と同様の処理に加え、送信データを送信してから受信・復調部１３２から無線ＬＡＮ用ＡＣＫを所定時間内に入力しない場合、ＡＣＫ未受信を仮想送信量カウント部１４に出力する。
【００８２】
仮想送信量カウント部１４は、無線ＬＡＮ物理層１３−３の変調・送信部１３１−３からＡＣＫ未受信を入力すると、仮に、受信・復調部１３２において無線ＬＡＮ用ＡＣＫを受信し、変調・送信部１３１−３において無線ＬＡＮ用ＡＣＫを想定通りに入力していたならば、送信していたと予想されるデータ量（無線ＬＡＮ用ＡＣＫが想定通りに返信された場合に送信できていたと予想されるデータの量）を仮想送信量としてカウントし、仮想送信量を無線ＬＡＮドライバ１２−３に出力する。
【００８３】
ここで、無線伝送路の伝搬状況により、送信装置１−３から受信装置２へ送信データが正常に伝送されなかった場合、または、他の送信装置１−３が送信データを伝送中の場合、受信装置２から無線ＬＡＮ用ＡＣＫが返信されないことがある。この場合、無線ＬＡＮ物理層１３−３の送信バッファには送信データが一時的に保持されることになる。一方、仮想送信量カウント部１４において、受信装置２から無線ＬＡＮ用ＡＣＫが返信されないことに伴って、仮想送信量がカウントされる。輻輳ウィンドウ制御部１１３−３は、仮想送信量が大きくなるから、前記数式（２）により、以前よりも低い送信レートを算出し、送信レート指示を送信量調節バッファ１１４に出力する。これにより、送信量調節バッファ１１４により出力される送信データの量は少なくなる。したがって、輻輳ウィンドウ制御部１１３−３は、送信できなかったデータ量である仮想送信量に従って、前記数式（２）により、本来想定していたレートよりも送信レートを下げることで、送信量調節バッファ１１４の送信レートを制御するようにした。つまり、ＴＣＰ／ＩＰ処理部１１−３にて送信データを待機させることで、無線ＬＡＮ物理層１３−３内の送信バッファから所定の時間内に全ての送信データを送ることができ、送信バッファから送信データが溢れて送信データが破棄されることを防ぎ、ＴＣＰ／ＩＰ処理部１１−３による送信データの不要な再送を避けることができる。
【００８４】
尚、無線ＬＡＮ物理層１３−３と仮想送信量カウント部１４とは別々の構成部として設けられているが、無線ＬＡＮ物理層１３−３が、仮想送信量カウント部１４を備えるようにしてもよい。
【００８５】
また、無線ＬＡＮ標準化方式では、複数パケットの無線ＬＡＮ用ＡＣＫをまとめて返信するブロックＡＣＫ方式が規定されている。この場合も同様に、仮想送信量カウント部１４は、ブロックＡＣＫ内で確認応答がなかったパケットのデータ量を仮想送信量としてカウントし、無線ＬＡＮドライバ１２−３に出力する。これにより、前述と同様の手法にて、送信レートを制御することができる。
【００８６】
以上のように、実施例３の送信装置１−３によれば、仮想送信量カウント部１４が、ＡＣＫ未受信を入力し、無線ＬＡＮ用ＡＣＫが想定通りに返信された場合に送信できていたと予想されるデータの量を仮想送信量としてカウントし、ＴＣＰ／ＩＰ処理部１１−３の輻輳ウィンドウ制御部１１３−３が、変調方式切替情報に基づいて、送信可能な最大レートを算出し、前記数式（２）により、送信可能な最大レート及び仮想送信量から送信量調節バッファ１１４における送信レートを算出するようにした。そして、送信量調節バッファ１１４が、輻輳ウィンドウ制御部１１３−３により算出された送信レートに従って、送信データを出力するようにした。これにより、無線伝送路の伝搬状況により、送信装置１−３から受信装置２へデータが正常に伝送されなかったり、他の送信装置１−３によりデータが伝送中であったりして、受信装置２から無線ＬＡＮ用ＡＣＫが返信されない場合、送信量調節バッファ１１４における送信レートは一旦下げられ、無線ＬＡＮ用ＡＣＫが返信された場合、送信レートは上がる。つまり、無線伝送路の伝搬状況、または、無線伝送路を共有する他の送信装置１−３の伝送状況により変化する伝送レートに追従して、送信量調節バッファ１１４における送信レートを制御することができる。したがって、無線ＬＡＮ物理層１３−３内の送信バッファから送信データが溢れることがなく、送信データが破棄されることを防ぎ、ＴＣＰ／ＩＰ処理部１１−３による送信データの不要な再送を避けることができる。また、無線伝送路の伝送可能帯域を効率良く利用することでき、高速伝送を実現することが可能となる。
【００８７】
〔実施例４〕
次に、実施例４について説明する。実施例４は、前述のとおり、ＧＰＳ等により取得した送信装置の位置情報に従って、ＴＣＰ輻輳ウィンドウの送信レートを制御する例である。尚、実施例４では、受信装置２は移動することのない固定局であることを前提とする。
【００８８】
図８は、実施例４による送信装置の構成を示すブロック図である。この送信装置１−４は、ＴＣＰ／ＩＰ処理部１１−４、無線ＬＡＮドライバ１２−４、無線ＬＡＮ物理層１３−４、位置情報測定部１５及び位置−送信レートテーブル保持部（送信レート決定部）１６を備えている。ＴＣＰ／ＩＰ処理部１１−４は、ヘッダ付加部１１１、ＡＣＫ処理部１１２、輻輳ウィンドウ制御部１１３−４及び送信量調節バッファ１１４を備えている。ヘッダ付加部１１１、ＡＣＫ処理部１１２及び送信量調節バッファ１１４は、実施例１と同様であるから説明を省略する。
【００８９】
輻輳ウィンドウ制御部１１３−４は、無線ＬＡＮドライバ１２−４から変調方式切替情報、電界強度及び送信レート指示を入力し、図３に示したステップＳ３０１〜ステップＳ３０７の処理により、変調方式切替情報に基づいて、送信量調節バッファ１１４における送信レートを算出し、送信レート指示を送信量調節バッファ１１４に出力する。また、輻輳ウィンドウ制御部１１３−４は、入力した電界強度を用いて、図３に示したステップＳ３０８〜ステップＳ３１１の処理を行い、無線伝送路が完全に遮蔽される等して通信できる伝搬状況ではないと判断した場合、無線ＬＡＮ物理層１３−４に、変調及び送信処理を中止させることで、入力した送信データ及び保持していた送信データを破棄させ、無線伝送路の伝搬状況が改善したと判断した場合、無線ＬＡＮ物理層１３−４に、変調及び送信処理を再開させる。また、輻輳ウィンドウ制御部１１３−４は、無線ＬＡＮドライバ１２−４から送信レート指示を入力した場合、図３に示したステップＳ３０１〜ステップＳ３０７の処理により算出した送信レートに代えて、入力した送信レート指示を送信量調節バッファ１１４に出力する。すなわち、輻輳ウィンドウ制御部１１３−４は、自らが算出した送信レートよりも、位置−送信レートテーブル保持部１６から無線ＬＡＮドライバ１２−４を介して入力した送信レートを優先して、送信量調節バッファ１１４に出力する。これにより、送信量調節バッファ１１４において、変調方式切替情報に基づいて決定された送信レートよりも、送信装置１−４の位置情報に基づいて決定された送信レートが優先され、送信データが読み出され出力される。
【００９０】
無線ＬＡＮドライバ１２−４は、ＴＣＰ／ＩＰ処理部１１−４から送信データを入力し、入力した送信データを無線ＬＡＮ物理層１３−４に出力する。また、無線ＬＡＮドライバ１２−４は、無線ＬＡＮ物理層１３−４から変調方式切替情報、電界強度及び受信データを入力し、入力した変調方式切替情報、電界強度及び受信データをＴＣＰ／ＩＰ処理部１１−４に出力する。また、無線ＬＡＮドライバ１２−４は、位置−送信レートテーブル保持部１６から送信レート指示を入力し、入力した送信レート指示をＴＣＰ／ＩＰ処理部１１−４に出力する。
【００９１】
無線ＬＡＮ物理層１３−４は、変調・送信部１３１−４、受信・復調部１３２、電界強度測定部１３３及び変調方式決定部１３５を備えている。変調・送信部１３１−４は、実施例１の変調・送信部１３１−１と同様の処理を行い、受信・復調部１３２及び電界強度測定部１３３も実施例１と同様であるから説明を省略する。
【００９２】
変調方式決定部１３５は、電界強度測定部１３３から電界強度を入力し、所定の変換方式テーブルを用いて、入力した電界強度に対応する変調方式を新たな変調方式に決定すると共に、位置−送信レートテーブル保持部１６から変調方式指示を入力し、変調方式指示が示す変調方式を新たな変調方式に決定する。そして、変調方式決定部１３５は、変調方式が変わった場合、変調方式切替情報を無線ＬＡＮドライバ１２−４及び変調・送信部１３１−４に出力すると共に、現在の変調方式を位置−送信レートテーブル保持部１６に出力する。
【００９３】
位置情報測定部１５は、ＧＰＳ等を利用して現在の送信装置１−４の位置を測定し、位置情報を生成して位置−送信レートテーブル保持部１６に出力する。位置−送信レートテーブル保持部１６は、所定のテーブルを保持しており、位置情報測定部１５から送信装置１−４の位置情報を入力すると共に、無線ＬＡＮ物理層１３−４の変調方式決定部１３５から現在の変調方式を入力する。そして、位置−送信レートテーブル保持部１６は、入力した位置情報に対応する送信レートをテーブルから読み出し、送信レート指示を、無線ＬＡＮドライバ１２−４に出力する。この場合、位置−送信レートテーブル保持部１６は、読み出した送信レートが現在の送信可能な最大レートよりも高い場合、所定時間経過後に、送信レート指示を出力する。また、位置−送信レートテーブル保持部１６は、入力した位置情報に対応する送信レートがテーブルに存在しない場合、入力した現在の変調方式について、実施例１の輻輳ウィンドウ制御部１１３−１と同様に、現在の送信可能な最大レートを算出し、現在の送信可能な最大レートを、位置情報に対応する送信レートとしてテーブルに格納する。ここで、テーブルには、位置情報及びこの位置情報に対応する送信レート等が格納されており、位置情報は、基準位置を中心とした所定範囲を示す情報である。
【００９４】
また、位置−送信レートテーブル保持部１６は、送信装置１−４の移動による位置情報の変化に伴い、テーブルから読み出した第１の位置情報に対応する送信レートよりも、その後に読み出した第２の位置情報に対応する送信レートの方が低くなっている場合、第２の位置情報に対応する送信レートよりも一層低い送信レートを決定し、送信レート指示を無線ＬＡＮドライバ１２−４に出力し、所定時間経過した後、決定した送信レートに相当する送信可能な最大レートの変調方式を決定し、変調方式指示を無線ＬＡＮ物理層１３−４の変調方式決定部１３５に出力する。これにより、変調方式決定部１３５は、位置−送信レートテーブル保持部１６から変調方式指示を入力し、新たな変調方式としてその変調方式指示が示す変調方式に決定する。
【００９５】
図９は、位置−送信レートテーブル保持部１６による処理を示すフローチャートである。まず、位置−送信レートテーブル保持部１６は、位置情報測定部１５から送信装置１−４の位置情報を入力すると共に、無線ＬＡＮ物理層１３−４の変調方式決定部１３５から現在の変調方式を入力し（ステップＳ９０１）、現在の変調方式に対応する誤り訂正のための冗長データ量及び伝送プロトコルヘッダ量等を用いて所定の除算処理を行うことにより、現在の送信可能な最大レートを算出する（ステップＳ９０２）。
【００９６】
位置−送信レートテーブル保持部１６は、テーブルに、位置情報に対応する送信レートが存在するか否かを判定し（ステップＳ９０３）、位置情報に対応する送信レートが存在すると判定した場合（ステップＳ９０３：Ｙ）、テーブルから位置情報に対応する送信レートを読み出し、新たな送信レートを決定する（ステップＳ９０４）。一方、位置−送信レートテーブル保持部１６は、ステップＳ９０３において、位置情報に対応する送信レートが存在しないと判定した場合（ステップＳ９０３：Ｎ）、ステップＳ９０２にて算出した現在の送信可能な最大レートを、位置情報に対応する送信レートとし、テーブルに格納する（ステップＳ９０５）。
【００９７】
位置−送信レートテーブル保持部１６は、ステップＳ９０４から移行して、新たに決定した送信レートと、現在の送信可能な最大レートとを比較し（ステップＳ９０６）、決定した送信レートが現在の送信可能な最大レート以下であると判定した場合（ステップＳ９０６：≦）、送信レート指示を無線ＬＡＮドライバ１２−４に出力する（ステップＳ９０７）。これにより、無線伝送路の伝搬状況が悪化して実際に送信可能な最大レートが低下する前に、ＴＣＰ／ＩＰ処理部１１−４の送信量調節バッファ１１４における送信レートは速やかに低くなり、ＴＣＰ／ＩＰ処理部１１−４により出力される送信データの量が少なくなり、無線ＬＡＮ物理層１３−４の送信バッファは溢れることがないから、送信データの欠落を防ぐことができ、ＴＣＰによる不要な再送を避けた効率の良いデータ伝送が可能となる。
【００９８】
一方、位置−送信レートテーブル保持部１６は、ステップＳ９０６において、決定した送信レートが現在の送信可能な最大レートよりも高いと判定した場合（ステップＳ９０６：＞）、所定時間経過後に、送信レート指示を無線ＬＡＮドライバ１２−４に出力する（ステップＳ９０８）。これにより、ＴＣＰ／ＩＰ処理部１１−４の送信量調節バッファ１１４における送信レートは、無線ＬＡＮ物理層１３−４の送信バッファから送信データが送信されるのを待った後に高くなるから、送信データの欠落を防ぐことができ、ＴＣＰによる不要な再送を避けた効率の良いデータ伝送が可能となる。
【００９９】
尚、位置−送信レートテーブル保持部１６は、ステップＳ９０８の処理の代わりに、さらに位置情報が更新され、現在の変調方式から算出した現在の送信可能な最大レートが所定のレート（例えば、決定した送信レートに近い所定値）にまで高くなるのを待ってから、テーブルから読み出した送信レートの送信レート指示を出力するようにしてもよい。
【０１００】
位置−送信レートテーブル保持部１６は、ステップＳ９０５、ステップＳ９０７またはステップＳ９０８から移行して、送信装置１−４の移動による位置情報の変化に伴い、ステップＳ９０４にてテーブルから読み出した送信レートが低下しているか否かを判定する（ステップＳ９０９）。例えば、位置−送信レートテーブル保持部１６は、所定時間の間、テーブルから読み出した複数の送信レート及び読み出した時間に基づいて、時間的に低下傾向にあるか否かを判定する。位置−送信レートテーブル保持部１６は、ステップＳ９０９において、送信レートが低下していると判定した場合（ステップＳ９０９：Ｙ）、そのときの位置情報に対応する送信レートよりも一層低い最低値の送信レートを決定する（ステップＳ９１０）。例えば、位置−送信レートテーブル保持部１６は、そのときの位置情報に対応する送信レートから所定値を減算し、減算結果の最低値を送信レートに決定する。
【０１０１】
位置−送信レートテーブル保持部１６は、ステップＳ９１０にて決定した最低値の送信レートの送信レート指示を無線ＬＡＮドライバ１２−４に出力する（ステップＳ９１１）。また、位置−送信レートテーブル保持部１６は、所定時間経過した後、ステップＳ９１０にて決定した最低値の送信レートに対応する変調方式を決定し（ステップＳ９１２）、変調方式指示を無線ＬＡＮ物理層１３−４の変調方式決定部１３５に出力し（ステップＳ９１３）、処理を終了してステップＳ９０１へ移行する。例えば、位置−送信レートテーブル保持部１６は、最低値の送信レートと、送信可能な最大レートの変調方式とが対応して格納されたテーブルを用いて、変調方式を決定する。
【０１０２】
ここで、送信可能な最大レートが低くなる位置に送信装置１−４が近づいた場合には、無線ＬＡＮ物理層１３−４の変調方式決定部１３５が電界強度の変化に伴って変調方式を切り替える前に、位置−送信レートテーブル保持部１６は、まず、ＴＣＰ／ＩＰ処理部１１−４の送信量調節バッファ１１４における送信レートを低い値に制御し、その後に、無線ＬＡＮ物理層１３−４の変調方式決定部１３５に対し変調方式を直接変更するようにした。一般に、送信可能な最大レートが低くなる位置に近づくことで、電界強度の低下に伴うパケットロスが発生するが、位置−送信レートテーブル保持部１６の処理により、パケットロスを低減することができ、ＴＣＰ／ＩＰ処理部１１−４及び無線ＬＡＮ物理層１３−４による再送処理を避けた効率の良いデータ伝送が可能となる。
【０１０３】
一方、位置−送信レートテーブル保持部１６は、ステップＳ９０９において、送信レートが低下していないと判定した場合（ステップＳ９０９：Ｎ）、処理を終了してステップＳ９０１へ移行する。
【０１０４】
尚、位置情報及びこれに対応する送信レートがテーブルに存在している場合に、位置−送信レートテーブル保持部１６は、ステップＳ９０６において、テーブルから読み出した送信レートが現在の送信可能な最大レートよりも高いと判定した場合（ステップＳ９０６：＞）、テーブルに格納されている送信レートを、この送信レート以下である現在の送信可能な最大レートに更新するようにしてもよい。これにより、無線伝送路の伝搬状況が最も悪化している場合に合わせたテーブルが生成され、ＴＣＰ／ＩＰ処理部１１−４及び無線ＬＡＮ物理層１３−４による再送処理を避けた一層効率の良いデータ伝送が可能となる。
【０１０５】
尚、実施例４は、実施例１の構成を基本とし、さらに位置情報測定部１５及び位置−送信レートテーブル保持部１６を備え、ＧＰＳにより取得した位置情報に従って、予め送信レートを制御するものである。これに対し、実施例４の変形例は、実施例２，３の構成を基本とし、さらに位置情報測定部１５及び位置−送信レートテーブル保持部１６を備えるようにしてもよい。また、無線ＬＡＮドライバ１２−４は、位置情報測定部１５及び位置−送信レートテーブル保持部１６を備えるようにしてもよい。また、位置−送信レートテーブル保持部１６は、送信レート指示を、無線ＬＡＮドライバ１２−４を介してＴＣＰ／ＩＰ処理部１１−４の輻輳ウィンドウ制御部１１３−４へ出力するようにしたが、ＴＣＰ／ＩＰ処理部１１−４の輻輳ウィンドウ制御部１１３−４に直接出力するようにしてもよい。
【０１０６】
以上のように、実施例４の送信装置１−４によれば、位置−送信レートテーブル保持部１６が、送信装置１−４の位置情報に対応する送信レートをテーブルから読み出し、送信レート指示を、無線ＬＡＮドライバ１２−４を介してＴＣＰ／ＩＰ処理部１１−４の輻輳ウィンドウ制御部１１３−４へ出力する際に、テーブルから読み出した送信レートと、現在の変調方式から算出した現在の送信可能な最大レートとを比較し、読み出した送信レートが現在の送信可能な最大レート以下の場合、即座に送信レート指示を出力し、読み出した送信レートが現在の送信可能な最大レートよりも高い場合、所定時間経過後に、送信レート指示を出力するようにした。これにより、無線伝送路の伝搬状況が悪化して実際に送信可能な最大レートが低下する前に、送信レートを低下させ、ＴＣＰ／ＩＰ処理部１１−４の送信量調節バッファ１１４により出力される送信データ量を減少させることができる。したがって、無線ＬＡＮ物理層１３−４内の送信バッファから送信データが溢れることがなく、送信データが破棄されることを防ぎ、ＴＣＰ／ＩＰ処理部１１−４による送信データの不要な再送を避けることができる。また、無線伝送路の伝送可能帯域を効率良く利用することでき、高速伝送を実現することが可能となる。
【０１０７】
〔実施例５〕
次に、実施例５について説明する。実施例５は、前述のとおり、実施例１〜４の変形例であり、実施例１〜４における送信装置１−１〜１−４のＴＣＰ／ＩＰ処理部１１−１〜１１−４と無線ＬＡＮ物理層１３−１〜１３−４とが一体化されておらず、別々の装置として構成され、無線ＬＡＮ物理層１３−１〜１３−４が、無線ＬＡＮアクセスポイントまたは無線ＬＡＮブリッジ装置として外部に設置される場合の例である。
【０１０８】
図１０は、実施例５による送信装置（送信システム）の構成を示すブロック図である。この送信装置１−５は、データ送信装置１７及び無線ＬＡＮアクセスポイント１８を備えて構成される。データ送信装置１７は、ＴＣＰ／ＩＰ処理部１１−５を含んでおり、具体的には、実施例１〜３のＴＣＰ／ＩＰ処理部１１−１〜１１−３及び無線ＬＡＮドライバ１２−１〜１２−３、または、実施例４のＴＣＰ／ＩＰ処理部１１−４、無線ＬＡＮドライバ１２−４、位置情報測定部１５及び位置−送信レートテーブル保持部１６のうちのいずれかの実施例の構成部を備えている。このデータ送信装置１７は、一般のＰＣ（Personal Computer）等のように、ＴＣＰ／ＩＰによる通信が可能な一般の端末装置である。データ送信装置１７は、送信データを入力し、所定の送信レートにて送信データを、例えばイーサネット（登録商標）等の有線媒体を介して無線ＬＡＮアクセスポイント１８へ送信する。また、データ送信装置１７は、無線ＬＡＮアクセスポイント１８から電界強度及び変調方式切替情報等を受信し、送信可能な最大レートを算出し、実施例１〜４と同様にして送信レートを求め、送信量調節バッファ１１４から出力する送信データの量を制御する。
【０１０９】
無線ＬＡＮアクセスポイント１８は、無線ＬＡＮ物理層１３−５を含んでおり、具体的には、実施例１，２，４の無線ＬＡＮ物理層１３−１，１３−２，１３−４、または、実施例３の無線ＬＡＮ物理層１３−３及び仮想送信量カウント部１４のうちのいずれかの実施例の構成部を備えている。この無線ＬＡＮアクセスポイント１８は、データ送信装置１７から送信データを受信し、無線ＬＡＮプロトコルにより受信装置２へ送信し、無線ＬＡＮ用ＡＣＫ等を受信する。また、無線ＬＡＮアクセスポイント１８は、電界強度を測定し、変調方式を決定する等の処理を行い、電界強度及び変調方式切替情報等をＴＣＰ拡張ヘッダ内等に記述し、有線媒体を介してデータ送信装置１７へ送信する。
【０１１０】
以上のように、実施例５の送信装置１−５によれば、無線ＬＡＮ物理層１３−５を、ＴＣＰ／ＩＰ処理部１１−５を含むデータ送信装置１７の外部に設置した無線ＬＡＮアクセスポイント１８内に設けるようにした。この場合も、実施例１〜４と同様に、無線ＬＡＮ物理層１３−５内の送信バッファから送信データが溢れることがなく、送信データが破棄されることを防ぎ、ＴＣＰ／ＩＰ処理部１１−５による送信データの不要な再送を避けることができる。また、無線伝送路の伝送可能帯域を効率良く利用することでき、高速伝送を実現することが可能となる。
【符号の説明】
【０１１１】
１  送信装置
２  受信装置
１０  送信アプリケーション
１１，２２  ＴＣＰ／ＩＰ処理部
１２，２１  無線ＬＡＮドライバ
１３  無線ＬＡＮ物理層（送信部）
１４  仮想送信量カウント部
１５  位置情報測定部
１６  位置−送信レートテーブル保持部
１７  データ送信装置
１８  無線ＬＡＮアクセスポイント
２０  無線ＬＡＮ物理層（受信部）
２３  受信アプリケーション
１１１  ヘッダ付加部
１１２  ＡＣＫ処理部
１１３  輻輳ウィンドウ制御部
１１４  送信量調節バッファ
１３１  変調・送信部
１３２  受信・復調部
１３３  電界強度測定部
１３４，１３５  変調方式決定部
【図１】
0005695506.tif 000002
【図２】
0005695506.tif 000003
【図３】
0005695506.tif 000004
【図４】
0005695506.tif 000005
【図５】
0005695506.tif 000006
【図６】
0005695506.tif 000007
【図７】
0005695506.tif 000008
【図８】
0005695506.tif 000009
【図９】
0005695506.tif 000010
【図１０】
0005695506.tif 000011