(57)【要約】【課題】  複数のクライアント・デバイスからサーバにデータを伝送するためのデータ・ロギング方法を提供する。  【解決手段】  複数のクライアント・デバイスからサーバにデータを伝送するためのデータ・ロギング方法を開示する。方法は、それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するステップと、デバイスの実際の伝送サイズを受信するステップと、受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについてスケジュールを更新するステップと、前記デバイスのためのデータを伝送するステップを含む。
2006522975.tif 000002
【特許請求の範囲】
【請求項１】
複数のクライアント・デバイスからサーバにデータを伝送するためのデータ・ロギング方法であって、
それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するステップと、
デバイスの実際の伝送サイズを受信するステップと、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについて前記スケジュールを更新するステップと、
前記デバイスのためのデータを伝送するステップと、
を含む、方法。
【請求項２】
前記伝送期間のスケジュールを作成するステップは、
デバイスの将来の伝送サイズの推定値を算出するステップと、
前記デバイスがデータを前記サーバにダウンロードするようにスケジューリングされている場合に、前記デバイスの将来の伝送サイズの推定値および他のデバイスの伝送期間に基づいて、伝送期間を計算するステップと、
前記伝送期間および対応するデバイス・リファレンスをデータ構造に格納するステップと、
それぞれのデバイスについて、上述のステップを実行するステップと、
を含む、請求項１に記載の方法。    
【請求項３】
前記スケジュールを更新するステップは、前記実際の伝送サイズに基づいて前記デバイスの伝送期間を再計算するステップを含む、請求項２に記載の方法。
【請求項４】
前記スケジュールを更新するステップは、再計算した前記デバイスの伝送期間が他のデバイスの伝送期間に影響を与える場合、前記スケジュールにおける前記他のデバイスの前記伝送期間を再計算するステップを更に含む、請求項２または３に記載の方法。    
【請求項５】
前記最初に計算した伝送期間が前記再計算した伝送期間と異なる場合、それ以降の伝送のスケジューリングの少なくとも一部分を変更する、請求項２、３、または４に記載の方法。
【請求項６】
前記将来の伝送サイズが、クライアントの伝送サイズの履歴に基づいた推定値である、請求項２から５のいずれかに記載の方法。
【請求項７】
前記将来の伝送サイズが、ログ・データの現在のサイズに基づいて前記クライアントから取得される、請求項２から６のいずれかに記載の方法。
【請求項８】
前記将来の伝送サイズが、前記クライアントの伝送サイズの履歴および前記ログ・データの現在のサイズに基づいた推定値である、請求項２から７のいずれかに記載の方法。
【請求項９】
複数のクライアント・デバイスからサーバにデータを伝送するためのデータ・ロギング・システムであって、
それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するための手段と、
デバイスの実際の伝送サイズを受信するための手段と、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについて前記スケジュールを更新するための手段と、
前記デバイスのためのデータを伝送するための手段と、
を含む、システム。
【請求項１０】
複数のクライアント・デバイスからサーバにデータを伝送するためのコンピュータ・プログラムであって、
それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するステップと、
デバイスの実際の伝送サイズを受信するステップと、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについて前記スケジュールを更新するステップと、
前記デバイスのためのデータを伝送するステップと、
をコンピュータに実行させる、コンピュータ・プログラム。
【請求項１１】
ワイヤレス・ネットワークを介して複数の遠隔デバイスからサーバにログ・データを統合し、前記統合したログ・データをオン・デマンド方式でサービス・リクエスタに提供するためのサービス提供方法であって、
それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するステップと、
デバイスの実際の伝送サイズを受信するステップと、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについて前記スケジュールを更新するステップと、
前記デバイスのためのデータを伝送するステップと、
を含む、サービス提供方法。
【請求項１２】
ワイヤレス・ネットワークを介して複数の遠隔デバイスから前記ログ・データを統合するためのウェブ・サービスから統合したログ・データを受信するためのサービスを要求する方法であって、
それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するステップと、
デバイスの実際の伝送サイズを受信するステップと、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについて前記スケジュールを更新するステップと、
前記デバイスのためのデータを伝送するステップと、
を含む方法が前記ウェブ・サービスにおいて実行される、サービス要求方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ・ロギングのための方法および装置に関する。
【背景技術】
【０００２】
本明細書において、データ・ロギングとは、モバイル機器からデータを収集するプロセスであり、モバイル機器がどのように動作するかに関するビジネス情報を得るために行われる。例えば、経時的な車両の位置、配置、および速度は、その車両の保険負担の計算において用いられる有用なログ・データである。別の例では、時間および位置の双方に対するモバイル通信システムの信号強度は、電気通信会社がその送信器の位置を計画することを可能とするための有用なログ・データである。かかるデータは、ネットワーク自体を含むソース（例えばＧＳＭ）および全地球測位衛星（ＧＰＳ）からの位置情報および信号強度情報を用いて、モバイル埋め込みシステムによって収集される。ログ・データは、モバイル埋め込みシステムに格納され、後に中央システムへと送信される。送信は、携帯電話ネットワークまたは他のワイヤレス技術による。
【０００３】
データ・ログの送信は、オン・デマンド方式で実行することができる。デバイスの準備ができると、デバイスは、送信チャネルの制御を要求する。かかるシステムは、米国特許公報第６２６３２６８号に記載されている。これは、車両内に設置するためのモバイル自動車遠隔測定システムを開示する。これは、車両の動作機能を監視するための診断用構造、および、この診断用構造と通信を行って動作情報を受信するサーバを含む。動作情報の準備ができると、この情報をサーバにアップロードする。
【０００４】
別のオン・デマンド方式ダウンロード・システムである国際特許公報０２／０３３５０号は、セル式通信を監視するための方法およびシステムを開示する。この方法は、車両内のモバイル機器から、セル式ネットワークの有効範囲領域内のトラヒック負荷および道路上の速度を連続的に抽出する。データは、セル式ネットワークにおける高レベルの通信から直接抽出されるので、モバイル機器からの計画的または交渉によるデータのダウンロードは行われない。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
オン・デマンド方式でログ・データをダウンロードすることに伴う１つの問題は、いくつかの機器が同時に単一チャネルの制御を要求しダウンロードを行おうとする場合、競合状況が生じる可能性があることである。どんな時点でも、チャネル当たり１つのみの要求が成功し、他の要求は失敗する。失敗した要求がダウンロード・リソースを用いるので、順序よく配置された要求よりも無秩序な要求のために多くのリソースが用いられる。ダウンロードを順序よく配置するための１つの方法は、それらをある時刻に入来するようにスケジューリングすることである。
【０００６】
米国特許公報第００２８３１３号は、分散型遠隔測定方法およびシステムを開示する。これは、携帯電話のユーザによるパラメータの読み取り値の取得を調整し、パラメータ読み取り値をユーザに関する位置情報と共にサービス・システムに送信することによって作用する。とりわけ、対象の読み取り値を取得する時を整理するのは、クエリ・スケジューラのタスクである。読み取り値は、即座に、または、例えばスケジューリングした時刻によってトリガされて、サービス・システムに送信される。
【０００７】
スケジューリングした遠隔データ・ロギングに伴う問題は、ダウンロードのサイズがスケジューリングしたものと異なる場合に、データの同時かつ多重の機器アップロードによって、かかるログ・データを収集するサーバ上に過負荷が生じ得ることである。
【課題を解決するための手段】
【０００８】
本発明の第１の態様によれば、複数のクライアント・デバイスからサーバにデータを伝送するためのデータ・ロギング方法が提供される。前記方法は、
それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するステップと、
デバイスの実際の伝送サイズを受信するステップと、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについてスケジュールを更新するステップと、
前記デバイスのためのデータを伝送するステップと、
を含む。
【０００９】
前記伝送期間のスケジュールを作成するステップは、
デバイスの将来の伝送サイズを推定値を算出するステップと、
デバイスがデータを前記サーバにダウンロードするようにスケジューリングされている場合に、デバイスの将来の伝送サイズの推定値および他のデバイスの伝送期間に基づいて、伝送期間を計算するステップと、
伝送期間および対応するデバイス・リファレンスをデータ構造に格納するステップと、
それぞれのデバイスについて上述のステップを実行するステップと、
を含むと有利である。  
【００１０】
スケジュールを更新するステップは、実際の伝送サイズに基づいてデバイスの伝送期間を再計算するステップを含むと、更に有利である。
【００１１】
好ましくは、スケジュールを更新するステップは、再計算したデバイスの伝送期間が他のデバイスの伝送期間に影響を与える場合、スケジュールにおける他のデバイスの伝送期間を再計算するステップを更に含む。    
【００１２】
更に好ましくは、最初に計算した伝送期間が再計算した伝送期間と異なる場合、それ以降の伝送のスケジューリングの少なくとも一部分を変更すると良い。
【００１３】
将来の伝送サイズは、クライアントの伝送サイズの履歴に基づいた推定値であると適切である。
【００１４】
更に適切には、将来の伝送サイズは、ログ・データの現在のサイズに基づいてクライアントから取得される。
【００１５】
将来の伝送サイズは、クライアントの伝送サイズの履歴およびログ・データの現在のサイズに基づいた推定値であると有利である。
【００１６】
本発明のこの態様および他の態様をいっそう充分に理解するため、これより、添付図面を参照して、例示としてのみ、本発明の実施形態を説明する。
【発明を実施するための最良の形態】
【００１７】
図１を参照すると、データ・ロギング・システムは、モバイル・ネットワークを介して、複数の遠隔クライアント・デバイス１００Ａ〜Ｎに接続されたサーバ３００を含む。第１のデバイス１００Ａ、第２のデバイス１００Ｂ等は、１００Ｎまで続き、Ｎは約１００万の機器である。各デバイス１００Ａ〜Ｎは、プロファイル・データ１０２、デバイス・プロファイル１０４、データ・ログ１０６、デバイス・コントローラ１０８、およびデータ交換１１０を含む。サーバ３００は、プロファイル・データ３０１、デバイス・プロファイラ３０２、スケジューラ３０４、計画３０６、更新コンポーネント３０８、データ交換３１０、帯域幅予測コンポーネント３１１、およびアップローダ３１２を含む。ログ・データは、データストア４００に格納される。
【００１８】
デバイス・プロファイラ３０２は、クライアント・デバイスから収集した各デバイス・プロファイル１０４を維持する。
【００１９】
デバイス・プロファイル１０４は、デバイスに関連するがダウンロード・データ自体ではない特性を含む。図２を参照すると、デバイス・プロファイル１０４は、好適な実施形態において、各デバイスごとに２つのプロファイルを含む。すなわち、第１に接続性プロファイル１０３Ａ、および第２にダウンロード・プロファイル１０３Ｂである。
【００２０】
接続性プロファイル１０３Ａは、経時的なＧＳＭ比受信電力を含み、日付および時刻フィールドならびにＧＳＭ信号フィールドを有するデータ構造を含む。更に別の実施形態では、接続性プロファイルに、デバイスの地理的な位置を含める。このデータは、全地球測位システム（ＧＰＳ）データから、またはＧＳＭ受信器からの三角測量データから導出する。１週間にわたってデバイスのステータスを記録する。この期間が、あるパターンを示す可能性が最も高いからである。しかしながら、他の実施形態では、この代わりに、またはこれと共に、もっと長い期間も使用可能である。通常、１日分のデータが最小と考えられるが、理論的には、これはもっと小さくすることも可能である。３週間分のデータは、もっと良い平均値を与える。４週間分を超えるデータは、データ・プロファイラ３０２のストレージ・リソースに対する圧力となる。
【００２１】
以前に収集したデータ量によって、次のダウンロード・データの量について少なくとも推定を行うことができる。デバイス・プロファイラ３０２は、デバイス・スケジューラ３０４に情報を与えて、これが接続時間の推定を行うことを可能とする。また、これは、ＧＳＭ電力レベルに関する情報を与えるので、不適切な接続時間を推定することができる。
【００２２】
ダウンロード・プロファイル１０３Ｂは、各デバイスごとに、各データ・ダウンロードの記録を格納し、ダウンロードの時間およびダウンロードにおいて収集したデータ量を含む。
【００２３】
スケジューラ３０４は、最初は各デバイスが伝送すると予想されるデータ量に基づいて、各特定デバイスに時間間隔を割り当てることによって、計画３０６を作成する。デバイス・スケジューラ３０４は、データ交換３１０から実際のネットワーク使用量を受信し、コンポーネント３１１から帯域幅予測情報を受信する。スケジューラ３０４が、現在のネットワーク使用量が計画３０６を作成するために用いたものを超えるかそれよりはるかに小さいことを知ると、スケジューラ３０４は計画３０６を更新する。デバイス・スケジューラ３０４は、実質的に全容量の８０％で動作するので、オーバーランを考慮に入れることができ、スケジューリング変更動作は再計画を連続的に行わない。
【００２４】
計画３０６（図３を参照）は、各デバイスごとにダウンロード・スケジュールを格納するデータ構造である。デバイスの各ダウンロードは、（１）伝送期間（開始時刻および終了時刻）、（２）デバイス識別、および（３）伝送サイズの３つのフィールドを有するデータベースにおける記録である。
【００２５】
更新コンポーネント３０８は、現在のスケジュール詳細を有するメッセージを渡すことによって、そのスケジューリングした時間に従って、また、計画３０６に関連する変更が行われた場合も、デバイスを更新した状態に保持する。これは、オフラインであるデバイスを常時監視し、それがデータ交換３１０を通じてオンラインになるとすぐにオフラインのデバイスに通知する。
【００２６】
更新コンポーネント３０８は、デバイスがメモリを使い果たしたか、または長すぎる時間期間の間ダウンロードしない場合に、スケジューラ３０４と交渉する。スケジューラ３０４は、計画３０６における変更を識別し、更新コンポーネント３０８に通知し、デバイス１００Ａ〜Ｎからの確認によって計画３０６を更新する。
【００２７】
帯域幅予測コンポーネント３１１は、データ交換３１０を介して行われている実際のデータ伝送から、現在のダウンロード動作を監視する。この情報から、現在のダウンロード帯域幅を監視し、将来の計画における参照のために格納することができる。次いで、このデータを用いて、スケジューラ３０４にネットワーク・キャパシティの予測を与える。次いで、スケジューラ３０４は、デバイスを移動させることによってデータ伝送を抑制するか、または、使用可能な帯域幅を利用するようにデバイスを移動させることを選択することができる。別の実施形態では、帯域幅コンポーネントは、ネットワーク供給業者から予測情報を取得する。
【００２８】
アップローダ３１２は、いつクライアント・デバイスを新しいソフトウエアによって更新するかを決定する。これは、入力として計画３０６を取得して、データ通信ライン２１０、２０６を利用可能な他のトラヒックの指示を与える。計画３０６は、いつクライアント・デバイスにソフトウエアをアップロードするかという決定に影響を与える。各ダウンロードは、データ・アップロードの「有効な」通信帯域幅を低減させるからである。
【００２９】
ここで、クライアント・デバイス１００Ａについて説明する。クライアント・デバイス１００Ｂ〜Ｎは、同一のコンポーネントおよび構成を有するが、異なる識別を有する。各デバイス１００Ａ〜Ｎは、プロファイル・データ１０２、デバイス・プロファイル１０４、データ・ログ１０６、デバイス・コントローラ１０８、およびデータ交換１１０を含む。
【００３０】
プロファイル・データ１０２は、デバイス・プロファイル１０４によって維持され、デバイスの接続性およびデータ容積測定のプロファイルを維持する。プロファイル・データ１０２は、サーバ３００に送信されて、スケジューラ３０４による計画作成および優先順位付けに用いられる。
【００３１】
データ・ログ１０６は、サーバ３００に伝送するためのログ・データを含み、更に、デバイス・コントローラ１０８によって用いられるいずれかの特定のデータを含む場合がある。主な目的は、クライアントからサーバ３００を介してデータストア４００にログ・データ１０６を伝送することである。
【００３２】
デバイス・コントローラ１０８は、ログ・データ１０６を確実に調整する役割を担い、サーバ３００に対するデータのダウンロードおよびデータ・ボリュームの通信を制御する。デバイス・コントローラ１０８は、サーバ３００から受信したスケジューリング時刻に基づいて、データ接続およびバルク伝送を開始する。デバイス・コントローラ１０８は、計画３０６から更新コンポーネント３０８を介してスケジュール情報を受信する。ログ・データをダウンロードする前に、デバイス・コントローラ１０８は、更新コンポーネント３０８およびデータ交換機構３１０／１１０を介してスケジューラ３０４との通信を確立して、最終的な調節のためのチェックを行う。理想的には、各クライアント１００Ａ〜Ｎは、同一バージョンのデバイス・コントローラ１０８によって制御されるが、一部のデバイスがアップローダ３１２によって更新されており、他のものはもっと古いバージョンを用いているという場合がある。ソフトウエアの更新は、データを伝送するのと同じ通信ラインを用いて、サーバ３００とクライアント１００Ａ〜Ｎとの間で伝送することができる。
【００３３】
好適な実施形態では、推定ダウンロードのサイズが実際のダウンロードのサイズと異なる場合、この方法は、計画におけるデバイスのスケジューリングを変更する。以下で、図４を参照して、この更に別の実施形態の方法５００について説明する。
【００３４】
ステップ５０２において、スケジューラ３０４は、プロファイル・データ３０１からデバイスを選択する。この選択は、最初は、以前の伝送サイズの順番である。
【００３５】
ステップ５０４において、スケジューラ３０４は、デバイスのダウンロード・プロファイルを参照し、以前の伝送サイズを用いることによって、各デバイスごとに将来の伝送サイズを推定する。以前の伝送サイズの平均値を用いることができる。
【００３６】
ステップ５０６において、スケジューラ３０４は、推定伝送サイズに基づいて伝送期間を計算する。
【００３７】
ステップ５０８では、推定伝送期間を計画３０６に格納し、更新コンポーネント３０８が、スケジューリングした時刻を、データ交換機構３１０を介してデバイスに送信する。
【００３８】
ステップ５１０は、プロセスをステップ５０２に戻して、デバイス・プロファイルにおける全てのデバイスについてステップ５０２から５０８を繰り返す。
【００３９】
いったん計画が完了すると、各デバイスは更新コンポーネント３０８からスケジューリングされた伝送時刻を受信する。各デバイスは、スケジューリングされた時刻にログ・データのダウンロードを開始する。しかしながら、推定伝送サイズが実際のサイズと同一でない場合、サーバは、一部のデバイスについてスケジューリングした時刻を再計算しなければならない。
【００４０】
伝送の前に、ステップ５１２において、スケジューリングされたデバイスは、実際のダウンロード・サイズで、スケジューリングした時刻にサーバに連絡をとる。
【００４１】
ステップ５１４において、スケジューラ３０４は実際の伝送サイズを取得する。実際の伝送サイズが推定されたものと異なる場合、異なる伝送期間によって、他のデバイスのスケジューリング時刻を変更する。ステップ５１６において、スケジューラ３０４は、影響を受けたデバイスまたは複数のデバイスの伝送期間を再計算する。
【００４２】
ステップ５１８において、現デバイスの実際の伝送期間が計画において推定されたものと異なる場合、スケジューラ３０４は、現デバイスのスケジューリングを変更する。伝送期間が長すぎる場合、次のスケジューリングされたデバイスは、時間的に前に押されるか、またはもっと短い伝送期間を有する異なるデバイスの代わりに用いられる。この実施形態では、もっと短い伝送期間を有するデバイスが、次のデバイスの代わりに用いられ、これは全体の計画３０６に対する変更を最小限に抑えるので有利である。別の実施形態では、次のスケジューリングしたデバイスに新しい伝送期間を与える。これによって、以降のダウンロードは影響を受けるが、元の順序は維持される。伝送期間が短すぎる場合、利用可能な何らかの自由リソースが生じ、この自由リソースは、これを埋める伝送期間を有する新しいデバイスによって埋められる。この場合、全てのデバイス伝送期間を前に繰り上げることも可能であるが、元の計画をほぼ維持することが好ましい。別の実施形態では、計画３０６に対する変更を最小限に抑える方法で、現デバイス自体のスケジュールを変更することができる。
【００４３】
前のステップの後またはその間に、ステップ５２０において、現クライアントは、そのログしたデータを送信する。
【００４４】
ステップ５２２において、計画３０６における全てのデバイスについてプロセスを繰り返す。
【００４５】
好適な実施形態では、全てのプロファイル・データをサーバ３００に格納するが、別の実施形態では、データをデバイス自体に格納することも可能である。そして、必要な場合に、デバイスからプロファイル情報を要求する。この他の実施形態では、まさに必要な場合にデータが利用可能でない場合があり、このためこれは好適ではない。
【００４６】
サーバ３００は、最初に、単純な交互アルゴリズムに基づいて、全てのクライアントの計画３０６を生成する。
【００４７】
最初の計画を生成する前に、全てのデバイス・コントローラ１０８は、デバイス・プロファイラ３０２に、送信するデータの量を通知する。更新コンポーネント３０８は、デバイス・コントローラ１０８に、サーバ３００に接続してデータ１０６を伝送する時刻を通知する。
【００４８】
プロファイラ３０２は、このプロファイルを格納し、情報を動的スケジュール変更部３０４に渡す。スケジュール変更部３０４は、既存の計画３０６を用いて、必要に応じて計画を調節し、３０８を介してクライアントに再び通知する。
【００４９】
また、クライアントは、そのプロファイル・データ１０２を、デバイス・プロファイル１０４を介して、サーバ・デバイス・プロファイラ３０２に送信する。プロファイル・データ１０２は、時間単位当たりに収集したデータ量および利用可能ネットワーク有効範囲の時間を格納する。
【００５０】
スケジューラ３０４は、プロファイル・データ３０４からの履歴プロファイル・データを用いて、到着時刻および接続の長さを計画し、仕事日の間、負荷を分散させる。最適な計画では、基本的な数のクライアントを通信状態に維持するが、システムに過負荷を与えない。これを行うため、クライアント・スケジューラ１０８が送信した既知のデータ・ボリュームおよびデバイス・プロファイラ３０２からの予測ボリュームを用いる。この情報を、実際のおよび予測したネットワーク帯域幅と共に用いる（３１０の帯域幅予測部から）。
【００５１】
実施形態について、単一のサーバに関連付けて説明したが、２つ以上のサーバまでこのソリューションを拡張することもできる。
【図面の簡単な説明】
【００５２】
【図１】本発明の本実施形態の概略図である。
【図２】本発明の本実施形態によって格納されるプロファイル・データ構造の概略図である。
【図３】本発明の本実施形態によって格納される計画データ構造の概略図である。
【図４】本発明の実施形態による方法である。
【図１】
2006522975.tif 000003
【図２】
2006522975.tif 000004
【図３】
2006522975.tif 000005
【図４】
2006522975.tif 000006
【手続補正書】
【提出日】平成17年2月11日(2005.2.11)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【書類名】  明細書
【技術分野】
【０００１】
本発明は、データ・ロギングのための方法および装置に関する。
【背景技術】
【０００２】
本明細書において、データ・ロギングとは、モバイル機器からデータを収集するプロセスであり、モバイル機器がどのように動作するかに関するビジネス情報を得るために行われる。例えば、経時的な車両の位置、配置、および速度は、その車両の保険負担の計算において用いられる有用なログ・データである。別の例では、時間および位置の双方に対するモバイル通信システムの信号強度は、電気通信会社がその送信器の位置を計画することを可能とするための有用なログ・データである。かかるデータは、ネットワーク自体を含むソース（例えばＧＳＭ）および全地球測位衛星（ＧＰＳ）からの位置情報および信号強度情報を用いて、モバイル埋め込みシステムによって収集される。ログ・データは、モバイル埋め込みシステムに格納され、後に中央システムへと送信される。送信は、携帯電話ネットワークまたは他のワイヤレス技術による。
【０００３】
データ・ログの送信は、オン・デマンド方式で実行することができる。デバイスの準備ができると、デバイスは、送信チャネルの制御を要求する。かかるシステムは、米国特許公報第６２６３２６８号に記載されている。これは、車両内に設置するためのモバイル自動車遠隔測定システムを開示する。これは、車両の動作機能を監視するための診断用構造、および、この診断用構造と通信を行って動作情報を受信するサーバを含む。動作情報の準備ができると、この情報をサーバにアップロードする。
【０００４】
別のオン・デマンド方式ダウンロード・システムである国際特許公報０２／０３３５０号は、セル式通信を監視するための方法およびシステムを開示する。この方法は、車両内のモバイル機器から、セル式ネットワークの有効範囲領域内のトラヒック負荷および道路上の速度を連続的に抽出する。データは、セル式ネットワークにおける高レベルの通信から直接抽出されるので、モバイル機器からの計画的または交渉によるデータのダウンロードは行われない。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
オン・デマンド方式でログ・データをダウンロードすることに伴う１つの問題は、いくつかの機器が同時に単一チャネルの制御を要求しダウンロードを行おうとする場合、競合状況が生じる可能性があることである。どんな時点でも、チャネル当たり１つのみの要求が成功し、他の要求は失敗する。失敗した要求がダウンロード・リソースを用いるので、順序よく配置された要求よりも無秩序な要求のために多くのリソースが用いられる。ダウンロードを順序よく配置するための１つの方法は、それらをある時刻に入来するようにスケジューリングすることである。
【０００６】
米国特許公報第００２８３１３号は、分散型遠隔測定方法およびシステムを開示する。これは、携帯電話のユーザによるパラメータの読み取り値の取得を調整し、パラメータ読み取り値をユーザに関する位置情報と共にサービス・システムに送信することによって作用する。とりわけ、対象の読み取り値を取得する時を整理するのは、クエリ・スケジューラのタスクである。読み取り値は、即座に、または、例えばスケジューリングした時刻によってトリガされて、サービス・システムに送信される。
【０００７】
スケジューリングした遠隔データ・ロギングに伴う問題は、ダウンロードのサイズがスケジューリングしたものと異なる場合に、データの同時かつ多重の機器アップロードによって、かかるログ・データを収集するサーバ上に過負荷が生じ得ることである。
【課題を解決するための手段】
【０００８】
本発明の第１の態様によれば、請求項１に記載されるような、複数のクライアント・デバイスからサーバにデータを伝送するためのデータ・ロギング方法が提供される。
【０００９】
本発明の第２の態様によれば、請求項７に記載されるような、複数のクライアント・デバイスからサーバにデータを伝送するためのデータ・ロギング・システムが提供される。
【００１０】
本発明の第３の態様によれば、請求項８に記載されるような、複数のクライアント・デバイスからサーバにデータを伝送するためのコンピュータ・プログラムが提供される。
【００１１】
本発明の第４の態様によれば、請求項９に記載されるような、ワイヤレス・ネットワークを介して複数の遠隔デバイスからサーバにログ・データを統合し、前記統合したログ・データをオン・デマンド方式でサービス・リクエスタに提供するためのサービス提供方法が提供される。
【００１２】
本発明の第４の態様によれば、請求項１０に記載されるような、ワイヤレス・ネットワークを介して複数の遠隔デバイスから前記ログ・データを統合するためのウェブ・サービスから統合したログ・データを受信するためのサービスを要求するための方法が提供される。
【００１３】
スケジュールを更新するステップは、実際の伝送サイズに基づいてデバイスの伝送期間を再計算するステップを含むと、更に有利である。
【００１４】
好ましくは、スケジュールを更新するステップは、再計算したデバイスの伝送期間が他のデバイスの伝送期間に影響を与える場合、スケジュールにおける他のデバイスの伝送期間を再計算するステップを更に含む。    
【００１５】
更に好ましくは、最初に計算した伝送期間が再計算した伝送期間と異なる場合、それ以降の伝送のスケジューリングの少なくとも一部分を変更すると良い。
【００１６】
将来の伝送サイズは、ログ・データの現在のサイズに基づいてクライアントから取得されると、更に適切である。
【００１７】
将来の伝送サイズは、クライアントの伝送サイズの履歴およびログ・データの現在のサイズに基づいた推定値であると有利である。
【００１８】
本発明のこの態様および他の態様をいっそう充分に理解するため、これより、添付図面を参照して、例示としてのみ、本発明の実施形態を説明する。
【発明を実施するための最良の形態】
【００１９】
図１を参照すると、データ・ロギング・システムは、モバイル・ネットワークを介して、複数の遠隔クライアント・デバイス１００Ａ〜Ｎに接続されたサーバ３００を含む。第１のデバイス１００Ａ、第２のデバイス１００Ｂ等は、１００Ｎまで続き、Ｎは約１００万の機器である。各デバイス１００Ａ〜Ｎは、プロファイル・データ１０２、デバイス・プロファイル１０４、データ・ログ１０６、デバイス・コントローラ１０８、およびデータ交換１１０を含む。サーバ３００は、プロファイル・データ３０１、デバイス・プロファイラ３０２、スケジューラ３０４、計画３０６、更新コンポーネント３０８、データ交換３１０、帯域幅予測コンポーネント３１１、およびアップローダ３１２を含む。ログ・データは、データストア４００に格納される。
【００２０】
デバイス・プロファイラ３０２は、クライアント・デバイスから収集した各デバイス・プロファイル１０４を維持する。
【００２１】
デバイス・プロファイル１０４は、デバイスに関連するがダウンロード・データ自体ではない特性を含む。図２を参照すると、デバイス・プロファイル１０４は、好適な実施形態において、各デバイスごとに２つのプロファイルを含む。すなわち、第１に接続性プロファイル１０３Ａ、および第２にダウンロード・プロファイル１０３Ｂである。
【００２２】
接続性プロファイル１０３Ａは、経時的なＧＳＭ比受信電力を含み、日付および時刻フィールドならびにＧＳＭ信号フィールドを有するデータ構造を含む。更に別の実施形態では、接続性プロファイルに、デバイスの地理的な位置を含める。このデータは、全地球測位システム（ＧＰＳ）データから、またはＧＳＭ受信器からの三角測量データから導出する。１週間にわたってデバイスのステータスを記録する。この期間が、あるパターンを示す可能性が最も高いからである。しかしながら、他の実施形態では、この代わりに、またはこれと共に、もっと長い期間も使用可能である。通常、１日分のデータが最小と考えられるが、理論的には、これはもっと小さくすることも可能である。３週間分のデータは、もっと良い平均値を与える。４週間分を超えるデータは、データ・プロファイラ３０２のストレージ・リソースに対する圧力となる。
【００２３】
以前に収集したデータ量によって、次のダウンロード・データの量について少なくとも推定を行うことができる。デバイス・プロファイラ３０２は、デバイス・スケジューラ３０４に情報を与えて、これが接続時間の推定を行うことを可能とする。また、これは、ＧＳＭ電力レベルに関する情報を与えるので、不適切な接続時間を推定することができる。
【００２４】
ダウンロード・プロファイル１０３Ｂは、各デバイスごとに、各データ・ダウンロードの記録を格納し、ダウンロードの時間およびダウンロードにおいて収集したデータ量を含む。
【００２５】
スケジューラ３０４は、最初は各デバイスが伝送すると予想されるデータ量に基づいて、各特定デバイスに時間間隔を割り当てることによって、計画３０６を作成する。デバイス・スケジューラ３０４は、データ交換３１０から実際のネットワーク使用量を受信し、コンポーネント３１１から帯域幅予測情報を受信する。スケジューラ３０４が、現在のネットワーク使用量が計画３０６を作成するために用いたものを超えるかそれよりはるかに小さいことを知ると、スケジューラ３０４は計画３０６を更新する。デバイス・スケジューラ３０４は、実質的に全容量の８０％で動作するので、オーバーランを考慮に入れることができ、スケジューリング変更動作は再計画を連続的に行わない。
【００２６】
計画３０６（図３を参照）は、各デバイスごとにダウンロード・スケジュールを格納するデータ構造である。デバイスの各ダウンロードは、（１）伝送期間（開始時刻および終了時刻）、（２）デバイス識別、および（３）伝送サイズの３つのフィールドを有するデータベースにおける記録である。
【００２７】
更新コンポーネント３０８は、現在のスケジュール詳細を有するメッセージを渡すことによって、そのスケジューリングした時間に従って、また、計画３０６に関連する変更が行われた場合も、デバイスを更新した状態に保持する。これは、オフラインであるデバイスを常時監視し、それがデータ交換３１０を通じてオンラインになるとすぐにオフラインのデバイスに通知する。
【００２８】
更新コンポーネント３０８は、デバイスがメモリを使い果たしたか、または長すぎる時間期間の間ダウンロードしない場合に、スケジューラ３０４と交渉する。スケジューラ３０４は、計画３０６における変更を識別し、更新コンポーネント３０８に通知し、デバイス１００Ａ〜Ｎからの確認によって計画３０６を更新する。
【００２９】
帯域幅予測コンポーネント３１１は、データ交換３１０を介して行われている実際のデータ伝送から、現在のダウンロード動作を監視する。この情報から、現在のダウンロード帯域幅を監視し、将来の計画における参照のために格納することができる。次いで、このデータを用いて、スケジューラ３０４にネットワーク・キャパシティの予測を与える。次いで、スケジューラ３０４は、デバイスを移動させることによってデータ伝送を抑制するか、または、使用可能な帯域幅を利用するようにデバイスを移動させることを選択することができる。別の実施形態では、帯域幅コンポーネントは、ネットワーク供給業者から予測情報を取得する。
【００３０】
アップローダ３１２は、いつクライアント・デバイスを新しいソフトウエアによって更新するかを決定する。これは、入力として計画３０６を取得して、データ通信ライン２１０、２０６を利用可能な他のトラヒックの指示を与える。計画３０６は、いつクライアント・デバイスにソフトウエアをアップロードするかという決定に影響を与える。各ダウンロードは、データ・アップロードの「有効な」通信帯域幅を低減させるからである。
【００３１】
ここで、クライアント・デバイス１００Ａについて説明する。クライアント・デバイス１００Ｂ〜Ｎは、同一のコンポーネントおよび構成を有するが、異なる識別を有する。各デバイス１００Ａ〜Ｎは、プロファイル・データ１０２、デバイス・プロファイル１０４、データ・ログ１０６、デバイス・コントローラ１０８、およびデータ交換１１０を含む。
【００３２】
プロファイル・データ１０２は、デバイス・プロファイル１０４によって維持され、デバイスの接続性およびデータ容積測定のプロファイルを維持する。プロファイル・データ１０２は、サーバ３００に送信されて、スケジューラ３０４による計画作成および優先順位付けに用いられる。
【００３３】
データ・ログ１０６は、サーバ３００に伝送するためのログ・データを含み、更に、デバイス・コントローラ１０８によって用いられるいずれかの特定のデータを含む場合がある。主な目的は、クライアントからサーバ３００を介してデータストア４００にログ・データ１０６を伝送することである。
【００３４】
デバイス・コントローラ１０８は、ログ・データ１０６を確実に調整する役割を担い、サーバ３００に対するデータのダウンロードおよびデータ・ボリュームの通信を制御する。デバイス・コントローラ１０８は、サーバ３００から受信したスケジューリング時刻に基づいて、データ接続およびバルク伝送を開始する。デバイス・コントローラ１０８は、計画３０６から更新コンポーネント３０８を介してスケジュール情報を受信する。ログ・データをダウンロードする前に、デバイス・コントローラ１０８は、更新コンポーネント３０８およびデータ交換機構３１０／１１０を介してスケジューラ３０４との通信を確立して、最終的な調節のためのチェックを行う。理想的には、各クライアント１００Ａ〜Ｎは、同一バージョンのデバイス・コントローラ１０８によって制御されるが、一部のデバイスがアップローダ３１２によって更新されており、他のものはもっと古いバージョンを用いているという場合がある。ソフトウエアの更新は、データを伝送するのと同じ通信ラインを用いて、サーバ３００とクライアント１００Ａ〜Ｎとの間で伝送することができる。
【００３５】
好適な実施形態では、推定ダウンロードのサイズが実際のダウンロードのサイズと異なる場合、この方法は、計画におけるデバイスのスケジューリングを変更する。以下で、図４を参照して、この更に別の実施形態の方法５００について説明する。
【００３６】
ステップ５０２において、スケジューラ３０４は、プロファイル・データ３０１からデバイスを選択する。この選択は、最初は、以前の伝送サイズの順番である。
【００３７】
ステップ５０４において、スケジューラ３０４は、デバイスのダウンロード・プロファイルを参照し、以前の伝送サイズを用いることによって、各デバイスごとに将来の伝送サイズを推定する。以前の伝送サイズの平均値を用いることができる。
【００３８】
ステップ５０６において、スケジューラ３０４は、推定伝送サイズに基づいて伝送期間を計算する。
【００３９】
ステップ５０８では、推定伝送期間を計画３０６に格納し、更新コンポーネント３０８が、スケジューリングした時刻を、データ交換機構３１０を介してデバイスに送信する。
【００４０】
ステップ５１０は、プロセスをステップ５０２に戻して、デバイス・プロファイルにおける全てのデバイスについてステップ５０２から５０８を繰り返す。
【００４１】
いったん計画が完了すると、各デバイスは更新コンポーネント３０８からスケジューリングされた伝送時刻を受信する。各デバイスは、スケジューリングされた時刻にログ・データのダウンロードを開始する。しかしながら、推定伝送サイズが実際のサイズと同一でない場合、サーバは、一部のデバイスについてスケジューリングした時刻を再計算しなければならない。
【００４２】
伝送の前に、ステップ５１２において、スケジューリングされたデバイスは、実際のダウンロード・サイズで、スケジューリングした時刻にサーバに連絡をとる。
【００４３】
ステップ５１４において、スケジューラ３０４は実際の伝送サイズを取得する。実際の伝送サイズが推定されたものと異なる場合、異なる伝送期間によって、他のデバイスのスケジューリング時刻を変更する。ステップ５１６において、スケジューラ３０４は、影響を受けたデバイスまたは複数のデバイスの伝送期間を再計算する。
【００４４】
ステップ５１８において、現デバイスの実際の伝送期間が計画において推定されたものと異なる場合、スケジューラ３０４は、現デバイスのスケジューリングを変更する。伝送期間が長すぎる場合、次のスケジューリングされたデバイスは、時間的に前に押されるか、またはもっと短い伝送期間を有する異なるデバイスの代わりに用いられる。この実施形態では、もっと短い伝送期間を有するデバイスが、次のデバイスの代わりに用いられ、これは全体の計画３０６に対する変更を最小限に抑えるので有利である。別の実施形態では、次のスケジューリングしたデバイスに新しい伝送期間を与える。これによって、以降のダウンロードは影響を受けるが、元の順序は維持される。伝送期間が短すぎる場合、利用可能な何らかの自由リソースが生じ、この自由リソースは、これを埋める伝送期間を有する新しいデバイスによって埋められる。この場合、全てのデバイス伝送期間を前に繰り上げることも可能であるが、元の計画をほぼ維持することが好ましい。別の実施形態では、計画３０６に対する変更を最小限に抑える方法で、現デバイス自体のスケジュールを変更することができる。
【００４５】
前のステップの後またはその間に、ステップ５２０において、現クライアントは、そのログしたデータを送信する。
【００４６】
ステップ５２２において、計画３０６における全てのデバイスについてプロセスを繰り返す。
【００４７】
好適な実施形態では、全てのプロファイル・データをサーバ３００に格納するが、別の実施形態では、データをデバイス自体に格納することも可能である。そして、必要な場合に、デバイスからプロファイル情報を要求する。この他の実施形態では、まさに必要な場合にデータが利用可能でない場合があり、このためこれは好適ではない。
【００４８】
サーバ３００は、最初に、単純な交互アルゴリズムに基づいて、全てのクライアントの計画３０６を生成する。
【００４９】
最初の計画を生成する前に、全てのデバイス・コントローラ１０８は、デバイス・プロファイラ３０２に、送信するデータの量を通知する。更新コンポーネント３０８は、デバイス・コントローラ１０８に、サーバ３００に接続してデータ１０６を伝送する時刻を通知する。
【００５０】
プロファイラ３０２は、このプロファイルを格納し、情報を動的スケジュール変更部３０４に渡す。スケジュール変更部３０４は、既存の計画３０６を用いて、必要に応じて計画を調節し、３０８を介してクライアントに再び通知する。
【００５１】
また、クライアントは、そのプロファイル・データ１０２を、デバイス・プロファイル１０４を介して、サーバ・デバイス・プロファイラ３０２に送信する。プロファイル・データ１０２は、時間単位当たりに収集したデータ量および利用可能ネットワーク有効範囲の時間を格納する。
【００５２】
スケジューラ３０４は、プロファイル・データ３０４からの履歴プロファイル・データを用いて、到着時刻および接続の長さを計画し、仕事日の間、負荷を分散させる。最適な計画では、基本的な数のクライアントを通信状態に維持するが、システムに過負荷を与えない。これを行うため、クライアント・スケジューラ１０８が送信した既知のデータ・ボリュームおよびデバイス・プロファイラ３０２からの予測ボリュームを用いる。この情報を、実際のおよび予測したネットワーク帯域幅と共に用いる（３１０の帯域幅予測部から）。
【００５３】
実施形態について、単一のサーバに関連付けて説明したが、２つ以上のサーバまでこのソリューションを拡張することがもできる。
【図面の簡単な説明】  
【００５２】
【図１】
本発明の本実施形態の概略図である。
【図２】
本発明の本実施形態によって格納されるプロファイル・データ構造の概略図である。
【図３】  
本発明の本実施形態によって格納される計画データ構造の概略図である。
【図４】
本発明の実施形態による方法である。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のクライアント・デバイスからサーバにデータを伝送するためのデータ・ロギング方法であって、
それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するステップと、
デバイスの実際の伝送サイズを受信するステップと、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについて前記スケジュールを更新するステップと、
前記デバイスのためのデータを伝送するステップと、
デバイスの将来の伝送サイズの推定値を算出するステップと、
前記デバイスがデータを前記サーバにダウンロードするようにスケジューリングされている場合に、前記デバイスの将来の伝送サイズの推定値および他のデバイスの伝送期間に基づいて、伝送期間を計算するステップと、
前記伝送期間および対応するデバイス・リファレンスをデータ構造に格納するステップと、
それぞれのデバイスについて上述したステップを実行するステップと、
を含み、前記将来の伝送サイズがクライアントの伝送サイズの履歴に基づいた推定値である、方法。
【請求項２】
前記スケジュールを更新するステップは、前記実際の伝送サイズに基づいて前記デバイスの伝送期間を再計算するステップを含む、請求項１に記載の方法。
【請求項３】
前記スケジュールを更新するステップは、再計算した前記デバイスの伝送期間が他のデバイスの伝送期間に影響を与える場合、前記スケジュールにおける前記他のデバイスの前記伝送期間を再計算するステップを更に含む、請求項１または２に記載の方法。    
【請求項４】
前記最初に計算した伝送期間が前記再計算した伝送期間と異なる場合、それ以降の伝送のスケジューリングの少なくとも一部分を変更する、請求項１、２、または３に記載の方法。
【請求項５】
前記将来の伝送サイズが、ログ・データの現在のサイズに基づいて前記クライアントから取得される、請求項１から４のいずれかに記載の方法。
【請求項６】
前記将来の伝送サイズが、前記クライアントの伝送サイズの履歴および前記ログ・データの現在のサイズに基づいた推定値である、請求項１から５のいずれかに記載の方法。
【請求項７】
複数のクライアント・デバイスからサーバにデータを伝送するためのデータ・ロギング・システムであって、
それぞれのデバイスの推定伝送サイズに基づいて伝送期間のスケジュールを作成するための手段と、
デバイスの実際の伝送サイズを受信するための手段と、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについて前記スケジュールを更新するための手段と、
前記デバイスのためのデータを伝送するための手段と、
デバイスの将来の伝送サイズの推定値を算出するための手段と、
前記デバイスがデータを前記サーバにダウンロードするようにスケジューリングされている場合に、前記デバイスの将来の伝送サイズの推定値および他のデバイスの伝送期間に基づいて、伝送期間を計算するための手段と、
前記伝送期間および対応するデバイス参照をデータ構造に格納するための手段と、
それぞれのデバイスについて上述したステップを実行するための手段と、
を含み、前記将来の伝送サイズがクライアントの伝送サイズの履歴に基づいた推定値である、システム。
【請求項８】
複数のクライアント・デバイスからサーバにデータを伝送するためのコンピュータ・プログラムであって、
それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するステップと、
デバイスの実際の伝送サイズを受信するステップと、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについて前記スケジュールを更新するステップと、
前記デバイスのためのデータを伝送するステップと、
デバイスの将来の伝送サイズの推定値を算出するステップと、
前記デバイスがデータを前記サーバにダウンロードするようにスケジューリングされている場合に、前記デバイスの将来の伝送サイズの推定値および他のデバイスの伝送期間に基づいて、伝送期間を計算するステップと、
前記伝送期間および対応するデバイス参照をデータ構造に格納するステップと、
それぞれのデバイスについて上述したステップを実行するステップと、
をコンピュータに実行させ、前記将来の伝送サイズがクライアントの伝送サイズの履歴に基づいた推定値である、コンピュータ・プログラム。
【請求項９】
ワイヤレス・ネットワークを介して複数の遠隔デバイスからサーバにログ・データを統合し、前記統合したログ・データをオン・デマンド方式でサービス・リクエスタに提供するためのサービス提供方法であって、
それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するステップと、
デバイスの実際の伝送サイズを受信するステップと、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについて前記スケジュールを更新するステップと、
前記デバイスのためのデータを伝送するステップと、
を含む、サービス提供方法。
【請求項１０】
ワイヤレス・ネットワークを介して複数の遠隔デバイスから前記ログ・データを統合するためのウェブ・サービスから統合したログ・データを受信するためのサービスを要求する方法であって、
それぞれのデバイスの推定伝送サイズに基づいて、伝送期間のスケジュールを作成するステップと、
デバイスの実際の伝送サイズを受信するステップと、
受信した前記デバイスの実際の伝送サイズおよび対応する推定伝送サイズの差に関して、全てのデバイスについて前記スケジュールを更新するステップと、
前記デバイスのためのデータを伝送するステップと、
デバイスの将来の伝送サイズの推定値を算出するステップと、
前記デバイスがデータを前記サーバにダウンロードするようにスケジューリングされている場合に、前記デバイスの将来の伝送サイズの推定値および他のデバイスの伝送期間に基づいて、伝送期間を計算するステップと、
前記伝送期間および対応するデバイス参照をデータ構造に格納するステップと、
それぞれのデバイスについて上述したステップを実行するステップと、
を含む方法を実行し、前記将来の伝送サイズがクライアントの伝送サイズの履歴に基づいた推定値である、コンピュータ・プログラム。
【国際調査報告】
2006522975.tif 000007
2006522975.tif 000008
2006522975.tif 000009