(57)【要約】【課題】サービス加入者に特殊な装置の設置を負担させることなく、ＴＣＰの送信レートの平滑化を行う。【解決手段】パケット交換により通信を行うネットワーク（１０３）において、受信端末１０１ｃが、送信端末１０１ａ，１０１ｂからのデータパケットの受信時に、受信確認パケット（ＡＣＫパケット）を当該送信端末に送信し、当該送信端末が、受信確認の通知（ＡＣＫパケット）が届くごとに、受信確認なしに一度に送信するパケット数（輻輳ウィンドウ）を増加させるＴＣＰのような通信を制御の対象とし、受信端末１０１ｃから送信される受信確認パケットを、通信制御装置１において、一定の割合で廃棄することにより、送信端末での送信速度の増加量をゆるやかにし、ポリシングによりパケットが廃棄される直前の高い送信速度を維持する時間を長くし、結果としてスループットを向上させる。【選択図】図１
2008236709.tif 000002
【特許請求の範囲】
【請求項１】
パケット交換により通信を行うネットワークを介して、受信端末が送信端末からのデータパケットの受信時に受信確認パケットを上記送信端末に送信し、該送信端末は上記受信端末からの受信確認パケットが届くごとに、受信確認なしに一度に送信するパケット数を増加させる通信システムにおける通信品質制御方法であって、
上記受信端末から送信される受信確認パケットを予め定められた割合で廃棄する廃棄制御ステップを有することを特徴とする通信品質制御方法。
【請求項２】
請求項１に記載の通信品質制御方法であって、
上記廃棄制御ステップは、
上記送信端末から送信されるパケット量をトークンバケットメータにより監視するステップと、
パケット量が上記トークンバケットメータの予め定められた設定値を超えた場合に、上記受信確認パケットの廃棄処理を行うステップとを有することを特徴とする通信品質制御方法。
【請求項３】
請求項２に記載の通信品質制御方法であって、
上記トークンバケットメータの設定値を、
エッジルータのポリシングに用いるトークンバケットメータの設定値より小さな値に設定することを特徴とする通信品質制御方法。
【請求項４】
請求項２もしくは請求項３のいずれかに記載の通信品質制御方法であって、
上記受信端末から送信される受信確認パケットを廃棄する割合の設定値と、上記トークンバケットメータの設定値とを、
エッジルータのポリシングに用いるトークンバケットメータの設定値と、送信端末から送信されるパケットのパケット長、送受信端末間の往復遅延時間、受信端末のＡＣＫ応答間隔を用いて算出するステップ
を有することを特徴とする通信品質制御方法。
【請求項５】
請求項1から請求項４のいずれかに記載の通信品質制御方法であって、
上記廃棄制御ステップの処理の実行中に上記送信端末から送信されるパケットの通し番号を記録するステップと、
該通し番号が前回送信されたパケットの通し番号よりも値が小さい場合に、上記受信確認パケットの廃棄処理を中断するステップと
を有することを特徴とする通信品質制御方法。
【請求項６】
請求項１から請求項５のいずれかに記載の通信品質制御方法であって、
上記廃棄制御ステップを含む各ステップの処理を、
上記受信端末側もしくは上記送信端末側のいずれかに設けた装置において行うことを特徴とする通信品質制御方法。
【請求項７】
コンピュータに、請求項１から請求項５のいずれかに記載の通信品質制御方法における各ステップでの処理を実行させるプログラム。
【請求項８】
パケット交換により通信を行うネットワークを介して、受信端末が送信端末からのデータパケットの受信時に受信確認パケットを上記送信端末に送信し、該送信端末は上記受信端末からの受信確認パケットが届くごとに、受信確認なしに一度に送信するパケット数を増加させる通信システムであって、
請求項１から請求項６のいずれかに記載の通信品質制御方法における、上記受信端末から送信される受信確認パケットを予め定められた割合で廃棄する廃棄制御ステップを含む各ステップの処理を実行する通信品質制御装置を
具備したことを特徴とする通信システム。
【請求項９】
パケット交換により通信を行うネットワークを介して、受信端末が送信端末からのデータパケットの受信時に受信確認パケットを上記送信端末に送信し、該送信端末は上記受信端末からの受信確認パケットが届くごとに、受信確認なしに一度に送信するパケット数を増加させる通信システムに設けられ、
請求項１から請求項６のいずれかに記載の通信品質制御方法における、上記受信端末から送信される受信確認パケットを予め定められた割合で廃棄する廃棄制御ステップを含む各ステップの処理を実行する手段を具備したことを特徴とする通信品質制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットやイントラネット等のパケット通信ネットワークにおける通信品質制御技術に係り、特に、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）のようなデータ通信プロトコルの送信レートを最適化して通信品質の向上を図るのに好適な通信品質制御技術に関するものである。
【背景技術】
【０００２】
インターネットに代表されるパケット通信ネットワークでは、複数のユーザがネットワークを共有するため、パケットの転送品質はネットワークの利用状況に依存する。
【０００３】
しかし、近年、ＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅｓ）のようなネットワーク技術により、パケットの転送品質をフロー（送信元と宛先のアドレス情報とポート番号が同じであるパケットをひとまとめにしたもの）単位で保証することが可能になっている。
【０００４】
このＤｉｆｆＳｅｒｖを用いた品質保証（ＱｏＳ：Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅｓ）技術については、例えば、特許文献１および特許文献２などに記載がある。この技術では、ネットワークにおいて品質保証を行うフローに対して平均レートとバーストサイズを規定し、規定を超えるトラヒックについてはエッジルータ（ネットワークの入り口に設置されている装置）においてポリシング（超過パケットの廃棄）を行う。
【０００５】
映像や音声のようにデータの平均レートが決まっているトラヒックであれば、特許文献１，２の品質保証技術によりパケットロスのない転送が可能となる。
【０００６】
しかし、ＴＣＰのように、送信レートを徐々に増加させ、パケットロスが発生した時点で送信レートを一定割合下げるといった輻輳制御（ウィンドウ制御）機能を持つ通信においては、パケットロスがスループットに及ぼす影響が大きい。
【０００７】
例えば、非特許文献1（「４．１  Ｓｉｍｕｌａｔｉｏｎ  ｒｅｓｕｌｔｓ」における第３段落の記載）等において、特許文献１，２に記載のような品質保証を行うネットワークでは、ポリシングによりＴＣＰのスループットが規定のレートよりも大幅に低下してしまうという問題が開示されている。
【０００８】
この問題を解決する技術として、例えば特許文献３に記載のように、パケットの送信レートを平滑化させるシェーピング技術がある。
【０００９】
このシェーピング技術では、端末から送信されるトラヒックをシェーピング装置に通し、この装置内でトラヒックの送信レートをネットワークのトラヒック規定内に収まるよう平滑化するものである。
【００１０】
しかし、シェーピング装置は、ネットワークと送信端末の間に設置する必要があるため、サービスに加入している各ユーザがシェーピング装置を持つ必要がある。シェーピング装置は高価であるため、シェーピング装置を前提とした品質保証ネットワークの利用はコストの面から現実的ではない。
【００１１】
【特許文献１】特開２００４−３２０４８９号公報
【特許文献２】特開２００５−０７３１０６号公報
【特許文献３】特開平０６−２６８６７１号公報
【非特許文献１】Ｐ．Ｐ．Ｍｉｓｈｒａ，“Ｅｆｆｅｃｔ  ｏｆ  Ｌｅａｋｙ  Ｂｕｃｋｅｔ  ｐｏｌｉｃｉｎｇ  ｏｎ  ＴＣＰ  ｏｖｅｒ  ＡＴＭ  ｐｅｒｆｏｒｍａｎｃｅ”，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  '９６  （ＩＣＣ'９６），１９９６．
【発明の開示】
【発明が解決しようとする課題】
【００１２】
解決しようとする問題点は、従来の技術、例えば、ＤｉｆｆＳｅｒｖのようなネットワーク技術を使った品質保証ネットワークでは、保証レートを超えるトラヒックはエッジルータのポリシングにより廃棄されるので、ＴＣＰのように、パケットロスが発生するたびに送信レートを低下させる通信プロトコルでは、ポリシングによるスループット低下を防ぐためにシェーピング装置を用いる必要があり、サービス加入者がシェーピング装置を用意するのは、コスト的に難しいという点である。
【００１３】
本発明の目的は、これら従来技術の課題を解決し、サービス加入者に特殊な装置の設置を負担させることなく、ＴＣＰの送信レートの平滑化を行うことを可能とすることである。
【課題を解決するための手段】
【００１４】
上記目的を達成するため、本発明は、パケット交換により通信を行うネットワークにおいて、受信端末が、送信端末からのデータパケットの受信時に、受信確認パケット（ＡＣＫパケット）を送信端末に送信し、受信確認の通知（パケット）が送信端末に届くごとに送信端末は、受信確認なしに一度に送信するパケット数（輻輳ウィンドウ）を増加させるＴＣＰのような通信を制御の対象とし、受信端末から送信される受信確認パケットを一定の割合で廃棄することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、送信端末から送られるデータパケットが、例えば、エッジルータのポリシングによりデータパケットが廃棄される速度（目標とする送信速度）に到達する前に、受信確認パケットを廃棄することにより、送信速度の増加量をゆるやかにすることで、目標とする送信速度に到達するまでの時間を長くすることができる。送信速度が大きいほど高いスループットは得られるが、決められた速度を超えた場合、エッジルータのポリシングによってパケットが廃棄され、ＴＣＰのような通信では、輻輳制御により送信速度を大幅に下げてしまうので、本発明を用いて、ポリシングによりパケットが廃棄される前に、受信確認パケットを廃棄することにより、送信速度の増加量をゆるやかにして、ポリシングによりパケットが廃棄される直前の高い送信速度を維持する時間を長くし、結果としてスループットを向上させることができる。
【００１６】
さらに本発明では、送信端末から送られるデータパケットの監視と、受信端末から送られる受信確認パケットの廃棄ができればよいため、制御対象となる通信を監視・制御できる場所であればどこにでも本発明の装置を設置することができる。これにより、従来は、サービス加入者にシェーピング装置のような特殊な装置を設置させていたのに対して、本発明では、ネットワーク事業者やサービス事業者の通信網に本発明を実装することで、サービス加入者の通信のスループット向上を実現することができる。
【発明を実施するための最良の形態】
【００１７】
以下、図を用いて本発明を実施するための最良の形態例を説明する。
【００１８】
図１は、本発明に係る通信品質制御装置を有するネットワークの構成例を示すブロック図であり、図２は、図１における通信品質制御装置の構成例を示すブロック図、図３は、図２における制御管理部の構成例を示すブロック図、図４は、図２における品質制御部の構成例を示すブロック図、図５は、図３における制御管理部の通知情報格納部および図４における品質管理部の監視情報格納部で記録される情報例を示す説明図、図６は、図４における品質管理部の廃棄情報格納部で記録される情報例を示す説明図、図７は、図４における品質管理部のシーケンス番号格納部で記録される情報例を示す説明図、図８は、本発明に係る通信品質制御方法の手順例を示すフローチャート、図９は、図１における通信品質制御装置による実際の制御結果例を示す説明図、図１０は、図１における通信品質制御装置による制御に基づく、送信端末から出力されるパケット量の時間変化をモデル化した説明図、図１１は、図１における通信品質制御装置に予め設定されるパラメータ例を示す説明図である。
【００１９】
図１においては、通信品質制御装置（図中、「品質制御装置」と記載）１と、ＤｉｆｆＳｅｒｖネットワーク１０３、コンピュータ１０１ａ，１０１ｂ，１０１ｃとの関係を示している。尚、通信品質制御装置１は、コンピュータ１０１ａ，１０１ｂ，１０１ｃと同様に、ＣＰＵや記憶装置、入出力装置、表示装置等からなる、プログラムにより各機能の実行が可能なコンピュータで構成することでも良い。
【００２０】
コンピュータ１０１ａ，１０１ｂ，１０１ｃのいずれも送信側の端末および受信側の端末として機能するが、以下、本例では、コンピュータ１０１ａ，１０１ｂを送信端末１０１ａ，１０１ｂ、コンピュータ１０１ｃを受信端末１０１ｃとして説明する。
【００２１】
送信端末１０１ａ，１０１ｂは、アクセス回線を通してＤｉｆｆＳｅｒｖネットワーク１０３のエッジルータ１０２ａに接続している。このエッジルータ１０２ａおよびエッジルータ１０２ｂは、平均レートとバースト量を規定したトークンバケットモデルを用いたトラヒック・ポリシングを実施する。
【００２２】
送信端末１０１ａ，１０１ｂから送られるデータパケットは、エッジルータ１０２ａからＤｉｆｆＳｅｒｖネットワーク１０３を経由し、通信相手の接続されているエッジルータ１０２ｂを経由し、通信品質制御装置１を通して受信端末１０１ｃに転送される。
【００２３】
本図１に示した例では、通信品質制御装置１は、エッジルータ１０２ｂと受信端末１０１ｃの間に設置しているが、ＤｉｆｆＳｅｒｖネットワーク１０３内や、送信端末１０１ａ，１０１ｂとエッジルータ１０２ａとの間に設置することでも、同様の作用・効果を得ることが可能である。
【００２４】
送信端末１０１ａ，１０１ｂと受信端末１０１ｃは、通信の開始前、もしくは通信中に、パケットの最大送信速度をＤｉｆｆＳｅｒｖネットワーク１０３に通知し、パケットの転送品質の保証を要求する。
【００２５】
送信端末１０１ａ，１０１ｂが接続されているエッジルータ１０２ａでは、この要求を受理した時点で、対象となるパケットの転送量の監視を行い、最大送信速度を超えるパケットについては廃棄するようにポリシングを実施する。
【００２６】
このエッジルータ１０２ａにおけるパケット転送量の監視では、単位時間当たりの送信量の監視、もしくはトークンバケットメータによる監視を行う。
【００２７】
通信品質制御装置１は、エッジルータ１０２ａのトークンバケットメータの設定値であるトークンレート・バケットサイズと、制御対象となるフロー情報を送信端末１０１ａ，１０１ｂ、受信端末１０１ｃ、エッジルータ１０２ａ，１０２ｂ、もしくは、その他の装置から通知されるものとする。
【００２８】
尚、フローとは、送信元と宛先のアドレス情報とポート番号が同じであるパケットをひとまとめにしたものである。
【００２９】
通信品質制御装置１は、図２に示すように、制御管理部２と品質制御部３から構成されており、制御管理部２は、図３に示すように、パケット受信部２１と通知情報格納部（図中「制御情報格納部」と記載）２２、制御値決定部２３から構成されている。
【００３０】
この通信品質制御装置１は、送信端末１０１ａ，１０１ｂ、受信端末１０１ｃ、エッジルータ１０２ａ，１０２ｂ等から通知された情報を、図３に示すように、制御管理部２におけるパケット受信部２１で受信し、通知情報格納部２２に、図５のテーブル５１に示すような形式で記録する。
【００３１】
そして、通信品質制御装置１は、図３に示す、制御管理部２における制御値決定部２３により、通知情報格納部２２に記録された情報を基に、制御用に計算したトークンレートとバケットサイズとフロー情報を生成し、品質制御部３に送出する。
【００３２】
品質制御部３は、図４に示すように、パケット受信部３１、パケット量監視部３２、パケット送信部３３、パケット受信部３４、受信確認パケット廃棄部３５、パケット送信部３６、監視情報格納部３７、廃棄情報格納部３８、廃棄率情報格納部３９、再送パケット監視部４０、シーケンス番号格納部４１から構成されている。
【００３３】
このような構成の品質制御部３は、通信品質制御装置１の制御管理部２における制御値決定部２３から送出されてきたフロー情報を、監視情報格納部３７において、通知情報格納部２２と同様の図５に示すテーブル５１の形式で記録する。
【００３４】
尚、この監視情報格納部３７に記録されるトークンレートとバケットサイズは、通知情報格納部２２に記録されているトークンレートとバケットサイズよりも小さい値が記録される。
【００３５】
そして、品質制御部３は、送信端末１０１ａ，１０１ｂから送られるパケットをパケット受信部３１で受信し、パケット量監視部３２に渡し、パケット量監視部３２は、監視情報格納部３７の情報を基に、渡されたパケットが制御対象であるか否かを判断する。
【００３６】
制御対象のパケットであった場合、パケット量監視部３２は、監視情報格納部３７に記録されているトークンレートとバケットサイズを用いて、トークンバケットメータにより、渡されたパケットの流量を測定し、この流量の測定結果により、渡されたパケットが規定の流量を超えているか否かを判定する。
【００３７】
超えている場合には、パケット監視部３２は、当該パケットの属するフロー情報を廃棄情報格納部３８に、図６に示すテーブル６１の形式で記録する。廃棄パケット数は「０」に設定する。そして、パケット監視部３２は、所定の処理をした当該パケットを、再送パケット監視部４０に渡す。
【００３８】
再送パケット監視部４０では、渡されたパケットの通し番号（シーケンス番号）が、同じフローで前回受け取ったパケットの通し番号より小さいか否かを、図７に示すテーブル６２の形式でシーケンス番号格納部４１に記録された情報を参照して判定する。
【００３９】
小さい番号である場合、再送パケット監視部４０は、再送パケットであると判断し、廃棄情報格納部３８に記録されている当該フローの情報を削除する。
【００４０】
通し番号の判定を行った後には、再送パケット監視部４０は、渡されたパケットの通し番号をシーケンス番号格納部４１に記録し、当該パケットをパケット送信部３３に渡す。
【００４１】
パケット送信部３３は、再送パケット監視部４０から渡されたパケットを、受信端末１０１ｃに送信する。
【００４２】
パケット受信部３４は、受信端末１０１ｃから送られる受信確認パケットを受信し、受信確認パケット廃棄部３５に渡す。
【００４３】
受信確認パケット廃棄部３５は、パケット受信部３４から渡されたパケットが廃棄対象であるか否かを廃棄情報格納部３７のフロー情報を参照して判断する。
【００４４】
廃棄対象であった場合、受信確認パケット廃棄部３５は、さらに、廃棄率情報格納部３９に格納されている廃棄率値（例えば「２０」）を参照し、廃棄情報格納部３８の廃棄パケット数と廃棄率値が同じ値であるか否かを確認し、同じ値である場合には、廃棄パケット数の値を「０」に設定し、当該受信確認パケットを、廃棄せずパケット送信部３６に渡す。
【００４５】
パケット送信部３６は、渡されたパケットをエッジルータ１０２ｂに送信する。
【００４６】
しかし、廃棄パケット数と廃乗率値とが同じ値でない場合は、受信確認パケット廃棄部３５は、当該受信確認パケットを廃棄し、廃棄情報格納部３８の廃棄パケット数に「１」を加算する。
【００４７】
尚、廃棄率情報格納部３９には、通信品質制御装置１の起動時に、廃棄率値を予め設定しておくものとする。
【００４８】
次に、図８を用いて、このような通信品質制御装置１の動作例を説明する。まず、品質制御部３におけるパケット受信部３１により送信端末１０１ａ，１０１ｂからの送信パケットを受信すると（ステップＳ８０１）、パケット量監視部３２において、監視情報格納部３７の情報を基に、当該パケットが制御対象であるか否かを判断する（ステップＳ８０２）。
【００４９】
制御対象のパケットであれば（ステップＳ８０３）、パケット量監視部３２において、トークンバケットメータにより、当該パケットの流量を測定し（ステップＳ８０４）、この流量の測定結果により、当該パケットが規定の流量を超えているか否かを判定する（ステップＳ８０５）。
【００５０】
超えている場合には、パケット量監視部３２により、当該パケットの属するフロー情報を廃棄情報格納部３８に記録し（ステップＳ８０６）、さらに、再送パケット監視部４０により、当該パケットの通し番号（シーケンス番号）が、同じフローで前回受け取ったパケットの通し番号より小さいか否かを判定する（ステップＳ８０７）。
【００５１】
前回より小さい番号である場合（ステップＳ８０８）、再送パケット監視部４０において、再送パケットであると判断し、廃棄情報格納部３８に記録されている当該フローの情報を削除し（ステップＳ８０９）、前回より小さい番号でなければ、当該パケットの通し番号をシーケンス番号格納部４１に記録し、当該パケットをパケット送信部３３を介して受信端末１０１ｃに送信する（ステップＳ８１０）。
【００５２】
また、品質制御部３におけるパケット受信部３４により受信端末１０１ｃからの受信確認パケットを受信すると（ステップＳ８１１）、受信確認パケット廃棄部３５において、当該パケットが廃棄対象であるか否かを廃棄情報格納部３７のフロー情報を参照して判断する（ステップＳ８１２）。
【００５３】
廃棄対象であった場合（ステップＳ８１３）、受信確認パケット廃棄部３５において、さらに、廃棄率情報格納部３９に格納されている廃棄率値（例えば「２０」）を参照し（ステップＳ８１４）、廃棄情報格納部３８の廃棄パケット数と廃棄率値が同じ値であるか否かを確認し（ステップＳ８１５）、同じ値である場合には、当該受信確認パケットを、廃棄せずパケット送信部３６を介してエッジルータ１０２ｂに送信する（ステップＳ８１６）。
【００５４】
これに対して、廃棄パケット数と廃乗率値とが同じ値でない場合は、受信確認パケット廃棄部３５により、当該受信確認パケットを廃棄し、廃棄情報格納部３８の廃棄パケット数に「１」を加算する（ステップＳ８１７）。
【００５５】
次に、図９を用いて、本例の通信品質制御装置をＬｉｎｕｘ（登録商標）を用いたコンピュータ上に実装した際の評価結果を説明する。
【００５６】
本評価は、Ｇｉｇａｂｉｔ  Ｅｔｈｅｒｎｅｔ（登録商標）を用いて図１に示す構成に対して、通信品質制御装置を送信端末１０１ａ，１０１ｂとエッジルータ１０２ａ間に設けた構成での評価であり、また、広域ネットワークを模擬するために、エッジルータ１０２ａ，１０２ｂ間に遅延発生装置を設置し、１０〜６０ｍｓの往復遅延を付加させた。
【００５７】
ポリシングは、送信端末１０１ａ，１０１ｂ側のエッジルータ１０２ａにより実施し、契約帯域を８０Ｍｂｐｓと想定し、トークンレート８０Ｍｂｐｓ、バケットサイズ９００ＫＢに設定した。
【００５８】
これに対して、通信品質制御装置内のトークンバケットメータでは、トークンレート７２Ｍｂｐｓ、バケットサイズ８６４ＫＢと、エッジルータ１０２ａにおける設定値より小さく設定した。
【００５９】
また、通信品質制御装置は、到着するＡＣＫパケットを２０パケット連続で廃棄し、２１パケット目のＡＣＫを通過させる制御を行った。
【００６０】
ＴＣＰのスループットの測定は、フリーソフトウェアの「ｉｐｅｒｆ」を用いて送受信端末の間で５分間のデータ転送を行い、３回測定の平均値を平均スループットとした。
【００６１】
図９において、通信品質制御装置による廃棄制御を実施した場合と、実施しなかった場合の平均スループットの結果を示す。
【００６２】
図９に示すように、通信品質制御装置による廃棄制御を実施しなかった場合は、ポリシングによるパケットロスの影響により、平均スループットは契約帯域の半分程度（４４．４／８０，４５．７／８０，・・・４１．３／８０）まで低下している。
【００６３】
これに対して、通信品質制御装置による廃棄制御を実施した場合では、同様にパケットロスは発生しているが、送信レートが７２Ｍｂｐｓを超えてからは、廃棄制御により、送信レートの上昇が緩やかになるため、平均スループロトコルスタックとは契約帯域の８割程度（５９．４／８０，６２．６／８０，・・・６４．３／８０）になる結果が得られた。
【００６４】
以上、図１〜図９を用いて説明したように、本例では、エッジルータ１０２ａで用いられるトークンバケットメータのトークンレート・バケットサイズよりも小さい値のものを通信品質制御装置１にも実装し、通信品質制御装置１に実装されたトークンバケットメータが流量を超えるかどうかを判定し、超える場合には、受信確認パケットの廃棄を実施することで、送信端末１０１ａ，１０１ｂから送られるパケットの送信速度の上昇をゆるやかにし、エッジルータ１０２ａのポリシングにより送信端末からのパケットが廃棄されるまでの時間を長くすることができる。結果として、高い送信速度を長時間維持することができるため、スループットを向上することが可能である。
【００６５】
また、本例の通信品質制御装置１は、送信端末１０１ａ，１０１ｂと受信端末１０１ｃの通信経路であればどこにでも設置ができるため、従来のシェーピング装置のように、送信端末１０１ａ，１０１ｂとポリシングを実施するエッジルータ１０２ａの間に置かなければならないという制約がない。これにより、多くのサービス加入者を収容するネットワーク事業者やサービス事業者は、自網の中に通信品質制御装置１を置くことで、複数のサービス加入者に対して通信のスループットを向上させることが可能となる。
【００６６】
より詳細には、本例では、パケット交換により通信を行うネットワーク（ＤｉｆｆＳｅｒｖネットワーク１０３）において、受信端末１０１ｃが、送信端末１０１ａ，１０１ｂからのデータパケットの受信時に、受信確認パケット（ＡＣＫパケット）を送信端末１０１ａ，１０１ｂに送信し、受信確認の通知が送信端末１０１ａ，１０１ｂに届くごとに、送信端末１０１ａ，１０１ｂは、受信確認なしに一度に送信するパケット数（輻輳ウィンドウ）を増加させるＴＣＰのような通信を制御の対象とし、受信端末１０１ｃから送信される受信確認パケットを、通信品質制御装置１において、一定の割合で廃棄することを特徴とする。
【００６７】
例えば、送信端末１０１ａ，１０１ｂから送られるデータパケットが、エッジルータ１０２ａのポリシングによりデータパケットが廃棄される速度（目標とする送信速度）に到達する前に、送信速度の増加量をゆるやかにすることで、目標とする送信速度に到達するまでの時間を長くする。すなわち、送信速度が大きいほど高いスループットは得られるが、決められた速度を超えた場合、エッジルータ１０２ａのポリシングによってパケットが廃棄され、ＴＣＰのような通信では、輻輳制御により送信速度を大幅に下げてしまうので、本例の技術を用いることにより、エッジルータ１０２ａのポリシングによりパケットが廃棄される前に、通信品質制御装置１により、受信端末１０１ｃから送信端末１０１ａ，１０１ｂへの受信確認パケットを廃棄することにより、送信速度の増加量をゆるやかにすることで、エッジルータ１０２ａのポリシングによりパケットが廃棄される直前の高い送信速度を維持する時間を長くし、結果としてスループットを向上させる。
【００６８】
このように、本例では、送信端末１０１ａ，１０１ｂから送られるデータパケットの送信速度は、輻輳ウィンドウ（受信端末からの受信確認なしに一度に送信できるパケット数）によって決まるため、この輻輳ウィンドウを増加させるために用いている、受信端末１０１ｃから送られる受信確認パケットを廃棄することで、送信端末１０１ａ，１０１ｂから送られるデータパケットの送信速度の増加量をゆるやかにすることができる。しかし、すべての受信確認パケットを廃棄した場合、データパケットの到達確認がとれなくなってしまうため、一定割合の受信確認パケットを廃棄する。
【００６９】
さらに、本例の技術では、送信端末１０１ａ，１０１ｂから送られるデータパケットの監視と、受信端末１０１ｃから送られる受信確認パケットの廃棄ができればよいため、制御対象となる通信を監視・制御できる場所であればどこにでも本例の通信品質制御装置１を設置することができる。これにより、従来は、サービス加入者にシェーピング装置のような特殊な装置を設置させていたのに対して、本例では、ネットワーク事業者やサービス事業者の通信網に、通信品質制御装置１を設置することで、サービス加入者の通信のスループット向上を実現することができる。
【００７０】
次に、図１０，１１を用いて、廃棄率情報格納部３９に予め設定する廃棄率値等、ネットワーク（ＤｉｆｆＳｅｒｖネットワーク１０３）で保証された帯域を最大限使用するためのパラメータの算出技術について説明する。
【００７１】
本例において、送信端末から出力されるパケット量の時間変化をモデル化すると、図１０のようになる。
【００７２】
パケット量監視部３２での判定結果において、規定の流量を超えていない区間がＴ１、規定の流量を超え、ＡＣＫパケットの廃棄制御を行っている区間がＴ２に該当する。
【００７３】
ネットワークで保証された帯域を最大限使用したい場合、図１０のモデルにおいて区間Ｔ１と区間Ｔ２の面積を最大化するように、通信品質制御装置１のパラメータを設定すればよい。以下、保証帯域を最大限使用するためのパラメータの算出技術の詳細を述べる。
【００７４】
通信品質制御装置１における制御パラメータとしては、パケット量監視部３２のトークンレートｍと、ＡＣＫパケットの廃棄率ｄの２つがある。図１１に示すパラメータの値があらかじめ分かっている場合、区間Ｔ１，Ｔ２におけるパケット転送量は通信品質制御装置１の制御パラメータｍ，ｄで決まる。区間Ｔ１，Ｔ２におけるパケット転送量を最大化させるための最適なｍ，ｄの値は理論的に求めることができる。
【００７５】
標準的なＴＣＰでは、例えば、「“ＴＣＰ  Ｃｏｎｇｅｓｔｉｏｎ  Ｃｏｎｔｒｏｌ”，ＩＥＴＦ  ＲＦＣ２５８１，１９９９．」に記載の技術により、スロースタート後の輻輳回避モードにおいて、送信端末はＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ、往復遅延時間）毎にウィンドウサイズを１パケット分増加させる。
【００７６】
パケット長をＳとすると、ＲＴＴ毎に（Ｓ÷ＲＴＴ）分の送信レートが増加することになる。
【００７７】
さらに受信端末において、「“Ｒｅｑｕｉｒｅｍｅｎｔｓ  ｆｏｒ  Ｉｎｔｅｒｎｅｔ  Ｈｏｓｔｓ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｌａｙｅｒｓ”，ＩＥＴＦ  ＲＦＣ１１２２，１９８９．」に記載のＤｅｌａｙｅｄ  ＡｃｋｎｏｗｌｅｄｇｅｍｅｎｔによるＡＣＫパケット送信の間引きがされている場合、ＲＴＴ毎に到着するＡＣＫパケットの数はＤｅｌａｙｅｄ Ａｃｋｎｏｗｌｅｄｇｍｅｎｔがない場合に比べて、１／ｂに減少するため（ｂ：ＡＣＫ応答間隔）、ＲＴＴ毎の送信レートの増加分は（Ｓ÷ＲＴＴ÷ｂ）となる。以上の前提から、区間Ｔ１は以下の数１式のように求められる。
【００７８】
【数１】
2008236709.tif 000003
【００７９】
区間Ｔ２では、通信品質制御装置１において、廃棄率ｄの割合でＡＣＫパケットが廃棄されるため、ＲＴＴ毎の送信レートの増加量は（Ｓ÷ＲＴＴ÷ｂ×（１−ｄ））となり、区間Ｔ２は以下の数２式のように求められる。
【００８０】
【数２】
2008236709.tif 000004
【００８１】
区間Ｔ１，Ｔ２におけるパケット転送量をＸ１，Ｘ２とすると、Ｘ１，Ｘ２は図１０において面積に相当するため、以下の数３式のように求められる。
【００８２】
【数３】
2008236709.tif 000005
【００８３】
上記数３式から、区間Ｔ１，Ｔ２の平均スループットＹを求めると、以下の数４式のようになる。
【００８４】
【数４】
2008236709.tif 000006
【００８５】
このように、平均スループットはポリサー・トークンレートｐ、ＡＣＫパケット廃棄率ｄ、パケット流量監視のトークンレートｍにより決まる。上記数４式をｍについて微分し、平均スループットが最大になるようなｍの算出式を以下の数５，６式を用いて求める。
【００８６】
【数５】
2008236709.tif 000007
【００８７】
Ｙ'＝０となるｍを求める。
【００８８】
【数６】
2008236709.tif 000008
【００８９】
上記２次方程式の解がプラスの場合、（ｐ／ｄ＋α）の式になるため、ポリシングのトークンレートよりパケット流量監視のトークンレートが大きくなり、制御の仕組みとして成り立たない。最適なｍを求めるにはマイナスの式を用いる。
【００９０】
ＡＣＫパケットの廃棄率ｄについては、ＡＣＫパケットを多く廃棄した方が、送信レートが高い区間Ｔ２を長時間維持できるため、廃棄率ｄは大きい方が平均スループットは高くなる。
【００９１】
しかし、廃棄率ｄが大きすぎるとＡＣＫパケットが１つも送信端末に転送されなくなり、ＡＣＫパケットによる受信確認ができなくなりタイムアウトを起こしてしまう。このため、廃棄率ｄはＲＴＴ毎に最低１パケットのＡＣＫを通過させるような値にする必要がある。
【００９２】
ＴＣＰではウィンドウサイズ分のパケットを一度に送信するため、ウィンドウサイズが小さいほど、廃棄できるＡＣＫパケットの数も少なくなる。ＡＣＫパケットの廃棄は、ＴＣＰの送信レートがパケット流量監視のトークンレートｍを超えてから行われるため、ＡＣＫパケットの廃棄制御が開始されるときのウィンドウサイズは、（ｍ×ＲＴＴ÷８Ｓ）となる。
【００９３】
このときの、ＡＣＫパケットの数はＤｅｌａｙｅｄ ＡＣＫの影響を考慮すると、（ｍ×ＲＴＴ÷８Ｓ÷ｂ）となる。よって、ＡＣＫパケットの廃棄率ｄの上限値は以下の数７式のようになる。
【００９４】
【数７】
2008236709.tif 000009
【００９５】
上記数７式に、ｍを求める式を代入し、ｄの式を求めると、以下の数８式のようになる。
【００９６】
【数８】
2008236709.tif 000010
【００９７】
ただし、上記数８式のプラスの解はＲＴＴ毎に最低１パケットのＡＣＫを通すという条件を満たせないため、最適な廃棄率ｄを求めるにはマイナスの式を用いる。
【００９８】
以上をまとめると、図１１のパラメータから平均スループットを最大化するための、最適な廃棄率ｄと、パケット流量監視のトークンレートｍの値は以下の数９式により求めることができる。
【００９９】
【数９】
2008236709.tif 000011
【０１００】
尚、本発明は、図１〜図１１を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、通信品質制御装置は、到着する受信確認パケット（ＡＣＫパケット）を「２０」パケット連続で廃棄し、「２１」パケット目のＡＣＫパケットを通過させる制御を行っているが、到着する受信確認パケット（ＡＣＫパケット）を「１５」パケット連続で廃棄し、「１６」パケット目のＡＣＫパケットを通過させることでも良い。
【０１０１】
また、本例では、通信品質制御装置１は、コンピュータ１０１ａ，１０１ｂ，１０１ｃと同様に、ＣＰＵや記憶装置からなる、プログラムにより各機能の実行が可能なコンピュータで構成するものとしているが、論理素子回路からなるハードウェア構成としても良い。
【図面の簡単な説明】
【０１０２】
【図１】本発明に係る通信品質制御装置を有するネットワークの構成例を示すブロック図である。
【図２】図１における通信品質制御装置の構成例を示すブロック図である。
【図３】図２における制御管理部の構成例を示すブロック図である。
【図４】図２における品質制御部の構成例を示すブロック図である。
【図５】図３における制御管理部の通知情報格納部および図４における品質管理部の監視情報格納部で記録される情報例を示す説明図である。
【図６】図４における品質管理部の廃棄情報格納部で記録される情報例を示す説明図である。
【図７】図４における品質管理部のシーケンス番号格納部で記録される情報例を示す説明図である。
【図８】本発明に係る通信品質制御方法の手順例を示すフローチャートである。
【図９】図１における通信品質制御装置による実際の制御結果例を示す説明図である。
【図１０】図１における通信品質制御装置による制御に基づく、送信端末から出力されるパケット量の時間変化をモデル化した説明図である、
【図１１】図１における通信品質制御装置に予め設定されるパラメータ例を示す説明図である。
【符号の説明】
【０１０３】
１：通信品質制御装置、２：制御管理部、３：品質制御部、２１：パケット受信部、２２：通知情報格納部（「制御情報格納部」）、２３：制御値決定部、３１：パケット受信部、３２：パケット量監視部、３３：パケット送信部、３４：パケット受信部、３５：受信確認パケット廃棄部、３６：パケット送信部、３７：監視情報格納部、３８：廃棄情報格納部、３９：廃棄率情報格納部、４０：再送パケット監視部、４１：シーケンス番号格納部、５１：テーブル（通知情報格納部および監視情報格納部）、６１：テーブル（廃棄情報格納部）、６２：テーブル（シーケンス番号格納部）、１０１ａ，１０１ｂ：送信端末（コンピュータ）、１０１ｃ：受信端末（コンピュータ）、１０２ａ，１０２ｂ：エッジルータ、１０３：ＤｉｆｆＳｅｒｖネットワーク。
【図１】
2008236709.tif 000012
【図２】
2008236709.tif 000013
【図３】
2008236709.tif 000014
【図４】
2008236709.tif 000015
【図５】
2008236709.tif 000016
【図６】
2008236709.tif 000017
【図７】
2008236709.tif 000018
【図８】
2008236709.tif 000019
【図９】
2008236709.tif 000020
【図１０】
2008236709.tif 000021
【図１１】
2008236709.tif 000022