(57)【要約】【課題】  無駄なトラフィックを削減し、トークンレートやＴＣＰウィンドウサイズの大小に拘わらず、効率的な無線通信を遂行することを目的とする。【解決手段】  本発明の無線通信装置１２０は、送信バッファ２１０と、送信バッファのパケットを順次基地局１３０に送信し、パケットに対する確認応答を受信する無線通信部２２０と、送信バッファから基地局に送信するパケットのトラフィックを制御するトラフィック制御部２１８と、情報処理装置１１０から送信バッファに入力されたパケットが再送パケットであるか否かを判断するバッファ入力判断部２２４と、入力されたパケットが再送パケットであり、かつ送信バッファに同パケットが存在していればパケットを破棄するパケット破棄部２２６と、を備えることを特徴とする。【選択図】    図２
2010056940.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置および基地局のいずれか１の装置から他の装置への無線通信を中継する無線通信装置であって、
前記１の装置側から前記他の装置側に送信する複数のパケットをＦＩＦＯ形式で一時的に保持する送信バッファと、
前記送信バッファのパケットを順次他の装置側に送信し、該パケットに対する確認応答を受信する無線通信部と、
前記送信バッファから他の装置側に送信するパケットのトラフィックを制御するトラフィック制御部と、
前記１の装置側から前記送信バッファに入力されたパケットが再送パケットであるか否かを判断するバッファ入力判断部と、
前記入力されたパケットが再送パケットであり、かつ前記送信バッファに同パケットが存在していれば該入力されたパケットを破棄するパケット破棄部と、
を備えることを特徴とする無線通信装置。
【請求項２】
前記他の装置側から受信されたパケットが確認応答であるか否かを判断する確認応答判断部と、
前記送信バッファから他の装置側に出力するパケットが再送パケットであるか否かを判断するバッファ出力判断部と、
前記出力するパケットが再送パケットであれば、該パケットに対する確認応答があるまで該パケットを前記送信バッファに維持させるパケット維持部と、
をさらに備えることを特徴とする請求項１に記載の無線通信装置。
【請求項３】
前記パケット維持部は、前記維持されたパケットの他の装置側への送信回数が所定回数に到達すると前記送信バッファから該パケットを削除することを特徴とする請求項２に記載の無線通信装置。
【請求項４】
情報処理装置および基地局のいずれか１の装置から他の装置への無線通信を中継し、送信バッファを有する無線通信装置が、パケットを送信するパケット送信方法であって、
前記１の装置側から前記送信バッファに入力されたパケットが再送パケットであるか否かを判断し、
前記入力されたパケットが再送パケットであり、かつ前記送信バッファに同パケットが存在していれば該入力されたパケットを破棄し、
前記破棄されなかったパケットをＦＩＦＯ形式で前記バッファに一時的に保持し、
前記保持されたパケットをトラフィック制御しつつ順次他の装置側に送信し、
前記送信されたパケットに対する確認応答を受信することを特徴とするパケット送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置と基地局とを中継する無線通信装置およびパケット送信方法に関する。
【背景技術】
【０００２】
近年、インターネット等の通信ネットワークのブロードバンド化が進んでおり、Ｂｌｕｅｔｏｏｔｈ(登録商標)、ＺｉｇＢｅｅ等に代表される無線通信を通じた無線ブロードバンドシステムも拡大傾向にある。このような無線通信を実行する手段としては、携帯電話網にも利用されているＣＤＭＡ（Code Division Multiple Access）やＷｉＭＡＸ（Worldwide Interoperability for Microwave Access）を利用することもできる。
【０００３】
ＣＤＭＡは、複数の信号にそれぞれ異なる符号を乗算、全ての信号を合成し１つの周波数を用いて送信する方式である。一方、ＷｉＭＡＸは、ＯＦＤＭＡ(Orthogonal Frequency Division Multiple Access:直交周波数分割多元接続)方式を用いた通信方式の一つであり（例えば、非特許文献１）、ＯＦＤＭＡ方式は、データの多重化方式の一つに分類され、単位時間軸上で多数の搬送波を利用し、変調対象となる信号波の位相が隣り合う搬送波間で直交するように搬送波の帯域を一部重ね合わせて周波数帯域を有効利用する方式である。
【０００４】
ユーザは、このような無線通信を利用して、自身のパーソナルコンピュータ等の情報処理装置でデータの送受信を実行する場合、その無線通信に対応したＰＣカード等の無線通信装置を情報処理装置に接続しなくてはならない。かかる無線通信装置では、情報処理装置から伝達されたパケットを無線信号として基地局に送信し、また、基地局から受信した無線信号をパケットに変換して情報処理装置に伝達する。こうして情報処理装置では、無線通信を利用することが可能となる。
【０００５】
しかし、無線通信は占有可能な帯域幅が狭くリソースが有限であるため、無線通信装置は、無線リソースの有効活用を図るべく、トークンバケット機構によるパケットのトラフィック（スループット）制御を実行している。
【０００６】
図１０は、トラフィック制御を説明するための説明図である。図１０において、無線通信装置１０は、情報処理装置１２と基地局としての基地局１４とを中継し、双方向のパケット伝達を制御する。ここでは、情報処理装置１２から基地局１４への上り伝送経路、および基地局１４から情報処理装置１２への下り伝送経路それぞれにトラフィック機構１６が設けられている。
【０００７】
トラフィック機構１６は、入力されたパケット１８を保持するパケットバッファ２０と、トークン２２を蓄積するトークンバッファ２４とを含んで構成される。トークンバッファ２４には、制御された所定の周期でトークン２２が補充される。かかるトークン２２がトークンバッファ２４に所定量蓄積されるまで、パケットバッファ２０内のパケット１８は出力されずその状態を維持し、所定量蓄積されると、先に入力されたパケット１８がパケットバッファ２０から１つ出力される。このときトークンバッファ２４からは、所定量のトークン２２が減算され、トークン２２の所定量までの蓄積動作が繰り返される。
【０００８】
従って、パケットバッファ２０から出力されるパケット１８のスループットは、単位時間あたりのトークン２２の補充量（トークンレート）によって制御されることとなる。無線通信装置１０は、トラフィック制御パラメータと基地局１４との無線通信環境に応じてトークンレートを動的に変更し、無線通信にトラフィックが集中しているときはトークンレートが低くなるように、トラフィックが軽いときにはトークンレートが高くなるように制御する。
【０００９】
このようなトークン２２によるトークンレート制御は様々な技術に応用されている。例えば、トークンを蓄積するトークンバッファを直列または並列に接続することでトークンを用いたトラフィック制御の柔軟性を高める技術が知られている（例えば、特許文献１）。
【００１０】
また、対応するキューにパケットが格納されているときのトークンのトークン上限値を、対応するキューにパケットが格納されていないときの上限値よりも高く設定し、キューにパケットが到着しているにも拘わらず他のキューからのパケットが出力されているため、消費できなかったトークンが切り捨てられてしまう事態を回避する技術も開示されている（例えば、特許文献２）。
【００１１】
さらに、トークンバッファにトークンが蓄えられていない間にはトークンレートの更新処理を行わないことで、トークンレートをネットワークの状態に合わせる技術も示されている（例えば、特許文献３）。また、トークンが減少している状態のスループットを使用してトークンレートを増加させ、トークンが増加している状態のスループットを使用してトークンレートを減少させることで、ネットワークの状態に応じ自律的にトークンレートを更新する技術も知られている（例えば、特許文献４）。
【特許文献１】特開２００７−０４９５９１号公報
【特許文献２】特開２００７−１８１０８５号公報
【特許文献３】特開２００７−１８９５９２号公報
【特許文献４】特開２００７−２２１５２９号公報
【非特許文献１】「Mobile WiMAX ? Part I:A Technical Overview and Performance Evaluation」Prepared on Behalf of the WiMAX Forum, February 21, 2006, http://www.intel.com/netcomms/technologies/wimax/WiMAX_Overview_v2.pdf
【発明の開示】
【発明が解決しようとする課題】
【００１２】
このようなトークンバケットによるトラフィック制御が適用される無線ブロードバンドシステムの下、ユーザが、情報処理装置からネットワーク上のＦＴＰサーバに、大容量のデータのアップロードを試みた場合、上り方向のリソースは、このような大容量のデータの一時的なトラフィック集中により、トークンレートの影響を受けやすくなる。これに対して、下り方向のリソースには、送信データに対する確認応答のみが伝達され、トークンレートの影響をほとんど受けない。このような状況下において、上り方向のパケットが伝送経路上で喪失すると、ＦＴＰサーバは、そのパケットの欠落を後続のパケットを受信したときに認識し、情報処理装置に対して欠落したパケットの再送要求を実行する。
【００１３】
上述したように下り方向ではデータが円滑に流れるので、その再送要求は直ちに情報処理装置に伝達され、情報処理装置は、再送要求のあったパケット（再送パケット）を迅速に再送する。しかし、上り方向のトークンレートは制限され、ＦＩＦＯ（First In First Out）形式のパケットバッファには送信が完了していないパケットが残留しているので、再送パケットはその残留パケットの出力が完了しないかぎり、ＦＴＰサーバに送出されない。
【００１４】
このように再送パケットがパケットバッファに滞留している間、その状態を認識していないＦＴＰサーバが、未だに到達していない再送パケットのさらなる再送要求を実行する。そうすると、情報処理装置はその再送要求に対して再送パケットの送信を繰り返し、パケットバッファには再送パケットが無駄に蓄積されることとなる。このような再送パケットのパケットバッファの占有は、オーバフローの危険性を高める。
【００１５】
また、最初の再送パケットが正常にＦＴＰサーバに到達した後も、パケットバッファ内に蓄積された再送パケットが繰り返しＦＴＰサーバに送出され、ＦＴＰサーバは、その無意味なパケットを何度も受信せざるを得ず、その不要なトラフィックにより無線リソースを無駄に消費することとなっていた。
【００１６】
このように、大容量のデータの送信時や、トラフィック制御により上り方向のスループットが低く制限されているときに、上り方向のパケットの再送要求があると、再送パケットの滞留により複数の再送パケットの不要な重複送信が生じ得る。
【００１７】
かかる現象は、トークンレートのみならず、ＦＴＰサーバからの確認応答を待たずに送信できるデータ量であるＴＣＰ（Transmission Control Protocol）ウィンドウサイズにも依存する。ＴＣＰウィンドウサイズが大きいと、最初の確認応答までにパケットバッファに大量のパケットが蓄積され、再送パケットがパケットバッファから正常に送出されるまで長時間を要するからである。従って、トークンレートが低く、ＴＣＰウィンドウサイズが大きい場合に、当該無線通信の遂行に最も大きな被害が生じることになる。
【００１８】
本発明は、このような問題に鑑み、無駄なトラフィックを削減し、トークンレートやＴＣＰウィンドウサイズの大小に拘わらず、効率的な無線通信を遂行することが可能な、無線通信装置およびパケット送信方法を提供することを目的としている。
【課題を解決するための手段】
【００１９】
上記課題を解決するために、本発明の代表的な構成は、情報処理装置および基地局のいずれか１の装置から他の装置への無線通信を中継する無線通信装置であって、１の装置側から前記他の装置側に送信する複数のパケットをＦＩＦＯ形式で一時的に保持する送信バッファと、送信バッファのパケットを順次他の装置側に送信し、該パケットに対する確認応答を受信する無線通信部と、送信バッファから他の装置側に送信するパケットのトラフィックを制御するトラフィック制御部と、１の装置側から前記送信バッファに入力されたパケットが再送パケットであるか否かを判断するバッファ入力判断部と、入力されたパケットが再送パケットであり、かつ前記送信バッファに同パケットが存在していれば該入力されたパケットを破棄するパケット破棄部と、を備えることを特徴とする。ここで「１の装置」または「他の装置」としたのは、情報処理装置と基地局との位置関係を相互に置換することができるからであり、「側」としたのは、１の装置や他の装置と直接、または１または複数の中継機器を通じた間接的な送受信を含むためである。
【００２０】
本発明では、送信バッファにおいて再送パケットが重複した場合、その重複は、再送パケットの滞留によるものと判断し、後続の再送パケットを破棄して、再送パケットの重複送信を回避する。かかる構成により、基地局側や情報処理装置側の改変を伴うことなく、再送パケットによる送信バッファの占有を防止し、オーバフローを回避すると共に、不要なトラフィックによる無線リソースの無駄な消費を抑えることができる。こうして、トークンレートやＴＣＰウィンドウサイズの大小に拘わらず効率的な無線通信を遂行することが可能となる。
【００２１】
他の装置側から受信されたパケットが確認応答であるか否かを判断する確認応答判断部と、送信バッファから他の装置側に出力するパケットが再送パケットであるか否かを判断するバッファ出力判断部と、出力するパケットが再送パケットであれば、パケットに対する確認応答があるまでパケットを送信バッファに維持させるパケット維持部と、をさらに備えてもよい。
【００２２】
通信先である他の装置側は、欠落したパケットが到達するまで、そのパケットの再送要求をし続けるので、同他の装置側への送信に関して送信バッファに新たな通常のパケットは入力されず、再送パケットより後に通常のパケットが蓄積されない。然るに再送パケットが送出された後はその確認応答（ＡＣＫ）を受信するまでは、送信バッファからパケットは送出されないこととなる。ここで、再送パケットを再び喪失してしまうと、後続するパケットも無いので、他の装置側はその再送パケットの喪失を認識できず、１の装置側の再送信タイムアウトによってのみ再送パケットのさらなる再送が遂行される。本発明では、確認応答があるまで送信バッファから再送パケットを削除せず、再送パケットを先頭に維持する構成により、タイムアウトを待たなくとも、トークンレートに従って再送パケットが送出されるので、再送パケットのさらなる再送処理を円滑に遂行することが可能となる。
【００２３】
パケット維持部は、維持されたパケットの他の装置側への送信回数が所定回数に到達すると送信バッファからパケットを削除してもよい。
【００２４】
何らかの原因によりネットワーク側で再送パケットを受信できない場合、再送パケットが正常に送信されたとしても、その再送パケットが到達する可能性は低い。このとき再送パケットの送信を無制限に行い得るとすると、当該再送処理のみが無線リソースを占有してしまう。本発明では再送パケットの送信回数を制限することで、適切な送信回数後の適切なタイミングで無線リソースを解放することが可能となる。
【００２５】
本発明の代表的な他の構成は、情報処理装置および基地局のいずれか１の装置から他の装置への無線通信を中継し、送信バッファを有する無線通信装置が、パケットを送信するパケット送信方法であって、１の装置側から送信バッファに入力されたパケットが再送パケットであるか否かを判断し、入力されたパケットが再送パケットであり、かつ送信バッファに同パケットが存在していれば入力されたパケットを破棄し、破棄されなかったパケットをＦＩＦＯ形式でバッファに一時的に保持し、保持されたパケットをトラフィック制御しつつ順次他の装置側に送信し、送信されたパケットに対する確認応答を受信することを特徴とする。
【００２６】
上述した無線通信装置の技術的思想に基づく構成要素やその説明は、当該パケット送信方法にも適用可能である。
【発明の効果】
【００２７】
以上説明したように本発明によれば、無駄なトラフィックを削減し、トークンレートやＴＣＰウィンドウサイズの大小に拘わらず、効率的な無線通信を遂行することが可能となる。
【発明を実施するための最良の形態】
【００２８】
以下に添付図面を参照しながら、本発明の好適な実施形態について詳細に説明する。かかる実施形態に示す寸法、材料、その他具体的な数値などは、発明の理解を容易とするための例示にすぎず、特に断る場合を除き、本発明を限定するものではない。なお、本明細書及び図面において、実質的に同一の機能、構成を有する要素については、同一の符号を付することにより重複説明を省略し、また本発明に直接関係のない要素は図示を省略する。
【００２９】
（無線通信システム１００）
図１は、無線通信システム１００の概略的な接続関係を示した説明図である。かかる無線通信システム１００は、情報処理装置１１０と、無線通信装置１２０と、基地局１３０と、ＩＳＤＮ(Integrated Services Digital Network)回線、インターネット、専用回線等で構成される通信網１４０と、中継サーバ１５０と、外部サーバ１６０とを含んで構成される。
【００３０】
情報処理装置１１０は、パーソナルコンピュータ、ノート型パーソナルコンピュータ、車載モジュール、カーナビゲーション、ＰＤＡ（Personal Digital Assistant）、デジタルカメラ、音楽プレイヤー、ポータブルテレビ、ゲーム機器、ＤＶＤプレイヤー、リモートコントローラ、携帯電話、ＰＨＳ（Personal Handy phone System）端末等様々な電子機器で構成され、ユーザの入出力インターフェースとして機能する。
【００３１】
無線通信装置１２０は、無線機能を備え、情報処理装置１１０に設けられたＰＣＭＣＩＡ（Personal Computer Memory Card International Association）スロットまたはＵＳＢ（Universal Serial Bus）に電気的に接続して情報処理装置１１０と基地局１３０とを中継する。本実施形態においては、無線通信装置１２０が基地局１３０と無線通信を実行する例を挙げているが、無線ＬＡＮやＷｉＭＡＸにおけるアクセスポイントや、アドホックネットワークのように基地局を介さず無線通信装置同士で直接通信接続する形態も本実施形態に含まれる。また、本実施形態で、「ネットワーク」と言った場合、基地局１３０や外部サーバ１６０を含む、無線通信を介して無線通信装置１２０の通信対象となり得る全ての要素を言う。
【００３２】
基地局１３０は、無線通信装置１２０や携帯電話、ＰＨＳ端末等の携帯端末と無線通信を確立し、通話機能、Ｗｅｂ閲覧機能、メール送受信機能等を提供するため、ネットワーク側のインターフェースとなる。
【００３３】
中継サーバ１５０は、ユーザが自己の情報処理装置１１０を利用し無線通信装置１２０を通じて外部サーバ１６０等へのアクセスを試みた場合における、無線通信装置１２０と基地局１３０との間、および基地局１３０と外部サーバ１６０との間の通信経路を確立し、情報処理装置１１０と外部サーバ１６０との接続を確保する。
【００３４】
外部サーバ１６０は、サービス事業者が提供するＦＴＰサーバ等通信網１４０に接続される様々なサーバであり、情報処理装置１１０からのデータ（パケット）のアップロードおよび情報処理装置１１０へのデータのダウンロードを遂行する。
【００３５】
無線通信システム１００における無線通信装置１２０は、後述するようにトラフィック制御が実行されている。しかし、パケットバッファにデータの再送パケットが滞留するとオーバフローの危険性や不要なトラフィックを招きかねない。このような現象は、トークンレートが低いときのみならず、ＴＣＰウィンドウサイズが大きい場合にも生じ易くなる。本実施形態では、このような無駄なトラフィックを削減し、トークンレートやＴＣＰウィンドウサイズの大小に拘わらず、効率的な無線通信を遂行することを目的とする。以下、かかる効果を奏する無線通信装置１２０に関して詳述する。
【００３６】
（無線通信装置１２０）
図２は、無線通信装置１２０のハードウェア構成を示した機能ブロック図である。無線通信装置１２０は、送信バッファ２１０と、送信トークンバッファ２１２と、受信バッファ２１４と、受信トークンバッファ２１６と、トラフィック制御部２１８と、無線通信部２２０と、アンテナ部２２２と、バッファ入力判断部２２４と、パケット破棄部２２６と、確認応答判断部２２８と、バッファ出力判断部２３０と、パケット維持部２３２とを含んで構成される。
【００３７】
送信バッファ（送信パケットバッファ）２１０は、ＦＩＦＯ形式の例えばシフトレジスタといったメモリで構成され、情報処理装置１１０から基地局１３０（外部サーバ１６０）に送信する複数のパケットを一時的に保持する。かかる送信バッファ２１０に入力されたパケット２５０は、トークンレートに応じて先に入力されたパケットから順に自動的に送出され、当該送信バッファ２１０から削除される。従って、後から入力されたパケット２５０はその前に入力されたパケット２５０が送出されない限り送信バッファ２１０に維持される。
【００３８】
送信トークンバッファ２１２は、送信バッファ２１０のパケット２５０の送信タイミングを制御する。詳細には、送信トークンバッファ２１２に、後述するトラフィック制御部２１８から送信されたトークン２５２が所定の周期で補充され、そのトークン２５２が送信トークンバッファ２１２に所定量蓄積されると、送信バッファ２１０からのパケット２５０の出力が許可される。このとき、送信トークンバッファ２１２からは、所定量のトークン２５２が減算される。以後もこのようなトークン２５２の所定量までの蓄積動作が繰り返され、その度に送信バッファ２１０からのパケット２５０が送出される。
【００３９】
受信バッファ（受信パケットバッファ）２１４は、送信バッファ２１０同様、ＦＩＦＯ形式のメモリで構成され、基地局１３０（外部サーバ１６０）から情報処理装置１１０に送られる複数のパケットを一時的に保持する。
【００４０】
受信トークンバッファ２１６は、送信トークンバッファ２１２同様、受信バッファ２１４のパケット２５０の情報処理装置１１０への伝送タイミングを制御する。詳細には、受信トークンバッファ２１６に後述するトラフィック制御部２１８から送信されたトークン２５２が所定の周期で補充され、そのトークン２５２が受信トークンバッファ２１６に所定量蓄積されると、受信バッファ２１４からのパケット２５０の出力が許可される。このとき、受信トークンバッファ２１６からは、所定量のトークン２５２が減算される。
【００４１】
トラフィック制御部２１８は、送信バッファ２１０から基地局１３０に送信するパケット２５０および受信バッファ２１４から情報処理装置１１０に送信するパケット２５０のトラフィックを制御する。かかるトラフィック制御は、送信トークンバッファ２１２や受信トークンバッファ２１６へのトークンの単位時間当たりの送信量（トークンレート）を制御することで為される。
【００４２】
無線通信部２２０は、共通のリンクレイヤにおいてＣＤＭＡやＷｉＭＡＸ等の無線通信を確立し、送信バッファ２１０のパケット２５０を順次基地局１３０に送信し、かかるパケット２５０に対する確認応答（ＡＣＫ）を基地局１３０（外部サーバ１６０）から受信する。また、単に基地局１３０から送信されたパケット２５０を受信することもできる。
【００４３】
アンテナ部２２２は、無線通信部２２０における電気信号を電磁波に変換または電磁波を電気信号に変換することで、基地局１３０との無線通信を実行する。
【００４４】
バッファ入力判断部２２４は、情報処理装置１１０から送信バッファ２１０に入力されたパケット２５０が再送パケットであるか否かを判断する。再送パケットか否かの判断は、ヘッダ等における再送パケットフラグを参照して実行されてもよいし、パケットの識別子やパケット番号を参照して実行されてもよいし、所定期間内に当該送信バッファ２１０に入力されたすべてのパケット２５０との整合をとることによって実行されてもよい。
【００４５】
パケット破棄部２２６は、バッファ入力判断部２２４が、入力されたパケット２５０が再送パケットであると判断した場合、さらに、送信バッファ２１０に蓄積されているパケットの中に、入力されたパケット２５０と同一のパケットが存在しているか否か判断し、存在していればその入力されたパケット２５０を破棄する。
【００４６】
本実施形態では、送信バッファ２１０において再送パケットが重複した場合、その重複は、再送パケットの滞留によるものと判断し、後続の再送パケットを破棄して、再送パケットの重複送信を回避する。かかる構成により、ネットワーク側や情報処理装置１１０の改変を伴うことなく、再送パケットによる送信バッファ２１０の占有を防止し、オーバフローを回避すると共に、不要なトラフィックによる無線リソースの無駄な消費を抑えることができる。こうして、トークンレートやＴＣＰウィンドウサイズの大小に拘わらず効率的な無線通信を遂行することが可能となる。
【００４７】
確認応答判断部２２８は、基地局１３０（外部サーバ１６０）から受信されたパケットが確認応答であるか否かを判断する。
【００４８】
バッファ出力判断部２３０は、送信バッファ２１０から基地局１３０に出力するパケットが再送パケットであるか否かを判断する。
【００４９】
パケット維持部２３２は、バッファ出力判断部２３０が、出力するパケット２５０が再送パケットであると判断した場合、確認応答判断部２２８において、再送したパケットに対する確認応答があると判断されるまで、その再送パケットを送信バッファ２１０の先頭に維持させる。
【００５０】
外部サーバ１６０は、欠落したパケットが到達するまで、そのパケットの再送要求をし続けるので、同外部サーバ１６０への送信に関して送信バッファ２１０に新たな通常のパケットは入力されず、再送パケットより後に通常のパケットが蓄積されない。然るに再送パケットが送出された後はその確認応答を受信するまでは、送信バッファ２１０からパケットは送出されないこととなる。
【００５１】
ここで、再送パケットを再び喪失してしまうと、後続するパケットも無いので、外部サーバ１６０はその再送パケットの喪失を認識できず、情報処理装置１１０の再送信タイムアウトによってのみ再送パケットのさらなる再送が遂行される。本実施形態では、確認応答があるまで送信バッファ２１０から再送パケットを削除せず、再送パケットを先頭に維持する構成により、タイムアウトを待たなくとも、トークンレートに従って再送パケットが送出されるので、再送パケットのさらなる再送処理を円滑に遂行することが可能となる。
【００５２】
また、パケット維持部２３２は、維持されたパケットの基地局１３０への送信回数が所定回数に到達すると送信バッファ２１０からパケットを削除してもよい。
【００５３】
何らかの原因によりネットワーク側で再送パケットを受信できない場合、再送パケットが正常に送信されたとしても、その再送パケットが到達する可能性は低い。このとき再送パケットの送信を無制限に行い得るとすると、当該再送処理のみが無線リソースを占有してしまう。
【００５４】
例えば、外部サーバ１６０であるＦＴＰサーバへのアップロード中に、他の外部サーバ１６０で運営されるＷＥＢサイトを閲覧した場合、ＦＴＰサーバへの送信制限に拘わらず、送信系統が異なるＷＥＢサイトへの送信パケットが発生する。このとき、パケット維持部２３２によってＦＴＰサーバへの再送パケットが送信バッファ２１０に残り続けるとＷＥＢサイトへの送信パケットが送信バッファ２１０に蓄積され、オーバフローを引き起こす可能性がある。
【００５５】
そこで、本実施形態では再送パケットの送信回数を所定回数で制限することで、適切な送信回数後の適切なタイミングで無線リソースを解放することが可能となる。かかる所定回数は、パケット破棄部２２６が再送パケットを破棄した回数、即ち、情報処理装置１１０が実際に再送した回数とすることができる。かかる構成により、送信バッファ２１０を占有することなく、情報処理装置１１０の実際の再送回数に即した送信回数を確保することができる。また、他の送信系統やアプリケーションに影響を与えない範囲、かつ、ネットワークに異常が生じていると判断できる回数を所定回数とすることもできる。
【００５６】
さらに、パケット維持部２３２は、送信バッファ２１０中の維持されたパケットの後段に所定数のパケット２５０が蓄積されたことをもって送信バッファ２１０からパケットを削除してもよい。かかる構成により、後段に新たなパケットが蓄積されない間、即ち、異なる送信系統が利用されるまで当該パケット維持部２３２による再送パケットの維持および再送を実行することができ、異なる送信系統のパケット２５０を検知すると、再送パケットの維持を停止して、新たなパケット２５０に無線リソースを解放することが可能となる。
【００５７】
以上、説明した無線通信装置１２０によると、無駄なトラフィックを削減し、トークンレートやＴＣＰウィンドウサイズの大小に拘わらず、効率的な無線通信を遂行することが可能となる。
【００５８】
（パケット送信方法）
次に、情報処理装置１１０に接続され、情報処理装置１１０による基地局１３０との無線通信を中継し、送信バッファ２１０を有する無線通信装置１２０が、パケット２５０を外部サーバ１６０に送信するパケット送信方法を説明する。ここでは、パケット送信方法を、上り方向のパケット送信処理と、そのトラフィック制御処理と、下り方向のパケット受信処理とに分けて説明する。
【００５９】
図３は、パケット送信方法における上り方向のパケット送信処理を示したフローチャートであり、図４は、パケット送信方法におけるトラフィック制御処理を示したフローチャートであり、図５は、パケット送信方法における下り方向のパケット受信処理を示したフローチャートである。かかる３つの処理は、並行して遂行される。
【００６０】
図３を参照すると、まず、再送カウンタがリセットされる（Ｓ３００）。かかる再送カウンタは、後述するトラフック制御処理（図４）において、再送パケットの再送回数を制限するために用いられる。情報処理装置１１０からパケット２５０が入力されると（Ｓ３０２）、無線通信装置１２０は、トラフィック制御が有効であるか否か確認し（Ｓ３０４）、無効であれば（Ｓ３０４のＮＯ）、そのパケットを送信バッファ２１０に蓄積することなく、基地局１３０に送信する（Ｓ３０６）。
【００６１】
トラフィック制御が有効である場合（Ｓ３０４のＹＥＳ）、バッファ入力判断部２２４は、情報処理装置１１０から送信バッファ２１０に入力されたパケットが再送パケットであるか否かを判断し（Ｓ３０８）、再送パケットであれば（Ｓ３０８のＹＥＳ）、再送カウンタをインクリメント（１追加）する（Ｓ３１０）。続いて、パケット破棄部２２６は、送信バッファ２１０に同再送パケットが存在しているかどうか判断し（Ｓ３１２）、存在していれば（Ｓ３１２のＹＥＳ）、そのパケットを破棄して（Ｓ３１４）、パケットの待ち受け状態（Ｓ３０２）に戻る。
【００６２】
送信バッファ２１０に入力されたパケットが再送パケットではない（Ｓ３０８のＮＯ）、または再送パケットではあるが送信バッファ２１０に同再送パケットが存在しない場合（Ｓ３１２のＮＯ）、そのパケットを送信バッファ２１０に入力して（Ｓ３１６）、パケットの待ち受け状態（Ｓ３０２）に戻る。
【００６３】
図４において、トラフィック制御部２１８は、所定のトークンレートに従って、送信トークンバッファ２１２にトークンを追加するタイミングか否か判断し（Ｓ３３０）、追加タイミングの場合（Ｓ３３０のＹＥＳ）のみ、トークンを送信トークンバッファ２１２に追加する（Ｓ３３２）。そして、送信バッファ２１０に送信すべきパケット２５０が存在するか否か判断され（Ｓ３３４）、パケットが無ければ（Ｓ３３４のＮＯ）、送信パケット待ち状態に戻る。
【００６４】
送信バッファ２１０にパケットが存在する場合（Ｓ３３４のＹＥＳ）、送信トークンバッファ２１２は、トークン２５２が所定量に到達しているかどうか判断し（Ｓ３３６）、まだ達していなければ（Ｓ３３６のＮＯ）、トークン２５２が溜まるのを待つ。
【００６５】
トークン２５２が所定量に到達していれば（Ｓ３３６のＹＥＳ）、バッファ出力判断部２３０は、送信バッファ２１０の先頭からパケットを１つ取得し（Ｓ３３８）、それが再送パケットであるか否か判断する（Ｓ３４０）。再送パケットであれば（Ｓ３４０のＹＥＳ）、再送カウンタをデクリメント（１削減）する（Ｓ３４２）。
【００６６】
続いて、デクリメントされた再送カウンタが０より大きい数値であるか、即ち、パケット維持部２３２による再送パケットの再送回数がまだ残っているか否か判断され（Ｓ３４４）、残っていれば（Ｓ３４４のＹＥＳ）、パケットを送信すると共にそのパケットを送信バッファ２１０の先頭に維持する（Ｓ３６４）。残っていなければ、即ち、再送カウンタが０であれば（Ｓ３４４のＮＯ）、パケットの送信処理のみを遂行する（Ｓ３４８）、最後に送信トークンバッファ２１２から所定量のトークンを減算して（Ｓ３５０）、再びトークンの追加タイミングを待つ（Ｓ３３０）。
【００６７】
図５において、基地局１３０から無線通信装置１２０にパケット２５０が受信されると（Ｓ３６０）、無線通信装置１２０は、トラフィック制御が有効であるか否か確認し（Ｓ３６２）、無効であれば（Ｓ３６２のＮＯ）、そのパケット２５０を受信バッファ２１４に蓄積することなく、情報処理装置１１０に伝達する（Ｓ３６４）。
【００６８】
トラフィック制御が有効である場合（Ｓ３６２のＹＥＳ）、パケット維持部２３２による再送パケットの維持が為されているか否か判断される（Ｓ３６６）。そして、まだ、再送カウンタが０となっていない状態であれば（Ｓ３６６のＹＥＳ）、確認応答判断部２２８によって、そのパケットが再送パケットに対する確認応答であるか否か判断される（Ｓ３６８）。再送パケットの確認応答であれば（Ｓ３６８のＹＥＳ）、パケット維持部２３２が維持しているパケットを削除する（Ｓ３７０）。最後に受信されたパケットは、情報処理装置１１０に伝送されるべく受信バッファ２１４に入力される（Ｓ３７２）。
【００６９】
以上説明した、パケット送信方法によっても、無駄なトラフィックを削減し、トークンレートやＴＣＰウィンドウサイズの大小に拘わらず、効率的な無線通信を遂行することが可能となる。続いて、上述した無線通信装置１２０およびパケット送信方法による効果を確認する。
【００７０】
図６は、比較例としての通常のパケット送信を示すシーケンス図である。図６の中央に８つの四角で示されているのが無線通信装置１２０の送信バッファ２１０の内部状態である。ここでは、送信バッファ２１０のウィンドウサイズが８パケットの場合を示している。ここではパケットの記号として「Ｓｅｇ（セグメント）」を用いているが、セグメントは、ＯＳＩ参照モデルの第４層であるトランスポート層における伝送単位であり、上述したパケット（第３層であるネットワーク層の伝送単位）と同義である。また、理解を容易にするため、同図において無線通信装置１２０と外部サーバ１６０とが直接通信しているように記載したが、基地局１３０や通信網１４０を介していることは言うまでもない。
【００７１】
情報処理装置１１０において外部サーバ１６０に送信すべきデータが生じた場合、無線通信装置１２０にその送信すべきデータを分割したパケットが送信される。無線通信装置１２０の送信バッファ２１０は、ウィンドウサイズが８なので、８パケット分、即ちＳｅｇ１〜Ｓｅｇ８までを入力および蓄積する（Ｓ４００）。そして、送信バッファ２１０は、自己の格納領域が充填されると、情報処理装置１１０からのパケットの入力を一旦停止する。
【００７２】
ここで、送信トークンバッファ２１２が所定量に達すると送信バッファ２１０から１つパケットＳｅｇ１が送出され（Ｓ４０２）、そのパケットＳｅｇ１に対して外部サーバ１６０から確認応答（ＡＣＫ送信）が為される（Ｓ４０４）。情報処理装置１１０は、パケットＳｅｇ１の確認応答を受けて、送信バッファ２１０に格納領域の空きが生じたことを把握し、後続のパケットＳｅｇ９を無線通信装置１２０に伝達する（Ｓ４０６）。
【００７３】
引き続き、無線通信装置１２０において、送信トークンバッファ２１２が所定量に達すると、パケットＳｅｇ２が送信される（Ｓ４０８）。ここでは、そのパケットＳｅｇ２を喪失（ロスト）したとする。外部サーバ１６０は、パケットＳｅｇ２を取得していないので、何ら反応することができないが、無線通信装置１２０から後続のパケットＳｅｇ３を受信することでパケットＳｅｇ２の欠落を認識する（Ｓ４１０）。
【００７４】
外部サーバ１６０は、欠落したパケットＳｅｇ２を補充すべく、情報処理装置１１０にパケットＳｅｇ２の再送を要求し（Ｓ４１２）、情報処理装置１１０は、再送要求のあったパケットＳｅｇ２を直ちに再送する（Ｓ４１４）。しかし、上り方向のトークンレートが制限され、送信バッファ２１０には、まだ送信が完了していないパケットＳｅｇ４〜Ｓｅｇ９が存在するので、パケットＳｅｇ２は、その残留パケットＳｅｇ４〜Ｓｅｇ９の出力が完了しないかぎり、外部サーバ１６０に送出されない。
【００７５】
このようにパケットＳｅｇ２が送信バッファ２１０に滞留している間、その状態を認識していない外部サーバ１６０は、継続するパケットＳｅｇ４を受信したとしても（Ｓ４１６）、未だに到達していない再送パケットのさらなる再送要求を実行する（Ｓ４１８）。そうすると、情報処理装置１１０はその再送要求に対してパケットＳｅｇ２の送信を繰り返し（Ｓ４２０）、送信バッファ２１０にはパケットＳｅｇ２が無駄に蓄積されることとなる。
【００７６】
送信バッファ２１０に蓄積されたパケットＳｅｇ９までが送信完了すると（Ｓ４４０）、ようやく再送要求のあったパケットＳｅｇ２が送信バッファ２１０の先頭に推移し、次の送信タイミングで外部サーバ１６０にパケットＳｅｇ２が伝達される（Ｓ４４２）。パケットＳｅｇ２が補充された外部サーバ１６０は、既に受信が完了しているパケットＳｅｇ９までの確認応答を実施する（Ｓ４４４）。
【００７７】
しかし、所望するパケットＳｅｇ２が正常に外部サーバ１６０に到達した後も、送信バッファ２１０内に蓄積された再送パケットＳｅｇ２が繰り返し外部サーバ１６０に送出され（Ｓ４４６）、外部サーバ１６０は、その無意味なパケットを何度も受信し、破棄しなくてはならず（Ｓ４４８）、その不要なトラフィックにより無線リソースを無駄に消費する。このとき、無線通信の転送レートは確保しているものの、実効レートは低くなるといった状況に陥ってしまう。
【００７８】
図７は、本実施形態のパケット送信を示すシーケンス図である。図７におけるパケット２５０の送信は、処理の途中段階まで図６の処理と実質的に等しいので、同一の符号を付して説明を省略する。
【００７９】
本実施形態において、情報処理装置１１０は、外部サーバ１６０からの再送要求に対してパケットＳｅｇ２を再送するが（Ｓ４２０）、送信バッファ２１０において再送パケットが重複した場合、パケット破棄部２２６は、その重複が、再送パケットＳｅｇ２の滞留によるものと判断し、そのパケットＳｅｇ２を破棄して（Ｓ５００）、再送パケットの重複送信を回避する。
【００８０】
かかるパケット破棄部２２６の構成により、以降の再送パケットＳｅｇ２の重複も回避され、再送パケットによる送信バッファ２１０の占有を防止し、オーバフローを回避すると共に、再送パケットＳｅｇ２を外部サーバ１６０に送信してしまった後の不要なトラフィックを抑制することができ、外部サーバ１６０からのパケットＳｅｇ９の確認応答（Ｓ５０２）を受けた後は、迅速に後続のパケットＳｅｇ１０〜１７を送信バッファ２１０に蓄積することができる。
【００８１】
図８は、本実施形態のパケット送信の他の例を示すシーケンス図である。図８におけるパケットの送信は、処理の途中段階まで図７の処理と実質的に等しいので、同一の符号を付して説明を省略する。ここでは、本実施形態を適用した場合に生じるさらなる課題について説明する。
【００８２】
図８において、外部サーバ１６０は、欠落したパケットＳｅｇ２が到達するまで、そのパケット２５０の再送要求をし続ける（Ｓ４１２、Ｓ４１８、…、Ｓ５０４）。従って、図８に示すように、同外部サーバ１６０への送信に関して送信バッファ２１０に新たな通常のパケット２５０は入力されず、再送パケットより後に通常のパケット２５０が蓄積されない。然るに再送パケットが送出された後はその確認応答を受信するまでは、送信バッファ２１０からパケットは送出されないこととなる。
【００８３】
このとき、再送パケットの送信タイミングで、再送パケットをさらに喪失してしまうと（Ｓ５１０）、後続するパケット２５０も無いので、外部サーバ１６０はその再送パケットの喪失を認識できず、情報処理装置１１０のＲＴＯ（Retransmit Time Out）によるタイムアウト（Ｓ５１２）によってのみ再送パケットのさらなる再送が遂行される（Ｓ５１４）。かかるＲＴＯは規格上再送要求が連続すればその時間間隔は２倍ずつ漸増し、ＲＴＯの設定によっては、パケットＳｅｇ２の再送に長時間を要すこととなる。
【００８４】
図９は、本実施形態のパケット送信の他の例を示すシーケンス図である。図９におけるパケット２５０の送信は、処理の途中段階まで図８の処理と実質的に等しいので、同一の符号を付して説明を省略する。
【００８５】
図９において、再送パケットの送信タイミングで、パケット維持部２３２は、そのパケットが再送パケットＳｅｇ２であることを受けて、かかる再送パケットＳｅｇ２の確認応答があるまで送信バッファ２１０に再送パケットを維持する（Ｓ５２０）。従って、再送したパケットＳｅｇ２が外部サーバ１６０に到達しなかったとしても（Ｓ５１０）、次のパケット送信タイミングで、ＲＴＯによるタイムアウトを待つことなく、再送パケットＳｅｇ２のさらなる再送処理を円滑に遂行することが可能となる。
【００８６】
こうして外部サーバ１６０がパケットＳｅｇ２を正常に受信すると（Ｓ５２４）、パケットＳｅｇ９の確認応答が返信され（Ｓ４４４）、この確認応答を受けてパケット維持部２３２は、送信バッファ２１０から維持されているパケットＳｅｇ２を削除する。
【００８７】
このとき、パケット維持部２３２は、維持されたパケットの外部サーバ１６０への送信回数に上限を設けており、送信回数が所定回数に到達すると送信バッファ２１０からパケットを削除する。ここでは再送パケットの送信回数を制限することで、適切な送信回数後の適切なタイミングで無線リソースを解放することが可能となる。
【００８８】
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【００８９】
例えば、上述した実施形態においては、情報処置装置１１０と無線通信装置１２０との間をＵＳＢにより接続する例を挙げて説明したが、これに限られず、情報処理装置１１０と無線通信装置１２０との間をＢｌｕｅｔｏｏｔｈ（登録商標）やＩｒＤＡ（Infrared Data Association）など近距離無線通信や赤外線通信で接続することもできる。
【００９０】
また、このように情報処理装置１１０と無線通信装置１２０との間をＢｌｕｅｔｏｏｔｈ（登録商標）やＩｒＤＡで接続する場合、この接続もまた無線通信であるためパケットエラーが生じうる。従って、基地局１３０と無線通信装置１２０との間で生じるパケットエラーと同様の事象が発生しうる。
【００９１】
さらに、上述した実施形態では、情報処理装置側から基地局側へのパケットの伝送について説明したが、Ｂｌｕｅｔｏｏｔｈ等による接続の場合においては、逆方向（基地局側から情報処理装置側への方向）のパケットの伝送に適用することもできる。即ち、図２、７、８、９における構成のうち情報処理装置１１０と基地局１３０（外部サーバ１６０）とを入れ替えても、十分、上述した実施形態同様の効果を得ることができる。
【００９２】
なお、本明細書のパケット送信方法における各工程は、必ずしもフローチャートやシーケンス図として記載された順序に沿って時系列に処理する必要はなく、並列的あるいはサブルーチンによる処理を含んでもよい。
【産業上の利用可能性】
【００９３】
本発明は、情報処理装置と基地局とを中継する無線通信装置およびパケット送信方法に利用することができる。
【図面の簡単な説明】
【００９４】
【図１】無線通信システムの概略的な接続関係を示した説明図である。
【図２】無線通信装置のハードウェア構成を示した機能ブロック図である。
【図３】パケット送信方法における上り方向のパケット送信処理を示したフローチャートである。
【図４】パケット送信方法におけるトラフィック制御処理を示したフローチャートである。
【図５】パケット送信方法における下り方向のパケット受信処理を示したフローチャートである。
【図６】比較例としての通常のパケット送信を示すシーケンス図である。
【図７】本実施形態のパケット送信を示すシーケンス図である。
【図８】本実施形態のパケット送信の他の例を示すシーケンス図である。
【図９】本実施形態のパケット送信の他の例を示すシーケンス図である。
【図１０】従来技術におけるトラフィック制御を説明するための説明図である。
【符号の説明】
【００９５】
１１０  …情報処理装置
１２０  …無線通信装置
１３０  …基地局
２１０  …送信バッファ
２１４  …受信バッファ
２１８  …トラフィック制御部
２２０  …無線通信部
２２４  …バッファ入力判断部
２２６  …パケット破棄部
２２８  …確認応答判断部
２３０  …バッファ出力判断部
２３２  …パケット維持部
２５０  …パケット
２５２  …トークン
【図１】
2010056940.tif 000003
【図２】
2010056940.tif 000004
【図３】
2010056940.tif 000005
【図４】
2010056940.tif 000006
【図５】
2010056940.tif 000007
【図６】
2010056940.tif 000008
【図７】
2010056940.tif 000009
【図８】
2010056940.tif 000010
【図９】
2010056940.tif 000011
【図１０】
2010056940.tif 000012