(57)【要約】【課題】ユーザに使用可能帯域を通知する際に、キュー長を考慮に入れた制御を行うことにより、輻輳が発生したことを従来の方式よりも短時間で通知することが可能なルータの動的品質制御方法を提供する。【解決手段】マルチサービスＩＰ網に使用されるルータの動的品質制御方法であって、定期的に優先クラスｉ（ｉは２以上の正数）で使用可能な帯域を計算し、ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、各優先クラスｉのバッファのキュー長を測定し、当該測定した優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、予め計算している優先クラスｉの使用可能帯域をユーザに通知し、当該測定した優先クラスｉのバッファのキュー長がしきい値よりも大きいならば、優先クラスｉの使用可能帯域として、０をユーザに通知する。【選択図】　　　　図１
2004056328.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信品質を提供可能なマルチサービスＩＰ網に使用されるルータであって、
各優先クラスｉ（ｉは２以上の正数）毎に設けられるバッファと、
各優先クラスｉのバッファのキュー長を測定するキュー長測定部と、
各優先クラスｉの使用帯域に基づき、各優先クラスｉの使用可能帯域を定期的に計算する使用可能帯域計算部と、
到着したパケットの優先クラスの情報を読み取り、その優先クラスのバッファに前記到着したパケットを格納するとともに、ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、前記キュー長測定部から制御用パケットを受信した時点における各優先クラスｉのバッファのキュー長を受け取り、優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、前記使用可能帯域計算部から受け取った前記計算された使用可能帯域をユーザに通知し、優先クラスｉのバッファのキュー長がしきい値よりも大きいならば、優先クラスｉの使用可能帯域として０をユーザに通知するパケット識別部とを備えることを特徴とするルータ。
【請求項２】
複数の通信品質を提供可能なマルチサービスＩＰ網に使用されるルータであって、
各優先クラスｉ（ｉは２以上の正数）毎に設けられるバッファと、
各優先クラスｉのバッファのキュー長を測定するキュー長測定部と、
定期的に、前記キュー長測定部から各優先クラスｉのバッファのキュー長を受け取り、優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、優先クラスｉの使用帯域に基づいて計算した使用可能帯域を設定し、優先クラスｉのバッファのキュー長がしきい値よりも大きいならば、優先クラスｉの使用可能帯域として０を設定することにより、定期的に優先クラスｉの使用可能帯域を計算する使用可能帯域計算部と、
到着したパケットの優先クラスの情報を読み取り、その優先クラスのバッファに前記到着したパケットを格納するとともに、ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、優先クラスｉの使用可能帯域として、前記使用可能帯域計算部から受け取った前記設定された使用可能帯域をユーザに通知するパケット識別部とを備えることを特徴とするルータ。
【請求項３】
前記使用可能帯域計算部に対して、定期的に各優先クラスｉの使用可能帯域を計算させる使用帯域計算命令を送出するタイマーと、
前記使用可能帯域計算部からの要求を受け取り、前回の要求から今回の要求までの間に、送出したパケットのパケットサイズを各優先クラス毎に測定する使用帯域測定部とを備え、
前記使用可能帯域計算部は、前記タイマーからの前記使用帯域計算命令を受け取ると、前記使用帯域測定部に対して、各優先クラス毎に測定したパケットサイズを送信する要求を発行し、当該要求に応じて前記使用帯域測定部から送信される各優先クラス毎に測定したパケットサイズを受け取り、各優先クラスｉの使用可能帯域を計算することを特徴とする請求項１または請求項２に記載のルータ。
【請求項４】
複数の通信品質を提供可能なマルチサービスＩＰ網に使用されるルータの動的品質制御方法であって、
定期的に優先クラスｉ（ｉは２以上の正数）の使用可能帯域を計算し、
ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、各優先クラスｉのバッファのキュー長を測定し、当該測定した優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、予め計算している使用可能帯域をユーザに通知し、当該測定した優先クラスｉのバッファのキュー長がしきい値よりも大きいならば、優先クラスｉの使用可能帯域として０をユーザに通知することを特徴とするルータの動的品質制御方法。
【請求項５】
複数の通信品質を提供可能なマルチサービスＩＰ網に使用されるルータの動的品質制御方法であって、
定期的に各優先クラスｉ（ｉは２以上の正数）のバッファのキュー長を測定し、当該測定した優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、優先クラスｉの使用帯域から計算された使用可能帯域を設定し、当該測定した優先クラスｉのバッファのキュー長がしきい値よりも大きいならば、優先クラスｉの使用可能帯域として０を設定することにより、優先クラスｉの使用可能帯域を定期的に計算し、
ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、優先クラスｉの使用可能帯域として、前記設定した使用可能帯域をユーザに通知することを特徴とするルータの動的品質制御方法。
【請求項６】
複数の通信品質を提供可能なマルチサービスＩＰ網に使用されるルータの動的品質制御方法をコンピュータに実行させるためのプログラムであって、
前記プログラムは、定期的に各優先クラスｉ（ｉは２以上の正数）の使用可能帯域を計算させる手順と、
ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、各優先クラスｉのバッファのキュー長を測定させ、当該測定させた優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、予め計算している使用可能帯域をユーザに通知させ、当該測定させた優先クラスｉ用のバッファのキュー長がしきい値以上ならば、優先クラスｉの使用可能帯域として０をユーザに通知させる手順とを、コンピュータに実行させることを特徴とするプログラム。
【請求項７】
複数の通信品質を提供可能なマルチサービスＩＰ網に使用されるルータの動的品質制御方法をコンピュータに実行させるためのプログラムであって、
前記プログラムは、定期的に、各優先クラスｉ（ｉは２以上の正数）のバッファのキュー長を測定させ、当該測定させた優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、優先クラスｉの使用帯域から計算させた使用可能帯域を設定させ、当該測定させた優先クラスｉのバッファのキュー長がしきい値以上ならば、優先クラスｉの使用可能帯域として０を設定させることにより、各優先クラスｉの使用可能帯域を定期的に計算させる手順と、
ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、優先クラスｉの使用可能帯域として、前記設定させた使用可能帯域をユーザに通知させる手順とを、コンピュータに実行させることを特徴とするプログラム。
【請求項８】
前記請求項６または請求項７に記載されたプログラムが記録された記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ルータ、ルータの動的品質制御方法、プログラム、および記録媒体に係わり、特に、マルチサービスＩＰ網において、ユーザが現在の網の状態を把握するのをサポートする為に、網が優先クラス毎の使用可能帯域をユーザに通知することにより、動的に通信品質を制御する技術に関する。
【０００２】
【従来の技術】
現在のＩＰ網は、ベストエフォートサービスのみを提供しているが、ＩＰ網が電話網と並ぶインフラストラクチャとして機能する為には、様々な通信品質をサポートする必要がある。
複数の通信品質を柔軟に提供する網アーキテクチャとして、Ｄｉｆｆｓｅｒｖが提案されている（ＩＥＴＦ　ＲＦＣ２４７５，Ａｎ　ａｒｃｈｉｔｅｃｔｕｒｅ　ｆｏｒ　Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ　ｓｅｒｖｉｃｅｓ）。
そこでは、複数の優先クラスを提供できるＡＦ（Ａｓｓｕｒｅｄ　Ｆｏｒｗａｒｄｉｎｇ）が定義されており（ＩＥＴＦ　ＲＦＣ２５９７，Ａｓｓｕｒｅｄ　Ｆｏｒｗａｒｄｉｎｇ　ＰＨＢ　Ｇｒｏｕｐ）、ルータは高優先のパケットから優先的にサービスを行うことにより、複数の優先クラスを実現している。
このような複数の通信品質を提供可能なＩＰ網は、マルチサービスＩＰ網と呼ばれている。
【０００３】
マルチサービスＩＰ網を有効に利用する為には、ユーザは自身の要求品質を満足する最適なサービス優先クラスを網の状態に応じて動的に選択し、通信をする必要がある。
そのような方式として、優先クラス毎の使用可能帯域をユーザに通知する動的品質制御方式が提案されている（山田他、“マルチサービスＩＰ網における動的品質制御方式の検討”、信学技報　ＴＭ２００１−４８，Ｎｏｖ．２００１）。
前述した動的品質制御方式では、網内のルータは各出カインタフェースにおいて、優先クラス毎の使用可能帯域を定期的に計算している。
つまりリンク帯域をＣ、全優先クラス数をＮ、優先クラスｉの使用帯域をＵｉとすると、優先クラスｉの使用可能帯域Ａｉを、下記（１）式で計算している。
【０００４】
【数１】
2004056328.tif 000003
・・・・・・・・・・・・・・・・・・・・・　（１）
ここで、優先クラス（ｉ＋１）は、優先クラスｉよりも高優先であると仮定している。
そして、ユーザ端末は、現在の網の状態を把握するため、周期的に制御用パケットを送信する。
ユーザが送出した制御用パケットがルータに到着すると、ルータは計算している優先クラスｉ毎の使用可能帯域Ａｉをユーザに通知する。
【０００５】
ユーザは各ルータから通知された情報を受信すると、図８に示するフローチャートにしたがって、使用するサービス優先クラスを決定する。
先ず、現在使用している優先クラスの使用可能帯域が０より大きいかを調べ（ステップ２０１）、ステップ２０１において、現在使用している優先クラスの使用可能帯域が０より大きいならば、現在使用している優先クラスより低い優先クラスの中で、使用可能帯域が０より大きいものが存在するかを調べる（ステップ２０２）。
もし、ステップ２０２において、現在使用している優先クラスより低い優先クラスの中で、使用可能帯域が０より大きいものが存在するならば、これ以降、その中で最も低い優先度の優先クラスで通信を続ける（ステップ２０３）。
ステップ２０２において、現在使用している優先クラスより低い優先クラスの中で、使用可能帯域が０より大きいものが存在しないならば、現在の優先クラスで通信を続ける（ステップ２０４）。
【０００６】
ステップ２０１において、現在使用している優先クラスの使用可能帯域が０以下ならば、現在使用している優先クラスより高い優先クラスの中で、使用可能帯域がユーザの要求するレート以上のものが存在するかを調べる（ステップ２０５）。
もし、ステップ２０５において、現在使用している優先クラスより高い優先クラスの中で、使用可能帯域がユーザの要求するレート以上のものが存在するならば、これ以降、これ以降、その中で最も低い優先度の優先クラスで通信を続ける（ステップ２０６）。
ステップ２０５において、現在使用している優先クラスより高い優先クラスの中で、使用可能帯域がユーザの要求するレート以上のものが存在しないならば、現在の優先クラスで通信を続ける（ステップ２０７）。
このような方式を用いることによって、ユーザは網の状態に適した優先度の優先クラスを用いることができる。
【０００７】
【発明が解決しようとする課題】
しかしながら、前述した方式では、ルータが使用可能帯域を計算する間隔が大きくなると、ユーザが輻輳を検出するまでの時間が大きくなるという問題がある。
例えば、図９に示すように、リンク帯域が１０Ｍｂｐｓで、３つの優先クラスを持つルータ１０を考える。
ここで、ルータは５秒間隔で使用可能帯域を計算しており、ユーザＡの要求品質は５Ｍｂｐｓであり、時刻０からサービス優先クラス１を使用して５Ｍｂｐｓで通信を行っていると仮定する。
時刻５秒で、各優先クラスの使用可能帯域を計算する時、０秒から５秒までの各優先クラスの使用帯域は、優先クラス３の使用帯域が０Ｍｂｐｓ、優先クラス２の使用帯域が０Ｍｂｐｓ、優先クラス１の使用帯域が５Ｍｂｐｓである為、前述の（１）式より、各優先クラスの使用帯域は、下記（２）式のようになる。
【数２】
優先クラス３の使用可能帯域＝１０−０＝１０Ｍｂｐｓ
優先クラス２の使用可能帯域＝１０−（０＋０）＝１０Ｍｂｐｓ
優先クラス１の使用可能帯域＝１０−（０＋０＋５）＝５Ｍｂｐｓ・・・・・・・・・・・・・・・・・・・・・　（２）
図８に示すフローチャートより、ユーザＡは現在使用している優先クラス（優先クラス１）の使用可能帯域が０より大きいので、現在の優先クラスで通信を続ける。
【０００８】
ここで、時刻８秒で要求品質１０Ｍｂｐｓを持つユーザＢがサービス優先クラス２を使用して、１０Ｍｂｐｓで通信を開始したとする。
すると時刻１０秒で各優先クラスの使用可能帯域を計算する時、５秒から１０秒までの各優先クラスの使用帯域は、優先クラス３の使用帯域が０Ｍｂｐｓ、優先クラス２の使用帯域が４Ｍｂｐｓ（＝１０Ｍｂｐｓ×（１０−８）／５）、優先クラス１の使用帯域５Ｍｂｐｓである為、前述の（１）式より、各優先クラスの使用帯域は、下記（３）式のようになる。
【数３】
優先クラス３の使用可能帯域＝１０−０＝１０Ｍｂｐｓ
優先クラス２の使用可能帯域＝１０−（０＋４）＝６Ｍｂｐｓ
優先クラス１の使用可能帯域＝１０−（０＋４＋５）＝１Ｍｂｐｓ・・・・・・・・・・・・・・・・・・・・・　（３）
図８に示すフローチャートより、ユーザＡは現在使用している優先クラス（優先クラス１）の使用可能帯域が０より大きいので、現在の優先クラスで通信を続ける。
【０００９】
時刻１５秒で各優先クラスの使用可能帯域を計算する時、１０秒から１５秒までの各優先クラスの使用帯域は、優先クラス３の使用帯域が０Ｍｂｐｓ、優先クラス２の使用帯域が１０Ｍｂｐｓ、優先クラス１の使用帯域が５Ｍｂｐｓである為、前述の（１）式より、各優先クラスの使用帯域は、下記（４）式のようになる。
【数４】
優先クラス３の使用可能帯域＝１０−０＝１０Ｍｂｐｓ
優先クラス２の使用可能帯域＝１０−（０＋１０）＝０Ｍｂｐｓ
優先クラス１の使用可能帯域＝１０−（０＋１０＋５）＝−５Ｍｂｐｓ・・・・・・・・・・・・・・・・・・・・・　（４）
図８に示すフローチャートより、ユーザＡは現在使用している優先クラス（優先クラス１）の使用可能帯域が０より小さいので、現在の優先クラスより高い優先クラスで通信を続けようとする。
このように、時刻８秒に発生したトラヒックの影響で、優先クラス１の使用可能帯域が０以下になる為に、ユーザＡが優先度を上げるのは時刻１５秒以降、つまり最短でも７秒の時間がかかり、その間、ユーザＡは多くのパケットが廃棄されるという問題がおこる。
このような問題が起こるのは、使用帯域のみから決定した使用可能帯域をユーザに通知している為である。
【００１０】
本発明は、前記従来技術の問題点を解決するためになされたものであり、本発明の目的は、ユーザに使用可能帯域を通知、あるいは、使用可能帯域を計算する際に、キュー長を考慮に入れた制御を行うことにより、輻輳が発生したことを従来の方式よりも短時間で通知することができ、それにより、パケットの廃棄を低減させることが可能となるルータ、および、ルータの動的品質制御方法を提供することにある。
また、本発明の他の目的は、前述のルータの動的品質制御方法をコンピュータに実行させるためのプログラムを提供することにある。
また、本発明の他の目的は、前述のプログラムが記録された記録媒体を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面によって明らかにする。
【００１１】
【課題を解決するための手段】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記の通りである。
即ち、本発明は、複数の通信品質を提供可能なマルチサービスＩＰ網に使用されるルータであって、各優先クラスｉ（ｉは２以上の正数）毎に設けられるバッファと、各優先クラスｉのバッファのキュー長を測定するキュー長測定部と、各優先クラスｉの使用帯域に基づき、各優先クラスｉの使用可能帯域を定期的に計算する使用可能帯域計算部と、到着したパケットの優先クラスの情報を読み取り、その優先クラスのバッファに前記到着したパケットを格納するとともに、ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、前記キュー長測定部から制御用パケットを受信した時点における各優先クラスｉのバッファのキュー長を受け取り、優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、前記使用可能帯域計算部から受け取った前記計算された使用可能帯域をユーザに通知し、優先クラスｉのバッファのキュー長がしきい値よりも大きいならば、優先クラスｉの使用可能帯域として０をユーザに通知するパケット識別部とを備える。
【００１２】
また、本発明は、複数の通信品質を提供可能なマルチサービスＩＰ網に使用されるルータであって、各優先クラスｉ（ｉは２以上の正数）毎に設けられるバッファと、各優先クラスｉのバッファのキュー長を測定するキュー長測定部と、定期的に、前記キュー長測定部から各優先クラスｉのバッファのキュー長を受け取り、優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、優先クラスｉの使用帯域に基づいて計算した使用可能帯域を設定し、優先クラスｉのバッファのキュー長がしきい値よりも大きいならば、優先クラスｉの使用可能帯域として０を設定することにより、定期的に優先クラスｉの使用可能帯域を計算する使用可能帯域計算部と、到着したパケットの優先クラスの情報を読み取り、その優先クラスのバッファに前記到着したパケットを格納するとともに、ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、優先クラスｉの使用可能帯域として、前記使用可能帯域計算部から受け取った前記設定された使用可能帯域をユーザに通知するパケット識別部とを備える。
【００１３】
また、本発明の好ましい実施の形態では、前記使用可能帯域計算部に対して、定期的に各優先クラスｉの使用可能帯域を計算させる使用帯域計算命令を送出するタイマーと、前記使用可能帯域計算部からの要求を受け取り、前回の要求から今回の要求までの間に、送出したパケットのパケットサイズを各優先クラス毎に測定する使用帯域測定部とを備え、前記使用可能帯域計算部は、前記タイマーからの前記使用帯域計算命令を受け取ると、前記使用帯域測定部に対して、各優先クラス毎に測定したパケットサイズを送信する要求を発行し、当該要求に応じて前記使用帯域測定部から送信される各優先クラス毎に測定したパケットサイズを受け取り、各優先クラスｉの使用可能帯域を計算する。
【００１４】
また、本発明は、複数の通信品質を提供可能なマルチサービスＩＰ網に使用されるルータの動的品質制御方法であって、定期的に優先クラスｉ（ｉは２以上の正数）の使用可能帯域を計算し、ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、各優先クラスｉのバッファのキュー長を測定し、当該測定した優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、予め計算している使用可能帯域をユーザに通知し、当該測定した優先クラスｉのバッファのキュー長がしきい値よりも大きいならば、優先クラスｉの使用可能帯域として０をユーザに通知する。
【００１５】
また、本発明は、複数の通信品質を提供可能なマルチサービスＩＰ網に使用されるルータの動的品質制御方法であって、定期的に各優先クラスｉ（ｉは２以上の正数）のバッファのキュー長を測定し、当該測定した優先クラスｉのバッファのキュー長がしきい値以下ならば、優先クラスｉの使用可能帯域として、優先クラスｉの使用帯域から計算された使用可能帯域を設定し、当該測定した優先クラスｉのバッファのキュー長がしきい値よりも大きいならば、優先クラスｉの使用可能帯域として０を設定することにより、優先クラスｉの使用可能帯域を定期的に計算し、ユーザが現在の網の状態を把握するために送出した制御用パケットを受信した時に、優先クラスｉの使用可能帯域として、前記設定した使用可能帯域をユーザに通知する。
【００１６】
また、本発明は、前述のルータの動的品質制御方法をコンピュータに実行させるためのプログラムである。
また、本発明は、前述のプログラムが記録された記録媒体である。
本発明によれば、ルータが使用可能帯域をユーザに通知する時、あるいは、ルータが使用可能帯域を計算する時、各優先クラスｉのバッファのキュー長があるしきい値より大きいならば、その優先クラスの使用可能帯域を０と通知することにより、輻輳をすばやくユーザに通知することができる。
【００１７】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
なお、実施の形態を説明するための全図において、同一機能を有するものは同一符号を付け、その繰り返しの説明は省略する。
［実施の形態１］
図１は、本発明の実施の形態１のルータ１０の概略構成を示すブロック図である。
パケット識別部２（１３）は、バッファ１２から出力されたパケットのヘッダに書かれている優先クラスの情報とパケットサイズの情報を読み取り、その結果を使用帯域測定部１７に送る。
使用帯域測定部１７は、優先クラス毎に用意された変数ｓｉｚｅ［ｉ］を記憶しており、パケット識別部２（１３）から情報を受け取ると、変数ｓｉｚｅ［ｉ］を更新する。
例えば、パケット識別部２（１３）から、優先クラス３、パケットサイズ１０００ｂｉｔｓの情報を受け取ると、変数ｓｉｚｅ［３］に１０００を加算する。
タイマー１４は、使用可能帯域を計算する時刻に、使用可能帯域計算部１５に対して、使用可能帯域を計算する使用帯域計算命令と、現在の時刻を送る。
【００１８】
使用可能帯域計算部１５は、前回タイマー１４から通知された時刻ｐｒｅｖＴｉｍｅを記憶しており、タイマー１４から使用帯域計算命令を受け取ると、使用帯域測定部１７に変数ｓｉｚｅ［ｉ］を送るように通知する。
使用帯域測定部１７は、その情報を受け取ると、変数ｓｉｚｅ［ｉ］を使用可能帯域計算部１５に通知し、保持している変数ｓｉｚｅ［ｉ］の値を０にする。
使用可能帯域計算部１５は、ｓｉｚｅ［ｉ］の情報を受け取ると、優先クラスｉの使用帯域Ｕｉを、下記（５）式により計算する。
【数５】
Ｕｉ＝ｓｉｚｅ［ｉ］／（ｎｏｗ−ｐｒｅｖＴｉｍｅ）・・・・・・・・・・・・・・・・・・・・・　（５）
ここで、ｎｏｗは、タイマー１４から通知された現在の時刻である。
また、使用可能帯域計算部１５は、ｐｒｅｖＴｉｍｅの値をｎｏｗに更新し、そして、前述した（１）式により、優先クラスｉの使用可能帯域Ａｉを計算する。
【００１９】
パケット識別部１（１１）は、ルータ１０に到着したパケットのヘッダに書かれている優先クラスの情報を読み取り、その優先クラスのバッファ１２にパケットを格納する。
また、到着したパケットがユーザの送出した制御用パケットならば、使用可能帯域計算部１５に、優先クラスｉの使用可能帯域Ａｉを、キュー長測定部１６に現在の優先クラスｉのバッファ１２のキュー長（ｑＬｅｎ［ｉ］）を通知するように要求を出す。
そして、それらの情報を受け取ったならば、図２に示すフローチャートに従って、ユーザに通知する使用可能帯域を決定し、その情報をユーザに通知する。
即ち、パケット識別部１（１１）は、キュー長測定部１６から通知された優先クラスｉのバッファ１２のキュー長（ｑＬｅｎ［ｉ］）が、ある閾値（ＴＨ）以下かを判断する（ステップ１０１）。
ステップ１０１において、キュー長測定部１６から通知された優先クラスｉのバッファのキュー長（ｑＬｅｎ［ｉ］）がある閾値（ＴＨ）以下ならば、優先クラスｉの使用可能帯域として、０をユーザに通知し（ステップ１０２）、また、ステップ１０１において、キュー長測定部１６から通知された優先クラスｉのバッファのキュー長（ｑＬｅｎ［ｉ］）がある閾値（ＴＨ）より大きいならば、優先クラスｉの使用可能帯域として、使用可能帯域計算部１５において予め計算されている使用可能帯域Ａｉをユーザに通知する（ステップ１０３）。
ユーザは図８のフローチャートに従って、サービス優先クラスを決定する。
【００２０】
ユーザに使用可能帯域を通知する際、図２に示すフローチャートのようにキュー長を考慮した通知を行う本実施の形態の動的品質制御方法と、キュー長を考慮せず前述の（１）式の結果をそのまま使用可能帯域とする従来方式の性能比較評価をコンピュータシミュレーションで行った結果を以下に示す。
図３は、シミュレーションモデルを示すブロックであり、シミュレーション条件を以下の通りである。
（１）４つのサービス優先クラスを持つルータ
（２）各サービス優先クラス用のバッファサイズ：６４Ｋｂｙｔｅｓ
（３）しきい直：３２Ｋｂｙｔｅｓ
（４）リンク帯域：１０Ｍｂｐｓ
（５）伝送遅延時間、ルータ１０間：５ｍｓ、送信／受信端末とルータ間：１ｍｓ
（６）パケットサイズ：１０００ｂｙｔｅｓ
（７）シミュレーション時間：３０秒
（８）ユーザ数：１０
（９）ユーザ１から９の通信条件
（ａ）要求品質：１Ｍｂｐｓ
（ｂ）時刻０秒にサービス優先クラス１を使用して、１Ｍｂｐｓで通信を開始する。
（ｃ）図８に従って、サービス優先クラスを変化させる。
（１０）ユーザ１０の通信条件
（ａ）要求品質：１０Ｍｂｐｓ
（ｂ）時刻１０秒から２０秒の間にサービス優先クラス２を使用して、１０Ｍｂｐｓで通信を行う。
（ｃ）サービス優先クラスを変化させない。
【００２１】
本シミュレーションでは、ユーザ１から９は時刻１０秒にユーザ１０が通信を開始するまではサービス優先クラス１を使用する。
しかしその後、ユーザ１０のトラヒックにより、サービス優先クラス１で使用可能な帯域が０Ｍｂｐｓになる為、サービス優先クラス３を使用するようになる。
即ち、サービス優先クラスを１から３までアップさせるまでの間に、ユーザ１から９のパケットは廃棄される。
よってユーザ１から９のパケットの廃棄確率が少ないほど、輻輳を早く検知できるより優れた方式であると言うことができる。
図４に、ルータ１０が使用可能帯域を定期的に計算する間隔を１秒とした時のパケット廃棄率を示す。ユーザが制御用パケットを送信する間隔は、１秒から０．１秒まで変化させた。
図４に示すように、本実施の形態の動的品質制御方法を用いることにより、パケット廃棄率が大幅に減少していることが分かる。
【００２２】
［実施の形態２］
図５は、本発明の実施の形態２のルータの概略構成を示すブロック図である。
パケット識別部２（１３）は、バッファ１２から出力されたパケットのヘッダに書かれている優先クラスの情報とパケットサイズの情報を読み取り、その結果を使用帯域測定部１７に送る。
使用帯域測定部１７は、優先クラス毎に用意された変数ｓｉｚｅ［ｉ］を記憶しており、パケット識別部２（１３）から情報を受け取ると、変数ｓｉｚｅ［ｉ］を更新する。
例えば、パケット識別部２（１３）から、優先クラス３、パケットサイズ１０００ｂｉｔｓの情報を受け取ると、変数ｓｉｚｅ［３］に１０００を加算する。
タイマー１４は、使用可能帯域を計算する時刻に、使用可能帯域計算部１５に、使用可能帯域を計算させる使用可能帯域計算命令と、現在の時刻を送る。
使用可能帯域計算部１５は、前回タイマー１４から通知された時刻ｐｒｅｖＴｉｍｅを記憶しており、タイマー１４から命令を受け取ると、使用帯域測定部１７に変数ｓｉｚｅ［ｉ］を、キュー長測定部１６に現在の優先クラスｉのバッファ１２のキュー長（ｑＬｅｎ［ｉ］）を通知するよう要求を出す。
使用帯域測定部１７はその情報を受け取ると、変数ｓｉｚｅ［ｉ］を使用可能帯域計算部１５に通知し、保持している変数ｓｉｚｅ［ｉ］の値を０にする。
【００２３】
使用可能帯域計算部１５は、ｓｉｚｅ［ｉ］の情報、各優先クラスｉのバッファ１２のキュー長（ｑＬｅｎ［ｉ］）を受け取ると、各優先クラスｉの使用帯域Ｕｉを前述の（５）式に従って求める。
そして、図６に示すフローチャートに従って、各優先クラスｉの使用可能帯域Ａｉを計算する。
即ち、使用可能帯域計算部１５は、キュー長測定部１６から通知された、優先クラスｉのバッファ１２のキュー長（ｑＬｅｎ［ｉ］）がある閾値（ＴＨ）以下かを判断する（ステップ１１１）。
ステップ１１１において、キュー長測定部１６から通知された、優先クラスｉのバッファ１２のキュー長（ｑＬｅｎ［ｉ］）がある閾値（ＴＨ）以下ならば、優先クラスｉの使用可能帯域として０を設定し（ステップ１１２）、また、ステップ１１１において、キュー長測定部１６から通知された、優先クラスｉのバッファ１２のキュー長（ｑＬｅｎ［ｉ］）がある閾値（ＴＨ）より大きいならば、優先クラスｉの使用可能帯域として、前述の（１）式で求まる使用可能帯域Ａｉを設定する（ステップ１１３）。
パケット識別部１（１１）は、ルータ１０に到着したパケットのヘッダに書かれている優先クラスの情報を読み取り、その優先クラスのバッファ１２にパケットを格納する。
また、到着したパケットがユーザの送出した制御用パケットならば、使用可能帯域計算部１５に、優先クラスｉの使用可能帯域Ａｉを通知するように要求を出し、使用可能帯域計算部１５から送信された優先クラスｉの使用可能帯域Ａｉをユーザに通知する。
ユーザは図８のフローチャートに従って、サービス優先クラスを決定する。
【００２４】
ルータ１０が使用可能帯域を計算する際、図６に示すフローチャートのようにキュー長を考慮した計算を行う本実施の形態の動的品質制御方法と、キュー長を考慮せず前述の（１）式の結果をそのまま使用可能帯域とする従来方式の性能比較評価をコンピュータシミュレーションで行った結果を以下に示す。
シミュレーションモデル、条件は、前述の実施の形態１で説明したものと同様である。
図７に、ルータ１０が使用可能帯域を定期的に計算する問隔を１秒とした時のパケット廃棄率を示す。ユーザが制御用パケットを送信する間隔は、１秒から０．１秒まで変化させた。
図７に示すように、本実施の形態の動的品質制御方法を用いることにより、パケット廃棄率が減少していることが分かる。
なお、前述の説明において、ルータ１０はコンピュータに実行させることも可能であり、その場合に、ルータ１０における動的品質制御方法は、コンピュータ内のハードディスクなどに格納されるプログラムを、コンピュータが実行することにより行われる。このプログラムは、ＣＤ−ＲＯＭ、あるいは、ネットワークを介したダウンロードにより供給される。
以上、本発明者によってなされた発明を、前記実施の形態に基づき具体的に説明したが、本発明は、前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【００２５】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。
本発明によれば、ルータが使用可能帯域を計算する間隔が同一であっても、従来の方式よりも、早く輻輳状態をユーザに通知することができ、その結果、パケット廃棄率を減少させ、より高品質な通信が可能となる。
【図面の簡単な説明】
【図１】本発明の実施の形態１のルータの概略構成を示すブロック図である。
【図２】図１に示すパケット識別部１が、ユーザに通知する使用可能帯域を決定する方法を説明するためのフローチャートである。
【図３】本発明の実施の形態１の動的品質制御方法と、従来方式との性能比較評価をコンピュータシミュレーションで行った際の、シミュレーションモデルを示すブロックである。
【図４】本発明の実施の形態１の動的品質制御方法と、従来方式との性能比較評価をコンピュータシミュレーションで行った際の、パケット廃棄率を示すグラフである。
【図５】本発明の実施の形態２のルータの概略構成を示すブロック図である。
【図６】図５に示す使用可能帯域計算部が、ユーザに通知する使用可能帯域を決定する方法を説明するためのフローチャートである。
【図７】本発明の実施の形態２の動的品質制御方法と、従来方式との性能比較評価をコンピュータシミュレーションで行った際の、パケット廃棄率を示すグラフである。
【図８】従来方式において、ユーザが、使用するサービス優先クラスを決定する方法を説明するためのフローチャートである。
【図９】従来方式の問題点を説明するための図である。
【符号の説明】
１０…ルータ、１１…パケット識別部１、１２…バッファ、１３…パケット識別部２、１４…タイマー、１５…使用可能帯域計算部、１６…キュー長測定部、１７…使用帯域測定部。
【図１】
2004056328.tif 000004
【図２】
2004056328.tif 000005
【図３】
2004056328.tif 000006
【図４】
2004056328.tif 000007
【図５】
2004056328.tif 000008
【図６】
2004056328.tif 000009
【図７】
2004056328.tif 000010
【図８】
2004056328.tif 000011
【図９】
2004056328.tif 000012