(57)【要約】【課題】  容易にある基準にしたがってパケットの廃棄を行うことが可能な流量制御装置を提供する。【解決手段】  流量制御装置１は、バッファの保持するパケット量がバッファの保持できるパケット量の８０％を超えていれば、分岐部１１からパケットが送られていたクラスＢのバッファ１４から、集約部１２にパケットを転送するクラスＢのバッファ１５への転送をやめ、クラスＢのバッファ１４から集約部１２にパケットを転送するようにする。流量制御装置１は、クラスＢのバッファ１５から集約部１２へのパケットの転送をやめ、クラスＢのバッファ１５が保持していたパケットを廃棄する。クラスＢのバッファ１５は、パケットを廃棄すると、次からのパケットをクラスＢのバッファ１４へ転送するようにする。【選択図】      図１
2008148170.tif 000002
【特許請求の範囲】
【請求項１】
ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）の手法の一つであるＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）を用いて流量制御を実現している流量制御装置であって、
下位のクラスのバッファにパケットが長期滞在することを避けるために前記下位のクラスに対して複数のバッファを設け、前記複数のバッファにて新しく到着したパケットがバッファに入りきれずに破棄されるテイルドロップを防ぐことを特徴とする流量制御装置。
【請求項２】
前記複数のバッファにおいて長期に滞在しているパケットを廃棄し、前記テイルドロップを防ぐことことを特徴とする請求項１記載の流量制御装置。
【請求項３】
優先度が低い下位のクラスほどバッファを多く分割することを特徴とする請求項１または請求項２記載の流量制御装置。
【請求項４】
上位のクラスのバッファ及び前記下位のクラスの複数のバッファ各々に前記パケットを分岐する分岐手段と、上位のクラスのバッファ及び前記下位のクラスの複数のバッファ各々から入力されるパケットを外部に送出する集約手段とを含むことを特徴とする請求項１から請求項３のいずれか記載の流量制御装置。
【請求項５】
ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）の手法の一つであるＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）を用いて流量制御を実現している流量制御装置に用いる長期滞在パケット廃棄方法であって、
下位のクラスのバッファにパケットが長期滞在することを避けるために前記下位のクラスに設けた複数のバッファを用いて、新しく到着したパケットがバッファに入りきれずに破棄されるテイルドロップを防ぐことを特徴とする長期滞在パケット廃棄方法。
【請求項６】
前記複数のバッファにおいて長期に滞在しているパケットを廃棄し、前記テイルドロップを防ぐことことを特徴とする請求項５記載の長期滞在パケット廃棄方法。
【請求項７】
優先度が低い下位のクラスほどバッファを多く分割することを特徴とする請求項５または請求項６記載の長期滞在パケット廃棄方法。
【請求項８】
前記流量制御装置が、上位のクラスのバッファ及び前記下位のクラスの複数のバッファ各々に前記パケットを分岐する処理と、上位のクラスのバッファ及び前記下位のクラスの複数のバッファ各々から入力されるパケットを外部に送出する処理とを実行することを特徴とする請求項５から請求項７のいずれか記載の長期滞在パケット廃棄方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は流量制御装置及びそれに用いる長期滞在パケット廃棄方法に関し、特にＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）を用いて流量制御を実現している装置に関する。
【背景技術】
【０００２】
従来、上記のＤｉｆｆＳｅｒｖを用いて流量制御を実現している装置（以下、流量制御装置とする）は、図６に示すように、分岐部５１と、集約部５２と、クラスＡ（Ｃｌａｓｓ−Ａ）のバッファ５３と、クラスＢ（Ｃｌａｓｓ−Ｂ）のバッファ５４と、クラスＣ（Ｃｌａｓｓ−Ｃ）のバッファ５５と、・・・、クラスＺ（Ｃｌａｓｓ−Ｚ）のバッファ５６とから構成される流量制御装置５がある。尚、ＤｉｆｆＳｅｒｖはＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）の手法の一つである。
【０００３】
分岐部５１は、転送されてきたパケットに対してクラス分けを行い、そのクラス分けによって決まったクラスのバッファにパケットを転送する。集約部５２は、クラスの優先順位に応じてクラス毎のバッファからパケットを転送する。
【０００４】
クラスＡのバッファ５３は、分岐部５１においてクラスＡとしてクラス分けされて転送されてきたパケットを保持する。クラスＢのバッファ５４は、分岐部５１においてクラスＢとしてクラス分けされて転送されてきたパケットを保持する。
【０００５】
クラスＣのバッファ５５は、分岐部５１においてクラスＣとしてクラス分けされて転送されてきたパケットを保持する。それ以降、クラスＤ、クラスＥと続き、クラスＺのバッファ５６は分岐部５１においてクラスＺとしてクラス分けされて転送されてきたパケットを保持する。
【０００６】
上記のように、パケットバッファをクラス毎に設け、パケットデータをそれらのパケットバッファに一時的に保持する方法としては、以下の特許文献１に記載された技術がある。
【特許文献１】特開２００２−２３７８４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来のＤｉｆｆＳｅｒｖを用いたＱｏＳでは、輻輳が発生することがあるため、新しく到着したパケットがバッファに入りきれずに破棄されるというテイルドロップを防ぐことができないという問題がある。
【０００８】
テイルドロップでは、バッファが容量の１００％に達してリソースを完全に使い果たされるまで、ホストシステムは輻輳を認識しないため、長期間に渡ってバッファが満杯またはほぼ満杯に近い状態で維持されることがあるという問題がある。
【０００９】
従来の手法では、複数のクラスを使用して帯域制限を行っている場合、上位のクラスのパケットの流通が優先されるために、下位のクラスのパケットが滞留するようになる。パケットが長期間装置に滞留し続けた後、帯域に空きが発生して滞留していたパケットを送信しても、送信先ホストが既にパケットを未達とみなして次処理を行っていた場合、受信したパケットは廃棄されて使用されない。
【００１０】
このような長期滞在パケットが送信先ホストで破棄されるだけであるなら、ネットワーク帯域を圧迫するので、流量制御を実現している装置側で破棄すべきであるが、従来の手法では長期滞留したパケットを有効に破棄する方法がない。
【００１１】
そこで、本発明の目的は上記の問題点を解消し、容易にある基準にしたがってパケットの廃棄を行うことができる流量制御装置及びそれに用いる長期滞在パケット廃棄方法を提供することにある。
【課題を解決するための手段】
【００１２】
本発明による流量制御装置は、ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）の手法の一つであるＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）を用いて流量制御を実現している流量制御装置であって、
下位のクラスのバッファにパケットが長期滞在することを避けるために前記下位のクラスに対して複数のバッファを設け、前記複数のバッファにて新しく到着したパケットがバッファに入りきれずに破棄されるテイルドロップを防いでいる。
【００１３】
本発明による長期滞在パケット廃棄方法は、ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）の手法の一つであるＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）を用いて流量制御を実現している流量制御装置に用いる長期滞在パケット廃棄方法であって、
下位のクラスのバッファにパケットが長期滞在することを避けるために前記下位のクラスに設けた複数のバッファを用いて、新しく到着したパケットがバッファに入りきれずに破棄されるテイルドロップを防いでいる。
【００１４】
すなわち、本発明の流量制御を実現している装置（以下、流量制御装置とする）は、ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）の手法の一つであるＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）を用いて流量制御を実現している装置において、下位のクラスのバッファにパケットが長期滞在することを避けるために、下位クラスに対して複数のバッファを用意することで、新しく到着したパケットがバッファに入りきれずに破棄されること（テイルドロップ）を防ぐようにしたことを特徴としている。
【００１５】
本発明の流量制御装置では、下位のクラスに対して複数のバッファを用意することで、長期に滞在しているパケットを廃棄し、テイルドロップを防ぐことが可能となる。
【００１６】
本発明の流量制御装置では、クラスＢのバッファを２つに分割しているので、廃棄を容易に行うことが可能となる。また、本発明の流量制御装置では、クラスＣ以下のバッファを、優先度が低いクラスであればあるほどバッファを多く分割しているので、テイルドロップが発生しやすい優先度の低いクラスでは一度に大量のパケットを廃棄せずにすむ。
【００１７】
つまり、本発明の流量制御装置では、一つのクラスにおいて複数のバッファを用意することで、容易にある基準にしたがってパケットの廃棄を行うことが可能となる。
【発明の効果】
【００１８】
本発明は、上記のような構成及び動作とすることで、容易にある基準にしたがってパケットの廃棄を行うことができるという効果が得られる。
【発明を実施するための最良の形態】
【００１９】
次に、本発明の実施例について図面を参照して説明する。
【実施例１】
【００２０】
図１は本発明の一実施例による流量制御を実現している装置（以下、流量制御装置とする）の構成を示すブロック図である。図１において、流量制御装置１は、ＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）を用いて流量制御を実現している装置であり、分岐部１１と、集約部１２と、クラスＡのバッファ（Ｃｌａｓｓ−Ａ）１３と、クラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）１４及びバッファ（Ｃｌａｓｓ−Ｂ２）１５と、クラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃ１以下）１６及びバッファ（Ｃｌａｓｓ−Ｃ２以下）１７とから構成されている。
【００２１】
分岐部１１は、転送されてきたパケットに対してクラス分けを行い、そのクラス分けによって決まったクラスのバッファに転送する。集約部１２は、クラスの優先順位に応じてクラス毎のバッファからパケットを転送する。
【００２２】
クラスＡのバッファ（Ｃｌａｓｓ−Ａ）１３は、分岐部１１においてクラスＡとしてクラス分けされ転送されてきたパケットを保持する。バッファ（Ｃｌａｓｓ−Ｂ１）１４及びバッファ（Ｃｌａｓｓ−Ｂ２）１５は、分岐部１１においてクラスＢとしてクラス分けされて転送されてきたパケットを保持する。バッファ（Ｃｌａｓｓ−Ｃ１以下）１６及びバッファ（Ｃｌａｓｓ−Ｃ２以下）１７は、分岐部１１においてクラスＣ以下としてクラス分けされて転送されてきたパケットを保持する。
【００２３】
図２は図１に示す流量制御装置１の動作を示すフローチャートである。これら図１及び図２を参照して本発明の一実施例による流量制御装置１の長期滞在パケットの廃棄動作について説明する。尚、図２に示す処理は流量制御装置１の図示せぬＣＰＵ（中央処理装置）がプログラムを実行して各部を制御することでも実現可能である。
【００２４】
流量制御装置１は最初に経路の初期値を設定する（図２ステップＳ１）。この場合、分岐部１１ではクラス分け後のパケットをどのバッファに転送するかを決定する。初期経路では、分岐部１１が、クラスＡのパケットであればクラスＡのバッファ（Ｃｌａｓｓ−Ａ）１３へ、クラスＢのパケットであればクラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）１４へ、クラスＣ以下のパケットであればクラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃ１以下）１６へそれぞれ転送する。
【００２５】
集約部１２ではクラス毎にどのバッファからパケットを受取るかを決定する。初期経路では、集約部１２が、クラスＡのパケットであればクラスＡのバッファ（Ｃｌａｓｓ−Ａ）１３から、クラスＢのパケットであればクラスＢのバッファ（Ｃｌａｓｓ−Ｂ２）１５から、クラスＣ以下のパケットであればクラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃ２以下）１７からパケットを受取る。
【００２６】
その後に、流量制御装置１では、クラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）１４からバッファ（Ｃｌａｓｓ−Ｂ２）１５へのパケットの転送、クラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃ１以下）１６からバッファ（Ｃｌａｓｓ−Ｃ２以下）１７へのパケットの転送をそれぞれ許可し、初期経路を決定する。
【００２７】
流量制御装置１では、次の処理（ステップＳ３）に移行する前に一定時間が経過するのを待つ（ｔ時間待機）（図２ステップＳ２）。この場合、分岐部１１はパケットが転送されてくると、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ヘッダ内のＩＰ  Ｐｒｅｃｅｄｅｎｃｅ、ＤＳＣＰ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ  Ｃｏｄｅ  Ｐｏｉｎｔ）及びＩＥＥＥ（Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃ  Ｅｎｇｉｎｅｅｒｓ）８０２．１ＱタグのＣｏＳ（Ｃｌａｓｓ  ｏｆ  Ｓｅｒｖｉｃｅ）等を使用してパケット毎の優先度を定義し、クラス毎のバッファに転送する処理を行う。
【００２８】
流量制御装置１は、バッファの保持するパケット量がバッファの保持できるパケット量の８０％を超えていなければ（図２ステップＳ３）、ステップＳ２の待機処理に戻る。また、流量制御装置１は、バッファの保持するパケット量がバッファの保持できるパケット量の８０％を超えていれば（図２ステップＳ３）、分岐部１１からパケットが送られていたクラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）１４から、集約部１２にパケットを転送するクラスＢのバッファ（Ｃｌａｓｓ−Ｂ２）１５への転送をやめ、クラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）１４から集約部１２にパケットを転送するようにする（図２ステップＳ４）。
【００２９】
ここで、バッファの保持するパケット量の閾値として８０％としているが、流量制御装置１のパケットの流量によって、上記のバッファの保持するパケット量の閾値を自由に変更してもよい。
【００３０】
流量制御装置１は、クラスＢのバッファ（Ｃｌａｓｓ−Ｂ２）１５から集約部１２へのパケットの転送をやめ、クラスＢのバッファ（Ｃｌａｓｓ−Ｂ２）１５が保持していたパケットを廃棄する（図２ステップＳ５）。クラスＢのバッファ（Ｃｌａｓｓ−Ｂ２）１５は、パケットを廃棄すると、次からのパケットをクラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）１４へ転送するようにする。
【００３１】
流量制御装置１は、最後に、分岐部１１がパケットをクラスＢのバッファ（Ｃｌａｓｓ−Ｂ２）１５へ転送するようにする（図２ステップＳ６）。つまり、流量制御装置１では、２つのバッファを１つのバッファとして利用し、そのバッファが一定量を超すと、先頭バッファの持つパケットを廃棄し、後尾のバッファの後ろに付くというバッファが前後を交代するというサイクルを繰り返す。尚、この動作はクラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃ１以下）１６及びバッファ（Ｃｌａｓｓ−Ｃ２以下）１７においても同様に行われる。
【００３２】
このように、本実施例では、クラスＢのバッファを２つに分割しているので、パケットの廃棄を容易に行うことができる。また、クラスＣ以下のバッファは優先度が低いクラスであればあるほどバッファを多く分割しているので、テイルドロップが発生しやすい優先度の低いクラスでは一度に大量のパケットを廃棄せずにすむようにできる。
【実施例２】
【００３３】
図３は本発明の他の実施例による流量制御装置の構成の特徴的な部分を示すブロック図である。図３において、本発明の他の実施例では、その基本的構成としては上記の本発明の一実施例と同様であるが、下位のクラスＣ以下のバッファについてさらに工夫している。
【００３４】
図３を参照すると、図１に示すクラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃ１以下）１６及びバッファ（Ｃｌａｓｓ−Ｃ２以下）１７に対して工夫した構成が示されている。
【００３５】
図３において、流量制御装置１は、図１のクラスＡのバッファの部分を省略し、クラスＣ以下のバッファについて工夫したＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）を用いて流量制御を実現している装置である。
【００３６】
本実施例による分岐部１１は、図１の分岐部１１においてクラスＢ以下としてクラス分けされ転送されてきたパケットに対してクラス分けを行い、そのクラス分けによって決まったクラスのバッファに転送する。集約部１２は、クラスの優先順位に応じてクラス毎のバッファからパケットを転送する。
【００３７】
クラスＢのバッファ（Ｃｌａｓｓ−Ｂ）２１は、分岐部１１においてクラスＢとしてクラス分けされて転送されてきたパケットを保持する。このクラスＢのバッファ（Ｃｌａｓｓ−Ｂ）２１は、図１におけるクラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）１４またはバッファ（Ｃｌａｓｓ−Ｂ１）１５を示している。
【００３８】
クラスＣのバッファ（Ｃｌａｓｓ−Ｃ１）２２及びバッファ（Ｃｌａｓｓ−Ｃ２）２３は、分岐部１１においてクラスＣとしてクラス分けされて転送されてきたパケットを保持する。クラスＤ以下のバッファ（Ｃｌａｓｓ−Ｄ１以下）２４及びバッファ（Ｃｌａｓｓ−Ｄ２以下）２５は、分岐部１１においてクラスＤ以下としてクラス分けされて転送されてきたパケットを保持する。
【００３９】
図３においては、クラスＤ以下のバッファを図１に示すクラスＣ以下のバッファと同様な構造としている。以下同様に、図示せぬ下位のクラスＥ，Ｆ，…についても、上記と同様の構成をとることができる。
【実施例３】
【００４０】
図４及び図５は本発明の別の実施例による流量制御装置の構成の特徴的な部分を示すブロック図である。図４及び図５において、本発明の他の実施例では、その基本的構成としては上記の本発明の一実施例と同様であるが、バッファの数についてさらに工夫している。図４において、流量制御装置３は、図１のクラスＢの部分を細分化したＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）を用いて流量制御を実現している装置である。図５において、流量制御装置４は、図１のクラスＡの部分を省略したＤｉｆｆＳｅｒｖ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅ）を用いて流量制御を実現している装置である。
【００４１】
図４及び図５において、分岐部１１は転送されてきたパケットに対してクラス分けを行い、そのクラス分けによって決まったクラスのバッファに転送し、集約部１２はクラスの優先順位に応じてクラス毎のバッファからパケットを転送する。
【００４２】
図４において、クラスＡのバッファ（Ｃｌａｓｓ−Ａ）１３は、分岐部１１においてクラスＡとしてクラス分けされ転送されてきたパケットを保持する。クラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）３１、バッファ（Ｃｌａｓｓ−Ｂ１）３２、・・・、バッファ（Ｃｌａｓｓ−Ｂｎ）３３、バッファ（Ｃｌａｓｓ−Ｂｍ）３４は、分岐部１１においてクラスＢとしてクラス分けされて転送されてきたパケットを保持する。
【００４３】
図４において、クラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃ１以下）３５、バッファ（Ｃｌａｓｓ−Ｃ２以下）３６、バッファ（Ｃｌａｓｓ−Ｃｎ以下）３７、バッファ（Ｃｌａｓｓ−Ｃｍ以下）３８は、分岐部１１においてクラスＣ以下としてクラス分けされて転送されてきたパケットを保持する。
【００４４】
上記の構成と同様に、クラスＣ，Ｄ，Ｅ，…についても、バッファの数についてさらに工夫した構成をとることができる。
【００４５】
図５において、分岐部１１は、図４の分岐部１１においてクラスＢ以下としてクラス分けされ、転送されてきたパケットに対してクラス分けを行い、そのクラス分けによって決まったクラスのバッファに転送する。集約部１２は、クラスの優先順位に応じてクラス毎のバッファからパケットを転送する。
【００４６】
図５において、クラスＢのバッファ（Ｃｌａｓｓ−Ｂ）４１は、分岐部１１においてクラスＢとしてクラス分けされて転送されてきたパケットを保持する。このクラスＢのバッファ（Ｃｌａｓｓ−Ｂ）４１は、図４でのクラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）３１、バッファ（Ｃｌａｓｓ−Ｂ２）３２、バッファ（Ｃｌａｓｓ−Ｂｎ）３３、バッファ（Ｃｌａｓｓ−Ｂｍ）３４のことである。
【００４７】
クラスＣのバッファ（Ｃｌａｓｓ−Ｃ１）４２、バッファ（Ｃｌａｓｓ−Ｃ２）４３、バッファ（Ｃｌａｓｓ−Ｃｎ）４４、バッファ（Ｃｌａｓｓ−Ｃｍ）４５は、分岐部１１においてクラスＣとしてクラス分けされて転送されてきたパケットを保持する。
【００４８】
クラスＤ以下のバッファ（Ｃｌａｓｓ−Ｄ１以下）４６、バッファ（Ｃｌａｓｓ−Ｄ２以下）４７、バッファ（Ｃｌａｓｓ−Ｄｎ以下）４８、バッファ（Ｃｌａｓｓ−Ｄｍ以下）４９は、分岐部１１においてクラスＤ以下としてクラス分けされて転送されてきたパケットを保持する。
【００４９】
上記の構成と同様に、クラスＤ，Ｅ，…についても、バッファの数についてさらに工夫した構成をとることができる。
【００５０】
次に、図２に示す長期滞在パケットの廃棄動作と図４とを参照して本発明の別の実施例による流量制御装置３での長期滞在パケットの廃棄動作について説明する。
【００５１】
流量制御装置３は最初に経路の初期値を設定する（図２ステップＳ１）。この場合、分岐部１１ではクラス分け後のパケットをどのバッファに転送するかを決定する。集約部１２は、それぞれのクラスのどのバッファからパケットを受取るかを決定する。それぞれのバッファ間をパケットの転送を許可し、初期経路を決定する。
【００５２】
初期経路では、分岐部１１が、クラスＡのパケットであればクラスＡのバッファ（Ｃｌａｓｓ−Ａ）１３へ、クラスＢのパケットであればクラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）３１へ、クラスＣ以下のパケットであればクラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃ１以下）３５へそれぞれ転送する。
【００５３】
また、初期経路では、集約部１２が、クラスＡのパケットであればクラスＡのバッファ（Ｃｌａｓｓ−Ａ）１３から、クラスＢのパケットであればクラスＢのバッファ（Ｃｌａｓｓ−Ｂｍ）３４から、クラスＣ以下のパケットであればクラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃｍ以下）３８からパケットを受取る。
【００５４】
その後に、流量制御装置３では、クラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）３１、バッファ（Ｃｌａｓｓ−Ｂ２）３２、バッファ（Ｃｌａｓｓ−Ｂｎ）３３、バッファ（Ｃｌａｓｓ−Ｂｍ）３４それぞれの間、クラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃ１以下）３５、バッファ（Ｃｌａｓｓ−Ｃ２以下）３６、バッファ（Ｃｌａｓｓ−Ｃｎ以下）３７、バッファ（Ｃｌａｓｓ−Ｃｍ以下）３８それぞれの間のパケットの転送を許可し、初期経路を決定する。
【００５５】
流量制御装置３では、次の処理（ステップＳ３）に移行する前に一定時間が経過するのを待つ（ｔ時間待機）（図２ステップＳ２）。この場合、分岐部１１はパケットが転送されてくると、ＩＰヘッダ内のＩＰ  Ｐｒｅｃｅｄｅｎｃｅ、ＤＳＣＰ及びＩＥＥＥ８０２．１ＱタグのＣｏＳ等を使用してパケット毎の優先度を定義し、クラス毎のバッファに転送する処理を行う。
【００５６】
流量制御装置３は、バッファの保持するパケット量がバッファの保持できるパケット量の８０％を超えていなければ（図２ステップＳ３）、ステップＳ２の待機処理に戻る。また、流量制御装置２は、バッファの保持するパケット量がバッファの保持できるパケット量の８０％を超えていれば（図２ステップＳ３）、クラスＢのバッファ（Ｃｌａｓｓ−Ｂｍ）３４にパケットを転送しかつクラスＢのバッファ（Ｃｌａｓｓ−Ｂｍ）３４の一つ前のバッファ（Ｃｌａｓｓ−Ｂｍ−１）は、集約部１２にパケットを転送するクラスＢのバッファ（Ｃｌａｓｓ−Ｂｍ）３４への転送をやめ、集約部１２にパケットを転送するようにする（図２ステップＳ４）。
【００５７】
ここで、バッファの保持するパケット量の閾値として８０％としているが、流量制御装置３のパケットの流量によって、上記のバッファの保持するパケット量の閾値を自由に変更してもよい。
【００５８】
流量制御装置３は、クラスＢのバッファ（Ｃｌａｓｓ−Ｂｍ）３４から集約部１２へのパケットの転送をやめ、クラスＢのバッファ（Ｃｌａｓｓ−Ｂｍ）３４が保持していたパケットを廃棄する（図２ステップＳ５）。クラスＢのバッファ（Ｃｌａｓｓ−Ｂｍ）３４は、パケットを廃棄すると、次からのパケットをクラスＢのバッファ（Ｃｌａｓｓ−Ｂ１）３１へ転送するようにする。
【００５９】
流量制御装置３は、最後に、分岐部１１がパケットをクラスＢのバッファ（Ｃｌａｓｓ−Ｂｍ）３４へ転送するようにする（図２ステップＳ６）。つまり、流量制御装置３では、ｍ個のバッファを１つのバッファとして利用し、そのバッファが一定量を超すと、先頭バッファの持つパケットを廃棄し、後尾のバッファの後ろに付くというバッファの交代のサイクルを繰り返す。尚、この動作はクラスＣ以下のバッファ（Ｃｌａｓｓ−Ｃ１以下）３５、バッファ（Ｃｌａｓｓ−Ｃ２以下）３６、バッファ（Ｃｌａｓｓ−Ｃｎ以下）３７、バッファ（Ｃｌａｓｓ−Ｃｍ以下）３８においても、また図５に示す構成においても、上記と同様に行われる。
【００６０】
このように、本実施例では、一つのクラスがもつバッファの数を増やしているので、一度に廃棄するパケットの量を調節することができるという効果が得られる。
【図面の簡単な説明】
【００６１】
【図１】本発明の一実施例による流量制御を実現している装置の構成を示すブロック図である。
【図２】図１に示す流量制御装置１の動作を示すフローチャートである。
【図３】本発明の他の実施例による流量制御装置の構成の特徴的な部分を示すブロック図である。
【図４】本発明の別の実施例による流量制御装置の構成の特徴的な部分を示すブロック図である。
【図５】本発明の別の実施例による流量制御装置の構成の特徴的な部分を示すブロック図である。
【図６】従来のＤｉｆｆＳｅｒｖを用いて流量制御を実現している装置の構成を示すブロック図である。
【符号の説明】
【００６２】
１〜４  流量制御装置
１１  分岐部
１２  集約部
１３  バッファ（Ｃｌａｓｓ−Ａ）
１４，３１  バッファ（Ｃｌａｓｓ−Ｂ１）
１５，３２  バッファ（Ｃｌａｓｓ−Ｂ２）
１６，３５  バッファ（Ｃｌａｓｓ−Ｃ１以下）
１７，３６  バッファ（Ｃｌａｓｓ−Ｃ２以下）
２１，４１  バッファ（Ｃｌａｓｓ−Ｂ）
２２，４２  バッファ（Ｃｌａｓｓ−Ｃ１）
２３，４３  バッファ（Ｃｌａｓｓ−Ｃ２）
２４，４６  バッファ（Ｃｌａｓｓ−Ｄ１以下）
２５，４７  バッファ（Ｃｌａｓｓ−Ｄ２以下）
３３  バッファ（Ｃｌａｓｓ−Ｂｎ）
３４  バッファ（Ｃｌａｓｓ−Ｂｍ）
３７  バッファ（Ｃｌａｓｓ−Ｃｎ以下）
３８  バッファ（Ｃｌａｓｓ−Ｃｍ以下）
４４  バッファ（Ｃｌａｓｓ−Ｃｎ）
４５  バッファ（Ｃｌａｓｓ−Ｃｍ）
１１  ４８  バッファ（Ｃｌａｓｓ−Ｄｎ以下）
４９  バッファ（Ｃｌａｓｓ−Ｄｍ以下）
【図１】
2008148170.tif 000003
【図２】
2008148170.tif 000004
【図３】
2008148170.tif 000005
【図４】
2008148170.tif 000006
【図５】
2008148170.tif 000007
【図６】
2008148170.tif 000008