JP2008204042A - 情報処理プログラム、情報処理装置及びデータ配信システム - Google Patents
情報処理プログラム、情報処理装置及びデータ配信システム Download PDFInfo
- Publication number
- JP2008204042A JP2008204042A JP2007037692A JP2007037692A JP2008204042A JP 2008204042 A JP2008204042 A JP 2008204042A JP 2007037692 A JP2007037692 A JP 2007037692A JP 2007037692 A JP2007037692 A JP 2007037692A JP 2008204042 A JP2008204042 A JP 2008204042A
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- load
- program
- optimum value
- client terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【課題】情報処理装置の負荷状況や通信環境に応じて、ユーザの利便性を損ねることなくプログラムを配信可能な情報処理技術を提供することを目的とする。
【解決手段】クライアント端末1は、センターサーバ2からプログラムが配信される際、自身の負荷状況を計測し、計測した負荷状況に応じて、単位時間当たりの配信量の最適値を算出する。そして、クライアント端末1は、算出した最適値の配信量で配信対象のプログラムを配信するようセンターサーバ2に対して要求する。センターサーバ2は、当該要求に応じて、指定された最適値の配信量で当該プログラムのデータをクライアント端末1に対して配信する。
【選択図】 図1
【解決手段】クライアント端末1は、センターサーバ2からプログラムが配信される際、自身の負荷状況を計測し、計測した負荷状況に応じて、単位時間当たりの配信量の最適値を算出する。そして、クライアント端末1は、算出した最適値の配信量で配信対象のプログラムを配信するようセンターサーバ2に対して要求する。センターサーバ2は、当該要求に応じて、指定された最適値の配信量で当該プログラムのデータをクライアント端末1に対して配信する。
【選択図】 図1
Description
本発明は、サーバ装置からクライアント端末に対してプログラムを配信するデータ配信技術に関する。
従来より、プログラムの配布は、CD−ROMなどの記憶媒体によって行われたり、センターサーバからクライアント端末にデータ配信することにより行われたりする。データ配信によりプログラムを配信する場合、データ配信を行うための通信回線の状況がその都度異なったり、プログラムを配信する対象の複数のクライアント端末の性能が各々異なったりする。このため、データ配信に用いる通信回線やクライアント端末に負荷がかからないよう、単位時間当たり一定の配信量でプログラムのデータを配信していた。例えば、特許文献1に示される技術においては、プログラムを配信する対象のクライアント端末や通信装置の仕様や状態に応じて、単位時間当たりに配信する配信量として最適な値を決定して、プログラムのデータを配信する。
しかし、従来の技術では、クライアント端末においてなんらかのプログラムを起動してユーザがクライアント端末を操作している最中に、プログラムの配信が行われると、以下のような問題が生じる恐れがあった。このプログラムの受信のためにクライアント端末の処理能力の一部が奪われて、ユーザの操作に支障をきたすという問題である。このような問題が生じることにより、従来の技術では、ユーザの利便性を損ねる恐れがあった。また、単位時間当たり一定の容量でプログラムのデータが配信される場合、以下のような問題が生じる恐れがあった。通信環境が整備されており大量のデータを一度に受信可能であるクライアント端末においても、単位時間当たり一定の配信量でデータを受信することになり、短時間でデータを受信可能であるにも関わらず、データの受信に時間が掛かってしまうという問題である。このような問題が生じることによっても、ユーザの利便性を損ねる恐れがあった。
本発明は、上記に鑑みてなされたものであって、情報処理装置の負荷状況や通信環境に応じて、ユーザの利便性を損ねることなくプログラムを配信可能な情報処理プログラム、情報処理装置及び配信システムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、サーバ装置が配信する所定のプログラムをネットワークを介して受信するコンピュータに実行させるための情報処理プログラムであって、前記情報処理装置における負荷状況を計測する状況計測ステップと、前記状況計測ステップで計測した負荷状況に応じて、前記サーバ装置から配信される前記所定のプログラムの単位時間当たりの配信量の最適値を算出する最適値算出ステップと、前記最適値算出ステップで算出した単位時間当たりの最適値の配信量で前記所定のプログラムを配信するよう前記サーバ装置に対して要求する要求ステップとを前記コンピュータに実行させることを特徴とする。
また、本発明は、サーバ装置が配信する所定のプログラムをネットワークを介して受信する情報処理装置であって、当該情報処理装置における負荷状況を計測する状況計測手段と、前記状況計測手段が計測した負荷状況に応じて、前記サーバ装置から配信される前記所定のプログラムの単位時間当たりの配信量の最適値を算出する最適値算出手段と、前記最適値算出手段が算出した単位時間当たりの最適値の配信量で前記所定のプログラムを配信するよう前記サーバ装置に対して要求する要求手段とを備えることを特徴とする。
また、本発明は、所定のプログラムを配信するサーバ装置と、前記サーバ装置が配信する前記所定のプログラムを受信する情報処理装置と、を備え、前記情報処理装置は、当該情報処理装置における負荷状況を計測する状況計測手段と、前記状況計測手段が計測した負荷状況に応じて、前記サーバ装置から配信される前記所定のプログラムの単位時間当たりの配信量の最適値を算出する最適値算出手段と、前記最適値算出手段が算出した単位時間当たりの最適値の配信量で前記所定のプログラムを配信するよう前記サーバ装置に対して要求する要求手段とを有し、前記サーバ装置は、前記要求手段が要求した単位時間当たりの最適値の配信量で前記所定のプログラムを前記情報処理装置に対して配信する要求配信手段を有することを特徴とする。
本発明によれば、サーバ装置から情報処理装置に対して所定のプログラムを配信する場合、単位時間当たりに配信する配信量が、情報処理装置における負荷状況に応じた最適な配信量となるよう調整可能である。この結果、情報処理装置に対する負荷を過度に増大させず、ユーザの端末操作を妨げることなく、情報処理装置に対して所定のプログラムを配信することができる。
以下に添付図面を参照して、この発明にかかる情報処理プログラム、情報処理装置及び配信システムの最良な実施の形態を詳細に説明する。
[第1の実施の形態]
(1)構成
<配信システムの構成>
図1は、本実施の形態にかかる配信システムの構成を示すブロック図である。本実施の形態にかかる配信システムは、クライアント端末1A〜1Fと、センターサーバ2とがネットワークNTを介して接続されて構成される。ネットワークNTは、例えば、LAN、イントラネット、イーサネット又はインターネットなどである。センターサーバ2は、クライアント端末1A〜1FとネットワークNTを介してデータ通信を各々行って、プログラムを各々配信する。
[第1の実施の形態]
(1)構成
<配信システムの構成>
図1は、本実施の形態にかかる配信システムの構成を示すブロック図である。本実施の形態にかかる配信システムは、クライアント端末1A〜1Fと、センターサーバ2とがネットワークNTを介して接続されて構成される。ネットワークNTは、例えば、LAN、イントラネット、イーサネット又はインターネットなどである。センターサーバ2は、クライアント端末1A〜1FとネットワークNTを介してデータ通信を各々行って、プログラムを各々配信する。
<クライアント端末の構成>
次に、クライアント端末1A〜1Fの構成について説明する。尚、以下では、クライアント端末1A〜1Fについて区別の必要がない場合には、単に、クライアント端末1として説明をする。また、以下に説明するクライアント端末1A〜1Fの各構成について区別する必要がある場合には、各符号の後ろに“A”〜“F”を付加して説明する。図2は、本実施の形態に係るクライアント端末1のハードウェア構成を示すブロック図である。本図に示すようにクライアント端末1は、CPU(Central Processing Unit)10と、ROM(Read Only Memory)11と、RAM(Random Access Memory)12と、HDD(Hard Disk Drive)やCD(Compact Disk)ドライブ装置等の外部記憶装置13と、ディスプレイ装置等の表示装置14と、キーボードやマウス等の操作装置15と、通信I/F16と、これらを接続するバス17を備えており、通常のコンピュータを利用したハードウェア構成となっている。
次に、クライアント端末1A〜1Fの構成について説明する。尚、以下では、クライアント端末1A〜1Fについて区別の必要がない場合には、単に、クライアント端末1として説明をする。また、以下に説明するクライアント端末1A〜1Fの各構成について区別する必要がある場合には、各符号の後ろに“A”〜“F”を付加して説明する。図2は、本実施の形態に係るクライアント端末1のハードウェア構成を示すブロック図である。本図に示すようにクライアント端末1は、CPU(Central Processing Unit)10と、ROM(Read Only Memory)11と、RAM(Random Access Memory)12と、HDD(Hard Disk Drive)やCD(Compact Disk)ドライブ装置等の外部記憶装置13と、ディスプレイ装置等の表示装置14と、キーボードやマウス等の操作装置15と、通信I/F16と、これらを接続するバス17を備えており、通常のコンピュータを利用したハードウェア構成となっている。
ROM11には、CPU10がクライアント端末1の各部を制御するためのオペレーションシステムやアプリケーションプログラムなどの各種プログラムが記憶されている。また、ROM11には、クライアント端末1を一意に識別可能なMACアドレスが記憶されている。外部記憶装置13には、クライアント端末1で実行される各種プログラムや各種データが記憶されている。
ここで、ROM11に記憶されたプログラムをCPU10が実行することによりクライアント端末1において実現される本実施の形態に特徴的な機能について説明する。クライアント端末1は、センターサーバ2からプログラムが配信される際、当該プログラムのデータが単位時間当たりに配信される配信量が、クライアント端末1における負荷状況に応じて最適な値(最適値)となるよう調整する。具体的には、クライアント端末1は、負荷状況として、CPU10の使用率と、回線負荷とを単位時間毎に計測する。尚、単位時間とは、例えば、1秒である。CPU10の使用率は、従来のオペレーションシステムの有する機能により計測することができる。回線負荷とは、クライアント端末1がネットワークNTとの接続に使用される回線の使用状況、即ち、当該回線において通信されるデータの単位時間当たりの通信量を示すものである。この回線負荷は、例えば、従来のオペレーションシステムの有する機能により計測されるリンク速度及びネットワークNTのネットワーク使用率とを用いて、以下の式1により算出される。
回線負荷=リンク速度×ネットワーク使用率・・・(式1)
更に、クライアント端末1は、負荷状況として、クライアント端末1におけるユーザの操作状況を計測する。ここでは、クライアント端末1は、当該操作状況として、マウスやキーボードなどの操作装置15の使用回数を単位時間毎に計測する。そして、クライアント端末1は、CPU10の使用率、回線負荷及び操作装置15の使用回数を用いて、センターサーバ2から配信されるデータの配信量として最適な値(最適値)を算出する。そして、クライアント端末1は、算出した最適値の配信量(最適配信量)でデータを配信するようセンターサーバ2に対して要求する。そして、クライアント端末1は、当該要求に応じてセンターサーバ2から配信された最適配信量のデータを受信する。以上のようにして、クライアント端末1は、センターサーバ2から配信されるプログラムのデータの単位時間当たりの配信量が、クライアント端末1における負荷状況に応じて最適な配信量となるよう調整する。
また、クライアント端末1は、最適配信量を以下のようにして算出する。ここでは、CPU10の使用率、回線負荷及び操作装置15の使用回数に対して閾値が予め設定されている。これらの値は例えば、外部記憶装置13に記憶される。CPU10の使用率に対して設定される閾値(CPUの最大使用率とする)は、例えば、50%とする。回線負荷に対して設定される閾値(最大回線負荷とする)は、例えば、クライアント端末1がネットワークNTとの接続に使用される回線の回線速度に応じて設定される。具体的には、例えば、回線速度の10分の1を最大回線負荷とし、この最大回線負荷を、配信量の最大値(最大配信量)とする。例えば、回線速度が100Mbpsである場合、最大配信量及び最大回線負荷は、10Mbpsである。尚、回線速度に対する最大回線負荷の割合(ここでは、10分の1である)を速度負荷割合という。この速度負荷割合も予め設定されており、外部記憶装置13に記憶される。この速度負荷割合は、各クライアント端末1A〜1Fにおいて共通するものとする。しかし、クライアント端末1A〜1Fがセンターサーバ2へアクセスするための回線速度が各々異なる場合には、各々異なる最大回線負荷がクライアント端末1A〜1Fにおいて各々設定される。
また、操作装置15の使用回数に対して設定される閾値(操作装置15の最大使用回数とする)は、例えば、単位時間当たり4回とする。クライアント端末1は、CPU10の使用率、回線負荷及び操作装置15の使用回数と、これらに対して予め設定された各閾値(ここでは、CPUの最大使用率、最大回線負荷(最大配信量)、操作装置15の最大使用回数である)とを用いて、以下の式2により、最適配信量を算出する。
最適配信量=最大配信量×A×B×C×D・・・(式2)
A=min(1,max(0,a))
a=1−(CPUの使用率―CPUの最大使用率)/CPUの最大使用率
B=min(1,max(0,b))
b=1−(回線負荷−最大回線負荷)/最大回線負荷
C=min(1,max(0,c))
c=1−(操作装置15の使用回数−操作装置15の最大使用回数)/(操作装置15の最大使用回数)
D=(最大回線負荷−回線負荷)/最大回線負荷
A=min(1,max(0,a))
a=1−(CPUの使用率―CPUの最大使用率)/CPUの最大使用率
B=min(1,max(0,b))
b=1−(回線負荷−最大回線負荷)/最大回線負荷
C=min(1,max(0,c))
c=1−(操作装置15の使用回数−操作装置15の最大使用回数)/(操作装置15の最大使用回数)
D=(最大回線負荷−回線負荷)/最大回線負荷
即ち、本実施の形態においては、CPU10の使用率、回線負荷及び操作装置15の使用回数のうち少なくとも1つが、これらに対して各々設定されている閾値を超える場合、当該超過した値に応じた最適配信量が算出される。尚、CPU10の使用率、回線負荷及び操作装置15の使用回数のいずれも閾値を超えない場合は、最大配信量が最適配信量となる。
<センターサーバの構成>
次に、センターサーバ2の構成について説明する。センターサーバ2は、CPUと、ROMと、RAMと、外部記憶装置と、通信I/Fと、これらを接続するバスを備えており(いずれも図示せず)、通常のコンピュータを利用したハードウェア構成となっている。ROMには、CPUがセンターサーバ2の各部を制御するためのオペレーティングシステムやアプリケーションプログラムなどの各種プログラムが記憶されている。外部記憶装置には、センターサーバ2で実行される各種プログラムや、各種データが記憶されている。また、外部記憶装置には、クライアント端末1へ配信するプログラムがバージョン毎に記憶されている。更に、外部記憶装置には、クライアント端末1の端末ID毎にクライアント端末1へ配信可能なプログラムのバージョンが記憶されたバージョン管理テーブル(図示せず)が記憶されている。尚、クライアント端末1の端末IDは、例えば、当該クライアント端末1に対して付与されているMACアドレスである。その他、端末IDとしてIPアドレスや所定の識別IDなどを用いても良い。
次に、センターサーバ2の構成について説明する。センターサーバ2は、CPUと、ROMと、RAMと、外部記憶装置と、通信I/Fと、これらを接続するバスを備えており(いずれも図示せず)、通常のコンピュータを利用したハードウェア構成となっている。ROMには、CPUがセンターサーバ2の各部を制御するためのオペレーティングシステムやアプリケーションプログラムなどの各種プログラムが記憶されている。外部記憶装置には、センターサーバ2で実行される各種プログラムや、各種データが記憶されている。また、外部記憶装置には、クライアント端末1へ配信するプログラムがバージョン毎に記憶されている。更に、外部記憶装置には、クライアント端末1の端末ID毎にクライアント端末1へ配信可能なプログラムのバージョンが記憶されたバージョン管理テーブル(図示せず)が記憶されている。尚、クライアント端末1の端末IDは、例えば、当該クライアント端末1に対して付与されているMACアドレスである。その他、端末IDとしてIPアドレスや所定の識別IDなどを用いても良い。
センターサーバ2は、クライアント端末1との接続が開始し、クライアント端末1から当該クライアント端末1の端末IDを受信すると、外部記憶装置に記憶されたバージョン管理テーブルを参照して、当該クライアント端末1に対して配信可能なプログラムのバージョンを判別し、当該バージョンのプログラムを配信する旨を示す配信通知情報をクライアント端末1に送信する。そして、センターサーバ2は、クライアント端末1から当該配信通知情報によって示されるバージョンのプログラムをクライアント端末1から要求されると、当該プログラムを当該クライアント端末1に対して配信する。そして、センターサーバ2は、単位時間当たりに配信するプログラムを構成するデータにつき、最適配信量として指定された配信量で配信することをクライアント端末1から要求されると、当該要求に応じて、指定された最適配信量のデータをクライアント端末1に対して配信する。
(2)動作
次に、本実施の形態における配信システムの動作について説明する。図3は、センターサーバ2がクライアント端末1に対してプログラムを配信する際のデータ通信処理の手順を示すフローチャートである。
次に、本実施の形態における配信システムの動作について説明する。図3は、センターサーバ2がクライアント端末1に対してプログラムを配信する際のデータ通信処理の手順を示すフローチャートである。
クライアント端末1は、センターサーバ2に対し、セッションの確立を要求する要求メッセージをセンターサーバ2に送信し、当該要求を受け付ける旨の応答メッセージをセンターサーバ2から受信することにより、クライアント端末1と、センターサーバ2との間でセッションが確立される(ステップS1)。セッションが確立されると、クライアント端末1は、自身を特定する端末IDとしてROM11に記憶されたMACアドレスをセンターサーバ2に送信する(ステップS2)。センターサーバ2は、クライアント端末1から送信された端末IDを受信すると、当該端末IDを用いてクライアント端末1の認証を行う(ステップS4)。具体的には、センターサーバ2は、外部記憶装置に記憶されたバージョン管理テーブルを参照して、上述の端末IDが記憶されているか否かを判別する。ここでは、当該判別結果が肯定的であるとして、次いで、センターサーバ2は、外部記憶装置に記憶されたバージョン管理テーブルを参照して、当該クライアント端末1に適用可能なバージョンを判別して(ステップS4)、当該バージョンのプログラムを配信する旨を示す配信通知情報をクライアント端末1に送信する(ステップS5)。
クライアント端末1は、配信通知情報を受信すると(ステップS6)、当該配信通知情報によって示されるプログラムのバージョンと、外部記憶装置13に記憶されている当該プログラムのバージョンとを比較し、バージョンに差異があるか否かを判別する(ステップS7)。バージョンに差異がある場合(ステップS7:YES)、クライアント端末1は、配信通知情報によって示されるバージョンのプログラムの配信を受けるべく、当該バージョンに対応するプログラムの配信を要求する配布要求情報をセンターサーバ2に送信する(ステップS8)。センターサーバ2は、配布要求情報を受信すると、バージョンアップに対応したプログラムの配信を開始する(ステップS9)。ここで、センターサーバ2は、例えば、配信するプログラムのデータをパケット化し、当該パケット化したデータを単位時間当たり一定の配信量でクライアント端末1に対して送信する。一方、クライアント端末1は、センターサーバ2から配信されたデータを受信すると共に、単位時間毎に自身の負荷状況に応じて最適な配信量のデータが配信されるよう調整する最適配信量決定処理を行う(ステップS11)。
図4は、最適配信量決定処理の手順を示すフローチャートである。クライアント端末1は、クライアント端末1は、負荷状況として、CPU10の使用率、回線負荷を単位時間毎に計測する。また、クライアント端末1は、負荷状況となるクライアント端末1の操作状況として、マウスやキーボードなどの操作装置15の使用回数を単位時間毎に計測する(ステップS110)。そして、クライアント端末1は、計測したCPU10の使用率、回線負荷及び操作装置15の使用回数と、外部記憶装置13に記憶された上述の式1により最適配信量を算出する(ステップS111)。
図5は、各クライアント端末1A〜1Fにおいて各々設定されたCPUの最大使用率、最大回線負荷及び操作装置15の最大使用回数と、クライアント端末1A〜1Fにおいて算出されたCPU10の使用率、回線負荷及び操作装置15の使用回数との対応関係を例示する図である。ここで、同図におけるクライアント端末1Aについて、最適配信量を算出する例について具体的に説明する。この例においては、回線速度100Mbpsで、CPU10Aの使用率が60%で、回線負荷が5Mbps、操作装置15Aの使用回数が5回/秒であるものとする。この場合の最適配信量は、以下の式3により算出される。
a=1−(0.6−0.5)/0.5=0.8 ∴A=0.8
b=1−(5−10)/10=1.5 ∴B=1
c=1−(5−4)/4=0.75 ∴C=0.75
D=(10−5)/10=0.5
∵最適配信量=10×0.8×1×0.75×0.5=3(Mbps)・・・(式3)
b=1−(5−10)/10=1.5 ∴B=1
c=1−(5−4)/4=0.75 ∴C=0.75
D=(10−5)/10=0.5
∵最適配信量=10×0.8×1×0.75×0.5=3(Mbps)・・・(式3)
このようにして、CPU10の使用率、回線負荷及び操作装置15の使用回数のうち少なくとも1つが、各々に対して予め設定されている閾値を超えた場合、超過した割合に応じて最適なデータ配信量(最適配信量)が算出される。尚、CPU10の使用率、回線負荷及び操作装置15の使用回数のいずれも、各々に対して予め設定されている閾値を超えない場合には、最大配信量が最適配信量として算出される。
そして、クライアント端末1は、ステップS110で算出した最適配信量(ここでは、3Mbpsである)でデータを配信することをセンターサーバ2に対して要求する(ステップS112)。一方、センターサーバ2は、当該要求を受け付けると、当該要求に応じて、配信中のプログラムのデータを指定された最適配信量でクライアント端末1に対して送信する(ステップS113)。クライアント端末1は、最適配信量で配信されたデータをセンターサーバ2から受信する(ステップS114)。以上のようにして、クライアント端末1は、最適配信量決定処理を単位時間毎に行い、センターサーバ2からデータを受信する。受信したデータは、例えば、RAM12に記憶させる。そして、クライアント端末1において、配信対象のプログラムにつき全てのデータの受信が完了すると、データ配信処理が終了する。そして、クライアント端末1は、配信対象のプログラムにつき、ステップS114で単位時間毎にRAM12に記憶させた全てのデータを外部記憶装置17に記憶させる。
以上のような構成によれば、センターサーバ2からプログラムが配信される際、クライアント端末1における負荷状況を監視して、最適な配信量となるよう調整することにより、クライアント端末1の負荷を過度に増大させず、クライアント端末1におけるユーザの端末操作を妨げることなく、プログラムの配信を実現させることができる。また、クライアント端末1における負荷状況として、操作装置15の使用回数を用いて最適配信量を算出することにより、クライアント端末1がデータを受信する際にユーザの端末操作に及ぼされる悪影響を抑制することができる。更に、最適配信量の算出を単位時間毎に行うことにより、クライアント端末1における負荷状況により即した最適配信量を算出することができる。この結果、ソフトェアのより効果的な配信を実現することができる。
[第2の実施の形態]
次に、第2の実施の形態について説明する。なお、上述の第1の実施の形態と共通する部分については、同一の符号を使用して説明したり、説明を省略したりする。
次に、第2の実施の形態について説明する。なお、上述の第1の実施の形態と共通する部分については、同一の符号を使用して説明したり、説明を省略したりする。
上述の第1の実施の形態において、クライアント端末1が最適配信量の算出に用いる閾値(速度負荷割合、CPU10の最大使用率、操作装置15の最大使用回数)は、固定的であった。しかし、本実施の形態においては、これらの閾値の組み合わせを複数設定しており、クライアント端末1の使用状況に応じて複数の組み合わせのうちいずれか1つを選択して、選択した組み合わせにおける閾値を用いて上述の最適配信量を算出する。
(1)構成
本実施の形態にかかるクライアント端末1の構成が、上述の第1の実施の形態にかかるクライアント端末1の構成と異なる点は、以下の通りである。
本実施の形態にかかるクライアント端末1の構成が、上述の第1の実施の形態にかかるクライアント端末1の構成と異なる点は、以下の通りである。
本実施の形態においては、速度負荷割合、CPU10の最大使用率、操作装置15の最大使用回数について3つの異なる組み合わせが設定されている。これらの3つの組み合わせは、例えば、パターンA〜Cとしてクライアント端末1の外部記憶装置13に記憶されている。図6は、この3つのパターンA〜Cを例示する図である。同図におけるパターンAにおいては、速度負荷割合が5%、CPU10の最大使用率が25%、操作装置15の最大使用回数が3.5回/秒である。パターンBにおいては、速度負荷割合が7%、CPU10の最大使用率が30%、操作装置15の最大使用回数が4回/秒である。パターンCにおいては、速度負荷割合が10%、CPU10の最大使用率が50%、操作装置15の最大使用回数が4回/秒である。これらの各パターンにおいては、上述の第1の実施の形態と同様にして、回線速度と速度回線割合とを用いて、最大回線負荷(最大配信量)が算出される。
また、パターンA〜Cに対して、使用時間帯が設定されており、これらの対応関係が、クライアント端末1の外部記憶装置13に記憶されている。例えば、パターンAに対して、9時から17時が対応付けられており、パターンBに対して、17時から22時が対応付けられており、パターンCに対しては、22時から9時が対応付けられている。
CPU10は、現在時刻を計測する計時部(図示せず)を備える。また、CPU10がROM11に記憶されたプログラムを実行することによりクライアント端末1において実現される機能が、上述の第1の実施の形態にかかるクライアント端末1において実現される機能と異なる点は、以下の通りである。
クライアント端末1は、上述の第1の実施の形態と同様にして、センターサーバ2からプログラムが配信される際に最適配信量を算出するが、このとき、計時部により計測される現在時刻を判別し、現在時刻に応じて、パターンA〜Cのうちいずれかのパターンを選択して、当該パターンを用いて、最適配信量を算出する。即ち、本実施の形態においては、クライアント端末1は、プログラムが配信される際の時刻という使用状況を判別し、当該使用状況に応じて、パターンA〜Cのうちいずれかのパターンを選択する。
(2)動作
次に、本実施の形態における配信システムの動作について説明する。ここでは、上述の第1の実施の形態と異なる部分について説明する。図7は、本実施の形態に係る最適配信量決定処理の手順を示すフローチャートである。本実施の形態における最適配信量決定処理では、ステップS120において、クライアント端末1は、計時部により計測される時刻によって現在時刻を判別し、当該現在時刻と、外部記憶装置13に記憶された各パターンに対応付けられている使用時間帯とを比較する。そして、クライアント端末1は、パターンA〜Cのうち、当該現在時刻を含む使用時間帯に対応付けられたパターンを選択し、ステップS110でクライアント端末1における負荷状況を計測した後、ステップS111において、当該パターンを用いて、最適配信量を算出する。ステップS111では、例えば、パターンAを用いた場合、以下の式4により最適値が算出される。
次に、本実施の形態における配信システムの動作について説明する。ここでは、上述の第1の実施の形態と異なる部分について説明する。図7は、本実施の形態に係る最適配信量決定処理の手順を示すフローチャートである。本実施の形態における最適配信量決定処理では、ステップS120において、クライアント端末1は、計時部により計測される時刻によって現在時刻を判別し、当該現在時刻と、外部記憶装置13に記憶された各パターンに対応付けられている使用時間帯とを比較する。そして、クライアント端末1は、パターンA〜Cのうち、当該現在時刻を含む使用時間帯に対応付けられたパターンを選択し、ステップS110でクライアント端末1における負荷状況を計測した後、ステップS111において、当該パターンを用いて、最適配信量を算出する。ステップS111では、例えば、パターンAを用いた場合、以下の式4により最適値が算出される。
a=1−(0.3−0.25)/0.25=0.8 ∴A=0.8
b=1−(3−5)/5=1.4 ∴B=1
c=1−(3−3.5)/3.5≒1.14 ∴C=1
D=(5−3)/5=0.4
∵最適配信量=5×0.8×1×1×0.4=1.6(Mbps)・・・(式4)
b=1−(3−5)/5=1.4 ∴B=1
c=1−(3−3.5)/3.5≒1.14 ∴C=1
D=(5−3)/5=0.4
∵最適配信量=5×0.8×1×1×0.4=1.6(Mbps)・・・(式4)
そして、クライアント端末1は、上述の第1の実施の形態と同様にして、ステップS114において、ステップS111で算出した最適配信量(ここでは、1.6Mbpsである)でセンターサーバ2から配信されたデータを受信する。
以上のような構成によれば、例えば、クライアント端末1がユーザにより使用される頻度やその可能性の高い業務時間中は、データの配信量をより少なくすることが可能である。この結果、ユーザの端末操作を妨げることなくデータを受信することをより効果的に実現させることができる。一方、クライアント端末1がユーザにより使用される頻度やその可能性の低い業務時間外は、データの配信量をより多くすることが可能である。この結果、ユーザの端末操作を妨げることなくデータを受信することを可能にすると共に、データの受信に係る時間を低減させることができる。従って、ユーザの利便性を向上させることができる。
[変形例]
上述した各実施の形態に限定されるものではなく、以下に例示するような種々の変形が可能である。
上述した各実施の形態に限定されるものではなく、以下に例示するような種々の変形が可能である。
<変形例1>
上述の各実施の形態におけるクライアント端末1で実行されるプログラムは、ROMに記憶されるとしたが、ROMに限らず、HDDに記憶されていても良い。また、当該プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、当該プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。
上述の各実施の形態におけるクライアント端末1で実行されるプログラムは、ROMに記憶されるとしたが、ROMに限らず、HDDに記憶されていても良い。また、当該プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、当該プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。
<変形例2>
上述の各実施の形態においては、クライアント端末1における負荷状況として、CPU10の使用率、回線負荷及びクライアント端末1の操作状況を用いた。しかし、負荷状況としてはこれらに限らない。
上述の各実施の形態においては、クライアント端末1における負荷状況として、CPU10の使用率、回線負荷及びクライアント端末1の操作状況を用いた。しかし、負荷状況としてはこれらに限らない。
また、上述の各実施の形態においては、ユーザの操作として主にマウスやキーボードなどの操作装置15を使用することから、ユーザの操作状況として、操作装置15の使用回数を用いた。しかし、ユーザの操作状況として用いるものは、これに限らない。
<変形例3>
上述の実施の形態における配信システムは、6つのクライアント端末1A〜1Fを有するように構成したが、配信システムが有するクライアント端末1の数は、これに限らない。
上述の実施の形態における配信システムは、6つのクライアント端末1A〜1Fを有するように構成したが、配信システムが有するクライアント端末1の数は、これに限らない。
また、上述の各実施の形態においては、各クライアント端末1A〜1Fにおいて予め設定される速度負荷割合、CPUの最大使用率及び操作装置の使用回数は、共通するものであっても良いし、異なるものであっても良い。
<変形例4>
上述の各実施の形態におけるセンターサーバ2は、例えば、複数の異なるプログラムをクライアント端末1に対して配信可能であるように構成しても良い。この場合、センターサーバ2の外部記憶装置に記憶されるバージョン管理テーブルには、クライアント端末1の端末ID毎に、当該クライアント端末1に対して配信可能なプログラムを特定するためのプログラム識別情報と、当該クライアント端末1に対して適用可能なプログラム毎のバージョン各プログラムに対してプログラムのバージョンをクライアント端末1の端末IDとを対応付けて記憶させる。そして、センターサーバ2は、上述のステップS4でクライアント端末1から端末IDを受信すると、バージョン管理テーブルを参照して、クライアント端末1の端末認証を行うと共に、ステップS5で、当該クライアント端末1に対して配信可能なプログラム毎のバージョンを示す配信通知情報をクライアント端末1に対して送信する。一方、クライアント端末1は、配信通知情報を受信すると、配信通知情報によって示される全てのプログラムのうちバージョンの変更が必要なプログラムを選択して、当該プログラムの配信をセンターサーバ2に対して要求する。
上述の各実施の形態におけるセンターサーバ2は、例えば、複数の異なるプログラムをクライアント端末1に対して配信可能であるように構成しても良い。この場合、センターサーバ2の外部記憶装置に記憶されるバージョン管理テーブルには、クライアント端末1の端末ID毎に、当該クライアント端末1に対して配信可能なプログラムを特定するためのプログラム識別情報と、当該クライアント端末1に対して適用可能なプログラム毎のバージョン各プログラムに対してプログラムのバージョンをクライアント端末1の端末IDとを対応付けて記憶させる。そして、センターサーバ2は、上述のステップS4でクライアント端末1から端末IDを受信すると、バージョン管理テーブルを参照して、クライアント端末1の端末認証を行うと共に、ステップS5で、当該クライアント端末1に対して配信可能なプログラム毎のバージョンを示す配信通知情報をクライアント端末1に対して送信する。一方、クライアント端末1は、配信通知情報を受信すると、配信通知情報によって示される全てのプログラムのうちバージョンの変更が必要なプログラムを選択して、当該プログラムの配信をセンターサーバ2に対して要求する。
<変形例5>
上述の各実施の形態においては、センターサーバ2が配信対象のプログラムの配信を開始してから、クライアント端末1が最適配信量決定処理を行うように構成した。しかし、本実施の形態においては、センターサーバ2が配信対象のプログラムの配信を開始する前に、クライアント端末1が最適配信量決定処理を行い、当該処理において決定した最適配信量でデータの配信をクライアント端末1が要求してから初めてセンターサーバ2で当該プログラムの配信を開始するように構成しても良い。
上述の各実施の形態においては、センターサーバ2が配信対象のプログラムの配信を開始してから、クライアント端末1が最適配信量決定処理を行うように構成した。しかし、本実施の形態においては、センターサーバ2が配信対象のプログラムの配信を開始する前に、クライアント端末1が最適配信量決定処理を行い、当該処理において決定した最適配信量でデータの配信をクライアント端末1が要求してから初めてセンターサーバ2で当該プログラムの配信を開始するように構成しても良い。
<変形例6>
上述の第2の実施の形態においては、クライアント端末1の使用状況として、各パターンに対して使用時間帯を対応付け、現在時刻に応じて、いずれかのパターンを選択するように構成した。しかし、例えば、クライアント端末1の使用状況として、特定のプログラムを実行中である場合に、所定のパターンを選択するように構成しても良い。具体的には、例えば、CPUの使用率の高い特定のプログラムに対して、パターンAを対応付ける。そして、クライアント端末1は、上述のステップS110において、特定のプログラムを実行していないときには、パターンBを用いて最適配信量を算出するようにし、特定のプログラムを実行中には、パターンAを用いて最適配信量を算出するようにする。パターンAは、パターンBよりCPUの最大使用率が小さく設定されているため、CPUの使用率の高い特定のプログラムを実行中であっても、クライアント端末1に対する負担を過度に増大させることなく、データを受信可能である。即ち、このような構成によれは、クライアント端末1の使用状況により即した最適配信量を算出することが可能であり、クライアント端末1に係る負担を過度に増大させることなく、データを配信可能である。
上述の第2の実施の形態においては、クライアント端末1の使用状況として、各パターンに対して使用時間帯を対応付け、現在時刻に応じて、いずれかのパターンを選択するように構成した。しかし、例えば、クライアント端末1の使用状況として、特定のプログラムを実行中である場合に、所定のパターンを選択するように構成しても良い。具体的には、例えば、CPUの使用率の高い特定のプログラムに対して、パターンAを対応付ける。そして、クライアント端末1は、上述のステップS110において、特定のプログラムを実行していないときには、パターンBを用いて最適配信量を算出するようにし、特定のプログラムを実行中には、パターンAを用いて最適配信量を算出するようにする。パターンAは、パターンBよりCPUの最大使用率が小さく設定されているため、CPUの使用率の高い特定のプログラムを実行中であっても、クライアント端末1に対する負担を過度に増大させることなく、データを受信可能である。即ち、このような構成によれは、クライアント端末1の使用状況により即した最適配信量を算出することが可能であり、クライアント端末1に係る負担を過度に増大させることなく、データを配信可能である。
本発明は、サーバ装置からクライアント端末に対してプログラムを配信するデータ配信技術に用いて好適である。
1 各クライアント端末
2 センターサーバ
10 CPU
11 ROM
12 RAM
13 外部記憶装置
14 表示装置
15 操作装置
16 通信I/F
17 バス
NT ネットワーク
2 センターサーバ
10 CPU
11 ROM
12 RAM
13 外部記憶装置
14 表示装置
15 操作装置
16 通信I/F
17 バス
NT ネットワーク
Claims (8)
- サーバ装置が配信する所定のプログラムをネットワークを介して受信するコンピュータに実行させるための情報処理プログラムであって、
前記情報処理装置における負荷状況を計測する状況計測ステップと、
前記状況計測ステップで計測した負荷状況に応じて、前記サーバ装置から配信される前記所定のプログラムの単位時間当たりの配信量の最適値を算出する最適値算出ステップと、
前記最適値算出ステップで算出した単位時間当たりの最適値の配信量で前記所定のプログラムを配信するよう前記サーバ装置に対して要求する要求ステップとを
前記コンピュータに実行させることを特徴とする情報処理プログラム。 - 前記状況計測ステップでは、前記負荷状況として、前記中央制御装置の使用率、前記ネットワークにおける回線負荷、前記情報処理装置に接続される操作装置の使用回数のうち少なくとも1つを計測する
ことを特徴とする請求項1に記載の情報処理プログラム。 - 前記最適値算出ステップでは、前記状況計測ステップで計測した前記負荷状況と、当該負荷状況に対して予め設定されている閾値とを用いて、前記配信量の最適値を算出する
ことを特徴とする請求項1に記載の情報処理プログラム。 - 前記最適値算出ステップでは、前記状況計測ステップで計測した前記負荷状況が、当該負荷状況に対して予め設定されている前記閾値を超える場合、前記ネットワークにおける回線速度に応じて予め設定された前記配信量の最大値より小さくなるよう前記配信量の最適値を算出する
ことを特徴とする請求項3に記載の情報処理プログラム。 - 前記状況計測ステップでは、前記ネットワークにおける回線負荷を前記負荷状況として計測し、
前記最適値算出ステップでは、前記状況計測ステップで計測した前記回線負荷と、前記回線負荷に対して前記ネットワークの回線速度に応じて設定された閾値とを用いて、前記配信量の最適値を算出する
ことを特徴とする請求項1に記載の情報処理プログラム。 - 前記負荷状況に対して前記閾値が前記情報処理装置の使用状況に応じて複数設定されており、
前記最適値算出ステップは、
前記情報処理装置の使用状況を判別する状況判別ステップと、
前記計測ステップで計測した前記負荷状況に対して、前記状況判別ステップで判別した前記使用状況に応じて設定されている前記閾値を前記複数の閾値の中から選択する選択ステップと、
前記計測ステップで計測した前記負荷状況と、前記選択ステップで選択した閾値とを用いて、前記配信量の最適値を算出する第2最適値算出ステップとを含む
ことを特徴とする請求項3に記載の情報処理プログラム。 - サーバ装置が配信する所定のプログラムをネットワークを介して受信する情報処理装置であって、
当該情報処理装置における負荷状況を計測する状況計測手段と、
前記状況計測手段が計測した負荷状況に応じて、前記サーバ装置から配信される前記所定のプログラムの単位時間当たりの配信量の最適値を算出する最適値算出手段と、
前記最適値算出手段が算出した単位時間当たりの最適値の配信量で前記所定のプログラムを配信するよう前記サーバ装置に対して要求する要求手段とを備える
ことを特徴とする情報処理装置。 - 所定のプログラムを配信するサーバ装置と、
前記サーバ装置が配信する前記所定のプログラムを受信する情報処理装置と、を備え、
前記情報処理装置は、当該情報処理装置における負荷状況を計測する状況計測手段と、
前記状況計測手段が計測した負荷状況に応じて、前記サーバ装置から配信される前記所定のプログラムの単位時間当たりの配信量の最適値を算出する最適値算出手段と、前記最適値算出手段が算出した単位時間当たりの最適値の配信量で前記所定のプログラムを配信するよう前記サーバ装置に対して要求する要求手段とを有し、
前記サーバ装置は、前記要求手段が要求した単位時間当たりの最適値の配信量で前記所定のプログラムを前記情報処理装置に対して配信する要求配信手段を有する
ことを特徴とするデータ配信システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007037692A JP2008204042A (ja) | 2007-02-19 | 2007-02-19 | 情報処理プログラム、情報処理装置及びデータ配信システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007037692A JP2008204042A (ja) | 2007-02-19 | 2007-02-19 | 情報処理プログラム、情報処理装置及びデータ配信システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008204042A true JP2008204042A (ja) | 2008-09-04 |
Family
ID=39781511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007037692A Withdrawn JP2008204042A (ja) | 2007-02-19 | 2007-02-19 | 情報処理プログラム、情報処理装置及びデータ配信システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008204042A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014007672A (ja) * | 2012-06-26 | 2014-01-16 | Canon Inc | 画像表示装置、画像表示装置の制御方法、画像表示システム、およびプログラム |
WO2014028226A2 (en) * | 2012-08-15 | 2014-02-20 | International Business Machines Corporation | System and method for software allocation based on forecasts and calendars |
JP2017157007A (ja) * | 2016-03-02 | 2017-09-07 | 住友電気工業株式会社 | プログラム更新システム、プログラム更新方法及びコンピュータプログラム |
-
2007
- 2007-02-19 JP JP2007037692A patent/JP2008204042A/ja not_active Withdrawn
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014007672A (ja) * | 2012-06-26 | 2014-01-16 | Canon Inc | 画像表示装置、画像表示装置の制御方法、画像表示システム、およびプログラム |
US10224001B2 (en) | 2012-06-26 | 2019-03-05 | Canon Kabushiki Kaisha | Display control apparatus, display control method, display control system, and storage medium |
WO2014028226A2 (en) * | 2012-08-15 | 2014-02-20 | International Business Machines Corporation | System and method for software allocation based on forecasts and calendars |
WO2014028226A3 (en) * | 2012-08-15 | 2014-05-08 | International Business Machines Corporation | System and method for software allocation based on forecasts and calendars |
US10592887B2 (en) | 2012-08-15 | 2020-03-17 | International Business Machines Corporation | System and method for software allocation based on forecasts and calendars |
US11222323B2 (en) | 2012-08-15 | 2022-01-11 | International Business Machines Corporation | System and method for software allocation based on forecasts and calendars |
JP2017157007A (ja) * | 2016-03-02 | 2017-09-07 | 住友電気工業株式会社 | プログラム更新システム、プログラム更新方法及びコンピュータプログラム |
WO2017149824A1 (ja) * | 2016-03-02 | 2017-09-08 | 住友電気工業株式会社 | プログラム更新システム、プログラム更新方法及びコンピュータプログラム |
US11144295B2 (en) | 2016-03-02 | 2021-10-12 | Sumitomo Electric Industries, Ltd. | Program updating system, program updating method, and computer program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3369445B2 (ja) | ネットワークサービスサーバ負荷調整装置、方法および記録媒体 | |
CN101102288B (zh) | 一种实现大型即时通信的方法及系统 | |
US8370517B2 (en) | Conserving energy in a data processing network | |
US20080155284A1 (en) | Power consumption adjusting apparatus and processing method | |
CN109343801B (zh) | 数据存储方法、设备及计算机可读存储介质 | |
WO2005050356B1 (en) | Adaptive load balancing | |
CN111367662B (zh) | 一种负载均衡方法、装置及系统 | |
WO2021134928A1 (zh) | 基于p2p网络的数据传输方法、设备、系统、装置及介质 | |
JP6013300B2 (ja) | クラスタデータ処理のための方法及び装置 | |
US9525727B2 (en) | Efficient and scalable pull-based load distribution | |
US20060221815A1 (en) | Failure-monitoring program and load-balancing device | |
CN107645517B (zh) | 数据推送方法及装置 | |
WO2020253531A1 (zh) | 一种通信方法、装置、实体及存储介质 | |
CN110474917B (zh) | 消息中间件上、下线方法、装置、设备及可读存储介质 | |
US10567492B1 (en) | Methods for load balancing in a federated identity environment and devices thereof | |
US8116317B2 (en) | Preventing quality of service policy abuse in a network | |
JP2004164553A (ja) | サーバ計算機保護装置、サーバ計算機保護方法、サーバ計算機保護プログラム及びサーバ計算機 | |
US20090164659A1 (en) | Communication system allowing reduction in congestion by restricting communication | |
JP2008204042A (ja) | 情報処理プログラム、情報処理装置及びデータ配信システム | |
JP2007179246A (ja) | 計算機管理方法、計算機管理プログラム、および、計算機管理サーバ | |
JP2007281783A (ja) | 通信制御方法及び通信制御装置 | |
JP2002342296A (ja) | ネットワークシステム | |
US8699347B2 (en) | Communication apparatus, communication system, communication method, and a computer-readable medium | |
JP5088291B2 (ja) | 帯域制御装置及び帯域制御方法ならびにそのプログラム、帯域制御システム | |
JP2003281091A (ja) | 同時受付制御システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20100511 |