(57)【要約】【課題】  送信元の優先度を反映させつつ優先度のインフレーションを防ぐことが可能な帯域制御技術を提供する。【解決手段】  ネットワーク装置を用いて、予め付与された優先度を有するフレームのトラフィックを制御する。一乃至複数の優先度からなるグループ、グループ毎に定められたしきい値、及び、グループに属する優先度を有するフレームの流量の合計を示すカウンタ値を含む仮想キュー情報を、予め格納した記憶装置から読み出す。帯域制御処理の内容を判定すべきフレームに付与された優先度が属するグループのカウンタ値と、当該グループに定められたしきい値とを比較する。比較結果に応じて、帯域制御処理の内容を判定し、判定結果に応じて、記憶装置に格納されている仮想キュー情報を変更する。【選択図】    図２
2006339790.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク装置を用いて、予め付与された優先度を有するフレームのトラフィックを制御する帯域制御方法において、
一乃至複数の優先度からなるグループ、前記グループ毎に定められたしきい値、及び、前記グループに属する優先度を有するフレームの流量の合計を示すカウンタ値を含む仮想キュー情報を、予め格納した記憶装置から読み出す段階と、
帯域制御処理の内容を判定すべきフレームに付与された優先度が属する前記グループの前記カウンタ値と、当該グループに定められたしきい値とを比較する段階と、
前記比較結果に応じて、前記帯域制御処理の内容を判定する段階と、
前記判定結果に応じて、前記記憶装置に格納されている前記仮想キュー情報を変更する段階と
を含むことを特徴とする帯域制御方法。
【請求項２】
請求項１に記載の帯域制御方法において、
前記ネットワーク装置は、識別情報で示される複数のユーザを収容し、
前記記憶装置は、前記識別情報毎に前記仮想キュー情報を格納し、
前記仮想キュー情報は、前記フレームの前記識別情報に応じて読み出される
ことを特徴とする帯域制御方法。
【請求項３】
請求項１に記載の帯域制御方法において、一の優先度が複数の前記グループに属することを特徴とする帯域制御方法。
【請求項４】
請求項１に記載の帯域制御方法において、前記帯域制御処理の内容は、当該フレームの透過に加えて、当該フレームの廃棄、及び、当該フレームに付与された優先度の変更の少なくとも一方から選択されることを特徴とする帯域制御方法。
【請求項５】
予め付与された優先度を有するフレームのトラフィックを制御する帯域制御処理をコンピュータに実行させるコンピュータプログラムにおいて、
一乃至複数の優先度からなるグループ、前記グループ毎に定められたしきい値、及び、前記グループに属する優先度を有するフレームの流量の合計を示すカウンタ値を含む仮想キュー情報を、予め格納した記憶装置から読み出す処理と、
帯域制御処理の内容を判定すべきフレームに付与された優先度が属する前記グループの前記カウンタ値と、当該グループに定められたしきい値とを比較する処理と、
前記比較結果に応じて、前記帯域制御処理の内容を判定する処理と
前記判定結果に応じて、前記記憶装置に格納されている前記仮想キュー情報を変更する処理と
をコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項６】
請求項５に記載のコンピュータプログラムにおいて、
前記ネットワーク装置は識別情報で示される複数のユーザを収容し、
前記記憶装置は前記識別情報毎に前記仮想キュー情報を格納し、
前記フレームの前記識別情報に応じて前記仮想キュー情報を読み出す
ことを特徴とするコンピュータプログラム。
【請求項７】
請求項５に記載のコンピュータプログラムにおいて、一の優先度が複数の前記グループに属することを特徴とするコンピュータプログラム。
【請求項８】
請求項５に記載のコンピュータプログラムにおいて、前記帯域制御処理の内容は、当該フレームの透過に加えて、当該フレームの廃棄、及び、当該フレームに付与された優先度の変更の少なくとも一方から選択されることを特徴とするコンピュータプログラム。
【請求項９】
予め付与された優先度を有するフレームのトラフィックを制御するネットワーク装置において、
一乃至複数の優先度からなるグループ、前記グループ毎に定められたしきい値、及び、前記グループに属する優先度を有するフレームの流量の合計を示すカウンタ値を含む仮想キュー情報を格納する手段と、
帯域制御処理の内容を判定すべきフレームに付与された優先度が属する前記グループの前記カウンタ値と、当該グループに定められたしきい値とを比較する手段と、
前記比較結果に応じて、前記帯域制御処理の内容を判定する手段と、
前記判定結果に応じて、前記記憶装置に格納されている前記仮想キュー情報を変更する手段と
を備えることを特徴とするネットワーク装置。
【請求項１０】
請求項９に記載のネットワーク装置において、
前記ネットワーク装置は、識別情報で示される複数のユーザを収容し、
前記記憶装置は、前記識別情報毎に前記仮想キュー情報を格納し、
前記フレームの前記識別情報に応じて前記仮想キュー情報を読み出す
ことを特徴とするネットワーク装置。
【請求項１１】
請求項９に記載のネットワーク装置において、一の優先度が複数の前記グループに属することを特徴とするネットワーク装置。
【請求項１２】
請求項９に記載のネットワーク装置において、当該フレームの透過に加えて、当該フレームの廃棄、及び、当該フレームに付与された優先度の変更の少なくとも一方から、前記帯域制御処理の内容を選択することを特徴とするネットワーク装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は特に高品質ネットワークにて要求されるＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）に関し、特に、優先度の高いフレームを優先度の低いフレームに優先して転送する優先制御に関する。
【背景技術】
【０００２】
高品質ネットワークサービスには、優先転送、低遅延転送、最大帯域制限、最低帯域保証など、ＱｏＳが要求される。これらの制御を行う場合、ユーザ毎にＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）の識別タグを付与し、ＶＬＡＮ単位での制御を行うことが一般的になっている。具体的には例えば次の（１）〜（３）のような技術が用いられている。
【０００３】
（１）ユーザ回線入力側でユーザ毎の最大帯域を制限する。
【０００４】
一般に、ＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）サービスでは、各ユーザに対し、利用可能な最大帯域が割り当てられる。最大帯域の制限内であれば、送出するフレームに対して、ユーザは自由に優先度を設定することができる。
【０００５】
（２）集約回線出力側でユーザ間の出力公平制御を行う。
【０００６】
限られた物理帯域に複数ユーザを収容するため、集約回線では帯域の公平な分配が求められる。公平な分配とは、あるユーザを１つのＶＬＡＮに収容し、そのフレームの優先度が全て通常「０」であり、他のユーザを１つのＶＬＡＮに収容し、そのフレームの優先度が全て最高優先度「７」であった場合でも、この２つのユーザに与えられる帯域は同じであることが必要となる。このユーザ間の公平制御には、フレームの合計量（バイト長）を使用した制御を行うことになる。
【０００７】
このとき、輻輳した出力側ポートにおいては、公平に割り当てられた少ない帯域を、ユーザの指定した高優先度のフレームが占有する可能性がある。この帯域を占有する現象はより上位のバックボーンネットワークにおいても問題となる。何故なら、高優先フレームだけのフラットなトラフィックがネットワークを占有するため、上位バックボーンネットワークにおいて優先転送が機能しなくからである。
【０００８】
これに対処する技術として、入力帯域制限との連携をはかり、公平制御の優先度判断に入力側の優先度毎の帯域制限結果を適用するものがある。具体的には、入力で高優先フレームでありながら制限対象となったフレームの優先度を低下させて、通常優先度のフレームよりも低い優先度にマークする。そして、出力側公平制御の際には、余剰帯域があるときのみ、敗者復活的な帯域割り当ての機会をマークした高優先フレームに与え、透過を許可するものである。
【０００９】
（３）ユーザ回線出力側でのユーザ毎の最大帯域を制限する。
【００１０】
通常であれば、ネットワーク側からユーザ回線に流入するフレームは全てユーザに対し転送されるところ、ユーザ毎に最大帯域を設定し、最大帯域を越えるトラフィックを制限する。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
これら（１）〜（３）はいずれも優先転送を前提としている。優先転送とは、より高い優先度を持つフレームをより優先して透過させる技術であり、優先転送が設定されたネットワークでは、送信側（ユーザ）は優先度を自由に設定してデータを伝送することができるが、従来の優先転送では、優先度のインフレーション問題が発生するという問題がある。
【００１２】
通常の優先制御には、絶対優先度モデルと呼ばれる、高優先のフレームから順次出力していく手法がとられる。このため、ユーザが意図的に自分のトラフィックの優先度を高く設定することで、優先転送ネットワークのあらゆる局面で、自分のトラフィックを優先させることができる。つまり、あるユーザが送信する全フレームの優先度を高優先として送信した場合、他のユーザに対して有利に働くことになる。多数のユーザがこの手法をとれば、優先度のインフレーションが発生する。
【００１３】
優先度のインフレーションを防止するための従来の技術としては、送信側で設定した優先度を信頼せずに一意な優先度として扱うことで、インフレーションを無効にするものがある。しかし、この技術によれば、結果的には優先転送をしないフラットなネットワークと同じであり、高品質ネットワークサービスの実現は難しい。
【００１４】
また、他の従来技術としては、送信側の示す優先度は使用せず、代わりに、フレームの種類（プロトコルやアプリケーションの種類）毎に、ネットワーク側で優先度を決定し、優先転送を行うものがある。この技術によれば、音声などの優先トラフィックを確実に識別し、他のデータトラフィックと区別することが可能であり、優先転送を実現することができる。
【００１５】
しかし、この技術によれば、ユーザ収容時に全てのユーザを同一基準で優先決定するため、ユーザ毎の事情を考慮することができない。同一ユーザ下の同一種類のトラフィックであっても、送信元の端末の種類によって異なる優先度を付与したい場合がある。例えば、役員用、緊急用、勘定系などの遅滞が望ましくないフレームを生成する端末と、その他一般の端末が同一ユーザ配下にある場合に、前者端末から送信するフレームに対し、後者端末から送信するフレームよりも高い優先度を付与したいという要望があるが、こうした要望に応じることが出来ない。つまり、優先順序の選定基準がネットワーク側にあってユーザ側にないので、ユーザ側に運用上の柔軟性を与えることができない。
【００１６】
このような状況に鑑み、本発明が解決しようとする課題は、送信元の優先度を反映させつつ優先度のインフレーションを防ぐことが可能な帯域制御技術を提供することである。
【００１７】
また、本発明が解決しようとする他の課題は、入力側及び出力側のどちらの帯域制限にも適用可能な技術を提供することである。
【００１８】
更に、本発明が解決しようとする他の課題は、ＶＬＡＮ識別子等の識別情報に応じて異なる帯域制御方針を同一のネットワーク装置を用いて適用することが可能な技術を提供することである。
【課題を解決するための手段】
【００１９】
上述の課題を解決するため、本発明は、ネットワーク装置を用いて、予め付与された優先度を有するフレームのトラフィックを制御する帯域制御方法において、一乃至複数の優先度（担当優先度）からなるグループ、グループ毎に定められたしきい値、及び、グループに属する優先度を有するフレームの流量の合計を示すカウンタ値（キュー長）を含む仮想キュー情報を、予め格納した記憶装置から読み出す段階と、帯域制御処理の内容を判定すべきフレームに付与された優先度が属するグループのカウンタ値と、当該グループに定められたしきい値とを比較する段階と、比較結果に応じて、帯域制御処理の内容を判定する段階と、判定結果に応じて、記憶装置に格納されている仮想キュー情報を変更する段階とを含むことを特徴とする帯域制御方法を提供する。
【００２０】
ネットワーク装置は、識別情報で示される複数のユーザを収容することとしてもよい。この場合、記憶装置は、識別情報毎に仮想キュー情報を格納し、仮想キュー情報は、フレームの識別情報に応じて読み出される。
【００２１】
一の優先度が複数のグループに属することとしてもよい。このようにすることにより、より複雑な帯域制御を行うことが可能となる。
【００２２】
帯域制御処理の内容は、当該フレームの透過に加えて、当該フレームの廃棄、及び、当該フレームに付与された優先度の変更の少なくとも一方から選択されることが考えられる。即ち、フレームの透過又は廃棄から選択されてもよいし、或いは、フレームの透過、廃棄又は優先度の変更から選択されてもよい。
【００２３】
また、本発明は、予め付与された優先度を有するフレームのトラフィックを制御する帯域制御処理をコンピュータに実行させるコンピュータプログラムにおいて、一乃至複数の優先度からなるグループ、グループ毎に定められたしきい値、及び、グループに属する優先度を有するフレームの流量の合計を示すカウンタ値を含む仮想キュー情報を、予め格納した記憶装置から読み出す処理と、帯域制御処理の内容を判定すべきフレームに付与された優先度が属するグループのカウンタ値と、当該グループに定められたしきい値とを比較する処理と、比較結果に応じて、帯域制御処理の内容を判定する処理と、判定結果に応じて、記憶装置に格納されている仮想キュー情報を変更する処理とをコンピュータに実行させることを特徴とするコンピュータプログラムを提供する。
【００２４】
更に、本発明は、予め付与された優先度を有するフレームのトラフィックを制御するネットワーク装置において、一乃至複数の優先度からなるグループ、グループ毎に定められたしきい値、及び、グループに属する優先度を有するフレームの流量の合計を示すカウンタ値（キュー長）を含む仮想キュー情報を格納する手段と、帯域制御処理の内容を判定すべきフレームに付与された優先度が属するグループのカウンタ値と、当該グループに定められたしきい値とを比較する手段と、比較結果に応じて、帯域制御処理の内容を判定する手段と、判定結果に応じて、記憶装置に格納されている仮想キュー情報を変更する手段とを備えることを特徴とするネットワーク装置を提供する。
【発明の効果】
【００２５】
本発明によれば、優先度毎に、或いは、複数の優先度からなる優先度の組毎に、異なる条件で帯域制御を行うので、送信元の優先度を反映させつつ、帯域制御を行うことができる。また、入力側及び出力側のどちらの帯域制限にも適用可能な技術を提供することが出来る。また、同一のネットワーク装置にて、異なる識別情報が付与された複数のユーザに対し、異なる帯域制御方針を適用することが出来る。
【発明を実施するための最良の形態】
【００２６】
本発明の実施の形態であるネットワーク装置１について説明する。図1を参照すると、ネットワーク装置１は、任意の自然数Ｎ個のフロー識別部１０１、１０２、１０３、…、１０Ｎ、及び、入力帯域制御部２０１、２０２、２０３、…２０Ｎ、並びにＬ２ＳＷ部３００からなる。以下、フロー識別部１０１、１０２、１０３、…、１０Ｎについて説明するときは、フロー識別部１０１についての説明で代表することがある。入力帯域制御部２０１、２０２、２０３、…２０Ｎについても同様である。
【００２７】
ネットワーク装置１には、入力ポート１１、１２、１３、…、１Ｎからフレームが入力される。ここで入力されるフレームには、予め０〜７の８段階で表される優先度が付与されている。
【００２８】
フロー識別部１０１等は、入力ポート１１、１２、１３、…、１Ｎから入力されたフレームの優先制御情報を識別し、識別結果をそのフレームに付与する。入力帯域制御部２０１等は、フロー識別部１０１等が付与した優先制御情報に応じてフレームの透過、優先度低下及びフレーム廃棄のいずれかを行う。Ｌ２ＳＷ部３００はレイヤー２スイッチであり、入力帯域制御部２０１等から受け取ったフレームの転送先を決定する。
【００２９】
優先制御情報は識別情報、優先度、フレーム長を含む。ここで識別情報とは例えばＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）タグ識別子がある。優先度としては例えばＣｏＳ（ＩＥＥＥ８０２．１ｑ勧告の用語でＶＬＡＮタグに含まれる優先度情報）、ＴｏＳ（ＩＰｖ４ヘッダに含まれる優先度）、ＴｒａｆｆｉｃＣｌａｓｓ（ＩＰｖ６ヘッダに含まれる優先度）、ＤＳＣＰ（ＤｉｆｆＳｅｒｖ  Ｃｏｄｅ  Ｐｏｉｎｔ、ＲＦＣ２４７４）がある。
【００３０】
図２を参照して入力帯域制御部２０１について更に説明する。入力帯域制御部２０１は帯域制御情報抽出部２１０、待ち合わせＦＩＦＯ２２０、振り分け部２３０、仮想キュー情報保持回路２４０、仮想キュー２５０〜２５９、減算回路２６０、判定回路２７０、フレーム廃棄部２８０からなる。各部は例えばＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）により構成される。
【００３１】
帯域制御情報抽出部２１０は、入力フレームから優先制御情報の抽出を行い、フレームを伝送路６０に出力する。
【００３２】
待ち合わせＦＩＦＯ２２０は、伝送路６０からフレームを受信し、仮想キュー２５０〜２５９による判定完了までの間、待ち合わせる時間を調整する。
【００３３】
振り分け部２３０は、優先制御情報５０から、仮想キュー情報保持回路２４０に対しキュー情報の読み出しを行う。また、仮想キュー２５０〜２５９のいずれかを選択し、選択した優先キューに優先制御情報を出力する。
【００３４】
仮想キュー情報保持回路２４０は仮想キュー情報を保持する回路である。表１の仮想キュー情報は、識別情報Ｖ１、Ｖ２、Ｖ３に対応する３組の仮想キュー情報からなり、それぞれの仮想キュー情報は、更に、仮想キュー２５０〜２５９のそれぞれに関連付けられた担当優先度、キュー長、処理指定、しきい値を格納している。このうち仮想キュー識別子は仮想キュー２５０〜２５９のいずれかを指定する識別子である。担当優先度は関連付けられた仮想キューが判定を担当する優先度であり、１乃至複数の優先度が関連付けられる。キュー長は担当優先度の累積流量を示し、動作中に適宜更新される。しきい値はキュー長と比較される。処理指定は、しきい値を超えた場合の処理の指定であり、そのフレームの廃棄、またはそのフレームの優先度を下げることのいずれかである。
【表１】
2006339790.tif 000003
【００３５】
仮想キュー２５０〜２５９は、帯域制御の要否と処理内容を判定し、判定結果を後段の判定回路２７０に通知する。
【００３６】
判定回路２７０は、仮想キュー２５０〜２５９の判定結果を集約し、フレームの廃棄判定を行う。
【００３７】
減算回路２６０は単位時間を計測し、仮想キュー２５０〜２５９に格納されている仮想キュー情報中のキュー長に対して周期的に減算処理を行う。
【００３８】
フレーム帯域制御部２８０は、判定回路２７０からの制御動作指示９０に応じて、待ち合わせＦＩＦＯ２２０から受けたフレームに対して帯域制御処理を行う。具体的には、フレームの廃棄、フレームの優先度の変更を行う。
【００３９】
次に、ネットワーク装置１の動作について説明する。
【００４０】
今、フレームが入力ポート１１から入力したものとすると、フロー識別部１０１はフレームの優先制御情報を識別し、識別結果をそのフレームに付与して伝送路２１に出力する。
【００４１】
入力帯域制御部２０１では、優先制御情報を付与したフレームを伝送路２１から受け取ると、帯域制御情報抽出部２１０にて優先制御情報とフレームとに分割し、伝送路６０を介して待ち合わせＦＩＦＯ２２０にフレームを出力すると共に、振り分け部２３０に優先制御情報５０を出力する。
【００４２】
待ち合わせＦＩＦＯ２２０は、優先制御情報に基づく判定を行う間、フレームを保存する。
【００４３】
振り分け部２３０が優先制御情報５０から識別情報を取得し、仮想キュー情報保持回路２５０に通知する。これに応じて、仮想キュー情報保持回路２５０は、図３に示すように、その識別情報に対応する担当優先度、しきい値、処理指定、キュー長を、仮想キュー２５０〜２５９のそれぞれに出力する。例えば、優先制御情報５０から取得した識別情報がＶ１の場合、仮想キュー識別子２５０が示す仮想キュー２５０に対し、優先度＝７、しきい値＝２Ｍ、処理指定はフレームを廃棄と出力される。キュー長は累積流量を示すカウンタであり、表１では空欄になっているが実際には不特定の値が格納されている。また、振り分け部２３０は、仮想キュー２５０〜２５９に対し、優先制御情報５０中の優先度及びフレーム長を出力する。
【００４４】
仮想キュー情報保持回路２４０から仮想キュー情報を受け取ると共に、振り分け部２３０から優先度及びフレーム長を受け取ると、仮想キュー２５０〜２５９は、振り分け部２３０から受け取った優先度と担当優先度とを比較し、一致する場合は、更に、仮想キュー情報保持回路２４０から受け取ったキュー長としきい値とを比較する。キュー長がしきい値に達していない場合、仮想キュー２５０〜２５９は判定回路２７０に対してフレームしきい値未満を通知する。他方、キュー長がしきい値に達している場合、仮想キュー２５０〜２５９は判定回路２７０に対してフレームしきい値越えを通知すると共に、仮想キュー情報保持回路２４０から受け取った処理指定を判定回路２７０に通知する。
【００４５】
このように、仮想キュー２５０〜２５９から出力された判定結果８０〜８９に応じて、判定回路２７０はフレームに対する処理を判定する。判定結果８０〜８９の中にしきい値越えかつ廃棄指示の出力が1つ以上ある場合、判定回路２７０はフレーム廃棄を判定する。判定結果８０〜８９にフレーム廃棄指示が含まれておらず、かつ、優先度を下げる指示が１つ以上ある場合、判定回路２７０はフレームの優先度を下げる判定を行う。判定結果８０〜８９が全てしきい値未満である場合、フレーム透過を判定する。そして、判定回路２７０は判定結果を制御動作指示９０としてフレーム廃棄部２８０に出力する。
【００４６】
制御動作指示９０を受けたフレーム廃棄部２８０は、待ち合わせＦＩＦＯ２２０からフレームを読み出し、制御動作指示９０の内容に従って処理を行う。内容がフレーム廃棄である場合、フレーム廃棄部２８０はそのフレームを廃棄する。内容が優先度下げである場合、そのフレームの一部を書き換えることにより、フレームに付与された優先度を下げた後、伝送路３１に出力する。内容がフレーム透過である場合、フレームをそのまま伝送路３１に出力する。
【００４７】
伝送路３１から出力されたフレームはＬ２ＳＷ部３００に入力する。Ｌ２ＳＷ部３００ではフレームの転送先を決定し、出力ポート４１〜４Ｎに出力する前に、出力帯域制限を行う。Ｌ２ＳＷ部３００からの出力では輻輳が発生するため、Ｌ２ＳＷ部３００は優先転送処理を行う出力帯域制限回路を備えるが、本願ではその詳細については規定しない。
【００４８】
更に、判定回路２７０は、上述のように制御動作指示９０を出力する一方、制御動作指示９０の内容に応じて仮想キュー２５０〜２５９に対して加算指示を行う。制御動作指示９０がフレームの優先度下げである場合、判定回路２７０は、フレームの優先度下げの判定結果の送信元である仮想キュー（複数の場合はいずれか）に対し、加算指示を出力する。制御動作指示９０がフレームの透過である場合、判定回路２７０は、フレーム透過の判定結果の送信元である仮想キュー（複数の場合はいずれか）に対し、加算指示を出力する。制御動作指示９０がフレーム廃棄である場合は出力しない。
【００４９】
加算指示を受けた仮想キューは、振り分け部２３０から受け取ったフレーム長をキュー長に加算すると共に、加算後のキュー長を仮想キュー情報保持回路２４０に出力する。これを受けた仮想キュー情報保持回路２４０は、送信元仮想キューの仮想キュー識別子に関連付けられたキュー長を加算後の値に更新する。
【００５０】
減算回路２６０は、仮想キュー情報保持回路２４０に保持されているキュー長から、所定のバイト数を減算する処理を周期的に実行する。即ち、減算回路２６０は、周期的に減算処理を起動し、仮想キュー情報保持回路２４０に格納されている全てのキュー長を読み出し、読み出したキュー長から所定バイト数を減算し、減算後のキュー長で仮想キュー情報保持回路２４０の元のキュー長をそれぞれ更新する。この処理は現在処理中のフレームの識別情報に関係なく、全てのキュー長に対して行われる。例えば、識別情報Ｖ１を有するフレームの処理中であっても、識別情報Ｖ２及びＶ３のキュー長についても実行する。これにより、単位時間当たりのバイト数が仮想キューの現在のキュー長から減算され、時間当たりの透過可能バイト数が演算されることになる。
【００５１】
次に、ネットワーク装置１に識別情報Ｖ１、Ｖ２、Ｖ３を有するフレームが入力されたときの入力帯域制御部２０１の動作についてそれぞれ説明する。上述のように仮想キュー情報保持回路２４０には表１の仮想キュー情報が保持されている。
【００５２】
（１）識別情報＝Ｖ１のフレームの場合
今、識別情報＝Ｖ１、フレーム長＝６４バイト、優先度＝５のフレームが入力ポート１１から入力されたものとする。
【００５３】
フロー識別部１０１がフレームから識別情報、フレーム長、優先度を抽出し、優先制御情報としてフレームに添付する。次に、帯域制御情報抽出部２１０が優先制御情報を抽出し、抽出した優先制御情報を振り分け部２３０に通知する。次に、振り分け部２３０は優先制御情報のうち、識別情報＝Ｖ１を仮想キュー情報保持回路２４０に通知する一方、フレーム長＝６４バイト及び優先度＝５を仮想キュー２５０〜２５９に通知する。
【００５４】
仮想キュー情報保持回路２４０は、識別情報に応じた担当優先度、しきい値、処理指定、キュー長を対応する仮想キュー２５０〜２５９に通知する。例えば、仮想キュー２５０には、担当優先度＝７、しきい値＝２Ｍ、処理指定＝フレーム廃棄が通知される。仮想キュー２５４には、担当優先度＝３及び０、しきい値＝１０Ｍ、処理指定＝フレーム廃棄が通知される。どちらの場合もキュー長は現時点で格納されている値が通知される。これにより、識別情報＝Ｖ１に対応する現在の仮想キュー２５０〜２５９が謂わば再現される。
【００５５】
ここで仮想キュー２５０〜２５９では、振り分け部２３０から通知された優先度＝５と、それぞれの担当優先度とを比較する。ここでは仮想キュー２５２が一致するので、仮想キュー２５２は、しきい値＝３Ｍと現在のキュー長とを比較する。他の仮想キュー２５０、２５１、２５３〜２５９は何もしない。
【００５６】
この例では、識別情報＝Ｖ１に対応する仮想キュー情報は、担当優先度が仮想キューの間で重複しないように割り当てられている。どの担当優先度も仮想キュー２５０〜２５９のいずれかひとつにしか割り当てられていない。このため、判定回路２７０は、仮想キュー２５２による判定結果８２のみに応じて判定を行い、制御動作指示９０を出力する。フレーム廃棄部２８０は制御動作指示９０に従ってフレームの透過／廃棄／優先度下げのいずれかを行う。
【００５７】
仮想キュー２５２におけるしきい値とキュー長の比較結果がしきい値未満である場合、これに応じて判定回路２７０は仮想キュー２５２に対して加算指示を発し、加算指示に応じて仮想キュー２５２はキュー長にフレーム長＝６４バイトを加算する。更に、仮想キュー情報保持回路２４０が保持する識別番号＝Ｖ１、仮想キュー識別子２５２に対応するキュー長を加算後の値で更新する。
【００５８】
このような動作により、入力帯域制御部２０１は、識別情報＝Ｖ１、優先度＝５のフレームに対し、帯域を３Ｍに制限する部分帯域制限を行うことができる。このとき優先度＝５に関連付けられた仮想キュー２５２のみが動作し、他の仮想キューはこのフレームによる影響を受けていない。つまり、優先度５のフレームのみを対象とした専用の帯域制御動作を行っていることになる。識別情報＝Ｖ１、優先度＝４、６、７のフレームについては、同様にそれぞれ１Ｍ、２Ｍ、２Ｍの帯域制限を行うことがわかるだろう。
【００５９】
他方、識別情報＝Ｖ１の仮想キュー情報において、優先度＝０と優先度＝３については両方とも同一の仮想キュー２５４に関連付けられている。この場合、仮想キュー２５４は、優先度＝０のフレームが入力された場合と優先度＝３のフレームが入力された場合の両方の場合においてしきい値とキュー長の比較を行う。結果として、優先度＝０のフレームと優先度＝３のフレームとの合計帯域が１０Ｍに制限される。このとき、優先度＝０のフレームと優先度＝３のフレームとは、実際上は同じ優先度のフレームとして処理されることとなる。
【００６０】
以上のような仮想キュー２５０〜２５９の連係動作の結果をまとめると次の表２のようになる。
【表２】
2006339790.tif 000004
【００６１】
（２）識別情報＝Ｖ２のフレームの場合
上述の（１）では、ひとつの優先度を複数の仮想キューに割り当てることはなかった。これに対し、表１において識別情報＝Ｖ２の仮想キュー情報を参照すると、一の優先度が複数の仮想キューに割り当てられている。
【００６２】
今、識別情報＝Ｖ２、フレーム長＝６４バイト、優先度＝７のフレームが入力ポート１１から入力されたものとする。このとき仮想キュー２５０では、優先度＝６のフレームとの合計帯域が３Ｍを越えると、フレーム廃棄の判定がなされる。つまり、優先度＝７のフレームは優先度＝６のフレームと競合する。しかし、仮想キュー２５１により、優先度＝６のフレームは２Ｍ以上の帯域にならないという制限が別途課せられる。よって、優先度＝７のフレームに対しては、３Ｍ−２Ｍ＝１Ｍの帯域が最低限確保され、最大で３Ｍとなる。他方、優先度＝６のフレームに対しては、最低０Ｍ、最大２Ｍの帯域が割り当てられる。
【００６３】
同じ識別情報＝Ｖ２の仮想キュー情報において、優先度＝５と優先度＝４も競合しており、両方とも仮想キュー２５２及び２５３の両方に割り当てられている。仮想キュー２５３にて合計帯域が２Ｍを越えるとフレームの優先度を下げる判定を行う一方、仮想キュー２５２により、合計帯域が３Ｍを越えるとフレームを廃棄する判定を行う。これにより、優先度＝４及び優先度＝５のフレームは、合計帯域は最大３Ｍ、かつ、２Ｍを越えると優先度を下げる帯域制限を受ける。識別情報＝Ｖ２、優先度＝３と優先度＝４のフレームの間の競合関係も同様であり、合計帯域は最大１０Ｍ、かつ、８Ｍを越えると優先度を下げる帯域制限を受ける。
【００６４】
優先度＝２及び優先度＝１のフレームについては、仮想キュー２５６により合計帯域が最大１００Ｍとの帯域制限を受ける。これは物理帯域が１００Ｍである場合、制限を受けないことを意味する。
【００６５】
このような仮想キュー２５０〜２５９の連係動作により、次の表３のような帯域制限が実現する。
【表３】
2006339790.tif 000005
【００６６】
（３）識別情報＝Ｖ３のフレームの場合
識別情報＝Ｖ３の仮想キュー情報では、上述の（２）と同様に一の優先度に複数の仮想キューを割り当てている。
【００６７】
優先度＝７のフレームが入力した場合、仮想キュー２５０により、優先度＝０〜６のフレームと競合しつつ、帯域は１６Ｍに制限される。ここで、優先度＝０〜６のフレームは、仮想キュー２５１により、合計帯域は１４Ｍに制限される。よって、優先度＝７のフレームには最低帯域２Ｍが保証される。
【００６８】
優先度＝６のフレームが入力した場合、仮想キュー２５２により、優先度＝０〜５のフレームに優先して２Ｍの帯域が確保されるが、優先度＝７のフレームとは競合する。
【００６９】
優先度＝５のフレームが入力した場合、仮想キュー２５３により、優先度＝０〜４のフレームに優先して２Ｍの帯域が確保されるが、優先度６、７のフレームとは競合する。
【００７０】
優先度＝４のフレームが入力した場合、仮想キュー２５４により、優先度０〜３のフレームに優先して２Ｍの帯域が確保されるが、優先度５〜７のフレームとは競合する。
【００７１】
優先度＝３のフレームが入力した場合、仮想キュー２５４により、優先度＝０〜２のフレームに優先して２Ｍの帯域が確保されるが、優先度４〜７のフレームとは競合する。
【００７２】
優先度＝２のフレームが入力した場合、仮想キュー２５５により、優先度０、１のフレームに優先して２Ｍの帯域が確保されるが、優先度３〜７のフレームとは競合する。
【００７３】
優先度＝１のフレームが入力した場合、仮想キュー２５６により、優先度＝０のフレームに優先して２Ｍの帯域が確保されるが、優先度７〜２のフレームとは競合する。
【００７４】
優先度＝０のフレームが入力した場合、仮想キュー２５７により、最大２Ｍの帯域が確保されるが、優先度＝１〜７のフレームとは競合する。
【００７５】
このような仮想キュー２５０〜２５７の連係動作により、次の表４のような帯域制限がなされる。
【表４】
2006339790.tif 000006
【００７６】
以上、本発明を実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、当業者の通常の知識の範囲内でその変更や改良が可能であることは勿論である。例えば、上述の入力帯域制御部２０１、２０２、２０３、…、２０Ｎは、Ｌ２ＳＷ部３００を備えるネットワーク装置１の一部であったが、独立した装置として構成されてもよい。また、仮想キューの数は、１０個に限らず、２個以上の複数個であればいくつでも良い。また、上述の実施の形態では８段階の優先度を前提として説明したが、２段階以上であれば何段階であってもよい。更に、上述の実施の形態では、入力帯域制御部の各部はＡＳＩＣ等によりハードウェアとして構成されるものとしたが、各部の一部乃至全部の機能をソフトウェアとして実装することも可能であることは、当業者には明らかであろう。
【図面の簡単な説明】
【００７７】
【図１】本発明の一実施の形態であるネットワーク装置１のブロック図である。
【図２】入力帯域制御部２０１のブロック図である。
【図３】仮想キュー２５０の動作を説明するための図である。
【符号の説明】
【００７８】
１    ネットワーク装置
１１、１２、１３、１Ｎ    入力ポート
２１、２２、２３、２Ｎ、３１、３２、３３、３Ｎ、６０、６１    伝送路
４１、４２、４３、４Ｎ    出力ポート
５０、７０〜７９    優先制御情報
８０〜８９    判定結果
９０  制御動作指示
１０１、１０２、１０３、１０Ｎ    フロー識別部
２０１、２０２、２０３、２０Ｎ    入力帯域制御部
２１０    帯域制御情報抽出部
２２０    待ち合わせＦＩＦＯ
２３０    振り分け部
２４０    仮想キュー情報保持回路
２５０〜２５９    仮想キュー
２６０    減算回路
２７０    判定回路
２８０    フレーム廃棄部
３００    Ｌ２ＳＷ部
【図１】
2006339790.tif 000007
【図２】
2006339790.tif 000008
【図３】
2006339790.tif 000009