(57)【要約】【課題】ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することのできる技術を提供する。【解決手段】ＴＣＰプロトコルを用いて通信を行うネットワーク中継装置は、第１の端末と第２の端末との間のパケットの転送を行うパケット転送部と、ネットワーク中継装置の各部を制御する制御部とを備える。制御部は、第１の端末と第２の端末との間のパケットを監視して、パケット転送部の帯域幅を広くする転送性能上昇処理およびパケット転送部の帯域幅を狭くする転送性能下降処理を実行し、この際、パケットがＴＣＰコネクション確立要求時のＳＹＮパケットである場合に、予め定められた規則に従って転送性能上昇処理を行うか否かを判定するとともに、転送性能上昇処理を行うと判定した場合は、ＳＹＮパケットの受信後、ＴＣＰコネクション確立要求によるＴＣＰコネクション確立までの間にパケット転送部の帯域幅を広くする。【選択図】図８
2010147744.tif 000002
【特許請求の範囲】
【請求項１】
ＴＣＰプロトコルを用いて通信を行う第１の端末と第２の端末との間の伝送路上に配置されるネットワーク中継装置であって、
前記第１の端末と前記第２の端末との間のパケットの転送を行うパケット転送部と、
前記ネットワーク中継装置の各部を制御する制御部と、
を備え、
前記制御部は、
前記第１の端末と前記第２の端末との間のパケットを監視して、前記パケット転送部の帯域幅を広くする転送性能上昇処理および前記パケット転送部の帯域幅を狭くする転送性能下降処理を実行し、この際、前記パケットがＴＣＰコネクション確立要求時のＳＹＮパケットである場合に、予め定められた規則に従って前記転送性能上昇処理を行うか否かを判定するとともに、前記転送性能上昇処理を行うと判定した場合は、前記ＳＹＮパケットの受信後、前記ＴＣＰコネクション確立要求によるＴＣＰコネクション確立までの間に前記パケット転送部の帯域幅を広くする、ネットワーク中継装置。
【請求項２】
請求項１記載のネットワーク中継装置であって、
前記制御部は、
前記パケットがＴＣＰコネクション切断要求時のＦＩＮパケットである場合に、予め定められた規則に従って前記転送性能下降処理を行うか否かを判定するとともに、前記転送性能下降処理を行うと判定した場合は、前記ＦＩＮパケットの受信をトリガとして前記パケット転送部の帯域幅を狭くする、ネットワーク中継装置。
【請求項３】
請求項１または２記載のネットワーク中継装置であって、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、ＴＣＰコネクション毎に予め定められた帯域幅によって決定される、ネットワーク中継装置。
【請求項４】
請求項１または２記載のネットワーク中継装置であって、さらに、
外部の端末と接続される複数の回線を備え、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、前記回線毎に予め定められた帯域幅によって決定される、ネットワーク中継装置。
【請求項５】
請求項１または２記載のネットワーク中継装置であって、さらに、
外部の端末と接続される複数の回線と、
１つ以上の前記回線をそれぞれ収容する複数の回線収容部と、
を備え、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、前記回線収容部毎に予め定められた帯域幅によって決定される、ネットワーク中継装置。
【請求項６】
請求項１または２記載のネットワーク中継装置であって、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、ＱｏＳ情報に従って予め定められた帯域幅によって決定される、ネットワーク中継装置。
【請求項７】
請求項１または２記載のネットワーク中継装置であって、さらに、
データフロー毎の過去の平均パケット流量と、データフロー毎の過去の最大パケット流量とのうちの少なくとも一方を測定する統計情報部を備え、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、前記平均パケット流量と、前記最大パケット流量とのうちの少なくとも一方より定まる帯域幅によって決定される、ネットワーク中継装置。
【請求項８】
請求項１または２記載のネットワーク中継装置であって、さらに、
外部の端末と接続される複数の回線と、
１つ以上の前記回線をそれぞれ収容する複数の回線収容部と、
データフロー毎の過去の平均パケット流量と、データフロー毎の過去の最大パケット流量とのうちの少なくとも一方を測定する統計情報部と、
を備え、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、
（ｉ）ＴＣＰコネクション毎に予め定められた帯域幅と、
（ｉｉ）前記回線毎に予め定められた帯域幅と、
（ｉｉｉ）前記回線収容部毎に予め定められた帯域幅と、
（ｉｖ）ＱｏＳ情報に従って予め定められた帯域幅と、
（ｖ）前記平均パケット流量と、前記最大パケット流量とのうちの少なくとも一方より定まる帯域幅と、
のうちのいずれか１つを用いて決定され、前記（ｉ）〜（ｖ）のいずれを用いるかはＴＣＰコネクション毎に予め定められている、ネットワーク中継装置。
【請求項９】
ネットワーク中継装置の制御方法であって、
（ａ）ＴＣＰプロトコルを用いて通信を行う第１の端末と第２の端末との間でパケットを転送する転送工程と、
（ｂ）前記第１の端末と前記第２の端末との間のパケットを監視し、前記パケットがＴＣＰコネクション確立要求時のＳＹＮパケットである場合に、予め定められた規則に従って前記転送工程における帯域幅を広くするか否かを判定するとともに、前記転送工程における帯域幅を広くすると判定した場合は、前記ＳＹＮパケットの受信後、前記ＴＣＰコネクション確立要求によるＴＣＰコネクション確立までの間に前記転送工程における帯域幅を広くする工程と、
を備える、ネットワーク中継装置の制御方法。
【請求項１０】
コンピュータプログラムであって、
ＴＣＰプロトコルを用いて通信を行う第１の端末と第２の端末との間でパケットを転送する転送機能と、
前記第１の端末と前記第２の端末との間のパケットを監視し、前記パケットがＴＣＰコネクション確立要求時のＳＹＮパケットである場合に、予め定められた規則に従って前記転送機能における帯域幅を広くするか否かを判定するとともに、前記転送機能における帯域幅を広くすると判定した場合は、前記ＳＹＮパケットの受信後、前記ＴＣＰコネクション確立要求によるＴＣＰコネクション確立までの間に前記転送機能における帯域幅を広くする機能と、
を備える、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークの中継を行うネットワーク中継装置に関する。
【背景技術】
【０００２】
ＩＣＴ（ｉｎｆｏｒｍａｔｉｏｎ ａｎｄ ｃｏｍｍｕｎｉｃａｔｉｏｎ ｔｅｃｈｎｏｌｏｇｙ）技術の進展に伴うインターネットトラフィックの増加を背景として、ネットワーク中継装置（例えば、ＬＡＮスイッチやルータ）の消費電力が急増している。一方、近年では環境保護の観点から、ネットワーク中継装置に対する電力削減の要請が高まっている。従来のネットワーク中継装置では、トラフィック量の増減に追従する形でネットワーク中継装置の転送性能を増減させることによって、低消費電力を実現していた（例えば、非特許文献１）。
【０００３】
【非特許文献１】「AX6700S・AX6300S ソフトウェアマニュアル  コンフィグレーションガイド Vol.1（Ver.10.7対応版）」、アラクサラネットワークス株式会社、２００７年４月、１９９〜２００ページ、インターネット<URL:http://www.alaxala.com/jp/support/manual/AX6300S/pdf/10_7/CFGUIDE/CFGUIDE.PDF>
【非特許文献２】「Rapid PHY Selection(RPS):A Performance Evaluation of Control Policies」、Ken Christensen、２００７年１月、インターネット<URL:http://grouper.ieee.org/groups/802/3/eee_study/public/jan07/christensen_01_0107.pdf>
【０００４】
しかし、トラフィック量の増減に追従する形でネットワーク中継装置の転送性能を増減させることでは、不規則に変化するトラフィック量に対応できず、パケットロスが生じる可能性があるという問題があった。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することのできる技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００７】
［適用例１］
ＴＣＰプロトコルを用いて通信を行う第１の端末と第２の端末との間の伝送路上に配置されるネットワーク中継装置であって、
前記第１の端末と前記第２の端末との間のパケットの転送を行うパケット転送部と、
前記ネットワーク中継装置の各部を制御する制御部と、
を備え、
前記制御部は、
前記第１の端末と前記第２の端末との間のパケットを監視して、前記パケット転送部の帯域幅を広くする転送性能上昇処理および前記パケット転送部の帯域幅を狭くする転送性能下降処理を実行し、この際、前記パケットがＴＣＰコネクション確立要求時のＳＹＮパケットである場合に、予め定められた規則に従って前記転送性能上昇処理を行うか否かを判定するとともに、前記転送性能上昇処理を行うと判定した場合は、前記ＳＹＮパケットの受信後、前記ＴＣＰコネクション確立要求によるＴＣＰコネクション確立までの間に前記パケット転送部の帯域幅を広くする、ネットワーク中継装置。
こうすれば、端末間でやり取りされるパケットの内容に応じて、ネットワーク中継装置の転送性能が必要な場合は転送性能上昇処理を行い、パケットロスの発生を抑制することができる。同様に、ネットワーク中継装置の転送性能が必要ない場合は転送性能下降処理を行い、低消費電力を実現することができる。ＴＣＰプロトコルにおいては、ＴＣＰコネクション確立後に端末間の通信が行われるため、こうすれば、ネットワーク中継装置において、その転送性能が必要な場合を知ることができる。この結果、ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することが可能となる。
【０００８】
［適用例２］
適用例１記載のネットワーク中継装置であって、
前記制御部は、
前記パケットがＴＣＰコネクション切断要求時のＦＩＮパケットである場合に、予め定められた規則に従って前記転送性能下降処理を行うか否かを判定するとともに、前記転送性能下降処理を行うと判定した場合は、前記ＦＩＮパケットの受信をトリガとして前記パケット転送部の帯域幅を狭くする、ネットワーク中継装置。
こうすれば、ＴＣＰプロトコルにおいては、端末間の通信終了後にはＴＣＰコネクションが切断されるため、ネットワーク中継装置において、その転送性能が必要ない場合を知ることができる。この結果、ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することが可能となる。
【０００９】
［適用例３］
適用例１または２記載のネットワーク中継装置であって、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、ＴＣＰコネクション毎に予め定められた帯域幅によって決定される、ネットワーク中継装置。
こうすれば、ＴＣＰコネクション毎に帯域幅を増減する大きさを定めることができる。このため、ＴＣＰコネクション毎の特性を考慮して、ネットワーク中継装置のパケット転送部の帯域幅を増減させることができる。
【００１０】
［適用例４］
適用例１または２記載のネットワーク中継装置であって、さらに、
外部の端末と接続される複数の回線を備え、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、前記回線毎に予め定められた帯域幅によって決定される、ネットワーク中継装置。
こうすれば、回線毎に帯域幅を増減する大きさを定めることができる。このため、使用されている回線毎に、ネットワーク中継装置のパケット転送部の帯域幅を増減させることができる。
【００１１】
［適用例５］
適用例１または２記載のネットワーク中継装置であって、さらに、
外部の端末と接続される複数の回線と、
１つ以上の前記回線をそれぞれ収容する複数の回線収容部と、
を備え、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、前記回線収容部毎に予め定められた帯域幅によって決定される、ネットワーク中継装置。
こうすれば、回線収容部毎に帯域幅を増減する大きさを定めることができる。このため、使用されている回線収容部毎に、ネットワーク中継装置のパケット転送部の帯域幅を増減させることができる。
【００１２】
［適用例６］
適用例１または２記載のネットワーク中継装置であって、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、ＱｏＳ情報に従って予め定められた帯域幅によって決定される、ネットワーク中継装置。
こうすれば、ＱｏＳサービス品質（例えば、シェーピングやポリシング）を考慮した上で、ネットワーク中継装置のパケット転送部の帯域幅を増減させることができる。
【００１３】
［適用例７］
適用例１または２記載のネットワーク中継装置であって、さらに、
データフロー毎の過去の平均パケット流量と、データフロー毎の過去の最大パケット流量とのうちの少なくとも一方を測定する統計情報部を備え、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、前記平均パケット流量と、前記最大パケット流量とのうちの少なくとも一方より定まる帯域幅によって決定される、ネットワーク中継装置。
こうすれば、データフロー毎の過去のパケット流量（トラフィック量）の統計に基づいて、より適切に、ネットワーク中継装置のパケット転送部の帯域幅を増減させることができる。
【００１４】
［適用例８］
適用例１または２記載のネットワーク中継装置であって、さらに、
外部の端末と接続される複数の回線と、
１つ以上の前記回線をそれぞれ収容する複数の回線収容部と、
データフロー毎の過去の平均パケット流量と、データフロー毎の過去の最大パケット流量とのうちの少なくとも一方を測定する統計情報部と、
を備え、
前記転送性能上昇処理および前記転送性能下降処理における前記パケット転送部の帯域の増減幅は、
（ｉ）ＴＣＰコネクション毎に予め定められた帯域幅と、
（ｉｉ）前記回線毎に予め定められた帯域幅と、
（ｉｉｉ）前記回線収容部毎に予め定められた帯域幅と、
（ｉｖ）ＱｏＳ情報に従って予め定められた帯域幅と、
（ｖ）前記平均パケット流量と、前記最大パケット流量とのうちの少なくとも一方より定まる帯域幅と、
のうちのいずれか１つを用いて決定され、前記（ｉ）〜（ｖ）のいずれを用いるかはＴＣＰコネクション毎に予め定められている、ネットワーク中継装置。
こうすれば、ＴＣＰコネクション毎に、適用例３〜７記載のいずれかの方法で帯域幅を増減させることができる。この結果、よりきめ細かく、ネットワーク中継装置のパケット転送部の帯域幅を増減させることが可能となる。
【００１５】
なお、本発明は、種々の態様で実現することが可能である。例えば、ネットワーク中継装置および方法、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記憶媒体等の形態で実現することができる。
【発明を実施するための最良の形態】
【００１６】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ〜Ｇ．実施例１〜７：
Ｈ．変形例：
【００１７】
Ａ．第１実施例：
図１は、本発明の一実施例としてのネットワーク中継装置が用いられたネットワークの概略構成を示す説明図である。このネットワークは、ネットワーク中継装置１０（以降、「ルータ」とも呼ぶ）と、管理端末９０と、４台のクライアント端末４０〜７０（以降、「クライアント」とも呼ぶ）とを備え、外部ネットワークであるインターネットＩＮＥＴに接続されている。また、インターネットＩＮＥＴには、サーバ２０とサーバ３０とが接続されている。換言すれば、ルータ１０は、クライアント端末間もしくはクライアント端末とサーバ間の伝送路上に配置されるネットワーク中継装置である。
【００１８】
ルータ１０は、回線収容部２００と、２つの回線収容部２０１と、パケット転送部３００と、制御部４００とを備えている。回線収容部２００はインターネットＩＮＥＴと接続するための回線１１０を収容するユニットである。２つの回線収容部２０１のうち、ＬＲＵ＃２はクライアント４０と接続するための回線１２０と、クライアント５０と接続するための回線１３０を収容するユニットである。一方、ＬＲＵ＃３はクライアント６０と接続するための回線１４０とクライアント７０と接続するための回線１５０を収容するユニットである。パケット転送部３００は、ルータ１０を介した（例えば、クライアント端末間、クライアント端末とサーバ間）パケットの転送機能を有する。具体的には、パケット転送部３００は、受信したパケットのヘッダからパケットの出力先を判定し、該当する回線収容部２００へ転送する。パケットは、回線収容部２００に接続されている目的の回線を通じて、宛先へと送信される。なお、本実施例におけるルータ１０は、ハードウェア処理でパケット転送を行う構成としている。制御部４００は、ルータ１０の各部を制御するほか、ルーティングプロトコルの処理等を行う。管理端末９０は、ルータ１０に接続され、ルータ１０を管理するための端末（例えば、パーソナルコンピュータ）である。
【００１９】
図２は、クライアント４０とサーバ３０が通信する場合におけるルータ１０の動作を示すシーケンス図である。ルータ１０は、クライアント４０とサーバ３０との間で通信が行われていない場合、最低限のパケット転送性能を保持した状態の省電力モードで待機する。
【００２０】
クライアント４０とサーバ３０とがＴＣＰプロトコルを用いて通信を行う場合、通信するためのＴＣＰコネクションを確立してから通信を行う。このＴＣＰコネクションを確立するために、クライアント４０とサーバ３０との間で、スリーウェイハンドシェイク（３−ｗａｙ  ｈａｎｄｓｈａｋｅ）と呼ばれる１往復半のやり取りを行う。具体的には、クライアント４０は、これから通信を行いたいことを示すＳＹＮ（Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ）というコネクション確立要求のパケット（ＳＹＮパケット）を送信する（ステップＳ１１）。ルータ１０は、クライアント４０からのＳＹＮパケットをサーバ３０へ転送する（ステップＳ１２）。ＳＹＮパケットを受信したサーバ３０は、当該ＳＹＮパケットに対する確認応答であるＡＣＫと、サーバ３０からクライアント４０へのコネクション確立要求のＳＹＮを兼ねたパケット（ＳＹＮ＋ＡＣＫパケット）を送信する（ステップＳ２１、Ｓ２２）。クライアント４０は、このＳＹＮ＋ＡＣＫパケットを受信した後、これに対するＡＣＫパケットを送信する（ステップＳ３１、Ｓ３２）。このＡＣＫパケットがサーバ３０へ届いた時点で、クライアント４０とサーバ３０とのＴＣＰコネクションが確立される。以降は、この論理的な通信路であるＴＣＰコネクションを用いて、クライアント４０とサーバ３０の間でデータ転送が行われる。
【００２１】
ルータ１０は、端末間でのパケットを監視し、クライアント４０からのＳＹＮパケット受信（ステップＳ１１、時刻ｔ１）をトリガとして、クライアント４０とサーバ３０とのＴＣＰコネクションが確立されるまでに、自身の転送性能を上昇させる（以降、「転送性能上昇処理」とも呼ぶ）。この転送性能の上昇は、ルータ１０が、クライアント４０からのＡＣＫパケット受信後、当該パケットをサーバ３０へ転送するまで（ステップＳ３２、時刻ｔ２）に完了することが好ましい。こうすれば、ＴＣＰコネクションが確立されるまでの間に、確実に転送性能を上昇させることができる。この転送性能の上昇は、ルータ１０のパケット転送部３００の帯域幅を広くすることにより行う。なお、転送性能上昇処理についての詳細は後述する。このようにすれば、クライアント４０とサーバ３０の間のＴＣＰコネクションが確立するまでの間に、ルータ１０の転送性能を上昇させることができる。このため、クライアント４０とサーバ３０の間のデータ転送に必要な転送性能を確保することができ、パケットロスの発生を抑制することが可能となる。
【００２２】
クライアント４０とサーバ３０とが通信を終了する場合は、両者の間に確立されているＴＣＰコネクションを切断した上で通信を終了する。具体的には、クライアント４０は、サーバ３０に対してＦＩＮというコネクション切断要求のパケット（ＦＩＮパケット）を送信する（ステップＳ４１）。ルータ１０はクライアント４０からのＦＩＮパケットをサーバ３０へ転送する（ステップＳ４２）。ＦＩＮパケットを受信したサーバ３０は、当該ＦＩＮパケットに対する確認応答であるＡＣＫパケットを送信する（ステップＳ５１、Ｓ５２）。また、サーバ３０の側からも、クライアント４０に対するコネクション切断要求のＦＩＮパケットを送信する（ステップＳ６１、Ｓ６２）。クライアント４０は、このＦＩＮパケットを受信した後、これに対するＡＣＫパケットを送信する（ステップＳ７１、Ｓ７２）。このＡＣＫパケットがサーバ３０へ届いた時点で、クライアント４０とサーバ３０とのＴＣＰコネクションが切断される。
【００２３】
ルータ１０は、端末間でのパケットを監視し、クライアント４０からのＦＩＮパケット受信（ステップＳ４１、時刻ｔ３）をトリガとして、自身の転送性能を下降させる（以降、「転送性能下降処理」とも呼ぶ）。この転送性能の下降は、ルータ１０のパケット転送部３００の帯域幅を狭くすることによって行う。なお、転送性能下降処理における下降幅は、転送上昇処理における上昇幅とは等しくすることが好ましいが、個別に設定してもよい。このようにすれば、ＴＣＰコネクション切断要求時のＦＩＮパケットによって、クライアント４０とサーバ３０の間のデータ転送終了を判断し、ルータ１０の転送性能を下降させることができる。このため、低消費電力を実現することが可能となる。
【００２４】
図２では、クライアント４０とサーバ３０とが通信を行う場合を例として、ルータ１０の転送性能上昇処理および転送性能下降処理について説明した。ルータ１０は、他の端末間（例えば、クライアント端末間、クライアント端末とサーバ間）のパケットを転送する際にも、図２で説明した転送性能上昇処理と転送性能下降処理を行う。このようにすれば、ルータ１０を介して複数の端末同士が通信を行う場合であっても、個々のＴＣＰコネクション毎に、転送性能上昇処理と転送性能下降処理をすることが可能となる。この結果、ＴＣＰコネクション毎にきめ細かい転送性能の制御ができるため、パケットロスの発生を抑制しつつ低消費電力を実現することが可能となる。
【００２５】
図３は、ルータ１０で用いられるパケット１０００の構造を示す説明図である。パケット１０００は、装置内ヘッダ１１００と、イーサネットヘッダ１２００と、ＩＰヘッダ１３００と、ＴＣＰヘッダ１４００と、データ１５００とを含んでいる。これら各ヘッダについての詳細は後述する。
【００２６】
図４は、装置内ヘッダ１１００の構造を示す説明図である。装置内ヘッダ１１００は、入力回線収容部番号１１１０と、入力回線番号１１２０と、出力回線番号１１３０と、キュー番号１１４０とを含んでいる。入力回線収容部番号１１１０は、パケット１０００が受信された回線収容部２００を識別するための情報である。入力回線番号１１２０は、パケット１０００が受信された回線を識別するための情報である。出力回線番号１１３０は、ルータ１０がパケット１０００を送信する際の回線を識別するための情報である。キュー番号１１４０は、ルータ１０がパケット１０００を送信する際に使用するキューを識別するための情報である。このキューによって、ルータ１０がパケットを送信する順序を制御する。
【００２７】
図５は、イーサネットヘッダ１２００の構造を示す説明図である。イーサネットヘッダ１２００は、宛先ＭＡＣアドレス１２１０と、送信元ＭＡＣアドレス１２２０と、タイプ１２３０とを含んでいる。タイプ１２３０は、上位層（すなわち、ネットワーク層）のプロトコルを示す情報である。
【００２８】
図６は、ＩＰヘッダ１３００の構造を示す説明図である。ＩＰヘッダ１３００は、送信元ＩＰアドレス１３１０と、宛先ＩＰアドレス１３２０と、プロトコル１３３０とを含んでいる。プロトコル１３３０は、上位層（すなわち、トランスポート層）のプロトコルを示す情報である。
【００２９】
図７は、ＴＣＰヘッダ１４００の構造を示す説明図である。ＴＣＰヘッダ１４００は、送信元ポート番号１４１０と、宛先ポート番号１４２０と、シーケンス番号１４３０と、確認応答番号１４４０と、データオフセット１４５０と、予約フィールド１４６０と、コントロールフラグ１４７０と、ウィンドウサイズ１４８０とを含んでいる。送信元ポート番号１４１０および宛先ポート番号１４２０は、パケット１０００が、どのアプリケーションに必要なパケットであるかを示す情報である。シーケンス番号１４３０および確認応答番号１４４０は、パケット１０００に含まれるデータ１５００の通し番号として使用される情報である。データオフセット１４５０は、ＴＣＰヘッダ１４００の長さを示す情報である。
【００３０】
コントロールフラグ１４７０は、ＣＷＲフラグ１４７１と、ＥＣＥフラグ１４７２と、ＵＲＧフラグ１４７３と、ＡＣＫフラグ１４７４と、ＰＳＨフラグ１４７５と、ＲＳＴフラグ１４７６と、ＳＹＮフラグ１４７７と、ＦＩＮフラグ１４７８とを含んでいる。ＣＷＲフラグ１４７１とＥＣＥフラグ１４７２は、輻輳制御に使用されるフラグである。ＵＲＧフラグ１４７３は、パケット１０００中に緊急データが含まれていることを示すフラグである。ＡＣＫフラグ１４７４は、パケットが正常に受信されたことを示すフラグである。ＰＳＨフラグ１４７５は、パケット１０００が到着次第、上位のプロトコルへデータを渡してほしい旨を示すフラグである。ＲＳＴフラグ１４７６は、コネクションのリセットを要求する旨を示すフラグである。ＳＹＮフラグ１４７７は、コネクションの確立を要求する旨を示すフラグである。転送性能上昇処理（図２）において、ルータ１０は、このＳＹＮフラグ１４７７の値が１のパケット１０００を受信した場合に、ＳＹＮパケットを受信したものと判断する（ステップＳ１１、時刻ｔ１）。ＦＩＮフラグ１４７８は、コネクションの切断を要求する旨を示すフラグである。転送性能下降処理（図２）において、ルータ１０は、このＦＩＮフラグ１４７８の値が１のパケット１０００を受信した場合に、ＦＩＮパケットを受信したものと判断する（ステップＳ４１）。ウィンドウサイズ１４８０は、セグメント欠陥時等におけるバッファリング可能なバイト数を示す情報である。
【００３１】
図８は、ルータ１０の概略構成を示す説明図である。回線収容部ＬＲＵ＃１は、装置内ヘッダ付与部２１０と、回線読出部２２０と、バッファ２３０とを備えている。
【００３２】
装置内ヘッダ付与部２１０は、回線１１０を介して受信したパケット１０００に対して、装置内ヘッダ１１００（図３、図４）を付加する機能を有する。回線収容部ＬＲＵ＃１が、回線１１０を経由してパケット１０００を受信した場合を例にして説明する。まず、装置内ヘッダ付与部２１０は、パケット１０００に対して装置内ヘッダ１１００を付与する。そして、入力回線収容部番号１１１０フィールドに、回線収容部ＬＲＵ＃１を識別するための情報を格納する。さらに、入力回線番号１１２０フィールドに、回線１１０を識別するための情報を格納する。その後、装置内ヘッダ付与部２１０は、当該パケットをバッファ２３０へ格納する。このバッファ２３０は、一時的にパケットを格納しておくためのバッファメモリ領域である。
【００３３】
バッファ２３０に格納されたパケット１０００は、パケット転送部３００および制御部４００によって種々の処理（詳細については後述）がなされ、バッファ２３０内のキューに格納される。回線読出部２２０は、バッファ２３０内のキューに格納されたパケット１０００を読み出して、パケット１０００を回線１１０に送信する。なお、回線読出部２２０は、キュー毎に定められた出力帯域に従って、パケット１０００を回線１１０に送信するものとしてもよい。回線収容部ＬＲＵ＃２は、２つの回線に対応して、２つの装置内ヘッダ付与部２１０と、回線読出部２２０と、バッファ２３０とを備えている。各部の動作は前述の通りである。また、回線収容部ＬＲＵ＃３は回線収容部ＬＲＵ＃２と同様であるため、詳細な図示を省略した。
【００３４】
パケット転送部３００は、検索処理部３１０と、転送処理部３２０とを備えている。転送処理部３２０は、パケット読出部３２３と、パケットメモリ３２４と、内部読出部３２１と、ヘッダ書込部３２２と、統計情報部３２５と、性能制御部３２９とを備えている。パケット読出部３２３は、バッファ２３０に蓄積されたパケット１０００を読み出し、パケットメモリ３２４へ格納する。パケットメモリ３２４は、一時的にパケットを格納しておくためのバッファメモリ領域である。内部読出部３２１は、パケットメモリ３２４に蓄積されたパケットを読み出し、検索処理部３１０および制御部４００内のＣＰＵ４１０へと転送する。ヘッダ書込部３２２は、検索処理部３１０で処理されたパケット１０００の情報を上書きする機能を有する。この上書きは、パケットメモリ３２４内の該当するパケット１０００に対して行う。なお、検索処理部３１０での処理については後述する。性能制御部３２９は、転送処理部３２０の転送性能を上昇または下降させる機能を有する。具体的には、性能制御部３２９は、ＣＰＵ４１０から転送性能制御情報を受信し、この転送性能制御情報に基づいて、転送処理部３２０内の各部（パケット読出部３２３、パケットメモリ３２４、内部読出部３２１、ヘッダ書込部３２２）のクロック周波数や電源電圧を制御し、転送性能を増減させる。
【００３５】
検索処理部３１０は、ルーティングテーブル３１１と、ＱｏＳテーブル３１２と、テーブル検索駆動部３１３と、性能制御部３１９とを備えている。ルーティングテーブル３１１は、送信先ＩＰアドレスごとの出力回線番号が格納されているテーブルである。ＱｏＳテーブル３１２は、シェーピングやポリシングといった、出力レート制限機能を実現するためのパケットの優先度情報を格納するテーブルである。テーブル検索駆動部３１３は、内部読出部３２１から受け取ったパケット１０００のヘッダ情報（装置内ヘッダ１１００〜ＴＣＰヘッダ１４００）を元に、ルーティングテーブル３１１とＱｏＳテーブル３１２とを検索する。そして、ルーティングテーブル３１１から検索した出力回線番号を、装置内ヘッダ１１００の出力回線番号１１３０フィールドに格納する。さらに、ＱｏＳテーブル３１２から検索したキュー番号を、装置内ヘッダ１１００のキュー番号１１４０フィールドに格納する。性能制御部３１９は、検索処理部３１０の転送性能を上昇または下降させる機能を有する。具体的には、性能制御部３１９は、ＣＰＵ４１０から転送性能制御情報を受信し、この転送性能制御情報に基づいて、検索処理部３１０内の各部（テーブル検索駆動部３１３、ルーティングテーブル３１１、ＱｏＳテーブル３１２）のクロック周波数や電源電圧を制御し、転送性能を増減させる。
【００３６】
制御部４００は、ＣＰＵ４１０と、メモリ４２０とを備えている。ＣＰＵ４１０は、転送性能上昇処理や転送性能下降処理などの機能を有する汎用プロセッサである。メモリ４２０は、ステートテーブル４２１と、コネクション帯域テーブル４２２とを備える記憶領域である。ステートテーブル４２１は、現時点におけるＴＣＰコネクションの状態を示すテーブルである。コネクション帯域テーブル４２２は、ＴＣＰコネクションのタイプ等に応じて、そのコネクションに割り当てるべき帯域を示すテーブルである。各テーブルについての詳細は後述する。
【００３７】
図９は、転送性能上昇処理の処理手順を示すフローチャートである。まず、ＣＰＵ４１０は、内部読出部３２１から受信したパケット１０００がＳＹＮパケットであるか否かを判断する（ステップＳ５０）。具体的には、パケット１０００のＴＣＰヘッダ１４００（図７）のうち、ＳＹＮフラグ１４７７の値が１である場合にＳＹＮパケットであると判断する。次にＣＰＵ４１０は、帯域検索を行う（ステップＳ５１）。帯域検索についての詳細は後述する。帯域検索の後、ＣＰＵ４１０は、ルータ１０の帯域計算を行う（ステップＳ５２）。帯域計算についての詳細は後述する。ルータ１０の帯域計算が終了した後、ＣＰＵ４１０は、転送性能制御情報を送信する（ステップＳ５３）。この転送性能制御情報は、検索処理部３１０の性能制御部３１９と、転送処理部３２０の性能制御部３２９とに向けて送信される。転送性能制御情報を受信後の転送性能の増減処理については前述の通りである。
【００３８】
図１０は、ステートテーブル４２１の一例を示す説明図である。ステートテーブル４２１は、送信元ＩＰアドレスＦＩＰと、送信先ＩＰアドレスＴＩＰと、送信元ポート番号ＦＰＴと、送信先ポート番号ＴＰＴと、ステートＳＴと、帯域ＢＡとを含んでいる。このうち、送信元ＩＰアドレスＦＩＰと、送信先ＩＰアドレスＴＩＰと、送信元ポート番号ＦＰＴと、送信先ポート番号ＴＰＴとの組から、ＴＣＰコネクションを識別することができる。なお、これら４つの情報（送信元ＩＰアドレスＦＩＰ、送信先ＩＰアドレスＴＩＰ、送信元ポート番号ＦＰＴ、送信先ポート番号ＴＰＴ）をまとめて「コネクション情報」とも呼ぶ。
【００３９】
ステートＳＴは、コネクション情報によって識別されるＴＣＰコネクションの状態である。具体的には、ステートＳＴフィールドの値と、ＴＣＰコネクションの状態とは以下のような対応関係となる。
・ＳＴ＝０：ＳＹＮパケットを受信していない状態
・ＳＴ＝１：ＴＣＰコネクション確立要求をする側からのＳＹＮパケットを受信した状態（図２、ステップＳ１１）
・ＳＴ＝２：ＴＣＰコネクション確立要求をされる側からのＳＹＮ＋ＡＣＫパケットを受信した状態（図２、ステップＳ２１）
・ＳＴ＝３：ＴＣＰコネクション確立要求をする側からのＡＣＫパケットを受信した状態（図２、ステップＳ３１）
・ＳＴ＝４：ＴＣＰコネクション切断要求をする側からのＦＩＮパケットを受信した状態（図２、ステップＳ４１）
・ＳＴ＝５：ＴＣＰコネクション切断要求をされる側からのＡＣＫパケットを受信した状態（図２、ステップＳ５１）
・ＳＴ＝６：ＴＣＰコネクション切断要求をされる側からのＦＩＮパケットを受信した状態（図２、ステップＳ６１）
・ＳＴ＝７：ＴＣＰコネクション切断要求をする側からのＡＣＫパケットを受信した状態（図２、ステップＳ７１）
【００４０】
帯域ＢＡは、コネクション情報によって識別されるＴＣＰコネクション毎の帯域の増減幅であり、初期値は０である。ＣＰＵ４１０は、内部読出部３２１から受信したパケット１０００について、そのコントロールフラグ１４７０を確認する。そして、ＴＣＰコネクションの状態が変化する都度、前述の対応関係に基づいてステートテーブル４２１のステートＳＴフィールドの値を更新する。また、ＣＰＵ４１０は、ステートＳＴフィールドの値が７となったエントリについて、当該エントリを削除する。なお、このとき、当該エントリを削除するのではなく、下記のような処理を行ってもよい。
・帯域ＢＡフィールドの値を０とする。
・帯域ＢＡフィールドの値を０、ステートＳＴフィールドの値を０とする。
【００４１】
図１１は、コネクション帯域テーブル４２２の一例を示す説明図である。コネクション帯域テーブル４２２は、送信元ＩＰアドレスＳＦＩＰと、送信先ＩＰアドレスＳＴＩＰと、送信元ポート番号ＳＦＰＴと、送信先ポート番号ＳＴＰＴと、帯域ＳＢＡとを含んでいる。コネクション帯域テーブル４２２においては、送信元ＩＰアドレスＳＦＩＰと、送信先ＩＰアドレスＳＴＩＰと、送信元ポート番号ＳＦＰＴと、送信先ポート番号ＳＴＰＴとの組からＴＣＰコネクションを識別する。帯域ＳＢＡは、ＴＣＰコネクション毎に割り当てるべき帯域である。帯域ＳＢＡフィールドの値は、予めルータ１０の管理者等により設定される。送信元ＩＰアドレスＳＦＩＰと、送信先ＩＰアドレスＳＴＩＰと、送信元ポート番号ＳＦＰＴと、送信先ポート番号ＳＴＰＴには、どのような値であっても一致するという意味の値「*」を格納することができる。なお、コネクション情報に一致するエントリがコネクション帯域テーブル４２２に無い場合を考慮し、エントリの末尾にはエントリＥ０６のようなエントリを設けておくことが好ましい。このエントリにおける帯域は小さな値としておくことが好ましい。
【００４２】
図１２は、第１実施例における帯域検索（図９、ステップＳ５１）の処理手順を示すフローチャートである。図１３は、帯域検索に伴ってステートテーブル４２１が更新される様子を示す説明図である。ステップＳ１００において、ＣＰＵ４１０は、ステートテーブル４２１へパケット１０００の情報を追加する。具体的には、ＣＰＵ４１０は、ステートテーブル４２１に新たなエントリＥ０４（図１３（Ｂ））を追加する。また、このエントリＥ０４の送信元ＩＰアドレスＦＩＰフィールドにＩＰヘッダ１３００の送信元ＩＰアドレス１３１０の値（ＩＰ４０）を格納する。同様に、送信先ＩＰアドレスＴＩＰフィールドにＩＰヘッダ１３００の宛先ＩＰアドレス１３２０の値（ＩＰ３０）を、送信元ポート番号ＦＰＴにＴＣＰヘッダ１４００の送信元ポート番号１４１０の値（１０６５）を、送信先ポート番号ＴＰＴにＴＣＰヘッダ１４００の宛先ポート番号１４２０の値（８０）を格納する。また、ＣＰＵ４１０は、ステートＳＴフィールドに、ＳＹＮパケットを受信した状態を示す数字（１）を格納する。帯域ＢＡフィールドの値は初期値（０）である。
【００４３】
ステップＳ１０１において、ＣＰＵ４１０は、コネクション帯域テーブル４２２を検索して帯域を求める。具体的には、ＣＰＵ４１０は、ステートテーブル４２１に格納したコネクション情報（送信元ＩＰアドレスＦＩＰ、送信先ＩＰアドレスＴＩＰ、送信元ポート番号ＦＰＴ、送信先ポート番号ＴＰＴ）をキーとして、コネクション帯域テーブル４２２を検索する。ここでは、コネクション帯域テーブル４２２のエントリＳＥ０１（図１１）に一致するため、帯域ＳＢＡの値は５０である。ステップＳ１０２において、ＣＰＵ４１０は、ステップＳ１０１で検索した帯域ＳＢＡ＝５０をステートテーブル４２１のエントリＥ０４の帯域ＢＡフィールドに格納する（図１３（Ｃ））。
【００４４】
図１４は、帯域計算における帯域とクロック周波数との関係を示すグラフである。図１４の縦軸はパケット転送部３００内の各部のクロック周波数を、横軸はステートテーブル４２１の合計帯域を示している。この合計帯域は大きくなればなるほど必要な帯域幅が広くなることを意味する。必要な帯域幅が広くなれば、クロック周波数が上がるため、ルータ１０の転送性能は増大する。合計帯域は、ステートテーブル４２１のステートＳＴフィールドの値が１〜３であるエントリを抽出し、そのエントリについての、帯域ＢＡフィールドの値の和により求める。ステートＳＴフィールドの値が４以上のエントリは、既にＦＩＮパケットを受信した後のエントリとなるからである。図１３（Ｃ）の例では、合計帯域は、１００（エントリＥ０１）＋５０（エントリＥ０４）＝１５０（Ｋｂｐｓ）となる。ＣＰＵ４１０は、合計帯域からクロック周波数を求め、その値を転送性能制御情報として、検索処理部３１０の性能制御部３１９および転送処理部３２０の性能制御部３２９へ送信する。なお、図１４においては、縦軸をパケット転送部３００内の各部のクロック周波数としているが、縦軸はルータ１０に供給される電源電圧としてもよい。また、合計帯域からクロック周波数と電源電圧との両方を決定する構成とすることもできる。
【００４５】
図１５は、転送性能下降処理の処理手順を示すフローチャートである。まず、ＣＰＵ４１０は、内部読出部３２１から受信したパケット１０００がＦＩＮパケットであるか否かを判断する（ステップＳ６０）。具体的には、パケット１０００のＴＣＰヘッダ１４００（図７）のうち、ＦＩＮフラグ１４７８の値が１である場合にＦＩＮパケットであると判断する。次にＣＰＵ４１０は、前述した手順を用いてルータ１０の帯域計算を行う（ステップＳ６１）。ルータ１０の帯域計算が終了した後、ＣＰＵ４１０は、合計帯域からパケット転送部３００内の各部のクロック周波数を求め、その値を転送性能制御情報として、検索処理部３１０の性能制御部３１９および転送処理部３２０の性能制御部３２９へ送信する（ステップＳ６２）。
【００４６】
このようにすれば、端末間でやり取りされるパケットの内容から、ＴＣＰコネクションが確立されることと、切断されることを知ることができる。そして、このＴＣＰコネクションの状態に応じて、ルータの転送性能が必要な場合は転送性能上昇処理を行う。これにより、パケットロスの発生を抑制することができる。一方、ルータの転送性能が必要ない場合は転送性能下降処理を行う。これにより、低消費電力を実現することができる。この結果、ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することが可能となる。また、第１実施例においては、コネクション帯域テーブルを元にしてルータの帯域の増減幅を定めている。このため、ＴＣＰコネクション毎の特性を考慮して、ルータのパケット転送部の帯域幅を増減させることができる。
【００４７】
Ｂ．第２実施例：
図１６は、第２実施例におけるルータ１０の概略構成を示す説明図である。図８で示した第１実施例との大きな違いは、制御部４００のメモリ４２０内に、ステートテーブル４２１およびコネクション帯域テーブル４２２の代わりに、回線帯域テーブル４２３とルーティングテーブル４２４とを備えている点だけであり、他の構成は第１実施例とほぼ同じである。
【００４８】
図１７は、ルーティングテーブル４２４の一例を示す説明図である。ルーティングテーブル４２４は送信先ＩＰアドレスＩＰと、出力回線番号ＬＮとを含んでいる。出力回線番号ＬＮフィールドの各値＃１１０、＃１２０、＃１３０は、個々の回線１１０、回線１２０、回線１３０に予め割り当てられた番号である。なお、このルーティングテーブル４２４は、パケット転送部３００のルーティングテーブル３１１のコピーであることが好ましい。
【００４９】
図１８は、回線帯域テーブル４２３の一例を示す説明図である。回線帯域テーブル４２３は、回線番号ＬＮＯと、帯域ＬＢＡと、コネクション数ＬＣＥとを含んでいる。帯域ＬＢＡフィールドは、第２実施例における帯域の増減幅であり、回線毎に割り当てられている最大帯域が格納される。この設定は、予めルータ１０の管理者等によって行われる。コネクション数ＬＣＥは、回線毎のＴＣＰコネクションの数である。なお、詳細については後述する。転送性能上昇処理における大まかな処理の流れは、図９と同様である。
【００５０】
図１９は、第２実施例における帯域検索（図９、ステップＳ５１）の処理手順を示すフローチャートである。図２０は、第２実施例における帯域検索方法の説明に利用するＴＣＰコネクションの例を示す説明図である。図２１は、帯域検索によって更新された回線帯域テーブル４２３の様子を示す説明図である。
【００５１】
ステップＳ２００において、ＣＰＵ４１０は、ルーティングテーブル４２４の情報を検索する。具体的には、以下のようにして、ＴＣＰコネクション間で使用されている回線を検索する。
ｉ）ＣＰＵ４１０は、ＩＰヘッダ１３００の送信元ＩＰアドレス１３１０の値（図６）と、ルーティングテーブル４２４の送信元ＩＰアドレスＩＰの値（図１７）とが一致する出力回線番号ＬＮ（図１７）を検索する。
ｉｉ）ＣＰＵ４１０は、ＩＰヘッダ１３００の宛先ＩＰアドレス１３２０の値（図６）と、ルーティングテーブル４２４の送信元ＩＰアドレスＩＰの値（図１７）とが一致する出力回線番号ＬＮ（図１７）を検索する。
【００５２】
図２０では、２つのＴＣＰコネクションＣＯ１、ＣＯ２が確立されている。ＣＯ１は、クライアント４０からサーバ３０へのＴＣＰコネクションである。ＣＯ２は、クライアント５０からサーバ２０へのＴＣＰコネクションである。
・ＣＯ１：
ｉ）送信元ＩＰアドレス１３１０はＩＰ４０であるため、出力回線番号ＬＮ＝＃１２０（図１７、エントリＲＥ０３）
ｉｉ）宛先ＩＰアドレス１３２０はＩＰ３０であるため、出力回線番号ＬＮ＝＃１１０（図１７、エントリＲＥ０２）
・ＣＯ２：
ｉ）送信元ＩＰアドレス１３１０はＩＰ５０であるため、出力回線番号ＬＮ＝＃１３０（図１７、エントリＲＥ０４）
ｉｉ）宛先ＩＰアドレス１３２０はＩＰ２０であるため、出力回線番号ＬＮ＝＃１１０（図１７、エントリＲＥ０１）
【００５３】
ＣＰＵ４１０は、ステップＳ２００で求めた出力回線番号をキーとして回線帯域テーブル４２３（図２１（Ａ））を検索する（ステップＳ２０１）。ＣＰＵ４１０は、ステップＳ２００で求めた出力回線番号と、回線帯域テーブル４２３の回線番号ＬＮＯとの値が一致するエントリについて、当該エントリのコネクション数ＬＣＥフィールドの値に「１」を加える（ステップＳ２０２）。ステップＳ２０１、Ｓ２０２の処理は、ルーティングテーブル４２４の検索結果それぞれについて行う。図２１（Ｂ）は、コネクション数ＬＣＥフィールド更新後の回線帯域テーブル４２３を示している。ＴＣＰコネクションの確立に使用されている回線は、回線１１０が２本（ＬＥ０１）、回線１２０が１本（ＬＥ０２）、回線１３０が１本（ＬＥ０３）である。
【００５４】
第２実施例では、合計帯域の計算方法のみ第１実施例と異なる。合計帯域は、回線帯域テーブル４２３のコネクション数ＬＣＥフィールドの値が１以上であるエントリを抽出し、そのエントリについての、帯域ＬＢＡフィールドの値の和により求める。コネクション数ＬＣＥフィールドの値が０であれば、その回線は使用されていないからである。図２１（Ｂ）の例では、合計帯域は、１００００（エントリＬＥ０１）＋１０００（エントリＬＥ０２）＋１０００（エントリＬＥ０３）＝１２０００（Ｋｂｐｓ）となる。ＣＰＵ４１０は、合計帯域からクロック周波数を求めて転送性能制御情報として検索処理部３１０の性能制御部３１９および転送処理部３２０の性能制御部３２９へ送信する。合計帯域からクロック周波数を求める方法は図１４で説明した通りである。
【００５５】
転送性能下降処理における大まかな処理の流れは、図１５とほぼ同様である。しかし、第２実施例においては、ステップＳ６０の後、回線帯域テーブル４２３の更新を行う点において第１実施例と異なる。ＣＰＵ４１０は、内部読出部３２１から受信したパケット１０００がＦＩＮパケットである場合に、回線帯域テーブル４２３を更新する。具体的には、まず、パケット１０００のＴＣＰヘッダ１４００（図７）のうち、ＦＩＮフラグ１４７８の値が１である場合に、受信パケットがＦＩＮパケットであると判断する。次にＣＰＵ４１０は、当該パケットの出力回線番号ＬＮを検索する（詳細は図１９、ｉ、ｉｉで説明した通り）。ＣＰＵ４１０は、検索した出力回線番号ＬＮと、回線帯域テーブル４２３（図２１（Ｂ））の回線番号ＬＮＯとの値が一致するエントリについて、コネクション数ＬＣＥフィールドの値から「１」を減ずる。ＣＰＵ４１０は、コネクション数ＬＣＥフィールド更新後、図１５のステップＳ６１以降の処理を行う。
【００５６】
このようにすれば、回線毎に帯域幅を増減する大きさを定めることができる。回線帯域テーブルに、回線毎に使用可能な最大帯域を設定しておくことで、ＴＣＰコネクションがある（使用している）回線は最大の帯域幅を使用しての通信が可能となり、パケットロスの発生を抑制することができる。また、ＴＣＰコネクションがない（使用していない）回線は帯域幅を割り当てないことによって低消費電力を実現することができる。このため、使用されている回線毎に、ルータのパケット転送部の帯域幅を増減させることができる。この結果、ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することが可能となる。
【００５７】
Ｃ．第３実施例：
図２２は、第３実施例におけるルータ１０の概略構成を示す説明図である。図１６で示した第２実施例との大きな違いは、制御部４００のメモリ４２０内に、回線帯域テーブル４２３の代わりに、収容部帯域テーブル４２５を備えている点だけであり、他の構成は第２実施例とほぼ同じである。
【００５８】
図２３は、収容部帯域テーブル４２５の一例を示す説明図である。収容部帯域テーブル４２５は、回線収容部番号ＲＮＯと、帯域ＲＢＡと、コネクション数ＲＣＥとを含んでいる。帯域ＲＢＡフィールドは、第３実施例における帯域の増減幅であり、回線収容部毎に割り当てられている最大帯域が格納される。この設定は、予めルータ１０の管理者等によって行われる。コネクション数ＲＣＥは、回線収容部毎のＴＣＰコネクションの数である。なお、詳細については後述する。転送性能上昇処理における大まかな処理の流れは、図９と同様である。
【００５９】
図２４は、第３実施例における帯域検索（図９、ステップＳ５１）の処理手順を示すフローチャートである。ＣＰＵ４１０は、図１９において説明したステップＳ２００の処理を行ったあと、ステップＳ２００で求めた出力回線番号から、当該回線が収容されている回線収容部２００、２０１の番号を識別する（ステップＳ３００）。この識別処理は、回線と回線収容部との対応関係を保持するテーブル（図示省略）を用いて行うほか、任意の方法を採用することができる。ＣＰＵ４１０は、ステップＳ３００で求めた回線収容部番号をキーとして収容部帯域テーブル４２５を検索する（ステップＳ３０１）。ＣＰＵ４１０は、ステップＳ３００で求めた回線収容部番号と、収容部帯域テーブル４２５の回線収容部番号ＲＮＯとの値が一致するエントリについて、コネクション数ＲＣＥフィールドの値に「１」を加える（ステップＳ３０２）。
【００６０】
２つのＴＣＰコネクションＣＯ１、ＣＯ２がある場合（図２０）は、ＴＣＰコネクションの確立に使用されている回線は、回線１１０が２本、回線１２０が１本、回線１３０が１本である。回線１１０は回線収容部ＬＲＵ＃１に収容されている。回線１２０と回線１３０は回線収容部ＬＲＵ＃２に収容されている。従って、図２３に示すように、回線収容部ＬＲＵ＃１のコネクション数ＲＣＥは２（エントリＥＥ０１）、回線収容部ＬＲＵ＃２のコネクション数ＲＣＥは２（エントリＥＥ０２）、回線収容部ＬＲＵ＃３のコネクション数ＲＣＥは０（エントリＥＥ０３）となる。
【００６１】
第３実施例では、合計帯域の計算方法のみ第２実施例と異なる。合計帯域は、収容部帯域テーブル４２５のコネクション数ＲＣＥフィールドの値が１以上であるエントリを抽出し、そのエントリについての、帯域ＲＢＡフィールドの値の和により求める。コネクション数ＲＣＥフィールドの値が０であれば、その回線収容部に収容されている回線は使用されていないからである。図２３の例では、合計帯域は、１００００（エントリＥＥ０１）＋２０００（エントリＥＥ０２）＝１２０００（Ｋｂｐｓ）となる。ＣＰＵ４１０は、合計帯域からクロック周波数を求めて転送性能制御情報として検索処理部３１０の性能制御部３１９および転送処理部３２０の性能制御部３２９へ送信する。合計帯域からクロック周波数を求める方法は図１４で説明した通りである。
【００６２】
転送性能下降処理における大まかな処理の流れは、図１５とほぼ同様である。しかし、第３実施例においては、ステップＳ６０の後、収容部帯域テーブル４２５の更新を行う点において第２実施例と異なる。ＣＰＵ４１０は、内部読出部３２１から受信したパケット１０００ＦＩＮパケットである場合に、収容部帯域テーブル４２５を更新する。具体的には、パケット１０００のＴＣＰヘッダ１４００（図７）のうち、ＦＩＮフラグ１４７８の値が１である場合に、受信パケットがＦＩＮパケットであると判断する。次にＣＰＵ４１０は、当該パケットの出力回線番号ＬＮを検索する（詳細は図１９、ｉ、ｉｉで説明した通り）。その後、ＣＰＵ４１０は、検索した回線が収容されている回線収容部の番号を識別する。そして、当該回線収容部の番号と、収容部帯域テーブル４２５の回線収容部番号ＲＮＯとの値が一致するエントリについて、コネクション数ＲＣＥフィールドの値から「１」を減ずる。ＣＰＵ４１０は、コネクション数ＲＣＥフィールド更新後、図１５のステップＳ６１以降の処理を行う。
【００６３】
このようにすれば、回線収容部毎に帯域幅を増減する大きさを定めることができる。収容部帯域テーブルに、回線収容部毎に使用可能な最大帯域を設定しておくことで、ＴＣＰコネクションがある（使用している）回線を収容する回線収容部は最大の帯域幅を使用しての通信が可能となり、パケットロスの発生を抑制することができる。また、ＴＣＰコネクションがない（使用していない）回線を収容する回線収容部は帯域幅を割り当てないことによって低消費電力を実現することができる。このため、使用されている回線収容部毎に、ルータのパケット転送部の帯域幅を増減させることができる。この結果、ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することが可能となる。
【００６４】
Ｄ．第４実施例：
図２５は、第４実施例におけるルータ１０の概略構成を示す説明図である。図８で示した第１実施例との大きな違いは、制御部４００のメモリ４２０内に、コネクション帯域テーブル４２２の代わりに、ＱｏＳ帯域テーブル４２６を備えている点だけであり、他の構成は第１実施例とほぼ同じである。
【００６５】
図２６は、ＱｏＳ帯域テーブル４２６の一例を示す説明図である。ＱｏＳ帯域テーブル４２６は、送信元ＩＰアドレスＱＦＩＰと、送信先ＩＰアドレスＱＴＩＰと、送信元ポート番号ＱＦＰＴと、送信先ポート番号ＱＴＰＴと、キュー番号ＱＱＮと、帯域ＱＢＡとを含んでいる。このうち、送信元ＩＰアドレスＱＦＩＰと、送信先ＩＰアドレスＱＴＩＰと、送信元ポート番号ＱＦＰＴと、送信先ポート番号ＱＴＰＴとの組から、ＴＣＰコネクションを識別する。キュー番号ＱＱＮは、データフローがキューイングされるキュー番号である。なお、「データフロー」とは、一定のルールによってグルーピング可能なデータの集合を意味する。そして、本明細書におけるルールは、「送信元ＩＰアドレス、送信先ＩＰアドレス、送信元ポート番号、送信先ポート番号から識別されるＴＣＰコネクションが同一であること」としている。帯域ＱＢＡは、第４実施例における帯域の増減幅である。
【００６６】
送信元ＩＰアドレスＱＦＩＰと、送信先ＩＰアドレスＱＴＩＰと、送信元ポート番号ＱＦＰＴと、送信先ポート番号ＱＴＰＴには、どのような値であっても一致するという意味の値「*」を格納することができる。コネクション情報に一致するエントリがＱｏＳ帯域テーブル４２６に無い場合を考慮し、エントリの末尾にはエントリＱＥ０３のようなエントリを設けておくことが好ましい。このエントリにおける帯域ＱＢＡの値は小さな値に設定しておくことが好ましい。なお、このＱｏＳ帯域テーブル４２６は、パケット転送部３００のＱｏＳテーブル３１２のコピーであることが好ましい。転送性能上昇処理における大まかな処理の流れは、図９と同様である。
【００６７】
図２７は、第４実施例における帯域検索（図９、ステップＳ５１）の処理手順を示すフローチャートである。ステップＳ４００において、ＣＰＵ４１０は、ＱｏＳ帯域テーブル４２６を検索して帯域を求める。具体的には、ＣＰＵ４１０は、ステートテーブル４２１に格納したコネクション情報をキーとして、ＱｏＳ帯域テーブル４２６を検索する。ここでは、ＱｏＳ帯域テーブル４２６のエントリＱＥ０１（図２６）に一致するため、帯域ＱＢＡの値は５０である。なお、帯域計算および転送性能下降処理は、第１実施例と同様である。
【００６８】
このようにすれば、第１実施例と同様に、ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することが可能となる。また、第４実施例においては、ＱｏＳ帯域テーブルを元にしてルータの帯域の増減幅を定めている。このため、ＱｏＳサービス品質（例えば、シェーピングやポリシング）を考慮した上で、ルータのパケット転送部の帯域幅を増減させることができる。
【００６９】
Ｅ．第５実施例：
図２８は、第５実施例におけるルータ１０の概略構成を示す説明図である。図８で示した第１実施例との大きな違いは、ｉ）制御部４００のメモリ４２０内に、コネクション帯域テーブル４２２の代わりに、統計帯域テーブル４２７を備えている点、ｉｉ）転送処理部３２０内に統計情報部３２５を備える点であり、他の構成は第１実施例とほぼ同じである。統計情報部３２５は、各回線収容部（ＬＲＵ＃１〜＃３）が受信したパケットの流量等の情報を測定し、ＣＰＵ４１０へ送信する。ＣＰＵ４１０は、受信した情報から、統計帯域テーブル４２７を作成する。この処理についての詳細は後述する。
【００７０】
図２９は、統計帯域テーブル４２７の一例を示す説明図である。統計帯域テーブル４２７は、送信元ＩＰアドレスＦＦＩＰと、送信先ＩＰアドレスＦＴＩＰと、送信元ポート番号ＦＦＰＴと、送信先ポート番号ＦＴＰＴと、平均実帯域ＡＶＢＡと、最大実帯域ＭＸＢＡとを含んでいる。このうち、送信元ＩＰアドレスＦＦＩＰと、送信先ＩＰアドレスＦＴＩＰと、送信元ポート番号ＦＦＰＴと、送信先ポート番号ＦＴＰＴとの組から、ＴＣＰコネクションを識別する。平均実帯域ＡＶＢＡは、過去に回線収容部２００、２０１が受信したパケットの平均帯域をデータフロー毎に集計したものである。最大実帯域ＭＸＢＡは、過去に回線収容部２００、２０１が受信したパケットの最大帯域をデータフロー毎に集計したものである。
【００７１】
ルータ１０の管理者は、平均実帯域ＡＶＢＡと最大実帯域ＭＸＢＡのうち、どちらを転送性能上昇処理および転送性能下降処理における帯域の増減幅とするか、予め設定しておく。なお、予め設定するのではなく、帯域の変動に応じて、平均実帯域ＡＶＢＡと最大実帯域ＭＸＢＡを流動的に変更しつつ適用する構成としてもよい。例えば、平均実帯域ＡＶＢＡの値が上昇傾向にあるＴＣＰコネクションについては最大実帯域ＭＸＢＡを適用し、平均実帯域ＡＶＢＡの値が下降傾向にあるＴＣＰコネクションについては平均実帯域ＡＶＢＡを適用する構成としてもよい。転送性能上昇処理における大まかな処理の流れは、図９と同様である。
【００７２】
図３０は、第５実施例における帯域検索（図９、ステップＳ５１）の処理手順を示すフローチャートである。ステップＳ５００において、ＣＰＵ４１０は、統計帯域テーブル４２７を検索して帯域を求める。具体的には、ＣＰＵ４１０は、ステートテーブル４２１に格納したコネクション情報をキーとして、統計帯域テーブル４２７を検索する。ここでは、統計帯域テーブル４２７のエントリＦＥ０１（図２９）に一致する。このため、転送性能上昇処理および転送性能下降処理において、平均実帯域ＡＶＢＡを適用する設定がなされている場合は、平均実帯域ＡＶＢＡは４８である。一方、最大実帯域ＭＸＢＡを適用する設定がなされている場合は、最大実帯域ＭＸＢＡは１２３である。なお、帯域計算および転送性能下降処理は、第１実施例と同様である。
【００７３】
このようにすれば、第１実施例と同様に、ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することが可能となる。また、第５実施例においては、統計帯域テーブルを元にしてルータの帯域の増減幅を定めている。このため、データフロー毎の過去のパケット流量（トラフィック量）の統計に基づいて、より適切に、ネットワーク中継装置のパケット転送部の帯域幅を増減させることができる。
【００７４】
Ｆ．第６実施例：
図３１は、第６実施例におけるルータ１０の概略構成を示す説明図である。図８、図１６、図２２、図２５、図２８で示した第１〜第５実施例との大きな違いは、ｉ）制御部４００のメモリ４２０内に、第１〜第５実施例で説明した全てのテーブル（ステートテーブル４２１、コネクション帯域テーブル４２２、回線帯域テーブル４２３、ルーティングテーブル４２４、収容部帯域テーブル４２５、ＱｏＳ帯域テーブル４２６、統計帯域テーブル４２７）を備える点、ｉｉ）転送処理部３２０内に統計情報部３２５を備える点であり、他の構成は第１実施例とほぼ同じである。これによって、第６実施例におけるルータ１０は、第１〜第５実施例で説明した各処理の切り替えを行うことができる。
【００７５】
図３２は、省電力モード切り替えコマンドの一例を示す説明図である。本実施例においては、第１〜第５実施例をそれぞれ個別の「省電力モード」としている。具体的には、第１実施例をコネクション情報による帯域設定モードとしている。同様に、第２実施例を回線帯域による帯域設定モードと、第３実施例を回線収容部帯域による帯域設定モードと、第４実施例をＱｏＳ情報による帯域設定モードと、第５実施例を統計情報による帯域設定モードとしている。第６実施例におけるルータ１０は、これらの各モードを切り替えることができる。図３２（Ａ）は、省電力モード切り替えコマンドの凡例を示している。この切り替えコマンドは、ルータ１０に接続される管理端末９０のコンソールから入力する。図３２（Ｂ）は、省電力モードＣＴＹと、省電力モード名と、コマンド中に使用されるモード値と、実施例との対応を示す表である。図３２（Ｃ）は、管理端末９０のコンソールへ入力する設定コマンドの例である。なお、コマンド入力による処理切り替えではなく、ＧＵＩベースでの処理切り替えとしてもよい。例えば、管理用のウェブページ等を設け、当該ウェブページから任意の省電力モードを選択する構成を採用することができる。
【００７６】
このようにすれば、第１〜第５実施例と同様に、ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することが可能となる。また、第６実施例においては、ネットワーク中継装置の管理者が、利用状況に応じた適切な省電力モードを選択することができる。
【００７７】
Ｇ．第７実施例：
図３３は、第７実施例におけるルータ１０の概略構成を示す説明図である。図３１で示した第６実施例との大きな違いは、制御部４００のメモリ４２０内に省電力モードテーブル４２８を備えている点であり、他の構成は第６実施例とほぼ同じである。省電力モードテーブル４２８は、ＴＣＰコネクション毎の省電力モードを予め定めるためのテーブルである。
【００７８】
図３４は、省電力モードテーブル４２８の一例を示す説明図である。省電力モードテーブル４２８は、送信元ＩＰアドレスＣＦＩＰと、送信先ＩＰアドレスＣＴＩＰと、送信元ポート番号ＣＦＰＴと、送信先ポート番号ＣＴＰＴと、省電力モードＣＴＹとを含んでいる。このうち、送信元ＩＰアドレスＣＦＩＰと、送信先ＩＰアドレスＣＴＩＰと、送信元ポート番号ＣＦＰＴと、送信先ポート番号ＣＴＰＴとの組から、ＴＣＰコネクションを識別する。省電力モードＣＴＹは、適用される省電力モードを示す記号である。なお、図３４における省電力モードと識別記号の対応関係は、図３２（Ｂ）と同様である。
【００７９】
この省電力モードテーブル４２８は、予めルータ１０の管理者等によって設定される。送信元ＩＰアドレスＣＦＩＰと、送信先ＩＰアドレスＣＴＩＰと、送信元ポート番号ＣＦＰＴと、送信先ポート番号ＣＴＰＴには、どのような値であっても一致するという意味の値「*」を格納することができる。なお、コネクション情報に一致するエントリが省電力モードテーブル４２８に無い場合を考慮し、エントリの末尾にはエントリＡＥ０５のようなエントリを設けておくことが好ましい。
【００８０】
図３５は、第７実施例における省電力モード判定の処理手順を示すフローチャートである。ＣＰＵ４１０は、コネクション情報をキーとして、省電力モードテーブル４２８を検索する（ステップＳ６００）。そして、省電力モードＣＴＹに応じたモードの処理を行う（ステップＳ６０１）。各省電力モードの処理内容は、第１〜第５実施例で説明した通りであるが、第７実施例においては、転送性能上昇処理の合計帯域の計算方法が第１〜第５実施例と異なる。これについての詳細は後述する。
【００８１】
図３６は、第７実施例における合計帯域の計算方法の説明に利用するＴＣＰコネクションの例を示す説明図である。図３６では、４つのＴＣＰコネクションＣＯ１１〜１４が確立されている。ＣＯ１１は、クライアント４０からサーバ３０へのＴＣＰコネクションである。ＣＯ１２は、クライアント７０からサーバ２０へのＴＣＰコネクションである。ＣＯ１３は、サーバ３０からクライアント５０へのＴＣＰコネクションである。ＣＯ１４は、クライアント７０からサーバ３０へのＴＣＰコネクションである。
【００８２】
省電力モードテーブル４２８が図３４のような内容であった場合、図３６の各ＴＣＰコネクションについての帯域を求めると、以下のようになる。
・ＣＯ１１：省電力モード＝１（図３４、エントリＡＥ０１）、帯域＝５０ｋｂｐｓ（第１実施例、図１１、エントリＳＥ０１）
・ＣＯ１２：省電力モード＝２（図３４、エントリＡＥ０２）、帯域＝１１０００ｋｂｐｓ（第２実施例、図１８、エントリＬＥ０１、ＬＥ０５）
・ＣＯ１３：省電力モード＝５（図３４、エントリＡＥ０３）、帯域＝２５０ｋｂｐｓ（第５実施例、図２９、エントリＦＥ０３）
・ＣＯ１４：省電力モード＝３（図３４、エントリＡＥ０４）、帯域＝１２０００ｋｂｐｓ（第３実施例、図２３、エントリＥＥ０１、ＥＥ０３）
【００８３】
しかし、回線帯域テーブル４２３における帯域ＬＢＡフィールドには、その回線における最大帯域が予め入力されている。収容部帯域テーブル４２５についても同様である。従って、省電力モードが２、３（第２実施例、第３実施例）により処理が行われるＴＣＰコネクションがある回線もしくは回線収容部については、他のＴＣＰコネクションの有無に関わらず、最大帯域が割り当てられることとなる。このため、回線収容部毎に、下記の規則に従って、最大帯域を越えないように帯域を計算したのち、それらの和によって合計帯域を求める。
【００８４】
具体的には、まず、求めた帯域が、下記「省電力モードの分類」のうち、何れに該当するかを調べる。さらに、上記で求めた帯域を当該ＴＣＰコネクションが所属する回線収容部毎にグルーピングする。
＜省電力モードの分類＞
分類ｃａ）ＴＣＰコネクション毎に帯域を求めるもの：省電力モード１、４、５
分類ｃｂ）回線毎に帯域を求めるもの：省電力モード２
分類ｃｃ）回線収容部毎に帯域を求めるもの：省電力モード３
【００８５】
次に、回線収容部毎に、以下のステップ１〜３の処理を行う。
ステップ１）分類ｃｃがある場合：合計帯域に、分類ｃｃにより求めた帯域を加算する。分類ｃａ、ｃｂは加算しない。
ステップ２）ステップ１には該当しないが分類ｃｂがある場合：合計帯域に、分類ｃｂにより求めた帯域を加算する。分類ｃｂにより求めた帯域が複数ある場合は、異なる回線である場合にのみ、合計帯域に当該帯域を加算する。分類ｃａは加算しない。
ステップ３）ステップ１、２には該当しないが分類ｃａがある場合：合計帯域に分類ｃａにより求めた帯域を加算する。分類ｃａにより求めた帯域が複数ある場合は、ＴＣＰセッションが所属する回線の最大帯域を超えない範囲において、合計帯域に当該帯域を加算する。
上記のルールに従って計算した場合、図３６の例における合計帯域は以下のようになる。
１００００ｋｂｐｓ（回線収容部ＬＲＵ＃１）＋３００ｋｂｐｓ（回線収容部ＬＲＵ＃２）＋２０００ｋｂｐｓ（回線収容部ＬＲＵ＃３）＝１２３００ｋｂｐｓ
【００８６】
このようにすれば、第１〜第５実施例と同様に、ネットワーク中継装置において、パケットロスの発生を抑制しつつ低消費電力を実現することが可能となる。また、第７実施例においては、ＴＣＰコネクション毎に、実施例１〜５記載のいずれかの方法で帯域幅を増減させることができる。この結果、よりきめ細かく、ネットワーク中継装置のパケット転送部の帯域幅を増減させることが可能となる。
【００８７】
Ｈ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００８８】
Ｈ１．変形例１：
上記実施例では、ネットワーク中継装置の一構成例を記載した。しかし、上記実施例において記載した態様に限らず、任意の態様を採用することができる。具体的には、以下に例示するような構成としてもよい。
・ネットワーク中継装置をルータではなく、レイヤ３スイッチとする。
・ＩＰｖ４だけでなく、ＩＰｖ６にも対応可能なネットワーク中継装置とする。
・回線収容部および回線の数量を任意に増減させる。
・ハードウェア処理のルータではなく、ソフトウェア処理のルータとする。
【００８９】
Ｈ２．変形例２：
上記実施例のルータは、転送性能上昇処理と転送性能下降処理との両方を行うものとして記載したが、転送性能上昇処理のみを行う構成としてもよい。
【００９０】
Ｈ３．変形例３：
上記実施例では、転送性能上昇処理を動作させるためのトリガは、ＳＹＮパケットの受信であるものとした。しかし、ＴＣＰコネクション確立要求時に端末間でやり取りされるパケットであれば、ＳＹＮパケット以外の任意のパケットをトリガとして採用することが可能である。例えば、通信相手方からの応答であるＳＹＮ＋ＡＣＫパケット（図２、ステップＳ２１）をトリガとしてもよい。
【００９１】
Ｈ４．変形例４：
上記実施例では、転送性能下降処理を動作させるためのトリガは、ＦＩＮパケットの受信であるものとした。しかし、ＴＣＰコネクション切断要求時に端末間でやり取りされるパケットであれば、ＦＩＮパケット以外の任意のパケットをトリガとして採用することが可能である。例えば、通信相手方からの切断要求であるＦＩＮパケット（図２、ステップＳ６１）をトリガとしてもよい。
【図面の簡単な説明】
【００９２】
【図１】本発明の一実施例としてのネットワーク中継装置が用いられたネットワークの概略構成を示す説明図である。
【図２】クライアント４０とサーバ３０が通信する場合におけるルータ１０の動作を示すシーケンス図である。
【図３】ルータ１０で用いられるパケット１０００の構造を示す説明図である。
【図４】装置内ヘッダ１１００の構造を示す説明図である。
【図５】イーサネットヘッダ１２００の構造を示す説明図である。
【図６】ＩＰヘッダ１３００の構造を示す説明図である。
【図７】ＴＣＰヘッダ１４００の構造を示す説明図である。
【図８】ルータ１０の概略構成を示す説明図である。
【図９】転送性能上昇処理の処理手順を示すフローチャートである。
【図１０】ステートテーブル４２１の一例を示す説明図である。
【図１１】コネクション帯域テーブル４２２の一例を示す説明図である。
【図１２】第１実施例における帯域検索（図９・ステップＳ５１）の処理手順を示すフローチャートである。
【図１３】帯域検索に伴ってステートテーブル４２１が更新される様子を示す説明図である。
【図１４】帯域計算における帯域とクロック周波数との関係を示すグラフである。
【図１５】転送性能下降処理の処理手順を示すフローチャートである。
【図１６】第２実施例におけるルータ１０の概略構成を示す説明図である。
【図１７】ルーティングテーブル４２４の一例を示す説明図である。
【図１８】回線帯域テーブル４２３の一例を示す説明図である。
【図１９】第２実施例における帯域検索（図９・ステップＳ５１）の処理手順を示すフローチャートである。
【図２０】第２実施例における帯域検索方法の説明に利用するＴＣＰコネクションの例を示す説明図である。
【図２１】帯域検索によって更新された回線帯域テーブル４２３の様子を示す説明図である。
【図２２】第３実施例におけるルータ１０の概略構成を示す説明図である。
【図２３】収容部帯域テーブル４２５の一例を示す説明図である。
【図２４】第３実施例における帯域検索（図９・ステップＳ５１）の処理手順を示すフローチャートである。
【図２５】第４実施例におけるルータ１０の概略構成を示す説明図である。
【図２６】ＱｏＳ帯域テーブル４２６の一例を示す説明図である。
【図２７】第４実施例における帯域検索（図９・ステップＳ５１）の処理手順を示すフローチャートである。
【図２８】第５実施例におけるルータ１０の概略構成を示す説明図である。
【図２９】統計帯域テーブル４２７の一例を示す説明図である。
【図３０】第５実施例における帯域検索（図９・ステップＳ５１）の処理手順を示すフローチャートである。
【図３１】第６実施例におけるルータ１０の概略構成を示す説明図である。
【図３２】省電力モード切り替えコマンドの一例を示す説明図である。
【図３３】第７実施例におけるルータ１０の概略構成を示す説明図である。
【図３４】省電力モードテーブル４２８の一例を示す説明図である。
【図３５】第７実施例における省電力モード判定の処理手順を示すフローチャートである。
【図３６】第７実施例における合計帯域の計算方法の説明に利用するＴＣＰコネクションの例を示す説明図である。
【符号の説明】
【００９３】
１０…ネットワーク中継装置（ルータ）
２０…サーバ
３０…サーバ
４０…クライアント
５０…クライアント
６０…クライアント
７０…クライアント
９０…管理端末
１１０…回線
１２０…回線
１３０…回線
１４０…回線
１５０…回線
２００…回線収容部
２１０…装置内ヘッダ付与部
２２０…回線読出部
２３０…バッファ
３００…パケット転送部
３１０…検索処理部
３１１…ルーティングテーブル
３１３…テーブル検索駆動部
３１９…性能制御部
３２０…転送処理部
３２１…内部読出部
３２２…ヘッダ書込部
３２３…パケット読出部
３２４…パケットメモリ
３２５…統計情報部
３２９…性能制御部
４００…制御部
４１０…ＣＰＵ
４２０…メモリ
４２１…ステートテーブル
４２２…コネクション帯域テーブル
４２３…回線帯域テーブル
４２４…ルーティングテーブル
４２５…収容部帯域テーブル
４２７…統計帯域テーブル
４２８…省電力モードテーブル
【図１】
2010147744.tif 000003
【図２】
2010147744.tif 000004
【図３】
2010147744.tif 000005
【図４】
2010147744.tif 000006
【図５】
2010147744.tif 000007
【図６】
2010147744.tif 000008
【図７】
2010147744.tif 000009
【図８】
2010147744.tif 000010
【図９】
2010147744.tif 000011
【図１０】
2010147744.tif 000012
【図１１】
2010147744.tif 000013
【図１２】
2010147744.tif 000014
【図１３】
2010147744.tif 000015
【図１４】
2010147744.tif 000016
【図１５】
2010147744.tif 000017
【図１６】
2010147744.tif 000018
【図１７】
2010147744.tif 000019
【図１８】
2010147744.tif 000020
【図１９】
2010147744.tif 000021
【図２０】
2010147744.tif 000022
【図２１】
2010147744.tif 000023
【図２２】
2010147744.tif 000024
【図２３】
2010147744.tif 000025
【図２４】
2010147744.tif 000026
【図２５】
2010147744.tif 000027
【図２６】
2010147744.tif 000028
【図２７】
2010147744.tif 000029
【図２８】
2010147744.tif 000030
【図２９】
2010147744.tif 000031
【図３０】
2010147744.tif 000032
【図３１】
2010147744.tif 000033
【図３２】
2010147744.tif 000034
【図３３】
2010147744.tif 000035
【図３４】
2010147744.tif 000036
【図３５】
2010147744.tif 000037
【図３６】
2010147744.tif 000038