(57)【特許請求の範囲】
【請求項１】
受信したパケットのフローが確定しているか否かを判別するパケット判別部（１１１）と、
帯域制御条件を設定するためのシナリオが格納されているシナリオテーブル（１３）と、
前記パケット判別部によってフローが確定していないと判別された未確定パケットに付加されているヘッダ情報の特定のフィールドをマスクし、該マスクしたヘッダ情報に対応するシナリオを前記シナリオテーブルから検索することにより、前記未確定パケットのフローを確定するとともに、前記シナリオに対応する登録用の記憶領域（１５）を追加するフロー解析部（１２）と、
前記フロー解析部によりフローが確定された確定パケット、および、前記パケット判別部によってフローが確定していると判別された確定パケットを、確定したフローに対応する前記登録用の記憶領域に格納するパケット分類部（１１）と、
前記登録用の記憶領域に格納されたパケットを前記シナリオによってスケジューリングして送信するスケジューラ（１６）と、
を備えることを特徴とするパケット中継装置。
【請求項２】
前記パケット分類部は、追加された前記登録用の記憶領域として空き領域を割り当てることを特徴とする請求項１に記載のパケット中継装置。
【請求項３】
中継するパケットのヘッダ情報と前記ヘッダ情報より取り出されるフロー識別フィールドが登録されたフローテーブル（１７）をさらに備え、
前記パケット判別部は、前記フローテーブルに登録されているフロー識別フィールドに基づいて、受信したパケットのフローが確定しているか否かを判別することを特徴とする請求項１に記載のパケット中継装置。
【請求項４】
前記パケット分類部は、前記フロー解析部によりフローが確定された確定パケットの、前記登録用の記憶領域への格納に伴い、前記確定パケットのヘッダ情報より取り出されるフロー識別フィールドに基づいて、前記フローテーブルの登録を更新することを特徴とする請求項３に記載のパケット中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にはパケット通信においてパケットを中継するパケット中継装置に関し、より詳しくは、広帯域ネットワークにおいて帯域制御を行うパケット中継装置に関するものである。
【背景技術】
【０００２】
近年、帯域制御を行うパケット中継装置は、多数の拠点を有する大規模な企業の基幹ネットワークや、サービス事業者の大規模データセンタなどの広帯域ネットワークでの使用が急増している。
【０００３】
例えば、広帯域ネットワーク用のパケット中継装置は、任意の送信元から他の任意の受信先に転送する、固有の情報を含むパケットの流れであるフロー（識別可能なトラフィックの最小単位）の帯域制御を行い、限られた帯域の物理回線を共用してフローの仮想回線を構築するようになっている。
【０００４】
このような広帯域ネットワークで使用されるパケット中継装置は、各フローに対する通信サービスの品質（ＱｏＳ；Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）の保証および全てのフローに対する帯域制御を実行することが望ましい。
【０００５】
一般に、パケット中継装置は、中継のために受信したパケットとパケットの流量を決定するための最低帯域、最大帯域、バッファサイズなどのトラフィックアトリビュートとを関連付け、ＱｏＳの保証のための帯域制御を実行するようになっている。
【０００６】
ＱｏＳの保証のための帯域制御が可能なパケット中継装置として、ＱｏＳの保証のために各フローのプライオリティを格納するテーブルを有し、検出対象の全てのフローに対して、互いに異なる値をテーブルのフロー番号に使用するようにしたものがある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−２１７９６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記特許文献１に記載されたものは、全てのユーザ回線（アウターＶＬＡＮ）に帯域設定が必要である。さらに、ユーザ回線内トラフィッククラス（インナーＶＬＡＮ）にも帯域設定が必要であり、ユーザ回線は最大 ４０９４、その中に最大 ４０９４のトラフィッククラスを設定すると ４０９４ x ４０９４ の設定が必要となり、サービス提供側の運用管理コストが高くなってしまうという問題があった。
【０００９】
本発明は、従来の課題を解決するためになされたもので、受信したパケットに帯域を自動的に割り当てることが可能となり、サービス提供側の運用管理コストを低減できるパケット中継装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明のパケット中継装置は、受信したパケットのフローが確定しているか否かを判別するパケット判別部（１１１）と、帯域制御条件を設定するためのシナリオが格納されているシナリオテーブル（１３）と、前記パケット判別部によってフローが確定していないと判別された未確定パケットに付加されているヘッダ情報の特定のフィールドをマスクし、該マスクしたヘッダ情報に対応するシナリオを前記シナリオテーブルから検索することにより、前記未確定パケットのフローを確定するとともに、前記シナリオに対応する登録用の記憶領域（１５）を追加するフロー解析部（１２）と、前記フロー解析部によりフローが確定された確定パケット、および、前記パケット判別部によってフローが確定していると判別された確定パケットを、確定したフローに対応する前記登録用の記憶領域に格納するパケット分類部（１１）と、前記登録用の記憶領域に格納されたパケットを前記シナリオによってスケジューリングして送信するスケジューラ（１６）と、を備えている。
【００１１】
この構成により、本発明のパケット中継装置は、受信したパケットに帯域を自動的に割り当てることが可能となり、サービス提供側の運用管理コストを低減できる。
【００１２】
また、本発明のパケット中継装置において、前記パケット分類部は、追加された前記登録用の記憶領域として空き領域を割り当てるようにしてもよい。
【００１３】
この構成により、本発明のパケット中継装置は、割り当てるキューが存在しない場合にも、既存のキューを有効に利用できるようになる。
【００１４】
また、本発明のパケット中継装置において、中継するパケットのヘッダ情報と前記ヘッダ情報より取り出されるフロー識別フィールドが登録されたフローテーブル（１７）をさらに備え、前記パケット判別部は、前記フローテーブルに登録されているフロー識別フィールドに基づいて、受信したパケットのフローが確定しているか否かを判別するようにしてもよい。
【００１５】
この構成により、本発明のパケット中継装置は、受信したパケットを格納するためのキューがキューバッファに確保されているか否かを高速に判別できるようになる。
【００１６】
また、本発明のパケット中継装置において、前記パケット分類部は、前記フロー解析部によりフローが確定された確定パケットの、前記登録用の記憶領域への格納に伴い、前記確定パケットのヘッダ情報より取り出されるフロー識別フィールドに基づいて、前記フローテーブルの登録を更新するようにしてもよい。
【００１７】
この構成により、本発明のパケット中継装置は、新規のサービス利用者の加入ごとにフローテーブルの更新を行うことで、常に新規のサービス利用者の加入をチェックできるようになる。
【発明の効果】
【００１８】
本発明によれば、受信したパケットに帯域を自動的に割り当てることが可能となり、サービス提供側の運用管理コストを低減できるパケット中継装置を提供することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施の形態に係るパケット中継装置の要部を示すブロック図である。
【図２】本発明の実施の形態に係るパケット中継装置におけるパケットの構造およびヘッダ情報の内容を示す図である。
【図３】本発明の実施の形態に係るパケット中継装置におけるパケット受信時の処理の流れを説明するために示すフローチャートである。
【図４】本発明の実施の形態に係るパケット中継装置におけるフィルタとシナリオとの関係を示す図である。
【図５】本発明の実施の形態に係るパケット中継装置におけるキュー作成処理の流れを説明するために示すフローチャートである。
【図６】本発明の実施の形態に係るパケット中継装置におけるシナリオとキューバッファとの関係を示す図である。
【図７】本発明の実施の形態に係るパケット中継装置におけるフェイルアクションキュー処理の流れを説明するために示すフローチャートである。
【図８】本発明の実施の形態に係るパケット中継装置を動作させない場合のトラフィック状態を示す図である。
【図９】本発明の実施の形態に係るパケット中継装置を動作させた場合のトラフィック状態を示す図である。
【発明を実施するための形態】
【００２０】
以下に、本発明に係るパケット中継装置の実施の形態について、図面を参照して説明する。
【００２１】
＜概略構成＞
図１は、本発明の実施の形態に係るパケット中継装置の要部の構成を示すものである。
【００２２】
図１に示すように、パケット中継装置１０は、パケット分類部１１、フロー解析部１２、シナリオテーブル１３、フィルタテーブル１４、キューバッファ１５、スケジューラ１６、および、フローテーブル１７を備えている。
【００２３】
パケット分類部１１は、受信部（図示していない）、フロー解析部１２、キューバッファ１５、および、フローテーブル１７に接続されている。また、パケット分類部１１の内部には、パケット判別部１１１が設けられている。
【００２４】
シナリオテーブル１３、フィルタテーブル１４、および、キューバッファ１５は、それぞれフロー解析部１２に接続されている。
【００２５】
スケジューラ１６は、キューバッファ１５および送信部（図示していない）に接続されている。スケジューラ１６は、プライオリティキューイング（ＰＱ）の機能により、優先度の低いパケットＰがいくらキューに溜まっても、優先順位にしたがって、優先度の高いパケットＰから順に送信するようになっている。
【００２６】
キューバッファ１５は、複数のキュー１５１，１５２，...を備えている。各キュー１５１，１５２，...は、フロー（例えば、ＩＥＥＥ８０２．１ａｄ（ＱｉｎＱ）で規定されている二重ＶＬＡＮタグの外側（アウター）および内側（インナー）ＶＬＡＮ＿ＩＤ）が確定したパケット（確定パケット）Ｐを記憶する登録用の記憶領域である。
【００２７】
なお、キューバッファ１５の、例えば記憶領域１５ｎは、後述するフェイルアクションキュー（Ｆａｉｌ  Ａｃｔｉｏｎ  Ｑｕｅｕｅ）として利用されるようになっている。
【００２８】
フローテーブル１７には、図２に示すように、ヘッダ情報１９を構成するフロー識別フィールドが登録されている。フローテーブル１７には、キュー１５１，１５２，...のポインタが割り当てられるようになっている。
【００２９】
したがって、フローテーブル１７に登録されているフロー識別フィールドのパケットＰは確定パケットであり、登録されていないフロー識別フィールドのパケットＰは未確定パケットである。
【００３０】
図１に示すように、パケット中継装置１０は、図示していない受信部（受信ポート）を介して受信する送信元からのパケットＰが、たとえパケットＰ間の間隔が短いマイクロバースト状態であっても、スケジューラ１６によってパケットＰとパケットＰとの間に一定の間隔Ｔを設けて、図示していない送信部（出力ポート）を介して受信先に送信するようになっている。
【００３１】
図２は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）パケットＰのデータ構造を示すものである。
【００３２】
図２に示すように、パケットＰは、ヘッダ情報１９およびコンテンツデータ２０を有する構成になっている。また、ヘッダ情報１９は、例えば２個のフィールドのフロー識別フィールドにより構成されている。
【００３３】
フロー識別フィールドは、例えばアウターＶＬＡＮ＿ＩＤ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ  Ｉｄｅｎｔｉｆｙ）、インナーＶＬＡＮ＿ＩＤにより構成されている。フロー識別フィールドは、アウターＶＬＡＮ＿ＩＤおよびインナーＶＬＡＮ＿ＩＤに加えて、アウターＣｏＳ（Ｃｌａｓｓ  ｏｆ  Ｓｅｒｖｉｃｅ）、インナーＣｏＳ、ＳＩＰ（Ｓｏｕｒｃｅ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）、ＤＩＰ（Ｄｅｓｔｉｎａｔｉｏｎ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）、ＴｏＳ（Ｔｙｐｅ  ｏｆ  Ｓｅｒｖｉｃｅ）、プロトコル番号、Ｓｐｏｒｔ（Ｓｏｕｒｃｅ  Ｐｏｒｔ）番号、Ｄｐｏｒｔ（Ｄｅｓｔｉｎａｔｉｏｎ  Ｐｏｒｔ）番号を識別するようにしてもよい。
【００３４】
アウターＶＬＡＮ＿ＩＤは、ＬＡＮスイッチのポート番号を示す識別情報である。アウターＶＬＡＮ＿ＩＤは、企業の多数の拠点や東京都あるいは大阪府などの広い地域に対応するＬＡＮスイッチのポート番号である。例えば、東京都のネットワークはアウターＶＬＡＮ１０であり、大阪府のネットワークはアウターＶＬＡＮ２０となる。
【００３５】
アウターＣｏＳは、アウターＶＬＡＮ＿ＩＤにおける優先度を表している。
【００３６】
インナーＶＬＡＮ＿ＩＤは、企業の１つの拠点や新宿区あるいは渋谷区などの異なるＶＬＡＮ（例えば、アウターＶＬＡＮ１０およびアウターＶＬＡＮ２０）にそれぞれ収容される、ユーザ端末同士を接続可能にした場合の各ＶＬＡＮのＩＤである。例えば、東京都の新宿区のネットワークはインナーＶＬＡＮ１００であり、大阪府の梅田のネットワークはインナーＶＬＡＮ２００となる。
【００３７】
インナーＣｏＳは、インナーＶＬＡＮ＿ＩＤにおける優先度を表している。
【００３８】
ＳＩＰは、パケットＰを送信する送信元ＩＰアドレスを表している。ＤＩＰは、パケットＰを受信する受信先ＩＰアドレスを表している。ＴｏＳは、パケットＰの優先制御を行う際の優先度を表している。
【００３９】
プロトコル番号は、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）、ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）、および、その他の通信手順を表すプロトコルを識別する番号である。
【００４０】
Ｓｐｏｒｔ番号は、送信元ＩＰアドレスのポート番号である。Ｄｐｏｒｔ番号は、受信先ＩＰアドレスのポート番号である。
【００４１】
＜受信パケットの登録＞
次に、本発明の実施の形態に係るパケット中継装置１０のパケット中継処理の動作について説明する。
【００４２】
図３は、パケット中継装置１０のパケット受信処理の流れを説明するために示すものである。
【００４３】
パケット中継装置１０は、パケットＰを受信すると、メインルーチン（図示していない）から移行して、図３のパケット受信処理を実行する。
【００４４】
パケット中継装置１０のパケット分類部１１は、受信したパケットＰのヘッダ情報、すなわち図２に示したフロー識別フィールドを取り出す（ステップＳ１０１）。
【００４５】
次いで、パケット分類部１１のパケット判別部１１１は、フローテーブル１７を参照して（ステップＳ１０２）、受信したパケットＰのヘッダ情報より取り出されたフロー識別フィールドと一致するフロー識別フィールドがあるか否かを判別する（ステップＳ１０３）。
【００４６】
すなわち、パケット判別部１１１は、受信したパケットＰがフローテーブル１７に登録された確定パケットであるか、または、登録されていない未確定パケットであるかを、フロー識別フィールドに基づいて高速に判別する。
【００４７】
パケット分類部１１は、受信したパケットＰのフローが確定されている、つまり受信したパケットＰが確定パケットであるとパケット判別部１１１によって判別された場合（ステップＳ１０３；ＹＥＳ）、そのパケットＰをキューバッファ１５内の確定されたフローに対応するキュー１５１，１５２，...に格納する（ステップＳ１０４）。
【００４８】
パケット分類部１１は、フローテーブル１７に登録された確定パケットを受信している限り、ステップＳ１０１〜ステップＳ１０４の処理を繰り返すことによって、受信したパケットＰを高速に分類して各キュー１５１，１５２，...に格納する。これにより、受信したパケットＰが集中したとしても、パケットＰの廃棄またはＢＥ（ベストエフォート）を回避できる。
【００４９】
キューバッファ１５に格納された各フローのパケットＰは、スケジューラ１６により、各フローの優先度にしたがって、優先度の高いパケットＰから順に、図示していない送信部を介して、受信先ＩＰアドレスに向けて送信される。
【００５０】
一方、パケット分類部１１は、受信したパケットＰのフローが確定していない、つまり受信したパケットＰが未確定パケットであるとパケット判別部１１１によって判別された場合（ステップＳ１０３；ＮＯ）、パケット分類部１１は、パケットＰのヘッダ情報の解析をフロー解析部１２に要求する（ステップＳ１０６）。
【００５１】
すなわち、図１に示した「１」のパケットＰを初めて受信した場合には、「１」のパケットＰのヘッダ情報はフローテーブル１７に登録されていないため、そのパケットＰのフローを確定するためにヘッダ情報をフロー解析部１２に提供する。
【００５２】
ステップＳ１０６の後、パケット分類部１１は、フロー解析部１２から解析結果を取得したか否かを判別する（ステップＳ１０９）。フロー解析部１２からのフロー解析結果の通知は、例えば割り込み処理で行われる。
【００５３】
フロー解析部１２は、フィルタテーブル１４に格納されているフィルタおよびシナリオテーブル１３に格納されているシナリオに基づいて、パケット分類部１１から要求されたヘッダ情報に対応するパケットのフローおよび帯域制御を確定する。フィルタおよびシナリオについては、後述する。
【００５４】
パケット分類部１１は、フロー解析部１２から解析結果を取得したとき（ステップＳ１０９；ＹＥＳ）、フロー解析部１２に指示してキュー作成処理を実行させる（ステップＳ１１３）。
【００５５】
ステップＳ１１３のキュー作成処理は、例えばパケットＰを格納するキューがない場合にキューを新たに作成するための処理であって、詳細については後述する。
【００５６】
＜キュー作成処理＞
次に、本発明の実施の形態に係るパケット中継装置１０において、図１に示したシナリオテーブル１３およびフィルタテーブル１４に基づいた帯域制御について説明する。
【００５７】
ここで、パケット中継装置１０は、例えば最大で１０Ｇｂｐｓまでの広帯域ネットワークでの帯域制御が可能とされることで、多数の拠点を有する大規模な企業の基幹ネットワークやサービス事業者の大規模データセンタなどでの使用に適したものとなる。
【００５８】
また、パケット中継装置１０は、このような広帯域ネットワークの拠点単位でグルーピングを行って帯域を確保し、その配下で、サービスやホストごとに帯域を保証または制限する階層化制御を行うようになっている。本パケット中継装置１０の場合、例えば８階層までの階層化制御が行えるようになっている。
【００５９】
パケット中継装置１０は、第１階層（レベル１）において、物理回線帯域を任意の帯域で割り当てた第２階層（レベル２）以下の仮想回線の帯域制御を行う。
【００６０】
パケット中継装置１０は、レベル２において、会社や拠点、ユーザなどのフローまたはトラフィック（以下、「フロー」と総称する）を分類し、レベル２の仮想回線に流すことで、仮想回線ごとに回線帯域を分割し、それぞれに個別の帯域を割り当てる。
【００６１】
パケット中継装置１０は、レベル３〜レベル８においても同様に、ユーザなどのフローを分類し、そのレベルの仮想回線ごとに帯域制御を行う。
【００６２】
パケット中継装置１０のフロー解析部１２は、パケット分類部１１から提供されるパケットＰのヘッダ情報を、フィルタテーブル１４に格納されているフィルタで定義されるフィルタルールにより分類し、そのパケットＰのフローを確定する。
【００６３】
フィルタの種類には、スイッチコントロール用受信先ＭＡＣアドレスパケットを対象とするＢｒｉｄｇｅ−ｃｔｒｌフィルタ、イーサネット（登録商標）のフィールドを対象とするＥｔｈｅｒｎｅｔ（登録商標）フィルタ、ＩＰパケットを対象とするＩＰフィルタなどがある。
【００６４】
ＩＰパケットＰをＩＰフィルタにより分類する場合は、ＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  Ｖｅｒｓｉｏｎ  ６）またはＩＰｖ４（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  Ｖｅｒｓｉｏｎ  ４）の、ＩＰパケットＰのフロー識別フィールドの値を用いて細分化することができる。
【００６５】
例えば、図２に示したＩＰパケットＰのフロー識別フィールドを、アウターおよびインナーＶＬＡＮ＿ＩＤに細分化する。
【００６６】
フロー解析部１２は、フィルタをシナリオテーブル１３に格納されているシナリオに結びつけ、フローが確定したパケットＰの帯域制御を行う。各シナリオには、クラス（キューの優先順位）、最低帯域、最大帯域、バッファサイズなどの帯域制御条件が設定されている。
【００６７】
ここで、フィルタは、複数のフィルタを同一のシナリオに結び付けることができる。
【００６８】
図４は、本発明の実施の形態に係るパケット中継装置１０におけるフィルタとシナリオとの関係を示すものである。
【００６９】
図４において、２つの異なる第１フィルタ（ＳＩＰ＝１９２．１６８．３．１０）１４ａおよび第２フィルタ（ＳＩＰ＝１９２．１６８．７．５６）１４ｂは、同一の第１シナリオ（最低帯域：２Ｍｂｐｓ、最大帯域：４Ｍｂｐｓ、バッファサイズ：１Ｍバイト）１３ａに対応している。
【００７０】
したがって、第１フィルタ１４ａの条件に一致するＳＩＰ（１９２．１６８．３．１０）１のサービス利用者が新規の契約により加入した場合、フロー解析部１２は、例えば最低帯域：２Ｍｂｐｓ、最大帯域：４Ｍｂｐｓ、バッファサイズ：１Ｍバイトの第１シナリオ１３ａをシナリオテーブル１３に作成する。
【００７１】
この場合には、フロー解析部１２によってＳＩＰ１のフローが確定されるので、パケット分類部１１は、シナリオ１の最低帯域、最大帯域、バッファサイズ、および、ＳＩＰ１の他のフロー識別フィールドに適合する、フローが確定したパケットＰをキューバッファ１５の登録用の記憶領域（例えば、記憶領域１５ｎ）に格納する。
【００７２】
その後に、新たなサービス利用者の追加によって、第２フィルタ１４ｂの条件に一致するＳＩＰ（１９２．１６８．７．５６）２が新規に契約された場合、その新規のＳＩＰ２に対応する新たなシナリオを作成することなく、第１フィルタ１４ａの条件に対応するＳＩＰ１の第１シナリオ１３ａを活用することになる。
【００７３】
この場合、ＳＩＰ２のフローが確定できないので（図３のステップＳ１１０；ＮＯに該当）、処理がステップＳ１１３に移行する。すなわち、フロー解析部１２は、ＳＩＰ２のパケットＰを格納するためのキューを、キューバッファ１５の登録用の記憶領域（例えば、キュー１５ｊ）として作成する。
【００７４】
図５は、図３のステップＳ１１３に示した、フロー解析部１２によるキュー作成処理の流れを説明するために示すものである。また、図６は、パケット中継装置１０における、シナリオとキューバッファとの関係を示すものである。
【００７５】
図５において、フロー解析部１２は、フローが未確定のパケットＰのヘッダ情報のうち、特定のフィールドである「インナーＶＬＡＮ＿ＩＤ」および「インナーＣｏＳ」をマスクする（ステップＳ２０１）。
【００７６】
この処理は、例えば０から４０９４までの範囲の「インナーＶＬＡＮ＿ＩＤ」および０から７までの範囲の「インナーＣｏＳ」を許容する。すなわち、ＱｉｎＱにおける全てのインナーＶＬＡＮ＿ＩＤおよびＩＥＥＥ８０２．１Ｑ  ＶＬＡＮ内の全てのＣｏＳを許容する。
【００７７】
次いで、フロー解析部１２は、マスクしたヘッダ情報に対応するシナリオ番号（または、シナリオ名）をシナリオテーブル１３の中から検索する（ステップＳ２０２）。
【００７８】
検索結果は、図６の上段に示すように、シナリオ番号とマスクしたヘッダ情報１９ａとが対応した関係になる。
【００７９】
次いで、フロー解析部１２は、キューバッファ１５において、シナリオ番号に対応するキューグループ内の空きキューを探す（ステップＳ２０３）。具体的には、シナリオ番号が「１」である場合には、図６の中段に示すように、キューバッファ１５のシナリオ番号１内において、フラグ（例えば、使用中＝１；空き＝０）を検索して空きキューを探す。
【００８０】
フロー解析部１２は、空きキューが存在しているか否かを判別し（ステップＳ２０４）、空きキューが存在しているときは、「インナーＶＬＡＮ＿ＩＤ」および「インナーＣｏＳ」に対応する独立キュー（Ｉｎｄｉｖｉｄｕａｌ  Ｑｕｅｕｅ）を割り当てる（ステップＳ２０５）。
【００８１】
すなわち、図６の下段に示すように、シナリオ番号１と「インナーＶＬＡＮ＿ＩＤ」および「インナーＣｏＳ」のみを含むヘッダ情報１９ｂとの対応関係に基づいて、キューのポインタ（例えば、「ｊ」）を指定して、そのフラグを「１」にセットする。
【００８２】
次いで、パケット分類部１１は、追加されたキュー（例えば、キュー１５ｊ）にパケットＰを格納する（ステップＳ２０６）。
【００８３】
この後、パケット分類部１１は、キュー作成処理を終了して図３にリターンしてもよいが、例えば追加したサービス利用者のパケットのヘッダ情報をフロー識別フィールドとしてフローテーブル１７に登録する（ステップＳ２０７）。
【００８４】
このように、本発明の実施の形態に係るパケット中継装置１０によれば、サービス利用者の追加があった場合でも、新たにシナリオを追加することなく、そのサービス利用者から受信したパケットＰをキュー（１５ｊ）に自動的に格納できる。
【００８５】
したがって、本パケット中継装置１０は、サービス利用者の追加があるたびにシナリオを作成する必要がなくなり、シナリオ作成処理に要する時間を短縮することが可能となる結果、操作性を向上できるとともに、たとえバースト状態であってもパケットの廃棄またはＢＥを低減することが可能となる。
【００８６】
なお、フロー解析部１２は、シナリオ番号に対応するキューグループ内に空きキューが存在していないと判別したときは（図５のステップＳ２０４；ＮＯ）、フェイルアクションキュー処理を実行する（ステップＳ２０８）。ステップＳ２０８でのフェイルアクションキュー作成処理については、後述する。
【００８７】
また、図５および図６に示したキュー作成処理において、フロー解析部１２は、キューバッファ１５よりシナリオ番号に対応するキューグループ内の空きキューを探すようにしたが、グループに関係なく、キューバッファ１５全体の中で空きキューを探すようにしてもよい。
【００８８】
＜フェイルアクションキュー処理＞
次に、サービス利用者の追加があったときに、その契約に係るシナリオの最低帯域、最大帯域、バッファサイズ、クラスに該当する独立キューが存在しない場合の、パケット中継処理の対策について説明する。
【００８９】
図７は、図５のステップＳ２０８に示したフロー解析部１２のフェイルアクションキュー処理の流れを説明するために示すものである。
【００９０】
図１に示したように、キューバッファ１５の一部の記憶領域１５ｎには、最低帯域、最大帯域、バッファサイズ、クラスが制限されたフェイルアクションキュー（例えば、１つまたは複数のキュー）が設けられている。
【００９１】
ここで、フェイルアクションキュー全体の帯域が、例えば、１Ｍｂｐｓに限定されており、１０名のサービス利用者の追加があったとした場合、各サービス利用者が１Ｍｂｐｓを共有するので、それぞれのシナリオの帯域が１Ｍｂｐｓであるとすると、各サービス利用者の割当帯域は１００Ｋｂｐｓとなる。
【００９２】
図７において、フロー解析部１２は、サービス利用者の追加があったときに、帯域１Ｍｂｐｓの独立キューが存在しない場合、フェイルアクションキュー１５ｎを指定する（ステップＳ３０１）。
【００９３】
次いで、フロー解析部１２は、指定したフェイルアクションキュー１５ｎに追加があったサービス利用者のパケットＰを格納する（ステップＳ３０２）。
【００９４】
すなわち、フロー解析部１２は、シナリオで指定された最大数のキューを使用しているなどの理由により既にパケット中継装置１０のキューが枯渇している場合に、新たにＩＰパケットＰのフロー識別フィールド（図２参照）のうち、例えばインナーＶＬＡＮ＿ＩＤおよびアウターＶＬＡＮ＿ＩＤの異なるサービス利用者の追加があると、当該ＩＰパケットＰをフェイルアクションキュー１５ｎに格納させる。
【００９５】
この後、パケット中継装置１０は、帯域制御を維持しつつ、限定された帯域のフェイルアクションキュー１５ｎから読み出したパケットＰを、受信先（ＤＩＰ）のサービス利用者に転送する。
【００９６】
なお、図７のステップＳ３０２の処理の後、フロー解析部１２は、フェイルアクションキュー処理を終了して図５のフローチャートにリターンしてもよいが、適宜、独立キューに空きが発生したかどうかを検索するようにしてもよい。
【００９７】
この場合、フロー解析部１２は、ステップＳ３０２の処理の後、独立キューに空きが発生したか否かを判別し（ステップＳ３０３）、空きキューが発生したときは、フェイルアクションキュー１５ｎのパケットＰをその空きキューに移動する（ステップＳ３０４）。
【００９８】
このように、本発明の実施の形態に係るパケット中継装置１０は、サービス利用者の追加があったときに、パケットＰを格納するための独立キューが存在しない場合であっても、トラフィックコントロールが可能となるため、パケットの廃棄またはＢＥを回避することができる。
【００９９】
しかも、本パケット中継装置１０の場合、サービス利用者が追加されるたびに、常に追加のサービス利用者を管理者の制御下のもとで管理できるようになるものである。
【０１００】
上記したように、本発明の実施の形態によれば、受信したパケットに帯域を自動的に割り当てることが可能となり、受信したパケットの廃棄または帯域制御を行わないＢＥを低減できるパケット中継装置を提供することができる。
【０１０１】
図８は、本パケット中継装置１０を動作させない場合のトラフィック状態を示す図である。また、図９は図８と同じ条件で、本パケット中継装置を動作させた場合のトラフィック状態を示す図である。どちらも、トラフィック状態は１ｍｓｅｃの分解能でサンプリングしてグラフ化したものである。
【０１０２】
図８のように、本パケット中継装置１０が動作しない場合は、瞬間的に突出した流量を示すようなトラフィック（バーストトラフィック）が現れることが示されている。図８の場合、平均のトラフィックは２Ｍｂｐｓであるのに対し、ピーク値は４６８Ｍｂｐｓであった。
【０１０３】
一方、図９のように、本パケット中継装置１０を動作させた場合は、バーストトラフィックが抑えられ、かつ、転送レートが安定していることが示されている。図９の場合、平均のトラフィックは２Ｍｂｐｓであり、ピーク値は１１Ｍｂｐｓであった。
【０１０４】
以上のように、本パケット中継装置１０を動作させることにより、バーストトラフィックが平滑化されることがわかる。これによって、中継路の他の装置によってパケットの廃棄が起きることも防止される。
【０１０５】
なお、上記した本発明の実施の形態に係るパケット中継装置１０の構成は、本発明を限定するものではない。上記の実施の形態に基づいて当業者が容易に変形または修正できる実施の形態も本発明の技術的範囲に属するものである。
【０１０６】
以上により、本発明のパケット中継装置は、受信したパケットに帯域を自動的に割り当てることが可能となり、サービス提供側の運用管理コストを低減できるという効果を有し、パケット中継装置の全般に有用である。
【符号の説明】
【０１０７】
１０  パケット中継装置
１１  パケット分類部
１２  フロー解析部
１３  シナリオテーブル
１４  フィルタテーブル
１５  キューバッファ
１６  スケジューラ
１７  フローテーブル
１９  ヘッダ情報
１１１  パケット判別部
Ｐ  パケット
【図１】
0005970015.tif 000002
【図２】
0005970015.tif 000003
【図３】
0005970015.tif 000004
【図４】
0005970015.tif 000005
【図５】
0005970015.tif 000006
【図６】
0005970015.tif 000007
【図７】
0005970015.tif 000008
【図８】
0005970015.tif 000009
【図９】
0005970015.tif 000010