(57)【特許請求の範囲】
【請求項１】
予め設定された所定の目標値を記憶する目標値記憶部と、
複数の同じ通信端末装置の間で送受信されるとともに同じアプリケーションが利用するデータを格納するパケット群の単位であるフローの受信が停止されるフロー停止期間においてスリープ状態を設定した場合の消費電力削減率と、スリープ状態から稼働状態に復帰するのに要する起動時間の単位時間あたりの合計値と、平均フロー開始間隔と、フロー停止期間においてスリープ状態を設定した場合と設定しない場合の消費電力差分値との関係が示されるパラメータテーブルを記憶するパラメータテーブル記憶部と、
前記パラメータテーブルを参照して、パケットの受信時刻に基づいて算出した平均フロー開始間隔と前記目標値とに対応する消費電力差分値を特定し、特定された消費電力差分値を閾値として設定する閾値設定部と、
次のフローが開始される次フロー開始時刻までにおいてスリープ状態を設定した場合と設定しない場合の消費電力差分値と前記閾値との比較結果に基づいて、当該フロー停止期間において前記スリープ状態を設定すべきか否かについて判定するスリープ判定部と
を備えるデータ転送装置。
【請求項２】
前記目標値は、消費電力の削減効果が有効であるとみなされる消費電力削減率の下限値とされ、
前記閾値設定部は、前記パラメータテーブルから、算出された前記平均フロー開始間隔と前記下限値と同じ値による消費電力削減率とに対応する消費電力差分値を特定し、特定された消費電力差分値を前記閾値として設定する
ことを特徴とする請求項１に記載のデータ転送装置。
【請求項３】
前記目標値は、スリープ状態の設定に応じて得られるべき消費電力削減率の値とされ、
前記閾値設定部は、前記パラメータテーブルから、算出された前記平均フロー開始間隔と前記目標値としての消費電力削減率の値に対応する消費電力差分値を特定し、特定された消費電力差分値を前記閾値として設定する
ことを特徴とする請求項１に記載のデータ転送装置。
【請求項４】
前記目標値は、スリープ状態の設定に応じて得られるべき総起動待ち時間の値とされ、
前記閾値設定部は、前記パラメータテーブルから、算出された前記平均フロー開始間隔と前記目標値としての総起動待ち時間の値に対応する消費電力差分値を特定し、特定された消費電力差分値を前記閾値として設定する
ことを特徴とする請求項１に記載のデータ転送装置。
【請求項５】
複数の同じ通信端末装置の間で送受信されるとともに同じアプリケーションが利用するデータを格納するパケット群の単位であるフローの受信が停止されるフロー停止期間においてスリープ状態を設定した場合の消費電力削減率と、スリープ状態から稼働状態に復帰するのに要する起動時間の単位時間あたりの合計値と、平均フロー開始間隔と、フロー停止期間においてスリープ状態を設定した場合と設定しない場合の消費電力差分値との関係が示されるパラメータテーブルを参照して、パケットの受信時刻に基づいて算出した平均フロー開始間隔と予め設定された所定の目標値とに対応する消費電力差分値を特定し、特定された消費電力差分値を閾値として設定する閾値設定ステップと、
次のフローが開始される次フロー開始時刻までにおいてスリープ状態を設定した場合と設定しない場合の消費電力差分値と前記閾値との比較結果に基づいて、当該フロー停止期間において前記スリープ状態を設定すべきか否かについて判定するスリープ判定ステップと
を備えるスリープ制御方法。
【請求項６】
コンピュータを、
複数の同じ通信端末装置の間で送受信されるとともに同じアプリケーションが利用するデータを格納するパケット群の単位であるフローの受信が停止されるフロー停止期間においてスリープ状態を設定した場合の消費電力削減率と、スリープ状態から稼働状態に復帰するのに要する起動時間の単位時間あたりの合計値と、平均フロー開始間隔と、フロー停止期間においてスリープ状態を設定した場合と設定しない場合の消費電力差分値との関係が示されるパラメータテーブルを参照して、パケットの受信時刻に基づいて算出した平均フロー開始間隔と予め設定された所定の目標値とに対応する消費電力差分値を特定し、特定された消費電力差分値を閾値として設定する閾値設定手段、
次のフローが開始される次フロー開始時刻までにおいてスリープ状態を設定した場合と設定しない場合の消費電力差分値と前記閾値との比較結果に基づいて、当該フロー停止期間において前記スリープ状態を設定すべきか否かについて判定するスリープ判定手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークなどにおいて送受信されるデータを転送するためのデータ転送装置とそのスリープ制御方法に関する。また、プログラムに関する。
【背景技術】
【０００２】
ルータ、スイッチやアクセスポイントなどに代表されるネットワーク対応のデータ転送装置は、データ通信時だけではなく、データ通信が実行されていないときも含めて常時稼働している状態で運用されることが一般的である。
【０００３】
上記のような運用では、通信が実行されていない状態においても電力が消費されており、この点で無駄な電力消費が生じているといえる。通信が実行されていないときに応じてデータ転送装置がスリープ状態となるようにすれば、消費電力が削減できることになる。
【０００４】
そこで、過去の通信状況に基づいて通信の有無を予測し、通信が無いと予測される時間において自動的にスリープ状態に遷移するデータ転送装置が提案されている（例えば、非特許文献１参照）。
【０００５】
上記のデータ転送装置においては、消費電力量の極めて低いスリープ状態が定義されているが、このスリープ状態から稼働状態へ遷移するにあたっては数十ミリ秒から数秒程度の起動時間を要する。その一方で、通信パケットは数マイクロ秒から数ミリ秒の程度の時間間隔により通信端末間において送受信される。このために、上記のように起動時間に数十ミリ秒から数秒程度を要するスリープ状態を、数マイクロ秒から数ミリ秒による通信パケットの時間間隔の条件下で実現することは難しい。
【０００６】
そこで、以下のようにスリープ状態を制御する技術が提案されている。まず、通信パケットについて、その通信パケットを処理するアプリケーションごとに応じた単位にまとめた「フロー」を定義する。そして、フローの発生特性から次のフローの到着時刻を予測したうえで、以下の２つの状態遷移における消費電力量を計算する。つまり、フローの終了に応じた時点からスリープ状態に遷移し、次のフローの到着時刻の直前に稼働状態となるように制御した場合の消費電力量を計算する。また、フローの終了に応じた時点からスリープ状態に遷移させずに稼働状態を継続させる場合の消費電力量を計算する。そして、消費電力量が少ない方の状態遷移を選択するというものである（例えば、非特許文献２参照）。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】伊藤哲也，近藤良久，阪田史郎，池永全志，四方博之，“無駄な消費電力量を削減するRadio-On-Demand Networks 概要，”  電子情報通信学会2011年総合大会 B-6-132
【非特許文献２】香川翔一, 飯塚宏之, 吉村紘一, 伊藤哲也, 小室信喜, 阪田史郎，“無線LANアクセスポイントにおけるフロー特性を考慮したスリープ制御，”  電子情報通信学会通信方式研究会技術報告, CS2010-124, 2011年3月
【発明の概要】
【発明が解決しようとする課題】
【０００８】
前述のように、スリープ状態から稼働状態へ遷移（起動）するためには比較的長い時間の起動時間が必要になる。このために、上記非特許文献２に記載のスリープ制御では、フローの間隔が比較的短い状況において、消費電力削減率が低くなり、かつ、スリープ状態から稼動状態に起動するまでの起動時間が多く発生する傾向にある。起動時間が多く発生することになれば、それだけ利用者に対して通信開始までの待ち時間、すなわち、ネットワーク利用品質が低下する。
【０００９】
そこで本発明は、上述の課題を解決することのできるデータ転送装置、スリープ制御方法、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、上述の課題を解決すべくなされたもので、本発明の一態様としてのデータ転送装置は、予め設定された所定の目標値を記憶する目標値記憶部と、複数の同じ通信端末装置の間で送受信されるとともに同じアプリケーションが利用するデータを格納するパケット群の単位であるフローの受信が停止されるフロー停止期間においてスリープ状態を設定した場合の消費電力削減率と、スリープ状態から稼働状態に復帰するのに要する起動時間の単位時間あたりの合計値（総起動待ち時間）と、平均フロー開始間隔と、フロー停止期間においてスリープ状態を設定した場合と設定しない場合の消費電力差分値との関係が示されるパラメータテーブルを記憶するパラメータテーブル記憶部と、前記パラメータテーブルを参照して、パケットの受信時刻に基づいて算出した平均フロー開始間隔と前記目標値とに対応する消費電力差分値を特定し、特定された消費電力差分値を閾値として設定する閾値設定部と、次のフローが開始される次フロー開始時刻までにおいてスリープ状態を設定した場合と設定しない場合の消費電力差分値と前記閾値との比較結果に基づいて、当該フロー停止期間において前記スリープ状態を設定すべきか否かについて判定するスリープ判定部とを備える。
【００１１】
また、本発明の一態様としてのスリープ制御方法は、複数の同じ通信端末装置の間で送受信されるとともに同じアプリケーションが利用するデータを格納するパケット群の単位であるフローの受信が停止されるフロー停止期間においてスリープ状態を設定した場合の消費電力削減率と、スリープ状態から稼働状態に復帰するのに要する起動時間の単位時間あたりの合計値（総起動待ち時間）と、平均フロー開始間隔と、フロー停止期間においてスリープ状態を設定した場合と設定しない場合の消費電力差分値との関係が示されるパラメータテーブルを参照して、パケットの受信時刻に基づいて算出した平均フロー開始間隔と予め設定された所定の目標値とに対応する消費電力差分値を特定し、特定された消費電力差分値を閾値として設定する閾値設定ステップと、次のフローが開始される次フロー開始時刻までにおいてスリープ状態を設定した場合と設定しない場合の消費電力差分値と前記閾値との比較結果に基づいて、当該フロー停止期間において前記スリープ状態を設定すべきか否かについて判定するスリープ判定ステップとを備える。
【００１２】
また、本発明の一態様としてのプログラムは、コンピュータを、複数の同じ通信端末装置の間で送受信されるとともに同じアプリケーションが利用するデータを格納するパケット群の単位であるフローの受信が停止されるフロー停止期間においてスリープ状態を設定した場合の消費電力削減率と、スリープ状態から稼働状態に復帰するのに要する起動時間の単位時間あたりの合計値と、平均フロー開始間隔と、フロー停止期間においてスリープ状態を設定した場合と設定しない場合の消費電力差分値との関係が示されるパラメータテーブルを参照して、パケットの受信時刻に基づいて算出した平均フロー開始間隔と予め設定された所定の目標値とに対応する消費電力差分値を特定し、特定された消費電力差分値を閾値として設定する閾値設定手段、次のフローが開始される次フロー開始時刻までにおいてスリープ状態を設定した場合と設定しない場合の消費電力差分値と前記閾値との比較結果に基づいて、当該フロー停止期間において前記スリープ状態を設定すべきか否かについて判定するスリープ判定手段として機能させる。
【発明の効果】
【００１３】
本発明によれば、データ転送装置において、総起動待ち時間の短縮を考慮しつつ、消費電力の低減が適切に図られるという効果が得られる。
【図面の簡単な説明】
【００１４】
【図１】本発明のデータ転送装置を含む通信システムの構築例を示す図である。
【図２】本実施形態のデータ転送装置の構成例を示す図である。
【図３】第1の実施形態におけるデータ転送装置の機能構成例を示す図である。
【図４】フローデータベースの構造例を示す図である。
【図５】フローの受信タイミングを示す図である。
【図６】パラメータテーブルの内容例をグラフ化して示す図である。
【図７】第1の実施形態における平均フロー開始間隔に対する消費電力比特性と総起動待ち時間特性とを示す図である。
【図８】本実施形態におけるスリープ制御のための処理手順例を示す図である。
【図９】第1の実施形態における閾値Δ設定のための処理手順例を示す図である。
【図１０】第２の実施形態におけるデータ転送装置の機能構成例を示す図である。
【図１１】第２の実施形態における平均フロー開始間隔に対する消費電力比特性と総起動待ち時間特性とを示す図である。
【図１２】第２の実施形態における閾値Δ設定のための処理手順例を示す図である。
【図１３】第３の実施形態におけるデータ転送装置の機能構成例を示す図である。
【図１４】第３の実施形態における平均フロー開始間隔に対する消費電力比特性と総起動待ち時間特性とを示す図である。
【図１５】第３の実施形態における閾値Δ設定のための処理手順例を示す図である。
【発明を実施するための形態】
【００１５】
＜第１の実施形態＞
［通信システムの構成例］
図１は、本発明の実施形態におけるデータ転送装置１００を含む通信システムの構成例を示している。この図に示すデータ転送装置１００は、例えばＬＡＮ（Local Area Network）などを経由して通信端末装置２００と接続される。また、例えばインターネットとしての基幹ネットワーク４００を経由して通信端末装置３００と接続される。そして、データ転送装置１００は、通信端末装置２００と通信端末装置３００との間で送受信されるパケットのデータを中継する。つまり、通信端末装置２００から送信される通信パケットを基幹ネットワーク４００を経由して通信端末装置３００に転送する。また、通信端末装置３００から基幹ネットワーク４００を経由して送信されるパケットを通信端末装置２００に転送する。通信端末装置２００と通信端末装置３００は移動体通信端末装置やサーバ装置、パソコンなどであるが、通信可能な装置であればよいため、これらの装置に限られるものではない。
【００１６】
［データ転送装置の構成例］
図２は、データ転送装置１００の構成例を示している。この図に示すデータ転送装置１００は、ＣＰＵ（Central Processing Unit）１０１、ＲＡＭ（Random Access Memory）１０２、記憶部１０３、通信部１０４および電源部１０５を備える。これらの部位は、データバス１０６を介して接続されている。
【００１７】
ＣＰＵ１０１は、記憶部１０３に記憶されるプログラムを実行することにより、データ転送装置１００としての所定の機能を実現する。
【００１８】
ＲＡＭ１０２は、主記憶装置として機能するもので、ＣＰＵ１０１が実行すべきプログラムが記憶部１０３から読み出されて展開される。また、ＲＡＭ１０２は、ＣＰＵ１０１が演算処理を実行する際の作業領域として使用される。
【００１９】
記憶部１０３は、補助記憶装置として機能するもので、ＣＰＵ１０１により実行されるプログラムや各種データを格納する。なお、この記憶部１０３には、例えばハードディスクやフラッシュメモリなどの半導体記憶装置を採用することができる。
【００２０】
通信部１０４は、ＬＡＮや基幹ネットワーク４００などの伝送路を経由して他の通信端末装置と通信を行う。本実施形態では、上記ＬＡＮや基幹ネットワーク４００に通信端末装置２００や通信端末装置３００が接続されており、これにより、通信部１０４は、通信端末装置２００および通信端末装置３００とそれぞれ通信を行うことができる。
【００２１】
電源部１０５は、商用交流電源またはバッテリから供給される電力を、直流による所定値の電源電圧に変換し、同図に示す各部に対応するチップやボードなどに対して供給する。また、電源部１０５は、ＣＰＵ１０１によるスリープ制御に応じて、所定部位に供給すべき電源電圧の停止や電圧値の変更などを実行することで、スリープ状態を設定する。
【００２２】
［データ転送装置の機能構成例］
図３は、第１の実施形態において、データ転送装置１００のＣＰＵ１０１がプログラムを実行することにより実現されるスリープ制御のための機能構成例を示している。また、この図においては、記憶部１０３が記憶するデータのうち、スリープ制御に対応するデータとして、フローデータベース１３０、消費電力削減率下限値１３２およびパラメータテーブル１３３が示される。
【００２３】
また、同図においては、通信部１０４の構成が示される。通信部１０４は通信制御部１４１ａ、１４１ｂおよびパケット転送部１４２を備える。通信制御部１４１ａおよび１４１ｂは、ルーティングなどの通信制御を実行する。ここでは、通信制御部１４１ａに対してＬＡＮの伝送路経由で通信端末装置２００が接続され、通信制御部１４１ｂに対して、基幹ネットワーク４００経由で通信端末装置３００が接続されているものとする。パケット転送部１４２は、例えば通信端末装置間のデータ転送にあたり、輻輳制御などの所定の制御を実行する。
【００２４】
上記構成の通信部１０４において、通信端末装置２００から送信されたパケットは、通信制御部１４１ａにて受信され、パケット転送部１４２に出力される。パケット転送部１４２は、通信制御部１４１ａから入力されたパケットについて輻輳制御などを行い、所定タイミングで通信制御部１４１ｂに出力する。通信制御部１４１ｂは、パケット転送部１４２から入力されたパケットを通信端末装置３００に送信するための経路を決定し、この経路に対してパケットを送出する。
【００２５】
また、逆に、通信端末装置３００から送出されたパケットは、通信制御部１４１ｂからパケット転送部１４２に入力される。パケット転送部１４２は入力されたパケットについて輻輳制御などを行ったうえで、所定タイミングで通信制御部１４１ａに出力する。通信制御部１４１ａは、パケット転送部１４２から入力されたパケットを通信端末装置２００に送信するための経路を決定し、この経路に対してパケットを送出する。
【００２６】
同図においては、ＣＰＵ１０１により実現されるスリープ制御に関連する機能部として、フロー情報抽出部１１１、データベース登録部１１２、次フロー開始時刻予測部１１３、閾値設定部１１４およびスリープ判定部１１５を備える。
【００２７】
フロー情報抽出部１１１は、パケット転送部１４２に入力されたパケットごとにフロー情報を抽出する。
【００２８】
ここで、フローとは、複数の同じ通信端末装置の間で送受信され、かつ、同じアプリケーションが処理するデータを格納するパケット群の単位をいう。そして、フロー情報は、パケットにおけるヘッダ（ＩＰ（Internet Protocol）ヘッダおよびＴＣＰ(Transmission Control Protocol)ヘッダおよびＵＤＰ(User Datagram Protocol)ヘッダなど）のフィールドに格納される情報のうち、フローを一意に特定するのに必要となる情報群であり、具体的には、送信元ＩＰアドレス、宛先ＩＰアドレス、プロトコル番号、送信元ポート番号および宛先ポート番号となる。
【００２９】
送信元ＩＰアドレスは、ＩＰヘッダに格納される情報であり、パケットの送信元である通信端末装置のＩＰアドレスを示す。宛先ＩＰアドレスは、ＩＰヘッダに格納される情報であり、パケットの宛先である通信端末装置のＩＰアドレスを示す。プロトコル番号は、ＩＰヘッダに格納される情報であり、トランスポート層で規定されるネットワークプロトコルの種類を示す番号である。
【００３０】
送信元ポート番号は、ＴＣＰヘッダに格納される情報であり、送信元の通信端末装置においてパケット送出のための処理を行ったアプリケーションを示す番号である。宛先ポート番号は、ＴＣＰヘッダに格納される情報であり、パケットの宛先として指定するアプリケーションを示す番号である。これらの情報により、パケットのフローが特定される。つまり、パケットを送受信する通信端末装置とアプリケーションとが特定される。
【００３１】
なお、上記のようにフローを特定するにあたり、ＩＰヘッダやＴＣＰヘッダから得られる情報を利用しているが、パケットを送受信する通信端末装置とアプリケーションとを特定できればよく、フローを特定するための手法やアルゴリズムとしては本実施形態では特に限定されるべきものではない。その他の一例として、ＴＣＰやＵＤＰよりも上位のアプリケーションヘッダを利用することでもフローを特定することができる。
【００３２】
データベース登録部１１２は、パケット転送部１４２が受信したパケットごとのフロー情報をフローデータベース１３０に登録する。このために、データベース登録部１１２は、パケット転送部１４２が入力したパケットごとに対応してフロー情報抽出部１１１が抽出したフロー情報に受信時刻を対応付けてエントリを生成する。そして、このエントリをフローデータベース１３０に登録する。受信時刻は、対応のパケットが受信された時刻、つまり、パケット転送部１４２に入力された時刻を示す。
【００３３】
図４は、フローデータベース１３０の構造例を示している。この図に示すように、フローデータベース１３０のエントリ１３１は、受信したパケットごとの送信元ＩＰアドレス１３１ａ、宛先ＩＰアドレス１３１ｂ、プロトコル番号１３１ｃ、送信元ポート番号１３１ｄ、宛先ポート番号１３１ｅおよび受信時刻１３１ｆが対応付けられた構造を有する。したがって、フローデータベース１３０を参照すれば、過去に受信したパケットがどのフローに該当するものであるのかを特定できることになる。
【００３４】
説明を図３に戻す。次フロー開始時刻予測部１１３は、次のフローの受信が開始される時刻(次フロー開始時刻)を予測する。
【００３５】
図５を参照して、次フロー開始時刻予測部１１３による次フロー開始時刻ｔｓｎの予測処理の一例について説明しておく。図５にはパケット転送部１４２が受信(入力)したパケットから成るフローが示される。パケットは、図示するように、開始時刻ｔｓから受信が開始された後、或るまとまった数のパケットが連続して受信される期間と、パケットの受信が停止される期間とを交互に繰り返す。そして、フローにおける最後のパケットが受信される終了時刻ｔｅに至ると、１つのフローの受信が完了する。この開始時刻ｔｓから終了時刻ｔｅまでの期間をフロー継続期間Ωとして定義する。
【００３６】
次フロー開始時刻予測部１１３は、次フロー開始時刻ｔｓｎの予測にあたり、まず、フローデータベース１３０において登録されているエントリをフローごとに分類する。このためには、送信元ＩＰアドレス１３１ａ、宛先ＩＰアドレス１３１ｂ、プロトコル番号１３１ｃ、送信元ポート番号１３１ｄ、宛先ポート番号１３１ｅが共通のエントリ１３１ごとに分類を行えばよい。
【００３７】
そのうえで、次フロー開始時刻予測部１１３は、各フローについてのフロー継続時間Ωを算出する。具体例として、次フロー開始時刻予測部１１３は、同じフローのエントリが示す受信時刻における最も早い時刻を開始時刻ｔｓ、最も遅い時刻を終了時刻ｔｅとして抽出する。そして、これらの抽出した開始時刻ｔｓから終了時刻ｔｅまでの期間をフロー継続期間Ωとして求める。
【００３８】
次に、次フロー開始時刻予測部１１３は、上記のように求めたフローごとのフロー継続期間Ωに基づいてフロー開始間隔ｘを予測するための演算を行う。フロー開始間隔ｘは、図５に示されるように、現時刻において最後に受信したフローの開始時刻ｔｓから次のフローが開始されるまでの期間である。そして、上記開始時刻ｔｓから予測したフロー開始間隔ｘを経過した時刻を加算すれば、次フロー開始時刻ｔｓｎが求められる。つまり、次フロー開始時刻ｔｓｎの予測結果が得られる。
【００３９】
なお、上記のように次フロー開始時刻ｔｓｎを予測するにあたり、現時刻以降におけるフロー開始間隔ｘを予測するための手法やアルゴリズムとしては本実施形態では特に限定されるべきものではない。一例として、次フロー開始時刻ｔｓｎまでのフロー開始間隔ｘは、過去におけるフロー開始間隔ｘの実測値の平均として求めることができる。
【００４０】
説明を図３に戻す。閾値設定部１１４は、消費電力削減率下限値１３２とパラメータテーブル１３３を利用して、スリープ判定部１１５がスリープ状態に遷移すべきか否かの判定に用いる閾値Δを設定する。
【００４１】
スリープ判定部１１５は、次フロー開始時刻予測部１１３により算出された平均フロー開始間隔λと、閾値設定部１１４により設定された閾値Δを利用して、フロー停止期間ω(図５参照)において、スリープ状態を設定させるべきか否かについての判定を行う。
【００４２】
スリープ判定部１１５は、スリープ状態に遷移させるべきと判定した場合、予測された次フロー開始時刻ｔｓｎまでの期間から起動時間Ｔｕを減算することで、フロー休止期間ωにおいてスリープ状態を設定可能なスリープ対象期間Ｔｓｐの時間長を算出する。そして、このスリープ対象期間Ｔｓｐにおいてスリープ状態が設定されるように電源部１０５に対する制御を実行する。この制御に応じて、電源部１０５は、所定の部位に対する電源電圧の供給を停止させてスリープ状態を設定する。また、スリープ状態を設定するにあたり、電源電圧の電圧値を起動時よりも低い所定値とすべきときには、電源電圧をスリープ状態に応じた所定値に変更することも行う。
【００４３】
［スリープ制御について］
図５に示したように、フローは、或る数のパケットがフロー継続期間Ωにわたって受信される。そして、フロー継続期間Ωが終了すると、この後のパケットが送信されないフロー停止期間ωを経た時刻ｔｓｎに至って、次のフローの受信が開始される。
【００４４】
フロー停止期間ωは、トラフィック量に応じて異なるが、フロー継続期間Ωにおけるパケットの停止期間と比較すれば長時間となる傾向にある。また、例えばフロー停止期間ωは、数秒程度の場合もあれば、数分から数十分以上にわたる場合もある。そこで、このフロー停止期間ωにおいてデータ転送装置１００をスリープ状態に設定すれば、起動状態のままとしておく場合よりも消費電力を低減することが可能になる。
【００４５】
ただし、フロー停止期間ωにおいてスリープ状態を設定した場合には、次フロー開始時刻ｔｓｎに至る前のタイミングでスリープ状態を解除して起動状態とする必要がある。このため、図５に示すように、フロー停止期間ωは、スリープ状態を設定可能なスリープ対象期間Ｔｓｐと、これに続く起動時間Ｔｕにより形成されることになる。起動時間Ｔｕは、スリープ状態を解除してデータ転送装置１００の起動を開始させてから通信が可能となるまでの期間である。
【００４６】
また、上記起動時間Ｔｕは、数十ミリ秒から数秒程度の比較的長い時間が必要である。したがって、フローの受信頻度が比較的高く、起動回数が多くなるほど、起動時間Ｔｕも多くなるため、単位時間当たりの起動時間Ｔｕの合計である総起動待ち時間が増加する傾向にある。
【００４７】
図５に示すように、起動時間Ｔｕにおいてデータ転送装置１００が起動状態にあるときの消費電力Ｐｕは、スリープ状態時の消費電力Ｐｉよりも大きくなる。したがって、フローの受信頻度が比較的高いためにフロー停止期間ωも短くなるような状況では、消費電力の削減効果が低いのに係わらず単位時間における総起動待ち時間が増加することで、通信端末装置が通信を開始するまでの待ち時間が増加する。すなわち、利用者に対して通信開始までの待ち時間が多く発生することとなり、ネットワーク利用品質が低下する。
【００４８】
そこで、本実施形態においては、スリープ状態を設定することによる消費電力の削減効果と、単位時間における総起動待ち時間とのバランスが適切となるようにスリープ制御を実行する。本実施形態では、このようなスリープ制御の実現のために、閾値設定部１１４が閾値Δを設定し、スリープ判定部１１５が上記閾値Δを利用して、スリープ状態を設定すべきか否かの判定を行う。
【００４９】
以下、第１の実施形態におけるスリープ制御について説明する。すなわち、閾値設定部１１４による閾値Δの設定と、スリープ判定部１１５によるスリープ状態設定可否の判定処理の手法例について説明する。まず、スリープ判定部１１５によるスリープ状態設定可否の判定処理について説明する。
【００５０】
スリープ判定部１１５は、フローが一定の確率でランダムに生起するポアゾン分布に従うものであることを前提としたうえで、閾値Δを含む以下の条件式が成立するか否かに応じてスリープ状態設定の可否を判定する。
｛（ｘ−Ω）×Ｐｉ｝−｛（ｘ−Ｔｕ−Ω）×Ｐｓ＋Ｔｕ×Ｐｕ｝＞△
【００５１】
そして、スリープ判定部１１５は、上記の条件式が成立した場合にスリープ状態を設定するものと判定し、成立しない場合にスリープ状態を設定せずに起動状態を維持させるものと判定する。
【００５２】
上記条件式の左辺における各項の定義は図５に示されている。つまり、上記条件式による演算は、フロー開始間隔ｘ、起動時間Ｔｕ、フロー継続期間Ω、スリープ状態時の消費電力Ｐｓ、起動状態時の消費電力Ｐｕ、空転状態時の消費電力Ｐｉを利用している。稼働状態においては、パケットが受信される期間に対応してデータを転送する期間と、パケットが停止される期間に対応してデータ転送も停止される期間が存在する。空転状態は、この稼働状態において、データ転送が停止される期間の状態である。
【００５３】
したがって、条件式の左辺は、図５のスリープ対象期間Ｔｓｐにおいてスリープ状態を設定しなかった場合のフロー停止期間ωの消費電力量から、スリープ対象期間Ｔｓｐにおいてスリープ状態を設定した場合のフロー停止期間ωの消費電力量を減算するというものになる。したがって、閾値Δは、スリープ状態を設定した場合と設定しない場合の消費電力量の差分値に対応していることになる。
【００５４】
次に、閾値設定部１１４による閾値Δの設定処理例について説明する。閾値設定部１１４は、閾値Δの設定にあたり、記憶部１０３に記憶される消費電力削減率下限値１３２とパラメータテーブル１３３を利用する。
【００５５】
消費電力削減率とは、スリープ状態を設定しない場合の消費電力を１００％として、スリープ状態を設定した場合における消費電力の低下率をいう。消費電力削減率下限値１３２は、スリープ状態を設定することが有意であるとみなされる消費電力削減率の数値を示す。記憶部１０３には、予め所定の条件を考慮して設定された消費電力削減率下限値１３２としての値が記憶される。
【００５６】
具体例として、消費電力削減率下限値１３２が「１５％」であるとすると、消費電力削減率が１５％以上であれば、スリープ状態の設定が有意なものであるとみなされる。これに対して、消費電力削減率が１５％未満の場合には、スリープ状態の設定は有意ではないとみなされる。つまり、例えば総起動待ち時間の増加を考慮すれば、スリープ状態を設定することのメリットはないと捉えられる。
【００５７】
パラメータテーブル１３３は、平均フロー開始間隔λと消費電力差分値δと消費電力比と総起動待ち時間との関係を示したテーブルである。このパラメータテーブル１３３の内容は、演算やシミュレーションなどによって求めることができる。図６は、このパラメータテーブル１３３が示す内容をグラフ化したものである。
【００５８】
図６に示されるグラフにおいて、縦軸が消費電力比であり、横軸が総起動待ち時間である。消費電力比は、フロー停止期間ωにおいてスリープ状態を設定するようにスリープ制御を行った場合の単位時間の消費電力量を、スリープ状態を設定しないとした場合の単位時間の消費電力量で除算した値である。この消費電力比は、すなわち、単位時間における消費電力削減率に相当する。具体的に、消費電力削減率は（１−消費電力比）として一意に表される。上記単位時間としては、或る程度の長時間であるほうが誤差が小さくなるために好ましい。ここでは、一例として、上記単位時間を１日（２４時間）としている。
【００５９】
総起動待ち時間は、フロー停止期間ωにおいてスリープ状態を設定するようにスリープ制御を行った場合の単位時間の起動時間Ｔｕの合計を示す。なお、この総起動待ち時間についても、上記単位時間については１日（２４時間）としている。
【００６０】
また、図６における１４本の特性線ｆ５〜ｆ１５０は、それぞれ、一定の平均フロー開始間隔λに対応する特性を示す。つまり、特性線ｆ５はλ＝５、ｆ１０はλ＝１０、ｆ１５はλ＝１５、ｆ２０はλ＝２０、ｆ２５はλ＝２５、ｆ３０はλ＝３０、ｆ４０はλ＝４０、ｆ５０はλ＝５０、ｆ６０はλ＝６０、ｆ７０はλ＝７０、ｆ８０はλ＝８０、ｆ９０はλ＝９０、ｆ１００はλ＝１００、ｆ１５０はλ＝１５０に対応する特性をそれぞれ示す。
【００６１】
平均フロー開始間隔λは、平均フロー開始間隔λは、フロー開始間隔ｘ(図５参照)の平均値である。平均フロー開始間隔λは、フローデータベース１３０が格納するエントリ１３１から抽出したフローごとの開始時刻ｔｓに基づいて求めることができる。
【００６２】
さらに、上記特性線ｆ５〜ｆ１５０の各々は、消費電力差分値δに応じてプロットされている。消費電力差分値δは、先に説明した条件式の左辺を演算して求められる値であり、前述のようにスリープ状態を設定した場合と設定しない場合の消費電力量の差分値を示す。具体例として、特性線ｆ４０には、プロット点ｐ０、ｐ４、ｐ８、ｐ１２、ｐ１６が示されている。プロット点ｐ０、ｐ４、ｐ８、ｐ１２、ｐ１６は、それぞれ、消費電力差分値δ＝０、４、８、１２、１６に対応している。例えば、線ｆ４０のプロット点ｐ０は、平均フロー開始間隔λ＝４０、かつ消費電力差分値δ＝０のとき、総起動待ち時間は約６２００秒、消費電力比は約０．８であることを示している。この消費電力差分値δが閾値Δの候補となる。
【００６３】
閾値設定部１１４は、一具体例として、以下のように閾値Δを設定する。閾値Δを設定するにあたり、閾値設定部１１４は平均フロー開始間隔λを算出する。平均フロー開始間隔λは、一例として以下のように算出する。つまり、閾値設定部１１４は、フローデータベース１３０に格納される情報を利用して、過去におけるフローごとの開始時刻ｔｓを抽出する。そして、抽出された開始時刻ｔｓに基づいて、過去の所定数のフロー開始間隔ｘの実測値を算出する。過去における１つのフロー開始間隔ｘの実測値は、１つの開始時刻ｔｓと、その次の開始時刻ｔｓとの差分として求めることができる。そして、このように求められた複数のフロー開始間隔ｘの平均値を算出する。この平均値が平均フロー開始間隔λとなる。なお、次フロー開始時刻予測部１１３が次フロー開始時刻ｔｓｎを予測するにあたり、フロー開始間隔ｘの平均値を算出するようにされている場合には、次フロー開始時刻予測部１１３により算出された平均値を平均フロー開始間隔λとしてそのまま利用することもできる。
【００６４】
そして、閾値設定部１１４は、上記のように求められた平均フロー開始間隔λと、記憶部１０３から読み込んだ消費電力削減率下限値１３２に相当する消費電力比に対応付けられた消費電力差分値δを、パラメータテーブル１３３から特定する。この処理は、図６との対応では以下のようになる。
【００６５】
ここでは、平均フロー開始間隔λについて１０秒と算出されたものとする。消費電力削減率下限値１３２は、前述の１５％であるとする。消費電力削減率下限値１３２が１５％ということは、図６における消費電力比が８５％以下の範囲であれば消費電力が有効であり、スリープ制御すべきであることを意味している。
【００６６】
そこで、平均フロー開始間隔λ＝１０に対応する特性線ｆ１０を参照すると、消費電力差分値δ＝０のプロット点Ｐ１１が約９０％の消費電力比となっている。そこで、この場合には、特性線ｆ１０について消費電力差分値δ＝０よりも小さい値に対応させて延長するように補間し、この補間された特性線ｆ１０が消費電力比０．８５となる点の消費電力差分値δの値を求める。そして、このように求められた消費電力差分値δをスリープ判定部１１５が利用する閾値Δとして設定する。
【００６７】
上記ように設定された閾値Δに基づいてスリープ判定部１１５がスリープ状態設定可否を判定してスリープ状態設定のための制御を実行した場合の消費電力比と総起動待ち時間の特性を図７に示す。
【００６８】
図７（ａ）は、消費電力比の特性を示している。この図において縦軸が消費電力比であり、横軸が平均フロー開始間隔λである。また、この図においては、本実施形態によるスリープ制御の特性とともに、比較として、先行技術（非特許文献２）に基づいてスリープ制御を実行したことにより、フロー停止期間ωにおいてスリープ状態が設定された場合の特性が示されている。
【００６９】
この図において示される先行技術の特性において、平均フロー開始間隔λ＝１０の場合の特性に着目してみる。すると、消費電力比は０．８９であり、総起動待ち時間は約６９００秒となっている。この特性は、消費電力削減率が１０％程度とされて消費電力削減効果は低いのにも係わらず、総起動待ち時間が著しく長くなってしまっている状態といえる。この場合には、消費電力の削減よりも総起動待ち時間の短縮を優先させた方が適切であるということがいえる。
【００７０】
これに対して、第１の実施形態のスリープ制御では、平均フロー開始間隔λ＝５、１０の場合にはスリープ状態を設定しないように動作する。これにより、図７（ａ）に示すように、平均フロー開始間隔λ＝５、１０の場合には、消費電力比はいずれも「１」となるが、図７（ｂ）に示すように、総起動待ち時間についてはいずれにおいても「０」とすることができる。また、平均フロー開始間隔λ＝１５、３０、６０の場合の消費電力比と総起動待ち時間の特性は同様となる。この特性は、フローの発生分布（トラフィック分布）に対して、消費電力の低減と総起動待ち時間の短縮について、いずれにも偏ることなく適切に制御されているものとみることができる。
【００７１】
［処理手順例］
図８のフローチャートは、第１実施形態におけるデータ転送装置１００がスリープ制御のために実行する処理手順例を示している。この図に示す処理は、図３のＣＰＵ１０１における機能部のいずれかが適宜実行する。
【００７２】
まず、フロー情報抽出部１１１は、通信部１０４にて受信されたパケット、つまり、パケット転送部１４２に入力されたパケットごとに、前述のフロー情報を抽出する（ステップＳ１０１）。次に、データベース登録部１１２は、抽出されたフロー情報と受信時刻から成るエントリ１３１を生成し、フローデータベース１３０に登録する（ステップＳ１０２）。
【００７３】
次フロー開始時刻予測部１１３は、前述のように、フローデータベース１３０に格納される情報を利用してフロー継続時間Ωを算出し（ステップＳ１０３）、このフロー継続時間Ωに基づき、次フロー開始時刻ｔｓｎを予測する（ステップＳ１０４）。
【００７４】
また、閾値設定部１１４は、フローデータベース１３０に格納される情報と、消費電力削減率下限値１３２と、パラメータテーブル１３３とを利用して、先に図５および図６を参照して説明したように、閾値Δを設定する（ステップＳ１０４）。なお、このステップＳ１０５としての閾値Δ設定のための処理手順例については、図９により後述する。
【００７５】
スリープ判定部１１５は、上記ステップＳ１０５により設定された閾値Δを含む前述の条件式について演算し（ステップＳ１０６）、この演算結果から条件式が成立するか否かについて判定する（ステップＳ１０７）。
【００７６】
次に、スリープ判定部１１５は、上記条件式が成立すると判定した場合（ステップＳ１０７−ＹＥＳ）、スリープ対象期間Ｔｓｐにおいてスリープ状態が設定されるように電源部１０５を制御する（ステップＳ１０８）。これに対して、上記条件式が成立しないと判定した場合（ステップＳ１０７−ＮＯ）、スリープ判定部１１５は、スリープ対象期間Ｔｓｐにおいてスリープ状態が設定されることなく起動状態が維持されるように電源部１０５を制御する（ステップＳ１０９）。
【００７７】
図９のフローチャートは、上記図８のステップＳ１０５としての閾値Δ設定のための処理手順例を示している。閾値設定部１１４は、前述のように、フローデータベース１３０の情報を利用して平均フロー開始間隔λを算出する（ステップＳ２０１）。
【００７８】
また、閾値設定部１１４は、記憶部１０３から消費電力削減率下限値１３２を読み込むとともに（ステップＳ２０２）、パラメータテーブル１３３を読み込む（ステップＳ２０３）。
【００７９】
そして、閾値設定部１１４は、図６にて説明したように、パラメータテーブル１３３から、平均フロー開始間隔λの条件のもとで、消費電力削減率下限値１３２に対応する消費電力比に対応する消費電力差分値δを特定する（ステップＳ２０４）。そして、このように特定された消費電力差分値δを閾値Δとして設定する（ステップＳ２０５）。
【００８０】
＜第２の実施形態＞
［データ転送装置の機能構成例］
続いて、第２の実施形態について説明する。第２の実施形態において、通信システム構成およびデータ転送装置１００のハードウェア構成は、それぞれ、図１および図２と同様でよい。
【００８１】
先の第１の実施形態においては、閾値Δを設定するにあたり、現在のトラフィック量の指標として求めた平均フロー開始間隔λの条件のもとで、予め設定された消費電力削減率下限値１３２に基づいて閾値Δを設定することとしていた。そして、消費電力削減率下限値１３２より小さい消費電力削減率しか得られない場合にはスリープ状態を設定しないように制御を行うこととしていた、
【００８２】
これに対して、第２の実施形態においては、消費電力削減率下限値１３２に代えて、予め設定された目標消費電力削減率に基づいて閾値Δを設定する。これにより、スリープ状態を設定するにあたり、消費電力比が目標消費電力削減率に対応する値で一定となるように制御される。
【００８３】
図１０は、第２の実施形態に対応するデータ転送装置１００の機能構成例を示している。この図において、図３と同一部分には同一符号を付して説明を省略する。この図に示すデータ転送装置１００は、記憶部１０３において、消費電力削減率下限値１３２に代えて目標消費電力削減率１３２Ａを記憶する。目標消費電力削減率１３２Ａは、所定の条件等を考慮して予め設定された消費電力削減率の目標値である。
【００８４】
閾値設定部１１４は、消費電力削減率下限値１３２に代えて上記目標消費電力削減率１３２Ａを利用して閾値Δを設定する。
【００８５】
ここで、図６を再度参照して、第２の実施形態における閾値Δの設定処理について説明する。なお、ここでは具体例として、目標消費電力削減率１３２Ａについて２０％が設定されている場合を想定する。
【００８６】
第２の実施形態においても、閾値設定部１１４は、トラフィック分布を示す値として平均フロー開始間隔λを算出する。ここでは、平均フロー開始間隔λ＝４０秒と算出された場合を想定する。
【００８７】
閾値設定部１１４は、パラメータテーブル１３３から平均フロー開始間隔λ＝４０秒の条件において、２０％の目標消費電力削減率１３２Ａに対応した消費電力比となる消費電力差分値δを特定する。２０％の目標消費電力削減率１３２Ａに対応した消費電力比は、すなわち８０％となる。
【００８８】
閾値設定部１１４は、図６において平均フロー開始間隔λ＝４０秒に対応する特性線ｆ４０に相当するパラメータ群を、パラメータテーブル１３３から抽出する。特性線ｆ４０において、消費電力比が８０％となる位置はプロット点Ｐ１２である。このプロット点Ｐ１２は、消費電力差分値δ＝１２に対応する。つまり、平均フロー開始間隔λ＝４０秒において、２０％の目標消費電力削減率１３２Ａとなる条件を満たす消費電力差分値δは「１２」である。閾値設定部１１４は、抽出したパラメータ群から、平均フロー開始間隔λ＝４０と目標消費電力削減率「２０％」のパラメータに対応する消費電力差分値δを特定する。このように特定された消費電力差分値δが「１２」であることになる。そこで、閾値設定部１１４は、閾値Δ＝１２を設定する。
【００８９】
図１１は、上記のように２０％の目標消費電力削減率１３２Ａが設定されている場合の第２の実施形態におけるスリープ制御の特性を、先行技術（非特許文献２）に基づくスリープ制御の特性と比較して示している。
【００９０】
図１１（ａ）（ｂ）に示されるように、トラフィックが増加している状態に相当する平均フロー開始間隔λ＝５、１０の状態では、先行技術と同様のスリープ制御となることで、消費電力比および総起動待ち時間の特性も先行技術と同様となっている。しかし、トラフィックが減少した状態に対応する平均フロー開始間隔λ＝１５、３０、６０の状態となると、本実施形態では、図１１（ａ）に示すように、消費電力比は０．８（８０％）で一定となる。この状態は、先行技術と比較すれば、消費電力削減率は少なくなってはいるものの、必要とされる消費電力削減率が意図したとおりに得られていることを示している。
【００９１】
そして、図１１（ｂ）に示すように、消費電力削減率が抑えられた代わりに、平均フロー開始間隔λ＝１５、３０、６０における総起動待ち時間が大幅に短縮されている。具体的に、先行技術の場合の平均フロー開始間隔λ＝１５、３０、６０における総起動待ち時間は、それぞれ、約８４００秒、約７５００秒、約４６００秒とされていた。これに対して、本実施形態における平均フロー開始間隔λ＝１５、３０、６０における総起動待ち時間は、それぞれ、約７７００秒、約３４００秒、約１５００秒となる。
【００９２】
［処理手順例］
第２実施形態におけるスリープ制御のための処理としては、先に図８のフローチャートに示した処理手順例と同様でよい。ただし、ステップＳ１０５としての閾値Δ設定のための処理手順については、図１２のフローチャートに示すものとなる。
【００９３】
図１２において、閾値設定部１１４は、図９のステップＳ２０１と同様に、フローデータベース１３０の情報を利用して平均フロー開始間隔λを算出する（ステップＳ３０１）。
【００９４】
また、閾値設定部１１４は、記憶部１０３から目標消費電力削減率１３２Ａを読み込む（ステップＳ３０２）。また、パラメータテーブル１３３を読み込む（ステップＳ３０３）。
【００９５】
そして、閾値設定部１１４は、図６を参照して説明したように、平均フロー開始間隔λの条件のもとで、目標消費電力削減率１３２Ａに相当する消費電力比に対応する消費電力差分値δをパラメータテーブル１３３から特定する（ステップＳ３０４）。そして、このように特定された消費電力差分値δを閾値Δとして設定する（ステップＳ３０５）。スリープ判定部１１５は、このように設定された閾値Δを利用して、図８のステップＳ１０６からＳ１０９の処理を実行する。これにより、図１１に例示したように、一定以上の平均フロー開始間隔λの条件において、目標消費電力削減率１３２Ａに対応する消費電力比で一定となるようにスリープ制御が行われ、これに伴って、総起動待ち時間が大幅に短縮される。つまり、必要とされる消費電力削減率を確保しつつ、総起動待ち時間も大幅に短縮させることが可能とされている。
【００９６】
＜第３の実施形態＞
［データ転送装置の機能構成例］
続いて、第３の実施形態について説明する。第３の実施形態において、通信システム構成およびデータ転送装置１００のハードウェア構成は、それぞれ、図１および図２と同様でよい。
【００９７】
第３の実施形態においては、先の第１、第２の実施形態における消費電力削減率下限値１３２または目標消費電力削減率１３２Ａに代えて、総起動待ち時間の目標値を利用して閾値Δを設定する。これにより、トラフィック分布に対して総起動待ち時間が所望の一定値となるようにスリープ状態を設定するスリープ制御が行われる。
【００９８】
図１３は、第３の実施形態に対応するデータ転送装置１００の機能構成例を示している。この図において、図３および図１０と同一部分には同一符号を付して説明を省略する。この図に示すデータ転送装置１００は、記憶部１０３において、消費電力削減率下限値１３２または目標消費電力削減率１３２Ａに代えて、目標総起動待ち時間１３２Ｂを記憶する。目標総起動待ち時間１３２Ｂは、所定の条件等を考慮して予め設定された消費電力削減率の目標値である。そして、閾値設定部１１４は、消費電力削減率下限値１３２または目標消費電力削減率１３２Ａに代えて、目標総起動待ち時間１３２Ｂを利用して閾値Δを設定する。
【００９９】
図６を参照して、第３の実施形態における閾値Δの設定処理について説明する。なお、ここでは具体例として、目標総起動待ち時間１３２Ｂとして４０００秒が設定されている場合を想定する。
【０１００】
第３の実施形態において、閾値設定部１１４は、トラフィック分布を示す値として平均フロー開始間隔λを算出する。ここでも、平均フロー開始間隔λ＝４０秒と算出された場合を想定する。
【０１０１】
閾値設定部１１４は、パラメータテーブル１３３から平均フロー開始間隔λ＝４０秒の条件において、目標総起動待ち時間１３２Ｂが示す４０００秒の総起動待ち時間に対応する消費電力差分値δを特定することになる。
【０１０２】
そこで、閾値設定部１１４は、図６においてグラフとして示されるパラメータテーブル１３３において、平均フロー開始間隔λ＝４０秒に対応する特性線ｆ４０を参照する。特性線ｆ４０において、総起動待ち時間が４０００秒となる位置はプロット点Ｐ８であり、このプロット点Ｐ８が対応する消費電力差分値δは「８」となる。このように、平均フロー開始間隔λ＝４０秒のもとで総起動待ち時間が４０００秒となる消費電力差分値δは「８」であることが特定される。そこで、閾値設定部１１４は、閾値Δ＝８を設定する。
【０１０３】
図１４は、第３の実施形態において、上記のように４０００秒の目標総起動待ち時間１３２Ｂが設定されている場合のスリープ制御の特性を、先行技術（非特許文献２）に基づくスリープ制御の特性と比較して示している。
【０１０４】
図１４（ａ）（ｂ）に示されるように、平均フロー開始間隔λ＝５の状態ではスリープ状態に設定する制御が実行されないため、消費電力比および総起動待ち時間の特性は先行技術と同様となる。一方、平均フロー開始間隔λ＝１０、１５、３０、６０の状態では、図１４（ｂ）に示すように、総起動待ち時間が４０００秒で一定となるようにスリープ状態を設定するスリープ制御が実行される。なお、図１４（ａ）に示されるように、この平均フロー開始間隔λ＝１０、１５、３０、６０における本実施形態の消費電力比は、先行技術と比較して高くはなっているものの、総起動待ち時間の短縮との兼ね合いでは、消費電力が有効に削減されているといえる。
【０１０５】
［処理手順例］
第２実施形態においてスリープ制御のための処理としては、先に図８のフローチャートに示した処理手順例と同様でよい。ただし、ステップＳ１０５としての閾値Δ設定のための処理手順については、図１２のフローチャートに示すものとなる。
【０１０６】
図１２において、閾値設定部１１４は、図９のステップＳ２０１と同様に、フローデータベース１３０の情報を利用して平均フロー開始間隔λを算出する（ステップＳ４０１）。
【０１０７】
また、閾値設定部１１４は、記憶部１０３から目標総起動待ち時間１３２Ｂを読み込む（ステップＳ４０２）。また、パラメータテーブル１３３を読み込む（ステップＳ４０３）。
【０１０８】
そして、閾値設定部１１４は、図６を参照して説明したように、平均フロー開始間隔λの条件のもとで、目標総起動待ち時間１３２Ｂに対応する消費電力差分値δをパラメータテーブル１３３から特定する（ステップＳ４０４）。そして、このように特定された消費電力差分値δを閾値Δとして設定する（ステップＳ４０５）。スリープ判定部１１５は、このように設定された閾値Δを利用して、図８のステップＳ１０６からＳ１０９の処理を実行する。これにより、図１４に例示したように、一定以上の平均フロー開始間隔λの条件において、目標総起動待ち時間１３２Ｂが示す総起動待ち時間で一定となるようにスリープ制御が行われる。これにより、総起動待ち時間の短縮消費電力の有効な削減を両立させている。
【０１０９】
なお、これまでの実施形態におけるスリープ状態とは、例えば、休止状態などともいわれる。本実施形態のスリープ状態とは、これまでの説明から理解されるように、所定の回路部への電源供給が停止される、または、供給される電源電圧の電圧値を低下させることで、稼働状態よりも消費電力が少なくなる状態をいう。
【０１１０】
また、上述のデータ転送装置は、内部にコンピュータシステムを有している。そして、上述したスリープ制御の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【０１１１】
また、図３、図１０および図１３などに示される機能部を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各種処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１１２】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【０１１３】
１００  データ転送装置
１０１  ＣＰＵ
１０２  ＲＡＭ
１０３  記憶部
１０４  通信部
１０５  電源部
１０６  データバス
１１１  フロー情報抽出部
１１２  データベース登録部
１１３  次フロー開始時刻予測部
１１４  閾値設定部
１１５  スリープ判定部
１３０  フローデータベース
１３２  消費電力削減率下限値
１３２Ａ  目標消費電力削減率
１３２Ｂ  目標総起動待ち時間
１３３  パラメータテーブル
１４１ａ  通信制御部
１４１ｂ  通信制御部
１４２  パケット転送部
２００、３００  通信端末装置
【図１】
0005804499.tif 000002
【図２】
0005804499.tif 000003
【図３】
0005804499.tif 000004
【図４】
0005804499.tif 000005
【図５】
0005804499.tif 000006
【図６】
0005804499.tif 000007
【図７】
0005804499.tif 000008
【図８】
0005804499.tif 000009
【図９】
0005804499.tif 000010
【図１０】
0005804499.tif 000011
【図１１】
0005804499.tif 000012
【図１２】
0005804499.tif 000013
【図１３】
0005804499.tif 000014
【図１４】
0005804499.tif 000015
【図１５】
0005804499.tif 000016