(57)【要約】【課題】予測入力帯域を適切に決定することによって、パケット転送装置の消費電力を低減することができるパケット転送装置の制御方法及び制御装置を提供する。【解決手段】複数のパケット処理回路を備えたパケット転送装置において、複数のパケット処理回路の動作を制御する。単位時間の間にパケット転送装置に入出力されるパケットのパケット情報の履歴を蓄積する第１の手順と、パケット情報の履歴に基づいて、各単位時間の間にパケット転送装置に入力されたパケットの入力帯域を算出する第２の手順と、パケット情報の履歴に基づいて、各単位時間の間にパケット転送装置のキューに蓄積されたパケット数を算出する第３の手順と、単位時間毎の入力帯域と、単位時間毎のパケット数とに応じて、動作させるパケット処理回路の処理性能の制御情報を設定する第４の手順と、設定された制御情報に基づいて、複数のパケット処理回路の動作を制御する第５の手順とを含む。【選択図】図１
2011250237.tif 000002
【特許請求の範囲】
【請求項１】
入力されたパケットのヘッダ情報に基づいてパケット処理を実行する複数のパケット処理回路を備えたパケット転送装置において、前記複数のパケット処理回路の動作を制御する方法であって、
単位時間の間に前記パケット転送装置に入出力されるパケットのパケット数、パケット長を含むパケット情報の履歴を蓄積する第１の手順と、
蓄積された前記パケット情報の履歴に基づいて、各単位時間の間に前記パケット転送装置に入力されたパケットの入力帯域を算出する第２の手順と、
蓄積された前記パケット情報の履歴に基づいて、各単位時間の間に前記パケット転送装置が備えるキューに蓄積されたパケット数を算出する第３の手順と、
算出された前記単位時間毎のパケットの入力帯域と算出された前記単位時間毎のキューに蓄積されたパケット数とに応じて、前記複数のパケット処理回路のうち動作させるパケット処理回路の処理性能の制御情報を設定する第４の手順と、
設定された前記制御情報に基づいて、前記複数のパケット処理回路の動作を制御する第５の手順と、
を含むことを特徴とするパケット転送装置の制御方法。
【請求項２】
前記制御情報は、前記動作させるパケット処理回路の数及び動作周波数の少なくとも一方を制御する情報を含み、
前記第４の手順では、設定すべき制御情報と、前記単位時間毎のパケットの入力帯域及び前記単位時間毎のキューに蓄積されたパケット数と、を関連付けた制御情報変換表を用いて、前記単位時間のうち現在の時刻に対応する時間に関連付けられた設定すべき制御情報を、現在の時刻の制御情報として設定することを特徴とする請求項１に記載のパケット転送装置の制御方法。
【請求項３】
前記制御情報を設定する手順では、所定の単位時間の間にキューに蓄積されたパケット数が所定の閾値よりも大きい場合、前記動作させるパケット処理回路の処理性能を向上させる旨を、前記所定の単位時間に対応する時刻の制御情報として設定することを特徴とする請求項１に記載のパケット転送装置の制御方法。
【請求項４】
前記制御情報を設定する手順では、
所定の単位時間の間の前記入力帯域の分散が所定の閾値よりも小さい場合、前記入力帯域の時間変化に合わせて、前記動作させるパケット処理回路の処理性能を変化させる旨を、前記所定の単位時間に対応する時刻の制御情報として設定し、
所定の単位時間の間の前記入力帯域の分散が所定の閾値よりも大きい場合、前記動作させるパケット処理回路の処理性能を維持する旨を、前記所定の単位時間に対応する時刻の制御情報として設定することを特徴とする請求項１に記載のパケット転送装置の制御方法。
【請求項５】
前記制御情報を設定する手順では、算出された前記単位時間毎のパケットの入力帯域の上限値と下限値との範囲内で、前記制御情報を設定することを特徴とする請求項１に記載のパケット転送装置の制御方法。
【請求項６】
前記制御する手順では、短期間の制御の場合、前記動作させるパケット処理回路の動作周波数を制御し、長期間の制御の場合、前記動作させるパケット処理回路の個数を制御することを特徴とする請求項１に記載のパケット転送装置の制御方法。
【請求項７】
前記パケット転送装置には、プログラムを実行するプロセッサと、前記プロセッサによって実行されるプログラムを格納するメモリと、前記プロセッサに接続されたインタフェースとを備えた制御装置が接続されており、
前記制御装置が、前記第１の手順と、前記第２の手順と、前記第３の手順と、前記第４の手順と、を実行し、
前記パケット転送装置が、前記５の手順を実行することを特徴とする請求項１に記載のパケット転送装置の制御方法。
【請求項８】
前記パケット転送装置は、プログラムを実行するプロセッサと、前記プロセッサによって実行されるプログラムを格納するメモリと、前記プロセッサに接続されたインタフェースとを備え、
前記パケット転送装置が、前記第１の手順と、前記第２の手順と、前記第３の手順と、前記第４の手順と、前記第５の手順と、を実行することを特徴とする請求項１に記載のパケット転送装置の制御方法。
【請求項９】
前記パケット転送装置には、前記パケット転送装置を制御する制御装置が接続され、
前記パケット転送装置、前記制御装置の各々は、プログラムを実行するプロセッサと、前記プロセッサによって実行されるプログラムを格納するメモリと、前記プロセッサに接続されたインタフェースとを備え、
前記制御装置は、前記第１の手順と、前記第２の手順と、前記第３の手順と、前記第４の手順と、を実行し、
前記パケット転送装置は、前記第１の手順と、前記第２の手順と、前記第３の手順と、前記第４の手順と、前記第５の手順を実行し、
前記方法は、さらに、前記パケット転送装置が、前記パケット転送装置が備えるキューに蓄積されたパケット数の急激な増加を判定する第６の手順を含み、
前記第５の手順では、
前記第６の手順において前記キューに蓄積されたパケット数の急激な増加が判定された場合、前記パケット転送装置は、前記パケット転送装置が前記第４の手順により設定した制御情報に基づいて、前記複数のパケット処理回路の動作を制御し、
前記第６の手順において前記キューに蓄積されたパケット数の急激な増加が判定されない場合、前記パケット転送装置は、前記制御装置が前記第４の手順により設定した制御情報に基づいて、前記複数のパケット処理回路の動作を制御することを特徴とする請求項１に記載のパケット転送装置の制御方法。
【請求項１０】
入力されたパケットのヘッダ情報に基づいてパケット処理を実行する複数のパケット処理回路を備えたパケット転送装置に接続され、前記複数のパケット処理回路の動作を制御する制御装置であって、
単位時間の間に前記パケット転送装置に入出力されるパケットのパケット数、パケット長を含むパケット情報の履歴を蓄積する蓄積部と、
蓄積された前記パケット情報の履歴に基づいて、各単位時間の間に前記パケット転送装置に入力されたパケットの入力帯域を算出する入力帯域計算部と、
蓄積された前記パケット情報の履歴に基づいて、各単位時間の間に前記パケット転送装置が備えるキューに蓄積されたパケット数を算出する入力キュー長計算部と、
算出された前記単位時間毎のパケットの入力帯域と算出された前記単位時間毎のキューに蓄積されたパケット数とに応じて、前記複数のパケット処理回路のうち動作させるパケット処理回路の処理性能の制御情報を設定する制御情報設定部と、
を備えることを特徴とする制御装置。
【請求項１１】
前記制御情報は、前記動作させるパケット処理回路の数及び動作周波数の少なくとも一方を制御する情報を含み、
前記制御情報設定部は、設定すべき制御情報と、前記単位時間毎のパケットの入力帯域及び前記単位時間毎のキューに蓄積されたパケット数と、を関連付けた制御情報変換表を用いて、前記単位時間のうち現在の時刻に対応する時間に関連付けられた設定すべき制御情報を、現在の時刻の制御情報として設定することを特徴とする請求項１０に記載の制御装置。
【請求項１２】
前記制御情報設定部は、所定の単位時間の間にキューに蓄積されたパケット数が所定の閾値よりも大きい場合、前記動作させるパケット処理回路の処理性能を向上させる旨を、前記所定の単位時間に対応する時刻の制御情報として設定することを特徴とする請求項１０に記載の制御装置。
【請求項１３】
前記制御情報設定部は、
所定の単位時間の間の前記入力帯域の分散が所定の閾値よりも小さい場合、前記入力帯域の時間変化に合わせて、前記動作させるパケット処理回路の処理性能を変化させる旨を、前記所定の単位時間に対応する時刻の制御情報として設定し、
所定の単位時間の間の前記入力帯域の分散が所定の閾値よりも大きい場合、前記動作させるパケット処理回路の処理性能を維持する旨を、前記所定の単位時間に対応する時刻の制御情報として設定することを特徴とする請求項１０に記載の制御装置。
【請求項１４】
前記制御情報設定部は、算出された前記単位時間毎のパケットの入力帯域の上限値と下限値との範囲内で、前記制御情報を設定することを特徴とする請求項１０に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット転送装置の制御方法に関し、特に、省電力にパケットを転送するためのパケット転送装置の制御方法に関する。
【背景技術】
【０００２】
ルータ、スイッチなどのパケット転送装置の高速化には、ＡＳＩＣ（Application Specific Integrated Circuit）などのデバイスの数を多くしたり、パケット転送装置の動作周波数を高くしたりする必要がある。しかしながら、このような方法で高速化させると、パケット転送装置の消費電力が増加する。このため、パケット転送装置の消費電力を低減すること、すなわち高速化に伴う消費電力の増加を最小限とすることが求められている。
【０００３】
パケット転送装置の消費電力を低減する方法は、例えば、特許文献１に開示されている。特許文献１に開示されたパケット転送装置によれば、パケットを処理するパケット処理回路の電力を、通信を実施する回線数に応じた電力とすることができる。即ち、通信を実施する回線数が少ない場合、パケット転送装置の消費電力を低減することができる。さらに、パケット処理回路の電力を、処理するパケットの帯域に応じた電力とすることができる。即ち、パケット転送装置が送受信するパケット量が少ない場合、パケット転送装置の消費電力を低減することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１１１７０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１に開示されたパケット転送装置によれば、さらに、動作させるパケット処理回路の個数を、外部の制御端末が通知する予測入力帯域に応じた個数とすることができる。即ち、予測入力帯域が小さい場合、動作させるパケット処理回路の個数を減らすことによって消費電力を低減することができる。しかしながら、この予測入力帯域の決定方法については考慮されていなかった。
【０００６】
本発明は、上述した課題を考慮したものであって、予測入力帯域を適切に決定することによって、パケット転送装置の消費電力を低減することができるパケット転送装置の制御方法及び制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、入力されたパケットのヘッダ情報に基づいてパケット処理を実行する複数のパケット処理回路を備えたパケット転送装置において、前記複数のパケット処理回路の動作を制御する方法であって、単位時間の間に前記パケット転送装置に入出力されるパケットのパケット数、パケット長を含むパケット情報の履歴を蓄積する第１の手順と、蓄積された前記パケット情報の履歴に基づいて、各単位時間の間に前記パケット転送装置に入力されたパケットの入力帯域を算出する第２の手順と、蓄積された前記パケット情報の履歴に基づいて、各単位時間の間に前記パケット転送装置が備えるキューに蓄積されたパケット数を算出する第３の手順と、算出された前記単位時間毎のパケットの入力帯域と算出された前記単位時間毎のキューに蓄積されたパケット数とに応じて、前記複数のパケット処理回路のうち動作させるパケット処理回路の処理性能の制御情報を設定する第４の手順と、設定された前記制御情報に基づいて、前記複数のパケット処理回路の動作を制御する第５の手順と、を含むことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、予測入力帯域を適切に決定することによって、パケット転送装置の消費電力を低減することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態の計算機システムの一構成例を示す図である。
【図２】本発明の第１の実施形態の制御端末のハードウェア構成例を示す図である。
【図３】本発明の第１の実施形態のパケット転送装置の一構成例を示す図である。
【図４】本発明の第１の実施形態のパケット転送装置が送受信するパケットのデータフォーマットの一例を示す図である。
【図５】本発明の第１の実施形態のパケット転送装置の内部におけるパケットのデータフォーマットの一例を示す図である。
【図６】本発明の第１の実施形態のヘッダ処理部の一構成例を示す図である。
【図７】本発明の第１の実施形態のヘッダ情報蓄積部の一構成例を示す図である。
【図８】本発明の第１の実施形態の制御情報設定部の制御ロジックを示すフローチャートである。
【図９】本発明の第１の実施形態の制御情報設定部の制御ロジックを示すフローチャートである。
【図１０】本発明の第１の実施形態の制御情報設定部の制御ロジックを示すフローチャートである。
【図１１】本発明の第１の実施形態の制御情報変換表の一構成例を示す図である。
【図１２】本発明の第２の実施形態のパケット転送装置の一構成例を示す図である。
【図１３】本発明の第２の実施形態の制御設定補正部の一構成例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の各実施形態について図面に基づいて説明する。
【００１１】
（第１の実施形態）
本発明の第１の実施形態の制御端末１００、制御端末１００の制御対象のパケット転送装置２００の各装置について説明する。
【００１２】
図１は、本発明の第１の実施形態の計算機システム１の一構成例を示す図である。図１に示す計算機システム１は、制御端末１００、制御端末１００の制御対象の複数のパケット転送装置２００を備える。
【００１３】
制御端末１００は、統計情報受信部１０１と、統計情報計算部１０２と、統計情報蓄積部１０３と、制御情報設定部１０４と、制御情報変換表１０５と、制御情報送信部１０６と、制御対象情報蓄積部１１０とを備える。また、統計情報計算部１０２は、入力帯域計算部１０７と、入力キュー長計算部１０８とを含む。
【００１４】
以下、制御端末１００の各部の動作を説明する。なお、以下の説明では制御端末１００が１台のパケット転送装置２００を制御する場合を例に説明する。制御端末１００が複数のパケット転送装置２００を制御する場合には、制御端末１００の各部は、各々のパケット転送装置２００に対して同様に動作する。
【００１５】
統計情報受信部１０１は、パケット転送装置２００から、パケット転送装置２００に蓄積された統計情報を所定の頻度で受信する。ここでいう統計情報とは、パケット転送装置２００のポート毎のパケットの総数やパケット長の総和等の統計情報である。統計情報受信部１０１が統計情報を受信する頻度は、例えば一分間等の時間ウインドウの間隔である。統計情報受信部１０１が受信した統計情報は、統計情報計算部１０２を介して統計情報蓄積部１０３に蓄積される。
【００１６】
統計情報計算部１０２は、統計情報受信部１０３に蓄積された統計情報と、制御対象情報蓄積部１１０に蓄積された制御対象情報（詳細には後述）とに基づいて、入力帯域計算部１０７、入力キュー長計算部１０８により後述する計算（統計処理を含む）を実行する。計算結果は、統計情報蓄積部１０３に送信される。
【００１７】
なお、以下の説明においては、統計情報受信部１０１が一つの時間ウインドウの統計情報を受信し、入力帯域計算部１０７、入力キュー長計算部１０８はこの一つの時間ウインドウの統計情報に基づいて計算を実行する場合を例に説明する。実際には、統計情報受信部１０１は各時間ウインドウの統計情報を受信し、入力帯域計算部１０７、入力キュー長計算部１０８は各時間ウインドウの統計情報に基づいて同様の計算を実行する。
【００１８】
入力帯域計算部１０７は、統計情報受信部１０１が受信した所定の時間ウインドウの統計情報に基づき、パケット転送装置２００のポート毎の入力帯域等を計算する。具体的には、パケット転送装置２００のポート毎に、時間ウインドウの逆数とパケットの総数とを積算することによって、ポート毎のパケット処理速度（単位：パケット毎秒（packet per second、pps））を算出する。また、パケット転送装置２００のポート毎に、時間ウインドウの逆数とパケット長の総和とを積算することによって、ポート毎の入力帯域（単位：ビット毎秒（bit per second、bps））を算出する。一方、入力キュー長計算部１０８は、統計情報受信部１０１が受信した所定の時間ウインドウの統計情報に基づき、パケット転送装置２００の入力（受信）キュー毎に、キューに蓄積されたパケットの長さ（キュー長）を計算する。
【００１９】
統計情報蓄積部１０３は、統計情報計算部１０２によって求められたパケット転送装置２００のポート毎のパケット処理速度、入力帯域、及び、入力キュー毎のキュー長等の統計情報（以下、前述の統計情報と区別するため、「計算後統計情報」という。）を蓄積する。なお、統計情報蓄積部１０３は、この計算後統計情報を、当該計算後統計情報を求めるための統計情報が統計情報受信部１０１によって受信された時刻に関連付けて蓄積する。結果として、統計情報蓄積部１０３は、時刻（時間ウインドウ）毎の計算後統計情報を蓄積することになる。
【００２０】
また統計情報蓄積部１０３は、時刻毎の計算後統計情報に対して統計情報計算部１０２が統計処理を実行することによって求められる、時刻毎の平均入力帯域を、例えば同じ曜日の同時刻の時間ウインドウでのスケジュールしたパケット転送装置２００の性能予測値（以下、単に「性能予測値」という。）として蓄積する。即ち、統計情報蓄積部１０３は、時刻（時間ウインドウ）毎の性能予測値を蓄積する。さらに統計情報蓄積部１０３は、時刻毎の計算後統計情報に対して統計情報計算部１０２が統計処理を実行することによって求められる、時刻毎の性能予測値の変化量、時刻毎のキュー長の変化量、性能予測値の分散を併せて蓄積する。
【００２１】
制御情報設定部１０４は、統計情報蓄積部１０３に蓄積された計算後統計情報と、制御情報変換表１０５とに基づいて、パケット転送装置２００に送信する制御情報を設定する。具体的には、まず統計情報蓄積部１０３に蓄積された時刻毎の性能予測値、性能予測値の変化量及びキュー長の変化量に対応する補正量を、制御情報変換表１０５から取得する。次に取得された補正量に基づいて性能予測値を補正する。制御情報設定部１０４は、補正された性能予測値を、制御対象のパケット転送装置２００に送信する制御情報（パケット処理回路の性能を指示する制御量）として設定する。なお、この制御情報設定部１０４は、統計情報蓄積部１０３に蓄積された計算後統計情報と、統計情報受信部１０１が受信した統計情報の一方又は両方からパケット転送装置２００に送信する制御情報を設定してもよい。また、制御情報設定部１０４は、制御情報変換表１０５から制御情報の補正値を求め、補正された性能予測値を算出してもよい。この制御情報設定部１０４の動作については、図８、図９及び図１０を用いて後述する。
【００２２】
制御情報変換表１０５は、統計情報蓄積部１０３に蓄積された時刻毎の性能予測値、性能予測値の変化量及びキュー長の変化量と、性能予測値の補正量とを対応付けて定義するテーブルである。この制御情報変換表１０５の詳細については、図１１を用いて後述する。
【００２３】
制御情報送信部１０６は、制御情報設定部１０４によって設定された制御情報を、パケット転送装置２００に送信する。
【００２４】
制御対象情報蓄積部１１０は、制御端末１００の制御対象の各パケット転送装置２００の設定情報（例えば後述するキュー長の閾値Ｔｈ、性能予測値の閾値ｄｅｖ）を、初期設定として蓄積する。また制御対象情報蓄積部１１０は、各パケット転送装置２００に対する制御情報の増減量（補正量）を蓄積する。
【００２５】
図２は、本発明の第１の実施形態の制御端末１００のハードウェア構成例を示す図である。図２に示す制御端末１００は、それぞれバス２０で相互に接続されたメモリ装置１１、演算処理装置１２、インタフェース装置１３、入力装置１４、補助記憶装置１５、ドライブ装置１６を備える。
【００２６】
メモリ装置１１は、制御端末１００の起動時に補助記憶装置１５に記憶されたプログラム（図１の各部１０１〜１０２、１０４、１０６の処理を実行するプログラム）等のプログラムを読み出して記憶するＲＡＭ（Random Access Memory）等の記憶装置である。このメモリ装置１１は、プログラムの実行に必要なファイル、データ（図１の各部１０３、１０５、１１０）等も記憶する。演算処理装置１２は、メモリ装置１１に格納されたプログラムを実行するＣＰＵ（Central Processing Unit）等の演算処理装置である。インタフェース装置１３は、外部ネットワーク等に接続するためのインタフェース装置である。入力装置１４は、ユーザインターフェイスを提供する入力装置（例えばキーボード、マウス）である。
【００２７】
補助記憶装置１５は、プログラムやファイル、データ（図１の各部１０３、１０５、１１０）等を記憶するＨＤＤ等の記憶装置である。ドライブ装置１６は、記録媒体１７に記録されたプログラムを読み出す装置である。ドライブ装置１６によって読み出されたプログラムは、補助記憶装置１５にインストールされる。記録媒体１７は、上記のプログラム等を記録したＵＳＢ（Universal Serial Bus）メモリ、ＳＤメモリカード、光ディスク、光磁気ディスク等の記録媒体である。
【００２８】
図８、図９及び図１０は、本発明の第１の実施形態の制御情報設定部１０４の制御ロジックを示すフローチャートである。図１１は、本発明の第１の実施形態の制御情報変換表１０５の一構成例を示す図である。ここでは、制御情報設定部１０４が、統計情報受信部１０１が時刻Ｔ１において受信した統計情報に基づいて、制御情報を設定する制御ロジックを説明する。
【００２９】
ステップＳ７０１では、制御情報設定部１０４は、統計情報蓄積部１０３から、時刻Ｔ１の性能予測値Ａ１と、時刻Ｔ１の直前（前述した時間ウインドウだけ前）の時刻Ｔ０の性能予測値Ａ０と、性能予測値Ａ１の分散（標準偏差σの２乗）とを取得する（Ｓ７０１）。
【００３０】
ステップＳ７０２では、制御情報設定部１０４は、統計情報蓄積部１０３から、時刻Ｔ１のキュー長Ｂを取得する（Ｓ７０２）。
【００３１】
ステップＳ７０３では、制御情報設定部１０４は、性能予測値Ａ１の分散が閾値ｄｅｖよりも大きいか否かを判定する（Ｓ７０３）。ここでいう閾値ｄｅｖとは、性能予測値Ａ１の信頼性を保証可能な性能予測値Ａ１の分散（ばらつき）の上限値である。即ち、性能予測値Ａ１の分散が閾値ｄｅｖよりも大きい場合（Ｓ７０３でＹＥＳ）、性能予測値Ａ１の信頼度は低いと判定される。一方、性能予測値Ａ１の分散が閾値ｄｅｖよりも小さい場合（Ｓ７０３でＮＯ）、性能予測値Ａ１の信頼度は高いと判定される。この閾値ｄｅｖは、パケット転送装置２００毎に設定される。
【００３２】
ステップＳ７０４では、制御情報設定部１０４は、性能予測値Ａ１が増加しているか否かを判定する（Ｓ７０４）。ここでは、制御情報設定部１０４は、ステップＳ７０１で取得された性能予測値Ａ１と性能予測値Ａ０とを比較することにより判定する。性能予測値Ａ１が増加している場合（Ｓ７０４でＹＥＳ）、パケット転送装置２００が今後多くの量のパケットを転送することが予測される。一方、性能予測値Ａ１が増加していない場合（Ｓ７０４でＮＯ）、パケット転送装置２００は今後同じ量又は少ない量のパケットを転送することが予測される。
【００３３】
ステップＳ７０５では、制御情報設定部１０４は、キュー長Ｂが閾値Ｔｈよりも小さいか否かを判定する（Ｓ７０５）。ここでいう閾値Ｔｈとは、パケット転送装置２００の処理速度の低下を生じさせないキュー長の上限値である。即ち、キュー長Ｂが閾値Ｔｈよりも小さい場合（Ｓ７０５でＹＥＳ）、パケット転送装置２００は適切にパケットを転送できると判定される。一方、キュー長が閾値Ｔｈよりも大きい場合（Ｓ７０５でＮＯ）、パケット転送装置２００の処理速度が低下してしまうと判定される。この閾値Ｔｈは、パケット転送装置２００の入力キュー毎に設定される。
【００３４】
また、ステップＳ７０４でＮＯの場合、Ａ（図９のステップＳ８０１）又はＢ（図１０のステップ８０１）に進んで、制御情報設定部１０４は、性能予測値Ａ１が変化していないか否かを判定する（Ｓ８０１）。性能予測値Ａ１が変化していない場合（Ｓ８０１でＹＥＳ）、パケット転送装置２００は今後同じ量のパケットを転送することが予測される。一方、性能予測値Ａ１が変化した（少ない量になった）場合（Ｓ８０１でＮＯ）、パケット転送装置２００は今後少ない量のパケットを転送することが予測される。
【００３５】
以上に示されるステップＳ７０３〜Ｓ７０５及びＳ８０１の処理の結果に応じて、制御情報設定部１０４は、ステップＳ７０６〜Ｓ７０８、Ｓ８０２〜Ｓ８０５、Ｓ９０１〜Ｓ９０５を切り替える。
【００３６】
図８のステップＳ７０６に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも大きく、性能予測値Ａ１は増加しており、且つ、キュー長Ｂは閾値Ｔｈよりも小さい場合、制御情報設定部１０４は、動作させるパケット処理回路数を変更しない旨の制御情報を設定する（Ｓ７０６）。ステップＳ７０６は、パケット転送装置２００が今後多くの量のパケットを転送することが予測されるものの、性能予測値Ａ１の信頼度が低く、且つ、キュー長Ｂに基づく判定ではパケット転送装置２００が適切にパケットを転送できると判定されたケースである。このケースでは、性能予測値Ａ１の信頼度が高くなるまでしばらく様子を見るために、制御情報設定部１０４は、動作させるパケット処理回路数を変更しない旨の制御情報を設定する。図１１のケース（１）である。
【００３７】
ステップＳ７０７に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも大きく、性能予測値Ａ１は増加しており、且つ、キュー長Ｂは閾値Ｔｈよりも大きい場合、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する（Ｓ７０７）。ステップＳ７０７は、キュー長Ｂに基づく判定においてパケット転送装置２００の処理速度が低下してしまうと判定されたケースである。このケースでは、パケット転送装置２００の処理速度の低下を防ぐため、動作させるパケット処理回路数を増加させる必要がある。そのため、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する。図１１のケース（２）である。
【００３８】
ステップＳ７０８に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも小さく、且つ、性能予測値Ａ１は増加している場合、制御情報設定部１０４は、パケット処理回路数を増加させる旨の制御情報を設定する（Ｓ７０８）。ステップＳ７０８は、性能予測値Ａ１の信頼度が高く、パケット転送装置２００が今後多くの量のパケットを転送することが予測されるケースである。このケースでは、キュー長Ｂの大小に関わらず、動作させるパケット処理回路数を増加させる必要がある。そのため、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する。図１１のケース（３）、（４）である。
【００３９】
図９のステップＳ８０２に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも小さく、性能予測値Ａ１は変化しておらず、且つ、キュー長Ｂは閾値Ｔｈよりも小さい場合、制御情報設定部１０４は、動作させるパケット処理回路数を変更しない旨の制御情報を設定する（Ｓ８０２）。ステップＳ８０２は、性能予測値Ａ１の信頼度が高く、パケット転送装置２００が今後同じ量のパケットを転送することが予測され、且つ、キュー長Ｂに基づく判定ではパケット転送装置２００が適切にパケットを転送できると判定されたケースである。このケースでは、動作させるパケット処理回路数を増減させる必要がない。そのため、制御情報設定部１０４は、動作させるパケット処理回路数を変更しない旨の制御情報を設定する。図１１のケース（５）である。
【００４０】
ステップＳ８０３に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも小さく、性能予測値Ａ１は変化しておらず、且つ、キュー長Ｂは閾値Ｔｈよりも大きい場合、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する（Ｓ８０３）。ステップＳ８０３は、キュー長Ｂに基づく判定においてパケット転送装置２００の処理速度が低下してしまうと判定されたケースである。このケースでは、パケット転送装置２００の処理速度の低下を防ぐため、動作させるパケット処理回路数を増加させる必要がある。そのため、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する。図１１のケース（６）である。
【００４１】
ステップＳ８０４に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも小さく、性能予測値Ａ１は減少しており、且つ、キュー長Ｂは閾値Ｔｈよりも小さい場合、制御情報設定部１０４は、動作させるパケット処理回路数を減少させる旨の制御情報を設定する（Ｓ８０４）。ステップＳ８０４は、性能予測値Ａ１の信頼度が高く、パケット転送装置２００は今後少ない量のパケットを転送することが予測され、且つ、キュー長Ｂに基づく判定ではパケット転送装置２００が適切にパケットを転送できると判定されたケースである。このケースでは、動作させるパケット処理回路数を減少させてもよい。そのため、制御情報設定部１０４は、動作させるパケット処理回路数を減少させる旨の制御情報を設定する。図１１のケース（１１）である。
【００４２】
ステップＳ８０５に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも小さく、性能予測値Ａ１は減少しており、且つ、キュー長Ｂは閾値Ｔｈよりも大きい場合、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する（Ｓ８０５）。ステップＳ８０５は、性能予測値Ａ１の信頼度が高く、パケット転送装置２００は今後少ない量のパケットを転送することが予測されるが、一方で、キュー長Ｂに基づく判定ではパケット転送装置２００の処理速度が低下してしまうと判定されたケースである。このケースでは、パケット転送装置２００の処理速度の低下を防ぐため、動作させるパケット処理回路数を増加させる必要がある。そのため、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する。図１１のケース（１２）である。
【００４３】
図１０のステップＳ９０１に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも大きく、性能予測値Ａ１は変化しておらず、且つ、キュー長Ｂは閾値Ｔｈよりも小さい場合、制御情報設定部１０４は、動作させるパケット処理回路数を変更しない旨の制御情報を設定する（Ｓ９０１）。ステップＳ９０１は、パケット転送装置２００が今後同じ量のパケットを転送することが予測されるものの、性能予測値Ａ１の信頼度が低く、且つ、キュー長Ｂに基づく判定ではパケット転送装置２００が適切にパケットを転送できると判定されたケースである。このケースでは、性能予測値Ａ１の信頼度が高くなるまでしばらく様子を見るために、制御情報設定部１０４は、動作させるパケット処理回路数を変更しない旨の制御情報を設定する。図１１のケース（９）である。
【００４４】
ステップＳ９０２に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも大きく、性能予測値Ａ１は変化しておらず、且つ、キュー長Ｂは閾値Ｔｈよりも大きい場合、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する（Ｓ９０２）。ステップＳ９０２は、キュー長Ｂに基づく判定においてパケット転送装置２００の処理速度が低下してしまうと判定されたケースである。このケースでは、パケット転送装置２００の処理速度の低下を防ぐため、動作させるパケット処理回路数を増加させる必要がある。そのため、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する。図１１のケース（１０）である。
【００４５】
ステップＳ９０３に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも大きく、性能予測値Ａ１は減少しており、且つ、キュー長Ｂは閾値Ｔｈよりも小さい場合、制御情報設定部１０４は、動作させるパケット処理回路数を減少させる旨の制御情報を設定する（Ｓ９０３）。ステップＳ９０３は、パケット転送装置２００が今後少ない量のパケットを転送することが予測されるものの、性能予測値Ａ１の信頼度が低く、且つ、キュー長Ｂに基づく判定ではパケット転送装置２００が適切にパケットを転送できると判定されたケースである。このケースでは、性能予測値Ａ１の信頼度が高くなるまでしばらく様子を見るために、制御情報設定部１０４は、動作させるパケット処理回路数を変更しない旨の制御情報を設定する。図１１のケース（７）である。
【００４６】
ステップＳ９０４に進んだ場合、即ち性能予測値Ａ１の分散が閾値ｄｅｖよりも大きく、性能予測値Ａ１は減少しており、且つ、キュー長Ｂは閾値Ｔｈよりも大きい場合、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する（Ｓ９０４）。ステップＳ９０４は、キュー長Ｂに基づく判定においてパケット転送装置２００の処理速度が低下してしまうと判定されたケースである。このケースでは、パケット転送装置２００の処理速度の低下を防ぐため、動作させるパケット処理回路数を増加させる必要がある。そのため、制御情報設定部１０４は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する。図１１のケース（８）である。
【００４７】
以上のように制御情報設定部１０４は、統計情報受信部１０１が受信したパケット転送装置２００の統計情報の履歴に基づいて求められる性能予測値（性能予測値Ａ０、Ａ１、性能予測値Ａ１の分散）と、リアルタイムなパケット到着状況を示すキュー長Ｂとの両方を用いて、設定する制御情報を切り替えている。これにより、理想的な予測入力帯域に近い予測入力帯域及びリアルタイムなパケット到着状況の両方を考慮して、パケット転送装置２００を動作させ、パケット転送装置２００の消費電力を低減することができる。なお、制御情報設定部１０４は、上記のキュー長Ｂに対応する補正量を加えた制御情報が、上記の性能予測値の上限値と下限値との範囲内に制限されるよう、制御情報を設定することが好ましい。なぜなら、性能予測値の上限値を超えた設定値は消費電力の増加をもたらす可能性があるためであり、性能予測値の下限値を下回る設定値は通信品質の劣化をもたらす可能性があるためである。
【００４８】
図３は、本発明の第１の実施形態のパケット転送装置２００の一構成例を示す図である。図３に示すパケット転送装置２００は、Ｎ個のインタフェース部２１０−ｉ（ｉ＝１、２、…、Ｎ）と、各インタフェース部２１０−ｉを結合するパケット中継処理部２５０と、外部の制御端末１００に接続されるプロセッサ２９０とを備える。
【００４９】
各インタフェース部２１０−ｉは、パケットの受信処理を実行するパケット受信回路２３０、パケット受信回路２３０が受信したパケットを蓄積する入力ＰＢ（Packet Buffer）２４０、パケットの送信処理を実行するパケット送信回路２７０、パケット送信回路２７０が送信するパケットを蓄積する出力ＰＢ２８０、パケットのヘッダ処理を実行するヘッダ処理部５００を備える。
【００５０】
各インタフェース部２１０−ｉは、Ｍ個の入力回線２０１−ｉｊ（ｉ＝１、２、…、Ｎ、ｊ＝１、２、…、Ｍ）と、Ｍ個の出力回線２０２−ｉｊ（ｉ＝１、２、…、Ｎ、ｊ＝１、２、…、Ｍ）を収容する。図３の例では、インタフェース部２１０−１が入力回線２０１−１１〜１４と、出力回線２０２−１１〜１４とを収容している。インタフェース部２１０−２は、入力回線２０１−２１、２２と、出力回線２０２−２１、２２とを収容している。インタフェース部２１０−Ｎは、入力回線２０１−Ｎと、出力回線２０２−Ｎとを収容している。これら入力回線２０１−ｉｊと出力回線２０２−ｉｊは、例えばクライアントＰＣ２０００やサーバ２１００などの他の通信ノードに接続される。
【００５１】
プロセッサ２９０は、メモリ（不図示）に格納されたプログラムを実行する演算処理装置である。このプロセッサ２９０は、制御端末１００から受信した指示（動作させるパケット処理回路数を増減させる旨の制御情報を含む）を各インタフェース部２１０−ｉのヘッダ処理部５００に通知したり、インタフェース部２１０−ｉの情報を制御端末１００に通知したりする。
【００５２】
図４は、本発明の第１の実施形態のパケット転送装置２００が送受信するパケットのデータフォーマットの一例を示す図である。図４では、図３の入力回線２０１−ｉｊ、出力回線２０２−ｉｊから入出力されるパケットのデータフォーマットの一例を示している。
【００５３】
このデータフォーマットは、ヘッダ部３１０と、データ部３２０とを含む。ヘッダ部３１０は、送信元ＩＰアドレス（ＳＩＰ：Source IP address）３１１と、宛先ＩＰアドレス（ＤＩＰ：Destination IP address）３１２と、送信元ポート（ＳＰＯＲＴ：Source PORT）３１３と、宛先ポート（ＤＰＯＲＴ：Destination PORT）３１４と、ＤＳＣＰ（Differentiated Services Code Point）３１５と、送信元ＭＡＣアドレス（ＳＭＡＣ：Source MAC address）３１６と、宛先ＭＡＣアドレス（ＤＭＡＣ：Destination MAC address）３１７と、イーサ優先度（ＵＰＲＩ：User PRIority）３１８とを含む。送信元ＩＰアドレス３１１は、ネットワーク層の送信元アドレス（送信端末のアドレス）である。宛先ＩＰアドレス３１２は、ネットワーク層の宛先アドレス（受信端末のアドレス）である。送信元ポート３１３は、送信元のポート番号である。宛先ポート３１４は、宛先のポート番号である。ＤＳＣＰ３１５は、ネットワーク層の転送優先度である。送信元ＭＡＣアドレス３１６は、データリンク層の送信元ＭＡＣアドレスである。宛先ＭＡＣアドレス３１７は、データリンク層の宛先ＭＡＣアドレスである。イーサ優先度３１８は、データリンク層の転送優先度である。一方、データ部３２０は、アプリケーションのデータであるユーザデータ３２１を含む。
【００５４】
図５は、本発明の第１の実施形態のパケット転送装置２００の内部におけるパケットのデータフォーマットの一例を示す図である。図５に示すデータフォーマットは、図４のヘッダ部３１０及びデータ部３２０に加え、内部ヘッダ部３３０を含む。
【００５５】
内部ヘッダ部３３０は、パケットを入力した入力回線２０１−ｉｊの識別番号である入力回線番号３３１と、パケットを出力する出力回線２０２−ｉｊの識別番号である出力回線番号３３２と、パケットの送信優先度を示すＱｏＳ情報３３３とを含む。
【００５６】
図３に戻り、パケット転送装置２００の各部の動作を順不同に説明する。
【００５７】
パケット受信回路２３０は、入力回線２０１−ｉｊから図４に示すデータフォーマットのパケットを入力すると、入力されたパケットに内部ヘッダ３３０（図５参照）を付加する。また、内部ヘッダ３３０内の入力回線番号３３１のフィールドに、パケットを入力した入力回線２０１−ｉｊの番号を書込み、入力ＰＢ２４０に蓄積する。また、ヘッダ部３１０の全情報と入力回線番号３３１を、ヘッダ情報２１としてヘッダ処理部５００に送信する。
【００５８】
ヘッダ処理部５００は、パケット受信回路２３０から受信したヘッダ情報２１に基づき、入力されたパケットの出力回線番号を判定する処理、入力されたパケットの属するフローのフィルタ情報、ＱｏＳ情報を判定するフロー処理等を実施する。その後、判定された出力回線番号、フィルタ情報、ＱｏＳ情報を、出力情報２２としてパケット受信回路２３０に送信する。
【００５９】
パケット受信回路２３０は、ヘッダ処理部５００から受信した出力情報２２に基づき、以下の処理を実行する。即ち、出力情報２２内のフィルタ情報がパケットの転送指示を示す場合、出力情報２２内の出力回線番号、ＱｏＳ情報を、入力ＰＢ２４０に蓄積されたパケットの内部ヘッダ３３０内の出力回線番号３３２、ＱｏＳ情報３３３のフィールドにそれぞれ書込み、パケット中継処理部２５０に送信する。一方、出力情報２２内のフィルタ情報がパケットの廃棄指示を示す場合、パケット受信回路２３０は、入力ＰＢ２４０に蓄積されたパケットをパケット中継処理部２５０に送信しない。このパケットは、最終的に他のパケットの到着時に上書きされて廃棄される。
【００６０】
パケット中継処理部２５０は、パケット受信回路２３０から受信したパケットを、受信したパケットの内部ヘッダ３３０内の出力回線番号３３２に対応するインタフェース部２１０−ｉのパケット送信回路２７０に送信する。
【００６１】
パケット送信回路２７０は、パケット中継処理部２５０から受信したパケットを、出力ＰＢ２８０に蓄積する。また、ヘッダ部３１０の全情報と出力回線番号３３２を、ヘッダ情報２５としてヘッダ処理部５００に送信する。
【００６２】
ヘッダ処理部５００は、パケット送信回路２７０から受信したヘッダ情報２５に基づき、出力するパケットの属するフローのフィルタ情報、ＱｏＳ情報を判定するフロー処理等を実施する。その後、判定されたフィルタ情報、ＱｏＳ情報を、出力情報２６としてパケット送信回路２７０に送信する。
【００６３】
パケット送信回路２７０は、ヘッダ処理部５００から受信した出力情報２６に基づき、以下の処理を実行する。即ち、出力情報２６内のフィルタ情報がパケットの送信指示を示す場合、パケット受信回路２７０は、出力情報２６内のＱｏＳ情報を、出力ＰＢ２８０に蓄積されたパケットの内部ヘッダ３３０内のＱｏＳ情報３３３のフィールドに書込む。また、このパケットの内部ヘッダ３３０内の出力回線番号３３２のフィールドの値に基づき、対応する出力回線２０２−ｉｊに送信する。一方、出力情報２６内のフィルタ情報がパケットの廃棄指示を示す場合、パケット送信回路２７０は、出力ＰＢ２８０に蓄積されたパケットを、出力回線２０２−ｉｊに送信しない。このパケットは、最終的に他のパケット到着時に上書きされて廃棄される。
【００６４】
以上説明してきた本発明の第１の実施形態のパケット転送装置２００では、ヘッダ処理部５００は、パケット受信回路２３０に接続される入力回線２０１−ｉｊ及びパケット送信回路２７０に接続される出力回線２０２−ｉｊの回線数に応じて、ヘッダ処理部５００内において動作させるパケット処理回路５１０−ｋ（図６参照）の数を切り替える。なお、一対の入力回線２０１−ｉｊと出力回線２０２−ｉｊとが一組をなし、この組単位で接続又は非接続される。ヘッダ処理部５００は、パケット受信回路２３０から、入力回線２０１−ｉｊと出力回線２０２−ｉｊの回線数を示す回線数情報２４の通知を受ける。
【００６５】
またヘッダ処理部５００は、プロセッサ２９０を介して制御端末１００から受信した動作させるパケット処理回路数を増減させる旨の制御情報に応じて、ヘッダ処理部５００内において動作させるパケット処理回路５１０−ｋ（図６参照）の数を切り替える。即ち、動作させるパケット処理回路数を増加させる旨の制御情報である場合、動作させるパケット処理回路５１０−ｋの数を増加させる。また、動作させるパケット処理回路数を変更しない旨の制御情報である場合、動作させるパケット処理回路５１０−ｋの数を変更しない。また、動作させるパケット処理回路数を減少させる旨の制御情報である場合、動作させるパケット処理回路５１０−ｋの数を減少させる。
【００６６】
図６は、本発明の第１の実施形態のヘッダ処理部５００の一構成例を示す図である。ヘッダ処理部５００は、入力されたパケットのヘッダ処理を実行する入力ヘッダ処理部５０１と、出力するパケットのヘッダ処理を実行する出力ヘッダ処理部５０２とを備える。
【００６７】
入力ヘッダ処理部５０１は、ヘッダ情報２１に基づき、パケット処理（前述した入力されたパケットの出力回線番号を判定する処理、入力されたパケットの属するフローのフィルタ情報、ＱｏＳ情報を判定するフロー処理等）を実施し、処理結果（出力回線番号、フィルタ情報、ＱｏＳ情報）を、出力情報２２としてパケット受信回路２３０に送信する。この入力ヘッダ処理部５０１は、Ｎ個（図６では４個）のパケット処理回路５１０−ｋ（ｋ＝１、２、…、Ｎ）、ヘッダ情報蓄積部５２０、整列回路５４０、回路数判定回路５７０を備える。回路数判定回路５７０は、前述の回線数情報２４の通知を受ける。
【００６８】
出力ヘッダ処理部５０２は、ヘッダ情報２５に基づき、パケット処理（前述した出力するパケットの属するフローのフィルタ情報、ＱｏＳ情報を判定するフロー処理等）を実施し、処理結果（フィルタ情報、ＱｏＳ情報）を、出力情報２６としてパケット送信回路２７０に送信する。この出力ヘッダ処理部５０２は、回線数情報２４の通知手段を備えない点を除き、入力ヘッダ処理部５０１と同様の構成である。
【００６９】
以下、入力ヘッダ処理部５０１の各部の動作について説明する。なお、出力ヘッダ処理部５０２の各部の動作も同様である。
【００７０】
パケット処理回路５１０−ｋは、パケット処理（上記の出力回線番号判定処理、フロー処理等）を実行する。
【００７１】
ヘッダ情報蓄積部５２０は、入力された複数のヘッダ情報２１（又はヘッダ情報２５）を蓄積し、蓄積されたヘッド情報２１（又はヘッダ情報２５）を、いずれかのパケット処理回路５１０−ｋに振り分けて送信する。このヘッダ情報蓄積部５２０の詳細は、図７を用いて後述する。
【００７２】
整列回路５４０は、パケット処理回路５１０−ｋの処理結果（出力回線番号、フィルタ情報、ＱｏＳ情報）を、これらの情報に対応するヘッダ情報２１（又はヘッダ情報２５）が入力された順番に、入力回線２０１−ｉｊ（又は出力回線２０２−ｉｊ）毎に並び替えて、出力情報２２（又は出力情報２５）として出力する。この整列回路５４０は、各パケット処理回路５１０−ｋの処理速度の違いによるパケットの順序の入替えを防止するために設けられている。
【００７３】
回路数判定回路５７０は、パケット受信回路２３０から受信した回線数情報２４と、プロセッサ２９０を介して制御端末１００から受信した動作させるパケット処理回路数を増減させる旨の制御情報とに基づいて、動作させるパケット処理回路５１０−ｋの個数を判定する。また、判定結果をヘッダ情報蓄積部５２０内の振分回路５２３（図７参照）に送信する。
【００７４】
図７は、本発明の第１の実施形態のヘッダ情報蓄積部５２０の一構成例を示す図である。図７に示すヘッダ情報蓄積部５２０は、キュー５２１と、シーケンス番号付加回路５２２と、振分回路５２３と、キューカウンタ５２４とを備える。
【００７５】
以下、ヘッダ情報蓄積部５２０の各部の動作を順不同に説明する。
【００７６】
シーケンス番号付与回路５２２は、入力されたヘッダ情報２１にシーケンス番号を付与する。具体的には、入力回線２０１−ｉｊ毎にカウンタを備えており、ヘッダ情報２１を入力すると、入力されたヘッダ情報２１内の入力回線番号３３１（図５参照）に対応する入力回線２０１−ｉｊのカウンタ値を、シーケンス番号として付与する。シーケンス番号が付与されたヘッダ情報２１は、キュー５２１に送信される。このとき、シーケンス番号付与回路５２２は、入力回線番号３３１に対応する入力回線２０１−ｉｊのカウンタ値を１だけカウントアップする。
【００７７】
キュー５２１は、シーケンス番号付与回路５２２によってシーケンス番号が付与されたヘッダ情報２１を蓄積する。
【００７８】
振分回路５２３は、キュー５２１に蓄積されたヘッダ情報２１を、各パケット処理回路５１０−ｋに送信する。具体的には、パケット処理回路５１０−ｋから受信したＢＵＳＹ信号と、回路数判定回路５７０から受信した動作させるパケット処理回路５１０−ｋの個数とに基づいて、複数のパケット処理回路５１０−ｋの中から、動作中でパケット受信可能なパケット処理回路５１０−ｋを決定し、決定されたパケット処理回路５１０−ｋに送信する。これにより、複数のパケット処理回路５１０−ｋは、振分回路５２３から各々受信したパケットを並列に処理することができる。
【００７９】
以上のように、本発明の第１の実施形態のパケット転送装置２００は、回線数情報２４及び制御端末１００からの指示（動作させるパケット処理回路数を増減させる旨の制御情報）に基づいて、動作させるパケット処理回路５１０−ｋの個数を変更することができる。なお、動作させるパケット処理回路５１０−ｋの個数を変更する代わりに、動作させるパケット処理回路５１０−ｋの動作周波数を変更してもよい。この場合、短期間（例えば１分等）の性能制御では、パケット処理回路５１０−ｋの動作周波数を変更し、長期間（例えば１時間等）の性能制御では、パケット処理回路５１０−ｋの動作個数を変更することによって、より効果的に、パケット転送装置２００の消費電力を低減することができる。長期間とは、キュー５２１に処理すべきパケットが0個になる期間を含む期間を想定している。逆に短期間とは処理すべきパケットが常にキュー５２１に処理待ちの状態になっている期間を想定している。
【００８０】
（第２の実施形態）
本発明の第２の実施形態の制御端末１００、制御端末１００の制御対象のパケット転送装置１１００の各装置について説明する。
【００８１】
前述の第１の実施形態（図１参照）では、制御端末１００のみが、パケット転送装置２００の制御情報を設定した。第２の実施形態（図１２参照）では、制御端末１００と、パケット転送装置１１００に設けられた制御設定補正部１２００とが、パケット転送装置２００の制御情報を設定する形態について説明する。なお、以下では、前述の第１の実施形態と同様の機能を果たす部分には同一の符号を付して重複する説明を適宜省略する。
【００８２】
図１２は、本発明の第２の実施形態のパケット転送装置１１００の一構成例を示す図である。図１２に示すパケット転送装置１１００は、前述の第１の実施形態のパケット転送装置２００の各部に加え、制御端末１００の機能を有する制御設定補正部１２００を備える。
【００８３】
図１３は、本発明の第２の実施形態の制御設定補正部１２００の一構成例を示す図である。図１３に示す制御設定補正部１２００は、統計情報計算部１０２０と、統計情報蓄積部１０３０と、制御情報設定部１０４０と、制御情報変換表１０５と、制御対象情報蓄積部１１０と、タイマ１１００とを備える。
【００８４】
統計情報計算部１０２０は、入力帯域計算部１０７と、入力キュー長計算部１０８と、キュー長増加率判定部１０９０とを含む。
【００８５】
キュー長増加率判定部１０９０は、プロセッサ２９０から受信した統計情報と、タイマ１１００の値とに基づいて、パケット転送装置２００の各入力キューのキュー長の増加率（単位時間当たりのキュー長の増加量）を計算する。その後、計算されたキュー長の増加率が所定の閾値よりも大きいか否かを判定する。ここでいう閾値とは、制御端末１００が適切にフィードバック制御できない程度のキュー長の急激な増加を示す増加率の値である。即ち、キュー長増加率判定部１０９０は、キュー長が急激に増加しているか否かを判定している。その後、判定結果を制御情報設定部１０４０に送信する。
【００８６】
統計情報蓄積部１０３０は、統計情報計算部１０２０によって求められた計算後統計情報を蓄積する。なお、この統計情報蓄積部１０３０が蓄積するデータ量は、前述の第１の実施形態の統計情報蓄積部１０３よりも少ない。例えば、この統計情報蓄積部１０３０は、前述した時間ウインドウの数倍の時間ウインドウ毎の計算後統計情報を蓄積する。これは、パケット転送装置２００の記憶領域の負荷を低減するためである。
【００８７】
制御情報設定部１０４０は、統計情報蓄積部１０３に蓄積された計算後統計情報と、制御情報変換表１０５とに基づいて、パケット転送装置２００に送信する制御情報を設定する。なお、キュー長増加率判定部１０９０からキュー長が急激に増加している旨の情報を受信した場合、この制御情報設定部１０４０は、動作させるパケット処理回路数を増加させる旨の制御情報を設定する。これは、キュー長の急激な増加によるパケット転送装置２００の処理性能不足に起因するパケット廃棄を防ぐため、動作させるパケット処理回路数を増加させる必要があるからである。この場合さらに、この制御情報設定部１０４０によって設定された制御情報を、制御端末１００によって設定された制御情報に優先して適用する旨の情報を、制御情報に付加してプロセッサ２９０に送信する。その後、プロセッサ２９０は、制御情報設定部１０４０によって設定された制御情報を優先して適用する旨の情報を受信すると、動作させるパケット処理回路の数を増加させるようヘッダ処理部５００に指示する。
【００８８】
以上のように、本発明の第２の実施形態のパケット転送装置２００は、制御端末１００及び制御設定補正部１２００の各々からの指示（動作させるパケット処理回路数を増減させる旨の制御情報）に基づいて、動作させるパケット処理回路の個数を変更することができる。これにより、キュー長が急激に増加して制御端末１００が適切にフィードバック制御できない場合であっても、このようなキュー長の急激な増加を考慮して、パケット転送装置２００を動作させ、パケット転送装置２００の消費電力を低減することができる。
【００８９】
以上、本発明の各実施形態について説明したが、上記各実施形態は本発明の適用例の一つを示したものであり、本発明の技術的範囲を上記各実施形態の具体的構成に限定する趣旨ではない。本発明の要旨を逸脱しない範囲において種々変更可能である。
【符号の説明】
【００９０】
１  計算機システム
２１、２５  ヘッダ情報
２２  出力回線情報
２４  回線数情報
１００  制御端末（制御装置）
２００  パケット転送装置
５００  ヘッダ処理部
【図１】
2011250237.tif 000003
【図２】
2011250237.tif 000004
【図３】
2011250237.tif 000005
【図４】
2011250237.tif 000006
【図５】
2011250237.tif 000007
【図６】
2011250237.tif 000008
【図７】
2011250237.tif 000009
【図８】
2011250237.tif 000010
【図９】
2011250237.tif 000011
【図１０】
2011250237.tif 000012
【図１１】
2011250237.tif 000013
【図１２】
2011250237.tif 000014
【図１３】
2011250237.tif 000015