(58)【調査した分野】(Int.Cl.,DB名)
所定周期ごとに 送信データとして 前記所定周期を示した送信周期設定情報と所要データとを定期的に送信するデバイス群の何れかから送信された送信データを受信した際に、
各送信データの所要データを逐次蓄積すると共に、
前記送信周期設定情報を取得し、
当該送信データの受信時刻と送信周期設定情報と基づいて、当該デバイスの次回の推定受信時刻を仮定し、
該仮定した推定受信時刻が他のデバイスの次回の推定受信時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する送信周期設定情報に加える調整値を設定する命令を生成し、
該当したデバイスの何れかに生成した調整値を設定する命令を通知し、
また、ファイルデータをアップロード/ダウンロードする前に、アップロード/ダウンロードに伴う少なくとも開始時刻を示した予備情報をサーバに送信するデバイス群の何れかから送信された前記予備情報を受信した際に、
予備情報に含まれていた開始時刻を取得し、当該デバイスの要求されたアップロード時刻/ダウンロード時刻を仮定すると共に、該仮定したアップロード時刻/ダウンロード時刻が他のデバイスのアップロード時刻/ダウンロード時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する予定アップロード時刻/予定ダウンロード時刻に加える調整値を設定する命令を通知する、
ことを特徴とするサーバ装置。
ファイルデータをアップロード/ダウンロードする前に、アップロード/ダウンロードに伴う少なくとも予定開始時刻を示した予備情報を要求先のサーバに送信すると共に、
前記サーバからアップロード/ダウンロードの予定開始時刻に加える調整値を設定する命令を受け付けた場合、該調整値をアップロード/ダウンロードの予定開始時刻に加えてアップロード/ダウンロードを実行するタイミングを計る
ことを特徴とするデバイス装置。
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1は、水道メータ、ガスメータから送信されるデータのように、送信間隔が長いデータを管理するには適しているが、データを定期的に且つ短い時間間隔で送信するシステムについて考慮していない。このため、特許文献1は、多数の端末からのデータが同時に多量に送信される場合における問題について検討していない。
【0008】
特許文献2は、サーバ側から端末に対して修正ソフトウェアを提供するための方式を開示しているだけで、複数の端末からサーバ側に同時にデータを送信する場合における問題等について述べていない。
【0009】
最近、カメラ、センサ等の多数のデバイスからのデータをサーバ等によって処理するM2M (Machine to Machine), IoT (Internet of Things)等の通信システムが注目を浴びている。このような通信システムでは、サーバで数多くのデバイスからのデータを漏れなく処理することが求められるものと考えられる。
【0010】
カメラ、センサ等のデバイスの数が多くなればなるほど、デバイスからのデータは同時的にサーバに送信されることがより多くなるものことが懸念される。
【0011】
一方、サーバは、各種デバイスからのデータをリアルタイムに処理することは必ずしも必要としないことが多い。他方で、上記デバイスからのデータは、サーバによって定期的及び周期的に監視や検索などでほぼリアルタイムに利用する場合もある。
【0012】
このような通信システムにおいては、多数のデバイスの送信タイミングが可能な限り重ならないような対策を講じておく必要があるものと考えられる。
【0013】
サーバ管理下に置くデバイス台数を更に増やして行くと、設定情報を操作して各デバイスが所要データを送信するタイミングを調整したとしても、同時にサーバにアクセスするデバイスの数が順次増えることになる。この結果、サーバ許容処理能力(通信量、記録、演算、など)を増強する必要が生じる。仮にこの対策を怠った場合、サーバ許容処理能力を超えた時にデータ損失を生じる。
【0014】
このため、更なるデバイスの同時アクセス数を許容するには、このような瞬間的なサーバへの負荷を、デバイス群の所要データの送信タイミング調整により根本的に抑制する仕組みが求められる。
【0015】
本発明は、上記課題に鑑みて成されたものであり、瞬間的なサーバへの負荷集中を予防して、デバイスのアクセス許容数を増加可能に構成された通信システムの提供を目的とする。
【課題を解決するための手段】
【0016】
本発明の一実施形態に係る通信システムは、所定周期ごとに 送信データとして 前記所定周期を示した送信周期設定情報と所要データとをサーバに定期的に送信するデバイス群と、各デバイスから送信された送信データを逐次蓄積するサーバと、を含み、前記サーバは、各デバイスから送信された送信データを受信した際に、前記送信周期設定情報を取得し、当該送信データの受信時刻と送信周期設定情報と基づいて、当該デバイスの次回の推定受信時刻を仮定すると共に、該仮定した推定受信時刻が他のデバイスの次回の推定受信時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する送信周期設定情報に加える調整値を設定する命令を通知し、前記サーバから調整値を設定する命令を受けたデバイスは、該調整値を送信周期設定情報に加えたタイミングに成った際に、次回の送信データを送信することを特徴とする。
【0017】
本発明の一実施形態に係る通信システムは、ファイルデータをアップロード/ダウンロードする前に、アップロード/ダウンロードに伴う少なくとも開始時刻を示した予備情報をサーバに送信するデバイス群と、各デバイスから要求されたアップロード/ダウンロードを受け付けるサーバと、を含み、前記サーバは、各デバイスから送信された予備情報を受信した際に、予備情報に含まれていた開始時刻を取得し、当該デバイスの要求されたアップロード時刻/ダウンロード時刻を仮定すると共に、該仮定したアップロード時刻/ダウンロード時刻が他のデバイスのアップロード時刻/ダウンロード時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する予定アップロード時刻/予定ダウンロード時刻に加える調整値を設定する命令を通知し、前記サーバから調整値を設定する命令を受けたデバイスは、該調整値をアップロード時刻/ダウンロード時刻に加えたタイミングに成った際に、アップロード/ダウンロードを実行することを特徴とする。
【0018】
本発明の一実施形態に係るサーバ装置は、所定周期ごとに 送信データとして 前記所定周期を示した送信周期設定情報と所要データとを定期的に送信するデバイス群の何れかから送信された送信データを受信した際に、各送信データの所要データを逐次蓄積すると共に、前記送信周期設定情報を取得し、当該送信データの受信時刻と送信周期設定情報と基づいて、当該デバイスの次回の推定受信時刻を仮定し、該仮定した推定受信時刻が他のデバイスの次回の推定受信時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する送信周期設定情報に加える調整値を設定する命令を生成し、該当したデバイスの何れかに生成した調整値を設定する命令を通知する、ことを特徴とする。
【0019】
本発明の一実施形態に係るサーバ装置は、ファイルデータをアップロード/ダウンロードする前に、アップロード/ダウンロードに伴う少なくとも開始時刻を示した予備情報をサーバに送信するデバイス群の何れかから送信された前記予備情報を受信した際に、予備情報に含まれていた開始時刻を取得し、当該デバイスの要求されたアップロード時刻/ダウンロード時刻を仮定すると共に、該仮定したアップロード時刻/ダウンロード時刻が他のデバイスのアップロード時刻/ダウンロード時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する予定アップロード時刻/予定ダウンロード時刻に加える調整値を設定する命令を通知する、ことを特徴とする。
【0020】
本発明の一実施形態に係るデバイス装置は、所定周期ごとにサーバに送信する所要データを収集し 且つ 該所要データと共に前記所定周期を示した送信周期設定情報を前記サーバに送信データとして定期的に送信すると共に、前記サーバから送信周期設定情報に加える調整値を設定する命令を受け付けた場合、該調整値を送信周期設定情報に加えて前記所定周期を管理して、次回の送信データを送信するタイミングを計ることを特徴とする。
【0021】
本発明の一実施形態に係るデバイス装置は、ファイルデータをアップロード/ダウンロードする前に、アップロード/ダウンロードに伴う少なくとも予定開始時刻を示した予備情報を要求先のサーバに送信するすると共に、前記サーバからアップロード/ダウンロードの予定開始時刻に加える調整値を設定する命令を受け付けた場合、該調整値をアップロード/ダウンロードの予定開始時刻に加えてアップロード/ダウンロードを実行するタイミングを計ることを特徴とする。
【0022】
本発明の一実施形態に係るサーバ負荷分散方法は、サーバは、デバイス群各々から、所定周期ごとに前記所定周期を示した送信周期設定情報と所要データとを送信データとして受け付け、各送信データの所要データを逐次蓄積すると共に、各送信データの送信周期設定情報を逐次取得し、取得した送信データの受信時刻と送信周期設定情報と基づいて、当該デバイスの次回の推定受信時刻を仮定し、該仮定した推定受信時刻が他のデバイスの次回の推定受信時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する送信周期設定情報に加える調整値を設定する命令を生成し、該当したデバイスの何れかに生成した調整値を設定する命令を通知する、ことを特徴とする。
【0023】
本発明の一実施形態に係るサーバ負荷分散方法は、サーバは、ファイルデータをアップロード/ダウンロードする前に、アップロード/ダウンロードに伴う少なくとも開始時刻を示した予備情報をサーバに送信するデバイス群の何れかから送信された前記予備情報を受信し、当該予備情報に含まれていた開始時刻を取得し、当該デバイスの要求されたアップロード時刻/ダウンロード時刻を仮定すると共に、該仮定したアップロード時刻/ダウンロード時刻が他のデバイスのアップロード時刻/ダウンロード時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する予定アップロード時刻/予定ダウンロード時刻に加える調整値を設定する命令を通知する、ことを特徴とする。
【発明の効果】
【0024】
本発明によれば、瞬間的なサーバへの負荷集中を予防して、デバイスのアクセス許容数を増加可能に構成された通信システムを提供できる。
【発明を実施するための形態】
【0026】
本発明の実施形態を図面に基づいて説明する。
【0027】
[第1の実施形態]
図1は、一実施形態の通信システム1を示す概略図である。
図1に示されるようにこの通信システム1には、データを蓄積管理するサーバ10と、数多くのデバイス20(図中のデバイス1からデバイスN)とが含まれる。サーバ10と各デバイス20は、ネットワーク(パケット通信)を介して通信可能である。なお、ネットワーク構成は特に限定しない。Wi-Fi(登録商標)、LAN(Local Area Network)、移動体通信などの通信インフラを、適宜組み合わせて使用すればよい。
【0028】
図2は、通信システム1のサーバ10の構成を示す機能ブロック図である。なお、サーバ10は、各デバイス20から各々のタイミングで通知されてくる送信データから所要データを取り出して蓄積管理するがこの部分については説明を省略する。所要データの種別やデータ量については特に限定しない。
【0029】
サーバ10は、
図2に示すように、データ受信部11と、受信データ解析部12と、記憶部13と、受信時刻算出部14と、データ受信時刻調整部15と、制御情報送信部16とを具備する。各構成要素は以下のように動作するように構成されている。
【0030】
データ受信部11は、各デバイス20からの送信データを逐次受信する。
【0031】
受信データ解析部12は、受信したデータの内容を解析して所要データと設定情報を取り出す。この設定情報には、送信元のデバイス20に送信データの送信するように設定された周期が記載されている。すなわち、設定情報には、送信周期設定情報が含まれている。
【0032】
記憶部13には、各デバイス20の送信データ群(所要データ群)と各デバイス20の設定情報(送信周期設定情報)とが区別されてそれぞれ格納される。この際、各デバイスの設定情報の内容は、デバイス情報テーブルに記録される。なお、サーバ10(受信データ解析部12)は、特に限定しないものの、送信データのヘッダ等に含まれるデバイスID(Device Identification)を用いて、送信元デバイスを識別すればよい。デバイスIDに変えて、IPアドレス(Internet Protocol Address)や他の識別符号を用いることとしてもよい。
【0033】
受信時刻算出部14は、各デバイス20からの送信データの受信時刻と該当デバイス20が送信した設定情報(送信周期設定情報)の周期から次回のデータ受信時刻を算出する。
【0034】
データ受信時刻調整部15は、算出したあるデバイス20の次回のデータ受信時刻と、残りの全デバイスの次回の推定受信時刻とを確認する。そして、データ受信時刻調整部15は、算出した次回の受信時刻が他のデバイスの次回の推定受信時刻と同時刻であった場合、該当したデバイスの何れかに、そのデバイスが保持する送信周期設定情報に加える調整値を設定する命令(調整値を含む制御情報)を生成する。
【0035】
制御情報送信部16は、生成した制御情報を、該当したデバイスの一方に送信する。このことで、全デバイス20と処理中のデバイス20との送信時刻の重複タイミングが調整される。
【0036】
これらの構成が連動して、サーバ10は、デバイス20が使用した設定情報を各々から逐次取得し、各デバイス20から通知された各設定情報に基づいて、負荷の集中を抑制することに必要なデバイス20に対して送信タイミングを調整する調整値を通知する。この調整値を通知することで、各デバイス20のデータ送信タイミングを少しずつ変更する。このことによって、結果的に、数多くのデバイス20から送信される数多くのデータをサーバ10で受信するタイミングが少しずる分散し、各時点における受信タイミングの負荷量の低減が図れる。
【0037】
図3は、通信システム1のデバイス20の構成を示す機能ブロック図である。なお、各デバイス20は、各々のタイミングで通知する送信データの所要データを生成するが、この部分については説明を省略する。
【0038】
デバイス20は、
図3に示すように、制御情報受信部21と、受信制御情報解析部22と、記憶部23と、周期タイマー監視部24と、データ収集部25と、データ送信部26とを具備する。各構成要素は以下のように動作するように構成されている。
【0039】
制御情報受信部21は、サーバ10から制御情報(必要に応じて調整値や送信周期が含まれる)を受信する。
【0040】
受信制御情報解析部22は、受信した制御情報を解析して調整値や送信周期を取り出して、記憶部23に登録する。
【0041】
記憶部23は、入力された設定情報(調整値や送信周期が含まれる)を記憶し管理する。
【0042】
周期タイマー監視部24は、収集したデータ(デバイス送信データ,所要データ)の送信タイミングを管理する。
【0043】
データ収集部25は、また、上記構成要素の処理動作と並行的に、サーバ10に対して送信する収集データ(所要データ)を生成する。なお、規定タイミングに応じてデータ収集部25が動作してもよい。
【0044】
周期タイマー監視部24は、収集したデータ(デバイス送信データ,所要データ)の送信タイミングを調整する。
【0045】
データ送信部26は、サーバ10に収集データと設定情報を関連付けて送信する。
【0046】
設定情報入力部27は、設定情報を外部(ユーザや他の機器)から入力を受け付けて、記憶部23に登録する。なお、制御情報の登録は、サーバ10からは制御情報受信部21を介して登録される。
【0047】
これらの構成が連動して、各デバイス20は、サーバ10から調整値を含む制御情報を受信した場合に、受信制御情報解析部22でサーバ10から調整値を取得し、その調整値を記憶部23に登録する。そして、各デバイス20は、周期タイマー監視部24を用いて、登録された設定情報に従って、次回の送信データを送信する。なお、各デバイス20は、サーバ10から調整値を含む制御情報を受信しない場合、周期タイマー監視部24で登録された設定情報に従って、次回の送信データを送信する。
【0048】
図4は、通信システム1の各デバイス20の送信データの送信タイミング調整に係る各構成要素の関係を示した説明図である。
【0049】
各デバイス20は各々、設定情報を参照して、送信周期設定情報で規定された間隔毎に定期的にサーバ10に対して所要データを送信する。この際、各デバイス20は、所要データと共に設定情報(少なくとも送信周期設定情報)を併せて送信データとしてサーバ10に送信する。この設定情報は、各デバイス20のユーザや、ユーザが使用するサービスベンダーが設定することを想定する。
【0050】
サーバ10は、データ受信部11にて受信した各受信データから、各デバイス20の送信周期設定情報を取得する。そして、サーバ10は、受信時刻算出部14において各デバイス20から受信データを受信した時刻を参照して 次に当該デバイスから送信データが到達する時刻を推定し、デバイス管理テーブルのデータ送信推定時刻に記録する。
【0051】
次に、サーバ10は、データ受信時刻調整部15において、テーブルに記載済みの他のデバイス20のデータ送信推定時刻(上記手法と同様に他のデバイス20の送信データの受信時に記載)を参照し、同じ時刻にデータを送信する他のデバイス20があるか検索する。
【0052】
同じ時刻にデータを送信するデバイスが存在した場合、サーバ10は、該当したデバイス20に対して、次の送信時間の微調整を指示する制御情報(調整値)を、制御情報送信部16を介して送信する。
【0053】
デバイス20では、制御情報受信部21にて制御情報を受信した場合、受信情報解析部22によって制御情報の内容(調整値)を取得し、設定情報に登録する。
【0054】
このように、サーバ10からデータ送信のタイミング変更の指示(調整値)を設定する命令を受け取ったデバイス20は、制御情報に登録されているデータ送信周期で定まる次のデータ送信のタイミングを微調整する。
【0055】
この結果、サーバ10の指示によって一部のデバイス20の所要データの送信時刻を調整することによって、サーバ10がデータを受信する時刻が重ならないように調整する。この結果、サーバ10への各デバイス20の通信の局所的な集中を自律的に緩和する。
【0056】
図5は、サーバ10の記憶部13に記憶されているデバイス情報テーブルを可視的に示した説明図である。
【0057】
サーバ10は、個々のデバイス20を識別するデバイスID、デバイス20から受信した設定情報から、周期間隔、受信時刻、及び算出した次のデータ受信時刻をデバイス情報テーブルに登録する。この際、図中の予想次回受信時刻が重複した値を計算した場合に、調整値を付与する。このデバイス情報テーブルの登録は、各デバイス20からデータを受信した都度所要データの格納と共に更新する。
この仕組みによってサーバ10に生じる瞬間的な負荷の発生を自律的に予防する。
【0058】
次に、サーバ10によるアクセスデバイスのデータ送信タイミングの調整方法を実現する各装置の動作フローチャート例を
図6及び
図7を用いて説明する。
【0059】
図6は、サーバ10の動作を示したフローチャート例である。
【0060】
サーバ10は、各デバイスから送信データを受信する(S101)と、受信した制御情報等からデバイスID、受信時刻、当該デバイスの送信周期設定情報を取得してデバイス情報テーブルに記憶する(S102)。次に、サーバ10は、受信時刻と送信周期設定情報から予測次回受信時刻を算出する(S103)。次に、サーバ10は、デバイス情報テーブルを参照して同じ時刻にデータを送信するデバイスがあるかをチェックする(S104)。もし同じ時刻にデータを送信するデバイスが存在した場合(S105のYES)、サーバ10は、該当デバイス20に設定する周期時間の調整値を計算する(S106)。最後に、サーバ10は、送信周期を調整するデバイス20に対して、決定した調整値を制御情報として送信する(S107)。
【0061】
図7は、デバイス20の動作を示したフローチャート例である。
【0062】
デバイス20は、設定情報に従ってデータ送信時刻になった際(S201)に、送信データ(所要データ)の送信前に、当該送信にあたる調整値の有無を確認(S202)する。次に、デバイス20は、収集や生成した送信データ(所要データ)と、送信周期を含む設定情報を関連付けてサーバ10に送信する(S203)。また、デバイス20は常時的に、サーバ10から調整値を含む設定情報を受信していないか監視する(S204)。もしサーバ10から制御情報を受信した場合(その制御情報に調整値が含まれていた場合)、次回送信時間を調整する(S205)。この際、サーバ10は、送信周期については変更せずに、次回の送信データの送信後に調整値を削除して元の送信周期に従ってデータ送信を継続する。なお、制御情報にサーバ10や他の装置から送信周期を含む設定情報を受信した場合、そのデバイス20は設定情報を更新して、その送信周期を用いて今後動作する。
【0063】
ここで、データの受信時間の調整例を示す。仮にデバイス20−1とデバイス20−2の次回受信時刻が重なっていた場合、サーバ10(データ受信時刻調整部15)は、デバイス20−2の次回受信時刻を変更する。変更した結果デバイス20−2とデバイス20−3の受信時刻が重なっている為、更にデバイス20−3の受信時刻を更に変更する。元の送信時刻との差分を調整値として所定期間 デバイス情報テーブルに保存する。
【0064】
_________________________
データ送信時刻の調整例1:
デバイス20−1 次回受信時刻A
デバイス20−2 次回受信時刻A ⇒ A’
デバイス20−3 次回受信時刻C
デバイス20−4 次回受信時刻D
・・・
* デバイスデバイス20−1とデバイス20−2の次回受信時刻が重なっている。
⇒ デバイス20−2の受信時刻をA’に調整
_________________________
【0065】
_________________________
データ送信時刻の調整例2:
デバイス20−1 次回受信時刻A
デバイス20−2 次回受信時刻A ⇒ A’
デバイス20−3 次回受信時刻A’⇒ A’’
デバイス20−4 次回受信時刻D
・・・
* デバイスデバイス20−1とデバイス20−2の次回受信時刻が重なっている。
⇒ デバイス20−2の受信時刻をA’に調整
⇒ デバイスデバイス20−2デバイス20−3の次回受信時刻が重なっている。
⇒ デバイス20−3の受信時刻をA’’に調整
_________________________
【0066】
以上説明したように、通信システム1は、サーバ10と各デバイス20との協働によって、各デバイス20が実際にデータ送信タイミングを動的に調整することが可能となる。このことによって、同じ時間にサーバ10に対して各デバイス20の送信が集中することを抑制する。このため、サーバ10の瞬間的負荷集中を予防でき、その結果、同時に管理下におけるデバイス数を増加させることが可能になる。また、各装置で本発明で付加的に実施する情報処理は、非常に低演算量で済む。このため、サーバ10やデバイス20の実質的能力に影響を与えずに実現可能となる。
【0068】
[第2の実施形態]
図8は、第2の実施形態の通信システム2を示す概略図である。第2の実施形態の通信システム2と第1の実施形態との違いは、第1の実施形態は各デバイスが定期的にデータ送信する運用であったことに対して、第2の実施形態は各デバイスが不定期にデータ送受信(アップロード/ダウンロード)する運用である。
【0069】
サーバ10’及びデバイス20’は、第1の実施形態のサーバ10及びデバイス20と同様な構成で構築できる。一方、サーバ10’及びデバイス20’は、実際のファイルダウンロード/ダウンロード前に、アップロード/ダウンロードの実施予定時間を通知することを実施する。そして、負荷調整プロセスを実行する場合、サーバ10’は、デバイス20’に予定アップロード時刻/予定ダウンロード時刻に加える調整値を設定する命令を通知する。なお、以下の説明では、サーバ10’をFTP、HTTP等のプロトコルに対応し、各デバイス20’がサーバ10’からファイルダウンロードを不定期に実施することを説明する。
【0070】
図9は、サーバ10’の動作を示したフローチャート例である。
【0071】
サーバ10’は、任意のデバイス20’から予備情報としてダウンロードの実施予定時刻を受信(S301)すると、当該デバイス20’を識別するデバイスIDとダウンロード予定時刻をデバイス情報テーブルに記憶する(S302)。
【0072】
次に、サーバ10’は、受信時刻とダウンロード予定時刻から、予測実行時刻を算出する(S303)。なお、サーバ10’は、ダウンロード予定時刻が何分後などの表記の場合、受信時刻を用いてダウンロード予定時刻を得る。一方、サーバ10’は、ダウンロード予定時刻が時刻自体の表記の場合、受信時刻をそのまま用いてダウンロード予定時刻を得る。
【0073】
次に、サーバ10は、デバイス情報テーブルを参照して同じ時刻にデータをダウンロードするデバイスがあるかをチェックする(S304)。もし同じ時刻にデータをダウンロードするデバイスが存在した場合(S305のYES)、サーバ10’は、該当デバイス20’に設定する実行時間の調整値を計算する(S306)。最後に、サーバ10’は、実行周期を調整するデバイス20’に対して、決定した調整値含めた制御情報(調整値設定命令)を送信する(S307)。
【0074】
図10は、デバイス20’の動作を示したフローチャート例である。
【0075】
デバイス20’は、ダウンロード要求を受け付けた際に(S401)に、ダウンロード前に、当該ダウンロード先に設定された調整値の有無を確認(S402)する。この確認ステップを設けることによって、デバイス20’の他サーバに対する動作に制限を設けない。一方、デバイス20’がダウンロード先(サーバ10’)から調整値を既に受けていた場合、調整値に従い動作する。
【0076】
次に、デバイス20’は、ダウンロード実行時刻を示した予備情報をサーバ10’に送信する(S403)。次に、デバイス20’は、サーバ10’から調整値を含む設定情報を受信しないか判別(S404)し、サーバ10’から調整値が含まれていた制御情報を受信した場合、ダウンロード実行時間を調整した後にダウンロードを実行する(S405)。他方、デバイス20’は、サーバ10’から調整値を含む設定情報を受信しないか判別(S404)し、サーバ10’から調整値を受けなかった場合、ダウンロード実行時間を調整すること無しにダウンロードを実行する(S405)。
【0077】
この実施形態で説明した構成を具備することで、通信システムは、ダウンロードに対して、瞬間的なサーバへの負荷集中を予防して、デバイスのアクセス許容数を増加可能に構成できる。また、アップロードに対しても同様であり、アップロード予定事項を含む予備情報を予めデバイスから受け付けて、必要に応じて予定実行時刻を調整値で調整する構成を設ければよい。このことで、通信システムは、アップロードに対して、瞬間的なサーバへの負荷集中を予防して、デバイスのアクセス許容数を増加可能に構成できる。
【0078】
第1の実施形態及び第2の実施形態は適宜組み合わせて運用することが可能であり、組み合わせた通信システムは、周期的通信と不定期通信に対して、瞬間的なサーバへの負荷集中を予防して、デバイスのアクセス許容数を増加可能に構成できる。なお、調整値は、アップロード用とダウンロード用と周期的通信を別々に管理する構成が望ましい。
【0079】
また、上記説明では、第1の実施形態のデータ受信時刻調整部15は、所定量の推定処理負荷/推定同時アクセス数/帯域余力を超えた際に上記調整値の生成によるデータ送信時刻の負荷調整プロセスを実行するようにしてもよい。この場合、所定量の推定処理負荷/推定同時アクセス数/帯域余力を下回った際に上記調整値の生成によるデータ送信時刻の負荷調整プロセスを停止すればよい。この際、所定量の推定処理負荷や所定量の推定同時アクセス数は、サーバ能力に対応させて設定すればよい。また、所定量の帯域余力は、サーバが使用できる上下帯域に対応させて設定すればよい。
【0080】
第2の実施形態では、該当構成要素部分の説明は省略したが、アップロード/ダウンロード時にも負荷調整プロセスを実行するか判別することを実行するようにしてもよい。換言すれば、少ない同時アクセスに対しては調整値を用いずに従前と同様に動作し、ある程度以上の処理負荷の発生が推定できる場合に負荷調整プロセスを実行する。このようにサーバ機能を構築することで、サーバ処理能力に対して管理台数を更に増加させ得る構成を得られる。
【0081】
尚、通信システムの各部は、ハードウェアとソフトウェアを適宜組み合わせて実現すればよい。この際、必要に応じて、このプログラムは、オペーレティングシステムや、マイクロプログラム、ドライバなどのソフトウェアが提供する機能と協働して、各部を実現することとしてもよい。
【0082】
メモリーに展開されるプログラムデータは、プロセッサーを1ないし複数の上述した各部として動作させる実行命令群やコード群、テーブルファイル、コンテンツデータなどを適宜含む。
【0083】
また、このプログラムは、記録媒体に非一時的に記録されて頒布されても良い。当該記録媒体に記録されたプログラムは、有線、無線、又は記録媒体そのものを介してメモリーに読込まれ、プロセッサー等を動作させる。
【0084】
尚、本明細書では、記録媒体には、類似するタームの記憶媒体やメモリー装置、ストレージ装置なども含むこととする。この記録媒体を例示すれば、オプティカルディスクや磁気ディスク、半導体メモリー装置、ハードディスク装置、テープメディアなどが挙げられる。また、記録媒体は、不揮発性であることが望ましい。また、記録媒体は、揮発性モジュール(例えばRAM:Random Access Memory)と不揮発性モジュール(例えばROM:Read Only Memory)の組み合わせを用いることとしてもよい。
【0085】
なお、実施形態を例示して本発明を説明した。しかし、本発明の具体的な構成は前述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の変更があってもこの発明に含まれる。例えば、上述した実施形態及び/又は実施例のブロック構成の分離併合、手順の入れ替えなどの変更は本発明の趣旨および説明される機能を満たせば自由であり、上記説明が本発明を限定するものではない。
【0086】
本発明によれば、瞬間的なサーバへの負荷集中を予防して、デバイスのアクセス許容数を増加可能に構成された通信システムを提供できる。
【0087】
また、上記の実施形態の一部又は全部は、以下のようにも記載されうる。尚、以下の付記は本発明をなんら限定するものではない。
[付記1]
サーバと、周期的及び定期的にデータを前記サーバに送信する複数のデバイスとを備え、前記サーバは、前記複数のデバイスからの前記周期的及び定期的に送信されるデータ間に時間的な重なりが生じないように前記デバイスからの受信タイミングを制御する手段を備えていることを特徴とする通信システム。
【0088】
[付記2]
周期的及び定期的に送信されるデータを受け、前記データの次の受信タイミングを算出する手段と、他のデバイスの周期的及び定期的に送信されるデータと受信タイミングが同じであれば当該算出されたタイミング移動させる調整値を制御情報に含ませて送信する手段を有するサーバ。
【0089】
[付記3]
複数のデバイスから周期的及び定期的に送信されるデータを受け、各デバイスにおける次の受信タイミングを各デバイス毎に格納する手段を含む上記付記サーバ。
【0090】
[付記4]
サーバで算出されたタイミングの調整値を含む制御情報に応じて、周期的及び定期的に送信されるデータの送信タイミングを調整する手段を備えたデバイス。
【0091】
[付記5]
所定周期ごとに 送信データとして 前記所定周期を示した送信周期設定情報と所要データとをサーバに定期的に送信する複数のデバイスと、
各デバイスから送信された送信データを逐次蓄積するサーバと、
を含み、
前記サーバは、各デバイスから送信された送信データを受信した際に、前記送信周期設定情報を取得し、当該送信データの受信時刻と送信周期設定情報と基づいて、当該デバイスの次回の推定受信時刻を仮定すると共に、該仮定した推定受信時刻が他のデバイスの次回の推定受信時刻と同時刻である場合、該当したデバイスの何れかに、そのデバイスが保持する送信周期設定情報に加える調整値を設定する命令を通知し、
前記サーバから調整値を設定する命令を受けたデバイスは、該調整値を送信周期設定情報に加えたタイミングに成った際に、次回の送信データを送信する
ことを特徴とする通信システム。
【0092】
[付記6]
ファイルデータをアップロード/ダウンロードする前に、アップロード/ダウンロードに伴う少なくとも開始時刻を示した予備情報をサーバに送信する複数のデバイスと、
各デバイスから要求されたアップロード/ダウンロードを受け付けるサーバと、
を含み、
前記サーバは、各デバイスから送信された予備情報を受信した際に、予備情報に含まれていた開始時刻を取得し、当該デバイスの要求されたアップロード時刻/ダウンロード時刻を仮定すると共に、該仮定したアップロード時刻/ダウンロード時刻が他のデバイスのアップロード時刻/ダウンロード時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する予定アップロード時刻/予定ダウンロード時刻に加える調整値を設定する命令を通知し、
前記サーバから調整値を設定する命令を受けたデバイスは、該調整値をアップロード時刻/ダウンロード時刻に加えたタイミングに成った際に、アップロード/ダウンロードを実行する
ことを特徴とする通信システム。
【0093】
[付記7]
上記付記記載の通信システムであって、
前記サーバは、所定量の推定処理負荷/推定同時アクセス数/帯域余力を超えた際に、送信周期設定情報に加える調整値/予定アップロード時刻に加える調整値/予定ダウンロード時刻に加える調整値の生成による何れか又はその組み合わせの負荷調整プロセスを開始し、
所定量の推定処理負荷/推定同時アクセス数/帯域余力を下回った際に、送信周期設定情報に加える調整値/予定アップロード時刻に加える調整値/予定ダウンロード時刻に加える調整値の生成による何れか又はその組み合わせの負荷調整プロセスを停止する
ことを特徴とする通信システム。
【0094】
[付記8]
所定周期ごとに 送信データとして 前記所定周期を示した送信周期設定情報と所要データとを定期的に送信するデバイス群の何れかから送信された送信データを受信した際に、
各送信データの所要データを逐次蓄積すると共に、
前記送信周期設定情報を取得し、
当該送信データの受信時刻と送信周期設定情報と基づいて、当該デバイスの次回の推定受信時刻を仮定し、
該仮定した推定受信時刻が他のデバイスの次回の推定受信時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する送信周期設定情報に加える調整値を設定する命令を生成し、
該当したデバイスの何れかに生成した調整値を設定する命令を通知する、
ことを特徴とするサーバ装置。
【0095】
[付記9]
ファイルデータをアップロード/ダウンロードする前に、アップロード/ダウンロードに伴う少なくとも開始時刻を示した予備情報をサーバに送信するデバイス群の何れかから送信された前記予備情報を受信した際に、
予備情報に含まれていた開始時刻を取得し、当該デバイスの要求されたアップロード時刻/ダウンロード時刻を仮定すると共に、該仮定したアップロード時刻/ダウンロード時刻が他のデバイスのアップロード時刻/ダウンロード時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する予定アップロード時刻/予定ダウンロード時刻に加える調整値を設定する命令を通知する、
ことを特徴とするサーバ装置。
【0096】
[付記10]
上記付記記載のサーバ装置であって、
前記サーバ装置は、所定量の推定処理負荷/推定同時アクセス数/帯域余力を超えた際に、送信周期設定情報に加える調整値/予定アップロード時刻に加える調整値/予定ダウンロード時刻に加える調整値の生成による何れか又はその組み合わせの負荷調整プロセスを開始し、
所定量の推定処理負荷/推定同時アクセス数/帯域余力を下回った際に、送信周期設定情報に加える調整値/予定アップロード時刻に加える調整値/予定ダウンロード時刻に加える調整値の生成による何れか又はその組み合わせの負荷調整プロセスを停止する
ことを特徴とするサーバ装置。
【0097】
[付記11]
所定周期ごとにサーバに送信する所要データを収集し 且つ 該所要データと共に前記所定周期を示した送信周期設定情報を前記サーバに送信データとして定期的に送信すると共に、
前記サーバから送信周期設定情報に加える調整値を設定する命令を受け付けた場合、該調整値を送信周期設定情報に加えて前記所定周期を管理して、次回の送信データを送信するタイミングを計る
ことを特徴とするデバイス装置。
【0098】
[付記12]
ファイルデータをアップロード/ダウンロードする前に、アップロード/ダウンロードに伴う少なくとも予定開始時刻を示した予備情報を要求先のサーバに送信するすると共に、
前記サーバからアップロード/ダウンロードの予定開始時刻に加える調整値を設定する命令を受け付けた場合、該調整値をアップロード/ダウンロードの予定開始時刻に加えてアップロード/ダウンロードを実行するタイミングを計る
ことを特徴とするデバイス装置。
【0099】
[付記13]
サーバは、
デバイス群各々から、所定周期ごとに前記所定周期を示した送信周期設定情報と所要データとを送信データとして受け付け、
各送信データの所要データを逐次蓄積すると共に、
各送信データの送信周期設定情報を逐次取得し、
取得した送信データの受信時刻と送信周期設定情報と基づいて、当該デバイスの次回の推定受信時刻を仮定し、
該仮定した推定受信時刻が他のデバイスの次回の推定受信時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する送信周期設定情報に加える調整値を設定する命令を生成し、
該当したデバイスの何れかに生成した調整値を設定する命令を通知する、
ことを特徴とするサーバ負荷分散方法。
【0100】
[付記14]
サーバは、
ファイルデータをアップロード/ダウンロードする前に、アップロード/ダウンロードに伴う少なくとも開始時刻を示した予備情報をサーバに送信するデバイス群の何れかから送信された前記予備情報を受信し、
当該予備情報に含まれていた開始時刻を取得し、当該デバイスの要求されたアップロード時刻/ダウンロード時刻を仮定すると共に、該仮定したアップロード時刻/ダウンロード時刻が他のデバイスのアップロード時刻/ダウンロード時刻と同時刻であったならば、該当したデバイスの何れかに、そのデバイスが保持する予定アップロード時刻/予定ダウンロード時刻に加える調整値を設定する命令を通知する、
ことを特徴とするサーバ負荷分散方法。
【0101】
[付記15]
上記付記記載のサーバ負荷分散方法であって、
前記サーバは、所定量の推定処理負荷/推定同時アクセス数/帯域余力を超えた際に、送信周期設定情報に加える調整値/予定アップロード時刻に加える調整値/予定ダウンロード時刻に加える調整値の生成による何れか又はその組み合わせの負荷調整プロセスを開始し、
所定量の推定処理負荷/推定同時アクセス数/帯域余力を下回った際に、送信周期設定情報に加える調整値/予定アップロード時刻に加える調整値/予定ダウンロード時刻に加える調整値の生成による何れか又はその組み合わせの負荷調整プロセスを停止する
ことを特徴とするサーバ負荷分散方法。