(57)【要約】【課題】広域分散型ネットワークにおいて情報を伝達するための方法及び装置。【解決手段】方法及び装置は、第１のエンドポイントから情報を受信すること、第２のエンドポイントから情報を受信すること、及び最初に受信された情報を宛て先エンドポイントに転送すること、を提供する。方法及び装置は、しかも、アクセス装置（２０２）から情報の要求を受信すること、及び情報が要求しているアクセス装置（２０６）への配信に適したフォーマットで利用できるのであれば、アクセス装置（２０４）に情報を配信すること、を提供する。情報が利用できないのであれば、方法及び装置は、宛て先エンドポイントから要求された情報をアクセスすること、受信した情報を要求しているアクセス装置への配信に適したフォーマットに変換すること、及び要求しているアクセス装置に情報を配信すること、をさらに提供する。方法及び装置は、しかも、エンドポイントから情報をアクセスすること、情報を適切なフォーマットに変換すること、及びアクセス装置が情報を受信する準備ができているのであれば、アクセス装置に変換された情報を配信するが、アクセス装置が情報を受信する準備ができていないのであれば、変換された情報を待ち行列に入れること、を提供する。
2006511865.tif 000002
【特許請求の範囲】
【請求項１】
複数の起点エンドポイントから宛て先エンドポイントに情報を提供するための方法であって、該方法は：
第１の起点エンドポイントから情報を受信すること、該情報は第１の起点エンドポイント、第１の起点エンドポイントにおける情報のバージョン、及び情報を最後に変更したエンドポイントを識別する；
少なくとも１の第２の起点エンドポイントから情報を受信すること、該情報は第２の起点エンドポイント、第２の起点エンドポイントにおける情報のバージョン、及び情報を最後に変更したエンドポイントを識別する；
第１の起点エンドポイント又は第２の起点エンドポイントのいずれかから最初に受信された情報を宛て先エンドポイントに転送すること；及び
宛て先エンドポイントに転送された情報に基づいて、情報のバージョン及び宛て先エンドポイントにおいて情報を最後に変更したエンドポイントを更新すること、
を具備する。
【請求項２】
請求項１の方法であって、最初に受信された情報の後に受信される情報が宛て先エンドポイントに到着することを阻止することをさらに含む。
【請求項３】
請求項１の方法であって、
第１のエンドポイント、第２のエンドポイント、及び宛て先エンドポイントが同じ情報のバージョン及び情報を最後に変更した同じエンドポイントを有するように、その情報が最初に受信された情報の後に受信されたエンドポイントにおいて、情報のバージョン及び情報を最後に変更したエンドポイントを更新すること、
をさらに含む。
【請求項４】
複数の起点エンドポイントから宛て先エンドポイントに情報を提供するための方法を具体化するコンピュータ読み取り可能な媒体であって、該方法は：
第１の起点エンドポイントから情報を受信すること、該情報は第１の起点エンドポイント、第１の起点エンドポイントにおける情報のバージョン、及び情報を最後に変更したエンドポイントを識別する；
少なくとも１の第２の起点エンドポイントから情報を受信すること、該情報は第２の起点エンドポイント、第２の起点エンドポイントにおける情報のバージョン、及び情報を最後に変更したエンドポイントを識別する；
第１の起点エンドポイント又は第２の起点エンドポイントのいずれかから最初に受信された情報を宛て先エンドポイントに転送すること；及び
宛て先エンドポイントに転送された情報に基づいて、情報のバージョン及び宛て先エンドポイントにおいて情報を最後に変更したエンドポイントを更新すること、
を具備する。
【請求項５】
請求項４のコンピュータ読み取り可能な媒体であって、該方法は、最初に受信された情報の後に受信される情報が宛て先エンドポイントに到着することを阻止することをさらに含む。
【請求項６】
請求項４のコンピュータ読み取り可能な媒体であって、該方法は：
第１のエンドポイント、第２のエンドポイント、及び宛て先エンドポイントが同じ情報のバージョン及び情報を最後に変更した同じエンドポイントを有するように、その情報が最初に受信された情報の後に受信されたエンドポイントにおいて、情報を最後に変更したエンドポイント及び情報のバージョンを更新すること、
をさらに含む。
【請求項７】
複数の起点エンドポイントから宛て先エンドポイントに情報を提供するための装置であって、該装置は：
第１の起点エンドポイントから情報を受信するための手段、該情報は第１の起点エンドポイント、第１の起点エンドポイントにおける情報のバージョン、及び情報を最後に変更したエンドポイントを識別する；
少なくとも１の第２の起点エンドポイントから情報を受信するための手段、該情報は第２の起点エンドポイント、第２の起点エンドポイントにおける情報のバージョン、及び情報を最後に変更したエンドポイントを識別する；
第１の起点エンドポイント又は第２の起点エンドポイントのいずれかから最初に受信された情報を宛て先エンドポイントに転送するための手段；及び
宛て先エンドポイントに転送された情報に基づいて、情報のバージョン及び宛て先エンドポイントにおいて情報を最後に変更したエンドポイントを更新するための手段、
を具備する。
【請求項８】
請求項７の装置であって、最初に受信された情報の後に受信される情報が宛て先エンドポイントに到着することを阻止するための手段をさらに含む。
【請求項９】
請求項７の装置であって、
第１のエンドポイント、第２のエンドポイント、及び宛て先エンドポイントが同じ情報のバージョン及び情報を最後に変更した同じエンドポイントを有するように、その情報が最初に受信された情報の後に受信されたエンドポイントにおいて情報を最後に変更したエンドポイント及び情報のバージョンを更新するための手段、
をさらに含む。
【請求項１０】
複数の起点エンドポイントから宛て先エンドポイントに情報を提供するための装置であって、該装置は：
遠隔アクセス装置から情報を受信できる受信機；
遠隔アクセス装置へ情報を送信できる送信機；及び
方法を実行できるプロセッサであって、該方法は、下記を具備する：
第１の起点エンドポイントから情報を受信すること、該情報は第１の起点エンドポイント、第１の起点エンドポイントにおける情報のバージョン、及び情報を最後に変更したエンドポイントを識別する；
少なくとも１の第２の起点エンドポイントから情報を受信すること、該情報は第２の起点エンドポイント、第２の起点エンドポイントにおける情報のバージョン、及び情報を最後に変更したエンドポイントを識別する；
第１の起点エンドポイント又は第２の起点エンドポイントのいずれかから最初に受信された情報を宛て先エンドポイントに転送すること；及び
宛て先エンドポイントに転送された情報に基づいて、情報のバージョン及び宛て先エンドポイントにおいて情報を最後に変更したエンドポイントを更新すること、
を具備する。
【請求項１１】
請求項１０の装置であって、該方法は、最初に受信された情報の後に受信される情報が宛て先エンドポイントに到着することを阻止することをさらに含む。
【請求項１２】
請求項１０の装置であって、該方法は：
第１のエンドポイント、第２のエンドポイント、及び宛て先エンドポイントが同じ情報のバージョン及び情報を最後に変更した同じエンドポイントを有するように、その情報が最初に受信された情報の後に受信されたエンドポイントにおいて情報を最後に変更したエンドポイント及び情報のバージョンを更新すること、
をさらに含む。
【請求項１３】
複数のアクセス装置の１つに情報を提供するための方法であって、該方法は：
複数のアクセス装置の１つから情報の要求を受信すること；
情報が複数のアクセス装置の１つへの配信に適したフォーマットで利用できるのであれば、複数のアクセス装置の１つに情報を配信すること；
情報が利用できないのであれば、宛て先エンドポイントから情報をアクセスすること；
受信した情報を複数のアクセス装置の１つへの配信に適したフォーマットに変換すること；及び
複数のアクセス装置の１つに情報を配信すること、
を具備する。
【請求項１４】
請求項１３の方法であって、複数のアクセス装置の１つへの配信のために変換された情報を待ち行列に入れることをさらに含む。
【請求項１５】
複数のアクセス装置の１つに情報を提供するための方法を具体化するコンピュータ読み取り可能な媒体であって、該方法は：
複数のアクセス装置の１つから情報の要求を受信すること；
情報が複数のアクセス装置の１つへの配信に適したフォーマットで利用できるのであれば、複数のアクセス装置の１つに情報を配信すること；
情報が利用できないのであれば、宛て先エンドポイントから情報をアクセスすること；
受信した情報を複数のアクセス装置の１つへの配信に適したフォーマットに変換すること；及び
複数のアクセス装置の１つに情報を配信すること、
を具備する。
【請求項１６】
請求項１５のコンピュータ読み取り可能な媒体であって、該方法は、複数のアクセス装置の１つへの配信のために変換された情報を待ち行列に入れることをさらに含む。
をさらに含む。
【請求項１７】
複数のアクセス装置の１つに情報を提供するための装置であって、該装置は：
複数のアクセス装置の１つから情報の要求を受信するための手段；
情報が複数のアクセス装置の１つへの配信に適したフォーマットで利用できるのであれば、複数のアクセス装置の１つに情報を配信するための手段；
情報が利用できないのであれば、宛て先エンドポイントから情報をアクセスするための手段；
受信した情報を複数のアクセス装置の１つへの配信に適したフォーマットに変換するための手段；及び
複数のアクセス装置の１つに情報を配信するための手段、
を具備する。
【請求項１８】
請求項１７の装置であって、複数のアクセス装置の１つへの配信のために変換された情報を待ち行列に入れるための手段をさらに含む。
をさらに含む。
【請求項１９】
複数のアクセス装置の１つに情報を提供するための装置であって、該装置は：
遠隔アクセス装置から情報を受信できる受信機；
遠隔アクセス装置へ情報を送信できる送信機；及び
方法を実行できるプロセッサであって、該方法は、下記を具備する：
複数のアクセス装置の１つから情報の要求を受信すること；
情報が複数のアクセス装置の１つへの配信に適したフォーマットで利用できるのであれば、複数のアクセス装置の１つに情報を配信すること；
情報が利用できないのであれば、宛て先エンドポイントから情報をアクセスすること；
受信した情報を複数のアクセス装置の１つへの配信に適したフォーマットに変換すること；及び
複数のアクセス装置の１つに情報を配信すること、
を具備する。
【請求項２０】
請求項１９の装置であって、該方法は、複数のアクセス装置の１つへの配信のために変換された情報を待ち行列に入れることをさらに含む。
【請求項２１】
複数のアクセス装置の１つに情報を提供するための方法であって、該方法は：
エンドポイントから情報をアクセスすること；
情報を複数のフォーマットに変換すること、各フォーマットは複数のアクセス装置の１つへの配信に適している；
複数のアクセス装置の１つが変換された情報を受信する準備ができているのであれば、複数のアクセス装置の１つに変換された情報を配信すること；及び
複数のアクセス装置の１つが変換された情報を受信する準備ができていないのであれば、変換された情報を待ち行列に入れること、
を具備する。
【請求項２２】
複数のアクセス装置の１つに情報を提供することを具体化するコンピュータ読み取り可能な媒体であって、方法は：
エンドポイントから情報をアクセスすること；
情報を複数のフォーマットに変換すること、各フォーマットは複数のアクセス装置の１つへの配信に適している；
複数のアクセス装置の１つが変換された情報を受信する準備ができているのであれば、複数のアクセス装置の１つに変換された情報を配信すること；及び
複数のアクセス装置の１つが変換された情報を受信する準備ができていないのであれば、変換された情報を待ち行列に入れること、
を具備する。
【請求項２３】
複数のアクセス装置の１つに情報を提供するための装置であって、該装置は：
エンドポイントから情報をアクセスするための手段；
情報を複数のフォーマットに変換するための手段、各フォーマットは複数のアクセス装置の１つへの配信に適している；
複数のアクセス装置の１つが変換された情報を受信する準備ができているのであれば、複数のアクセス装置の１つに変換された情報を配信するための手段；及び
複数のアクセス装置の１つが変換された情報を受信する準備ができていないのであれば、変換された情報を待ち行列に入れるための手段、
を具備する。
【請求項２４】
複数のアクセス装置の１つに情報を提供するための装置であって、該装置は：
遠隔アクセス装置から情報を受信できる受信機；
遠隔アクセス装置へ情報を送信できる送信機；及び
方法を実行できるプロセッサであって、該方法は、下記を具備する：
エンドポイントから情報をアクセスすること；
情報を複数のフォーマットに変換すること、各フォーマットは複数のアクセス装置の１つへの配信に適している；
複数のアクセス装置の１つが変換された情報を受信する準備ができているのであれば、複数のアクセス装置の１つに変換された情報を配信すること；及び
複数のアクセス装置の１つが変換された情報を受信する準備ができていないのであれば、変換された情報を待ち行列に入れること、
を具備する。
【請求項２５】
複数のアプリケーションの１つから複数の遠隔アクセス装置の１つに情報を提供するための装置であって、該装置は：
複数の遠隔アクセス装置の１つからの要求をそれぞれが受信できる複数のプロトコル・アダプタ；
複数のプロトコル・アダプタ及び複数のアプリケーションと通信的に接続されたウェブ・サーバであって、該ウェブ・サーバは、下記が可能である：
複数のアプリケーションの１つから装置に無関係な情報を受信すること；及び
受信した装置に無関係な情報を複数の装置に関係したフォーマットに変換すること、各装置に関係したフォーマットは複数の遠隔アクセス装置の１つへの配信に適している、その結果、複数のプロトコル・アダプタのそれぞれ１つが装置に関係したフォーマットの１つを受信し、それを複数の遠隔アクセス装置の対応する１つに提供する、
を具備する。
【請求項２６】
請求項１５の装置であって、複数のプロトコル・アダプタ及び複数のアプリケーションは、単純オブジェクト・アクセス・プロトコル（ＳＯＡＰ）を経由してウェブ・サービスと通信する。
【請求項２７】
請求項２５の装置であって、ウェブ・サーバは、複数の遠隔アクセス装置への配信のために受信した装置に関係するフォーマットを待ち行列に入れる。
【請求項２８】
複数のアプリケーションの１つから複数の遠隔アクセス装置の１つに情報を提供するための装置であって、該装置は：
複数のアプリケーションの１つから装置に無関係な情報を受信するための手段；及び
受信した装置に無関係な情報を複数の装置に関係したフォーマットに変換するための手段、各装置に関係したフォーマットは複数の遠隔アクセス装置の１つへの配信に適している；及び
複数の遠隔アクセス装置への配信のために受信した装置に関係するフォーマットを待ち行列に入れるための手段、
を具備する。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットのような広域分散型ネットワークにおいて情報を伝達することに係る。特に、本発明は、広域分散型ネットワークにおいて複数の情報プロバイダと複数の遠隔アクセス装置との間で情報を効率的に伝達するための方法及び装置に関係する。
【背景技術】
【０００２】
ユーザが、インターネットのような広域分散型ネットワークにおいて対象アプリケーション又はサーバから情報をアクセスしようと試みる場合に、ウェブ・サーバは、ユーザのアクセス装置と対象アプリケーション又はサーバとの間の必要なインターフェースを提供する。しかしながら、ウェブ・サーバは、ブラウザ及び／又は装置に固有のものである。すなわち、ウェブ・サーバは、ユーザの特定のアクセス装置上で動作している特定のブラウザに対してカスタマイズされている。ユーザの特定のアクセス装置は、ワイアレス電話機、携帯型コンピュータ、又はパーソナル・ディジタル・アシスタント（ＰＤＡ）である可能性がある。さらに、情報を提供する対象アプリケーション又はサーバは、ユーザが情報をアクセスするために使用するであろう特定の遠隔アクセス装置タイプについて知る必要がある。
【０００３】
それゆえ、複数の遠隔アクセス装置タイプ、同様に複数の情報プロバイダをサポートする装置に無関係なウェブ・サーバに対するニーズがある。しかも、開発及び保守が容易で拡張性が高く、スケーラブルなインフラストラクチャに対するニーズもある。
【発明の開示】
【０００４】
［サマリー］
開示された実施形態は、複数の起点エンドポイントから宛て先エンドポイントに情報を提供するための新規で改善された方法及び装置を提供する。方法は：第１の起点エンドポイントから情報を受信すること、該情報は第１の起点エンドポイント、第１の起点エンドポイントにおける情報のバージョン、及び情報を最後に変更したエンドポイントを識別する；第２の起点エンドポイントから情報を受信すること、該情報は第２の起点エンドポイント、第２の起点エンドポイントにおける情報のバージョン、及び情報を最後に変更したエンドポイントを識別する；及び第１の起点エンドポイント又は第２の起点エンドポイントのいずれかから最初に受信された情報を宛て先エンドポイントに転送すること、の工程を含む。方法は、しかも、宛て先エンドポイントに転送された情報に基づいて、情報のバージョン及び宛て先エンドポイントにおいて情報を最後に変更したエンドポイントを更新する、ことを含む。
【０００５】
他の１つの態様では、複数のアクセス装置の１つに情報を提供するための方法は：複数のアクセス装置の１つから情報の要求を受信すること、及び情報が要求しているアクセス装置への配信に適したフォーマットで利用できるのであれば、要求しているアクセス装置に情報を配信すること、を含む。情報が利用できないのであれば、方法は、宛て先エンドポイントから要求された情報をアクセスすること、受信した情報を要求しているアクセス装置への配信に適したフォーマットに変換すること、及び要求しているアクセス装置に情報を配信すること、をさらに含む。
【０００６】
他の１つの態様では、複数のアクセス装置の１つに情報を提供するための方法は：       エンドポイントから情報をアクセスすること；情報を複数のフォーマットに変換すること、各フォーマットはアクセス装置の１つへの配信に適している；及びアクセス装置が変換された情報を受信する準備ができているのであれば、アクセス装置の１つに変換された情報を配信すること、の工程を含む。アクセス装置が変換された情報を受信する準備ができていないのであれば、方法は、変換された情報を待ち行列に入れること、をさらに含む。
【０００７】
他の１つの態様では、複数のアクセス装置の１つに情報を提供するための装置は、メモリ・ユニット、受信機、送信機、及びメモリ・ユニット、受信機、送信機に通信的に接続されたプロセッサを含む。プロセッサは、上記に述べられた方法を実施するための命令を実行することができる。
【詳細な説明】
【０００８】
本発明の特徴及び利点は、図面を使用して以下に述べる開示された実施形態の詳細な説明から、さらに明確になるであろう。
【０００９】
いくつかの実施形態が詳細に説明される前に、本発明の範囲は、以下の説明に述べられる若しくは図面に説明される構成要素の構造及び構成の詳細に限定されるべきでないことが、理解されるべきである。しかも、ここで使用された語法及び用語は、説明の目的のためであり、制限するものと見なされるべきでないことが、理解されるべきである。
【００１０】
図１は、１つの実施形態にしたがった、アプリケーション１２０を経由して複数の遠隔アクセス装置１０２，１０４を情報プロバイダ（ウェアハウス）１２２，１２４，１２６にインターフェースするための構成を説明する。アプリケーション１２０は、プロトコル・アダプタ１１８を経由してウェブ・サーバ１１０と通信することができるコンピュータ上で動作できる。遠隔アクセス装置１０２，１０４は、しかも、それぞれプロトコル・アダプタ１０６，１０８を経由してウェブ・サーバ１１０と通信することができる。
【００１１】
遠隔アクセス装置は、パーソナル・ディジタル・アシスタント（ＰＤＡ）、例えば、ＰＡＬＭ１０２及びワイアレス装置１０４を含む。ワイアレス装置１０４は、無線機のための２値実行時間環境（binary runtime environment for wireless）（ＢＲＥＷ）を用いてイネーブルされることができる。遠隔アクセス装置は、しかも、携帯型コンピュータ、ビデオ・カメラ、及び／又はディジタル静止画カメラを含むことができる。各アクセス装置は、宛て先ウェブ・サイトをアクセスするために自分自身の特定のブラウザを動作し、各アクセス装置は、固有のデータ暗号化プロトコル及び／又は圧縮プロトコルを使用して情報を伝達する。例えば、ＰＡＬＭ装置１０２は、拡張可能なマークアップ言語（extensible markup language）（ＸＭＬ）を使用する。ＸＭＬは、ハイパーテキスト転送プロトコル（hypertext transfer protocol）（ＨＴＴＰ）又は高信頼性ハイパーテキスト転送プロトコル（hypertext transfer protocol, secure）（ＨＴＴＰＳ）を介してデータ暗号化規格（data encryption standard）（ＤＥＳ）、３重データ暗号化規格（triple data encryption standard）（３ＤＥＳ）又は高等暗号化規格（advanced encryption standard）（ＡＥＳ）を用いて暗号化されることができる。そして、ワイアレス装置１０４は、ＨＴＴＰＳ又はＨＴＴＰプロトコルを介してＤＥＳ又は３ＤＥＳを使用する。
【００１２】
ＭＩＣＲＯＳＯＦＴ  ＥＸＣＨＡＮＧＥ（登録商標）１２２、郵便局プロトコル・メール・サーバ（Post Office protocol mail server）（ＰＯＰ）１２４、及びインターネット・メッセージ・アクセス・プロトコル（Internet message access protocol）（ＩＭＡＰ）サーバ１２６を含む情報プロバイダ（ウェアハウス）は、アプリケーション１２０によって管理される生の情報を提供する。アプリケーション１２０は、どのタイプの遠隔アクセス装置が情報を要求するかの具体的な知識なしに、装置に無関係の一般的なフォーマット、例えば、“完全−詳細ＸＭＬ”で、情報、例えば、ビデオ、オーディオ、画像、及び／又はデータ、を公開し、操作する。遠隔アクセス装置は、インターネットに接続できる任意の装置であり得る。
【００１３】
アプリケーション１２０及びウェブ・サーバ１１０は、ＨＴＴＰ又はＨＴＴＰＳプロトコルを介して３ＤＥＳ，ＤＥＳ又はＡＥＳを用いて暗号化されることができる、単純オブジェクト・アクセス・プロトコル（simple object access protocol）（ＳＯＡＰ）又はＸＭＬのような、ウェブ・サーバ・インターフェースを介してシグナリング及びデータを伝達する。遠隔アクセス装置１０２，１０４は、ＳＯＡＰ，ＸＭＬのようなウェブ・サービス・インターフェースを介して要求及びデータを伝達する。ＳＯＡＰ，ＸＭＬは、ＨＴＴＰＳ又はＨＴＴＰプロトコルを介して３ＤＥＳ，ＤＥＳ，又はＡＥＳを用いて暗号化される、ＨＴＴＰ又はＨＴＴＰＳプロトコルを介してＤＥＳ又は３ＤＥＳを用いて暗号化される、及び／又はＨＴＴＰプロトコルを介してＡＥＳを用いて暗号化されることができる。
【００１４】
ウェブ・サーバ１１０は、外部サービス１１２と通信する。外部サービス１１２は、ネットワーク中のその他の装置の代わりに動作できる。ウェブ・サーバ１１０は、しかも、例えば、サービス・プロバイダ供給（provisioning）及び／又は支払いシステム１１４と通信する。ウェブ・サーバ１１０は、さらに、航空会社情報、例えば、予定、料金、予約、及び／又は株式市場情報のような情報を提供する外部通知プロバイダ１１６と通信する。ウェブ・サーバは、消費クライアントに情報を提供する装置を含む。ウェブ・サーバによってサービスされた情報は、ＨＴＭＬ又はＷＭＬのようなユーザ・インターフェース・マークアップの形式を取ることができる、若しくは、情報は、ＨＴＴＰを介したＳＯＡＰ法により呼び出されたＸＭＬデータのような、遠隔機能性（remote functionality）の形式であることができる。ウェブ・サーバは、コンテント・サーバとして又はアプリケーション・サーバとしてサービスできる装置を含む。
【００１５】
プロトコル・アダプタ
ウェブ・サーバ１１０のサービスは、ＳＯＡＰウェブ・サービス・インターフェースを経由して提供されることができるが、全ての外部装置が、そのようなインターフェースを呼び出すことができるのではない。プロトコル・アダプタと呼ばれるコードの小さなモジュールは、特定の遠隔アクセス装置又はアプリケーション・レイヤ１２０をウェブ・サーバ１１０にインターフェースすることを与えられる。プロトコル・アダプタは、コア・ウェブ・サーバの変更若しくは最小公分母プロトコル上で標準化する必要なしに、遠隔装置の広範囲な必要性に適合された多くの異なるインターフェースを公開させる自由度を提供する。プロトコル・アダプタは、しかも、携帯レベルの安全性を欠いた装置を含む遠隔アクセス装置のために安全性と暗号化を書き換えることができる。プロトコル・アダプタは、装置に特有の要求を標準化された要求に書き換えることができ、そして、逆に、一般的な応答を装置に特有な応答に書き換えることができる。プロトコル・アダプタは、オプションの素子であり、安全な輸送手段を介してウェブ・サービスを呼び出すことができない、及び／又は小さなバンド幅接続を使用することができない装置とともに使用されることができることを、注意すべきである。
【００１６】
プロトコル・アダプタ１０６，１０８は、特定の情報、例えば、ｅ−メール、連絡、カレンダー、等に関するそれぞれの遠隔アクセス装置１０２，１０４からの要求を受信し、要求された情報に関してウェブ・サーバ１１０に問い合わせる。プロトコル・アダプタは、必要であれば、要求を暗号解読でき及び／又は圧縮を戻すことができる。要求された情報がウェブ・サーバ１１０において利用可能であるならば、プロトコル・アダプタは、ウェブ・サーバ１１０から要求された情報をアクセスし、それぞれの遠隔アクセス装置に情報を提供する。プロトコル・アダプタは、それぞれの遠隔アクセス装置への送信のために要求された情報を暗号化でき及び／又は圧縮できる。プロトコル・アダプタは、要求している装置への配信のために受信した情報を適切なフォーマットに変換できる。
【００１７】
ウェブ・サーバ１１０は、遠隔アクセス装置１０２，１０４の１つから情報の要求を受信し、要求している遠隔アクセス装置へ承認を送信し、そして、要求された情報がウェブ・サーバ１１０において利用可能であるならば、要求された情報を要求している遠隔アクセス装置へ提供する。しかしながら、要求された情報がウェブ・サーバ１１０において利用可能でないならば、ウェブ・サーバ１１０は、要求をアプリケーション１２０へ送り、アプリケーション１２０が要求を処理し要求された情報をウェブ・サーバ１１０へ送ることを待機する。
【００１８】
ウェブ・サーバ１１０は、アプリケーション１２０から情報を受信し、要求している装置が要求された情報をアクセスする準備ができているならば、要求された情報を要求している遠隔アクセス装置へ転送する。アプリケーション１２０から情報を受信した後で、ウェブ・サーバ１１０は、情報を待ち行列に入れることができる。情報は、遠隔アクセス装置が情報をアクセスする準備ができている場合には、１若しくはそれより多くの遠隔アクセス装置１０２，１０４によりアクセスされることができる。
【００１９】
情報発生器又は情報ウェアハウス１２２，１２４，１２６は、情報をアプリケーション１２０へ提供する。アプリケーション１２０は、遠隔装置１０２，１０４のいずれか１つによりアクセスされることができる情報を操作し公開する。アプリケーション１２０は、装置に無関係であることができ、公開された情報は、使用中の遠隔装置のタイプに無関係に発生される一般的な装置に無関係なフォーマットであることを意味する。
【００２０】
アプリケーション１２０により公開された情報は、単純オブジェクト・アクセス・プロトコル（ＳＯＡＰ）を経由してＨＴＴＰＳリンクを介してＸＭＬを通してウェブ・サーバ１１０と通信される。アプリケーション１２０は、しかも、プロトコル・アダプタ１１８を経由してウェブ・サーバとインターフェースされることができる。
【００２１】
ウェブ・サーバ１１０は、ウェブ・サービス・インターフェースを提供し、ウェブ・サーバがアプリケーション１２０から受信する装置に無関係な情報を特定の装置に関係するフォーマットに変換する。特定の装置に関係するフォーマットは、それぞれが、ローカル及び遠隔アクセス装置を含む特定のアクセス装置への配信に適している。あるいは、ウェブ・サーバ１１０は、装置に無関係なフォーマットでアプリケーション１２０から要求された情報を受信し、それを要求している遠隔アクセス装置への配信に適しているフォーマットに変換する。
【００２２】
図２は、ある実施形態にしたがった、アプリケーション・レイヤ２２０を介して複数の遠隔アクセス装置２０２，２０４，２０６を情報プロバイダ（ウェアハウス）２２２，２２４，２２６，２２８にインターフェースするための代替の構成を説明する。アプリケーション・レイヤ２２０は、データ・コネクタ・レイヤ２１８を経由して情報プロバイダ２２２，２２４，２２６，２２８と通信することができる。データ・コネクタ・レイヤ２１８は、情報プロバイダ２２２，２２４，２２６，２２８から情報を取得し、複数のシェマ（schema）の１つ、例えば、ＸＭＬシェマ、を使用してアプリケーション・レイヤ２２０へ情報を渡す。
【００２３】
遠隔アクセス装置２０２，２０４，２０６は、しかも、プロトコル・アダプタ・レイヤ２０８を経由してウェブ・サーバ２１０と通信することができる。ウェブ・サーバ２１０は、しかも、ウェブ・サーバ２１０及び／又はアプリケーション・レイヤ２２０を管理するために管理コンソール２３０と通信する。遠隔アクセス装置は、パーソナル・ディジタル・アシスタント（ＰＤＡ）、例えば、ＰＡＬＭ２０２、ワイアレス装置２０４、及びラップトップ・コンピュータ２０６を含む。ワイアレス装置２０４は、無線機のための２値実行時間環境（ＢＲＥＷ）を用いてイネーブルされることができる。遠隔アクセス装置は、しかも、ビデオ・カメラ及び／又はディジタル静止画カメラを含むことができる。前に記したように、遠隔装置は、インターネットへの接続をすることができるいずれかの装置であり得る。例えば、ＰＡＬＭ装置２０２は、高信頼性ハイパーテキスト転送プロトコル（ＨＴＴＰＳ）又はハイパーテキスト転送プロトコル（ＨＴＴＰ）を介して高等暗号化規格（ＡＥＳ）を使用し、ワイアレス装置２０４は、ＨＴＴＰ又はＨＴＴＰＳを介してデータ暗号化規格（ＤＥＳ）又は３重データ暗号化規格（３ＤＥＳ）を使用し、そして、携帯型コンピュータ２０６は、ＨＴＴＰＳ又はＨＴＴＰを介して、ＤＥＳ，３ＤＥＳ又はＡＥＳを用いて暗号化されることができる、拡張可能なマークアップ言語（ＸＭＬ）を使用する。
【００２４】
ＭＩＣＲＯＳＯＦＴ  ＥＸＣＨＡＮＧＥ（登録商標）２２２，ＤＯＭＩＮＯ（登録商標）２２４，ＳＩＥＢＥＬ（登録商標）２２６，及びＵＮＩＣＥＮＴＥＲ（登録商標）２２８を含むことがある情報プロバイダ（ウェアハウス）は、データ・コネクタ・レイヤ２１８を経由してアプリケーション・レイヤ２２０によって管理される。アプリケーション・レイヤ２２０は、どのタイプの遠隔アクセス装置が情報を要求できるかの具体的な知識なしに、情報、例えば、ビデオ、オーディオ、画像、及び／又はデータ、を装置に無関係の一般的なフォーマット、例えば、“完全−詳細ＸＭＬ” に操作し、公開する。アプリケーション・レイヤ２２０は、ＷＯＲＫＳＴＹＬＴ（登録商標）グループウェア・マネージャ、ＳＩＥＢＥＬ（登録商標）マネージャ、及び携帯ソフトウェア配信条件管理（mobile software delivery asset management）（ＭＡＤＡＭ（登録商標））解法（solution）、若しくは特定の機能性を実行するいずれかのその他のアプリケーション・レイヤを含む。
【００２５】
図３は、各種の開示された実施形態を実施することができる、ウェブ・サーバ・インフラストラクチャ３０４及び遠隔アクセス装置３０６のある実施形態の単純化したブロック図である。特定の通信に関して、音声データ、パケット・データ、及び／又はメッセージは、無線インターフェース３０８を介して、ウェブ・サーバ・インフラストラクチャ３０４と遠隔アクセス装置３０６との間で交換されることができる。種々のタイプのメッセージが、送信されることができる。例えば、ウェブ・サーバ・インフラストラクチャと遠隔アクセス装置との間の通信セッションを設定するために使用されるメッセージ、登録及びページング・メッセージ、及びデータ送信（例えば、出力制御、データ・レート情報、承認、及びその他）を制御するために使用されるメッセージである。これらのメッセージ・タイプのあるものは、下記にさらに詳細に説明される。
【００２６】
逆方向リンクに関して、遠隔アクセス装置３０６において、（例えば、データ・ソース３１０からの）音声及び／又はデータ・パケット並びに（例えば、コントローラ３３０からの）メッセージは、送信（ＴＸ）データ・プロセッサ３１２へ供給される。ＴＸデータ・プロセッサ３１２は、コード化されたデータを発生させるために１又はそれより多くのコーディング・スキームを用いてデータ及びメッセージをエンコードし、フォーマット化する。各コーディング・スキームは、周期的な冗長性チェック（cyclic redundancy check）（ＣＲＣ）、コンボルーション、ターボ、ブロック、及びその他のコーディングのいずれかの組み合わせを含むことができる、若しくは全くコーディングしないことを含むことができる。音声、パケット・データ、及びメッセージは、異なるスキームを使用してコード化されることができ、そして、異なるタイプのメッセージは、異なるようにコード化されることができる。
【００２７】
コード化されたデータは、その後、モジュレータ（ＭＯＤ）３１４に供給され、さらに処理される（例えば、変換され、ショートＰＮシーケンスを用いて拡散され、ユーザ端末に割り当てられたロングＰＮシーケンスを用いてスクランブルされる）。変調されたデータは、その後、送信機ユニット（ＴＭＴＲ）３１６に供給され、逆方向リンク信号を発生させるために調整される（例えば、１若しくはそれより多くのアナログ信号に変換され、増幅され、フィルタされ、そしてカドラチャ変調される）。逆方向リンク信号は、デュプレクサ（Ｄ）３１８を経由して転送され、そして、ウェブ・サーバ３０４へアンテナ３２０を介して送信される。
【００２８】
ウェブ・サーバ・インフラストラクチャ３０４において、逆方向リンク信号は、アンテナ３５０によって受信され、デュプレクサ３５２を経由して転送され、そして、受信機ユニット（ＲＣＶＲ）３５４に供給される。あるいは、アンテナは、ワイアレス・オペレータ・ネットワークの一部分であることがあり、アンテナとウェブ・サーバとの間の接続は、インターネットを経由して転送されることができる。ウェブ・サーバ・インフラストラクチャ３０４は、遠隔アクセス装置３０６から状況情報及び情報を受信できる。受信機ユニット３５４は、受信した信号を調整し（例えば、フィルタし、増幅し、ダウン・コンバートし、そしてディジタル化し）、サンプルを供給する。デモジュレータ（ＤＥＭＯＤ）３５６は、再生されたシンボルを供給するためにサンプルを受信し、処理する（例えば、デスプレッドし、デカバし、そして、パイロット復調する）。デモジュレータ３５６は、受信した信号の複数の要請を処理し、かつ統合されたシンボルを発生させるレーキ受信機を与えられる。受信（ＲＸ）データ・プロセッサ３５８は、その後、逆方向リンク上に送信されたデータ及びメッセージを再生するためにシンボルをデコードする。再生された音声／パケット・データは、データ・シンク３６０に供給され、そして、再生されたメッセージは、コントローラ３７０に供給されることができる。コントローラ３７０は、情報を受信するため、情報を更新するため、情報を待ち行列に入れるため、情報を送るため、情報を１つのフォーマットから他の１つへの変換するため、情報を暗号化する及び／又は暗号解読するため、及び情報を圧縮する及び圧縮を戻すため、の命令を含むことができる。デモジュレータ３５６及びＲＸデータ・プロセッサ３５８による処理は、遠隔アクセス装置３０６において実行されたものと補完的である。デモジュレータ３５６及びＲＸデータ・プロセッサ３５８は、さらに、多重チャネル、例えば、逆方向基本チャネル（reverse fundamental channel）（Ｒ−ＦＣＨ）及び逆方向補助チャネル（reverse supplemental channel）（Ｒ−ＳＣＨ）を介して受信された多重送信を処理するために動作されることができる。しかも、送信は、複数の移動局から同時である可能性があり、各移動局は、逆方向基本チャネル、逆方向補助チャネル、若しくは両方に送信していることがある。
【００２９】
順方向リンク上で、ウェブ・サーバ・インフラストラクチャ３０４において、（例えば、データ・ソース３６２からの）音声及びデータ・パケット並びに（例えば、コントローラ３７０からの）メッセージは、送信（ＴＸ）データ・プロセッサ３６４によって処理され（例えば、フォーマット化され、エンコードされ）、さらに、モジュレータ（ＭＯＤ）３６６によって処理され（例えば、変換され、拡散され）、そして、順方向リンク信号を発生させるために送信機ユニット（ＴＭＴＲ）３６８により調整される（例えば、アナログ信号に変換され、増幅され、フィルタされてカドラチャ変調される）。順方向リンク信号は、デュプレクサ３５２を経由して転送され、遠隔アクセス装置３０６にアンテナ３５０を介して送信される。順方向リンク信号は、ページング信号を含む。
【００３０】
遠隔アクセス装置３０６において、順方向リンク信号は、アンテナ３２０により受信され、デュプレクサ３１８を経由して転送され、そして受信機ユニット３２２に供給される。受信機ユニット３２２は、受信した信号を調整して（例えば、ダウン・コンバートし、フィルタし、増幅し、カドラチャ変調し、そしてディジタル化して）、サンプルを供給する。サンプルは、シンボルを供給するためにデモジュレータ３２４によって処理され（例えば、デスプレッドされ、デカバされ、そしてパイロット復調され）、そして、シンボルは、順方向リンク上に送信されたデータ及びメッセージを再生するために受信データ・プロセッサ３２６によりさらに処理される（例えば、デコードされ、チェックされる）。再生されたデータは、データ・シンク３２８に供給され、そして、再生されたメッセージは、コントローラ３３０に供給されることができる。コントローラ３３０は、情報を要求するため、情報を受信するため、情報を暗号化し及び／又は暗号解読するため、情報を圧縮し及び／又は圧縮を戻すための命令を含むことができる。
【００３１】
エンドポイント
用語“エンドポイント”は、本出願では、装置、サーバ、若しくは装置の代わりに働くサービスを表すために使用される。各エンドポイントは、この後にさらに詳細に述べられるように、供給する処理の期間中、識別名、例えば、“Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄ”、によりシステム内部で一義的に識別される。識別名は、ウェブ・サーバ１１０，２１０、又はネットワーク中の他の１つのエンティティにより割り当てられる。
【００３２】
グループウェア情報のプロバイダが、“マスタ”としてしばしば呼ばれ、デスクトップ・コンピュータ又は企業グループウェア・プロバイダである可能性があることに、注意すべきである。用語“マスタ”は、正式のコントローラ又は情報の貯蔵庫（repository）、例えば、図１の１２２，１２４，１２６のような、共通のデータベース・サーバ、を詳細に表すために使用される。
【００３３】
エンドポイント供給
供給プロセスの期間中、初めて開始するエンドポイント又は装置は、自身のＥｎｄ＿Ｐｏｉｎｔ＿Ｉｄを取得するためにウェブ・サーバ１１０又は２１０に要求を送る。要求は、“Ｐｒｏｖｉｓｉｏｎ＿Ｒｅｑｕｅｓｔ（供給＿要求）”と呼ばれる命令エンベロープを含み、ウェブ・サーバ１１０又は２１０にＥｎｄ＿Ｐｏｉｎｔ＿Ｉｄを含む“Ｐｒｏｖｉｓｉｏｎ＿Ｒｅｓｐｏｎｓｅ（供給＿応答）”を送り返させる。Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄは、供給されたエンドポイントを一義的に識別するために記憶され、使用されることができる。
【００３４】
ユーザが自身のアカウントに関係する複数の装置を有する場合に、システムは、複数の装置に対するウェブ−ベースの管理インターフェースを提供する。ウェブ−ベースの管理インターフェースは、各装置に対して“スロット”を生成し、ユーザの要求によって、各装置へ固有のＥｎｄ＿Ｐｏｉｎｔ＿Ｉｄを割り当てる。新たな装置がウェブ・サーバと初めて通信する場合に、新たな装置は、それが初めてＰｒｏｖｉｓｉｏｎ＿Ｒｅｑｕｅｓｔを行う場合に、自身のＥｎｄ＿Ｐｏｉｎｔ＿Ｉｄを割り当てられる。装置がリセットされる場合、若しくはクライアント・ソフトウェアが再インストールされる場合に、装置は、最初の開始においてＰｒｏｖｉｓｉｏｎ＿Ｒｅｑｕｅｓｔを行う。
【００３５】
項目識別名
システムは、要求、応答、又はイベントのような各項目に固有のシステム識別名を付けられる。これは、固有のローカル識別名とは異なることがある。ローカル識別名は、装置データベース又はメッセージング・アプリケーション・プログラミング・インターフェース（ＭＡＰＩ）記憶装置の内部で使用されることができる。各エンドポイントは、自身のローカル識別名を自身のシステム識別名にマッピングする表を維持できる。システム識別名は、“Ｉｔｅｍ＿Ｉｄ”として呼ばれることができる。エンドポイントが保障された固有のＩｔｅｍ＿Ｉｄを発生できるようにするために、Ｉｔｅｍ＿Ｉｄは、増分値と統合されたＥｎｄ＿Ｐｏｉｎｔ＿Ｉｄとを含む。この値は、グローバル固有識別名（globally unique identifier）（ＧＵＩＤ）に機能において非常に類似しているが、より小さく、特定のユーザ及びそれに関連したエンドポイントの“世界”の範囲内でただ一つである。例えば、１２３のＥｎｄ＿Ｐｏｉｎｔ＿Ｉｄを有する装置は、自身のローカル記憶装置中の現在の値、例えば、８９、を増加させることによって、そして９０の新たに増加された値を１２３のＥｎｄ＿Ｐｏｉｎｔ＿Ｉｄと統合することによって、新たなＩｔｅｍ＿Ｉｄを発生させる。そのようにして、発生されたＩｔｅｍ＿Ｉｄは、“１２３−９０”である。
【００３６】
サービス側データの別のコードへの変換
アプリケーション・レイヤが使用するデータ表示シェマが非常に豊富である及び／又は幾分冗長であり得るので、そのようなデータ・シェマは、バンド幅が制約されたワイアレス装置上での使用に対して理想的でない可能性がある。エンドポイントは、そのエンドポイントの固有の能力を反映する特定のフォーマットでウェブ・サーバと通信する。アプリケーション・レイヤによって使用されるリッチ−データ・シェマは、“Full-Detail Schema（完全−詳細シェマ）”として呼ばれ、ウェブ・サーバによって使用される簡潔な−データ・シェマは、“End-Point-Relevant Schema（エンドポイント関連シェマ）”として呼ばれる。ウェブ・サーバは、情報が待ち行列に入れられる若しくは要求しているアクセス装置に送られる前に、自身がアプリケーション・レイヤから受信する装置に無関係な完全−詳細シェマ情報を、装置に関係するフォーマットに変換する。この変換は、送信操作及び受信操作の両方に役に立ち、その結果、特定のエンドポイントは、完全−詳細シェマを理解する必要がない。
【００３７】
イベント伝播
イベント伝播は、それによって１つの特定のエンドポイントに起きたイベントがその他のエンドポイントに選択的に通信されるメカニズムである。イベント伝播の期間中、マスタは、変更が生じる場合にはいつでも、更新要求をウェブ・サーバに送り、誰が変更を開始したかについての参照符合を用いて更新要求にタグを付ける。ウェブ・サーバは、特定のイベントを初めに開始したエンドポイントに更新を伝播することがない：“選択的な同報通信”は、開始者が自身が開始した同じイベントを受け取ることを防止する。命令エンベロープは、特定の命令エンベロープを開始したエンドポイントを識別する、Ｏｒｉｇｉｎａｔｏｒ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄと呼ばれる要素を含む。Ｏｒｉｇｉｎａｔｏｒ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄ要素の意味は、ポイント−ツー−ポイント通信では著しく異なる。ポイント−ツー−ポイント通信では、開始エンドポイントは、いかなる応答でも開始エンドポイントにだけ送られることを要求できる。複数のエンドポイント間の通信は、複数の方法で発生できる、最も一般的なものは、１つのエンドポイントから全てのその他のエンドポイントへ同報通信される、若しくは２つの別々のエンドポイントの間のポイント−ツー−ポイント通信として同報通信される。ここで説明されるイベント伝播モデルは、両方の場合を可能にし、同報通信を開始するエンドポイントがその同一の同報通信を自身で受信しない場合のように、不必要な通信を防止するメカニズムを含む。これは、どのエンドポイントがメッセージを開始したかをトラッキングすることによって管理され、その結果、同報通信が必要になるはずである。同報通信は、開始者を除く全員に送られる。
【００３８】
同時性の解決
図１及び図２に示されたもののような、非同期的に接続されたシステムでは、同時性の解決（concurrency resolution）の問題が発生することがある。同時性の解決は、同時の変更が１より多くのエンドポイントにおいてなされ、複数のエンドポイントが変更に関して同期される必要がある場合を呼ぶ。同時性の解決は、変更追跡システムに基づいており、変更追跡システムは、例えば、下記の仮定に基づくことができる。
【００３９】
・疑わしい場合には、マスタ、例えば、正式のデータ記憶装置が常に支持を得る。
【００４０】
・同時のメッセージが通過中である場合には、マスタにより最初に受信されたものが支持を得る。
【００４１】
・ある種の変更は、失われる可能性があるが、全てのエンドポイントは、結局同じ最終状態を有する。
【００４２】
情報の項目、例えば、要求、応答、及び／又はイベント、は、項目のＩｔｅｍ＿Ｉｄ、“Ｃｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄ”によって識別されることができるその項目に変更を行った最後のエンドポイント、及びその項目に関係付けられたバージョン又は変更の回数、例えば、“Ｃｈａｎｇｅ＿Ｎｕｍｂｅｒ”、に基づいて追跡される。システムが非同期的に動作する場合、エンドポイントは、変更が上手くいったかどうかの正式な確認を得られない可能性があるが、エンドポイントは、楽観的な仮定及び自身のＣｈａｎｇｅ＿Ｎｕｍｂｅｒを“事後増加”させることができ、問題の項目に対する自身のＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄを更新させることができる。項目に付けられた、Ｃｈａｎｇｅ＿Ｎｕｍｂｅｒ及びＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄは、“最終的に知られる正式な”値と呼ばれ、最終公式変更値として記録されることができる。さらに、Ｃｈａｎｇｅ＿Ｎｕｍｂｅｒを事後増加させること及びＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄを更新することは、エンドポイントが好結果の変更操作を完了させた後で、エンドポイントにより実行される。
【００４３】
変更を実現するために、受信エンドポイントは、着信項目のＩｔｅｍ＿Ｉｄ、Ｃｈａｎｇｅ＿Ｎｕｍｂｅｒ、及びＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄが正式なＩｔｅｍ＿Ｉｄ、Ｃｈａｎｇｅ＿Ｎｕｍｂｅｒ、及びＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄと同じであるかを検証するために到着する項目を検査する。値が符合するのであれば、受信エンドポイントのＣｈａｎｇｅ＿Ｎｕｍｂｅｒは、１だけ増加され、受信エンドポイントのＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄは、変更を始めたエンドポイントのＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄを反映するように修正される。しかしながら、値が符合しないのであれば、到着する項目は、無視され、対応する変更は、事実上失われる。成功の更新メッセージが同時性バトルで支持を得られなかったエンドポイントへ送られる場合に、マスタは常に支持を得ると仮定するので、そのようなエンドポイントは、更新を受け入れる。新たに生成された項目は、１のＣｈａｎｇｅ＿Ｎｕｍｂｅｒで初期化される。
【００４４】
図４から図９は、ある実施形態にしたがって、同時性の解決プロセスを説明する。図面は、同時の変更が２つのエンドポイントにおいてなされ、更新要求が全てのエンドポイントが同じ最終状態で終わるように送られる、という１つのシナリオを示す。図４は、全てのエンドポイントが同じ初期状態である、例えば、“Ｍａｉｌ”の項目が、４２のＩｔｅｍ＿Ｉｄ、１のＣｈａｎｇｅ＿Ｎｕｍｂｅｒ、及び項目が１００のＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄを有するエンドポイントによって最後に変更されたことを有する、という開始状態を示す。
【００４５】
図５は、変更が同時に“エンドポイント２００”及び“エンドポイント３００”の両方によってＭａｉｌ−Ｉｔｅｍ４２に生じる、という１つのシナリオを示す。両方のエンドポイントは、マスタが事実上有すると楽観的に信じる状態を反映させるために自身のＣｈａｎｇｅ＿Ｎｕｍｂｅｒを２に“事後増加”させ、両方のエンドポイントは、更新要求５０２，５０４をウェブ・サーバ１１０へ送る。更新要求５０２，５０４が自身のそれぞれ最後に知られた正式なＣｈａｎｇｅ＿Ｎｕｍｂｅｒ及びＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄを使用することに、注意する。更新要求５０２，５０４のそれぞれは、しかも、変更を始めたそれぞれのエンドポイントを識別する“Ｏｒｉｇｉｎａｔｏｒ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄ”を含む。
【００４６】
図６は、更新要求５０２，５０４がウェブ・サーバ１１０に到達し、エンドポイント２００からの更新要求５０２が最初に到達する場合を示す。更新要求５０２中のＣｈａｎｇｅ＿Ｎｕｍｂｅｒ、例えば１、及びＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄ、例えば１００、が、エンドポイント１００における正式な値、例えば、Ｃｈａｎｇｅ＿Ｎｕｍｂｅｒ及びＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄに符合するので、エンドポイント１００は、更新要求５０２を受け入れ、図７に示されたように、エンドポイント２００がＭａｉｌ項目を変更した最後のエンドポイントであることを反映するように、自身の正式なＣｈａｎｇｅ＿Ｎｕｍｂｅｒ及びＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄを変更する。エンドポイント３００からその後に到着した更新要求５０４は、そのＣｈａｎｇｅ＿Ｎｕｍｂｅｒ、例えば１、及びＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄ、例えば１００、が、エンドポイント１００における新たな正式な値、２のＣｈａｎｇｅ＿Ｎｕｍｂｅｒ及び２００のＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄ、ともはや符合しないので、破棄される。
【００４７】
エンドポイント２００により始められた変更がエンドポイント１００において反映された後で、その他の（複数の）エンドポイント、この場合にはエンドポイント３００は、全てのエンドポイントが同じ最終状態で終わるように更新される。図８は、新たな正式な値、例えば、“Ｃｈａｎｇｅ＿Ｎｕｍｂｅｒ２”、及び“”Ｃｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄ２００“、を含んでいる更新要求８０２が残りの（複数の）エンドポイント、この場合にはエンドポイント３００に伝播して戻されることを示す。
【００４８】
図９は、マスタは常に支持を得ると想定されるので、エンドポイント３００がマスタから更新要求８０２を受信し、更新要求８０２を受理したことを示す。エンドポイント３００は、マスタから受信された新たな正式な値、例えば、“Ｃｈａｎｇｅ＿Ｎｕｍｂｅｒ２”、及び“Ｃｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄ２００”を反映させるように自身のＣｈａｎｇｅ＿Ｎｕｍｂｅｒ及びＣｈａｎｇｅ＿Ｅｎｄ＿Ｐｏｉｎｔ＿Ｉｄを更新する。
【００４９】
それゆえ、開示された実施形態は、広域ネットワークにおいて情報の遠隔アクセスに著しい改善を提供する。開示された方法及び装置は、しかも、情報の項目に変更が発生した後で、全てのエンドポイントが同じ最終状態を有することを確実にすることも提供する。
【００５０】
この分野に知識のある者は、ここに開示された実施形態に関連して説明された各種の解説的な論理ブロック、モジュール、回路、及びアルゴリズムのステップが、電子ハードウェア、コンピュータソフトウェア、若しくは両者の組み合わせとして実行されることができることを、さらに価値を認めるはずである。ハードウェアとソフトウェアのこの互換性をはっきりと説明するために、各種の解説的なコンポーネント、ブロック、モジュール、回路、及びステップが、その機能性の面から一般的に上記に説明されてきた。そのような機能性が、ハードウェア若しくはソフトウェアとして実行されるかどうかは、固有のアプリケーション及びシステム全体に課せられた設計の制約に依存する。熟練した職人は、各々の固有のアプリケーションに対して違ったやり方で説明された機能性を実行することができるが、そのような実行の決定は、本発明の範囲から逸脱することを生ずるとして説明されるべきでない。
【００５１】
ここに開示された実施形態に関連して述べられた、各種の解説的な論理ブロック、モジュール、及び回路は、汎用プロセッサ、デジタル・シグナル・プロセッサ（ＤＳＰ）、用途特定集積回路（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）若しくはその他のプログラム可能な論理装置、単体ゲート若しくはトランジスタ・ロジック、単体ハードウェア・コンポーネント、若しくはここに説明した機能を実施するために設計されたこれらの任意の組み合わせで、実行若しくは実施されることができる。汎用プロセッサは、マイクロプロセッサである可能性があるが、代案では、プロセッサは、いずれかの従来のプロセッサ、コントローラ、マイクロコントローラ、若しくはステートマシン(state machine)であることができる。プロセッサは、しかも、演算装置の組み合わせとして与えられることができる。例えば、ＤＳＰとマイクロプロセッサ、複数のマイクロプロセッサ、ＤＳＰコアと結合した１若しくはそれ以上のマイクロプロセッサ、若しくはいずれかの他のそのような構成の組み合わせでとして与えられることができる。
【００５２】
ここに開示された実施形態に関連して説明された方法若しくはアルゴリズムのステップは、ハードウェアにおいて、プロセッサにより実行されるソフトウェア・モジュールにおいて、若しくは、両者の組み合わせにおいて直接実現されることができる。ソフトウェア・モジュールは、ＲＡＭメモリ、フラッシュ・メモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハード・ディスク、脱着可能なディスク、ＣＤ−ＲＯＭ、若しくは、この分野で公知の他のいずれかの記憶媒体の中に常駐することができる。あるイグゼンプラリな記憶媒体は、プロセッサと接続され、その結果、プロセッサは、記憶媒体から情報を読み出し、そこに情報を書き込める。代案では、記媒体は、プロセッサに集積されることができる。プロセッサ及び記憶媒体は、ＡＳＩＣ中に常駐する可能性がある。ＡＳＩＣは、ユーザ・ターミナル中に常駐することができる。代案では、プロセッサ及び記憶媒体は、ユーザ・ターミナル中に単体構成要素として常駐することができる。
【００５３】
開示された実施形態の説明は、本技術分野に知識のあるいかなる者でも、本発明を作成し、使用することを可能にすることを提供する。これらの実施形態に対する各種の変形は、本技術分野に知識のある者に、容易に実現されるであろう。そして、ここで規定された一般的な原理は、本発明の精神若しくは範囲から逸脱しないで他の実施形態、例えば、インスタント・メッセージ・サービス若しくはいずれかの一般的なデータ通信アプリケーション、にも適用される可能性がある。それゆえ、本発明は、ここに示された実施形態に制限されることを意図したものではなく、ここに開示した原理及び新規な特性と整合する広い範囲に適用されるものである。用語“イグゼンプラリな”は、ここでは広く用いられ、“例、事例、若しくは実例として働くこと”を意味する。
【図面の簡単な説明】
【００５４】
【図１】図１は、１つの実施形態にしたがった、複数の遠隔アクセス装置を複数の情報プロバイダにインターフェースするための構成を説明する。
【図２】図２は、他の１つの実施形態にしたがった、複数の遠隔アクセス装置を複数の情報プロバイダにインターフェースするための構成を説明する。
【図３】図３は、ウェブ・サーバ・インフラストラクチャ及び遠隔アクセス装置に関する実施形態を説明する。
【図４】図４は、イベントの伝播スキームを説明する。
【図５】図５は、イベントの伝播スキームを説明する。
【図６】図６は、イベントの伝播スキームを説明する。
【図７】図７は、イベントの伝播スキームを説明する。
【図８】図８は、イベントの伝播スキームを説明する。
【図９】図９は、イベントの伝播スキームを説明する。
【符号の説明】
【００５５】
１２０…アプリケーション，３０４…ウェブ・サーバ・インフラストラクチャ，３０６…遠隔アクセス装置，３０８…無線インターフェース，３１８…デュプレクサ，３２０…アンテナ，３５０…ウェブ・サーバ・インフラストラクチャ，５０２，５０４，８０２…更新要求。
【図１】
2006511865.tif 000003
【図２】
2006511865.tif 000004
【図３】
2006511865.tif 000005
【図４】
2006511865.tif 000006
【図５】
2006511865.tif 000007
【図６】
2006511865.tif 000008
【図７】
2006511865.tif 000009
【図８】
2006511865.tif 000010
【図９】
2006511865.tif 000011
【国際調査報告】
2006511865.tif 000012