JP5866077B2 - 情報管理方法及びデバイス - Google Patents

情報管理方法及びデバイス Download PDF

Info

Publication number
JP5866077B2
JP5866077B2 JP2015530288A JP2015530288A JP5866077B2 JP 5866077 B2 JP5866077 B2 JP 5866077B2 JP 2015530288 A JP2015530288 A JP 2015530288A JP 2015530288 A JP2015530288 A JP 2015530288A JP 5866077 B2 JP5866077 B2 JP 5866077B2
Authority
JP
Japan
Prior art keywords
terminal
participating
terminals
participating terminals
user input
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.)
Active
Application number
JP2015530288A
Other languages
English (en)
Other versions
JP2015537267A (ja
Inventor
ワン,シューシン
ヤオ,ジアンフイ
チェン,シャンウェン
タン,ウェン
Original Assignee
テンセント テクノロジー (シェンジェン) カンパニー リミテッド
テンセント テクノロジー (シェンジェン) カンパニー リミテッド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by テンセント テクノロジー (シェンジェン) カンパニー リミテッド, テンセント テクノロジー (シェンジェン) カンパニー リミテッド filed Critical テンセント テクノロジー (シェンジェン) カンパニー リミテッド
Publication of JP2015537267A publication Critical patent/JP2015537267A/ja
Application granted granted Critical
Publication of JP5866077B2 publication Critical patent/JP5866077B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/358Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/32Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

本出願は、2012年9月13日に出願された中国特許出願第201210338451.7「情報管理方法及びデバイス」の優先権を主張し、その全内容が、参照により本明細書に組み込まれる。
本発明は、一般に、情報管理方法及びデバイスに関し、詳細には、データ同期の維持を含むネットワーク・アプリケーション方法及びデバイスに関する。
今日のネットワーク技術の発展に伴い、ユーザは、仕事及び/又はエンタテインメントのために未接続のコンピュータを使用することにもはや満足していない。一般に、ユーザは、仕事及び/又は遊び中、インタネット及び他のネットワーク技術に大きく依存するインタラクション及びコミュニケーションをより好む。
既存の技術は、複数の端末を使用して、所定のピア・ツー・ピア(P2P)サービスを実行する。P2Pセッション中、複数の端末のうちの1つの端末が、同期端末(synchronizing terminal)として使用され、他の端末が、参加端末(participating terminal)として使用される。同期端末は、P2Pサービスの「ホスト・コンピュータ」として機能し、参加端末のオペレーションを調整する役割を担う。詳細には、同期端末は、参加端末の動作論理フレーム値(operating logic frame value)及びユーザ入力セットを管理し、それらの機能を同期させてP2Pセッション中の情報交換を円滑にするために、異なる場所に位置する全ての端末をイネーブルにする。
しかしながら、既存の技術には欠点がある:同期端末が、意図的に又は偶発的に取り止める(withdraw)場合、参加端末は中断を余儀なくされ、P2Pプログラムは終了を余儀なくされ、これは、ユーザ経験を不満足なものにする。
上記の欠点及び既存の技術に関連する他の問題が、以下で開示する本発明により低減又は排除される。いくつかの実施形態において、本発明は、1以上のプロセッサと、メモリと、複数の機能を実行するための、メモリに記憶された1以上のモジュール、プログラム、又は命令のセットとを有するコンピュータ・システムにおいて実施される。そのような機能を実行するための命令は、1以上のプロセッサにより実行されるよう構成されたコンピュータ・プログラム製品に含まれてもよい。
本発明の1つの態様は、コンピュータ・システムにより実行されるコンピュータ実施方法(computer-implemented method)を含む。コンピュータ・システムは、同期端末の通信ステータスを検出し、同期端末は、1以上の参加端末のオペレーションを同期させるよう構成される。コンピュータ・システムは、同期端末の通信ステータスが予め定められた条件を満たすとき、参加端末からの、各参加端末に対応する動作ステータス情報をリクエストする。コンピュータ・システムはまた、参加端末によりアップロードされた対応する動作ステータス情報を受信し、各参加端末に対応する動作ステータス情報に基づいて、参加端末間のデータ差を計算する。いくつかの実施形態において、コンピュータ・システムは、各参加端末が、データ差を用いて自身と他の参加端末とを同期させるよう構成されるように、データ差を参加端末にそれぞれ送信する。最後に、コンピュータ・システムは、新たな同期端末が、残りの参加端末のオペレーションを同期させるよう構成されるように、同期の完了を示す信号を参加端末から受信した後、予め定められたルールのセットに基づいて、参加端末から新たな同期端末を選択する。
本発明の別の態様は、コンピュータ・システムを含む。コンピュータ・システムは、メモリと、1以上のプロセッサと、メモリに記憶され、1以上のプロセッサにより実行されるよう構成された1以上のプログラム・モジュールとを有する。1以上のプログラム・モジュールは、同期端末の通信ステータスを検出するよう構成された検出モジュールであって、同期端末は、1以上の参加端末のオペレーションを同期させるよう構成される、検出モジュール;同期端末の通信ステータスが、予め定められた条件を満たすとき、参加端末からの、各参加端末に対応する動作ステータス情報をリクエストするよう構成されたリクエスト・モジュール;参加端末によりアップロードされた対応する動作ステータス情報を受信するよう構成された受信モジュール;各参加端末に対応する動作ステータス情報に基づいて、参加端末間のデータ差を計算するよう構成された処理モジュール;各参加端末が、データ差を用いて自身と他の参加端末とを同期させるよう構成されるように、データ差を参加端末にそれぞれ送信するよう構成された送信モジュール;及び、新たな同期端末が、残りの参加端末のオペレーションを同期させるよう構成されるように、同期の完了を示す信号を参加端末から受信した後、予め定められたルールのセットに基づいて、参加端末から新たな同期端末を選択するよう構成された選択モジュールを含む。
本発明の別の態様は、命令を記憶した非一時的なコンピュータ読み取り可能記憶媒体を含む。その命令がコンピュータ・システムにより実行されたとき、その命令は、コンピュータ・システムに、同期端末の通信ステータスを検出させ、ここで、同期端末は、1以上の参加端末のオペレーションを同期させるよう構成される;同期端末の通信ステータスが、予め定められた条件を満たすとき、参加端末からの、各参加端末に対応する動作ステータス情報をリクエストさせ;参加端末によりアップロードされた対応する動作ステータス情報を受信させ;各参加端末に対応する動作ステータス情報に基づいて、参加端末間のデータ差を計算させ;各参加端末が、データ差を用いて自身と他の参加端末とを同期させるよう構成されるように、データ差を参加端末に対してそれぞれ送信させ;新たな同期端末が、残りの参加端末のオペレーションを同期させるよう構成されるように、同期の完了を示す信号を参加端末から受信した後、予め定められたルールのセットに基づいて、参加端末から新たな同期端末を選択させる。
いくつかの実施形態は、端末−サーバ・ネットワーク環境の端末側又はサーバ側で実施され得る。
図面とともに読まれると、本発明の上述した特徴及び利点、並びにさらなる特徴及び利点が、好ましい実施形態の詳細な説明の結果、以下においてより明確に理解されるであろう。同様の参照番号は、図面の複数のビューを通じて、対応する部分を指す。
本発明のいくつかの実施形態に従った、継続的な同期のための情報管理方法を示すフローチャート。 本発明のいくつかの実施形態に従った、サーバ、同期端末、及び2つの参加端末が継続的な同期を維持するためにどのようにインタラクトするかの概略図。 本発明のいくつかの実施形態に従った、継続的な同期を維持することができる情報管理アプリケーションにおけるモジュールを示すブロック図。 本発明のいくつかの実施形態に従った、情報管理アプリケーションにおける検出モジュールを示すブロック図。 本発明のいくつかの実施形態に従った、情報管理アプリケーションにおける処理モジュールを示すブロック図。 本発明のいくつかの実施形態に従った、情報管理アプリケーションにおける送信モジュールを示すブロック図。 本発明のいくつかの実施形態に従った、情報管理アプリケーションにおける選択モジュールを示すブロック図。 本発明のいくつかの実施形態に従ったネットワーク環境。 本発明のいくつかの実施形態に従ったサーバのブロック図。 本発明のいくつかの実施形態に従った同期端末のブロック図。 本発明のいくつかの実施形態に従った参加端末のブロック図。
これより実施形態を詳細に参照するが、その例が添付の図面に示されている。以下の詳細な説明において、多数の具体的な詳細が、本明細書で提示される主題の完全な理解を提供するために、記載されている。しかしながら、そのような主題は、具体的な詳細なく実施できることが当業者には明らかであろう。他の例において、実施形態の態様を不必要に曖昧にしないようにするために、周知の方法、手順、コンポーネント、及び回路は、詳細には説明されない。
図8は、本発明のいくつかの実施形態に従ったネットワーク環境である。ネットワーク環境800は、1以上のサーバ810、1つの同期端末825、及び1以上の参加端末(830−1、830−2)を含む。同期端末及び参加端末は、ネットワーク820(例えば、インタネット)を介して、サーバに接続される。一方、様々な参加端末は、ネットワーク820を介して、互いに通信することもできる。例えば、以下で説明するように、参加端末830−1において生成されるユーザ入力セットは、サーバ810、同期端末825、及び/又は参加端末830−2に送信され得る。ネットワーク810を介して、ネットワーク環境800における様々なエンティティは、互いに情報を交換することができる。いくつかの実施形態において、ネットワーク環境800は、オンライン・ゲーム・アプリケーションをサポートする。様々なユーザが、様々な端末からオンライン・ゲーム・アプリケーションに参加し、1つの端末が、同期端末として指定され、他の端末が、参加端末として指定され、同期端末が、参加端末のオペレーションを同期させる。サーバ810は、同期端末825及び参加端末(830−1、830−2)とインタラクトし、同期端末が取り止めたとしても、継続的な同期を維持する。
図1は、本発明のいくつかの実施形態に従った、継続的な同期のための情報管理方法を示すフローチャートである。例示の目的上、本方法は、図8に示したサーバ、同期端末、及び参加端末のうちの1つを含むコンピュータ・システムにおいて実行されるオンライン・ゲーム・アプリケーション等のネットワーク・アプリケーションにおいて実施され得る。
図2は、本発明のいくつかの実施形態に従った、サーバ、同期端末、及び2つの参加端末が継続的な同期を維持するためにどのようにインタラクトするかの概略図である。図2に示すコンピュータ・システムは、サーバ201、同期端末202、第1の参加端末203、及び第2の参加端末204を含む。しかしながら、本発明に従って実施されるコンピューティング・デバイスの数は、ネットワーク・アプリケーションの具体的な設計及び即時のシナリオに基づいて変わり得ることに留意すべきである。例えば、2以上の同期端末が存在してもよいし、1以上の任意の数の参加端末が存在してもよい。さらに、サーバ及び同期端末は、同一であってもよいし、異なるデバイスであってもよい。
図1を参照する。ステップ110:コンピュータ・システムは、同期端末の通信ステータスを検出することができ、同期端末は、1以上の参加端末のオペレーションを同期させるよう構成される。通信ステータスは、同期端末が他のコンピューティング・デバイスとどのようにインタラクトするかを反映又は指定する任意のタイプのステータスであってもよいし、同期端末からの特定のコマンド又はリクエストであってもよい。
例えば、図2に示されるように、サーバ201は、同期端末202の通信ステータス205を検出することができる。通信ステータス205は、同期端末202により自発的に送信され、サーバ201により検出されてもよいし、通信ステータス205は、サーバ201により送信された問合せの結果であって、その結果が、サーバ201により検出されてもよい。通信ステータス205は、次のようなステータスであり得るが、そのように限定されるものではない:同期端末202からのリクエスト、同期端末202とサーバ201との間の接続スピード及び安定性、同期端末202と参加端末203及び参加端末204との間の接続スピード及び安定性、同期端末202とサーバ201との間の検出の時間と最も直近のインタラクションの時間との間の時間期間。
通信ステータス205の検出の前に、同期端末202は、参加端末203及び参加端末204のオペレーションを同期させるよう構成され得る。同期端末202は、次のような機能を実行することができるが、そのように限定されるものではない:同期端末202と参加端末203及び参加端末204との動作論理フレームを同期させる;同期端末202と参加端末203及び参加端末204とのユーザ入力セットを同期させる;同期端末202と参加端末203及び参加端末204との間のデータ伝送を円滑にしモニタリングする;サーバ201と参加端末203及び参加端末204との間のデータ伝送を円滑にしモニタリングする。同期端末202の機能は、同期端末202が取り止めるとき、あるいは取り止められているときに、一時的にサーバ201又は参加端末により実行され得る。
同期端末202が取り止めた後、特に通信が中止リクエストであるとき、オプションの終了ステップが取られ得る。サーバ201は、中止リクエストが許可されたことを示す信号を同期端末202に送信することができ、同期端末202が参加端末203及び参加端末204のオペレーションをさらに同期させるのを防ぐ。
図1を参照する。ステップ120:同期端末の通信ステータスが、予め定められた条件を満たすとき、コンピュータ・システムは、参加端末からの、各参加端末に対応する動作ステータス情報をリクエストする。動作ステータス情報は、次のような複数の情報項目のうちの1以上を含み得るが、そのように限定されるものではない:動作論理フレーム値、ユーザ入力セット、レンダリング回数(rendering frequency)、ネットワーク接続ステータス、プロセッサ・スピード及び性能、並びにメモリ容量。予め定められた条件は、通信ステータスを評価するために使用することができる任意の条件であり得る。
例えば、図2に示されるように、サーバ201は、ステップ210及びステップ220においてそれぞれ参加端末203及び参加端末204からの動作ステータス情報をリクエストすることができる。参加端末203及び参加端末204は、対応する動作ステータス情報215及び動作ステータス情報225をサーバ201に提供することができる。
サーバ201は、同期端末202からの通信ステータスが予め定められた条件を満たすときのみ、動作ステータス情報をリクエストすることができる。予め定められた条件は、次のような条件であり得るが、そのように限定されるものではない:通信ステータスが、同期端末からコンピュータへの最後のレスポンス以後の時間期間が閾値を超えていることである;通信ステータスが、同期端末が1以上の参加端末のオペレーションを同期させるのをやめることを示す中止リクエストである。
ネットワーク・アプリケーションのP2Pセッション中、同期端末のユーザは、ネットワーク・アプリケーションをやめることをリクエストする場合があり、中止リクエストの形のそのような通信ステータスは、予め定められた条件を満たす。一方、電源障害やネットワーク接続異常等(これらに限定されるものではない)の様々な種類の理由により、サーバは、同期サーバとのコンタクト状態を失う場合があり、同期端末からハートビート検出ルーチン(heartbeat detection routine)へのレスポンスの失敗をもたらし得る。レスポンスの失敗が、所定の閾値を超えたとき、又は、同期端末からの最後のレスポンス以後の時間期間が、所定の閾値を超えたとき、通信ステータスは、予め定められた条件を満たす。通信ステータスの広さに部分的に起因して、予め定められた条件は、著しく変わり得る。例えば、上記でリストした条件に加えて、予め定められた条件は、サーバと同期端末との間の接続スピード(bt/秒)が閾値より小さくなることであってもよい。
いくつかの実施形態において、サーバは、全ての参加端末からの動作ステータス情報をリクエストする。上記で示したように、動作ステータス情報は、複数の情報項目のうちの1以上を含み得る。詳細には、動作ステータス情報は、動作論理フレーム値及びユーザ入力セットを含み得る。ユーザ入力セットとは、対応する参加端末のユーザにより生成されるユーザ入力イベントの集合を指す。例えば、ユーザが、マウスを動かすとき、キーストロークを押すとき、あるいは、ネットワーク・アプリケーションに影響を及ぼす任意のオペレーションに関わるとき、ユーザ入力イベントが、それに応じて生成され得、所定の時間期間における参加端末でのユーザ入力イベントの集合が、ユーザ入力セットであり得る。同様に、別の参加端末でのユーザ入力イベントが、その参加端末のユーザ入力セットとして収集され得る。ユーザ入力イベントは、例えば、異なるグラフィカル・インタフェース上のオブジェクトの動き等、ネットワーク・アプリケーションにおける1以上のオブジェクトに影響を及ぼし得る。理想的には、異なる端末における異なるグラフィカル・ユーザ・インタフェース上の同一のオブジェクトの動きは、ほとんど同時に生じるべきである。しかしながら、実際には、異なる端末において表示又は認識される同一のユーザ入力セットに対して異なる時間量を要する場合があり、これは、遅延した同期を生じさせ、ユーザ経験を低下させ得る。動作論理フレーム値とは、参加端末によりレンダリングされる動作論理フレームの数を指す。フレームのための全てのコードの実行が論理フレームであり、全てのコードの実行は、参加端末のユーザ入力セット、サーバのフレームワークに関連する計算、並びに、参加端末に関連する他のレンダリング及び計算を含み得る。参加端末からのユーザ入力セットをリクエストすることにより、サーバは、参加端末のための同期デバイスとして一時的に機能することができる。
図1を参照する。ステップ130:コンピュータ・システムはまた、参加端末によりアップロードされた対応する動作ステータス情報を受信する。
例えば、図2に示されるように、サーバ201は、参加端末203及び参加端末204からそれぞれ動作ステータス情報215及び動作ステータス情報225を受信する。上記で示したように、動作ステータス情報は、対応する参加端末の動作論理フレーム値及び対応する参加端末のユーザ入力セットを含み得る。参加端末のオペレーションの同期及び調整をさらに円滑にするために、動作ステータス情報には、他の情報項目も含まれてよいことに留意すべきである。
図1を参照する。ステップ140:コンピュータ・システムは、各参加端末に対応する動作ステータス情報に基づいて、参加端末間のデータ差を計算する。
例えば、図2に示されるように、参加端末203及び参加端末204から動作ステータス情報を受信した後、サーバ201は、動作論理フレーム値及びユーザ入力セットを含み得る動作ステータス情報を処理する。サーバ201は、参加端末203及び参加端末204それぞれからの動作論理フレーム値のうち最新の動作論理フレーム値を決定することができる;サーバ201はまた、参加端末203及び参加端末204からのユーザ入力セットのうち最新のユーザ入力セットを決定することができる。データ差は、対応する参加端末のユーザ入力セットと最新のユーザ入力セットとの間の差、及び、対応する参加端末の動作論理フレーム値と最新の動作論理フレーム値との間の差を含み得る。
例えば、第1の参加端末203からの動作ステータス情報215が、3の動作論理フレーム値と、a+b+cというユーザ入力セットとを含むと仮定し;第2の参加端末204からの動作ステータス情報225が、4の動作論理フレーム値と、a+bというユーザ入力セットとを含むと仮定する。そのような不一致は、異なるping値等の複数の理由により生じ得る。動作ステータス情報215及び動作ステータス情報225を受信した後、サーバ201は、最新の動作論理フレーム値が4(参加端末204から)であり、最新のユーザ入力セットがa+b+c(参加端末203から)であると決定する。そして、データ差は、参加端末203については[1,0]であると計算され、参加端末204については[0,c]であると計算される。
動作論理フレームは、対応するユーザ入力セットを有し得る。しかしながら、実行の遅延及び/又は入力受信の遅延に起因して、同一の参加端末からの動作論理フレーム値及びユーザ入力セットは、完全にはペアになっていない場合がある。この同期ステップは、全ての参加端末における動作論理フレーム及びユーザ入力セットを、同一の最新バージョンにすることができる。
上記で示したように、動作ステータス情報は、他の情報項目を含み得るので、データ差は、その情報項目の他の差を含み得る。一般に、サーバは、最新の情報項目を決定し、個々の参加端末からの情報項目と最新の情報項目との間の差を計算する。一般的な目標は、ネットワーク・アプリケーションが同期してスムーズに進むことができるように、参加端末が最新の動作ステータスに同期することを可能にすることである。さらに、参加端末の数は変わり得るが、同期の一般的な原理は同一のままである。
図1を参照する。ステップ150:いくつかの実施形態において、コンピュータ・システムは、各参加端末が、データ差を用いて自身と他の参加端末とを同期させるよう構成されるように、データ差を参加端末にそれぞれ送信する。
例えば、図2に示されるように、サーバ201は、ステップ240及びステップ250においてそれぞれ参加端末203及び参加端末204にデータ差を送信する。対応する参加端末は、データ差を用いて自身と他の参加端末とを同期させるよう構成される。詳細には、参加端末203及び参加端末204は、対応する同期機能を使用して、サーバ201から送信されたデータ差に基づいて、動作論理フレーム及びユーザ入力セットを実行することができる。特定の参加端末が、動作論理フレームにおいてNフレーム遅れている場合、その端末は、最新の動作論理フレームに進めるために、Nフレーム分レンダリングする。特定の参加端末が、ユーザ入力セットcを欠落している場合、その参加端末は、ユーザ入力セットcを実行する。
同期の後、参加端末203及び参加端末204は、同期が無事完了したことを示す信号をサーバ201に送信することができる。サーバ201は、この信号を受信することができ、次のステップが開始される。
図1を参照する。ステップ160:コンピュータ・システムは、新たな同期端末が、残りの参加端末のオペレーションを同期させるよう構成されるように、同期の完了を示す信号を参加端末から受信した後、予め定められたルールのセットに基づいて、参加端末から新たな同期端末を選択する。
例えば、図2に示されるように、サーバ201は、選択機能260を使用して、予め定められたルールが満たされるかどうかをテストする。予め定められたルールは、新たな同期端末の選択を決定し得るあるいは円滑にし得る任意の種類のルールであり得る。例えば、予め定められたルールは、(a)全ての参加端末のハードウェア性能に基づいて第1位にランク付けされた参加端末が、新たな同期端末として選択される;(b)全ての参加端末の接続安定性に基づいて第1位にランク付けされた参加端末が、新たな同期端末として選択される;(c)全ての参加端末の事前既存リスト(pre-existing list)上で第1位にランク付けされた参加端末が、新たな同期端末として選択される;(d)参加端末が、全ての参加端末からランダムに選択され、新たな同期端末とされる、ことであり得る。詳細には、ハードウェア性能は、クロック・スピード及びプロセッサの数により評価され得、接続安定性は、ネットワーク遅延及び変動により評価され得る。予め定められたルールは、上記でリストしたものから変わってもよいし、上記でリストしたルールのうちいくつかを組み合わせてもよいことに留意すべきである。選択機能260は、予め定められたルールを使用して、参加端末から新たな同期端末を選択する。
選択の後、サーバ201は、図2のステップ270及びステップ280に示されるように、元の参加端末203及び参加端末204に新たな同期端末が選択されたことを通知する信号を送信することができる。この通知プロセスは、設定に応じて、及びどの参加端末が選択されたかに応じて変わり得る。例えば、参加端末203が、新たな同期端末として選択された場合、サーバ201は、元の参加端末203が同期端末として選択されたことを残りの参加端末204にのみ通知することができる;代替的に、サーバ201は、元の参加端末203及び参加端末204の双方に通知してもよい。次いで、新たな同期端末は、同期端末と残りの参加端末とを同期させる役割を担う。サーバ201は、参加端末を同期させる役割から解放される。
通知が、参加端末203及び参加端末204の双方に送信される場合、個々の参加端末は、自身が新たな同期端末として選択されたかどうかに関する通知を受信する。参加端末が、自身が新たな同期端末として選択されたと分かった場合、その参加端末は、残りの参加端末のオペレーションを調整するために、一連の同期プロセスを開始することができる。
上記で示したように、本システムにおけるコンピューティング・デバイスの数及び指定は変わり得る。2以上の同期端末が存在してもよいし、1以上の参加端末が存在してもよい。サーバ及び同期端末は、1つのデバイスであってよく、新たな同期端末の選択は、そのサーバが、参加端末の同期にもはや関与しないことを示す。
図3〜図7及び図9〜図11は、上述した方法を実行するために使用することができるコンピュータ・システムを示している。冗長さを避けるために、方法に関して説明した全ての詳細及び変形が、本明細書において、デバイスに対しても含まれるわけではない。そのような詳細及び変形は、提供した特定の説明と直接的に対立しない限り、デバイスの説明に関しても含まれるとみなされるべきである。
図3は、本発明のいくつかの実施形態に従った、継続的な同期を維持することができる情報管理アプリケーションにおけるモジュールを示すブロック図である。図3は、同期端末の通信ステータスを検出するよう構成された検出モジュール310であって、同期端末は、1以上の参加端末のオペレーションを同期させるよう構成される、検出モジュール310;同期端末の通信ステータスが、予め定められた条件を満たすとき、参加端末からの、各参加端末に対応する動作ステータス情報をリクエストするよう構成されたリクエスト・モジュール320;参加端末によりアップロードされた対応する動作ステータス情報を受信するよう構成された受信モジュール330;各参加端末に対応する動作ステータス情報に基づいて、参加端末間のデータ差を計算するよう構成された処理モジュール340;各参加端末が、データ差を用いて自身と他の参加端末とを同期させるよう構成されるように、データ差を参加端末にそれぞれ送信するよう構成された送信モジュール350;及び、新たな同期端末が、残りの参加端末のオペレーションを同期させるよう構成されるように、同期の完了を示す信号を参加端末から受信した後、予め定められたルールのセットに基づいて、参加端末から新たな同期端末を選択するよう構成された選択モジュール360を示している。
上記で示したように、予め定められた条件は、通信ステータスが、同期端末からコンピュータへの最後のレスポンス以後の時間期間が閾値を超えていることである;又は、通信ステータスが、同期端末が1以上の参加端末のオペレーションを同期させるのをやめることを示す中止リクエストである、ことであり得る。
図4は、本発明のいくつかの実施形態に従った、情報管理アプリケーションにおける検出モジュール310を示すブロック図である。検出モジュール310は、同期端末の通信ステータスを検出するよう構成された通信ステータス検出モジュール410;及び、同期端末が参加端末のオペレーションをさらに同期させるのを防ぐよう構成された終了モジュール420を含み得る。終了モジュール420は、所定の実施形態において実装されるオプションの構成である。
図5は、本発明のいくつかの実施形態に従った、情報管理アプリケーションにおける処理モジュール340を示すブロック図である。処理モジュール340は、最新フレーム/入力決定モジュール510及びデータ差計算モジュール520を含み得る。
上記で示したように、動作ステータス情報は、対応する参加端末の動作論理フレーム値及び対応する参加端末のユーザ入力セットを含み得る。詳細には、最新フレーム/入力決定モジュール510は、参加端末からの動作論理フレーム値のうち最新の動作論理フレーム値を決定するよう構成される;最新フレーム/入力決定モジュール510はまた、参加端末からのユーザ入力セットのうち最新のユーザ入力セットを決定するよう構成される;データ差計算モジュール520は、対応する参加端末のユーザ入力セットと最新のユーザ入力セットとの間の差、及び、対応する参加端末の動作論理フレーム値と最新の動作論理フレーム値との間の差を含むデータ差を計算するよう構成される。
図6は、本発明のいくつかの実施形態に従った、情報管理アプリケーションにおける送信モジュール350を示すブロック図である。送信モジュール350は、参加端末にデータ差を送信するよう構成されたデータ差送信モジュール610;及び、オプションで、データ差を用いて参加端末を同期させることに関して、個々の参加端末に指示するよう構成された同期指示モジュール620を含み得る。
図7は、本発明のいくつかの実施形態に従った、情報管理アプリケーションにおける選択モジュール360を示すブロック図である。選択モジュール360は、新たな同期端末選択モジュール710及び通知モジュール720を含み得る。新たな同期端末選択モジュール710は、予め定められたルールのセットに基づいて、参加端末から新たな同期端末を選択するよう構成される。通知モジュール720は、新たな同期端末に関する通知信号を残りの全ての参加端末に送信するよう構成される。
予め定められたルールは、(a)全ての参加端末のハードウェア性能に基づいて第1位にランク付けされた参加端末が、新たな同期端末として選択される;(b)全ての参加端末の接続安定性に基づいて第1位にランク付けされた参加端末が、新たな同期端末として選択される;(c)全ての参加端末の事前既存リスト上で第1位にランク付けされた参加端末が、新たな同期端末として選択される;(d)参加端末が、全ての参加端末からランダムに選択され、新たな同期端末とされる、ことからなる群から選択され得る。ここで、ハードウェア性能は、クロック・スピード及びプロセッサの数により評価され、接続安定性は、ネットワーク遅延及び変動により評価される。
図9は、本発明のいくつかの実施形態に従った例示的なサーバのブロック図である。例示的なサーバ810は、通常、1以上の処理ユニット(CPU)902、1以上のネットワーク・インタフェース又は他の通信インタフェース904、メモリ910、及びそれらのコンポーネントを相互接続するための1以上の通信バス909を含む。通信バス909は、システム・コンポーネント間の通信を相互接続し制御する回路(チップセットと呼ばれることもある)を含み得る。サーバ810は、例えば、ディスプレイ906及びキーボード908等のユーザ入力デバイス905を含み得る。メモリ910は、高速ランダム・アクセス・メモリを含み得、1以上の磁気ディスク記憶デバイス等の不揮発性メモリを含み得る。メモリ910は、CPU902からリモートに位置する大容量ストレージを含み得る。いくつかの実施形態において、メモリ910は、以下のプログラム、モジュール、及びデータ構造、又はそのサブセット若しくはそのスーパセットを記憶する:
・様々な基本システム・サービスを扱う手順及びハードウェア依存のタスクを実行する手順を含むオペレーティング・システム912;
・インタネット、他のワイド・エリア・ネットワーク、ローカル・エリア・ネットワーク、メトロポリタン・エリア・ネットワーク等の1以上の通信ネットワーク(有線又は無線)を介して、サーバ810を同期端末、参加端末、及び/又は他のコンピュータに接続するために使用されるネットワーク通信モジュール914;
・サーバ810の適切なオペレーションのために必要とされる、メモリ910に記憶された他のモジュール及びデータ構造を初期化するシステム初期化モジュール916;
・ユーザ・インタフェース905を介してユーザ入力を受信するよう構成されたユーザ・インタフェース・モジュール918;及び
・1以上のサーバ側ネットワーク・アプリケーション920。各ネットワーク・アプリケーションは、さらに、図3に関連して上述した検出モジュール310、リクエスト・モジュール320、受信モジュール330、処理モジュール340、送信モジュール350、及び選択モジュール360を含む。
図10は、本発明のいくつかの実施形態に従った同期端末825のブロック図である。例示的な同期端末825は、通常、1以上の処理ユニット(CPU)1002、1以上のネットワーク・インタフェース又は他の通信インタフェース1004、メモリ1010、及びそれらのコンポーネントを相互接続するための1以上の通信バス1009を含む。通信バス1009は、システム・コンポーネント間の通信を相互接続し制御する回路(チップセットと呼ばれることもある)を含み得る。同期端末825は、例えば、ディスプレイ1006及びキーボード1008等のユーザ・インタフェース1005を含み得る。同期端末825がスマートフォンである場合、ユーザ・インタフェース1005は、表示及び入力の両方に適したタッチ・スクリーンであり得る。メモリ1010は、高速ランダム・アクセス・メモリを含み得、1以上の磁気ディスク記憶デバイス等の不揮発性メモリを含み得る。メモリ1010は、CPU1002からリモートに位置する大容量ストレージを含み得る。いくつかの実施形態において、メモリ1010は、以下のプログラム、モジュール、及びデータ構造、又はそのサブセット若しくはそのスーパセットを記憶する:
・様々な基本システム・サービスを扱う手順及びハードウェア依存のタスクを実行する手順を含むオペレーティング・システム1012;
・インタネット、他のワイド・エリア・ネットワーク、ローカル・エリア・ネットワーク、メトロポリタン・エリア・ネットワーク等の1以上の通信ネットワーク(有線又は無線)を介して、同期端末825をサーバ810及び/又は参加端末に接続するために使用されるネットワーク通信モジュール1014;
・ユーザ・インタフェース1005を介してユーザ入力を受信するよう構成されたオプションのユーザ・インタフェース・モジュール1016;及び
・1以上の端末側ネットワーク・アプリケーション1018。各ネットワーク・アプリケーションは、さらに、通信ステータスの形の中止リクエストをサーバに送信するよう構成された中止リクエスト・モジュール1020、参加端末を同期させる同期端末825の機能を終了させるよう構成された終了モジュール1030、及び、同期端末825がそのような機能をやめていないときに参加端末のオペレーションを同期させるよう構成されたリモート端末同期モジュール1040を含む。
図11は、本発明のいくつかの実施形態に従った参加端末830−1のブロック図である。例示的な参加端末830−1は、通常、1以上の処理ユニット(CPU)1102、1以上のネットワーク・インタフェース又は他の通信インタフェース1104、メモリ1110、及びそれらのコンポーネントを相互接続するための1以上の通信バス1109を含む。通信バス1109は、システム・コンポーネント間の通信を相互接続し制御する回路(チップセットと呼ばれることもある)を含み得る。参加端末830−1は、例えば、ディスプレイ1106及びキーボード1108等のユーザ・インタフェース1105を含み得る。参加端末830−1がスマートフォンである場合、ユーザ・インタフェース1105は、表示及び入力の両方に適したタッチ・スクリーンであり得る。メモリ1110は、高速ランダム・アクセス・メモリを含み得、1以上の磁気ディスク記憶デバイス等の不揮発性メモリを含み得る。メモリ1110は、CPU1102からリモートに位置する大容量ストレージを含み得る。いくつかの実施形態において、メモリ1110は、以下のプログラム、モジュール、及びデータ構造、又はそのサブセット若しくはそのスーパセットを記憶する:
・様々な基本システム・サービスを扱う手順及びハードウェア依存のタスクを実行する手順を含むオペレーティング・システム1112;
・インタネット、他のワイド・エリア・ネットワーク、ローカル・エリア・ネットワーク、メトロポリタン・エリア・ネットワーク等の1以上の通信ネットワーク(有線又は無線)を介して、同期端末825をサーバ810及び/又は参加端末に接続するために使用されるネットワーク通信モジュール1114;
・ユーザ・インタフェース1105を介してユーザ入力を受信するよう構成されたオプションのユーザ・インタフェース・モジュール1116;及び
・1以上の端末側ネットワーク・アプリケーション1118。各ネットワーク・アプリケーションは、さらに、動作ステータス情報をサーバ810に送信するよう構成された動作ステータス情報伝送モジュール1120、データ差に基づいて参加端末830−1を同期させるよう構成されたデータ差処理モジュール1130、及び、サーバが新たな同期端末として参加端末830−1を選択したときに、参加端末のオペレーションを同期させるよう構成されたリモート端末同期モジュール1140を含む。
特定の実施形態について上記で説明したが、本発明をそのような特定の実施形態に限定する意図はないことを理解されたい。そうではなく、本発明は、添付の特許請求の範囲の精神及び範囲内にある代替例、修正例、及び均等例を含む。本明細書で提示した主題の完全な理解を提供するために、多数の具体的な詳細について説明した。しかしながら、そのような主題は、具体的な詳細なく実施できることが当業者には明らかであろう。他の例において、実施形態の態様を不必要に曖昧にしないようにするために、周知の方法、手順、コンポーネント、及び回路は、詳細には説明していない。
本明細書における本発明の説明において使用される用語は、特定の実施形態を説明する目的のみに使用されるものであり、本発明を限定するよう意図されてはいない。本発明の説明及び添付の特許請求の範囲において使用されるとき、「a」、「an」、及び「the」という単数形は、文脈が他の場合を明確に表さない限り、複数形も含むよう意図されている。また、本明細書において使用される用語「及び/又は、且つ/あるいは(and/or)」は、関連するリストされた項目の1以上の任意の及び全ての可能な組合せを指し、そのような組合せを包含することを理解されたい。さらに、用語「含む、備える、有する」等は、本明細書において使用されるとき、記載された特徴、オペレーション、要素、及び/又はコンポーネントの存在を示すものであるが、1以上の他の特徴、オペレーション、要素、コンポーネント、及び/又はそれらのグループの存在又は追加を排除しない。
本明細書において使用されるとき、用語「ならば、場合(if)」は、文脈に応じて、記載された先行する条件が真である「とき(when)」、「とき(upon)」、「と判定したことに応じて」、「と判定したことに従って」、又は「と検知したことに応じて」を意味するよう解釈され得る。同様に、「(記載された先行する条件が真である)と判定された場合」、「(記載された先行する条件が真である)場合」、又は「(記載された先行する条件が真である)とき」という語句は、文脈に応じて、記載された先行する条件が真である「と判定したとき」、「と判定したことに応じて」、「と判定したことに従って」、「と検知したとき」、又は「と検知したことに応じて」を意味するよう解釈され得る。
様々な図面のいくつかは、特定の順番の複数の論理的段階を示しているが、順番に依存しない段階は並び替えられてもよく、他の段階が組み合されてもよいし、他の段階が生じてもよい。いくらかの並び替え又は他のグルーピングが具体的に記載されたが、他の並び替えやグルーピングも当業者には明らかであり、したがって、代替例の網羅的なリストを表すわけではない。さらに、そのような段階は、ハードウェア、ファームウェア、ソフトウェア、又はそれらの任意の組合せにより実装され得ることを認識すべきである。
説明を目的とする上記の記載が特定の実施形態を参照しながら説明された。しかしながら、上記の例示的な説明は、網羅的であるよう、すなわち、本発明を開示した正確な形態に限定するよう意図されるものではない。上記の教示の観点から、多くの修正及び変形が可能である。本発明の原理及びその実際の適用を最良に説明するために、実施形態が選択され説明された。それにより、当業者は、本発明と、意図される特定の使用に適した様々な変形例を含む様々な実施形態とを最良に利用することが可能となる。

Claims (24)

  1. サーバと同期端末と1以上の参加端末とを含むネットワーク・シナリオに適用可能な、情報管理のためのコンピュータ実施方法であって、
    1以上のプロセッサと、前記1以上のプロセッサにより実行されるプログラムを記憶するメモリとを有する前記サーバにおいて、
    前記同期端末の通信ステータスを検出する検出ステップであって、前記同期端末は、前記1以上の参加端末のオペレーションを同期させるよう構成される、検出ステップと、
    前記同期端末の前記通信ステータスが、予め定められた条件を満たすとき、前記参加端末のそれぞれに対して、各参加端末動作ステータス情報をリクエストするステップと、
    前記参加端末によりアップロードされた対応する前記動作ステータス情報を受信するステップと、
    各参加端末に対応する前記動作ステータス情報に基づいて、前記参加端末間のデータ差を計算するステップと、
    各参加端末が、前記データ差を用いて自身と他の参加端末とを同期させるよう構成されるように、前記データ差を前記参加端末にそれぞれ送信するステップと、
    新たな同期端末が、前記新たな同期端末と、前記参加端末から前記新たな同期端末を除いた残りの参加端末と、を同期させるよう構成されるように、同期の完了を示す信号を前記参加端末から受信した後、予め定められたルールのセットに基づいて、前記参加端末から前記新たな同期端末を選択するステップと、
    を含む、コンピュータ実施方法。
  2. 前記予め定められた条件は、前記通信ステータスが、前記同期端末から前記サーバへの最後のレスポンス以後の時間期間が閾値を超えていることであることを含む、請求項1記載のコンピュータ実施方法。
  3. 前記予め定められた条件は、前記通信ステータスが、前記同期端末が前記1以上の参加端末のオペレーションを同期させるのをやめることを示す中止リクエストであることを含む、請求項1記載のコンピュータ実施方法。
  4. 前記動作ステータス情報は、対応する前記参加端末の動作論理フレーム値及び対応する前記参加端末のユーザ入力セットを含む、請求項1記載のコンピュータ実施方法。
  5. 前記参加端末からの前記動作論理フレーム値のうち最新の動作論理フレーム値を決定するステップと、
    前記参加端末からの前記ユーザ入力セットのうち最新のユーザ入力セットを決定するステップと、
    をさらに含み、
    前記データ差は、対応する前記参加端末の前記ユーザ入力セットと前記最新のユーザ入力セットとの間の差、及び、対応する前記参加端末の前記動作論理フレーム値と前記最新の動作論理フレーム値との間の差を含む、請求項4記載のコンピュータ実施方法。
  6. 各参加端末は、前記データ差に基づいて、自身のユーザ入力セットを前記最新のユーザ入力セットに調整し、自身の動作論理フレームを前記最新の動作論理フレーム値に合うようレンダリングすることにより、自身と他の参加端末とを同期させるよう構成される、請求項5記載のコンピュータ実施方法。
  7. 前記予め定められたルールは、
    (a)全ての参加端末のハードウェア性能に基づいて第1位にランク付けされた参加端末が、前記新たな同期端末として選択される;
    (b)全ての参加端末の接続安定性に基づいて第1位にランク付けされた参加端末が、前記新たな同期端末として選択される;
    (c)全ての参加端末の事前既存リスト上で第1位にランク付けされた参加端末が、前記新たな同期端末として選択される;及び
    (d)参加端末が、全ての参加端末からランダムに選択され、前記新たな同期端末とされる
    ことからなる群から選択される、請求項1記載のコンピュータ実施方法。
  8. 前記ハードウェア性能は、クロック・スピード及びプロセッサの数により評価され、前記接続安定性は、ネットワーク遅延及び変動により評価される、請求項7記載のコンピュータ実施方法。
  9. 前記新たな同期端末に関する通知信号を残りの全ての参加端末に送信するステップ
    をさらに含む、請求項1記載のコンピュータ実施方法。
  10. サーバと同期端末と1以上の参加端末とを含むネットワーク・シナリオに適用可能なコンピュータ・システムであって、
    1以上のプロセッサと、
    メモリと、
    を備え、
    前記1以上のプロセッサは、前記メモリに記憶された1以上のプログラム・モジュールを実行し、前記1以上のプログラム・モジュールは、
    前記同期端末の通信ステータスを検出するよう構成された検出モジュールであって、前記同期端末は、前記1以上の参加端末のオペレーションを同期させるよう構成される、検出モジュールと、
    前記同期端末の前記通信ステータスが、予め定められた条件を満たすとき、前記参加端末のそれぞれに対して、各参加端末動作ステータス情報をリクエストするよう構成されたリクエスト・モジュールと、
    前記参加端末によりアップロードされた対応する前記動作ステータス情報を受信するよう構成された受信モジュールと、
    各参加端末に対応する前記動作ステータス情報に基づいて、前記参加端末間のデータ差を計算するよう構成された処理モジュールと、
    各参加端末が、前記データ差を用いて自身と他の参加端末とを同期させるよう構成されるように、前記データ差を前記参加端末にそれぞれ送信するよう構成された送信モジュールと、
    新たな同期端末が、前記新たな同期端末と、前記参加端末から前記新たな同期端末を除いた残りの参加端末と、を同期させるよう構成されるように、同期の完了を示す信号を前記参加端末から受信した後、予め定められたルールのセットに基づいて、前記参加端末から前記新たな同期端末を選択するよう構成された選択モジュールと、
    を含む、コンピュータ・システム。
  11. 前記予め定められた条件は、
    前記通信ステータスが、前記同期端末から前記サーバへの最後のレスポンス以後の時間期間が閾値を超えていることである;及び
    前記通信ステータスが、前記同期端末が前記1以上の参加端末のオペレーションを同期させるのをやめることを示す中止リクエストである
    ことからなる群から選択される、請求項10記載のコンピュータ・システム。
  12. 前記動作ステータス情報は、対応する前記参加端末の動作論理フレーム値及び対応する前記参加端末のユーザ入力セットを含む、請求項10記載のコンピュータ・システム。
  13. 前記処理モジュールは、最新フレーム/入力決定モジュール及びデータ差計算モジュールを含み、
    前記最新フレーム/入力決定モジュールは、前記参加端末からの前記動作論理フレーム値のうち最新の動作論理フレーム値を決定するよう前記1以上のプロセッサにより実行され
    前記最新フレーム/入力決定モジュールは、前記参加端末からの前記ユーザ入力セットのうち最新のユーザ入力セットを決定するよう前記1以上のプロセッサにより実行され
    前記データ差計算モジュールは、対応する前記参加端末の前記ユーザ入力セットと前記最新のユーザ入力セットとの間の差、及び、対応する前記参加端末の前記動作論理フレーム値と前記最新の動作論理フレーム値との間の差を含む前記データ差を計算するよう前記1以上のプロセッサにより実行される、請求項12記載のコンピュータ・システム。
  14. 前記送信モジュールは
    対応する前記参加端末の前記ユーザ入力セットと前記最新のユーザ入力セットとの間の前記差、及び、対応する前記参加端末の前記動作論理フレーム値と前記最新の動作論理フレーム値との間の前記差を、対応する前記参加端末に送信するよう前記1以上のプロセッサにより実行されるデータ差送信モジュールと、
    自身のユーザ入力セットを前記最新のユーザ入力セットに調整し、自身の動作論理フレームを前記最新の動作論理フレーム値に合うようレンダリングすることにより、自身と他の参加端末とを同期させるよう各参加端末に指示するよう前記1以上のプロセッサにより実行される同期指示モジュールと、
    を含む、請求項13記載のコンピュータ・システム。
  15. 前記予め定められたルールは、
    (a)全ての参加端末のハードウェア性能に基づいて第1位にランク付けされた参加端末が、前記新たな同期端末として選択される;
    (b)全ての参加端末の接続安定性に基づいて第1位にランク付けされた参加端末が、前記新たな同期端末として選択される;
    (c)全ての参加端末の事前既存リスト上で第1位にランク付けされた参加端末が、前記新たな同期端末として選択される;及び
    (d)参加端末が、全ての参加端末からランダムに選択され、前記新たな同期端末とされる
    ことからなる群から選択される、請求項10記載のコンピュータ・システム。
  16. 前記ハードウェア性能は、クロック・スピード及びプロセッサの数により評価され、前記接続安定性は、ネットワーク遅延及び変動により評価される、請求項15記載のコンピュータ・システム。
  17. 前記送信モジュールは、
    前記参加端末から前記新たな同期端末を選択するモジュールを選択するよう前記1以上のプロセッサにより実行される新たな同期端末と、
    前記新たな同期端末に関する通知信号を残りの全ての参加端末に送信するよう前記1以上のプロセッサにより実行される少なくとも1つの通知モジュールと、
    を含む、請求項10記載のコンピュータ・システム。
  18. 1以上の命令を記憶したコンピュータ読み取り可能記憶媒体であって、前記命令が、サーバと同期端末と1以上の参加端末とを含むネットワーク・シナリオに適用可能なコンピュータ・システムにより実行されたとき、前記命令は、前記コンピュータ・システムに、
    前記同期端末の通信ステータスを検出させ、ここで、前記同期端末は、前記1以上の参加端末のオペレーションを同期させるよう構成される、
    前記同期端末の前記通信ステータスが、予め定められた条件を満たすとき、前記参加端末のそれぞれに対して、各参加端末動作ステータス情報をリクエストさせ、
    前記参加端末によりアップロードされた対応する前記動作ステータス情報を受信させ、
    各参加端末に対応する前記動作ステータス情報に基づいて、前記参加端末間のデータ差を計算させ、
    各参加端末が、前記データ差を用いて自身と他の参加端末とを同期させるよう構成されるように、前記データ差を前記参加端末に対してそれぞれ送信させ、
    新たな同期端末が、前記新たな同期端末と、前記参加端末から前記新たな同期端末を除いた残りの参加端末と、を同期させるよう構成されるように、同期の完了を示す信号を前記参加端末から受信した後、予め定められたルールのセットに基づいて、前記参加端末から前記新たな同期端末を選択させる、コンピュータ読み取り可能記憶媒体。
  19. 前記予め定められた条件は、
    前記通信ステータスが、前記同期端末から前記サーバへの最後のレスポンス以後の時間期間が閾値を超えていることである;及び
    前記通信ステータスが、前記同期端末が前記1以上の参加端末のオペレーションを同期させるのをやめることを示す中止リクエストである
    ことからなる群から選択される、請求項18記載のコンピュータ読み取り可能記憶媒体。
  20. 前記動作ステータス情報は、対応する前記参加端末の動作論理フレーム値及び対応する前記参加端末のユーザ入力セットを含み、
    各参加端末に対応する前記動作ステータス情報に基づいて、前記参加端末間のデータ差を計算させる前記命令は、さらに、
    前記参加端末からの前記動作論理フレーム値のうち最新の動作論理フレーム値を決定させることと、
    前記参加端末からの前記ユーザ入力セットのうち最新のユーザ入力セットを決定させることと、
    を含み、
    各参加端末に対応する前記動作ステータス情報に基づいて、前記参加端末間のデータ差を計算させる前記命令は、さらに、
    対応する前記参加端末の前記ユーザ入力セットと前記最新のユーザ入力セットとの間の差、及び、対応する前記参加端末の前記動作論理フレーム値と前記最新の動作論理フレーム値との間の差を計算させること
    を含む、請求項18記載のコンピュータ読み取り可能記憶媒体。
  21. 各参加端末は、前記データ差に基づいて、自身のユーザ入力セットを前記最新のユーザ入力セットに調整し、自身の動作論理フレーム値を前記最新の動作論理フレーム値に合うようレンダリングすることにより、自身と他の参加端末とを同期させるよう構成される、請求項20記載のコンピュータ読み取り可能記憶媒体。
  22. 前記予め定められたルールは、
    (a)全ての参加端末のハードウェア性能に基づいて第1位にランク付けされた参加端末が、前記新たな同期端末として選択される;
    (b)全ての参加端末の接続安定性に基づいて第1位にランク付けされた参加端末が、前記新たな同期端末として選択される;
    (c)全ての参加端末の事前既存リスト上で第1位にランク付けされた参加端末が、前記新たな同期端末として選択される;及び
    (d)参加端末が、全ての参加端末からランダムに選択され、前記新たな同期端末とされる
    ことからなる群から選択される、請求項18記載のコンピュータ読み取り可能記憶媒体。
  23. 前記ハードウェア性能は、クロック・スピード及びプロセッサの数により評価され、前記接続安定性は、ネットワーク遅延及び変動により評価される、請求項22記載のコンピュータ読み取り可能記憶媒体。
  24. 前記命令は、さらに、
    前記新たな同期端末に関する通知信号を残りの全ての参加端末に対して送信させること
    を含む、請求項18記載のコンピュータ読み取り可能記憶媒体。
JP2015530288A 2012-09-13 2013-09-11 情報管理方法及びデバイス Active JP5866077B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201210338451.7 2012-09-13
CN201210338451.7A CN103685388B (zh) 2012-09-13 2012-09-13 信息管理的方法和装置
PCT/CN2013/083309 WO2014040535A1 (en) 2012-09-13 2013-09-11 Information management method and device

Publications (2)

Publication Number Publication Date
JP2015537267A JP2015537267A (ja) 2015-12-24
JP5866077B2 true JP5866077B2 (ja) 2016-02-17

Family

ID=50277625

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015530288A Active JP5866077B2 (ja) 2012-09-13 2013-09-11 情報管理方法及びデバイス

Country Status (5)

Country Link
EP (1) EP2896187B1 (ja)
JP (1) JP5866077B2 (ja)
KR (1) KR101571374B1 (ja)
CN (1) CN103685388B (ja)
WO (1) WO2014040535A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104253842B (zh) 2013-06-28 2018-03-06 华为技术有限公司 同步终端镜像的方法、装置、终端及服务器
KR101536580B1 (ko) * 2013-08-27 2015-07-15 삼성에스디에스 주식회사 요금 지불 방법 및 그 장치
CN108804206B (zh) * 2017-04-26 2021-04-09 武汉斗鱼网络科技有限公司 同步任务的处理方法及系统
US20200269140A1 (en) * 2019-02-27 2020-08-27 Mz Ip Holdings, Llc Lockstep client-server architecture
CN111744177B (zh) * 2020-07-28 2021-06-25 腾讯科技(深圳)有限公司 游戏数据处理方法和装置、存储介质和电子设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7421471B2 (en) * 2002-05-17 2008-09-02 Sony Computer Entertainment America Inc. Configuration switching: dynamically changing between network communication architectures
US8131802B2 (en) * 2007-10-05 2012-03-06 Sony Computer Entertainment America Llc Systems and methods for seamless host migration
JPWO2006118128A1 (ja) * 2005-04-28 2008-12-18 株式会社キズナキャスト 情報表示システム
CN1992705A (zh) * 2005-12-31 2007-07-04 英业达股份有限公司 一种达成移动装置游戏同步的方法及其系统
US20090043867A1 (en) * 2007-08-06 2009-02-12 Apple Inc. Synching data
US8631161B2 (en) * 2008-09-30 2014-01-14 Andrei B. Lavrov Computer program product, system and method for field management and mobile inspection
US9449614B2 (en) 2009-08-14 2016-09-20 Skype Controlling multi-party communications
CN101815084B (zh) * 2009-12-31 2012-11-07 优视科技有限公司 一种用于用户终端文件管理系统及其应用方法
JP2012078901A (ja) * 2010-09-30 2012-04-19 Brother Ind Ltd サーバ装置、ページ送信プログラム、及びページ送信方法
CN102469123B (zh) * 2010-11-09 2015-04-08 腾讯科技(深圳)有限公司 网络游戏数据同步的系统及方法
CN102404387B (zh) * 2011-10-25 2015-12-16 上海聚力传媒技术有限公司 一种用于与其他节点进行信息同步的方法、装置和设备

Also Published As

Publication number Publication date
CN103685388A (zh) 2014-03-26
EP2896187B1 (en) 2016-08-03
JP2015537267A (ja) 2015-12-24
KR101571374B1 (ko) 2015-12-04
WO2014040535A1 (en) 2014-03-20
KR20150046372A (ko) 2015-04-29
CN103685388B (zh) 2015-01-07
EP2896187A4 (en) 2015-09-02
EP2896187A1 (en) 2015-07-22

Similar Documents

Publication Publication Date Title
US9350803B2 (en) Information management method and device
JP5866077B2 (ja) 情報管理方法及びデバイス
US9272217B1 (en) System and method for providing notifications to players of games
JP7058042B2 (ja) オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、クライアント端末、及びオンラインゲームの同期プログラム
EP3807766B1 (en) Shadow tracking of real-time interactive simulations for complex system analysis
US20190022527A1 (en) Game management method, game management system, and game management program for synchronizing game progress at a plurality of devices in different communication states
AU2013286747A1 (en) System and method for clustering of mobile devices and applications
CN107241418A (zh) 一种负载均衡方法、装置、设备和计算机可读存储介质
US20140228129A1 (en) Server data update method and system
US11697065B2 (en) Transferring control elements for a gaming session between devices
CN113440863B (zh) 多人在线游戏的处理方法及装置、电子设备、存储介质
US8751564B2 (en) Reducing latency for served applications by anticipatory preprocessing
EP2776934B1 (en) Management apparatus and control method of management apparatus
CN114432693A (zh) 一种数据同步方法、设备及介质
CN115487489A (zh) 排行榜生成方法、装置、存储介质及计算机设备
JP2013250591A (ja) 二重化制御システム、二重化制御方法及び二重化制御プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151215

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151228

R150 Certificate of patent or registration of utility model

Ref document number: 5866077

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250