(57)【特許請求の範囲】
【請求項１】
データを発行する間にデータパブリシングプロトコルにより信頼性のレベルを選択するシステム（１００）において、
データパブリッシャを使用することによりデータを発行するように構成され、且つ一つ以上の肯定応答メッセージを送信して受信するように構成されており、前記データパブリッシャは発行データに関する複数の信頼性のレベルを有する、制約されたゲートウエイデバイス（１０２）と、並びに、
前記制約されたゲートウエイデバイス（１０２）及びサーバ（１０６）に、通信上結合する、一つ以上のサブスクライバデバイスであって、前記サーバ（１０６）は前記制約されたゲートウエイデバイス（１０２）上のデータパブリッシャと前記一つ以上のサブスクライバデバイス（１０４）との間で前記一つ以上の肯定応答メッセージを交換するように構成されている、一つ以上のサブスクライバデバイスと
を含み、
前記制約されたゲートウエイデバイス（１０２）上で稼働するデータパブリッシャは、
二つの連続データ発行サイクルの間の時間差（Ｔｐｃ）、データ発行キューの最大レングス（Ｑｍ）、及び、転送キュー−レングスのカットオフ値（Ｑｃｕｔｏｆｆ）に基づいて、信頼性のレベルを変更するのに要する時間（Ｔｃｕｔｏｆｆ）を計算すること、並びに、
信頼性のレベルを変更するのに要する時間（Ｔｃｕｔｏｆｆ）、前記制約されたゲートウエイデバイス（１０２）の帯域幅条件及びスリープサイクルを用いて、前記制約されたゲートウエイデバイスのエネルギと帯域幅の利用を最適化すること
により、
信頼性のレベルを動的に選択する、
システム。
【請求項２】
制約されたゲートウエイデバイス（１０２）は、時間差が転送キュー−レングスのカットオフ値より大きいならば、次のプライオリティデータ、若しくは、発行される任意のデータを選択することに基づいて、発行データの信頼性のレベルを動的に増加するように構成されている、
請求項１に記載のシステム。
【請求項３】
前記制約されたゲートウエイデバイス（１０２）は、ネットワーク帯域幅及びエネルギの制限を伴うモバイルデバイスであり、複数のセンサが埋め込まれ、及び、外部センサと通信するように構成されている
請求項１に記載のシステム。
【請求項４】
前記制約されたゲートウエイデバイス（１０２）は、スリープサイクル（Ｔｓ）の固定期間を維持する
請求項１に記載のシステム。
【請求項５】
データを発行する間にデータパブリシングプロトコルにより信頼性のレベルを選択するための、プロセッサが実行する方法において、
一つ以上の肯定応答メッセージを送信して受信するデータパブリッシャを使用することによりデータを発行するステップであって、前記データパブリッシャは発行データの複数の信頼性のレベルを有する、ステップと、
発行されたデータをサーバ（１０６）により受信し、一つ以上のサブスクライバデバイスに、発行されたデータを送信し、前記データパブリッシャとの間で前記一つ以上の肯定応答メッセージを交換するステップと、並びに、
二つの連続データ発行サイクルの間の時間差（Ｔｐｃ）、データ発行キューの最大レングス（Ｑｍ）、及び、転送キュー−レングスのカットオフ値（Ｑｃｕｔｏｆｆ）に基づいて、信頼性のレベルを変更するのに要する時間（Ｔｃｕｔｏｆｆ）を計算すること、及び、
信頼性のレベルを変更するのに要する時間（Ｔｃｕｔｏｆｆ）、制約されたゲートウエイデバイス（１０２）の帯域幅条件及びスリープサイクルを用いて、前記制約されたゲートウエイデバイスのエネルギと帯域幅の利用を最適化すること
により、
前記データパブリッシャを用いて信頼性のレベルを動的に選択するステップと
を含む、
方法。
【請求項６】
最適化することは更に、
発行データのキューレングス（Ｑ１）サイズ、及び、データパブリシングサイクル（Ｔｐｃ）とスリープサイクル（Ｔｓ）の間の時間差が、Ｑｃｕｔｏｆｆに達するならば、若しくは、チャネル条件がＱｃｕｔｏｆｆより下に低下するならば、発行データの信頼性のレベルを動的に下げるステップ、又は、
時間差がＱｃｕｔｏｆｆより上であるならば、発行データの信頼性のレベルを動的に増加するステップの、いずれかを含む、
請求項５に記載の方法。
【請求項７】
前記の、発行データの信頼性のレベルを動的に下げることは、
発行データの信頼性のレベルに基づいて、従前の発行されたデータのために送信される肯定応答メッセージを無視するステップ、及び、
発行される次のプライオリティデータを選ぶステップを含む
請求項６に記載の方法。
【請求項８】
前記の、発行データの信頼性を動的に増加することは、
発行データのキューレングス（Ｑ１）が１／２のＱｃｕｔｏｆｆ及びデータ発行のレートより小さいか、及び、制約されたゲートウエイデバイスの帯域幅がデータパブリシングサイクルの間に変化しないかを判定するステップを含む
請求項６に記載の方法。
【請求項９】
前記の、発行データの信頼性を動的に増加することは、
次のプライオリティデータ若しくは発行される任意のデータを選択することに基づいて、為される、
請求項６に記載の方法。
【請求項１０】
発行データの信頼性のレベルを動的に増加することは、
発行データのキューレングス（Ｑ１）が１／２のＱｃｕｔｏｆｆより小さく、且つＴｐｃ＝（Ｔｐ／Ｑ１）Ｑｍであるかを判定することに基づくものであり、
ここで、Ｔｐは発行データの信頼性のレベルに基づいてメッセージを発行し肯定応答を取り戻すのに必要であるトータル時間を示す、
請求項６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パブリッシャ及びスクライバネットワークの範囲内のメッセージ通信分野に概略関する。特に、本発明は、ユビキタスコンピューティング及びＩｏＴの分野に関する。特に、本発明は、データパブリッシャがネットワーク帯域幅、エネルギなどのリソースの制限をかかえて制約されたゲートウエイデバイス上で操作する際の、センサデータパブリッシングに関する。
【背景技術】
【０００２】
ネットワーク内で動作する多数のデバイスへの、及びからの、ニュース、イベント、通知、ファイル、メディアクリップ、及び他のアプリケーションデータなどの、データの配布は、今日、ユビキタスである。一つ以上のデータブロードキャスタ若しくはセンサから多数のモバイルデバイスへのデータのブロードキャスト、及び、無線ネットワークで動作する多数のモバイルデバイスによるデータのブロードキャストは、ネットワークリソース利用の観点から、若しくは、ネットワーク帯域幅制限により、複数の問題点を含むことがある。通常、メッセージをブロードキャストするデバイスは、パブリッシャと称され得、ブロードキャストされるメッセージのレシーバは、サブスクライバと称され得る。データパブリッシャとサブスクライバとの間の通信は、メッセージ発行環境の本質的特徴特性であり、両方のシステムは相互に関して切り離される。データパブリッシャは、サーバを介してデータをサブスクライバに送信する。このようなサーバは、メッセージデータストア、サブスクリプションストア、及び、二つのコンポーネントの間の対話部として、作用し得る。
【０００３】
特定のメッセージ発行システム内部では、メッセージは、ルーティングサービスを提供するサーバのネットワークを介して、一般に配布され得る。このような通信は、サーバがメッセージを処理するやり方を決定する、関連する「サービスの質」を有することが多い。サービスの質は、ネットワーク帯域幅要求、スループット、待ち時間、エラー率、コンプレッション、又は、データフローに要求されるメモリ若しくはバッファスペースの量などの、ファクタに依存する。メッセージ発行システムは、そのタイプの通信を受信する際に自らの興味をサーバに申し込んだ一つ以上のサブスクライバのセットに通信を送信する一つ以上のパブリッシャのセットを含む。パブリッシュ／サブスクライブにより、申し込みユーザは、興味ある領域での最新情報を受信することができる。通常の環境は、ブローカ／サーバにメッセージを送信する複数のパブリッシャを有し、ブローカ／サーバは、ネットワークに亘ってリモートコンピュータデバイスに配置された多数の（潜在的には非常に多数の）サブスクライバにメッセージを送信する。
【０００４】
しかしながら、モバイルホン、ＰＤＡ、及び無線接続の他のバッテリ動作デバイスなどの、モバイル無線デバイスの利用は、これらデバイス上で実行するアプリケーションにデータを配布するように設計された任意のシステム内に複数のファクタを導入するのであり、例えば、モバイルデバイスが無線ネットワークに亘って中央データストア若しくはサーバと通信しなければならない状況では、デバイスは、帯域幅制約、待ち時間問題、間欠的接続問題、パワー制約、並びに、データ及びコンテンツをクライアントデバイスのユーザに転送するように設計された任意のシステム内への法外なコストに、直面し得る。更に、デバイスのより低い利用可能帯域幅及びエネルギは、効率的に配布され得るデータ若しくはコンテンツのタイプ若しくは複雑性を制約しかねない。同様に、待ち時間、及び間欠的接続の問題は、データ若しくはコンテンツのソースと通信してコンテンツの配布を確認する、サブスクライバデバイスの能力に影響し得る。従って、データパブリッシャのエネルギや帯域幅などのリソース利用を最適化し、サービスの質を制御する、必要が生じる。
【０００５】
従来技術は、データ発行システムに含まれる種々の問題を解決することを試みる。例えば、米国特許第８０２８０８５号（特許文献１）は、パブリッシャ及びサブスクライバが同じプロセススペースに駐在しているシステムに対するメッセージキューである待ち時間コンポーネントを除去することによりメッセージ交換の待ち時間を減少させることを、記載している。しかしながら、それは、ネットワーク帯域幅と共にエネルギのような最適化されたリソースの利用による、パブリッシャサイドのサービスの質のための、方法を具体化するものでは無い。
【０００６】
更に、米国特許出願公開第２００３／０１１５３１７号（特許文献２）は、メッセージの特徴と共に、サブスクライバ特定のサービスの質の要求を記載し、結果としてメッセージブローカ／サーバにより適切な通信プロトコルを選択することを記載する。サーバは、信頼性要求と最適化メッセージパフォーマンスをバランスさせることも行う。しかしながら、これは、パブリッシャサイドのＱｏＳ（サービスの質）のためのスキームを具体化するものでは無い。
【０００７】
米国特許第７５４８５３４号（特許文献３）は、ＭＡＣレイヤ（レイヤ２）の帯域幅アロケーションポリシについて記載し、承諾が変動し得る個々の物理チャネル帯域幅の接続プライオリティに基づいてベースステーションスケジュラにより帯域幅アロケーションがいかに動的に成されるか、を記載する。米国特許第８１４９７７１号（特許文献４）は、イベントスケジュラによる多数のアプリケーション間の動的帯域幅アロケーションメカニズムについて記載する。該メカニズムは特にブロードキャストデータに関して稼働する。アプリケーションが、割り当てられた帯域幅上で稼働するとき、該メカニズムは信頼性のレベルを保証するが、しかしながら、データ発行の間信頼性のレベルを動的には変動せず、帯域幅と共にパワーの利用を最適化しない。それは制約されたデバイス上で稼働することを要求しない。米国特許出願公開第２００６０１４６９９１号（特許文献５）は、エンドツーエンドミドルウエアアーキテクチャを提示し、該エンドツーエンドミドルウエアアーキテクチャは、パブリッシュ−サブスクライブメッセージシステムを利用する。そのメッセージシステムは、トピックベースのメカニズムを利用する。それは、マネジメント、コントロール、データルーティング、ソフトウエア及びファームウエアのバージョンコントロール並びにアップデートマネジメント、並びにスケジューリングを提供し、更に、一つ以上のメッセージアプリケーションの夫々に接続する一つ以上のキャッシングエンジンを含む。メッセージシステムは、ネットワーク帯域幅、メッセージフローレート、フレームレート、メッセージホップ待ち時間、エンドツーエンド待ち時間、及びシステムビヘイビアを含むパフォーマンス基準、並びに、プロトコル最適化サービスをモニタする。それは更に、パフォーマンス基準に基づいてメッセージ通信パスと関連するリソースを制御するように動作する。米国特許出願公開第２００９０１４７７３７号（特許文献６）は、ＷｉＭＡＸ  ＭＡＣレイヤ（レイヤ２）の帯域幅アロケーションポリシ、転送が必要とされるパケットの数の予測を用いてサブスクライバステーションにより為されるリクエストに拠ってベースステーションスケジュラ帯域幅アロケーションが以下に動的に為されるか、を記載する。ここでＴｘキューレングスは、承諾到着の時までにキュー内に到着すると予測されるパケットの数に依存し、計測された平均遅延とターゲット遅延との間の差異により調整されるが、パブリッシャサイドのＱｏＳ（サービスの質）を管理することを記載するものではない。同様に、米国特許第７４０６５３７号（特許文献７）、米国特許出願公開第２００３０１３５５５６号（特許文献８）、米国特許第７４２４５４９号（特許文献９）、米国特許出願公開第２０１００００２６９２号（特許文献１０）、米国特許第７９７０９１８号（特許文献１１）は、パブリッシャサイドにおけるサービスの質を管理することを記載しない。
【０００８】
しかしながら、前述の先行技術文献は、データを発行する間にパブリッシャによりデータパブリシングプロトコルの信頼性／ＱｏＳ（サービスの質）を動的に変動すること、これにより、制約されたゲートウエイデバイスとして最適に帯域幅やエネルギなどのリソースを利用することを、記載するものでは無い。更に、現存技術は、データパブリシングキュー、スリープサイクル及びデータパブリシングサイクルの間の関係を規定する提案に追い付いていない。よって、現存技術に記述されるスキームは、制約されたデバイスとしてのデータパブリッシャとして帯域幅やエネルギなどのリソース利用を最適化し、センサゲートウエイとして機能する、という問題に対処できない。
【０００９】
更に、最先端のシステムは、データパブリッシャとして作用し制約されたゲートウエイ上で稼働する間、データパブリシングキュー、スリープサイクル及びデータパブリシングサイクルの間の関係を生成する、どのメカニズムにも無自覚である。
【００１０】
前述で説明した問題の観点では、ネットワーク帯域幅やエネルギなどの最適化されたリソース利用により、パブリッシャサイドのサービスの質を管理する、改良された方法及びシステムに対するニーズが増えている。本出願は、パブリッシャの状態及びリソースの条件に基づいて、発行されるデータの信頼性を変動することを、記載する。本出願は更に、帯域幅の利用可能性、転送キューサイズ、及びパブリッシャにて発行されるデータのプライオリティに拠って、発行されるメッセージの信頼性のレベルを動的に変動することに基づいて、帯域幅やエネルギなどのリソース利用を最適化する、パブリッシャサイドのサービスの質のマネジメントのための方法を記載する。本出願の提示する解決策は、帯域幅やエネルギなどのリソースを最適に利用するという観点でパフォーマンス拡張も提供する。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】米国特許第８０２８０８５号
【特許文献２】米国特許出願公開第２００３／０１１５３１７号
【特許文献３】米国特許第７５４８５３４号
【特許文献４】米国特許第８１４９７７１号
【特許文献５】米国特許出願公開第２００６０１４６９９１号
【特許文献６】米国特許出願公開第２００９０１４７７３７号
【特許文献７】米国特許第７４０６５３７号
【特許文献８】米国特許出願公開第２００３０１３５５５６号
【特許文献９】米国特許第７４２４５４９号
【特許文献１０】米国特許出願公開第２０１００００２６９２号
【特許文献１１】米国特許第７９７０９１８号
【発明の概要】
【発明が解決しようとする課題】
【００１２】
本出願の第一の目的は、ネットワーク帯域幅やエネルギなどの最適化されたリソース利用によりパブリッシャサイドのＱｏＳ（サービスの質）を管理するシステム及び方法を提供することである。
【００１３】
パブリッシャにて発行されるデータのパブリシングデータキューサイズ及びプライオリティに基づいて、発行されるメッセージの信頼性のレベル、帯域幅の利用可能性を動的に変動するシステム及び方法を提供することが、本発明の別の目的である。
【００１４】
データパブリシングキュー、スリープサイクル、及びデータパブリシングサイクルの間の関係を規定する方法を提供することが、本発明の更に別の目的である。
【課題を解決するための手段】
【００１５】
本発明の実施形態は、データを発行する間にデータパブリシングプロトコルにより信頼性を動的に選択するシステムに関する。或る実施形態では、システムは、制約されたゲートウエイデバイスと、一つ以上のサブスクライバデバイスと、及びサーバとを含む。制約されたゲートウエイデバイスは、データパブリッシャを利用することによりデータを発行するように調整され得る。更に、制約されたゲートウエイデバイスは、データ発行の間に一つ以上の肯定応答メッセージを送受信するようにも調整され得る。或る実施形態では、制約されたゲートウエイデバイスは、発行のためのデータのキューサイズ、及び、データパブリシングサイクルとスリープサイクルとの間の時間差がカットオフ値に達するならば、又は、チャネル条件がカットオフレベルから下がるならば、発行データの信頼性を動的に下げるように調整され得る。別の実施形態では、制約されたゲートウエイデバイスは、データのプライオリティに基づいて発行データの信頼性を動的に増加するように調整され得、又は、チャネル条件が公正を示しインジケータがカットオフレベルより大きいならば、あらゆるデータに対して発行するに過ぎない。或る形態では、制約されたゲートウエイデバイスは、所定のネットワーク帯域幅及びエネルギの制限を伴う、携帯電話、タブレット、ＰＤＡなどのモバイルデバイスであればよい。別の形態では、制約されたゲートウエイデバイスは、複数のセンサが埋め込まれ得、及び、外部センサと通信するようにも調整され得る。更に別の形態では、制約されたゲートウエイデバイスは、スリープサイクルの固定期間を維持し得る。或る実施形態では、制約されたゲートウエイデバイス上で稼働するデータパブリッシャは最高の信頼性のレベルから開始し得、一つ以上のサブスクライバは最高の信頼性で聴き得る。別の実施形態では、データパブリッシャは、発行されるデータの転送キューレングス、データパブリシングサイクル、及びスリープサイクルの間の関係を維持し得る。一つ以上のサブスクライバデバイスは、制約されたゲートウエイデバイスと通信上結合しサーバにサブスクライブされ得、及び一つ以上の肯定応答メッセージを送信し受信するように調整され得る。サーバは、制約されたゲートウエイデバイス及び一つ以上のサブスクライバデバイスと通信上結合する。サーバは、制約されたゲートウエイデバイス上のデータパブリッシャと一つ以上のサブスクライバデバイスとの間で肯定応答メッセージを交換するように調整され得る。特に、制約されたゲートウエイデバイス上で稼働するデータパブリッシャは、発行データに関する多数の信頼性のレベルを有し得、利用可能な帯域幅及びエネルギに基づいて信頼性のレベルを動的に選択するように調整され得、制約されたゲートウエイデバイスのエネルギ及び帯域幅の利用を最適化し得る。
【００１６】
本発明の他の実施形態は、データを発行する間にデータパブリシングプロトコルにより信頼性を動的に選択する方法に関する。方法は、制約されたゲートウエイデバイス上で稼働するデータパブリッシャにより発行データの信頼性のレベルを選択して、発行データをサーバに送信するステップを含む。或る形態では、発行データの信頼性のレベルが、受信された発行完了肯定応答メッセージの肯定応答としてパブリッシャサイドから送信されるメッセージの数を規定する。データは、サーバにより受信され、その後すぐにサーバにサブスクライブされるサブスクライバデバイスに送信される。サーバは、データの転送を確認するために肯定応答メッセージを制約されたゲートウエイデバイスへ送信し得る。発行されたデータを受信する際、サブスクライバデバイスは、サーバを介して発行完了肯定応答メッセージを制約されたゲートウエイデバイスに送信する。或る形態では、制約されたゲートウエイデバイスによるデータの発行は、発行のために最高の信頼性のレベルを選択するデータパブリッシャと、最高の信頼性のレベルでデータを受信するサブスクライバとにより、開始し得る。
【００１７】
或る実施形態では、制約されたゲートウエイデバイスのデータパブリッシャにより発行データの信頼性のレベルを選択するステップが、二つの連続データ発行サイクルの間の時間差（Ｔｐｃ）、データ発行キューＱｍの最大レングス、及び、システムにより変動する転送キュー−レングスのカットオフ値（Ｑｃｕｔｏｆｆ）に基づいて、信頼性のレベルを変更するのに要する時間（Ｔｃｕｔｏｆｆ）を計算するステップ、並びに、帯域幅条件及びスリープサイクルのインプットを使用するステップ、及び、これにより制約されたゲートウエイデバイスのエネルギと帯域幅の利用を最適化するステップを含む。
【００１８】
別の関連する実施形態では、制約されたゲートウエイデバイスのエネルギと帯域幅の利用を最適化するステップは、
発行のためのデータのキューサイズ、及び、データパブリシングサイクルとスリープサイクルの間の時間差が、カットオフ値に達するならば、若しくは、チャネル条件がカットオフレベルから低下し更に調整されるならば、発行データの信頼性のレベルを動的に下げるステップ、又は、チャネル条件が公正を示しインジケータがカットオフレベルより上であるならば、発行データの信頼性のレベルを動的に増加するステップの、いずれかを含む。
【００１９】
或る形態では、発行データの信頼性を動的に下げるステップは、信頼性のそのレベルに基づいて、既に発行されたメッセージのために送信される肯定応答メッセージを無視するステップ、及び、発行される次のプライオリティデータを選ぶステップを含む。これは今度はデータ発行の全体時間及び送信される全体のデータトラフィックを減少させ、よって、エネルギ及び帯域幅の利用を減少させる。
【００２０】
或る形態では、発行データの信頼性を動的に増加するステップは、発行されるデータのキューレングスが１／２のＱｃｕｔｏｆｆより小さいか、データ発行のレートがほぼ同じか、及び、二つの連続データパブリシングサイクルの間に帯域幅が変化しないかを判定するステップを含む。別の形態では、発行データの信頼性を動的に増加するステップは、データのプライオリティに基づくものであり、又は、単にそれが発行するあらゆるデータに対するものに過ぎない。関連する実施形態では、発行されるデータのキューレングスが１／２のＱｃｕｔｏｆｆより小さいかを判定するステップは、Ｔｐｃ＝（Ｔｐ／Ｑ１）Ｑｍであるかを判定するステップを含み、ここで、Ｔｐｃは二つの連続データパブリシングサイクルの間の時間差を示し、Ｑ１は発行されるデータのキューレングスを示し、Ｔｐはその信頼性のレベルに基づいてメッセージを発行し肯定応答を取り戻すのに必要であるトータル時間を示し、Ｑｍはデータパブリシングキューの最大レングスを示す。
【００２１】
以下の本発明の詳細な説明がよりよく理解されるために、前述にて本発明の特徴及び技術的利点を相応の範囲で示した。本発明の請求項の主題を構成する本発明の更なる特徴及び利点を以下に記載する。当然のことながら、本発明と同じ目的を実施するための、他の構造を修正する若しくは設計する基礎として、開示のコンセプト及び具体的実施形態が利用され得る。更に当然のことながら、それら等価の構成は、添付の請求項に記載する本発明から乖離するものでは無い。本発明の特徴と考えられる新規の特性は、更なる目的及び利点と共に、その構成及び動作の方法の両方に関して、添付の図面と関連して考慮されることで以下の記載からよりよく理解されるであろう。しかしながら、図面の各々は例示と記載のためにのみ示されるのであり本発明の限定の規定を意図するものでは無い、ということが明確に理解されるべきである。
【図面の簡単な説明】
【００２２】
前述の概要、及び、以下に示す好適な実施形態の詳細な説明は、添付の図面と併せて読むとよりよく理解される。発明を例示する目的のために、図面にて本発明の例が示される。しかしながら、本発明は、図面に開示される特定のシステム及び方法に限定されない。
【図１】図１は、パブリッシャアプリケーションが稼働している制約されたゲートウエイデバイス、及び、サブスクライバアプリケーションが稼働している一つ以上のサブスクライバデバイスが、サーバを介して通信し、本発明が実装され得る、パブリシングシステムの略図である。
【図２】図２は、例示の実施形態に係るものであり、データパブリッシャアプリケーションを有する、制約されたゲートウエイデバイスを示す。
【図３】図３は、サーバと相互作用するパブリッシャのコンポーネントを示す、システムアーキテクチャの略図である。
【図４】図４は、通常のパブリッシャ／サブスクライバの通信プロセスの略図である。
【図５】図５は、例示の実施形態により、パブリッシャサイドのＱｏＳ（サービスの質）を動的に変動することを記述する、実行フロー図を示す。
【発明を実施するための形態】
【００２３】
本発明の幾つかの実施形態は、本発明の全ての特徴を説明するものであり、以下に詳細に示される。「包含する」「有する」「含む」及び「含有する」並びに他の形式の用語は、意味上等価であり、これら用語の何れかに続く一つ以上の項目がそれら項目の包括的リストであることを意味するものでも無くリストされた項目にのみ限定されることを意味するものでも無い、という点において制約が無いことを、意図するものである。
【００２４】
本明細書や添付の請求項で用いられているように、文脈上明確に別途示さない限り単体型「一つの」「一つの」及び「その」は複数参照を含むことにも、留意しなければならない。
【００２５】
本明細書に記載のシステム及び方法と類似の若しくは等価の任意のシステム及び方法は、本発明の実施形態の実施や試行にて用いられ得るが、以下、好適なシステム及び方法を記載する。
【００２６】
図１は、パブリッシャアプリケーションが稼働している制約されたゲートウエイデバイス、及び、サブスクライバアプリケーションが稼働している一つ以上のサブスクライバデバイスが、サーバを介して通信し、本発明が実装され得る、パブリシングシステム（１００）の略図である。
【００２７】
パブリシングシステム（１００）は、制約されたゲートウエイデバイス（１０２）、一つ以上のサブスクライバデバイス（１０４）及びサーバ（１０６）を含み得る。制約されたゲートウエイデバイスは、データパブリッシャを利用することによりデータを発行するように調整され得る。データパブリッシャは、一つ以上のサブスクライバデバイス（１０４）がサブスクライブされ得る制約されたゲートウエイデバイス（１０２）上で稼働している。更に、制約されたゲートウエイデバイス（１０２）は、一つ以上の肯定応答メッセージを送信し受信するようにも調整され得る。一つの形態では、一つ以上の肯定応答メッセージは、制約されたゲートウエイデバイスによりサーバに送信される完全なパブリシングデータ転送メッセージであればよい。
【００２８】
或る実施形態では、制約されたゲートウエイデバイス（１０２）は、パブリシングのためのデータのキューサイズ、及び、データパブリシングサイクルとスリープサイクルの間の時間差がカットオフ値に達するならば、又は、チャネル条件がカットオフレベルから下がるならば、パブリシングデータの信頼性のレベルを動的に低くするように調整されていてもよい。別の実施形態では、制約されたゲートウエイデバイス（１０２）は、データのプライオリティに基づいて、又は、チャネル条件がフェアでありインジケータがカットオフレベルより大きいならばデバイス（１０２）が発行するあらゆるデータに対して、パブリシングデータの信頼性を動的に増加するように調整されていてもよい。制約されたゲートウエイデバイス（１０２）は、ネットワーク帯域幅やエネルギ限界などの所定の制約を伴う、携帯電話、タブレット、ＰＤＡなどのモバイルデバイスであればよい。制約されたゲートウエイデバイスは、複数のセンサが埋め込まれてもよく、更に図２で説明するような所定の外部センサと通信するように調整されてもよい。制約されたゲートウエイデバイスは、スリープサイクルの固定期間を維持し得る。
【００２９】
或る実施形態では、制約されたゲートウエイデバイス（１０２）上で稼働するデータパブリッシャは、最高の信頼性のレベルからデータを発行することを開始し得、一つ以上のサブスクライバデバイス（１０４）は最高の信頼性のレベルで聴くように調整され得る。別の実施形態では、データパブリッシャは、発行されるデータの転送キューレングス、データパブリシングサイクル、及びスリープサイクルの間の関係を維持し得る。一つ以上のサブスクライバデバイスは、制約されたゲートウエイデバイスと通信上結合してデータパブリッシャにサブスクライブされ得、一つ以上の肯定応答メッセージを送信し受信するように調整され得る。サーバ（１０６）は、制約されたゲートウエイデバイス及び一つ以上のサブスクライバデバイスと通信上結合する。サーバ（１０６）は、制約されたゲートウエイデバイス上のデータパブリッシャと、一つ以上のサブスクライバデバイスとの間で、肯定応答メッセージを交換するように調整され得る。特に、制約されたゲートウエイデバイス上で稼働するデータパブリッシャは、発行データの信頼性に関する多数のレベルを有し得、利用可能な帯域幅及びエネルギに基づいて信頼可能性のレベルを動的に選択するように調整し得、更に、制約されたゲートウエイデバイスのエネルギ及び帯域幅の利用を最適化する。
【００３０】
図２は、例示の実施形態に係るものであり、データパブリッシャアプリケーションを有する、制約されたゲートウエイデバイスを示す。制約されたゲートウエイデバイスは、携帯電話として示されているが、タブレット、ＰＤＡ、若しくは、ネットワークに無線接続する他のバッテリ操作デバイスなどのモバイルデバイスであっても同様であり得る。制約されたゲートウエイデバイスは、図２に示すように、ＧＰＳ、加速度計、近接センサ、ＮＦＣなどの、複数のセンサが埋め込まれ得る。更に、制約されたゲートウエイデバイスは、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＷｉＦｉなど小範囲無線接続を利用することによりＥＣＧメータ、温度センサなどのより多くの外部センサで補強され得る。制約されたゲートウエイデバイスは、複数のセンサデータを外部世界と共有するゲートウエイとして作用する。発行されるデータは、ブローカ／プロキシとして作用し得るサーバに通信される。サブスクライバデバイスは、サーバが更新される際及びとき、サーバからデータを取得する。一つの形態では、サブスクライバデバイスは、制約されたデバイスであってもよい。
【００３１】
図３は、サーバと相互作用するパブリッシャのコンポーネントを示す、システムアーキテクチャの略図である。パブリッシャは、データ／メッセージ若しくは肯定応答をサーバに送信する転送コンポーネントと、肯定応答をサーバから受信する受信コンポーネントを有する。更に、パブリッシャは、パブリッシャが稼働している制約されたゲートウエイデバイスのスリープサイクル情報を保持するパブリッシャコアコンポーネントを含む。更に、任意の所与の時間に制約されたゲートウエイデバイスに利用可能であるネットワーク帯域幅に関する情報をモニタするインタフェース転送コンポーネント及びインタフェース受信コンポーネントも、存在する。
【００３２】
図４は、通常のパブリッシャ／サブスクライバ通信プロセスの略図である。パブリッシャは、発行されるデータと共にデータパブリッシュ兆候をサーバに送信する。システム内のあらゆるサブスクライバに対するメッセージキューを維持するサーバは、データパブリッシュ兆候を、サーバにサブスクライブされるサブスクライバに送信する。データをサブスクライバに送信する際、サーバはパブリッシャに確認肯定応答を送信する。データの発行が終わると、パブリッシャはサーバにパブリッシュ完了兆候を送信する。サブスクライバが発行されたデータを受信すると、サブスクライバもサーバに確認肯定応答を送信する。サーバがサブスクライバから確認を受信すると、サーバは、発行の完了を示すパブリッシュ完了肯定応答をパブリッシャに送信する。
【００３３】
図５は、例示の実施形態による、パブリッシャサイドのＱｏＳ（サービスの質）の変動を記述する、実行フロー図を示す。発行する方法は、エネルギやネットワーク帯域幅などのリソースを最適に利用する。発行データに対する信頼性のレベルは、データパブリシングの間に動的に変動する。更に、発行されるデータの転送キューレングス、制約されたデバイスのデータパブリシングサイクル及びスリープサイクルの間の関係が、確立される。
【００３４】
発行されるデータのキューレングス、若しくはデータ転送キュー内に格納される発行されるメッセージの数は、Ｑ１を付される。キューの最大レングスは、Ｑｍを付される。二つの連続データ発行の間の時間差、若しくは、完了データパブリシングサイクルの時間間隔は、Ｔｐｃを付される。制約されたゲートウエイデバイスのスリープサイクルの時間は、Ｔｓを付される。スリープサイクルは、制約されたゲートウエイデバイスがスリープする固定時間間隔である。制約されたデバイスはスリープサイクルの固定持続時間を維持し、多数の信頼性のレベルを有する。信頼性のレベルは最高の信頼性のレベルから開始し得る。更に、サブスクライバデバイスは、最高の信頼性のレベルで聴くことにより開始し得る。制約されたゲートウエイデバイスがスリープに到る前の非アクティブ期間は、Ｔｎを付され得る。更に、その信頼性のレベルに基づいてメッセージを発行し肯定応答を取り戻すのに必要であるトータル時間は、Ｔｐを付され得る。ある形態では、信頼性のレベルは、データ発行メッセージに関して、受信された肯定応答の肯定応答としてパブリッシャサイドから送信されるメッセージの数として定義され得る。
【００３５】
その信頼性のレベルに基づいてメッセージを発行し肯定応答を取り戻すのに必要であるトータル時間は、ネットワーク帯域幅、信頼性のレベル、発行される個別のデータ／メッセージのレングスの、関数として記載され得る。
即ち、
Ｔｐ＝ｆ（帯域幅、信頼性のレベル、発行される個別のデータ／メッセージのレングス）；
・・・・（１ａ）
更に、二つの連続データ発行の間の時間差、若しくは、完了データパブリシングサイクルの時間間隔は、ネットワーク帯域幅及び信頼性のレベルの、関数として記載され得る。
即ち、
Ｔｐｃ＝ｆ（帯域幅、信頼性のレベル）；・・・・（１ｂ）
従って、Ｔｃｕｔｏｆｆ＝［（Ｔｐｃ／Ｑｍ）Ｑｃｕｔｏｆｆ］
故に、
Ｔｃｕｔｏｆｆ＝ｆ（Ｔｐ，Ｑｃｕｔｏｆｆ）・・・・（２）
Ｑ１＝ｆ（Ｔｐ）・・・・（３）
Ｔｃｕｔｏｆｆと成り、しかしＱ１＞Ｑｃｕｔｏｆｆであるとき、その時点でパブリッシャは、発行されるメッセージの信頼性のレベルを変更する、即ち、第２レベルへの変更ではなく、第１レベルへ下げる、など行う。この時間にて、発行データの信頼性のレベルに基づいて既に発行されたメッセージに対して送信されるＡＣＫ（肯定応答）メッセージをパブリッシャは無視し、発行される次のプライオリティデータを選択する。
【００３６】
帯域幅が減少しＴｐが増加しＱ１が増加する場合であり、上記条件が到来するならば、パブリッシャは信頼性を減少し同じ作用を行う。パブリッシャがより少ない数のポストすべきデータ、即ち、１／２のＱｃｕｔｏｆｆより小さい数を有し、Ｔｐｃ＝（Ｔｐ／Ｑ１）Ｑｍであり、データ発行のレートがほぼ同じであり、帯域幅がＴｐｃの間変化していない場合、パブリッシャはデータのプライオリティによって信頼性のレベルを強化し、若しくは、あらゆるデータに対してパブリッシャ発行する。
【００３７】
本発明の他の実施形態は、データを発行する間にデータパブリシングプロトコルにより信頼性を動的に選択する方法に関する。方法は、制約されたゲートウエイデバイス上で稼働するデータパブリッシャにより発行データの信頼性のレベルを選択するステップ、及び、発行データをサーバに送信するステップを含む。ある形態では、発行データの信頼性のレベルは、受信される発行完了肯定応答メッセージの肯定応答としてパブリッシャサイドから送信されるメッセージの数を規定する。データはサーバにより受信され、その後直ぐにサーバにサブスクライブされているサブスクライブデバイスに転送される。サーバは、データの転送を確認するために肯定応答メッセージを制約されたゲートウエイデバイスに送信し得る。サブスクライバデバイスは、発行されるデータを受信すると、発行完了肯定応答メッセージを制約されたゲートウエイデバイスへサーバを介して送信する。ある形態では、制約されたゲートウエイデバイスによるデータの発行は、発行のために最高の信頼性のレベルを選択するデータパブリッシャと、最高の信頼性のレベルでデータを受信するサブスクライバとにより、開始し得る。
【００３８】
或る実施形態では、制約されたゲートウエイデバイスのデータパブリッシャにより発行データの信頼性のレベルを選択するステップは、
二つの連続データ発行サイクルの間の時間差（Ｔｐｃ）、データ発行キューの最大レングスＱｍ、及び、システムにより変動する転送キュー−レングスのカットオフ値（Ｑｃｕｔｏｆｆ）に基づいて、信頼性のレベルを変更するのに要する時間（Ｔｃｕｔｏｆｆ）を計算するステップ、
帯域幅条件及びスリープサイクルのインプットを利用するステップ、及び、
これにより制約されたゲートウエイデバイスのエネルギと帯域幅の利用を最適化するステップを
含む。
【００３９】
別の関連する実施形態では、制約されたゲートウエイデバイスのエネルギと帯域幅の利用を最適化するステップは、
発行のためのデータのキューサイズ、及び、データパブリシングサイクルとスリープサイクルの間の時間差が、カットオフ値に達するならば、若しくは、チャネル条件がカットオフレベルから低下し更に調整されるならば、発行データの信頼性のレベルを動的に下げるステップ、又は、
チャネル条件が公正を示しインジケータがカットオフレベルより上であるならば、発行データの信頼性のレベルを動的に増加するステップの、いずれかを含む。
【００４０】
ある形態では、発行データの信頼性を動的に下げるステップは、
発行データの信頼性のレベルに基づいて、既に発行されたメッセージのために送信される肯定応答メッセージを無視するステップと、及び、
発行される次のプライオリティデータを選ぶステップと
を含む。
【００４１】
ある形態では、発行データの信頼性を動的に増加するステップは、発行されるデータのキューレングスが１／２のＱｃｕｔｏｆｆより小さいか、データ発行のレートがほぼ同じか、及び、データパブリシングサイクルの間に帯域幅が変化しないかを判定するステップを含む。別の形態では、発行データの信頼性を動的に増加するステップは、データのプライオリティに基づくものである、又は、単にパブリッシャが発行するあらゆるデータに対するものに過ぎない。関連する実施形態では、発行データの信頼性のレベルを動的に増加するステップは、発行されるデータのキューレングスが１／２のＱｃｕｔｏｆｆより小さくＴｐｃ＝（Ｔｐ／Ｑ１）Ｑｍの場合である。ここで、Ｔｐｃは二つの連続データ発行の間の時間差を示し、Ｑ１は発行されるデータのキューレングスを示し、Ｔｐはその信頼性のレベルに基づいてメッセージを発行し肯定応答を取り戻すのに必要であるトータル時間を示し、Ｑｍはデータパブリシングキューの最大レングスを示す。
【００４２】
以下の記載の一部では、無線ネットワーク内で稼働するモバイル無線デバイスを参照して本発明を説明するが、当然ながら、特許性のあるシステム、装置、及び方法は、他のタイプのデバイスに同様に、及び、無線ネットワーク以外のネットワーク（例えば、インターネットベースの通信ネットワークなどの固定式高速双方向ネットワーク、又は、一方の通信が他方よりも速い固定式若しくは無線式双方向ネットワーク）に、一般に適用され得る。適用可能なデバイスは、例えば、ＡＴＭマシン、情報キオスク、自動販売機、及びナビゲーションシステムを、含む。本発明が適用可能である状況の一つの例は、ユーザデバイスがデータのソースと通信する能力が無い、若しくは、限定された能力しか無い、自動車ナビゲーションシステムである。別の例は、限定されたアップストリーム通信能力を有し得る情報キオスクのものである。概略、本発明は、ブロードキャストメカニズム、若しくは、一方向による他の実効的なデータ配布メカニズム（多数のデバイスへのネットワーク）があるクライアントデバイスに、最も適用可能であるが、個々のデバイスに対してカスタマイズされた、データを引き出す、実効的である／コスト効率のよい、若しくは利用可能な、二方向のメカニズムは無い。前述のように、本発明はそれらネットワークに対する十分な利益を提供するが、概略、対称若しくは非対称の通信能力を伴う高速固定式若しくは無線式双方向ネットワークの文脈で、それは用いられ得る。
【００４３】
例示の実施形態に関して記載した方法及び技術は、内部で命令のセットが実行される際前述の方法の任意の一つ以上を実施させ得るマシン若しくは他のコンピュータデバイスを用いて、実施され得る。或る実施形態では、マシンはスタンドアローン装置として動作する。或る実施形態では、マシンは（例えば、ネットワークを用いて）他のマシンに接続し得る。ネットワーク化された配備では、マシンは、クライアント−サーバのユーザネットワーク環境でサーバ若しくはクライアントユーザマシンの能力で、又は、ピアツーピア（若しくは分散型）ネットワーク環境でピアマシンとして、動作し得る。
【００４４】
図面及び明細書にて、本発明の代表的な好適な実施形態が開示されており、特定の用語が用いられているが、これら用語は説明的意味においてのみ用いているのであり、限定の目的のためには用いていない。これらの例示された実施形態を特に参照して本発明を相当に詳細に記載した。しかしながら、前述の明細書中に記載するように種々の修正及び変更が本発明の精神及び範囲の内部にて為され得るのは明白であろう。例えば、本発明の例示の実施形態は、回帰テストスクリプトの生成に当初向けられていた。しかしながら、当業者であれば、様々なテストスクリプトへの適用可能性を認識するであろう。
【００４５】
本発明及びその効果を詳細に説明したが、当然のことながら、添付の請求項に規定する本発明から乖離すること無く、種々の変更、置換及び修正がここで可能である。更に、本発明の範囲は、明細書に記載のプロセス、マシン、手段、方法及びステップに関する特定の実施形態に限定することを意図しない。開示内容から容易に理解し得るように、現存するものでも後に開発されるものでも、本明細書に記載の対応する実施形態と実質的に同じ機能を実行する、若しくは実質的に同じ結果を達成する、プロセス、マシン、手段、方法、若しくはステップが、利用され得る。従って、添付の請求項は、その範囲内にそれらプロセス、マシン、手段、方法、若しくはステップを含むことを意図されている。
【符号の説明】
【００４６】
１００・・・パブリシングシステム、１０２・・・制約されたゲートウエイデバイス、１０４・・・サブスクライバデバイス、１０６・・・サーバ。
【図１】
0006517279.tif 000002
【図２】
0006517279.tif 000003
【図３】
0006517279.tif 000004
【図４】
0006517279.tif 000005
【図５】
0006517279.tif 000006