(57)【要約】      （修正有）【課題】ＡＴＭのみならずＩＰパケットのフローに対して使用可能で、大きな監視テーブルを必要としないＵＰＣ装置を提供する。【解決手段】実際にアクティブなパケットのフローが記録されたテーブル３を作成し、このテーブルに記録されたフローに対して一定時間内のパケットの量を制御装置により監視または制御する。また、一定時間内にパケットが記録されないフローについてはテーブルからこれを削除してテーブルをあける。【選択図】図１
2005057408.tif 000002
【特許請求の範囲】
【請求項１】
パケットを規定された量以上通過させないように監視するＵＰＣ(Usage Parameter
Control)装置において、
実際にアクティブなパケットのフローが記録されたテーブルを作成する手段と、
このテーブルに記録されたフローに対して一定時間内のパケットの量を監視または制御するＵＰＣ手段と
を備えたことを特徴とするＵＰＣ装置。
【請求項２】
ＡＴＭ(Asynchronous Transfer Mode)セルのＶＰＩ(Virtual
Path Identifier)またはＶＣＩ(Virtual Channel Identifier)により、一定時間に新規に固定長パケットであるセルを発生させたＶＰＩまたはＶＣＩを抽出する手段を備え、
前記テーブルを作成する手段は、
この抽出する手段により抽出されたＶＰＩまたはＶＣＩを記録する手段と、
この記録する手段の記録内容を一定周期でリセットする手段と
を備え、
前記ＵＰＣ手段は、前記記録する手段に記録されたＶＰＩまたはＶＣＩを有するセル数を計測し、その値が閾値以上の場合はセルを廃棄する手段を備えた
請求項１記載のＵＰＣ装置。
【請求項３】
前記閾値をネットワークの状況に応じて変化させる手段を備えた請求項２記載のＵＰＣ装置。
【請求項４】
前記閾値をＶＰＩまたはＶＣＩ毎に決定する手段を備えた請求項２記載のＵＰＣ装置。
【請求項５】
前記記録する手段が記録を行った時刻を各フロー毎に記録する時刻記録手段を備え、
前記リセットする手段は、この時刻記録手段により記録された各フロー毎の時刻から一定時間以上経過した各フロー毎の前記記録する手段の記録内容を各フロー毎にリセットする手段を備えた
請求項２記載のＵＰＣ装置。
【請求項６】
ＩＰ(Internet Protocol)パケットのＳＡ(Source Address)またはＤＡ(Destination
Address)により、一定時間に新規にＩＰパケットを発生させたＳＡまたはＤＡを抽出する手段を備え、
前記テーブルを作成する手段は、
この抽出する手段により抽出されたＳＡまたはＤＡを記録する手段と、
この記録する手段の記録内容を一定周期でリセットする手段と
を備え、
前記ＵＰＣ手段は、前記記録する手段に記録されたＳＡまたはＤＡを有するＩＰパケット数または当該ＩＰパケットの総バイト数を計測し、その値が閾値以上の場合はＩＰパケットを廃棄する手段を備えた
請求項１記載のＵＰＣ装置。
【請求項７】
前記閾値をＳＡまたはＤＡ毎に決定する手段を備える請求項６記載のＵＰＣ装置。
【請求項８】
前記閾値をＴＯＳ(Type of Service)に基づき決定する手段を備える請求項６記載のＵＰＣ装置。
【請求項９】
情報処理装置にインストールすることにより、その情報処理装置に、請求項１ないし８のいずれかに記載のＵＰＣ装置における各手段に相応する機能を実現させることを特徴とするプログラム。
【請求項１０】
請求項９記載のプログラムが記録された前記情報処理装置読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＡＴＭ(Asynchronous Transfer Mode)網あるいはＩＰ(Internet
Protocol)網に利用する。特に、規定量を超えたパケットまたはセル（固定長パケット）の流入を制御するＵＰＣ(Usage ParameterControl)技術に関する。
【背景技術】
【０００２】
従来のＵＰＣ装置の構成を図８および図９に示す。まず、図８を用いてＡＴＭの場合のＵＰＣ装置を示す。図８は従来のＡＴＭ用ＵＰＣ装置の構成図である。ＡＴＭの場合は、セルフローを識別するのにＶＰＩ(Virtual Path Identifier)またはＶＣＩ(Virtual Channel Identifier)（以降、ＶＰＩ／ＶＣＩと記す）番号で識別される。なお、ＶＰＩ／ＶＣＩには、ＶＰＩおよびＶＣＩの意味とＶＰＩあるいはＶＣＩの意味とを含む。テーブル１７は、各セルフローのＶＰＩ／ＶＣＩ値を記憶するとともに、ある一定時間内のカウント値を記憶する。閾値としては、ある一定時間内のカウント値の上限を規定している。
【０００３】
セルが到着すると制御装置１６にヘッダの情報が渡され、該当しているセルフローに対するカウンタ２３のカウント値を１つアップすると同時に、閾値（規定値）と比較する。閾値以下ならばセルは通過し、閾値以上であればカウント値を元に戻すとともにセルを廃棄する。また、カウント値は、ある周期（例えば１分）毎にリセットされる。
【０００４】
本方式は、各セルフローに対し、厳密にその量を監視することが可能であるが、ＶＰＩ／ＶＣＩ数が大きくなるのに比例して、テーブルの大きさが必要となる。ＡＴＭの特徴であるバーチャルコネクションの考え方より、普段は使わず、ある瞬間だけ使うユーザが多い場合は、テーブルが２16項とか２24項必要となり経済的ではない。
【０００５】
次に、ＩＰパケットフローに対するＵＰＣ装置を図９を参照して説明する。図９は従来のＩＰパケットフローに対するＵＰＣ装置の構成図である。ＩＰベースのネットワークでも、パケットフローという考えを作り、特定のＳＡ(Source Address)、ＤＡ(Destination Address)間のトラヒックの量を監視する場合がある。監視する量は、パケット数、もしくは、パケット数×パケット長に当たるバイト数の場合があるが、ここではバイト数とした。
【０００６】
図９に示すＵＰＣ装置の動作の説明をする。パケット処理装置１８は、到着したＩＰパケットのＳＡ／ＤＡを抽出する。制御装置１９は、到着したＩＰパケットのＳＡ／ＤＡをもとにテーブル２０を検索し、当該ＳＡ／ＤＡのカウンタ２４のカウント値（バイト数）を計算し、先の例と同様に、オーバーしていたら、そのパケットを通さないようにする。また、オーバーしていなければ、カウント値を再計算してテーブル２０に格納する。
【非特許文献１】ＮＴＴ  Ｒ＆Ｄ  Ｖｏｌ．５２，Ｎｏ．３，１８２頁（２００３年）「フォトニックネットワークトラヒック制御技術（岡本  聡・山中  直明）」
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本方式をＩＰネットワークに適用すると、監視したいパケットフロー数が多い場合、テーブルの大きさが巨大化する欠点がある。また、ＩＰネットワークの場合は、特に、実際にアクティブとなっているパケットフロー数は極めて少なく、言い換えれば、カウンタのほとんどは０であり、サイレントなパケットフローには無駄なリソースといえる。
【０００８】
また、閾値も、従来のように個別に厳密に行う目的以外に、単一ユーザにリソースを専有されないようにラフに行う必要がある。特にＵＤＰ(User Datagram Protocol)フラッディングやＤｏＳ(Denial of Service)等の攻撃的なユーザの影響を小さくする目的でも、ＵＰＣが必要とされる。
【０００９】
本発明は、このような背景に行われたものであって、ＡＴＭのみならずＩＰパケットフローに対して効率的にＵＰＣを実現することができるＵＰＣ装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、パケットを規定された量以上通過させないように監視するＵＰＣ装置であって、本発明の特徴とするところは、実際にアクティブなパケットのフローが記録されたテーブルを作成する手段と、このテーブルに記録されたフローに対して一定時間内のパケットの量を監視または制御するＵＰＣ手段とを備えたところにある（請求項１）。
【００１１】
これにより、実際にアクティブなフローに絞り込んでＵＰＣを行うことができるため、網リソースを有効利用することができる。また、実際にアクティブとなっているパケットフロー数が極めて少ないＩＰネットワークにおいてもＵＰＣを効率良く行うことができる。
【００１２】
本発明のＵＰＣ装置をＡＴＭ網に適用する場合には、例えば、ＡＴＭセルのＶＰＩ／ＶＣＩにより、一定時間に新規に固定長パケットであるセルを発生させたＶＰＩ／ＶＣＩを抽出する手段を備え、前記テーブルを作成する手段は、この抽出する手段により抽出されたＶＰＩ／ＶＣＩを記録する手段と、この記録する手段の記録内容を一定周期でリセットする手段とを備え、前記ＵＰＣ手段は、前記記録する手段に記録されたＶＰＩ／ＶＣＩを有するセル数を計測し、その値が閾値以上の場合はセルを廃棄する手段を備える（請求項２）。
【００１３】
また、前記閾値をネットワークの状況に応じて変化させる手段を備えることができる（請求項３）。これにより、例えば、ネットワークのトラヒックが混み合っている場合と、空いている場合とで、閾値を変化させることにより、その時々のネットワーク状況に適合した最適なＵＰＣを行うことができる。
【００１４】
また、前記閾値をＶＰＩ／ＶＣＩ毎に決定する手段を備えることができる（請求項４）。これにより、例えば、ＶＰＩ／ＶＣＩ毎にサービスを分けておけば、サービス毎に異なる閾値を設定することができ、サービス種別に適合した最適なＵＰＣを行うことができる。
【００１５】
また、前記記録する手段が記録を行った時刻を各フロー毎に記録する時刻記録手段を備え、前記リセットする手段は、この時刻記録手段により記録された各フロー毎の時刻から一定時間以上経過した各フロー毎の前記記録する手段の記録内容を各フロー毎にリセットする手段を備えることができる（請求項５）。これにより、フロー毎に個別にリセットを行うことができる。また、当該一定時間をフロー毎に変えてもよい。これによれば、例えば、フロー毎の閾値を同じ値にしておいて、当該一定時間をフロー毎に変えることにより、各フロー毎に最適なＵＰＣを行うことができる。
【００１６】
また、本発明のＵＰＣ装置をＩＰ(Internet Protocol)網に適用する場合には、ＩＰパケットのＳＡ(Source
Address)／ＤＡ（Destination Address）により、一定時間に新規にＩＰパケットを発生させたＳＡ／ＤＡを抽出する手段を備え、前記テーブルを作成する手段は、この抽出する手段により抽出されたＳＡ／ＤＡを記録する手段と、この記録する手段の記録内容を一定周期でリセットする手段とを備え、前記ＵＰＣ手段は、前記記録する手段に記録されたＳＡ／ＤＡを有するＩＰパケット数または当該ＩＰパケットの総バイト数を計測し、その値が閾値以上の場合はＩＰパケットを廃棄する手段を備える（請求項６）。
【００１７】
また、前記閾値をＳＡ／ＤＡ毎に決定する手段を備えることができる（請求項７）。これにより、例えば、ＳＡ／ＤＡ毎にサービスを分けておけば、サービス毎に異なる閾値を設定することができ、サービス種別に適合した最適なＵＰＣを行うことができる。あるいは、ＵＤＰフラッティングやＤｏＳ攻撃等の攻撃的なユーザのＳＡ／ＤＡに対して有効なＵＰＣを行うことができる。
【００１８】
また、前記閾値をＴＯＳ(Type of Service)に基づき決定する手段を備えることもできる（請求項８）。これによれば、サービス種別毎に最適なＵＰＣを行うことができる。
【００１９】
本発明の他の観点は、情報処理装置にインストールすることにより、その情報処理装置に、本発明のＵＰＣ装置における各手段に相応する機能を実現させることを特徴とするプログラムである（請求項９）。
【００２０】
本発明のさらに他の観点は、本発明のプログラムが記録された前記情報処理装置読取可能な記録媒体である（請求項１０）。本発明のプログラムは本発明の記録媒体に記録されることにより、前記情報処理装置は、この記録媒体を用いて本発明のプログラムをインストールすることができる。あるいは、本発明のプログラムを保持するサーバからネットワークを介して直接前記情報処理装置に本発明のプログラムをインストールすることもできる。
【００２１】
これにより、汎用の情報処理装置を用いて、ＡＴＭのみならずＩＰパケットフローに対して効率的にＵＰＣを実現することができるＵＰＣ装置を実現することができる。
【発明の効果】
【００２２】
本発明によれば、ＡＴＭのみならずＩＰフローに対して効率的にＵＰＣを実現することができる。
【発明を実施するための最良の形態】
【００２３】
本発明の実施形態を図１および図５を参照して説明する。図１は実施例１のＵＰＣ装置の構成図である。図５は実施例５のＵＰＣ装置の構成図である。
【００２４】
本実施形態は、パケットを規定された量以上通過させないように監視するＵＰＣ装置であって、本実施形態の特徴とするところは、実際にアクティブなパケットまたはセルのフローが記録されたアクティブフローテーブル３または１０を作成する制御装置２または９を備え、この制御装置２または９は、アクティブフローテーブル３または１０に記録されたフローに対して一定時間内のパケットの量を監視または制御するＵＰＣ手段を備えたところにある（請求項１）。
【実施例１】
【００２５】
実施例１のＵＰＣ装置の構成を図１に示す。実施例１では、セル処理装置１は、ＡＴＭセルのＶＰＩ／ＶＣＩにより、一定時間に新規に固定長パケットであるセルを発生させたＶＰＩ／ＶＣＩを抽出する手段を備え、制御装置２は、このセル処理装置１により抽出されたＶＰＩ／ＶＣＩをアクティブフローテーブル３に記録する手段と、アクティブフローテーブル３の記録内容を一定周期でリセットする手段と、アクティブフローテーブル３に記録されたＶＰＩまたはＶＣＩを有するセル数を計測し、その値が閾値以上の場合はセルを廃棄する手段とを備える（請求項２）。
【００２６】
次に、実施例１のＵＰＣ装置の動作を説明する。到着したセルはセル処理装置１によりＶＣＩ／ＶＰＩ番号を抽出される。制御装置２では、アクティブフローテーブル３に当該フローが存在するか否かをみて、存在する場合は、カウンタ２１をインクリメントさせる。存在しない場合は、アクティブフローテーブル３にリストアップし、監視の対象とする。
【００２７】
全てのフローである単位時間内の最大値（閾値）は一定であり、カウント値がその閾値を超えた場合は、従来のＵＰＣと同様にセルを廃棄する。アクティブフローテーブル３は、制御装置２によって、一定時間（例えば５分）毎に、全てリセット（消去）される。このことにより、いかなるフローも５分間の最大セル数を制限される。
【実施例２】
【００２８】
実施例２のＵＰＣ装置の構成を図２に示す。実施例２では、閾値をネットワークの状況に応じて変化させる手段を制御装置２に備える（請求項３）。実施例２では、アクティブフローテーブル３に加えて閾値テーブル４を備える。実施例２では、ネットワークの状況にあわせて、図２の閾値テーブル４で決められた閾値にダイナミックに変わる。例えば、ネットワークが比較的空いている状態では各フローの最大値は１０００セルであるのに対し、輻輳時は２０セルに制限される。
【実施例３】
【００２９】
実施例３のＵＰＣ装置の構成を図３に示す。実施例３では、閾値をＶＰＩ／ＶＣＩ毎に決定する手段を制御装置２に備える（請求項４）。実施例３では、アクティブフローテーブル５および閾値テーブル６に閾値の設定領域を設け、ＶＰＩにより、閾値を変える例を示す。例えば、ＶＰＮ(Virtual Private Network)毎にＶＰＩが設定されているときに、ＶＰＮを分けてそれぞれのＶＰＮのポリシーに基づき閾値を変更することも可能である。また、一方、ＶＰＩによりサービスを分け、例えば、音声用のＶＰＩ値、ｗｗｗアクセス用のＶＰＩ値、ビジネス（ミッションクリティカル）用ＶＰＩ値を分けることにより、サービスに基づく閾値を制御することが可能である。図３の例では、ＶＰＩにより閾値を変える例を示したが、ＶＣＩにより閾値を変えてもよい。
【実施例４】
【００３０】
実施例４のアクティブフローテーブル７の構成を図４に示す。実施例４では、制御装置２が記録を行った時刻を各フロー毎に記録するアクティブフローテーブル７を備え、制御装置２は、このアクティブフローテーブル７により記録された各フロー毎の時刻から一定時間以上経過した各フロー毎のアクティブフローテーブル７の記録内容を各フロー毎にリセットする手段を備える（請求項５）。
【００３１】
このように、実施例１では、アクティブフローテーブル３は周期的にリセットされていたが、実施例４のアクティブフローテーブル７は、アクティブフローの開始時刻を記憶するテーブルを有している。
【００３２】
このアクティブ開始時刻の記憶の利用方法としては、全てのフローで共通な一定時間（Ｔ分）経過したら、このアクティブフローが消滅する。つまり、Ｔ分内の閾値に基づき、フローの量をフロー毎に制御する。これによれば、各フローに対して時間的には同じ条件でＵＰＣを行うことができる。この場合には、各フロー毎に閾値を変えることにより、それぞれのフローのデータ量やサービス種別や優先度などに応じてＵＰＣの条件を変えることができる。
【００３３】
あるいは、アクティブ開始時刻とそれぞれのフロー毎に異なる一定時間を記憶しておき、その時間内のトラヒック量を監視する。これによれば、各フロー毎に時間的には異なる条件でＵＰＣを行うことができる。すなわち、各フロー毎の一定時間を変えることにより、それぞれのフローのデータ量やサービス種別や優先度などに応じてＵＰＣの条件を変えることができる。この場合には、閾値をフロー毎に変えなくても、一定時間の方を変えることにより、各フロー毎に閾値を変えるのと等価的なＵＰＣを閾値一定で行うことができる。
【実施例５】
【００３４】
実施例５のＵＰＣ装置の構成を図５に示す。実施例５は、本発明のＵＰＣ装置をＩＰ網に適用する場合の実施例であり、パケット処理装置８は、ＩＰパケットのＳＡ／ＤＡにより、一定時間に新規にＩＰパケットを発生させたＳＡ／ＤＡを抽出する手段を備え、制御装置９は、このパケット処理装置８により抽出されたＳＡ／ＤＡを記録する手段と、アクティブフローテーブル１０の記録内容を一定周期でリセットする手段と、アクティブフローテーブル１０に記録されたＳＡ／ＤＡを有するＩＰパケット数または当該ＩＰパケットの総バイト数を計測し、その値が閾値以上の場合はＩＰパケットを廃棄する手段とを備える（請求項６）。
【００３５】
次に、実施例５のＵＰＣ装置の動作を説明する。制御装置９は、ＳＡ／ＤＡペアのＩＰパケットのフローをパケット処理装置８により検出すると、アクティブフローテーブル１０に記録する。例では、バイト数をベースにＵＰＣを行う。到着したＩＰパケットのフローのＳＡ／ＤＡがアクティブフローテーブル１０に有る場合は、カウンタ２２のバイト数をインクリメントして、閾値より大きい場合は、パケットを廃棄し、カウンタ２２を元の値に戻し、閾値より小さい場合は、パケットを通過させる。また、到着したＩＰパケットのフローのＳＡ／ＤＡがアクティブフローテーブル１０に未登録の場合は、新たにアクティブフローテーブル１０に登録し、さらに、当該フローのバイト数のカウンタ値もアクティブフローテーブル１０に格納する。閾値は全てのフローに関して一定である。また、このアクティブフローテーブル１０の記録内容は制御装置９によって、一定周期毎にリセット（全て消去）される。
【００３６】
また、本ＳＡ／ＤＡペアによるアクティブフローのＵＰＣも、実施例２のように、ネットワークの状況に応じて、閾値を変化させることができる。また、ＳＡだけでＵＰＣをできることは明白である。この場合、特定ユーザ（ソース）が専有できるリソースを制限できることになり、ＵＤＰフラッティングやＤｏＳ攻撃等の攻撃的ユーザによる攻撃に対抗することができる。
【実施例６】
【００３７】
実施例６のＵＰＣ装置の構成を図６に示す。実施例６は、制御装置９に、閾値をＳＡ／ＤＡ毎に決定する手段を備える（請求項７）。実施例６では、アクティブフローテーブル１１に加えてＳＡ毎に閾値が記録された閾値テーブル１２を備える。このように、ＳＡ毎に閾値を決めることにより、サービスの優先権や重要度を考えた制御をすることができる。また、本閾値テーブルに入っていないＳＡは、デフォルトの閾値となる。また、ＤＡ毎に閾値を決めてもよい。
【実施例７】
【００３８】
実施例７のＵＰＣ装置の構成を図７に示す。実施例７は、制御装置９に、閾値をＴＯＳに基づき決定する手段を備える（請求項８）。実施例７は、アクティブフローテーブル１３にＴＯＳの記録領域を設け、閾値テーブル１４にサービス種別の記録領域を設ける。
【００３９】
実施例７では、到着するＩＰパケットのＴＯＳフィールドまでを見て、サービスの種別を推定し、例えばＦＴＰ、例えばｗｗｗ等で最大許容されるレートを決めることができる。さらに、詳細に上位レイヤを識別して、例えばＴＣＰリクエスト（ＴＣＰ−Ｓｙｎ）パケットの場合はレートを大きく制限して１２８パケット／ｓｅｃ等にして、攻撃的なユーザを排除することも可能である。
【実施例８】
【００４０】
本発明は、汎用の情報処理装置にインストールすることにより、その情報処理装置に本発明のＵＰＣ装置の各手段に相応する機能を実現させるプログラムとして実現することができる（請求項９）。このプログラムは、記録媒体に記録されて情報処理装置にインストールされ（請求項１０）、あるいは通信回線を介して情報処理装置にインストールされることにより当該情報処理装置に、セル処理装置１、制御装置２、９、アクティブフローテーブル３、５、７、１０、１１、１３、閾値テーブル４、６、１２、１４、パケット処理装置８にそれぞれ相応する機能を実現させることができる。
【産業上の利用可能性】
【００４１】
本発明によれば、ＵＰＣをＡＴＭ網のみならずＩＰ網にも適用することができる。これにより、網管理者は、効率のより網運営を行うことができる。また、攻撃的ユーザによる影響を排除できる、あるいは、サービス毎にＵＰＣの閾値を変えることができるなど、ユーザに対するサービス品質を向上させることができる。
【図面の簡単な説明】
【００４２】
【図１】実施例１のＵＰＣ装置の構成図。
【図２】実施例２のＵＰＣ装置の構成図。
【図３】実施例３のＵＰＣ装置の構成図。
【図４】実施例４のアクティブフローテーブルの構成図。
【図５】実施例５のＵＰＣ装置の構成図。
【図６】実施例６のＵＰＣ装置の構成図。
【図７】実施例７のＵＰＣ装置の構成図。
【図８】従来のＡＴＭ用ＵＰＣ装置の構成図。
【図９】従来のＩＰパケットフローに対するＵＰＣ装置の構成図。
【符号の説明】
【００４３】
１、１５  セル処理装置
２、９、１６、１９  制御装置
３、５、７、１０、１１、１３  アクティブフローテーブル
４、６、１２、１４  閾値テーブル
８、１８  パケット処理装置
１７、２０  テーブル
２１〜２４  カウンタ
【図１】
2005057408.tif 000003
【図２】
2005057408.tif 000004
【図３】
2005057408.tif 000005
【図４】
2005057408.tif 000006
【図５】
2005057408.tif 000007
【図６】
2005057408.tif 000008
【図７】
2005057408.tif 000009
【図８】
2005057408.tif 000010
【図９】
2005057408.tif 000011