(57)【特許請求の範囲】
【請求項１】
クライアントが要求する第１の目標オブジェクトの識別子を含む前記クライアントからの要求を、サーバによって受信するステップと、
前記第１の目標オブジェクトの前記識別子に従って、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在するかどうかを、前記サーバによって判定するステップと、
前記クライアントが前記第１の目標オブジェクトの受信後に前記第１の目標オブジェクトに関連する少なくとも1つのオブジェクトの受信を待機し続けるように、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在する場合に、前記第１の目標オブジェクトに関連指示情報を前記サーバによって付加し、前記第１の目標オブジェクトを前記クライアントに前記サーバによって送信するステップであって、前記関連指示情報が、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在することを示すために使用される、ステップと、
前記クライアントが、検証情報に従って、前記第１の目標オブジェクトに関連する前記1つまたは複数のオブジェクトのそれぞれが、前記クライアントが要求するものであるのか、または前記クライアントが要求しないものであるのかを決定し、検証結果情報を前記サーバに送信するように、前記第１の目標オブジェクトの送信を終了した後で、検証情報を前記クライアントに、前記サーバによって送信するステップであって、前記検証情報が、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトのアドレス情報を有する、ステップと、
前記クライアントからの検証結果情報に従って、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトから第２の目標オブジェクトを、前記サーバによって決定するステップであって、前記検証結果情報が、前記検証情報に従った前記決定の結果に係る情報であり、前記第２の目標オブジェクトが、前記第１の目標オブジェクトに関連する、前記クライアントが必要としているオブジェクトである、ステップと、
前記第２の目標オブジェクトを前記クライアントに、前記サーバによって送信するステップと、
を含むオブジェクトを取得する方法。
【請求項２】
前記第１の目標オブジェクトの前記識別子に従って、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在するかどうかを判定するステップが、
上位レイヤアプリケーションが、前記第１の目標オブジェクトの識別子に従って、1つまたは複数の関連オブジェクトが存在するかどうかを判定し、1つまたは複数の関連オブジェクトが存在すると判定したときに、所定のインタフェースを起動するように、要求を上位レイヤアプリケーションに転送するサブステップであって、前記所定のインタフェースは、前記サーバが位置するソフトウェアレイヤと上位レイヤアプリケーションとの間にある、サブステップと、
前記上位レイヤアプリケーションが前記所定のインタフェースを起動するとき、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在すると判定するサブステップを含む請求項1に記載の方法。
【請求項３】
前記第１の目標オブジェクトの前記識別子に従って、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在するかどうかを判定するステップが、
前記第１の目標オブジェクトの前記識別子に従って、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在するかどうかを判定するために、前記第１の目標オブジェクトに関連する前記オブジェクトの情報を格納するために使用される関連テーブルに問合せを行うサブステップを含む請求項1に記載の方法。
【請求項４】
前記第１の目標オブジェクトが複数のフレームからなるとともに、前記関連指示情報が、前記第１の目標オブジェクトの最終フレームに位置する請求項1から3のいずれか一項に記載の方法。
【請求項５】
前記クライアントからの検証結果情報に従って、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトから第２の目標オブジェクトを決定するステップが、
前記検証結果情報に従って、前記クライアントが要求しない前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトを削除し、前記第１の目標オブジェクトに関連する１つまたは複数の残りのオブジェクトを、前記第２の目標オブジェクトとして決定するサブステップを含む、または
前記クライアントが要求する、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトの前記アドレス情報に従って、前記検証結果情報の精度を確認し、確認結果に従って、前記クライアントが要求する、前記第１の目標オブジェクトに関連する前記少なくとも１つのオブジェクトから第２の目標オブジェクトを決定するサブステップを含む、請求項1から3のいずれか一項に記載の方法。
【請求項６】
クライアントが要求する、第１の目標オブジェクトの識別子を含む要求をサーバに、前記クライアントによって送信するステップと、
前記サーバが前記要求を受信した後で前記サーバによって送信され、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在することを示すために使用される関連指示情報を有する前記第１の目標オブジェクトを、前記クライアントによって受信するステップと、
前記サーバから送信される検証情報を、前記クライアントによって受信するステップであって、前記検証情報が、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトのアドレス情報を有する、ステップと、
前記サーバが検証結果情報に従って前記第１の目標オブジェクトに関連する前記1つまたは複数のオブジェクトから第２の目標オブジェクトを決定するように、前記1つまたは複数のオブジェクトのそれぞれが、前記クライアントが要求するものであるのか、または前記クライアントが要求しないものであるのかを決定するために、前記検証情報に従って前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトを、前記クライアントによって検証し、検証結果情報を前記サーバに前記クライアントによって送信するステップであって、前記検証結果情報が、前記検証の結果に係る情報である、ステップと、
前記サーバから送信された前記第２の目標オブジェクトを、前記クライアントによって受信するステップであって、前記第２の目標オブジェクトが、前記第１の目標オブジェクトに関連する、前記クライアントが必要としているオブジェクトである、ステップと、
を含むオブジェクトを取得する方法。
【請求項７】
クライアントが要求する第１の目標オブジェクトの識別子を含む前記クライアントからの要求を受信するように構成された受信ユニットと、
前記受信ユニットが受信する前記第１の目標オブジェクトの前記識別子に従って、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在するかどうかを判定するように構成された判断ユニットと、
前記判断ユニットが、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在すると判定した場合には、前記クライアントが前記第１の目標オブジェクトの受信後に前記第１の目標オブジェクトに関連する少なくとも１つのオブジェクトの受信を待機し続けるように、前記第１の目標オブジェクトに関連する１つまたは複数のオブジェクトが存在することを示すために使用される関連指示情報を前記第１の目標オブジェクトに付加し、前記第１の目標オブジェクトを前記クライアントに送信し、前記第１の目標オブジェクトを送信した後で、前記第１の目標オブジェクトに関連する１つまたは複数のオブジェクトのそれぞれが、前記クライアントが要求するものであるのか、または前記クライアントが要求しないものであるのかを決定するために前記クライアントが検証情報に従って前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトを検証するように、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトのアドレス情報を有する検証情報を前記クライアントに送信し、検証結果情報をサーバに送信するように構成された送信ユニットと、
前記クライアントからの検証結果情報に従って、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトから第２の目標オブジェクトを決定するように構成された選択ユニットであって、前記検証結果情報が、前記検証の結果に係る情報であり、前記第２の目標オブジェクトが、前記第１の目標オブジェクトに関連する、前記クライアントが必要としているオブジェクトである、選択ユニットと、を備え、
前記送信ユニットが、前記選択ユニットの処理結果に従って、前記第２の目標オブジェクトを前記クライアントに送信するようにさらに構成されるサーバ。
【請求項８】
前記判断ユニットが、
上位レイヤアプリケーションが、前記第１の目標オブジェクトの前記識別子に従って、1つまたは複数の関連オブジェクトが存在するかどうかを判定し、1つまたは複数の関連オブジェクトが存在すると判定したときに、所定のインタフェースを起動するように、要求を上位レイヤアプリケーションに転送するように構成された転送モジュールであって、前記所定のインタフェースは、前記サーバが位置するソフトウェアレイヤと上位レイヤアプリケーションとの間にある、転送モジュールと、
前記上位レイヤアプリケーションが前記所定のインタフェースを起動する場合には、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在すると判定し、前記上位レイヤアプリケーションが前記所定のインタフェースを起動しない場合には、前記第１の目標オブジェクトに関連するオブジェクトが存在しないと判定するように構成された処理モジュールとを備える、請求項7に記載のサーバ。
【請求項９】
前記判断ユニットが、
前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在するかどうかを判定するために、前記第１の目標オブジェクトの前記識別子に従って、前記第１の目標オブジェクトに関連する前記オブジェクトの情報を格納するために使用される関連テーブルに問合せを行うように構成された問合せモジュール
を備える請求項7に記載のサーバ。
【請求項１０】
前記選択ユニットが、特に、
前記検証結果情報に従って、前記クライアントが要求しない、前記第１の目標オブジェクトに関連する前記少なくとも１つのオブジェクトを削除し、前記第１の目標オブジェクトに関連する残りの１つまたは複数のオブジェクトを前記第２の目標オブジェクトとして決定するように構成される、または
前記クライアントが要求する、前記第１の目標オブジェクトに関連する前記少なくとも１つのオブジェクトの前記アドレス情報に従って、前記検証結果情報の精度を確認し、確認結果に従って、前記クライアントが要求する、前記第１の目標オブジェクトに関連する前記少なくとも１つのオブジェクトから第２の目標オブジェクトを決定するように構成される、請求項7から9のいずれか一項に記載のサーバ。
【請求項１１】
クライアントが要求する、第１の目標オブジェクトの識別子を含む要求をサーバに送信するように構成された送信ユニットと、
前記サーバが前記要求を受信した後で前記サーバによって送信され、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在することを示すために使用される関連指示情報を有する第１の目標オブジェクトを受信し、前記サーバから送信される検証情報を受信するように構成された受信ユニットであって、前記検証情報が、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトのアドレス情報を有する、受信ユニットと、
前記第１の目標オブジェクトに関連する１つまたは複数のオブジェクトのそれぞれが、前記クライアントが要求するものであるのか、または前記クライアントが要求しないものであるのかを決定するために、前記受信ユニットが受信する前記検証情報に従って、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトを検証するように構成された処理ユニットと、を備え、
前記サーバが検証結果情報に従って前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトから第２の目標オブジェクトを決定するように、前記送信ユニットが、前記処理ユニットの検証結果に従って検証結果情報を前記サーバに送信するようにさらに構成され、前記検証結果情報が、前記検証の結果に係る情報であり、前記第２の目標オブジェクトが、前記第１の目標オブジェクトに関連する、前記クライアントが必要としているオブジェクトであり、
前記受信ユニットが、前記サーバから送信される前記第２の目標オブジェクトを受信するようにさらに構成されるクライアント。
【請求項１２】
サーバとクライアントとを備え、
前記サーバは、前記クライアントが要求する第１の目標オブジェクトの識別子を含む前記クライアントからの要求を受信し、前記第１の目標オブジェクトの前記識別子に従って、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在するかどうかを判定し、前記第１の目標オブジェクトに関連する1つまたは複数のオブジェクトが存在すると判定した場合には、前記第１の目標オブジェクトに関連する１つまたは複数のオブジェクトが存在することを示すために使用される関連指示情報を前記第１の目標オブジェクトに付加し、前記第１の目標オブジェクトを前記クライアントに送信するように構成され、前記サーバは、前記第１の目標オブジェクトを送信した後で、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトのアドレス情報を有する検証情報を前記クライアントに送信するようにさらに構成され、
前記クライアントは、前記第１の目標オブジェクトと、前記サーバから送信された検証情報とを受信し、前記第１の目標オブジェクトに関連する１つまたは複数のオブジェクトのそれぞれが、前記クライアントが要求するものであるのか、または前記クライアントが要求しないものであるのかを決定するために、前記検証情報に従って、前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトを検証し、前記検証の結果に係る検証結果情報を前記サーバに送信するように構成され、
前記サーバが、前記検証結果情報に従って前記第１の目標オブジェクトに関連する前記１つまたは複数のオブジェクトから第２の目標オブジェクトを決定し、前記第２の目標オブジェクトを前記クライアントに送信するようにさらに構成され、前記第２の目標オブジェクトが、前記第１の目標オブジェクトに関連する、前記クライアントが必要としているオブジェクトである、
オブジェクトを取得するシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、参照によりその全体が本明細書に組み込まれている、「METHOD, APPARATUS, AND SYSTEM FOR ACQUIRING OBJECT」と題する、2012年11月6日に中国特許庁に出願された、中国特許出願第201210464619.9号の優先権を主張するものである。
【０００２】
本発明は、通信分野に関し、特に、オブジェクトを取得する方法、装置およびシステムに関する。
【背景技術】
【０００３】
C/S(クライアント/サーバ)アーキテクチャを有する通信モデルでは、クライアントがサーバにオブジェクトを要求するとき、一般に、クライアントから要求されたオブジェクトには、多数の関連するオブジェクト、すなわち、クライアントから要求されたオブジェクトと関連付けられた様々なオブジェクトがある。例えば、クライアントがウェブページを要求したとき、要求したウェブページの完全なデータをクライアントが取得することができるのは、そのウェブページに関連付けられたその他の情報(例えばサブページのデータなど)を全て取得した後のみである。ここでは、その他の情報を、関連オブジェクトと呼ぶこともある。したがって、クライアントは、完全な要求したオブジェクトを取得できる前に、クライアントとサーバの間の多くの要求応答プロセスを経なければならない。ネットワーク技術の発展とともに、ネットワーク間の通信は、いっそう複雑になっている。したがって、クライアントがオブジェクトを要求したときのクライアントとサーバの間の要求および応答の数も増加している。現在の限られた帯域幅を考慮すると、このことがネットワークの負担を明らかに増大させ、ネットワーク通信の遅延につながっている。
【０００４】
上記の問題を解決するために、従来技術では、一般に、クライアントキャッシュ技術を使用する。すなわち、いくつかのオブジェクトを一時的にクライアントに格納する。クライアントがサーバにオブジェクトを要求したとき、その要求したオブジェクトがクライアントのキャッシュ内に存在している場合には、クライアントは、そのオブジェクトをキャッシュから直接取得する。
【０００５】
しかし、本発明の実施に際して、発明者は、従来技術の解決策では、クライアントが、キャッシュ内のオブジェクトを直接使用する前に、そのオブジェクトが失効しているかどうかをサーバに問い合わせる必要があり、その後にサーバから送信される応答に従ってキャッシュ内のオブジェクトをそのまま使用するかどうか判断することに気付いた。すなわち、従来技術の解決策では、クライアントが要求するオブジェクトがクライアントのキャッシュ内に存在している場合でも、依然としてクライアントとサーバの間でいくつかの要求応答プロセスが必要となる。したがって、従来技術の解決策を使用することにより、ネットワークデータトラフィックはさらに増大し、ネットワーク通信の遅延につながる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の実施形態は、ネットワークデータトラフィックおよびネットワーク通信遅延を減少させる、オブジェクトを取得する方法、装置およびシステムを提供するものである。
【課題を解決するための手段】
【０００７】
前述の目的を達成するために、本発明の実施形態では、以下の技術的解決策を使用する。
【０００８】
第1の態様では、本発明の実施形態によるオブジェクトを取得する方法は、
クライアントが要求する目標オブジェクト(target object)の識別子情報を含むクライアントの要求を受信するステップと、
目標オブジェクトの識別子情報に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定するステップと、
目標オブジェクトが1つまたは複数の関連オブジェクト(associated object)を有する場合に、目標オブジェクトに関連指示情報を付加し、目標オブジェクトをクライアントに送信して、クライアントが目標オブジェクトの受信後にデータの受信を待機し続けるようにするステップと、
目標オブジェクトの送信を終了した後で、検証情報をクライアントに送信して、クライアントが検証情報に従って目標オブジェクトの関連オブジェクトを検証するようにするステップと、
クライアントの検証結果情報に従って、関連オブジェクトから目標関連オブジェクト(target associated object)を決定するステップと、
目標関連オブジェクトをクライアントに送信するステップと、を含む。
【０００９】
第1の態様に関連して、第1の可能な実施方法では、要求に従って目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定するステップは、
要求を上位レイヤアプリケーションに転送して、上位レイヤアプリケーションが、目標オブジェクトの識別子に従って、所定のインタフェースを起動するかどうかを判定するようにするサブステップと、
所定のインタフェースの起動状況に応じて、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定するサブステップ、あるいは
目標オブジェクトの識別子情報に従って、目標オブジェクトの関連オブジェクトの情報を格納するために使用される関連テーブルに問合せを行って(querying)、問合せ結果に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定するサブステップと、を含む。
【００１０】
第1の態様または第1の態様の第1の可能な実施方法に関連して、第2の可能な実施方法では、関連指示情報は、目標オブジェクトの最終フレームに位置し、関連オブジェクトの検証情報は、関連オブジェクトのアドレス情報および相対失効時間(relative expiry time)を含む。
【００１１】
第1の態様または第1の態様の第1の可能な実施方法に関連して、第3の可能な実施方法では、
検証結果情報が、送信する必要のない関連オブジェクトのアドレス情報を含み、クライアントの検証結果情報に従って、関連オブジェクトから目標関連オブジェクトを決定するステップが、
検証結果情報に従って、関連オブジェクトからクライアントに送信する必要のない関連オブジェクトを削除し、残りの関連オブジェクトを目標関連オブジェクトとして決定するサブステップを含む、あるいは、
検証結果情報が、送信する必要がある関連オブジェクトのアドレス情報を含み、クライアントの検証結果情報に従って、関連オブジェクトから目標関連オブジェクトを決定するステップが、
送信する必要がある関連オブジェクトのアドレス情報に従って、検証結果情報の精度(accuracy)を確認し、確認結果に従って、関連オブジェクトから目標関連オブジェクトを決定するサブステップを含む。
第2の態様では、本発明の実施形態によるオブジェクトを取得する方法は、
要求する目標オブジェクトの識別子情報を含む要求をサーバに送信するステップと、
サーバが要求を受信した後で送信する、目標オブジェクトが1つまたは複数の関連オブジェクトを有することを示すために使用される関連指示情報を搬送する目標オブジェクトを受信するステップと、
サーバから送信される関連オブジェクトの検証情報を受信するステップと、
検証情報に従って関連オブジェクトを検証し、検証結果情報をサーバに送信して、サーバが検証結果情報に従って目標関連オブジェクトを決定するようにするステップと、
サーバから送信された目標関連オブジェクトを受信するステップと、を含む。
【００１２】
第2の態様の第1の可能な実施方法では、関連オブジェクトの検証情報が、関連オブジェクトのアドレス情報および相対失効時間を含み、検証情報に従って関連オブジェクトを検証するステップが、
関連オブジェクトのアドレス情報に従って、対応する関連オブジェクトがキャッシュされているかどうかを判定するサブステップと、
対応する関連オブジェクトがキャッシュされており、かつ対応する関連オブジェクトの存在時間(existence time)と対応する関連オブジェクトの相対失効時間の和が現在時間(current time)より大きい場合には、サーバが対応する関連オブジェクトを送信する必要はないと判定するサブステップ、または、
対応する関連オブジェクトがキャッシュされており、かつ対応する関連オブジェクトの存在時間と対応する関連オブジェクトの相対失効時間の和が現在時間より小さい場合には、サーバが対応する関連オブジェクトを送信する必要があると判定するサブステップとを含む。
【００１３】
第2の態様または第2の態様の第1の可能な実施方法に関連して、第2の態様の第2の可能な実施方法では、検証結果情報は、
サーバが送信する必要のない対応する関連オブジェクトのアドレス情報、またはサーバが送信する必要がある対応する関連オブジェクトのアドレス情報を含む。
【００１４】
第3の態様では、本発明の実施形態によるサーバは、
クライアントが要求する目標オブジェクトの識別子情報を含むクライアントの要求を受信するように構成された受信ユニットと、
受信ユニットが受信する目標オブジェクトの識別子情報に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定するように構成された判断ユニットと、
判断ユニットが、目標オブジェクトが1つまたは複数の関連オブジェクトを有すると判定した場合には、目標オブジェクトに関連指示情報を付加し、目標オブジェクトをクライアントに送信して、クライアントが目標オブジェクトの受信後にデータの受信を待機し続けるようにし、目標オブジェクトの送信を終了した後で、検証情報をクライアントに送信して、クライアントが検証情報に従って目標オブジェクトの関連オブジェクトを検証するように構成された送信ユニットと、
受信ユニットが受信するクライアントの検証結果情報に従って、関連オブジェクトから目標関連オブジェクトを決定するように構成された選択ユニットと、を備え、
送信ユニットは、選択ユニットの処理結果に従って、目標関連オブジェクトをクライアントに送信するようにさらに構成される。
【００１５】
第3の態様の第1の可能な実施方法では、判断ユニットは、
要求を上位レイヤアプリケーションに転送して、上位レイヤアプリケーションが、目標オブジェクトの識別子に従って、所定のインタフェースを起動するかどうかを判定するように構成された転送モジュールと、
上位レイヤアプリケーションが所定のインタフェースを起動する場合には、目標オブジェクトが1つまたは複数の関連オブジェクトを有すると判定し、上位レイヤアプリケーションが所定のインタフェースを起動しない場合には、目標オブジェクトが1つまたは複数の関連オブジェクトを有していないと判定するように構成された処理モジュールとを備え、上位レイヤアプリケーションが目標オブジェクトの識別子情報に従って関連オブジェクトがあると判定した場合には、上位レイヤアプリケーションは、所定のインタフェースを起動し、上位レイヤアプリケーションが目標オブジェクトの識別子情報に従って関連オブジェクトがないと判定した場合には、上位レイヤアプリケーションは、所定のインタフェースを起動しない。
【００１６】
第3の態様に関連して、第3の態様の第2の可能な実施方法では、判断ユニットは、
目標オブジェクトの識別子情報に従って、目標オブジェクトの関連オブジェクトの情報を格納するために使用される関連テーブルに問合せを行うように構成された問合せモジュールと、
問合せモジュールの問合せ結果に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定するように構成された処理モジュールと、を備える。
【００１７】
第3の態様または第3の態様の第2の可能な実施方法に関連して、第3の態様の第3の可能な実施方法では、選択ユニットは、特に、
検証結果情報が、送信する必要のない関連オブジェクトのアドレス情報を含む場合には、検証結果情報に従って、関連オブジェクトからクライアントに送信する必要のない関連オブジェクトを削除し、残りの関連オブジェクトを目標関連オブジェクトとして決定するように構成される、または
検証結果情報が、送信する必要がある関連オブジェクトのアドレス情報を含む場合には、送信する必要がある関連オブジェクトのアドレス情報に従って、検証結果情報の精度を確認し、確認結果に従って関連オブジェクトから目標関連オブジェクトを決定するように構成される。
【００１８】
第4の態様では、本発明の実施形態によるクライアントは、
要求する目標オブジェクトの識別子情報を含む要求をサーバに送信するように構成された送信ユニットと、
サーバが要求を受信した後で送信される目標オブジェクトであって、1つまたは複数の関連オブジェクトを有することを示すために使用される関連指示情報を有する目標オブジェクトを受信し、サーバから送信される関連オブジェクトの検証情報を受信するように構成された受信ユニットと、
受信ユニットが受信する検証情報に従って関連オブジェクトを検証するように構成された処理ユニットと、を備え、
送信ユニットは、処理ユニットの検証結果に従って検証結果情報をサーバに送信して、サーバが検証結果情報に従って目標関連オブジェクトを決定するようにさらに構成され、
受信ユニットは、サーバから送信される目標関連オブジェクトを受信するようにさらに構成される。
【００１９】
第4の態様の第1の可能な実施方法では、関連オブジェクトの検証情報は、関連オブジェクトのアドレス情報および相対失効時間を含み、
処理ユニットは、
関連オブジェクトのアドレス情報に従って、クライアントが対応する関連オブジェクトをキャッシュしているかどうかを判定するように構成された検出モジュールと、
検出モジュールが、対応する関連オブジェクトがキャッシュされていると判定した場合に、対応する関連オブジェクトの存在時間と対応する関連オブジェクトの相対失効時間の和を現在時間と比較するように構成された比較モジュールと、
比較モジュールが、対応する関連オブジェクトの存在時間と対応する関連オブジェクトの相対失効時間の和が現在時間より大きいと判定した場合には、サーバが対応する関連オブジェクトを送信する必要がないと判定し、比較モジュールが、対応する関連オブジェクトの存在時間と対応する関連オブジェクトの相対失効時間の和が現在時間より小さいと判定した場合には、サーバが対応する関連オブジェクトを送信する必要があると判定するように構成された判定モジュールとを備える。
【００２０】
第4の態様または第4の態様の第1の可能な実施方法に関連して、第4の態様の第2の可能な実施方法では、検証結果情報は、
サーバが送信する必要のない対応する関連オブジェクトのアドレス情報、またはサーバが送信する必要がある対応する関連オブジェクトのアドレス情報を含む。
【００２１】
第5の態様では、本発明の実施形態によるオブジェクトを取得するシステムは、
第3の態様のオブジェクトを取得する装置を備えるサーバと、
第4の態様のオブジェクトを取得する装置を備えるクライアントと、を備える。
【００２２】
このオブジェクトを取得する方法、装置およびシステムを使用することにより、サーバがクライアントの要求を受信した後で、サーバは、そのクライアントの要求に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定し、目標オブジェクトが1つまたは複数の関連オブジェクトを有すると判定した場合には、サーバは、目標オブジェクトが1つまたは複数の関連オブジェクトを有することをクライアントに対して示すために使用される関連指示情報を目標オブジェクトに付加する。関連指示情報を有する目標オブジェクトを受信し、目標オブジェクトが関連指示情報を有していると判定した後で、クライアントは、サーバから送信された関連オブジェクトの検証情報に従って関連オブジェクトを検証し、検証結果情報をサーバに送信して、サーバが検証結果情報に従って目標関連オブジェクトを決定し、この目標関連オブジェクトをクライアントに送信するようにする。
【００２３】
上記のプロセスから分かるように、クライアントから要求されたオブジェクトが1つまたは複数の関連オブジェクトを有すると判定した場合には、サーバは、クライアントに送信するオブジェクトに関連指示情報を付加して、クライアントに対して、クライアントが要求したオブジェクトが1つまたは複数の関連オブジェクトを有することを示す。したがって、クライアントがサーバに対して関連オブジェクトを1つ1つ要求する必要がある従来技術と異なり、クライアントは、関連指示情報を取得した後で、サーバの関連オブジェクトの検証情報に従って関連オブジェクトを検証し、その後、サーバが、検証結果情報に従って目標関連オブジェクトを決定し、その目標関連オブジェクトをクライアントに送信する。したがって、本発明の実施形態による方法、装置およびシステムを使用することにより、サーバとクライアントの間の要求/応答の数を大幅に減少させ、それにより、ネットワークデータトラフィックおよびネットワーク通信遅延を減少させることができる。
【００２４】
本発明の実施形態における技術的解決策をより明快に説明するために、以下、それらの実施形態を説明するために必要な添付の図面について簡単に説明する。以下に説明する添付の図面は、本発明の実施形態の一部を示しているに過ぎないことは明らかであり、当業者なら、創造的な努力を必要とすることなく、これらの添付の図面からその他の図面を導き出すことができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施形態1によるオブジェクトを取得する方法を示す流れ図である。
【図２】本発明の実施形態2によるオブジェクトを取得する方法を示す流れ図である。
【図３】本発明の実施形態3によるオブジェクトを取得する方法を示す流れ図である。
【図４】本発明の実施形態4によるサーバを示す概略図である。
【図５】本発明の実施形態5によるクライアントを示す概略図である。
【図６】本発明の実施形態6によるオブジェクトを取得するシステムを示す概略図である。
【図７】本発明の実施形態7による遠隔制御デバイスを示す概略構造図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施形態の添付の図面を参照して、本発明の実施形態における技術的解決策について、明快かつ詳細に説明する。説明する実施形態は、本発明の全ての実施形態ではなく、そのうちの一部に過ぎないことは明らかである。創造的な努力を必要とすることなく本発明のこれらの実施形態に基づいて当業者が得ることができるその他の全ての実施形態は、本発明の保護範囲に含まれるものとする。
【００２７】
図1に示すように、本発明の実施形態1によるオブジェクトを取得する方法は、以下のステップを含む。
【００２８】
ステップ11:サーバが、クライアントの要求を受信する。この要求は、クライアントが要求する目標オブジェクトの識別子情報を含む。
【００２９】
クライアントが要求する目標オブジェクトの識別子情報は、例えばクライアントが要求する目標オブジェクトの名称など、その目標オブジェクトを識別することができる情報とすることができる。
【００３０】
ステップ12:サーバが、目標オブジェクトの識別子情報に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定する。
【００３１】
本明細書のサーバは、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを、少なくとも以下の2つの方法で判定することができる。
【００３２】
方法1:サーバは、受動発見モードで、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定する。すなわち、サーバは、上位レイヤアプリケーションの処理結果に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定する。本発明の本実施形態では、サーバが位置するソフトウェアレイヤと上位レイヤアプリケーション(例えばアプリケーションレイヤなど)との間に、所定のインタフェースを設ける。クライアントの要求を受信した後で、サーバは、この要求を上位レイヤアプリケーションに転送する。したがって、サーバは、その要求で運ばれた目標オブジェクトの識別子情報を取得することができ、上位レイヤアプリケーションも、この目標オブジェクトの識別子情報を取得することができる。上位レイヤアプリケーションは、目標オブジェクトの識別子情報に従って、上記の所定のインタフェースを起動するかどうかを判定する。具体的には、上位レイヤアプリケーションは、上位レイヤアプリケーションの設定に従って、1つまたは複数の関連オブジェクトがあるかどうかを判定する。目標オブジェクトの識別子情報に従って、1つまたは複数の関連オブジェクトがあると判定したときには、上位レイヤアプリケーションは、上記の所定のインタフェースを起動する。こうして、サーバは、上位レイヤアプリケーションが所定のインタフェースを起動したという情報に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有すると判定することができる。それ以外の場合には、上位レイヤアプリケーションは、インタフェースを起動せず、サーバは、目標オブジェクトが関連オブジェクトを有していないと判定することができる。
【００３３】
方法2:サーバは、目標オブジェクトの識別子情報に従って、目標オブジェクトの関連オブジェクトの情報を格納するために使用される関連テーブルに問い合わせ、問合せの結果に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定する。
【００３４】
方法2と比較して、方法1の方が、普遍性が高い。さらに、本発明の本実施形態では、1つまたは複数の関連オブジェクトがある可能性がある。
【００３５】
ステップ13:目標オブジェクトが1つまたは複数の関連オブジェクトを有する場合には、サーバは、関連指示情報を目標オブジェクトに付加し、目標オブジェクトをクライアントに送信して、クライアントが目標オブジェクトの受信後もデータの受信を待機し続けるようにする。
【００３６】
サーバは、クライアントの要求に従って、目標オブジェクトをクライアントに送信する。上位レイヤアプリケーションの処理結果に従って、関連オブジェクトがあると判定した場合には、サーバは、関連指示情報を目標オブジェクトに付加する。この関連指示情報は、目標オブジェクトが1つまたは複数の関連オブジェクトを有することをクライアントに対して示すために使用される。
【００３７】
関連指示情報は、目標オブジェクトのどの1つのフレーム内に位置していてもよい。ただし、関連指示情報を求めて目標オブジェクトを検索する際のクライアントの圧力を緩和し、検索の効率を向上させるために、関連指示情報は、目標オブジェクトの最終フレームに位置付けることができる。
【００３８】
目標オブジェクトが関連指示情報を有する場合には、クライアントは、従来技術のように別の要求をサーバに送信するのではなく、サーバから次のデータが送信されるのを待機し続ける。
【００３９】
ステップ14:目標オブジェクトの送信を終了した後で、サーバが、検証情報をクライアントに送信して、クライアントがその検証情報に従って目標オブジェクトの関連オブジェクトを検証するようにする。
【００４０】
このステップで、関連オブジェクトの検証情報は、関連オブジェクトのアドレス情報および相対失効時間を含む。関連オブジェクトのアドレス情報は、サーバ内の関連オブジェクトの格納位置情報の抽象表現である。関連オブジェクトの異なる表示(manifestation)に応じて、関連オブジェクトのアドレス情報も、異なる表示を有する。例えば、関連オブジェクトがファイルである場合には、その関連オブジェクトのアドレス情報は、そのファイルパスとすることができる。
【００４１】
ステップ15:サーバが、クライアントの検証結果情報に従って、関連オブジェクトから目標関連オブジェクトを決定する。
【００４２】
検証情報に従って検証を実行した後で、クライアントは、検証結果情報をサーバに送信する。クライアントは、いくつかのオブジェクトをキャッシュすることができ、その場合、一時的に格納されるオブジェクトは、まだ失効していないものでも、既に失効しているものでもよい。クライアントに一時的に格納されたオブジェクトが失効していない場合には、サーバは、これらのオブジェクトをクライアントに再度送信する必要はない。これらの関連オブジェクトの中で、クライアントが本当に必要としている関連オブジェクトを、本明細書では「目標関連オブジェクト」とする。したがって、クライアントの検証結果情報は、送信する必要のない関連オブジェクトのアドレス情報である場合もあれば、送信する必要がある関連オブジェクトのアドレス情報である場合もある。本実施形態では、送信する必要のない関連オブジェクトのアドレス情報は、「否定アドレス番号リスト」に格納することができ、送信する必要がある関連オブジェクトのアドレス情報は、「肯定アドレス番号リスト」に格納することができる。
【００４３】
検証結果情報が、送信する必要のない関連オブジェクトのアドレス情報を含む場合には、サーバは、その検証結果情報に従って、クライアントが送信する必要のない関連オブジェクトを、関連オブジェクトから削除し、残りの関連オブジェクトを目標関連オブジェクトとして決定する。
【００４４】
検証結果情報が、送信する必要がある関連オブジェクトのアドレス情報を含む場合には、サーバは、その送信する必要のある関連オブジェクトのアドレス情報に従って、検証結果情報の精度を確認し、確認結果に従って、関連オブジェクトから目標関連オブジェクトを決定する。「検証結果情報の精度を確認する」とは、その送信する必要のある関連オブジェクトをクライアントが本当に必要としているかどうかを確認するということであり、その送信する必要のある関連オブジェクトをクライアントが本当に必要としていると確認した場合には、サーバは、そのクライアントが必要としている関連オブジェクトを、目標関連オブジェクトとして選択し、その送信する必要のある関連オブジェクトをクライアントが本当に必要とはしていないと確認した場合には、サーバは、そのクライアントに送信する必要がない関連オブジェクトを、関連オブジェクトから削除し、残りの関連オブジェクトを目標関連オブジェクトとして決定する。このプロセスから分かるように、検証結果情報が送信する必要のない関連オブジェクトのアドレス情報を含む場合と比較して、この場合には、サーバは、クライアントの検証結果情報に従って、送信する必要があってクライアントから送信される関連オブジェクトのアドレス情報が正確であるかどうかを検証する必要がある、すなわちサーバは、送信する必要があってクライアントによって決定された関連オブジェクトの情報が正しいかどうかを判定する。
【００４５】
ステップ16:サーバが、目標関連オブジェクトをクライアントに送信する。
【００４６】
サーバは、目標関連オブジェクトを決定した後で、目標関連オブジェクトをクライアントに送信する。クライアントは、目標関連オブジェクトを取得した後で、要求した目標オブジェクトの全体を取得することができる。
【００４７】
上記のプロセスから分かるように、クライアントから要求されたオブジェクトが1つまたは複数の関連オブジェクトを有する場合には、サーバは、クライアントに送信されるオブジェクトに関連指示情報を付加して、クライアントに対して、クライアントが要求したオブジェクトが1つまたは複数の関連オブジェクトを有することを示す。したがって、クライアントがサーバに対して関連オブジェクトを1つ1つ要求する必要がある従来技術と異なり、クライアントは、関連指示情報を取得した後で、サーバの関連オブジェクトの検証情報に従って関連オブジェクトを検証し、その後、サーバが、検証結果情報に従って目標関連オブジェクトを決定し、その目標関連オブジェクトをクライアントに送信する。したがって、本発明の実施形態1による方法を使用することにより、サーバとクライアントの間の要求/応答の数を大幅に減少させ、それにより、ネットワークデータトラフィックおよびネットワーク通信遅延を減少させることができる。
【００４８】
図2に示すように、本発明の実施形態2によるオブジェクトを取得する方法は、以下のステップを含む。
【００４９】
ステップ21:クライアントが、サーバに要求を送信する。この要求は、要求する目標オブジェクトの識別子情報を含む。
【００５０】
この目標オブジェクトの識別子情報は、ステップ11で述べたのと同じ意味を有する。
【００５１】
ステップ22:クライアントが、サーバが要求を受信した後でサーバから送信される目標オブジェクトを受信する。この目標オブジェクトは、関連指示情報を搬送し、この関連指示情報は、目標オブジェクトが1つまたは複数の関連オブジェクトを有することを示すために使用される。
【００５２】
サーバが送信した目標オブジェクトを受信した後で、クライアントは、最初に目標オブジェクトを構文解析して、目標オブジェクトで運ばれる関連指示情報を取得し、次いで、この目標オブジェクトが1つまたは複数の関連オブジェクトを有すると判定する。
【００５３】
ステップ23:クライアントが、サーバから送信される関連オブジェクトの検証情報を受信する。
【００５４】
実施形態1の説明では、サーバは、一般に、関連指示情報を目標オブジェクトの最終フレームに含める。したがって、このステップでは、クライアントは、目標オブジェクトの最終フレームの関連指示情報を読み取ることによって目標オブジェクトが1つまたは複数の関連オブジェクトを有していると判定したときに、サーバに対する要求の送信を継続するのではなく、サーバから送信される関連オブジェクトの検証情報を待機して、サーバから送信される関連オブジェクトの検証情報を受信するようになっている。
【００５５】
実施形態1で述べたように、関連オブジェクトの検証情報は、関連オブジェクトのアドレス情報および相対失効時間を含む。
【００５６】
ステップ24:クライアントが、検証情報に従って関連オブジェクトを検証し、検証結果情報をサーバに送信して、サーバが検証結果情報に従って目標関連オブジェクトを決定するようにする。
【００５７】
このステップでは、クライアントは、最初に、関連オブジェクトのアドレス情報に従って、クライアントが関連オブジェクトのアドレス情報に対応する関連オブジェクトをキャッシュしているかどうかを判定する。対応する関連オブジェクトをキャッシュしている場合には、クライアントは、その対応する関連オブジェクトの存在時間と相対失効時間の和を現在時間と比較する。対応する関連オブジェクトの存在時間と相対失効時間の和が現在時間より大きい場合には、クライアントは、サーバがその対応する関連オブジェクトを送信する必要はないと判定する。対応する関連オブジェクトの存在時間と相対失効時間の和が現在時間より小さい場合には、クライアントは、サーバがその対応する関連オブジェクトを送信する必要があると判定する。
【００５８】
したがって、クライアントの検証結果情報は、以下の2種類の情報を含むことができる。すなわち、送信する必要のない関連オブジェクトのアドレス情報と、送信する必要がある関連オブジェクトのアドレス情報である。前述のように、本実施形態では、送信する必要のない関連オブジェクトのアドレス情報は、「否定アドレス番号リスト」に格納することができ、送信する必要がある関連オブジェクトのアドレス情報は、「肯定アドレス番号リスト」に格納することができる。
【００５９】
ステップ25:クライアントが、サーバから送信される目標関連オブジェクトを受信する。
【００６０】
前述のプロセスから分かるように、サーバは、クライアントから要求されたオブジェクトが1つまたは複数の関連オブジェクトを有すると判定したときには、クライアントに送信するオブジェクトに関連指示情報を付加して、クライアントに対し、クライアントが要求したオブジェクトが1つまたは複数の関連オブジェクトを有することを示す。したがって、クライアントがサーバに対して関連オブジェクトを1つ1つ要求する必要がある従来技術と異なり、クライアントは、関連指示情報を取得した後で、サーバの関連オブジェクトの検証情報に従って関連オブジェクトを検証し、その後、サーバが、検証結果情報に従って目標関連オブジェクトを決定し、その目標関連オブジェクトをクライアントに送信する。したがって、本発明の実施形態2による方法を使用することにより、サーバとクライアントの間の要求/応答の数を大幅に減少させ、それにより、ネットワークデータトラフィックおよびネットワーク通信遅延を減少させることができる。
【００６１】
実施形態3に関連して、以下、本発明の実施形態によるオブジェクトを取得する方法の具体的なプロセスについて述べる。図3に示すように、本発明の実施形態3によるオブジェクトを取得する方法は、以下のステップを含む。
【００６２】
ステップ31:クライアントが、サーバに要求を送信する。この要求は、要求される目標オブジェクトの識別子情報を含む。
【００６３】
ステップ32:サーバが、クライアントの要求を受信し、その要求に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定する。
【００６４】
ステップ33:目標オブジェクトが1つまたは複数の関連オブジェクトを有すると判定したときに、サーバが、関連指示情報を目標オブジェクトに付加し、この目標オブジェクトをクライアントに送信する。関連指示情報は、クライアントに対して、目標オブジェクトが1つまたは複数の関連オブジェクトを有することを示すために使用される。関連指示情報は、目標オブジェクトの最終フレームに位置している。
【００６５】
ステップ34:クライアントが、サーバから送信された目標オブジェクトを受信し、関連指示情報に従って目標オブジェクトが1つまたは複数の関連オブジェクトを有すると判定した場合には、データを待機し続ける。
【００６６】
ステップ35:サーバが、関連オブジェクトの検証情報をクライアントに送信する。関連オブジェクトの検証情報は、関連オブジェクトのアドレス情報および相対失効時間を含む。
【００６７】
ステップ36:クライアントが、サーバから送信される関連オブジェクトの検証情報を受信し、その検証情報に従って関連オブジェクトを検証する。
【００６８】
ステップ37:クライアントが、検証結果情報をサーバに送信する。検証結果情報は、サーバが送信する必要のない対応する関連オブジェクトのアドレス情報を含む。
【００６９】
ステップ38:サーバが、クライアントの検証結果情報に従って、関連オブジェクトから目標関連オブジェクトを決定し、クライアントが送信する必要のない関連オブジェクトを削除する。
【００７０】
ステップ39:サーバが、目標関連オブジェクトをクライアントに送信する。
【００７１】
なお、上記のプロセスは、反復プロセスであることに留意されたい。サーバから送信される目標関連オブジェクトが他の関連オブジェクトを有するときには、前述のプロセスを繰り返して、それらの他の関連オブジェクトの目標関連オブジェクトを送信することができる。さらに、関連オブジェクトの検証情報に含まれる関連オブジェクトのアドレス情報および相対失効時間は、1つのメッセージを用いてクライアントに送信してもよいし、2つのメッセージを用いてクライアントに送信してもよい。
【００７２】
上記から分かるように、本発明の実施形態3による方法を使用することにより、サーバとクライアントの間の要求/応答の数を大幅に減少させ、それにより、ネットワークデータトラフィックおよびネットワーク通信遅延を減少させることができる。
【００７３】
特定の適用分野では、本発明の実施形態による方法を、既存のhttpプロトコルの改良に適用することもできる。httpプロトコルに基づくウェブアプリケーションは、最も広範に展開されるインターネットアプリケーションの1つである。このプロトコルは、主に以下の特徴を有する。すなわち、(1)クライアントは、所要のデータを取得するためには、そのデータが既にクライアントのキャッシュに存在する場合でも、サーバに要求を送信する必要があり、(2)クライアントは、例えば70ファイルなど大量のデータを取得したい場合には、全てのデータを取得するためには、サーバに対して要求を1つ1つ送信する必要がある。
【００７４】
本発明の実施形態の方法によれば、クライアントがウェブページを要求したとき、サーバは、クライアントから要求されたウェブページが、クライアントに送信する必要がある多数のサブページを有していると判定する。この場合には、クライアントの要求に応答するときに、サーバは、ウェブページデータの最終フレームに関連指示情報を付加して、そのウェブページが関連サブページを有することを示す、すなわち、サーバは、他のファイルをクライアントに送信することになる。次いで、サーバは、関連サブページのアドレスリストおよび相対失効時間リストをクライアントに送信する。関連サブページのアドレスリストおよび相対失効時間リストに従って検証した後で、クライアントは、否定アドレス番号リストをサーバに返送することがある。サーバは、この否定アドレス番号リストに従って、否定アドレスに対応するサブページを削除することができ、その後、他のサブページをクライアントに送信することができる。一方、httpは必ずしも常時接続とは限らないので、サーバは、クライアントの要求に応答するときに、ヘッダにキープアライブヘッダフィールドを追加する必要がある。
【００７５】
クライアントとサーバの間に最初に70個の要求があると仮定すると、本発明の実施形態による方法を使用することにより、クライアントとサーバの間の要求を、クライアントの要求1つとサーバへの応答1つに変化させることにより、クライアントからサーバへの98回のデータ伝送を削減することになる。
【００７６】
さらに、本発明の実施形態による方法は、既存のSPDY(speedy、スピーディ)プロトコルの改良にも適用することができる。SPDYプロトコルは、GOOGLEが開始した新世代のウェブプロトコルである。このプロトコルでは、プッシュ(push)機構が既に採用されているが、具体的な実装プロセスは提供されていない。本発明の実施形態による方法を使用することにより、SPDYプロトコルのプッシュ機構をうまく実装することができる。
【００７７】
図4に示すように、本発明の第4の実施形態によるサーバ4は、
クライアントが要求する目標オブジェクトの識別子情報を含むクライアントの要求を受信するように構成された受信ユニット41と、受信ユニット41が受信する目標オブジェクトの識別子情報に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定するように構成された判断ユニット42と、判断ユニット42が、目標オブジェクトが1つまたは複数の関連オブジェクトを有すると判定した場合には、目標オブジェクトに関連指示情報を付加し、目標オブジェクトをクライアントに送信して、クライアントが目標オブジェクトの受信後にデータの受信を待機し続けるようにし、目標オブジェクトの送信を終了した後で、関連オブジェクトの検証情報をクライアントに送信して、クライアントが検証情報に従って関連オブジェクトを検証するように構成された送信ユニット43と、受信ユニット41が受信するクライアントの検証結果情報に従って、関連オブジェクトから目標関連オブジェクトを決定するように構成された選択ユニット44とを備え、送信ユニット43は、選択ユニット44の処理結果に従って、目標関連オブジェクトをクライアントに送信するようにさらに構成される。
【００７８】
判断ユニット42は、
要求を上位レイヤアプリケーションに転送して、その結果上位レイヤアプリケーションが、目標オブジェクトの識別子情報に従って、所定のインタフェースを起動するかどうかを判定するように構成された転送モジュールと、上位レイヤアプリケーションが所定のインタフェースを起動する場合には、目標オブジェクトが1つまたは複数の関連オブジェクトを有すると判定し、上位レイヤアプリケーションが所定のインタフェースを起動しない場合には、目標オブジェクトが関連オブジェクトを有していないと判定するように構成された処理モジュールとを備えることができ、上位レイヤアプリケーションが目標オブジェクトの識別子情報に従って関連オブジェクトがあると判定した場合には、上位レイヤアプリケーションは、所定のインタフェースを起動し、上位レイヤアプリケーションが目標オブジェクトの識別子情報に従って関連オブジェクトがないと判定した場合には、上位レイヤアプリケーションは、所定のインタフェースを起動しない。
【００７９】
あるいは、判断ユニット42は、
目標オブジェクトの識別子情報に従って、目標オブジェクトの関連オブジェクトの情報を格納するために使用される関連テーブルに問合せを行うように構成された問合せモジュールと、問合せモジュールの問合せ結果に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定するように構成された処理モジュールとを備えることもできる。
【００８０】
上記の方法の実施形態で述べたように、関連指示情報は、目標オブジェクトの最終フレームに位置してもよく、関連オブジェクトの検証情報は、関連オブジェクトのアドレス情報および相対失効時間を含むことができる。
【００８１】
選択ユニット44は、特に、検証結果情報が、送信する必要のない関連オブジェクトのアドレス情報を含む場合には、検証結果情報に従って、関連オブジェクトからクライアントに送信する必要のない関連オブジェクトを削除し、残りの関連オブジェクトを目標関連オブジェクトとして決定するように構成する、
または検証結果情報が、送信する必要がある関連オブジェクトのアドレス情報を含む場合には、送信する必要がある関連オブジェクトのアドレス情報に従って、検証結果情報の精度を確認し、確認結果に従って関連オブジェクトから目標関連オブジェクトを決定するように構成することができる。「検証結果情報の精度を確認する」とは、送信する必要のある関連オブジェクトをクライアントが本当に必要としているかどうかを確認することであり、送信する必要がある関連オブジェクトをクライアントが本当に必要としていると確認した場合には、選択ユニット44は、クライアントが必要としている関連オブジェクトを目標関連オブジェクトとして選択し、送信する必要がある関連オブジェクトをクライアントが本当に必要とはしていないと確認した場合には、選択ユニット44は、関連オブジェクトからクライアントに送信する必要のない関連オブジェクトを削除し、残りの関連オブジェクトを目標関連オブジェクトとして決定する。
【００８２】
上記の説明から分かるように、クライアントから要求されたオブジェクトが1つまたは複数の関連オブジェクトを有すると判定した場合には、サーバは、クライアントに送信するオブジェクトに関連指示情報を付加して、クライアントに対して、クライアントが要求したオブジェクトが1つまたは複数の関連オブジェクトを有することを示す。したがって、クライアントがサーバに対して関連オブジェクトを1つ1つ要求する必要がある従来技術と異なり、クライアントは、関連指示情報を取得した後で、サーバの関連オブジェクトの検証情報に従って関連オブジェクトを検証し、その後、サーバが、検証結果情報に従って目標関連オブジェクトを決定し、その目標関連オブジェクトをクライアントに送信する。したがって、本発明の実施形態4による装置を使用することにより、サーバとクライアントの間の要求/応答の数を大幅に減少させ、それにより、ネットワークデータトラフィックおよびネットワーク通信遅延を減少させることができる。
【００８３】
図5に示すように、本発明の実施形態5によるクライアント5は、
要求する目標オブジェクトの識別子情報を含む要求をサーバに送信するように構成された送信ユニット51と、サーバが要求を受信した後で送信する、目標オブジェクトが1つまたは複数の関連オブジェクトを有することを示すために使用される関連指示情報を有する目標オブジェクトを受信し、サーバから送信される関連オブジェクトの検証情報を受信するように構成された受信ユニット52と、受信ユニット52が受信する検証情報に従って関連オブジェクトを検証するように構成された処理ユニット53とを備え、送信ユニット51は、処理ユニット53の検証結果に従って検証結果情報をサーバに送信して、その結果サーバが検証結果情報に従って目標関連オブジェクトを決定するようにさらに構成され、受信ユニット52は、サーバから送信される目標関連オブジェクトを受信するようにさらに構成される。
【００８４】
関連オブジェクトの検証情報は、関連オブジェクトのアドレス情報および相対失効時間を含む。処理ユニット53は、関連オブジェクトのアドレス情報に従って、クライアントが対応する関連オブジェクトをキャッシュしているかどうかを判定するように構成された検出モジュールと、検出モジュールが対応する関連オブジェクトがキャッシュされていると判定した場合に、対応する関連オブジェクトの存在時間と対応する関連オブジェクトの相対失効時間の和を現在時間と比較するように構成された比較モジュールと、比較モジュールが対応する関連オブジェクトの存在時間と対応する関連オブジェクトの相対失効時間の和が現在時間より大きいと判定した場合には、サーバが対応する関連オブジェクトを送信する必要がないと判定し、比較モジュールが対応する関連オブジェクトの存在時間と対応する関連オブジェクトの相対失効時間の和が現在時間より小さいと判定した場合には、サーバが対応する関連オブジェクトを送信する必要があると判定するように構成された判定モジュールと、を備えることができる。
【００８５】
前述のように、検証結果情報は、サーバが送信する必要のない対応する関連オブジェクトのアドレス情報、またはサーバが送信する必要がある、対応する関連オブジェクトのアドレス情報を含んでもよい。
【００８６】
上記の説明から分かるように、クライアントから要求されたオブジェクトが1つまたは複数の関連オブジェクトを有すると判定した場合には、サーバは、クライアントに送信するオブジェクトに関連指示情報を付加して、クライアントに対して、クライアントが要求したオブジェクトが1つまたは複数の関連オブジェクトを有することを示す。したがって、クライアントがサーバに対して関連オブジェクトを1つ1つ要求する必要がある従来技術と異なり、クライアントは、関連指示情報を取得した後で、サーバの関連オブジェクトの検証情報に従って関連オブジェクトを検証し、その後、サーバが、検証結果情報に従って目標関連オブジェクトを決定し、その目標関連オブジェクトをクライアントに送信する。したがって、本発明の実施形態5による装置を使用することにより、サーバとクライアントの間の要求/応答の数を大幅に減少させ、それにより、ネットワークデータトラフィックおよびネットワーク通信遅延を減少させることができる。
【００８７】
本発明の実施形態による装置の動作原理の詳細については、前述の方法の実施形態の説明を参照すればよい。
【００８８】
さらに、図6に示すように、本発明の実施形態6は、サーバとクライアントとを含む、オブジェクトを取得するシステムも提供する。このサーバの構成要素および動作原理の詳細については、図4に示すサーバの構成要素および動作原理を参照すればよい。このクライアントの構成要素および動作原理の詳細については、図5に示すクライアントの構成要素および動作原理を参照すればよい。
【００８９】
図7は、本発明の実施形態7によるリモートコントロールデバイスを示す概略構造図である。図7に示すように、本実施形態によるリモートコントロールデバイス7は、少なくとも1つのプロセッサ701と、メモリ702と、通信インタフェース703と、バスとを備える。プロセッサ701、メモリ702および通信インタフェース703は、バスを介して接続され、相互通信を実行する。バスは、業界標準アーキテクチャ(Industry Standard Architecture、略記ISA)バス、周辺機器相互接続(PCI)バスおよび拡張業界標準アーキテクチャ(Extended Industry Standard Architecture、略記EISA)バスなどとすることができる。バスは、アドレスバス、データバスおよび制御バスなどに分割することができる。分かりやすくするために、図7では、太線1本のみを用いてバスを表しているが、これは、バスが1本しかない、またはバスが1種類しかないという意味ではない。
【００９０】
メモリ702は、コンピュータ動作命令を含む、実行可能プログラムコードを格納するように構成される。メモリ702は、高速RAMメモリを含むことができ、さらに例えば少なくとも1つの磁気ディスクメモリなどの不揮発性メモリを含むこともできる。
【００９１】
一実施形態では、プロセッサ701は、メモリ702に格納された実行可能プログラムコードを読み取ることによって、この実行可能プログラムコードに対応するプログラムを実行して、
クライアントが要求する目標オブジェクトの識別子情報を含むクライアントの要求を受信し、
目標オブジェクトの識別子情報に従って、目標オブジェクトが1つまたは複数の関連オブジェクトを有するかどうかを判定し、
目標オブジェクトが1つまたは複数の関連オブジェクトを有する場合に、目標オブジェクトに関連指示情報を付加し、目標オブジェクトをクライアントに送信して、クライアントが目標オブジェクトの受信後にデータの受信を待機し続けるようにし、
目標オブジェクトの送信を終了した後で、検証情報をクライアントに送信して、クライアントが検証情報に従って目標オブジェクトの関連オブジェクトを検証するようにし、
クライアントの検証結果情報に従って、関連オブジェクトから目標関連オブジェクトを決定し、
目標関連オブジェクトをクライアントに送信する。
【００９２】
別の実施形態では、プロセッサ701は、メモリ702に格納された実行可能プログラムコードを読み取ることによって、この実行可能プログラムコードに対応するプログラムを実行して、
要求する目標オブジェクトの識別子情報を含む要求をサーバに送信し、
サーバにより要求が受信された後で送信される、目標オブジェクトが1つまたは複数の関連オブジェクトを有することを示すために使用される関連指示情報を有する目標オブジェクトを受信し、
サーバから送信される関連オブジェクトの検証情報を受信し、
検証情報に従って関連オブジェクトを検証し、検証結果情報をサーバに送信して、サーバが検証結果情報に従って目標関連オブジェクトを決定するようにし、
サーバから送信された目標関連オブジェクトを受信する。
【００９３】
プロセッサ701は、本発明の実施形態では、中央処理装置(Central Processing Unit、略記CPU)または特定用途向け集積回路(Application Specific Integrated Circuit、略記ASIC)としてもよいし、あるいは1つまたは複数の集積回路として構成してもよい。
【００９４】
なお、前述の機能に加えて、プロセッサ701は、ここではさらに説明されない、前述の方法の実施形態のその他のプロセスを実行するように構成することもできることに留意されたい。
【００９５】
通信インタフェース703は、主として、本実施形態のデバイスと別のデバイスまたは装置との間の通信を実施するように構成される。
【００９６】
当業者なら、実施形態の方法のプロセスの全てまたは一部を、コンピュータプログラムが関連するハードウェアに命令することによって実施することができることを理解することができるであろう。このプログラムは、コンピュータ可読記憶媒体に格納することができる。プログラムが実行されると、前述の実施形態の方法のプロセスが実行される。記憶媒体は、磁気ディスク、光ディスク、読取り専用メモリ(ROM)またはランダムアクセスメモリ(RAM)などであってもよい。
【００９７】
上記の説明は、単なる本発明の具体的な実施形態に過ぎず、本発明の保護範囲を限定するためのものではない。本発明が開示する技術的範囲内に含まれる当業者が容易に思い付く任意の変形または置換は、本発明の保護範囲に含まれるものとする。したがって、本発明の保護範囲は、特許請求の範囲の保護範囲によって決まるものとする。
【符号の説明】
【００９８】
4  サーバ
41  受信ユニット
42  判断ユニット
43  送信ユニット
44  選択ユニット
5  クライアント
51  送信ユニット
52  受信ユニット
53  処理ユニット
6  システム
61  受信ユニット
62  判断ユニット
63  送信ユニット
64  選択ユニット
65  送信ユニット
66  受信ユニット
67  処理ユニット
7  遠隔制御デバイス
701  プロセッサ
702  メモリ
703  通信インタフェース
【図１】
0006089346.tif 000002
【図２】
0006089346.tif 000003
【図３】
0006089346.tif 000004
【図４】
0006089346.tif 000005
【図５】
0006089346.tif 000006
【図６】
0006089346.tif 000007
【図７】
0006089346.tif 000008