(57)【要約】【課題】低コストでユーザのトラフィック優先制御および帯域制御を容易に実現すること。【解決手段】クラシファイア１４でＶｏＩＰとデータに分類されたパケットを、優先度付きポリサー１５によって入力トラフィックの優先度を考慮して、トラフィックの帯域制限を行い、かつポリシーアクション処理部１６で入力されるパケットのトラフィッククラスとポリサー判定結果に基づき、低遅延通信が必要なトラフィッククラスの適合パケットを、優先的にサービスされる送信キュー２２，２３に入力させ、スケジューラ２４によるパケット送信を可能にする。【選択図】      図２
2004320380.tif 000002
【特許請求の範囲】
【請求項１】
入力したデータを、所定の帯域制御を行って伝送する帯域制御方法において、
前記所定の帯域内で、予め定められた少なくとも２つの閾値に基づき、前記入力するデータの帯域を保証して、前記入力するデータのトラフィックの流量を制限する第１の制御工程と、
前記データのポリシー条件に基づき、前記流量を制限されたデータを異なる送信キューに格納する格納制御工程と、
複数の前記送信キューを用いて前記データのトラフィックの遅延を制御する第２の制御工程と、
を含むことを特徴とする帯域制御方法。
【請求項２】
入力したデータのトラフィック量を帯域制御して伝送する帯域制御装置において、
前記制御する所定帯域内で、少なくとも２つの閾値を設定し、該閾値に基づき、前記入力するデータの帯域を保証して、当該データのトラフィックの流量を制限する第１の制御手段と、
少なくとも２つの送信キューを有し、前記データのポリシー条件に基づき、前記流量制限されたデータを、前記送信キューに格納する格納制御手段と、
前記複数の送信キューに格納された前記データのトラフィックの遅延を制御する第２の制御手段と、
を備えたことを特徴とする帯域制御装置。
【請求項３】
前記第１の制御手段は、前記データの優先度に応じて閾値を設定することを特徴とする請求項２に記載の帯域制御装置。
【請求項４】
前記格納制御手段は、前記ポリシー条件として、パケット構成のデータのトラフィッククラスに基づき、前記流量制限されたデータを該当する送信キューに格納することを特徴とする請求項２に記載の帯域制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、トラフィックフローに所定の帯域制御を行って伝送する帯域制御方法およびその帯域制御装置に関するものである。
【０００２】
【従来の技術】
近年、通信ネットワークの接続サービスでは、ＦＴＴＨ（Ｆｉｂｅｒ  Ｔｏ  Ｔｈｅ  Ｈｏｍｅ）の普及によって高速な接続サービスが低コストで提供できるようになってきている。このような通信ネットワークを流れるデータトラフィックは、その使用するアプリケーションに応じたＱｏＳ（通信品質）制御を行う必要がある。
【０００３】
このＱｏＳ制御を行うための技術手法としては、出力ポート毎に異なるキューを用いるスケジューリング手法や、トラフィックの最大流量を制限するポリシング手法などが用いられている。これらの手法を用いる場合として、あるユーザへの送信トラフィックをそのアプリケーション、たとえば通信ネットワーク上に音声パケットを通すためのＶｏＩＰ（Ｖｏｉｃｅ  ｏｖｅｒ  ＩＰ）用トラフィックを、他のデータトラフィックに比べて低遅延で優先的に送信するなど、あるユーザへのトラフィックの総量を契約帯域である１０Ｍｂｐｓに制限したい場合がある。
【０００４】
たとえば、遅延時間を制御するためには、ＶｏＩＰトラフィック用に異なる送信キューを用意して、他のデータ用キューよりも常に先にＶｏＩＰのパケットを送信する手法を用いることができる。しかし、この手法では、ユーザへの送信トラフィックの総量を制限するという要求を満たすことができない。
【０００５】
そこで、帯域制限機構であるポリシング手法を用いて、ユーザのトラフィック量を制限することも考えられるが、この場合、ポリシングアルゴリズムでは、トラフィックの優先度は考慮されないので、トラフィックの制限総量を超えると、ＶｏＩＰなどの優先トラフィックが廃棄されてしまう事態が発生する。
【０００６】
このような事態を解決する方法としては、複数の送信キューを使いつつ、それら送信キューからの送信レートの総量を制御するスケジューリングを行う方法があった。
【０００７】
【特許文献１】
特開２００１−５１９１２０号公報（図１）
【０００８】
【発明が解決しようとする課題】
しかしながら、上記従来例では、特にユーザ数が多い場合には、複雑な処理となり、高速なネットワーク上での実現は困難になるという問題点があった。また、特許文献１では、多段階のスケジューリングを行うために実装が複雑になるという問題点があった。
【０００９】
この発明は、上記問題点に鑑みなされたもので、低コストでユーザのトラフィック優先制御および帯域制御を容易に実現することができる帯域制御方法およびその帯域制御装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
上記目的を達成するため、請求項１にかかる帯域制御方法では、入力したデータを、所定の帯域制御を行って伝送する帯域制御方法において、前記所定の帯域内で、予め定められた少なくとも２つの閾値に基づき、前記入力するデータの帯域を保証して、前記入力するデータのトラフィックの流量を制限する第１の制御工程と、前記データのポリシー条件に基づき、前記流量を制限されたデータを異なる送信キューに格納する格納制御工程と、複数の前記送信キューを用いて前記データのトラフィックの遅延を制御する第２の制御工程とを含むことを特徴とする帯域制御方法が提供される。
【００１１】
この発明によれば、たとえばパケットの優先度に基づく、複数の閾値を設定して、入力するパケットの帯域保証を行い、かつパケットのトラフィッククラスなどのポリシー条件に基づき、帯域保証されたパケットを異なる送信キューに格納を行い、その後にトラフィックの遅延を制御するスケジューリングを行うことで、ユーザのトラフィック優先制御および帯域制御を実現する。
【００１２】
また、請求項２にかかる帯域制御装置では、入力したデータのトラフィック量を帯域制御して伝送する帯域制御装置において、前記制御する所定帯域内で、少なくとも２つの閾値を設定し、該閾値に基づき、前記入力するデータの帯域を保証して、当該データのトラフィックの流量を制限する第１の制御手段と、少なくとも２つの送信キューを有し、前記データのポリシー条件に基づき、前記流量制限されたデータを、前記送信キューに格納する格納制御手段と、前記複数の送信キューに格納された前記データのトラフィックの遅延を制御する第２の制御手段とを備えたことを特徴とする帯域制御装置が提供される。
【００１３】
この発明によれば、制御する所定帯域内で複数の閾値を設定し、第１の制御手段によって入力するパケットの帯域保証を行い、かつパケットのトラフィッククラスなどに基づき、格納制御手段で流量制御されたパケットを送信キューに格納する手段と、パケットの遅延を制御するスケジューリングを行うことで、ユーザのトラフィック優先制御および帯域制御を実現する。
【００１４】
また、請求項３にかかる帯域制御装置では、前記第１の制御手段は、前記データの優先度に応じて閾値を設定することを特徴とする。
【００１５】
この発明によれば、たとえばパケットの優先度に応じて複数の優先度を設定し、低遅延通信が必要なトラフィッククラスのパケットを優先的に送信して、入力するパケットの帯域保証を行う。
【００１６】
また、請求項４にかかる帯域制御装置では、前記格納制御手段は、前記ポリシー条件として、パケット構成のデータのトラフィッククラスに基づき、前記流量制限されたデータを該当する送信キューに格納することを特徴とする。
【００１７】
この発明によれば、たとえばＶｏＩＰなどの低遅延通信が必要なトラフィッククラスの適合パケットに対して、優先的にサービスされる送信キューに格納させるポリシングを行う。
【００１８】
【発明の実施の形態】
以下に図１〜図６の添付図面を参照して、この発明にかかる帯域制御方法およびその帯域制御装置の好適な実施の形態を説明する。
【００１９】
（実施の形態１）
図１は、この発明にかかる帯域制御装置の構成の一例を示す構成図である。図１において、帯域制御装置であるルータ１０は、入力ポート（この実施例では３つの入力ポート）毎に設けられてポリシング制御を行う複数の入力側ＮＰ（ネットワーク・プロセッサ）１１〜１３と、入力したパケットを適切な出力ポートに振り分けるスイッチファブリック２１と、出力ポート（この実施例では３つの出力ポート）毎に設けられて振り分けられたパケットに対して帯域制御を行う出力側ＮＰ３１〜３３とから構成されている。
【００２０】
入力側ＮＰ１１〜１３は、入力するパケットに対してポリシング制御を行っている。なお、この入力側ＮＰ１１〜１３は、それぞれ同様の構成からなっており、ここでは代表して入力側ＮＰ１１の構成を図２の構成図に示す。
【００２１】
図２において、入力側ＮＰ１１は、クラシファイア１４と、優先度付きポリサー１５と、ポリシーアクション処理部１６と、ＱｏＳポリシー制御部１７と、アクションテーブル１８とから構成されている。この入力側ＮＰ１１において、クラシファイア１４は、たとえばＣＡＭ（Ｃｏｎｔｅｎｔｓ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）などを用いており、入力するパケットのヘッダ情報に基づいて、トラフィックをＶｏＩＰなどのトラフィッククラスとデータとに分類して、この情報を内部ヘッダ部（図１参照）に追加してパケットとともに優先度付きポリサー１５に出力している。
【００２２】
優先度付きポリサー１５は、入力トラフィックの優先度を考慮して、各トラフィッククラスの適合パケットの合計が、設定された１０Ｍｂｐｓ帯域以内に収まるように帯域制限を行っている。具体的には、優先度付きポリサー１５は、トラフィック流量が制限帯域に適合しているかどうかを判定する際に、ＶｏＩＰトラフィックが、データトラフィックよりも優先的に適合と判定するように設定されている。このポリサーで判定された適合／不適合情報は、内部ヘッダ部に追加されてパケットとともにポリシーアクション処理部１６に出力される。
【００２３】
ここで、この発明の特徴であるポリシングを行うアルゴリズムとしては、たとえばトークンバケツを用いる。このトークンバケツのアルゴリズムでは、トークンと呼ばれるトラフィック送信権を表す仮想的な量を用いる。すなわち、この優先度付きポリサー１５では、図３に示すように、流量を制限したいトラフィックフローには、このトークンをためておくための仮想的なトークンバケツ１５ａが用意され、このトークンバケツ１５ａにはトラフィックの制限流量に等しいレートでトークンが補充される。
【００２４】
この優先度付きポリサー１５では、パケットの優先度に応じて、このトークンバケツ１５ａにたまっているトークの量に閾値を設定し、低優先トラフィックに関しては、このトークンバケツ１５ａに一定以上のトークンがない場合には、たとえトークンが残っていても、パケット処理部１５ｂはトークンがない場合と同様な処理を行うこととする。ここで、十分なトークンがトークンバケツ１５ａにない場合には、そのトラフィックは廃棄されるか、遅延されるなどの処理を行うことで、トラフィックフローの流量制限が実現される。
【００２５】
パケット処理部１５ｂは、パケット到着時にそのデータ量に比例したトークンを、トークンバケツ１５ａから取り出してから、パケットの送信を行う。すなわち、この実施の形態では、トークンバケツ１５ａのトークンの量に閾値Ｔ１とＴ２が予め設定されており、低優先トラフィックのパケット到着時には、パケット処理部１５ｂは、Ｔ２以上のトークンがある場合には、そのデータ量に比例したトークンを、トークンバケツ１５ａから取り出してパケットの送信を行い、またＴ２以上のトークンがない場合には、パケットを廃棄している。また、高優先トラフィックのパケット到着時には、パケット処理部１５ｂは、Ｔ１以上のトークンがある場合には、そのデータ量に比例したトークンを、トークンバケツ１５ａから取り出してパケットの送信を行い、またＴ１以上のトークンがない場合には、パケットを廃棄している。なお、この発明に係わる閾値Ｔｉ（Ｔｉは、トラフィッククラスを表すインデックス）は、優先度に応じて、３つ以上の複数に設定することが可能であり、Ｔｉ＜Ｔｊであれば、トラフィッククラスｉは、トラフィッククラスｊよりも優先的に帯域を利用することができる。
【００２６】
これにより、この実施の形態では、制限帯域よりも送信トラフィック量の多い輻輳時においても、まず最も優先度の高いトラフィックが帯域を利用して、残った帯域を次に優先度が高いトラフィックが利用する帯域制御が実現される。
【００２７】
ポリシーアクション処理部１６は、入力されるパケットのトラフィッククラスとポリサー判定結果を抽出して、これら情報に基づいてアクションテーブル１８を検索して、この入力パケットに対する処理を決定する。たとえば、ポリシーアクション処理部１６は、低遅延通信が必要なトラフィッククラスの適合パケットに対しては、優先的にサービスされるキュー（たとえば、送信キュー２２に）へパケットを入力させ、また低遅延通信が不必要なトラフィッククラスの不適合パケットに対しては、このパケットを廃棄する。
【００２８】
また、ＱｏＳポリシー制御部１７では、要求されるＱｏＳポリシーをアクションテーブル１８にデータを書く込む書き込み処理を行っており、このＱｏＳポリシーは、装置の管理者によって直接指定される場合もあれば、ＲＳＶＰ（Ｒｅｓｏｕｒｃｅ  Ｒｅｓｅｒｖａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）などのシグナリングプロトコルによって決定される場合もある。
【００２９】
アクションテーブル１８は、図２に示すように、トラフィッククラスと、このトラフィッククラスのポリサー判定結果と、これらに対応するアクションのデータが書き込まれている。
【００３０】
スイッチファブリック２１は、低遅延通信が必要なトラフィッククラスの適合パケットを優先的に格納する送信キュー２２，２３と、これら送信キュー２２，２３を選択してパケット取り出して送信するスケジューラ２４とから構成されている。スケジューラ２４は、選択した各送信キューから、それぞれの送信優先度に応じたタイミングでパケットを取り出して、出力ポート毎に設けられた出力側ＮＰ３１〜３３に出力している。なお、スケジューラ２４は、優先キューにパケットがある限り、常に先に送信するストリクトプライオリティ、各キューの重みに応じた割合でパケットを送信する重み付きラウンドロビン、もしくはパケットに仮想的なタイムスタンプを付けてソーティングすることで、送信パケットを決定するＷＦＱ（Ｗｅｉｇｈｔｅｄ  Ｆａｉｒ  Ｑｕｅｕｉｎｇ）などの既存の技術を用途に合わせて用いることができる。
【００３１】
出力側ＮＰ３１〜３３は、スイッチファブリック２１から入力するＩＰパケットに対して、必要に応じて再度帯域制御を行い、このパケットをネットワークに転送している。
【００３２】
次に、優先度付きポリサー１５およびポリシーアクション処理部１６の処理動作を、図４および図５のフローチャートに基づいて説明する。まず、図４において、優先度付きポリサー１５は、ｔ−ｔ０＝１／Ｒｉになったかどうか判断する（ステップ１０１）。なお、ｔは、現在の時間、ｔ０は、前回トークンを補充した時間、Ｒｉは、ユーザｉの契約帯域を示す。
【００３３】
ここで、ｔ−ｔ０＝１／Ｒｉの場合には、ｔ０＝ｔとした後（ステップ１０２）、トークンバケツ残量Ｂがトークンバケツの最大容量ＢＭＡＸ未満かどうか判断し（ステップ１０３）、この最大容量ＢＭＡＸ未満の場合には、トークン残量Ｂを１つ増加させる（ステップ１０４）。次にパケットが到着したかどうか判断する（ステップ１０５）。また、ｔ−ｔ０＝１／Ｒｉでない場合にも、ステップ１０３に進む。
【００３４】
ここで、パケットが到着していない場合には、ステップ１０１に戻って、ｔ−ｔ０＝１／Ｒｉを判断する。また、パケットが到着した場合には、パケットサイズをＬ、かつ優先度をｐとして（ステップ１０６）、次に（トークンバケツ残量Ｂ）＞（優先度ｐの閾値Ｔｐ）かどうか判断し（ステップ１０７）、（トークンバケツ残量Ｂ）＞（優先度ｐの閾値Ｔｐ）でない場合、つまりトークンバケツ残量Ｂが優先度ｐの閾値Ｔｐと等しいか、小さい場合には、パケットを廃棄して（ステップ１０９）、ステップ１０１に戻る。また、（トークンバケツ残量Ｂ）＞（優先度ｐの閾値Ｔｐ）の場合には、（トークンバケツ残量Ｂ）＞（サイズＬ）かどうか判断する（ステップ１０８）。
【００３５】
ここで、（トークンバケツ残量Ｂ）≧（サイズＬ）でない場合、つまりトークンバケツ残量ＢがサイズＬより小さい場合には、パケットを廃棄し（ステップ１０９）、また（トークンバケツ残量Ｂ）≧（サイズＬ）の場合には、トークンバケツ残量ＢからパケットサイズＬを引いた値をトークンバケツ残量Ｂとした後、パケット送信を行い（ステップ１１０）、ステップ１０１に戻る。
【００３６】
図５において、優先度付きポリサー１５から送信されたパケットが到着すると（ステップ２０１）、ポリシーアクション処理部１６は、パケットに付与された内部ヘッダからトラフィッククラスとポリサー判定結果を抽出し、アクションテーブルを検索する（ステップ２０２）。そして、該当する項目のアクションは廃棄かどうか判断する（ステップ２０３）。
【００３７】
ここで、検索したアクションテーブルの該当項目のアクションが廃棄の場合には、パケットを廃棄（ステップ２０４）する。また、該当項目のアクションが優先キューへ入力の場合には、指定された送信キュー２２または２３へパケットを格納した後（ステップ２０５）、ステップ２０１に戻って次にパケットの到着を待つ。
【００３８】
このように、この実施の形態では、優先度付きポリサー１５でパケットの優先度に応じた帯域制御を行い、かつポリシーアクション処理部１６によってパケットのトラフィッククラスとポリサー判定結果からパケットの廃棄／送信を判断して適切な送信キューにパケットを入力させた後にスケジューリングを行うので、装置構成が簡単化されて、これに伴い低コストでユーザのトラフィック優先制御および帯域制御を容易に実現することができる。
【００３９】
（実施の形態２）
この実施の形態２では、カラー・アウェア・モード（Ｃｏｌｏｒ  ＡｗａｒｅＭｏｄｅ）を用いた場合を説明する。図６は、図２に示したポリサーの構成の他例を示す構成図である。図６において、ポリサー１５では、パケットのトラフィッククラスとして、優先度に対応したカラー（グリーンとイエロー）が内部ヘッダ部に設定されている。そして、このカラーに対応して、グリーンのトークンをためておくための仮想的なトークンバケツ１５ｃと、グリーンとイエローのトークンをためておくための仮想的なトークンバケツ１５ｄとが用意され、これらトークンバケツ１５ｃ，１５ｄにはトラフィックの制限流量に等しいレートでトークンが補充される。グリーンのトークンは、トークンバケツ１５ｃに満たされると、トークンバケツ１５ｄに補充される。
【００４０】
パケット処理部１５ｅは、たとえばグリーンのパケット到着時に、トークンバケツ１５ｃからそのデータ量に比例したトークンを取り出してから、グリーンのパケットの送信を行うが、トークンバケツ１５ｃにトークンがない場合には、トークンバケツ１５ｄからトークンを取り出してから、パケットのトラフィッククラスをイエローに変更して送信する。また、このトークンバケツ１５ｄにもトークンがない場合には、パケット処理部１５ｅは、パケットを廃棄している。
【００４１】
また、パケット処理部１５ｅは、たとえばイエローのパケット到着時に、トークンバケツ１５ｄからそのデータ量に比例したトークンを取り出してから、イエローのパケットの送信を行い、このトークンバケツ１５ｄにイエローのトークンがない場合には、パケットを廃棄している。
【００４２】
ポリシーアクション処理部１６は、入力されるパケットのトラフィッククラス（グリーンとイエロー）とポリサー判定結果を抽出して、これら情報に基づいてアクションテーブル１８を検索して、この入力パケットに対する処理を決定する。たとえば、ポリシーアクション処理部１６は、低遅延通信が必要なトラフィッククラス（グリーン）の適合パケットに対しては、優先的にサービスされるキュー（たとえば、送信キュー２２に）へパケットを入力させ、また低遅延通信が不必要なトラフィッククラスの不適合パケットに対しては、このパケットを廃棄する。
【００４３】
このように、この実施の形態では、ポリサー１５でカラーに応じた帯域制御を行い、かつポリシーアクション処理部１６によってパケットのカラーとポリサー判定結果からパケットの適合／不適合を判断してパケットのパケットの送信または廃棄を決定するポリシングを行った後にスケジューリングを行うので、装置構成が簡単化され、これに伴い低コストでユーザのトラフィック優先制御および帯域制御を容易に実現することができる。
【００４４】
この発明は、これら実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲で種々の変形実施が可能である。
【００４５】
【発明の効果】
以上説明したように、この発明では、優先度付きポリサーやカラー・アウェア・モードをサポートするポリサーを用いて、トラフィッククラスに基づき、複数の閾値を設定して、入力するパケットの帯域保証を行うとともに、帯域保証されたパケットをトラフィッククラスに基づき、異なる送信キューに格納する処理を行った後に、パケットのスケジューリングを行うので、構成が簡単化されて低コストでユーザのトラフィック優先制御および帯域制御を容易に実現することができる。
【図面の簡単な説明】
【図１】この発明にかかる帯域制御装置の構成の一例を示す構成図である。
【図２】図１に示した入力側ＮＰとスイッチファブリックの構成の一例を示す構成図である。
【図３】図２に示した優先度付きポリサーの構成の一例を示す構成図である。
【図４】図３に示したポリサーの処理動作を説明するためのフローチャートである。
【図５】図２に示したポリシーアクション処理部の処理動作を説明するためのフローチャートである。
【図６】図２に示したポリサーの構成の他例を示す構成図である。
【符号の説明】
１０  ルータ
１１〜１３  入力側ＮＰ
１４  クラシファイア
１５  優先度付きポリサー
１５ａ，１５ｃ，１５ｄ  トークンバケツ
１５ｂ，１５ｅ  パケット処理部
１６  ポリシーアクション処理部
１７  ＱｏＳポリシー制御部
１８  アクションテーブル
２１  スイッチファブリック
２２，２３  送信キュー
２４  スケジューラ
３１〜３３  出力側ＮＰ
Ｂ  トークンバケツ残量
Ｌ  パケットサイズ
ｐ  優先度
Ｔ１，Ｔ２，Ｔｉ，Ｔｊ，Ｔｐ  閾値
【図１】
2004320380.tif 000003
【図２】
2004320380.tif 000004
【図３】
2004320380.tif 000005
【図４】
2004320380.tif 000006
【図５】
2004320380.tif 000007
【図６】
2004320380.tif 000008