(57)【要約】【課題】  ＡＤＳＬ回線によるＴＣＰ／ＩＰ通信の上り方向伝送遅延を防止するとともに、データグラムも確実に上り方向に送信する。【解決手段】  ＡＣＫ書き換え処理部２７は送信キュー２２を走査して、ＡＣＫ監視部２６から渡されたＡＣＫと送信元ＩＰアドレスおよび宛先ＩＰアドレスおよび送信元ポート番号および宛先ポート番号が一致するＡＣＫを探し、一致するＡＣＫパケットが発見されなかった場合は、そのまま送信キュー２２の最後尾に連結する。一致するＡＣＫパケットが発見され、データグラムを付帯するＡＣＫパケットであるときは、例えばそのＡＣＫフラグを「０」に変更し、送信キュー２２の最後尾に連結する。一方、データグラムを付帯しないＡＣＫパケットであるときは、そのＡＣＫ番号をＡＣＫ監視部５から渡されたＡＣＫパケットのＡＣＫ番号に書き換える。【選択図】  図１
2006279867.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末とサーバとを接続するＡＤＳＬ通信装置において、
前記クライアント端末から新たに入力されるＡＣＫを監視するＡＣＫ監視部と、前記ＡＣＫを変更するＡＣＫ変更部と、前記ＡＣＫを格納する送信キューとを備え、
前記ＡＣＫ変更部が、前記ＡＣＫ監視部によって新たに入力されたＵＤＰ信号がＴＣＰパケットを付帯すると判定した場合に作動し前記送信キューに既に格納されている同一宛先へのＡＣＫを廃棄して前記新たに入力されたＴＣＰーＵＤＰパケットを前記送信キューの最後尾に格納するＴＣＰ−ＵＤＰ格納機能を備えていることを特徴としたＡＤＳＬ通信装置。
【請求項２】
クライアント端末とサーバとを接続するＡＤＳＬ通信装置において、
前記クライアント端末から新たに入力されるＡＣＫを監視するＡＣＫ監視部と、前記ＡＣＫを変更するＡＣＫ変更部と、前記ＡＣＫを格納する送信キューとを備え、
前記ＡＣＫ変更部が、新たに入力されたＡＣＫがＴＣＰパケットを付帯すると前記ＡＣＫ監視部によって判定された場合に作動し前記送信キューに既に格納されている同一宛先へのＡＣＫを廃棄して前記新たに入力されたパケットのＡＣＫフラグを”１”としたままこれを前記送信キューの最後尾に格納するＴＣＰ−ＡＣＫ格納機能と、前記ＡＣＫ監視部が新たに入力されたＵＤＰ信号がＴＣＰパケットを付帯すると前記ＡＣＫ監視部によって判定した場合に作動し前記新たに入力されたパケットのＡＣＫフラグを”０”に変更して前記送信キューの最後尾に格納するＴＣＰ−ＵＤＰ格納機能とを備えていることを特徴としたＡＤＳＬ通信装置。
【請求項３】
前記請求項２記載のＡＤＳＬ通信装置において、
前記ＡＣＫ変更部は、前記ＡＣＫフラグが「１」でないときに作動して前記新たに入力されたＡＣＫを前記送信キューの最後尾に格納する機能を備え、
前記ＡＣＫ監視部は、前記ＡＣＫフラグが「１」であるときに作動して前記ＡＣＫがＵＤＰパケットを付帯するか否かを判定する機能を備え、
前記ＡＣＫ変更部は、前記ＡＣＫがＵＤＰパケットを付帯しないと判定された場合に作動し、前記送信キューの最後尾に既に格納されている同じ宛先へのＡＣＫを廃棄すると共に、前記新たに入力されたＡＣＫフラグを「１」としたままこれを前記送信キューの最後尾に格納する機能を有し、
前記ＡＣＫ変更部は、前記パケットがＵＤＰパケットを付帯すると判定された場合に作動し、前記ＡＣＫフラグを「０」に変更してこれを前記送信キューの最後尾に格納する機能を備え、
前記送信キューは、前記パケットを前記サーバに順次送信する機能を備えていることを特徴としたＡＤＳＬ通信装置。
【請求項４】
前記クライアント端末はＬＡＮに接続されたＬＡＮ端末であり、
前記ＡＤＳＬ通信装置は前記ＬＡＮに接続されたＡＤＳＬルータであることを特徴とする請求項１，２又は３記載のＡＤＳＬ通信装置。
【請求項５】
前記クライアント端末はスタンドアロン端末であり、
前記ＡＤＳＬ通信装置は前記ＡＤＳＬモデムであることを特徴とした請求項１，２又は３記載のＡＤＳＬ通信装置。
【請求項６】
クライアント端末とサーバとを接続してＡＤＳＬ通信を行うために、コンピュータに、前記クライアント端末から新たに入力されたＡＣＫを監視するＡＣＫ監視部としての機能を、前記ＡＣＫを変更するＡＣＫ変更部としての機能を、前記ＡＣＫを格納する送信キューとしての機能を、
前記ＡＣＫ変更部が、新たに入力されたＡＣＫがＴＣＰパケットを付帯すると判定された場合に作動して前記送信キューに既に格納されている同一宛先へのＡＣＫを廃棄して前記新たに入力されたパケットのＡＣＫフラグを「１」としたままこれを前記送信キューの最後尾に格納する機能を、
前記ＡＣＫ変更部が、新たに入力されたＡＣＫがＵＤＰパケットを付帯する場合に作動して前記新たに入力されたＡＣＫフラグを「０」に変更してこれを前記送信キューの最後尾に格納する機能を、
それぞれ実現させることを特徴としたＡＤＳＬ通信プログラム。
【請求項７】
前記請求項６記載のＡＤＳＬ通信プログラムにおいて、
前記ＡＣＫフラグが「１」でないときは、前記ＡＣＫ変更部が前記新たに入力されたＡＣＫを前記送信キューの最後尾に格納する機能を、
前記ＡＣＫフラグが「１」であるときは、前記ＡＣＫ監視部が前記ＡＣＫがＵＤＰパケットを付帯するか否かを判定する機能を、
前記ＡＣＫがＵＤＰパケットを付帯しない場合は、前記ＡＣＫ変更部は、前記送信キューの最後尾に既に格納されている同じ宛先へのＡＣＫを廃棄するとともに前記新たに入力されたＡＣＫフラグを「１」としたまま前記送信キューの最後尾に格納する機能を、
前記パケットがＵＤＰパケットを付帯する場合は、前記ＡＣＫ変更部は、前記ＡＣＫフラグを「０」に変更して前記送信キューの最後尾に格納する機能を、
前記送信キューは、前記パケットを前記サーバに順次送信する機能を、
それぞれコンピュータに実現させるようにしたことを特徴とするＡＤＳＬ通信プログラム。
【請求項８】
クライアント端末とサーバとを接続してＡＤＳＬ通信を行なうＡＤＳＬ通信方法において、
新たに入力されたＡＣＫがＴＣＰパケットを付帯するか否かを（ＡＣＫ監視部が）判定するステップと、ＡＣＫがＴＣＰパケットを付帯すると判定された場合に作動し（前記ＡＣＫ変更部が、）前記送信キューに既に格納されている同一宛先へのＡＣＫを廃棄して前記新たに入力されたパケットのＡＣＫフラグを「１」としたまま送信キューの最後尾に格納するステップと、
新たに入力されたＡＣＫがＵＤＰパケットを付帯するか否かを（ＡＣＫ監視部が）判定するステップと、ＡＣＫがＵＤＰパケットを付帯すると判定された場合作動し、（ＡＣＫ変更部が）前記新たに入力されたＡＣＫフラグを「０」に変更して前記送信キューの最後尾に格納するステップとを備えていることを特徴としたＡＤＳＬ通信方法。
【請求項９】
前記請求項８記載のＡＤＳＬ通信方法において、
前記ＡＣＫフラグが「１」でない場合に、前記ＡＣＫ監視部が、前記新たに入力されたＡＣＫを前記送信キューの最後尾に格納するステップと、
前記ＡＣＫフラグが「１」である場合に、前記ＡＣＫ監視部が、前記ＡＣＫがＵＤＰパケットを付帯するか否かを判定するステップと、
前記ＡＣＫがＵＤＰパケットを付帯しない場合に、前記ＡＣＫ変更部が、前記送信キューの最後尾に既に格納されている同じ宛先へのＡＣＫを廃棄するとともに前記新たに入力されたＡＣＫフラグを「１」としたまま前記送信キューの最後尾に格納するステップと、  前記パケットがＵＤＰパケットを付帯する場合に、前記ＡＣＫ変更部が、前記ＡＣＫフラグを「０」に変更して前記送信キューの最後尾に格納するステップと、
を備え、前記送信キューは、前記パケットを前記サーバに順次送信するステップとを含むことを特徴としたＡＤＳＬ通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＡＤＳＬ通信装置、プログラム及び方法に関し、特に、ＵＤＰ／ＩＰを包含するＴＣＰ／ＩＰ通信において、ＡＤＳＬ回線の上り方向のＡＣＫ転送の遅延に起因してＡＤＳＬ回線下り方向の通信速度から期待されるＡＤＳＬ回線下り方向のデータ転送効率が悪化することを防止することを可能としたＡＤＳＬ通信装置、プログラム及び方法に関する。
【背景技術】
【０００２】
ＡＤＳＬ回線では、下り方向の通信を行うために使用する周波数帯域と上り方向の通信に使用する周波数帯域が異なる。
【０００３】
図５は、一般的に用いられるＡＤＳＬルータの運用構成を示すブロック図である。ＡＤＳＬルータ２０１は、ＬＡＮ（ＬＡＮ９自体は、上り方向、下り方向とも、例えば１００Ｍｂｐｓ）ポートを介してＬＡＮ端末１０１が接続される一方、ＡＤＳＬ回線１０（例えば、下り方向４０Ｍｂｐｓ、上り方向１Ｍｂｐｓ）を介してインターネット等の外部ネットワークに接続され、その外部ネットワークに属するサーバ４０１とＬＡＮ端末１０１との間のＴＣＰ／ＩＰ通信を中継する機能を有する。
【０００４】
図６は、従来のＡＤＳＬルータ２におけるＴＣＰ／ＩＰ通信の動作例を示すシーケンスチャートである。この説明においてＬＡＮ端末１０１はデータパケット４つ分のウィンドウサイズをＴＣＰ接続時にサーバ４０１に通知してあるものとする。ここに、ウィンドウサイズは、ＬＡＮ端末１０１からのＡＣＫ（受信確認）を受け取ることなく、サーバ４０１が連続して送信することができるデータパケット数である。
【０００５】
この図６において、サーバ４０１からのデータパケット１，２，３，……，７が、順次ＡＤＳＬルータ２０１に到着し、ＡＤＳＬルータ２０１はそれらをＬＡＮ端末１に転送する。ＬＡＮ端末１０１は受け取ったデータパケット１，２，３，……，７に対するＡＣＫ（確認応答）パケットを順次ＡＤＳＬルータ２０１に送信し、ＡＤＳＬルータ２０１は受け取ったＡＣＫ（確認応答）パケット１，２，３，……，７をサーバ４０１に向けて送信する。サーバ４０１からは送信データ１、送信データ２、送信データ３、送信データ４まで送信したところでウィンドウサイズの制限により一旦送信を停止し、ＬＡＮ端末１０１からのＡＣＫ（確認応答）を待つ。ＡＣＫ１がサーバ４０１に到着するとサーバ４０１はデータパケットを更に１つ送信できることになりデータパケット５を送信する。
【０００６】
ＡＤＳＬルータ２０１は、ＡＣＫ１の送信が完了した時点で、ＬＡＮ端末１からＡＣＫ１，２，３までを受け取っており、順番通りＡＣＫ２をサーバ４０１に向けて送信する。サーバ４０１はＡＣＫ２を受け取ってからデータパケット６を送信する。同様にしてＡＤＳＬルータ２０１はＡＣＫ２の送信が完了してからＡＣＫ３を送信し、ＡＣＫ３を受けてからサーバ４０１は送信データ７を送信することになる。
【０００７】
以上説明したように従来のＡＤＳＬルータ２０１の動作においては、ＡＣＫ１をＡＤＳＬ回線に送信完了した時点でＬＡＮ端末１０１からはＡＣＫ３を受け取っており、ＬＡＮ端末１０１としてはデータパケット７まで受け取れる状態にもかかわらずサーバ４０１はＡＣＫ２を受け取って送信データ６だけを送信する状態になる。
【０００８】
以降、サーバ４０１はＡＣＫを待ってからデータパケットを送出する状態になるため、データパケット送出に間（時間間隔）が開いてしまい、ＡＤＳＬ回線の下り方向の通信速度から期待されるデータ転送速度を得ることができない、とい不都合が生じていた。
【０００９】
ここで、ＡＤＳＬ回線は下り方向の通信を行うために使用する周波数帯域と上り方向の通信に使用する周波数帯域が異なる接続方式であり、下り方向の通信速度に比較して上り方向の通信速度が極端に低い状態で接続が確立する場合がある。すなわち、下り方向の通信速度が上り方向の通信速度を極端に上回っている場合、ＴＣＰ通信において下り方向のＴＣＰデータパケットに対する上り方向のＡＣＫ（確認応答）パケットの送出が追いつかずＴＣＰのウィンドウサイズによりサーバからのＴＣＰデータ送信に一時停止がかかる場合があり、ＴＣＰ／ＩＰ通信効率が低下する場合がある。
【００１０】
そこで、例えば、特許文献１に開示された「ＴＣＰネットワーク内のデータ端末」においては、ＡＣＫ待ち行列（バッファ）を備えたデータ端末（ＬＡＮ端末）において、ＡＣＫ待ち行列の輻湊（満杯）が処理される。具体的には、ＡＣＫ待ち行列が輻湊（満杯）しても、輻湊（満杯）となった以降の新しいＡＣＫパケットを破棄することなく、待ち行列中の最も古いＡＣＫパケットを廃棄して、輻湊（満杯）後の最新のＡＣＫパケットを待ち行列に格納する。
【００１１】
又、特許文献２に開示された「データ通信方法及びデータ通信網」においては、ＡＣＫバッファ（待ち行列）を備えた受信先（ＬＡＮ端末）からデータ送信先（サーバ）へ送信するＡＣＫパケットを廃棄され難くする。具体的には、優先的にＡＣＫバッファを送信する高優先バッファと、優先度を低くしてＡＣＫバッファを送信する低優先バッファを備え、高優先バッファの容量を大きくする。優先度のＸ被害は、パケットのＴＯＳ（type of service)フィールド又はＩＰｖ６のラベルフィールド等に優先度を示す値を設定する。
【００１２】
更に、特許文献３に開示された「ＴＣＰ／ＩＰ通信中継装置およびＴＣＰ／ＩＰ通信の中継方法」においては、無線端末が、無線基地局とインターネットを介してサーバからデータを受信するシステムのデータ転送遅延を防止する。ここで、データ転送遅延は、無線基地局出の無線信号変復調処理や誤り訂正処理などによって生じるものである。ＡＣＫ（確認応答）は、ＴＣＰ／ＩＰのようなコネクション型通信において無線端末がサーバに送り返す応答信号であり、このシステムは、ＡＤＳＬを前提とするものではない。本システムにおけるデータ転送遅延の防止は、無線端末が送信するＡＣＫ（確認応答）の内容を、無線基地局が適合的に変更することによって行なわれる。具体的には、無線基地局は、無線端末からのＡＣＫ番号を確認し、サーバからの送信済み番号を確認し、差分（送信済み番号からＡＣＫ番号を減算した結果）を取得し、当該差分が示すデータ量を、無線端末からのＡＣＫ内のデータ要求量に加算する。また、ＡＣＫ番号を送信済み番号に変更したＡＣＫをサーバに送信してもよい。これにより、無線端末が要求する転送レートで、サーバからデータパケットを送信することができる。
【００１３】
【特許文献１】特開平１０−１２６４４６号公報（図４、段落００４２）
【特許文献２】特開２００１−１２７８３０号公報（図５、段落００１５）
【特許文献３】特開２００３−７８５５０号公報（図２、段落００２７）
【発明の開示】
【発明が解決しようとする課題】
【００１４】
ところで、ＴＣＰ／ＩＰはコネクション型プロトコルであり、通信開始の前にコネクション確立処理を行なわなければならない。これに対して、ＩＰの上位プトコルであるＵＤＰ（user datagram protocol)
は、コネクションレス型通信プロトコルであり、コネクションの設定・維持が不要であるため、データが確実に相手に届くという保証はないが、動画や音声のライブ再生のための高速データ転送に適する。
【００１５】
尚、ＴＣＰ／ＩＰは、ＵＤＰ／ＩＰを包含するプロトコルである。ＵＤＰ／ＩＰのデータグラムは、コネクション確立を行なわず、通信経路をダイナミックに設定して宛先に届けられる方式のものである。従って、ＡＣＫパケットがデータグラムを付帯している場合は、ＡＣＫパケットは廃棄されてはならない。
【００１６】
しかしながら、特許文献１〜３では、ＡＣＫパケットはデータグラムを付帯するか否かにかかわらず廃棄される可能性がある。
【００１７】
そこで、本発明では、ＡＤＳＬ回線によるＴＣＰ／ＩＰ通信の上り方向伝送遅延を防止すると共に、データグラムも確実に上り方向に送信し得るＡＤＳＬ通信装置、プログラム及び方法を提供することを、その目的とする。
【課題を解決するための手段】
【００１８】
本発明では、通信速度の遅いＡＤＳＬ回線の上り方向に送信されようとするＡＣＫ（確認応答）パケットを検出し、当該ＡＣＫ（確認応答）パケットと同じ接続で古いＡＣＫ番号を持ったＡＣＫ（確認応答）パケットが送信待機している場合には、その待機パケットの送信を取りやめて送信キューから廃棄し、最新のＡＣＫ番号を持つＡＣＫ（確認応答）パケットを送信キューに入力し送信する。これにより、複数パケットで伝達しようとしていたＡＣＫ応答を集約してサーバに伝達するようにし、サーバ側がＡＣＫ応答待ちでウィンドウサイズ制限により送信を一時停止する頻度を下げ、これによってＴＣＰ／ＩＰ通信の効率を向上させるようにした点に特徴を備えている。尚、ＡＣＫ（確認応答）パケットと同じ接続で古いＡＣＫ番号を持ったＡＣＫ（確認応答）パケットがデータグラムを付帯して送信待機している場合には、その待機パケットは送信キューにて保持しつづけられるようになっている。
【００１９】
具体的には、本発明では、クライアント端末とサーバとを接続するＡＤＳＬ通信装置において、前述したクライアント端末から新たに入力されるＡＣＫを監視するＡＣＫ監視部と、前記ＡＣＫを変更するＡＣＫ変更部と、前記ＡＣＫを格納する送信キューとを備えている。そして、前述したＡＣＫ変更部が、前述したＡＣＫ監視部によって新たに入力されたＵＤＰ信号がＴＣＰパケットを付帯すると判定した場合に作動し前述した送信キューに既に格納されている同一宛先へのＡＣＫを廃棄して新たに入力されたＴＣＰーＵＤＰパケットを前述した送信キューの最後尾に格納するＴＣＰ−ＵＤＰ格納機能を備えている、という構成とした（請求項１）。
【００２０】
これにより、ＡＣＫ応答を待って送信を停止している時間が削減され、ＴＣＰ／ＩＰ通信の効率を向上させることができる。
【００２１】
又、本発明では、クライアント端末とサーバとを接続するＡＤＳＬ通信装置において、クライアント端末から新たに入力されるＡＣＫを監視するＡＣＫ監視部と、前記ＡＣＫを変更するＡＣＫ変更部と、前記ＡＣＫを格納する送信キューとを備えている。そして、前述したＡＣＫ変更部が、新たに入力されたＡＣＫがＴＣＰパケットを付帯するとＡＣＫ監視部によって判定された場合に作動し前述した送信キューに既に格納されている同一宛先へのＡＣＫを廃棄して新たに入力されたパケットのＡＣＫフラグを「１」としたままこれを前記送信キューの最後尾に格納するＴＣＰ−ＡＣＫ格納機能と、ＡＣＫ監視部が新たに入力されたＵＤＰ信号がＴＣＰパケットを付帯するとＡＣＫ監視部によって判定した場合に作動し新たに入力されたパケットのＡＣＫフラグを「０」に変更して前述した送信キューの最後尾に格納するＴＣＰ−ＵＤＰ格納機能とを備えた構成とした（請求項２）。
【００２２】
これにより、ＡＣＫ応答を待って送信を停止している時間が有効に削減され、ＴＣＰ／ＩＰ通信の効率を確実に向上させることができる。
【００２３】
ここで、前述したＡＣＫ変更部は、前記ＡＣＫフラグが「１」でないときに作動して新たに入力されたＡＣＫを前記送信キューの最後尾に格納する機能を備え、ＡＣＫ監視部は、前記ＡＣＫフラグが「１」であるときに作動して当該ＡＣＫがＵＤＰパケットを付帯するか否かを判定する機能を備え、又前記ＡＣＫ変更部は、ＡＣＫがＵＤＰパケットを付帯しないと判定された場合に作動して前記送信キューの最後尾に既に格納されている同じ宛先へのＡＣＫを廃棄すると共に、新たに入力されたＡＣＫフラグを「１」としたままこれを送信キューの最後尾に格納する機能を有し、更に前記ＡＣＫ変更部は、前記パケットがＵＤＰパケットを付帯すると判定された場合に作動し、ＡＣＫフラグを「０」に変更してこれを前記送信キューの最後尾に格納する機能を備え、前記送信キューは、前記パケットを前記サーバに順次送信する機能を備えるように構成してもよい（請求項３）。
【００２４】
この場合、前述したクライアント端末をＬＡＮに接続されたＬＡＮ端末とし、前述したＡＤＳＬ通信装置を当該ＬＡＮに接続されたＡＤＳＬルータとしてもよい（請求項４）。又、前述したクライアント端末をスタンドアロン端末とし、ＡＤＳＬ通信装置をＡＤＳＬモデムとしてもよい（請求項５）。
【００２５】
又、本発明では、ＡＤＳＬ通信プログラムとして、以下に示す構成を採用した。即ち、クライアント端末とサーバとを接続してＡＤＳＬ通信を行うために、コンピュータに、クライアント端末から新たに入力されたＡＣＫを監視するＡＣＫ監視部としての機能を、ＡＣＫを変更するＡＣＫ変更部としての機能を、ＡＣＫを格納する送信キューとしての機能を、それぞれ実現させ、更に、前述したＡＣＫ変更部が、新たに入力されたＡＣＫがＴＣＰパケットを付帯すると判定された場合に作動して前記送信キューに既に格納されている同一宛先へのＡＣＫを廃棄して前記新たに入力されたパケットのＡＣＫフラグを”１”としたままこれを前記送信キューの最後尾に格納する機能を、前述したＡＣＫ変更部が、新たに入力されたＡＣＫがＵＤＰパケットを付帯する場合に作動して新たに入力されたＡＣＫフラグを”０”に変更してこれを前述した送信キューの最後尾に格納する機能を、それぞれ実現させるようにした（請求項６）。
【００２６】
ここで、前述したコンピュータに、前述したＡＣＫフラグが「１」でないときは、前記ＡＣＫ変更部が新たに入力されたＡＣＫを前述した送信キューの最後尾に格納する機能を、前述したＡＣＫフラグが「１」であるときは、前述したＡＣＫ監視部が、前述したＡＣＫがＵＤＰパケットを付帯するか否かを判定する機能を、それぞれ実現させるようにし、更に、前述したＡＣＫがＵＤＰパケットを付帯しない場合は、前述したＡＣＫ変更部が、前記送信キューの最後尾に既に格納されている同じ宛先へのＡＣＫを廃棄するとともに前記新たに入力されたＡＣＫフラグを「１」としたまま前記送信キューの最後尾に格納する機能を、又前述したパケットがＵＤＰパケットを付帯する場合は、前述したＡＣＫ変更部は、ＡＣＫフラグを「０」に変更して前述した送信キューの最後尾に格納する機能を、そして、前述した送信キューは、前述したパケットを前記サーバに順次送信する機能を、それぞれ実現させるように構成してもよい（請求項７）。
【００２７】
更に、本発明のあっては、ＡＤＳＬ通信方法として、以下に示す構成を採用した。即ち、クライアント端末とサーバとを接続してＡＤＳＬ通信を行なうＡＤＳＬ通信方法において、新たに入力されたＡＣＫがＴＣＰパケットを付帯するか否かを（ＡＣＫ監視部が）判定するステップと、ＡＣＫがＴＣＰパケットを付帯すると判定された場合に作動し（前記ＡＣＫ変更部が）前記送信キューに既に格納されている同一宛先へのＡＣＫを廃棄して新たに入力されたパケットのＡＣＫフラグを「１」としたまま送信キューの最後尾に格納するステップと、新たに入力されたＡＣＫがＵＤＰパケットを付帯するか否かを（ＡＣＫ監視部が）判定するステップと、ＡＣＫがＵＤＰパケットを付帯すると判定された場合作動し、（ＡＣＫ変更部が）新たに入力されたＡＣＫフラグを「０」に変更して前記送信キューの最後尾に格納するステップとを備えていること（請求項８）。
【００２８】
ここで、前述したＡＣＫフラグが「１」でない場合に、前述したＡＣＫ監視部が、新たに入力されたＡＣＫを前述した送信キューの最後尾に格納するステップと、前記ＡＣＫフラグが「１」である場合に、前述したＡＣＫ監視部が、当該ＡＣＫがＵＤＰパケットを付帯するか否かを判定するステップと、当該ＡＣＫがＵＤＰパケットを付帯しない場合に作動し前記ＡＣＫ変更部が、前述した送信キューの最後尾に既に格納されている同じ宛先へのＡＣＫを廃棄するとともに新たに入力されたＡＣＫフラグを「１」としたまま前記送信キューの最後尾に格納するステップと、前記パケットがＵＤＰパケットを付帯する場合に作動し前記ＡＣＫ変更部が、前記ＡＣＫフラグを「０」に変更して前記送信キューの最後尾に格納するステップとを備えた構成とし、前記送信キューは、前記パケットを前述したサーバに順次送信するステップとを含むようにした（請求項９）。
【００２９】
このようにしても、前述した各発明と同様にＡＣＫ応答を待って送信を停止している時間が削減され、ＴＣＰ／ＩＰ通信の効率を向上させることができる。
【発明の効果】
【００３０】
本発明によれば、ＡＤＳＬ回線によるＴＣＰ／ＩＰ通信の上り方向伝送遅延を有効に防止するとともに、データグラムも確実に上り方向に送信することができるという従来にない優れた効果を奏する。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の一実施例を図１乃至図４に基づいて説明する。この図１乃至図４に示す実施例では、ＡＤＳＬ回線に接続されインターネットとＬＡＮとの間の通信を中継するルータ装置において、従来より生じていたＡＤＳＬの上り下り非対称の速度に起因するＴＣＰ／ＩＰ通信（ＵＤＰ／ＩＰを包含する）のデータ転送効率悪化を、有効に抑制するを可能としている。
【００３２】
〔本実施形態のＡＤＳＬ通信装置〕
図１に、本実施形態のＡＤＳＬ通信装置（ＡＤＳＬルータ）のブロック図を示す。
この図１において、ＡＤＳＬルータ１２は、ＬＡＮポート（ＬＡＮ９は、例えば、双方向とも１００Ｍｂｐｓ）を介してＬＡＮ端末１１が接続される一方、ＡＤＳＬ回線１０（例えば、下り回線４０Ｍｂｐｓ、上り回線１Ｍｂｐｓ）を介してインターネット１３等の外部ネットワークに接続され、その外部ネットワークに属するサーバ１４とＬＡＮ端末１１との間のＴＣＰ／ＩＰ通信（ＵＤＰ／ＩＰ通信を包含する）を中継する。
【００３３】
ここで、ＡＤＳＬルータ１２は、ＬＡＮ端末から送出されるデータパケットがデ−タグラムであるか否かに応じてＡＣＫフラグを変更するものであり、このＡＣＫフラグの変更によってＡＤＳＬ回線によるＴＣＰ／ＩＰ通信の上り方向伝送遅延を防止すると共に、データグラムも確実に上り方向に送信する。
【００３４】
具体的には、ＡＤＳＬルータ１２は、ＬＡＮ端末１１との間のデータ送受信を制御するＬＡＮ送受信制御部２１と、ＡＤＳＬ回線との間のデータ送受信を制御し且つＡＤＳＬ回線への送信パケットを一時保留する送信キュー２２及びＡＤＳＬ回線の送信同期信号に沿ってデータを送信するＡＤＳＬ送信部２３を内部に有するＡＤＳＬ送受信制御部２４とを備えている。このＡＤＳＬルータ１２は、更に、ＬＡＮ側とＡＤＳＬ側の間を行き来する双方向のデータパケットの方路を制御するルーティング制御部２５と、ルーティング制御部２５からＡＤＳＬ回線側に送信されるＴＣＰのＡＣＫを監視するＡＣＫ監視部２６と、ＡＣＫ監視部２６の指示に従い送信キュー２２内で待機しているＡＣＫ（確認応答）パケットの内容を更新するＡＣＫ変更部２７とを備えた構成となっている。
【００３５】
このＡＤＳＬルータ１２は、前述したＡＤＳＬ送受信制御部２４がＡＤＳＬ回線１０からパケットを受信するとルーティング制御部２５に渡す。ルーティング制御部２５は渡されたパケットの宛先ＩＰアドレスを参照して方路判断を行い、ＬＡＮ側アドレス宛の場合にはＬＡＮ送受信制御部２１に渡し、これを受けて前述したＬＡＮ送受信制御部２１はＬＡＮ端末１１に向けてパケットを送出する。
【００３６】
一方、ＬＡＮ端末１１から送信されたパケットをＬＡＮ送受信制御部２１で受け取りルーティング制御部２５に渡す。ルーティング制御部２５は渡されたパケットの宛先ＩＰアドレスを参照して方路判断を行い、インターネット１３等の外部ネットワーク宛のパケットである場合はＡＣＫ監視部２６に渡す。ＡＣＫ監視部２６は渡されたパケットがＡＣＫ（確認応答）パケットであるかを検査する。ここでＡＣＫ（確認応答）パケットとはヘッダのみでペイロードを持たずＡＣＫフラグが１になったパケットを指す。
【００３７】
ＡＣＫ監視部２６に渡されたパケットがＡＣＫ（確認応答）パケットでない場合、ＡＣＫ監視部２６は当該パケットを送信キュー２２に連結する。このＡＣＫ（確認応答）の処理については、以下、ＡＣＫ（確認応答）パケットにデータグラムを付帯しない場合と付帯する場合、に分けて説明する。
【００３８】
〔データグラムを付帯しないＡＣＫを処理する場合〕
前述した  ＡＣＫ監視部２６に渡されたパケットが、データグラムを付帯しないＡＣＫ（確認応答）パケットであった場合、当該パケットは、ＡＣＫ変更部２７に渡す。ＡＣＫ変更部２７は送信キュー２２を走査して、渡された当該ＡＣＫ（確認応答）パケットと送信元ＩＰアドレス，宛先ＩＰアドレス，送信元ＴＣＰポート番号，および宛先ＴＣＰポート番号が一致するＡＣＫ（確認応答）パケットを探し、一致するＡＣＫ（確認応答）パケットが発見された場合はそのＡＣＫ（確認応答）パケットを送信キュー２２から引き取って廃棄し、代わりにＡＣＫ監視部２６から渡されたＡＣＫ（確認応答）パケットを送信キュー２２の最後尾に連結する。言い換えると、一致するＡＣＫパケットが発見された場合は、そのＡＣＫパケットのＡＣＫ番号をＡＣＫ監視部５から渡されたＡＣＫパケットのＡＣＫ番号に書き換えるようにする。同時に、この場合に必要となるＴＣＰチェックサムの再計算も行うようにする。そして、送信キュー２２に連結されたパケットは、ＡＤＳＬ送信部２３に取り出され順次ＡＤＳＬ回線１０に向けて送信される。
【００３９】
図２に、データグラムを付帯しない（ＴＣＰパケットを付帯する）ＡＣＫを処理するシーケンスチャートを示す。ここで、ＬＡＮ端末１１はパケット４つ分のウィンドウサイズをＴＣＰ接続時にサーバ１４に通知してあるものとする。
【００４０】
サーバ１４からの送信データ１，２，３，……，９が順次ＡＤＳＬルータ１２に到着し、ＡＤＳＬルータ１２はそれらをＬＡＮ端末１１に転送する。ＬＡＮ端末１１は受け取ったデータパケット１，２，３，……，９に対するＡＣＫパケット１，２，３，……，７を順次ＡＤＳＬルータ１２に送信し、ＡＤＳＬルータ１２は受け取ったＡＣＫパケットをサーバ１４に向けて送信する。サーバ１４からは送信データ１，送信データ２，送信データ３，送信データ４まで送信したところで、ウィンドウサイズの制限により一旦送信を停止し、ＬＡＮ端末１１からのＡＣＫパケットによりウィンドウサイズが更新されるのを待つ。ＡＣＫ１が到着するとサーバ１４は１パケットを更に送信できることになり送信データ５を送信する。
【００４１】
ＡＤＳＬルータ１２では、ＡＣＫ１が送信完了する間にＡＣＫ２とＡＣＫ３を受け取っている。しかしながら、本実施形態では、ＡＣＫ３到着時にＡＣＫ２は廃棄されているため、ＡＣＫ１の次に、ＡＣＫ３をサーバ１４に転送することになる。サーバ１４はＡＣＫ３を受けたことにより、送信データ５と送信データ６を送信できるようになる。ＡＣＫ３を送信完了する時点でＡＤＳＬルータ１２はＡＣＫ５までを受け取っているので、次にＡＣＫ５をサーバ１４に渡すことになる。
【００４２】
ＡＤＳＬルータ１２がＬＡＮ端末１１からＡＣＫ１，ＡＣＫ２，ＡＣＫ３，ＡＣＫ４，ＡＣＫ５を受け取った時刻をそれぞれｔ１，ｔ２，ｔ３，ｔ４，ｔ５とし、各時刻でのＡＣＫ変更部２７の動作と送信キュー２２の状態とＡＤＳＬ送信部２３の状態を図３に示す表にまとめた。
【００４３】
時刻ｔ１において、ＡＣＫ変更部２７はＡＣＫ１を送信キュー２２へ移転し、送信キュー２２はＡＣＫ１をＡＤＳＬ送信部２３に移転して自らは空になり、ＡＤＳＬ送信部２３はＡＣＫ１の送信を開始する。次に、時刻ｔ２において、ＡＣＫ変更部２７はＡＣＫ２を送信キュー２２へ移転してＡＣＫ２を待機させる一方、ＡＤＳＬ送信部２３はＡＣＫ１を送信している最中である。次に、時刻ｔ３において、ＡＣＫ変更部２７はＡＣＫ２を廃棄してＡＣＫ３を送信キュー２２へ移転するため、送信キュー２２においてＡＣＫ３が待機中となる一方、ＡＤＳＬ送信部２３はＡＣＫ１を送信している最中である。
【００４４】
次に、時刻ｔ４において、ＡＣＫ変更部２７はＡＣＫ４を送信キュー２２へ移転するため、送信キュー２２においてＡＣＫ４が待機中となる一方、ＡＤＳＬ送信部２３はＡＣＫ１の送信を完了しＡＣＬ３を送信中である。
【００４５】
そして、次に、時刻ｔ５において、ＡＣＫ変更部２７はＡＣＫ４を廃棄してＡＣＫ５を送信キュー２２へ移転するため、送信キュー２２においてＡＣＫ５が待機中となる一方、ＡＤＳＬ送信部２３はＡＣＫ３を送信している最中である。このように、時刻ｔ３及びｔ５において、古いＡＣＫ（確認応答）が廃棄される。
【００４６】
以上の動作により、複数のＡＣＫパケットがＡＤＳＬ回線の上り方向の送信待ちをしているような場合にＡＣＫ番号通知を縮退させて一括通知することにより、送信元がＡＣＫ応答を待って送信を停止している時間を削減し、ＴＣＰ／ＩＰ通信の効率を向上させることができる。
【００４７】
以上説明したように、データグラムを付帯しないＡＣＫを処理する場合において、ＡＤＳＬ回線１０を介して接続されたサーバ４がＡＣＫ応答を待って送信を停止している時間を削減することにより、ＴＣＰ／ＩＰ通信の効率を改善することができる。また、通信速度の低いＡＤＳＬ回線１０の上り方向の通信帯域を通るＡＣＫを削減しているので、その送信帯域を他の通信の送信に利用することが可能になる。
【００４８】
〔データグラム（ＵＤＰパケット）を付帯するＡＣＫを処理する場合〕
ＡＣＫ監視部２６では、データグラムを持ったＡＣＫも検出の対象とされる。ＡＣＫ監視部２６でＡＣＫを検出した場合はＡＣＫ書き換え処理部２７に渡す。ＡＣＫ書き換え処理部２７は送信キュー２２を走査して渡されたＡＣＫと送信元ＩＰアドレスおよび宛先ＩＰアドレスおよび送信元ポート番号および宛先ポート番号が一致するＡＣＫを探し、一致するＡＣＫパケットが発見されなかった場合は、そのまま送信キュー２２の最後尾に連結する。
【００４９】
一方、一致するＡＣＫパケットが発見された場合は、送信キュー２２の最後尾に既に格納されたパケットを廃棄することなく、新たにＡＣＫ監視部２６から渡されたＡＣＫフラグを非表示に下げ（「１」から「０」に変更し）、チェックサムの再計算を行って送信キュー２２の最後尾に連結する。
【００５０】
このように、データグラムを付帯するＡＣＫを廃棄せず、確実にサーバ１４へ送出することにより、サーバ１４からデータグラムを確実にＬＡＮ端末１１に送信することができる。
【００５１】
〔本実施形態におけるＡＤＳＬ通信プログラム〕
本実施形態におけるＡＤＳＬ通信プログラムは、クライアント端末１１とサーバ１４とを接続するためにコンピュータを、上記クライアントから新たに入力されたパケットのＡＣＫフラグが「１」であるか否かを監視するＡＣＫ監視部として機能させ、上記ＡＣＫフラグを変更するＡＣＫ変更部として機能させ、及び、上記パケットを格納する送信キューとして機能させ、上記ＡＣＫフラグが「１」でないときは上記ＡＣＫ変更部として上記パケットを上記送信キューの最後尾に格納するように機能させる。
【００５２】
更に、このＡＤＳＬ通信プログラムは、コンピュータを、上記ＡＣＫフラグが「１」であるときは、上記ＡＣＫ監視部として上記パケットがデータグラムを付帯するか否かを判定するように機能させ、上記パケットがデータグラムを付帯しない（ＴＣＰパケットを付帯する）ときは、上記ＡＣＫ変更部として、上記送信キューの最後尾に既に格納されているＡＣＫを廃棄するとともに上記新たに入力されたＡＣＫパケットのフラグ「１」を上記送信キューの最後尾に格納するように機能させ、上記パケットがデータグラムを付帯する（ＵＤＰパケットを付帯する）ときは、上記ＡＣＫ変更部として、上記ＡＣＫフラグを「０」に変更して上記送信キューの最後尾に格納するように機能させ、更に上記送信キューとして、上記ＡＣＫパケットを順次上記サーバに送信するように機能させることによって実現させている。
【００５３】
これにより、ＡＣＫ応答を待って送信を停止している時間が削減され、ＴＣＰ／ＩＰ通信の効率を向上させることができる。
【００５４】
〔本実施形態におけるＡＤＳＬ通信方法〕
本実施形態におけるＡＤＳＬ通信方法は、クライアント端末とサーバとを接続してＡＤＳＬ通信を行なうＡＤＳＬ通信方法において、新たに入力されたＡＣＫがＴＣＰパケットを付帯するか否かをＡＣＫ監視部２６が判定するステップと、ＡＣＫがＴＣＰパケットを付帯すると判定された場合に作動し前記ＡＣＫ変更部２７が、前記送信キューに既に格納されている同一宛先へのＡＣＫを廃棄して前記新たに入力されたパケットのＡＣＫフラグを「１」としたまま送信キューの最後尾に格納するステップと、新たに入力されたＡＣＫがＵＤＰパケットを付帯するか否かをＡＣＫ監視部２６が判定するステップと、ＡＣＫがＵＤＰパケットを付帯すると判定された場合作動し、ＡＣＫ変更部２７が前記新たに入力されたＡＣＫフラグを「０」に変更して前記送信キュー２２の最後尾に格納するステップとを備えている。
【００５５】
更に、本実施形態では、このＡＤＳＬ通信方法において、前述したＡＣＫフラグが「１」でない場合に、前述したＡＣＫ監視部２６が、前記新たに入力されたＡＣＫを前記送信キュー２２の最後尾に格納するステップと、ＡＣＫフラグが「１」である場合に、前述したＡＣＫ監視部２６が、ＵＤＰパケットを前記ＡＣＫが付帯するか否かを判定するステップと、前記ＡＣＫがＵＤＰパケットを付帯しない場合に、前述したＡＣＫ変更部２７が、前記送信キュー２２の最後尾に既に格納されている同じ宛先へのＡＣＫを廃棄するとともに前記新たに入力されたＡＣＫフラグを「１」としたまま前記送信キュー２２の最後尾に格納するステップと、前記パケットがＵＤＰパケットを付帯する場合に、前記ＡＣＫ変更部２７が前記ＡＣＫフラグを「０」に変更して前記送信キュー２２の最後尾に格納するステップとを備え、前述した送信キューは、前記パケットを前述したサーバ１４に順次送信するステップとを含むようにした。
【００５６】
図４に、本実施形態におけるＡＤＳＬ通信方法を具体的に実行するためのフローチャートを示す。この図４にあって、まず、ステップＳ１において、ＬＡＮ端末１１からＡＤＳＬルータ１２へ新たにＡＣＫパケットが入力される。次に、ステップＳ２において、新たに入力されたＡＣＫパケットのＡＣＫフラグは「１」であるか否かが判断される。
【００５７】
ステップＳ２において、新パケットのＡＣＫフラグは「１」ではないと判断されればステップＳ６に進み、新たに入力されたＡＣＫパケットを送信キュー２２に格納する。一方、ステップＳ２において、新たに入力されたＡＣＫパケットのＡＣＫフラグは「１」であると判断されれば、ステップＳ３に進み、ＡＣＫはデータグラムを付帯する（ＵＤＰパケットを付帯する）か否かが判定される。
【００５８】
ステップＳ３において、ＡＣＫはデータグラムを付帯しないと判定されれば、Ｓ１７に進み、送信キュー２２の最後尾のＡＣＫを廃棄し、続いてステップＳ７に進み、前述したステップＳ１で新たに入力されたＡＣＫを送信キュー２２の最後尾に格納する。ステップＳ７に続いて、後述するステップＳ８へ進む。
【００５９】
一方、ステップＳ３において、ＡＣＫはデータグラムを付帯すると判定されれば、ステップＳ４に進み、前述したステップＳ１で新たに入力されたＡＣＫフラグを「０」に変更し、続いてステップＳ６に進み、新たに入力されたＡＣＫパケットを送信キュー２２の最後尾に格納する。ステップＳ６に続いて、後述するステップＳ８へ進む。そして、ステップＳ８では、送信キュー中のＡＣＫパケットをサーバ１４へ順次送信する。
【００６０】
これにより、複数パケットで伝達しようとしていたＡＣＫ応答を集約してサーバに伝達するようにし、サーバ側がＡＣＫ応答待ちでウィンドウサイズ制限により送信を一時停止する頻度を下げ、これによってＴＣＰ／ＩＰ通信の効率を向上させるようにした点に特徴を備えている。
【００６１】
〔他の実施形態〕
上記実施形態において、前述したＬＡＮ端末１１に替えてスタンドアロン端末を使用し、ＡＤＳＬルータに替えてＡＤＳＬモデムを使用し、ＬＡＮ送受信制御部２１に替えてスタンドアロン端末送受信制御部を使用してもよい。このようにしても、その作用効果は前述した実施形態と同等のものを得ることができる。
【産業上の利用可能性】
【００６２】
本発明は、ＡＤＳＬ回線を使用するＴＣＰ／ＩＰ通信（ＵＤＰ／ＩＰ通信を包含する）システムや、ＬＡＮに接続されていないスタンドアロン端末をＡＤＳＬモデムに接続するＴＣＰ／ＩＰ通信（ＵＤＰ／ＩＰ通信を包含する）システムに利用することができる。
【図面の簡単な説明】
【００６３】
【図１】本発明の一実施形態を示すブロック図である。
【図２】図１に示す実施形態において、データグラムを付帯しないＡＣＫ〔確認応答）を処理する場合の例を示すシーケンスチャートである。
【図３】図１に示す実施形態において、データグラムを付帯するＡＣＫ（確認応答）を処理する場合のＡＤＳＬルータの各部の状態を示す図表である。
【図４】図１に示す実施形態におけるＡＣＫ処理方法の内例を示すフローチャートである。
【図５】従来例におけるＡＤＳＬ通信システムを示すブロック図である。
【図６】従来例におけるＡＣＫ（確認応答）処理の例を示すシーケンスチャートである。
【符号の説明】
【００６４】
９    ＬＡＮ
１０  ＡＤＳＬ回路
１１  ＬＡＮ端末
１２    ＡＤＳＬルータ
１３    インターネット
１４    サーバ
２１  ＬＡＮ送受信制御部
２２  送信キュー
２３  ＡＤＳＬ送信部
２４  ＡＤＳＬ送受信制御部
２５  ルーティング制御部
２６  ＡＣＫ監視部
２７  ＡＣＫパケット変更部
【図１】
2006279867.tif 000003
【図２】
2006279867.tif 000004
【図３】
2006279867.tif 000005
【図４】
2006279867.tif 000006
【図５】
2006279867.tif 000007
【図６】
2006279867.tif 000008