(57)【特許請求の範囲】
【請求項１】
外部から入力されるパケットを蓄積するバッファと、
上記バッファに蓄積された上記パケットを順次読み出して送信先に送信するパケット送信手段と、
上記パケットの受信に応じて上記送信先から返信されるパケット受領信号を受信するパケット受領信号受信手段と、
上記バッファ内に蓄積された上記パケットの蓄積量を当該バッファから取得し、上記蓄積量が第１の設定値未満のとき、上記蓄積量が少ないレベルで推移していると判断して最大再送回数を所定回数に固定し、上記蓄積量が上記第１の設定値以上で、かつ上記第１の設定値より大きい第２の設定値未満のとき、上記蓄積量の増加に応じて上記最大再送回数を適応的に減少させ、上記蓄積量が上記第２の設定値以上のとき、上記蓄積量が高いレベルで推移していると判断して上記最大再送回数を０に設定する再送回数制御手段と、
上記パケット送信手段により送信した上記パケットに対する上記パケット受領信号を受信できないとき、上記パケット送信手段を制御して上記最大再送回数を上限として上記パケットを再送信させるパケット再送制御手段と、
を具えることを特徴とするパケット転送装置。
【請求項２】
上記再送回数制御手段は、所定時間内の上記蓄積量の平均値として時間平均蓄積量を算出し、上記時間平均蓄積量が第１の設定値未満のとき、上記時間平均蓄積量が少ないレベルで推移していると判断して最大再送回数を所定回数に固定し、上記時間平均蓄積量が上記第１の設定値以上で、かつ上記第１の設定値より大きい第２の設定値未満のとき、上記時間平均蓄積量の増加に応じて上記最大再送回数を適応的に減少させ、上記時間平均蓄積量が上記第２の設定値以上のとき、上記時間平均蓄積量が高いレベルで推移していると判断して上記最大再送回数を０に設定する
ことを特徴とする請求項１に記載のパケット転送装置。
【請求項３】
上記再送回数制御手段は、前回のパケット出力時の上記蓄積量及び今回のパケット出力時の上記蓄積量の平均値として平均蓄積量を算出し、上記平均蓄積量が第１の設定値未満のとき、上記平均蓄積量が少ないレベルで推移していると判断して最大再送回数を所定回数に固定し、上記平均蓄積量が上記第１の設定値以上で、かつ上記第１の設定値より大きい第２の設定値未満のとき、上記平均蓄積量の増加に応じて上記最大再送回数を適応的に減少させ、上記平均蓄積量が上記第２の設定値以上のとき、上記平均蓄積量が高いレベルで推移していると判断して上記最大再送回数を０に設定する
ことを特徴とする請求項１に記載のパケット転送装置。
【請求項４】
上記再送回数制御手段は、前回のパケット出力時の上記蓄積量及び今回のパケット出力時の上記蓄積量に対してそれぞれ所定の重み付けをして上記平均蓄積量を算出する
ことを特徴とする請求項３に記載のパケット転送装置。
【請求項５】
上記バッファは送信先毎の上記パケットを蓄積し、
上記再送回数制御手段は、上記送信先毎の上記パケットの上記蓄積量をそれぞれ上記バッファから取得し、当該送信先毎の上記蓄積量に応じて、対応する上記送信先に対する上記最大再送回数をそれぞれ制御する
ことを特徴とする請求項１に記載のパケット転送装置。
【請求項６】
バッファに蓄積した外部から入力されたパケットを順次読み出して送信先に送信するパケット転送装置の再送制御方法において、
上記バッファ内に蓄積された上記パケットの蓄積量を当該バッファから取得する蓄積量取得ステップと、
上記蓄積量が第１の設定値未満のとき、上記蓄積量が少ないレベルで推移していると判断して最大再送回数を所定回数に固定し、上記蓄積量が上記第１の設定値以上で、かつ上記第１の設定値より大きい第２の設定値未満のとき、上記蓄積量の増加に応じて上記最大再送回数を適応的に減少させ、上記蓄積量が上記第２の設定値以上のとき、上記蓄積量が高いレベルで推移していると判断して上記最大再送回数を０に設定する再送回数制御ステップと、
送信した上記パケットの受信に応じて上記送信先から返信されるパケット受信信号を受信できないとき、上記最大再送回数を上限として上記パケットを再送信させるパケット再送信ステップと
を具えることを特徴とする再送制御方法。
【請求項７】
バッファに蓄積した外部から入力されたパケットを順次読み出して送信先に送信するパケット転送装置に対し、
上記バッファ内に蓄積された上記パケットの蓄積量を当該バッファから取得する蓄積量取得ステップと、
上記蓄積量が第１の設定値未満のとき、上記蓄積量が少ないレベルで推移していると判断して最大再送回数を所定回数に固定し、上記蓄積量が上記第１の設定値以上で、かつ上記第１の設定値より大きい第２の設定値未満のとき、上記蓄積量の増加に応じて上記最大再送回数を適応的に減少させ、上記蓄積量が上記第２の設定値以上のとき、上記蓄積量が高いレベルで推移していると判断して上記最大再送回数を０に設定する再送回数制御ステップと、
送信した上記パケットの受信に応じて上記送信先から返信されるパケット受信信号を受信できないとき、上記最大再送回数を上限として上記パケットを再送信させるパケット再送信ステップと
を実行させる再送制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はパケット出力装置に関し、例えば無線ＬＡＮシステムのアクセスポイントに適用して好適なものである。
【０００２】
【従来の技術】
従来、ＩＥＥＥ（Institute of Electrical and Electronics Engineers）８０２．１１等の無線ＬＡＮ（Local Area Network）システムにおいては、パケット間の衝突や電波伝搬環境の変動等の原因により、送信したデータパケットが確実に送信先に到達する保証が得られない。このため無線ＬＡＮシステムにおいては、データパケットの送信後、送信先から返信されるデータ受領信号（これをＡＣＫと呼ぶ）を待ち受け、所定時間内に当該ＡＣＫを受信できない場合にデータパケットの再送を行うことにより、データパケットの到達率を向上するようになされている（例えば、特許文献１）。
【０００３】
この再送動作をリトライと呼ぶ。そして無線ＬＡＮシステムにおいては、ＡＣＫを受信できない場合、予め設定された最大リトライ回数（例えば１０回）に達するまでリトライを繰り返す。
【０００４】
【特許文献１】
特開平１１−２５２１１４号公報
【０００５】
【発明が解決しようとする課題】
上述したように従来の無線ＬＡＮシステムにおいては、ＡＣＫを受信できない場合、最大リトライ回数までリトライを繰り返していた。リトライの実行中は次のデータパケットを送信できないため、大量のデータパケットが入力されている状態でリトライが発生すると、送信バッファへの入力に対して出力（送信）が追いつかなくなり、送信バッファ内の送信待ちパケット数（キュー長）が増大してしまう。そして、このキュー長の増大によって送信バッファ内での遅延が大きくなり伝送効率が低下してしまうとともに、バッファオーバーフローが発生することがあるという問題があった。
【０００６】
かかるバッファオーバーフローを回避するために、送信バッファのバッファサイズを大きくすることが考えられるが、これによってキュー長も増大し、送信バッファ内での遅延がさらに大きくなるという問題があった。
【０００７】
また、リトライによる送信バッファ内での遅延を減少させるため、最大リトライ回数を少なくすることも考えられるが、これにより最大リトライ回数までリトライを行っても送達できないデータパケットが増加してパケット送信エラー率が悪化し、伝送効率が低下してしまうという問題があった。
【０００８】
本発明は以上の点を考慮してなされたもので、簡易な構成で、最小限の遅延で効率良くパケットを転送し得るパケット転送装置を提案しようとするものである。
【０００９】
【課題を解決するための手段】
かかる課題を解決するため本発明のパケット転送装置においては、外部から入力されるパケットを蓄積するバッファと、バッファに蓄積されたパケットを順次読み出して送信先に送信するパケット送信手段と、パケットの受信に応じて送信先から返信されるパケット受領信号を受信するパケット受領信号受信手段と、バッファ内に蓄積されたパケットの蓄積量を当該バッファから取得し、蓄積量が第１の設定値未満のとき、蓄積量が少ないレベルで推移していると判断して最大再送回数を所定回数に固定し、蓄積量が第１の設定値以上で、かつ第１の設定値より大きい第２の設定値未満のとき、蓄積量の増加に応じて最大再送回数を適応的に減少させ、蓄積量が第２の設定値以上のとき、蓄積量が高いレベルで推移していると判断して最大再送回数を０に設定する再送回数制御手段と、送信したパケットに対するパケット受領信号を受信できないとき、パケット送信手段を制御して最大再送回数を上限としてパケットを再送信させるパケット再送制御手段とを設けるようにした。
また本発明においては、バッファに蓄積した外部から入力されたパケットを順次読み出して送信先に送信するパケット転送装置の再送制御方法において、バッファ内に蓄積されたパケットの蓄積量を当該バッファから取得する蓄積量取得ステップと、蓄積量が第１の設定値未満のとき、蓄積量が少ないレベルで推移していると判断して最大再送回数を所定回数に固定し、蓄積量が第１の設定値以上で、かつ第１の設定値より大きい第２の設定値未満のとき、蓄積量の増加に応じて最大再送回数を適応的に減少させ、蓄積量が第２の設定値以上のとき、蓄積量が高いレベルで推移していると判断して最大再送回数を０に設定する再送回数制御ステップと、送信したパケットの受信に応じて送信先から返信されるパケット受信信号を受信できないとき、最大再送回数を上限としてパケットを再送信させるパケット再送信ステップとを設けるようにした。
さらに本発明の再送制御プログラムにおいては、バッファに蓄積した外部から入力されたパケットを順次読み出して送信先に送信するパケット転送装置に対し、バッファ内に蓄積されたパケットの蓄積量を当該バッファから取得する蓄積量取得ステップと、蓄積量が第１の設定値未満のとき、蓄積量が少ないレベルで推移していると判断して最大再送回数を所定回数に固定し、蓄積量が第１の設定値以上で、かつ第１の設定値より大きい第２の設定値未満のとき、蓄積量の増加に応じて最大再送回数を適応的に減少させ、蓄積量が第２の設定値以上のとき、蓄積量が高いレベルで推移していると判断して最大再送回数を０に設定する再送回数制御ステップと、送信したパケットの受信に応じて送信先から返信されるパケット受信信号を受信できないとき、最大再送回数を上限としてパケットを再送信させるパケット再送信ステップとを設けるようにした。
【００１０】
これにより、蓄積量が少ないレベルで推移している第１の設定値未満のとき、最大再送回数を所定回数に固定して当該所定回数まで必ずパケットを再送信することにより十分なエラー補正を行うことができ、蓄積量が高いレベルで推移している第１の設定値より大きい第２の設定値以上のとき、最大再送回数を０に設定してパケットを再送信しないようにすることにより蓄積量の増加を阻止し、伝送遅延やバッファオーバーフローを回避することができ、蓄積量が第１の設定値以上でかつ第２の設定値未満のとき、蓄積量の増加に応じて最大再送回数を適応的に減少させ、エラー補正と、伝送遅延やバッファオーバーフローの回避とのバランスが取れた最大再送回数を決定することにより、エラー補正を行うと共に伝送遅延やバッファオーバーフローを回避したバランスの良い状態でパケットを転送することができる。
【００１１】
【発明の実施の形態】
以下図面について、本発明の一実施の形態を詳述する。
【００１２】
（１）第１の実施の形態
（１−１）無線ＬＡＮシステムの全体構成
図１において、１は全体として本発明による第１の実施の形態の無線ＬＡＮシステムを示し、パケット転送装置としてのアクセスポイント２と、複数の無線通信端末３とで構成される。アクセスポイント２と無線通信端末３は、例えば２．４[GHz] 帯で相互に無線通信を行う。
【００１３】
実際上、無線通信端末３はＰＣカード型の無線ＬＡＮカードであり、それぞれ対応するノートブック型パーソナルコンピュータ（以下、これをノートパソコンと呼ぶ）４のＰＣカードスロットに挿着されている。一方、アクセスポイント２はインターネットやイントラネット等の外部ネットワーク５に接続されている。
【００１４】
そして無線ＬＡＮシステム１においては、アクセスポイント２及び無線通信端末３を介して、外部ネットワーク５に接続されたパーソナルコンピュータ等の情報処理装置と各ノートパソコン４との間でデータ通信を行い得るようになされている。
【００１５】
（１−２）アクセスポイントの構成
次に、アクセスポイント２の構成を図２を用いて説明する。
【００１６】
図２に示すようにアクセスポイント２においては、ＣＰＵ（Central Processing Unit ）１０に対し、バス１１を介してＲＡＭ（Random Access Memory）１２、ＲＯＭ（Read Only Memory）１３、ネットワークインターフェース１４、バッファメモリ１５及び送受信部１６が接続されている。ＣＰＵ１０は、ＲＯＭ１３に格納されている通信制御プログラムを読み出してＲＡＭ１２上で実行することにより、アクセスポイント２の各部を統括的に制御する。
【００１７】
送受信部１６は、無線通信端末３から送信された上りの送信信号をアンテナ１７を介して受信して復調し、受信データのパケットを生成して順次バッファメモリ１５の受信バッファ１５Ｂに入力する。ネットワークインターフェース１４は、受信バッファ１５Ｂから受信データのパケットを順次読み出して外部ネットワーク５に供給する。
【００１８】
またネットワークインターフェース１４は、外部ネットワーク５から供給された無線通信端末３あての送信データのパケットを、順次バッファメモリ１５の送信バッファ１５Ａに入力する。パケット送信手段としての送受信部１６は、送信バッファ１５Ａから送信データのパケットを順次読み出し、アンテナ１７を介して無線通信端末３に向けて送信する。
【００１９】
このときパケット再送制御手段としてのＣＰＵ１０は、後述するリトライ制御処理に従って送受信部１６を制御し、パケット送信先の無線通信端末３から返信されるパケット受領信号としてのＡＣＫをパケット受領信号受信手段としての送受信部１６が所定時間内に受信できない場合、最大再送回数としての最大リトライ回数までリトライを繰り返す。
【００２０】
さらにこのとき、再送回数制御手段としてのＣＰＵ１０は送信バッファ１５Ａ内のキュー長を監視しており、パケットの蓄積量としてのキュー長の変化に応じて最大リトライ回数を増減することによりキュー長を適切に制御し、伝送遅延やバッファオーバーフローを回避するようになされている。
【００２１】
（１−３）アクセスポイントのリトライ制御処理
次に、上述したアクセスポイント２のリトライ制御処理を図３に示すフローチャートを用いて詳細に説明する。
【００２２】
アクセスポイント２のＣＰＵ１０は通信制御プログラムに従い、図３に示すリトライ制御処理手順ＲＴ１の開始ステップから入ってステップＳＰ１に移る。ステップＳＰ１においてＣＰＵ１０は、バッファメモリ１５から、送信バッファ１５Ａ内の送信待ちパケットのパケット数であるキュー長Ｌq を取得し、次のステップＳＰ２に移る。
【００２３】
ステップＳＰ２においてＣＰＵ１０は、取得したキュー長Ｌq が１パケット以上あるか否かを判定する。ステップＳＰ２において、キュー長Ｌq が１パケット未満（すなわち０パケット、送信バッファ１５Ａ内に送信待ちパケットが無い状態）の場合、ＣＰＵ１０はステップＳＰ１に戻り、送信バッファ１５Ａに送信パケットが入力されるのを待ち受ける。
【００２４】
これに対して、キュー長Ｌq が１パケット以上（送信バッファ１５Ａ内に送信待ちパケットがある状態）の場合、ＣＰＵ１０はステップＳＰ３に移り、取得したキュー長Ｌq に基づき、次式を用いて最大リトライ回数Ｒmax を決定する。
【００２５】
Ｒmax ＝  １０        （  １≦Ｌq ＜１０）
Ｒmax ＝  ２０−Ｌq   （１０≦Ｌq ＜２０）
Ｒmax ＝  ０          （２０≦Ｌq ）                    ……（１）
【００２６】
すなわちキュー長Ｌq が１〜１０の時、最大リトライ回数は１０回となり、以降キュー長Ｌq が１増加する毎に最大リトライ回数は１回ずつ減少し、キュー長Ｌq が２０以上の時、最大リトライ回数は０回（リトライを行わない）となる。
【００２７】
ステップＳＰ４において、ＣＰＵ１０はバッファメモリ１５を制御し、送信バッファ１５Ａ内の送信キューからパケットを一つ取り出して送受信部１６に入力し、次のステップＳＰ５に移る。ステップＳＰ５においてＣＰＵ１０は、リトライ回数カウンタ（図示せず）のカウンタ値であるリトライ回数Ｒｎを０に設定してステップＳＰ６に移る。
【００２８】
ステップＳＰ６において、ＣＰＵ１０は送受信部１６を制御し、パケットをアンテナ１７を介して送信しステップＳＰ７に移る。そしてＣＰＵ１０はステップＳＰ７において、当該送信したパケットに対して送信先から返信されるＡＣＫを所定の待機時間の間待ち受ける。
【００２９】
ステップＳＰ７において待機時間内にＡＣＫを受信した場合、ＣＰＵ１０は現在のパケットに対する処理を終了してステップＳＰ１に戻り、次のパケットに対する処理を開始する。これに対して、ステップＳＰ７において待機時間内にＡＣＫを受信できなかった場合、ＣＰＵ１０はステップＳＰ８に移る。
【００３０】
ステップＳＰ８においてＣＰＵ１０は、現在のリトライ回数Ｒｎと最大リトライ回数Ｒmax とを比較する。
【００３１】
ステップＳＰ８において、リトライ回数Ｒｎが最大リトライ回数Ｒmax 未満の場合、ＣＰＵ１０はステップＳＰ９に移り、リトライ回数Ｒｎに「１」を加算した後ステップＳＰ６に移り、パケットを再送信（リトライ）する。
【００３２】
これに対してステップＳＰ８において、リトライ回数Ｒｎが最大リトライ回数Ｒmax 未満ではない場合（実際上はＲｎ＝Ｒmax ）、ＣＰＵ１０はこれ以上リトライを行うことなく現在のパケットを破棄してステップＳＰ１に戻り、次のパケットに対する処理を開始する。アクセスポイント２のＣＰＵ１０は、上述した処理手順を常に実行する。
【００３３】
（１−４）動作及び効果
以上の構成において、アクセスポイント２のＣＰＵ１０はバッファメモリ１５の送信バッファ１５Ａからキュー長Ｌq を取得し、当該キュー長Ｌq に基づいて最大リトライ回数Ｒmax を決定してパケットのリトライ処理を行う。
【００３４】
そしてＣＰＵ１０は逐次キュー長Ｌq を参照し、キュー長Ｌq の増加に応じて最大リトライ回数Ｒmax を減少させるとともに、送信キュー長Ｌq の減少に応じて最大リトライ回数Ｒmax を増加させる。
【００３５】
例えば、送信データのデータレートが高く、かつ一定の率でリトライが発生している場合、徐々に送信バッファ１５Ａのキュー長Ｌq が増加していく。この場合ＣＰＵ１０は、キュー長Ｌq の増加に応じて最大リトライ回数を減少させることによりキュー長Ｌq の増加を阻止し、当該キュー長Ｌq を適正に保って伝送遅延やバッファオーバーフローを回避する。ここで、最大リトライ回数を少なくするとリトライの失敗によるパケットの不達が増加するが、無線ＬＡＮシステムにおいては上位レイヤのプロトコルによって不達パケットが再送されるため、システム全体でパケットの不達をカバーすることができる。
【００３６】
また、送信データのデータレートが低い場合、送信バッファ１５Ａのキュー長Ｌq は少ないレベルで推移する。この場合ＣＰＵ１０は、少ないキュー長Ｌq に応じて最大リトライ回数を増加させ、リトライによる十分なエラー補正を行う。
【００３７】
以上の構成によれば、送信バッファ１５Ａのキュー長に応じて最大リトライ回数を増減するようにしたことにより、データレートが高くキュー長が長い場合は最大リトライ回数を少なくしてキュー長の増加を防ぐとともに、データレートが低くキュー長が短い場合は最大リトライ回数を増加させて十分なエラー補正を行うことができ、最小限の遅延で効率良くパケットを転送することができる。
【００３８】
（２）第２の実施の形態
上述した第１の実施の形態においては、パケット送信時における送信バッファ１５Ａのキュー長に応じて逐次最大リトライ回数を増減するようにしたが、本発明はこれに限らず、一定期間内におけるキュー長の平均値を求め、当該平均値に応じて最大リトライ回数を増減するようにしてもよい。この場合、最大リトライ回数の変化が緩やかになり、安定したリトライ動作が可能となる。
【００３９】
キュー長の平均値の算出方法としては、実時間における平均値（例えば５秒間の平均キュー長）を正確に算出しても良いが、次式を用いて実効キュー長を簡易に算出し、当該実効キュー長に応じて最大リトライ回数を増減すれば、少ない計算処理量でリトライ動作を安定化することができる。
【００４０】
Ｌn ＝１／２・Ｌq ＋１／２・Ｌn-1   （但しＬ0 ＝  ０）  ……（２）
【００４１】
すなわちｎ回目のパケット出力時の実効キュー長をＬn とし、現在のキュー長Ｌq と前回のパケット出力時の実効キュー長Ｌn-1 の平均値を、今回のパケット出力時の実効キュー長Ｌn とする。この実効キュー長Ｌn は、前回のパケット出力時のキュー長及び今回のパケット出力時のキュー長の重み付け平均に相当する。
【００４２】
かかる実効キュー長Ｌn を用いた第２の実施の形態のリトライ制御処理を、図４に示すフローチャートを用いて詳細に説明する。無線ＬＡＮシステム１の全体構成及びアクセスポイント２の構成は、上述した第１の実施の形態と同一であるので説明を省略する。
【００４３】
すなわち、アクセスポイント２のＣＰＵ１０は通信制御プログラムに従い、図４に示すリトライ制御処理手順ＲＴ２の開始ステップから入ってステップＳＰ１１に移る。ステップＳＰ１１においてＣＰＵ１０は、実効キュー長Ｌn を０に設定し、次のステップＳＰ１２に移る。
【００４４】
ステップＳＰ１２においてＣＰＵ１０は、バッファメモリ１５から送信バッファ１５Ａのキュー長Ｌq を取得し、次のステップＳＰ１３に移る。
【００４５】
ステップＳＰ１３においてＣＰＵ１０は、取得したキュー長Ｌq が１パケット以上あるか否かを判定する。ステップＳＰ２において、キュー長Ｌq が１パケット未満で送信待ちパケットが存在しない場合、ＣＰＵ１０はステップＳＰ１１に戻り、送信バッファ１５Ａに送信パケットが入力されるのを待ち受ける。
【００４６】
これに対して、出力キュー長Ｌq が１パケット以上で送信待ちパケットが存在する場合、ＣＰＵ１０はステップＳＰ１４に移り、取得したキュー長Ｌq に基づき、上述した（２）式を用いて実効キュー長Ｌn を算出する。更にＣＰＵ１０はステップＳＰ１５において、算出した実効キュー長Ｌn に基づき、次式を用いて最大リトライ回数Ｒmax を決定する。
【００４７】
Ｒmax ＝  １０        （  １≦Ｌn ＜１０）
Ｒmax ＝  ２０−Ｌn   （１０≦Ｌn ＜２０）
Ｒmax ＝  ０          （２０≦Ｌn ）                    ……（３）
【００４８】
ステップＳＰ１６において、ＣＰＵ１０はバッファメモリ１５を制御し、送信バッファ１５Ａ内の送信キューからパケットを一つ取り出して送受信部１６に入力し次のステップＳＰ１７に移る。ステップＳＰ１７において、ＣＰＵ１０はリトライ回数Ｒｎを０に設定し、ステップＳＰ１８に移る。
【００４９】
ステップＳＰ１８において、ＣＰＵ１０は送受信部１６を制御し、パケットをアンテナ１７を介して送信しステップＳＰ１９に移る。そしてＣＰＵ１０はステップＳＰ１９において、当該送信したパケットに対して送信先から返信されるＡＣＫを所定の待機時間の間待ち受ける。
【００５０】
ステップＳＰ１９において待機時間内にＡＣＫを受信した場合、ＣＰＵ１０は現在のパケットに対する処理を終了してステップＳＰ１１に戻り、次のパケットに対する処理を開始する。これに対して、ステップＳＰ１９において待機時間内にＡＣＫを受信できなかった場合、ＣＰＵ１０はステップＳＰ２０に移る。
【００５１】
ステップＳＰ２０においてＣＰＵ１０は、現在のリトライ回数Ｒｎと最大リトライ回数Ｒmax とを比較し、リトライ回数Ｒｎが最大リトライ回数Ｒmax 未満の場合、ＣＰＵ１０はステップＳＰ２１に移り、リトライ回数Ｒｎに「１」を加算した後ステップＳＰ１８に移ってパケットを再送信（リトライ）する。
【００５２】
これに対してステップＳＰ２０において、リトライ回数Ｒｎが最大リトライ回数Ｒmax 未満ではない場合、ＣＰＵ１０はリトライを行うことなく現在のパケットを破棄してステップＳＰ１１に戻り、次のパケットに対する処理を開始する。アクセスポイント２のＣＰＵ１０は、上述した処理手順を常に実行し続ける。
【００５３】
以上の構成によれば、送信バッファ１５Ａのキュー長から実効キュー長を求め、当該実効キュー長に応じて最大リトライ回数を増減することにより、簡易な処理でリトライ動作を安定化させることができる。
【００５４】
（３）他の実施の形態
なお上述の実施の形態においては、送信バッファ１５Ａのキュー長又は実効キュー長に応じてリトライ回数を増減するようにしたが、本発明はこれに限らず、複数の送信先それぞれについて個別にキュー長を取得し、当該送信先毎のキュー長または送信先毎の実効キュー長に応じて、送信先毎にリトライ回数を増減するようにしてもよい。これにより、送信先毎に電波伝搬環境が大きく異なるような場合でも、それぞれの電波伝搬環境に応じてリトライ回数を個別に制御して更に効率良くパケットを転送できる。
【００５５】
さらに上述の実施の形態においては、パケット転送装置としての無線ＬＡＮシステムのアクセスポイントにおけるリトライ回数制御に本発明を適用した場合について述べたが、本発明はこれに限らず、無線ＬＡＮシステムの無線通信端末や、有線ＬＡＮシステムのブリッジやルータ等、種々のパケット転送装置におけるリトライ回数制御に本発明を適用することができる。
【００５６】
さらに上述の実施の形態においては、アクセスポイント２のＣＰＵ１０がＲＯＭ１３のメモリに記憶されている通信制御プログラムに従ってリトライ制御処理を実行するようにしたが、本発明はこれに限らず、上述した通信制御プログラムが格納されているプログラム格納媒体をインストールすることにより、上述のリトライ制御処理を実行するようにしてもよい。
【００５７】
この場合、上述した通信制御プログラムをインストールするためのプログラム格納媒体としては、例えばＣＤ−ＲＯＭ（Compact Disk-Read Only Memory ）やＤＶＤ（Digital Versatile Disk）等のパッケージメディアのみならず、プログラムが一時的又は永続的に格納される半導体メモリや磁気ディスク等で実現しても良い。また、これらプログラム格納媒体にプログラムを格納する手段としては、ローカルエリアネットワークやインターネット、ディジタル衛星放送等の有線及び無線通信媒体を用いても良い。
【００５８】
【発明の効果】
上述のように本発明によれば、蓄積量が少ないレベルで推移している第１の設定値未満のとき、最大再送回数を所定回数に固定して当該所定回数まで必ずパケットを再送信することにより十分なエラー補正を行うことができ、蓄積量が高いレベルで推移している第１の設定値より大きい第２の設定値以上のとき、最大再送回数を０に設定してパケットを再送信しないようにすることにより蓄積量の増加を阻止し、伝送遅延やバッファオーバーフローを回避することができ、蓄積量が第１の設定値以上でかつ第２の設定値未満のとき、蓄積量の増加に応じて最大再送回数を適応的に減少させ、エラー補正と、伝送遅延やバッファオーバーフローの回避とのバランスが取れた最大再送回数を決定することにより、エラー補正を行うと共に伝送遅延やバッファオーバーフローを回避したバランスの良い状態でパケットを転送することができ、かくして最小限の遅延で効率良くパケットを転送し得るパケット転送装置、パケット転送方法及びパケット転送プログラムを実現できる。
【図面の簡単な説明】
【図１】第１の実施の形態の無線ＬＡＮシステムの全体構成を示す略線図である。
【図２】アクセスポイントの回路構成を示すブロツク図である。
【図３】第１の実施の形態のリトライ制御処理手順を示すフローチャートである。
【図４】第２の実施の形態のリトライ制御処理手順を示すフローチャートである。
【符号の説明】
１……無線ＬＡＮシステム、２……アクセスポイント、３……無線通信端末、、１０……ＣＰＵ１０、１１……バス、１２……ＲＡＭ、１３……ＲＯＭ、１４……ネットワークインターフェース、１５……バッファ、１６……送受信部、１７……アンテナ。
【図１】
0004120929.tif 000002
【図２】
0004120929.tif 000003
【図３】
0004120929.tif 000004
【図４】
0004120929.tif 000005