(57)【要約】【課題】パケット転送の負荷に応じてパケット転送部の動作モードを制御する。【解決手段】通信装置は、ユーザー端末の状態変化の検出に応じて状態変化を通知する通知パケットを送信する通知ソフトウェアを実行するユーザー端末と接続する。通信装置は、ユーザー端末とネットワークとの間でパケットを転送する複数のパケット転送部、および、通知ソフトウェアからの通知パケットの受信に応答して、状態変化に応じた複数のパケット転送部の負荷及び負荷の変動量に基づいて複数のパケット転送部の予測負荷を求め、求めた予測負荷に応じて複数のパケット転送部の各パケット転送部を、パケットを転送するアクティブモードとパケットの転送動作をしないスタンバイモードに選択的に制御するモード制御部を有する。【選択図】  図３
2014241476.tif 000002
【特許請求の範囲】
【請求項１】
ユーザー端末の状態変化の検出に応じて前記状態変化を通知する通知パケットを送信する通知ソフトウェアを実行する前記ユーザー端末と接続し、
前記ユーザー端末とネットワークとの間でパケットを転送する複数のパケット転送部、および、
前記通知ソフトウェアからの前記通知パケットの受信に応答して、前記状態変化に応じた前記複数のパケット転送部の負荷及び前記負荷の変動量に基づいて前記複数のパケット転送部の予測負荷を求め、求めた前記予測負荷に応じて前記複数のパケット転送部の各パケット転送部を、前記パケットを転送するアクティブモードと前記パケットの転送動作をしないスタンバイモードに選択的に制御するモード制御部を有することを特徴とする通信装置。
【請求項２】
前記通知ソフトウェアからの前記通知パケットの受信に応答して、前記状態変化に応じた前記複数のパケット転送部の前記負荷及び前記変動量を求める使用率監視部をさらに有することを特徴とする請求項１記載の通信装置。
【請求項３】
前記モード制御部は、前記通知ソフトウェアからの前記通知パケットを所定時間受信しないとき、前記使用率監視部から前記複数のパケット転送部の最新の負荷を取得し、取得した最新の負荷に応じて、前記複数のパケット転送部の各パケット転送部を、前記アクティブモードと前記スタンバイモードに選択的に制御することを特徴とする請求項２記載の通信装置。
【請求項４】
ユーザー端末の状態変化の検出に応じて前記状態変化を通知する通知パケットを送信する通知ソフトウェアを実行する前記ユーザー端末、並びに、
前記ユーザー端末と接続し、前記ユーザー端末とネットワークとの間でパケットを転送する複数のパケット転送部、および、
前記通知ソフトウェアからの前記通知パケットの受信に応答して、前記状態変化に応じた前記複数のパケット転送部の負荷及び前記負荷の変動量に基づいて前記複数のパケット転送部の予測負荷を求め、求めた前記予測負荷に応じて前記複数のパケット転送部の各パケット転送部を、前記パケットを転送するアクティブモードと前記パケットの転送動作をしないスタンバイモードに選択的に制御するモード制御部を含む通信装置を有することを特徴とする通信システム。
【請求項５】
前記通信装置は、前記通知ソフトウェアからの前記通知パケットの受信に応答して、前記状態変化に応じた前記複数のパケット転送部の前記負荷及び前記変動量を求める使用率監視部をさらに含むことを特徴とする請求項４記載の通信システム。
【請求項６】
前記モード制御部は、前記通知ソフトウェアからの前記通知パケットを所定時間受信しないとき、前記使用率監視部から前記複数のパケット転送部の最新の負荷を取得し、取得した最新の負荷に応じて、前記複数のパケット転送部の各パケット転送部を、前記アクティブモードと前記スタンバイモードに選択的に制御することを特徴とする請求項５記載の通信システム。
【請求項７】
ユーザー端末の状態変化の検出に応じて前記状態変化を通知する通知パケットを送信する通知ソフトウェアを実行する前記ユーザー端末と接続する通信装置の動作モード制御方法であって、前記通信装置は、前記ユーザー端末とネットワークとの間でパケットを転送する複数のパケット転送部を有し、
前記通知ソフトウェアからの前記通知パケットの受信に応答して、前記状態変化に応じた、前記複数のパケット転送部の負荷及び前記負荷の変動量に基づいて前記複数のパケット転送部の予測負荷を求め、
求めた前記予測負荷に応じて前記複数のパケット転送部の各パケット転送部を、前記パケットを転送するアクティブモードと前記パケットの転送動作をしないスタンバイモードに選択的に制御することを特徴とする通信装置の動作モード制御方法。
【請求項８】
前記通信装置は、前記通知ソフトウェアからの前記通知パケットの受信に応答して、前記状態変化に応じた前記複数のパケット転送部の前記負荷及び前記変動量を求めることを特徴とする請求項７記載の通信装置の動作モード制御方法。
【請求項９】
前記通信装置は、前記通知ソフトウェアからの前記通知パケットを所定時間受信しないとき、前記複数のパケット転送部の最新の負荷を取得し、取得した最新の負荷に応じて、前記複数のパケット転送部の各パケット転送部を、前記アクティブモードと前記スタンバイモードに選択的に制御することを特徴とする請求項８記載の通信装置の動作モード制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置およびその動作モード制御方法に係り、特にパケット転送装置およびその動作モード制御方法に関する。
【背景技術】
【０００２】
ホームゲートウェイやブロードバンドルータに使用されるSoC(System on a chip)では、高速なパケット転送を実現するため、パケット転送処理専用のパケット転送エンジンを搭載することが一般的である。しかし、ホームゲートウェイなどのコンシューマ向け通信装置の利用形態では、パケット転送エンジンが最大スループットで動作する時間は、通信装置の稼働時間と比較すると極めて短い。そのため、パケット転送エンジンを常に最大パフォーマンスで動作させることは無駄な消費電力の増加につながる。そこで、パケット転送処理が発生しない時間帯には、パケット転送エンジンを省電力モードに切り替え、パケット転送エンジンの消費電力を削減する必要がある。
【０００３】
特許文献１は、パケットの受信状態に応じて、適切な動作モードの設定を行う技術を開示している。具体的には、パケットの受信状態を監視し、所定の時間以上パケット転送が発生しない場合は、特定の回路への電力供給を停止し、消費電力を低減する省電力モードで動作させる。そして、パケットの受信を検出した場合に、電力供給を停止している回路への電源供給を再開させる。
【０００４】
特許文献２は、外部インターフェースの接続状態を監視し、通信相手となる外部機器が存在するか否かによって省電力モードと、その解除を制御することを開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１７０９８６号公報
【特許文献２】特開２００３−４４１８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前述のように、ホームゲートウェイやブロードバンドルータに使用されるＳｏＣの消費電力の削減には、通信処理を実行しない時間帯や、通信可能な対向装置が存在しない場合に、省電力モードに切り替える手法が有効である。しかしながら、特許文献１の技術では、省電力モードからの復帰時に、省電力モードの状態でパケットを受信することとなり、通信開始時の転送性能が劣化する。また、特許文献２の技術では、通信相手となる外部機器が存在すると、パケット転送を行わなくても省電力モードへ移行せず、無駄な電力を消費する。したがって、パケット転送の負荷に応じた省電力モードなどの動作モード制御が求められる。
【課題を解決するための手段】
【０００７】
開示する通信装置は、ユーザー端末の状態変化の検出に応じて状態変化を通知する通知パケットを送信する通知ソフトウェアを実行するユーザー端末と接続する。通信装置は、ユーザー端末とネットワークとの間でパケットを転送する複数のパケット転送部、および、通知ソフトウェアからの通知パケットの受信に応答して、状態変化に応じた複数のパケット転送部の負荷及び負荷の変動量に基づいて複数のパケット転送部の予測負荷を求め、求めた予測負荷に応じて複数のパケット転送部の各パケット転送部を、パケットを転送するアクティブモードとパケットの転送動作をしないスタンバイモードに選択的に制御するモード制御部を有する。
【発明の効果】
【０００８】
本発明によれば、パケット転送の負荷に応じてパケット転送部の動作モードを制御できる。
【図面の簡単な説明】
【０００９】
【図１】ホームゲートウェイの利用形態を示す図である。
【図２】通知ソフトウェアの動作フローチャートである。
【図３】ＳｏＣのハードウェア構成を示すブロック図である。
【図４】制御回路を中心とした構成、動作を説明する図である。
【図５】使用率の推移を示すグラフの例である。
【図６】学習情報テーブルの一例である。
【図７】制御テーブルの一例である。
【図８】使用率を算出する処理フローチャートである。
【図９】パケット転送部を制御する処理フローチャートである。
【図１０】学習情報テーブルを更新する処理フローチャートである。
【図１１】制御テーブルの他の一例である。
【発明を実施するための形態】
【００１０】
本実施形態の通信装置は、ユーザー端末の状態変化の検出に応じて状態変化を通知する通知パケットを送信する通知ソフトウェアを実行するユーザー端末と接続する。通信装置は、ユーザー端末とネットワークとの間でパケットを転送する複数のパケット転送部、および、通知ソフトウェアからの通知パケットの受信に応答して、状態変化に応じた複数のパケット転送部の負荷及び負荷の変動量に基づいて複数のパケット転送部の予測負荷を求め、求めた予測負荷に応じて複数のパケット転送部の各パケット転送部を、パケットを転送するアクティブモードとパケットの転送動作をしない省電力モードであるスタンバイモードに選択的に制御するモード制御部を有する。以下、通信装置の具体例としてパケット転送装置とも言えるホームゲートウェイを取り上げ、具体的に説明する。
【００１１】
図１は、ＳｏＣ３００を用いたホームゲートウェイの利用形態を示す図である。ＳｏＣ３００は、ホームゲートウェイ等のネットワーク装置に搭載されるＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）であり、パケット転送や、ホームゲートウェイ等のアプリケーションの実行、インターフェースの制御を行う。ホームゲートウェイ１００は、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ポート１１０とＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ポート１１１を備える。ホームゲートウェイ１００は、ＬＡＮポートを介して、ネットワーク機器と接続し、ローカルネットワーク（家庭内ＬＡＮ）を形成する。ネットワーク機器とは、例えば、家庭内ＬＡＮに接続したパーソナルコンピュータ（以下ＰＣ）１０１、ＩＰ電話１０２、および無線ＬＡＮで接続したノートパソコン１０３や携帯電話端末などである。また、ホームゲートウェイ１００は、ＷＡＮポート１１０を介してネットワーク（たとえば、インターネット網１０４）とも接続される。ホームゲートウェイ１００は、家庭内ＬＡＮとネットワーク（インターネット網１０４）との間で送受信される通信パケットの中継および経路制御を実行する。ここでは、ＳｏＣ３００をホームゲートウェイ１００に用いた例を説明するが、ＳｏＣ３００は、ルータ、無線アクセスポイント、テザリング機能等を有する携帯端末などの通信装置にも適用可能である。
【００１２】
通知ソフトウェアについて説明する。通知ソフトウェアは、ユーザーが利用する端末（例えばＰＣ１０１やノートパソコン１０３）上で動作し、ユーザー端末の状態変化（ユーザーの操作内容、毎日の所定時刻や所定周期で起動されるプログラムの実行開始、終了など）を監視することで、既定のアクションの発生を検出し、検出内容を通知する。ここで検出するアクションとは、予め通知ソフトウェアに登録されたユーザーの操作内容や監視しているユーザー端末の状態変化そのものであり、例えば「ブラウザ起動」、「ブラウザ最大化」といったパケット転送の開始または終了の前後に発生するアクションである。アクションの種類については、通知ソフトウェアに予め登録されているが、ユーザーが自身の利用形態に応じて固有のアクションを追加しても良い。また、ユーザーが一覧表の各アクションの有効／無効を設定しても良い。通知ソフトウェアによる検出内容の通知先はホームゲートウェイ１００である。
【００１３】
図２は、通知ソフトウェアの動作フローチャートである。通知ソフトウェアは、ユーザー端末の状態変化（マウスのクリック、キーボードの押下、タッチパネルへのタッチなどの操作やプログラムの実行開始、終了など）を待ち受ける（Ｓ２０１：Ｎｏ）。ユーザー端末の状態変化を検出したならば（ステップＳ２０１：Ｙｅｓ）、この状態変化が、既定のアクションに対応するかどうかを判定する。アクションに対応しないならば（Ｓ２０２：Ｎｏ）、Ｓ２０１に戻る。アクションに対応するならば（Ｓ２０２：Ｙｅｓ）、対応するアクションを、固有のパケットフォーマットを用いてホームゲートウェイ１００へ通知し（Ｓ２０３）、Ｓ２０１に戻る。対応するアクションの通知をアクション通知と呼ぶ。アクション通知には、ユーザー端末の状態変化に対応するアクションの種類を識別する情報を少なくとも含む。
【００１４】
ここでは、独立した１つのソフトウェアとして通知ソフトウェアをユーザー端末上で動作させることを想定するが、他のアプリケーションに組み込む形態で実装しても良い。例えば、ウェブブラウザの機能を拡張するアドオン形式のソフトウェアとして実装しても良いし、携帯電話端末のテレビ電話アプリケーションに組み込んでも良いし、ビデオレコーダーの動画のストリーミング転送用アプリケーションに組み込んでも良い。
【００１５】
図３は、パケット転送装置に搭載するＳｏＣ３００のハードウェア構成を示すブロック図である。ＳｏＣ３００は、ＣＰＵ３０１、メモリコントローラ３０２、インターフェース用コントローラ３０３、パケット転送エンジン３０４、制御回路３０６、および通信部３０７を有し、これらの回路はシステムバス３１０で接続される。ＳｏＣ３００の外部には、メモリコントローラ３０２を介して記憶部３２０が接続される。
【００１６】
ＣＰＵ３０１は、プログラムに従って、ホームゲートウェイ等のアプリケーションの制御を行う。プログラムやプログラムで使用する設定値等は記憶部３２０に格納されており、メモリコントローラ３０２は、記憶部３２０へのリード／ライトを制御する。記憶部３２０はＳｏＣ３００の外部に接続したメモリに配置することを想定するが、ＳｏＣ３００の内部に記憶部を設けても良い。
【００１７】
パケット転送エンジン３０４はパケット転送処理専用の回路である。パケット転送処理に特化した設計により、高速なパケット処理を実現する。本実施例では、パケット転送エンジン３０４は、内部に複数のエンジン（パケット転送部）３０５を有する。パケット転送エンジン３０４は、複数のエンジン３０５を並列動作させ、処理を分担することで高い処理能力を実現する。一方で、動作するエンジン（パケット転送部）の数が増えるほど消費電力が増加する。エンジン３０５が動作している状態をアクティブモード、動作を停止し、クロックの停止や電源供給の停止によって消費電力を低減している状態をスタンバイモード（省電力モード）と呼ぶ。なお、エンジン３０５は、本実施例では４個であるが、２個以上であればよい。
【００１８】
通信部３０７は、ＬＡＮポートおよびＷＡＮポートから送受信されるパケットに対して、通信インターフェースのプロトコルに基づいて通信制御する。通信部３０７は、例えば、イーサネット（登録商標）であればＩＥＥＥ８０２．３に基づいて送受信を制御する。また、ホームゲートウェイ１００に接続したユーザー端末からアクション通知のパケットを受信したならば、通信部３０７は、そのパケットを制御回路３０６へ転送するようにエンジン３０５を動作させる。すなわち、通信部３０７は、前述の固有のフォーマットのパケットの検出に応答して、そのパケットが制御回路３０６へ転送されるように経路制御する。制御回路３０６は、パケット転送エンジン３０４の動作を制御する回路である。
【００１９】
図４を参照して、制御回路３０６について説明する。制御回路３０６は、使用率監視部４０１、通知受信部４０２、モード制御部４０３を有する。通知受信部４０２は、エンジン３０５からのアクション通知を受信し、使用率監視部４０１、モード制御部４０３に転送する。
【００２０】
使用率監視部４０１は、パケット転送エンジン３０４の負荷、すなわち使用率を監視する回路である。使用率とは、単位時間あたりの、エンジン３０５の回路が処理を実行している時間の割合を表し、パケット転送エンジン３０４の使用率は、エンジン３０５の使用率の平均値とする。例えば、４つのエンジン３０５のうち３つがアクティブモードで動作しており、使用率がそれぞれ３０［％］、５０［％］、６０［％］とする。スタンバイモードであるエンジン３０５は使用率０［％］である。このとき、パケット転送エンジン３０４の使用率は、（３０＋５０＋６０＋０）／４＝３５［％］となる。また、使用率監視部４０１は、通知受信部４０２からのアクション通知の受信を契機として、記憶部３２０内の学習情報テーブル６００に学習情報を登録する。
【００２１】
モード制御部４０３は、使用率監視部４０１、記憶部３２０内の学習情報テーブル６００および制御テーブル７００を参照し、その内容に基づいてパケット転送エンジン３０４の制御内容を特定し、モード制御信号を各エンジン３０５へ出力する。モード制御信号とは、各エンジン３０５を、アクティブモードとスタンバイモードのいずれのモードで動作させるかを指示する信号である。
【００２２】
モード制御部４０３は２種類の制御を行う。１種類は、アクション通知の受信を契機として実行する、予測使用率に基づいた制御である。他の１種類は、アクション通知を待ち受ける通知待受時間が経過してもアクション通知を受信しない場合に実行する、現状の使用率に基づいた制御である。各々の制御動作については後述する。
【００２３】
図５は、パケット転送エンジン３０４の使用率の推移を示すグラフの例である。図５において、横軸が経過時間であり、縦軸がパケット転送エンジン３０４の使用率［％］である。使用率監視部４０１は所定の時間間隔でパケット転送エンジン３０４の使用率を算出する。また、使用率監視部４０１は、アクション通知を受信した場合、受信した時刻から所定時間（例えば３秒間）の使用率の変化量を算出する。使用率の変化量を計測する期間を、変化量計測期間と呼ぶ。使用率の変化量は、本実施形態ではアクション通知を受信したタイミングの使用率と、変化量計測期間内の使用率の平均値との差とするが、アクション通知を受信したタイミングの使用率と、所定時間経過後の使用率との差としても良い。使用率監視部４０１は、算出した使用率の変化量を、記憶部３２０の学習情報テーブル６００へ格納する。図５では、４回のアクション通知Ａ１、Ａ２、Ａ３、Ａ４を受信し、各アクション通知受信後の使用率の変化量を算出している。また、使用率監視部４０１は、使用率を算出し続けても良いし、アクション通知の受信後のみ使用率の変化量を算出し、算出後は動作を停止しても良い。
【００２４】
図６に、学習情報テーブル６００の一例を示す。使用率監視部４０１が算出した使用率の変化量を、アクション毎に過去１００回分記録する。同一のアクションが１００回以上発生した場合は最も古い記録を削除し、最新１００回の記録のみ保存する。また１００回の使用率の変化量の平均値を使用率平均変化率として記録する。なお、図６では説明のため各アクションの内容（「ブラウザ起動」等）を記載しているが、実装時にはアクションを識別するコードを記録すればよい。なお、ホームゲートウェイ１００に複数のユーザー端末が接続された場合、各アクション通知の送信元IPアドレスから送信元端末を判別し、送信元端末毎に区別して記録しても良い（例えば「PC（A）：ブラウザ起動」「PC（B）：ブラウザ起動」等）。
【００２５】
図７は、制御テーブル７００の一例を示す説明図である。制御テーブル７００は、予測使用率とアクティブモード数とを対応させた表である。予測使用率とは、モード制御部４０３が算出する使用率の予測値であり、具体的には、現在の使用率と学習情報テーブル６００から抽出した使用率平均変化率との和とする。また、予測使用率を、直近の所定時間(例えば１秒間)の使用率に、受信したアクションの使用率平均変化率を加えた値としても良い。予測使用率に基づき、対応するアクティブモード数に基づいてアクティブモードで動作させるエンジン３０５の数を決定する。
【００２６】
また、制御テーブル７００の他の例として、図１１のように予測使用率に応じてパケット転送エンジン３０４の動作周波数（動作周波数を所定の周波数より低くすると、所定の周波数による動作時に比べて省電力になる。）を制御するように構成しても良い。さらに、アクティブモード数と動作周波数を共に制御しても良い。このように、他の省電力手法や、それら複数の手法を組み合わせた省電力手法を適用し、予測使用率に応じて制御することは容易に実現可能である。
【００２７】
ここで、モード制御部４０３がアクション通知を受信した場合の動作例について説明する。モード制御部４０３が「ブラウザ起動」のアクション通知を受信したとする。モード制御部４０３は、アクション通知の受信を契機として、使用率監視部４０１から現状のパケット転送エンジン３０４の使用率を取得し、学習情報テーブル６００から「ブラウザ起動」の使用率平均変化率を抽出する。そして、取得した値から予測使用率を算出する。次に、制御テーブル７００を参照し、算出した予測使用率でのパケット転送エンジン３０４の制御内容（アクティブモード数や動作周波数）を決定する。そして、パケット転送エンジン３０４にモード制御信号を送出することで制御する。
【００２８】
以上の動作を、具体的な数値を用いて説明する。パケット転送エンジン３０４の使用率が３５［％］で、学習情報テーブル６００が図６の状態のときに、アクション「ブラウザ起動」が通知されたとする。モード制御部４０３は、学習情報テーブル６００からアクション「ブラウザ起動」の使用率平均変化率である＋２８［％］を抽出する。予測使用率は現在の使用率と、使用率平均変化率との和であるから３５［％］＋２８［％］＝６３［％］となる。そして、制御テーブル７００から予測使用率７０＞Ｘ≧５０％に該当するため、モード制御部４０３は制御テーブル７００からアクティブモード数「３」を読み出す。
【００２９】
また、学習情報テーブル６００から使用率平均変化率を抽出する際、閾値を設定し、使用率の変動に大きく影響しないアクションの通知を無視してもよい。例えば、使用率平均変化率の±１０［％］を閾値として設定し、「ブラウザ非アクティブ化」の通知を無視することで、不要な動作モードの切り替えを回避することができる。
【００３０】
図８は、使用率監視部４０１がパケット転送エンジン３０４の使用率を算出する処理フローチャートである。使用率は、所定のサンプリング時間のうちアクティブモードであるエンジン（パケット転送部）３０５が処理を実行している時間の割合を表す。使用率監視部４０１は、所定の時間が経過するまで待ち受け（ステップＳ８０１：Ｎｏ）、所定の時間が経過したならば（Ｓ８０１：Ｙｅｓ）、各エンジン３０５の実行時間を検出する（Ｓ８０２）。そして、使用率監視部４０１は、検出された実行時間とＳ８０１の所定の時間に対する割合として、各エンジン３０５の使用率を算出し、エンジン３０５の数（本実施形態では４）で割り、パケット転送エンジン３０４の使用率を算出し（Ｓ８０３）、Ｓ８０１に戻る。これにより、使用率監視部４０１は、所定のサンプリング時間ごとに、パケット転送エンジン３０４の使用率を算出することができる。
【００３１】
図９は、モード制御部４０３がエンジン３０５（パケット転送部）を制御する処理フローチャートである。まず、モード制御部４０３は、通知受信部４０２からのアクション通知の転送を待ち受ける（Ｓ９０１：Ｎｏ、Ｓ９０２：Ｎｏ）。通知待受時間が経過した（制御タイミングに達した）ならば（Ｓ９０２：Ｙｅｓ）、現状の使用率に基づいた制御（Ｓ９０３以降）に移行する。アクション通知を受信した場合（Ｓ９０１：Ｙｅｓ）、受信したアクション通知に基づいた制御（ステップＳ９０６以降）に移行する。
【００３２】
現状の使用率に基づいた制御（Ｓ９０３以降）では、まずモード制御部４０３は使用率監視部４０１から最新の使用率（現在の使用率とは、最大で通知待受時間の時間差があり得る。）を取得する（Ｓ９０３）。次に、制御テーブル７００を参照し、取得した最新の使用率を予測使用率として、この予測使用率に対応するエンジン３０５の数を抽出する（Ｓ９０４）。そして、抽出数のエンジン３０５をアクティブモードへ制御し（Ｓ９０５）、Ｓ９０１に戻る。
【００３３】
受信したアクション通知に基づいた制御（Ｓ９０６以降）では、まずモード制御部４０３は学習情報テーブル６００を参照し、当該アクションの使用率平均変化率を抽出する（Ｓ９０６）。そして、使用率監視部４０１から最新の使用率を取得し、取得した最新の使用率にアクションの使用率平均変化率を加算し、予測使用率を算出する（Ｓ９０７）。次に、制御テーブル７００を参照して、予測使用率に対応するエンジン３０５の数を抽出する（Ｓ９０８）。そして、抽出数のエンジン３０５をアクティブモードへ制御する（Ｓ９０９）。このあと、所定時間が経過するまで待ち受け（Ｓ９１０：Ｎｏ）、所定時間が経過したならば（Ｓ９１０：Ｙｅｓ）、Ｓ９０１に戻る。
【００３４】
なお、Ｓ９０５又はＳ９０９における、抽出数のエンジン３０５のアクティブモードへの制御は次のようにする。エンジン３０５の抽出数が３であるとする。Ｓ９０５又はＳ９０９の処理直前に、アクティブモードのエンジン３０５が２である場合、スタンバイモードのエンジン３０５一つをアクティブモードへモード切換する。逆に、Ｓ９０５又はＳ９０９の処理直前に、アクティブモードのエンジン３０５が４である場合、アクティブモードのエンジン３０５一つをスタンバイモードへモード切換する。
【００３５】
図１０は、使用率監視部４０１が学習情報テーブル６００を更新する処理フローチャートである。使用率監視部４０１は、通知受信部４０２からのアクション通知の転送を待ち受ける（Ｓ１００１：Ｎｏ）。アクション通知を受信したならば（Ｓ１００１：Ｙｅｓ）、使用率監視部４０１は各エンジン３０５の使用率を取得し、取得した使用率からパケット転送エンジン３０４の使用率を取得する（Ｓ１００２）。そして、所定の変化量計測時間が経過するまでパケット転送エンジン３０４の使用率の取得を続ける（Ｓ１００３：Ｎｏ）。所定時間が経過した場合（Ｓ１００３：Ｙｅｓ）、アクション通知を受信したタイミングの使用率と、変化量計測期間内に取得した使用率の平均値との差によって使用率の変化量を算出する（Ｓ１００４）。そして、算出した使用率の変化量を学習情報テーブル６００に記録し、併せて学習情報テーブル６００の使用率平均変化率項目を更新し（Ｓ１００５）、Ｓ１００１に戻る。
【００３６】
このように、本実施形態によれば、パケット転送部のパケット転送の負荷に応じた省電力モードへの移行制御、省電力モードからの復帰制御の動作モード制御ができる。すなわち、パケット転送の負荷を予測することでパケット転送の発生前に省電力モードを解除することができ、通信開始時の転送性能の劣化を防ぐことができる。また、パケット転送が発生しない場合には省電力モードへ移行することができ、消費電力を削減することができる。
【００３７】
具体的には、パケット転送装置のパケット転送エンジン３０４の使用率の上昇および低下を予測し、予測結果に基づいてアクティブモードのエンジン３０５の数を制御するため、スタンバイモードからアクティブモードへのエンジン３０５のモード切換に伴う通信開始時の転送性能の向上を図ることができる。また、パケット転送が発生しないと予測される場合には早急に省電力モード（スタンバイモード）へ移行することができる。また、パケット転送の発生を予測させるアクションに対し、過去の使用率の変化量の学習情報から、どの程度使用率が上昇するかといった上昇傾向を把握することができる。同様に、パケット転送の終了を予測させるアクションに対しても過去の学習情報から、使用率の低下傾向を把握することができる。したがって、予測される変化の傾向に応じてアクティブモードに切り替えるべきエンジン３０５の数を選択することができ、エンジン３０５の数を抑制しつつ対応可能なだけのパケット転送部（エンジン３０５）を用いてパケット転送することができる。
【００３８】
以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。
【符号の説明】
【００３９】
１００：ホームゲートウェイ、１０１：パーソナルコンピュータ、１０２：IP電話機、１０３：ノートパソコン、１０４：インターネット網、１１０：ＷＡＮポート、１１１：ＬＡＮポート、３００：ＳｏＣ、３０１：ＣＰＵ、３０２：メモリコントローラ、３０３：インターフェースコントローラ、３０４：パケット転送エンジン、３０５：エンジン、３０６：制御回路、３０７：通信部、３１０：システムバス、３２０：記憶部、４０１：使用率監視部、４０２：通知受信部、４０３：モード制御部、６００：学習情報テーブル、７００：制御テーブル。
【図１】
2014241476.tif 000003
【図２】
2014241476.tif 000004
【図３】
2014241476.tif 000005
【図４】
2014241476.tif 000006
【図５】
2014241476.tif 000007
【図６】
2014241476.tif 000008
【図７】
2014241476.tif 000009
【図８】
2014241476.tif 000010
【図９】
2014241476.tif 000011
【図１０】
2014241476.tif 000012
【図１１】
2014241476.tif 000013