JP6432598B2 - クライアント装置、サーバ、記録媒体および情報処理方法 - Google Patents

クライアント装置、サーバ、記録媒体および情報処理方法 Download PDF

Info

Publication number
JP6432598B2
JP6432598B2 JP2016515869A JP2016515869A JP6432598B2 JP 6432598 B2 JP6432598 B2 JP 6432598B2 JP 2016515869 A JP2016515869 A JP 2016515869A JP 2016515869 A JP2016515869 A JP 2016515869A JP 6432598 B2 JP6432598 B2 JP 6432598B2
Authority
JP
Japan
Prior art keywords
group
client device
source
cache
server
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
JP2016515869A
Other languages
English (en)
Other versions
JPWO2015166680A1 (ja
Inventor
倫彦 菱沼
倫彦 菱沼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Publication of JPWO2015166680A1 publication Critical patent/JPWO2015166680A1/ja
Application granted granted Critical
Publication of JP6432598B2 publication Critical patent/JP6432598B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Description

本開示は、クライアント装置、サーバ、記録媒体および情報処理方法に関する。
通信ネットワークの整備や端末装置の性能の向上によって、ウェブページなどのコンテンツをモバイル環境で閲覧する機会が増加している。しかしながら、通信ネットワークが整備されたとはいえ、モバイル環境を提供する通信ネットワークにおけるデータの伝送量は、固定環境におけるものに比べると小さい。従って、モバイル環境からコンテンツにアクセスする際のラウンドトリップタイムは、固定環境に比べて長くなりがちである。
例えば、特許文献1では、ウェブページを構成している比較的大きなコンテンツデータを、ページ情報と独立したオブジェクトとして記憶手段に登録して、効率よく利用する技術が提案されている。これによって、ウェブページのコンテンツデータ(画像および音声)を毎回ダウンロードしなくても再生可能になり、迅速にウェブページの再生を開始できる。このような技術を利用すれば、固定環境と同様にモバイル環境でも、ラウンドトリップタイムを短縮して迅速にコンテンツを出力することができる。
国際公開第2005/033952号
しかしながら、上記の特許文献1に記載されたような技術では、端末装置にコンテンツデータが記憶されていなければ、ネットワークを介してサーバからコンテンツデータを取得しなければならない。従って、上記の技術は、端末装置が同じコンテンツ(例えばウェブページ)に何度も繰り返してアクセスする場合にはコンテンツの出力を十分に高速化できるものの、そうではない場合には十分な効果を発揮できるとは必ずしもいえなかった。
そこで、本開示では、モバイル環境におけるコンテンツの出力をさらに高速化することが可能な、新規かつ改良されたクライアント装置、サーバ、記録媒体および情報処理方法を提案する。
本開示によれば、コンテンツのソースが格納されるキャッシュと、上記キャッシュに格納された上記ソースを示す情報を、外部ネットワークを介さずに通信可能なクライアント装置のグループを管理するサーバに送信するキャッシュ情報送信部と、上記サーバから提供される情報に基づいて、出力が要求されたコンテンツのソースを上記グループ内の他のクライアント装置から取得する外部キャッシュ取得部と、上記出力が要求されたコンテンツのソースの少なくとも一部が上記他のクライアント装置から取得されなかった場合に、該取得されなかったソースをコンテンツサーバから上記外部ネットワークを介して取得するソース取得部とを備えるクライアント装置が提供される。
また、本開示によれば、外部ネットワークを介さずに通信可能なクライアント装置のグループを管理するグループ管理部と、上記グループに参加しているクライアント装置がキャッシュしているコンテンツのソースを示す情報を受信するキャッシュ情報受信部と、上記クライアント装置が出力を要求されたコンテンツのソースを上記グループ内の他のクライアント装置から取得するための情報を上記クライアント装置に提供するキャッシュ情報提供部とを備えるサーバが提供される。
また、本開示によれば、コンテンツのソースが格納されるキャッシュを備えるクライアント装置のプロセッサに、上記キャッシュに格納された上記ソースを示す情報を、外部ネットワークを介さずに通信可能なクライアント装置のグループを管理するサーバに送信する機能と、上記サーバから提供される情報に基づいて、出力が要求されたコンテンツのソースを上記グループ内の他のクライアント装置から取得する機能と、上記出力が要求されたコンテンツのソースの少なくとも一部が上記他のクライアント装置から取得されなかった場合に、該取得されなかったソースをコンテンツサーバから上記外部ネットワークを介して取得する機能とを実現させるためのプログラムが格納された記録媒体が提供される。
また、本開示によれば、プロセッサが、外部ネットワークを介さずに通信可能なクライアント装置のグループを管理することと、上記グループに参加しているクライアント装置がキャッシュしているコンテンツのソースを示す情報を受信することと、上記クライアント装置が出力を要求されたコンテンツのソースを上記グループ内の他のクライアント装置から取得するための情報を上記クライアント装置に提供することとを含む情報処理方法が提供される。
以上説明したように本開示によれば、モバイル環境におけるコンテンツの出力をさらに高速化することができる。
なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
本開示の第1の実施形態に係るシステムの概略的な構成を示す図である。 図1に示すシステムに複数の管理サーバが含まれる例を示す図である。 本開示の第1の実施形態に係るクライアント装置の概略的な機能構成を示すブロック図である。 本開示の第1の実施形態に係る管理サーバの概略的な機能構成を示すブロック図である。 本開示の第1の実施形態において管理サーバが保持するグループ内キャッシュDBの例を示す図である。 本開示の第1の実施形態においてグループに新たに参加するクライアント装置における処理の例を示すフローチャートである。 図6に示したグループの探索処理をより詳細に示すフローチャートである。 本開示の第1の実施形態においてクライアント装置のグループへの参加を受け付ける管理サーバの処理を示すフローチャートである。 本開示の第1の実施形態においてコンテンツを出力するクライアント装置の処理の例を示すフローチャートである。 本開示の第2の実施形態に係るクライアント装置の概略的な機能構成を示すブロック図である。 本開示の第2の実施形態に係る管理サーバの概略的な機能構成を示すブロック図である。 本開示の第3の実施形態に係るシステムの概略的な構成を示す図である。 本開示の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
なお、説明は以下の順序で行うものとする。
1.第1の実施形態
1−1.システム構成
1−2.クライアント装置の機能構成
1−3.管理サーバの機能構成
1−4.グループ内キャッシュDBの例
1−5.グループ管理の処理フローの例
1−6.コンテンツ出力の処理フロー
2.第2の実施形態
3.第3の実施形態
4.ハードウェア構成
5.補足
(1.第1の実施形態)
(1−1.システム構成)
図1は、本開示の第1の実施形態に係るシステムの概略的な構成を示す図である。図1を参照すると、システム10は、クライアント装置100と、管理サーバ200と、コンテンツサーバ300とを含む。
クライアント装置100は、スマートフォン100a〜100cとして図示されているが、通信機能とコンテンツの出力機能とを有する各種の端末装置、例えばスマートフォン、タブレット、PC(Personal Computer)、ウェアラブル装置、デジタルカメラ、メディアプレーヤ、ゲーム機などでありうる。後述するように、本実施形態では、外部ネットワークを介さずに通信可能な複数のクライアント装置100によってグループ150が形成されている。グループ150内のクライアント装置100は、例えばWi−FiやBluetooth(登録商標)などによって相互に通信可能である。あるいは、グループ150内のクライアント装置100は、管理サーバ200を介して相互に通信可能であってもよい。
管理サーバ200は、グループ150を管理する。管理サーバ200は、ネットワーク上の単独のサーバ装置、または直列的もしくは並列的に協働する複数のサーバ装置によって実装される。管理サーバ200は、グループ150内のクライアント装置100のそれぞれと、例えば携帯電話網を介した無線通信などによって通信可能である。あるいは、管理サーバ200は、グループ内の他のクライアント装置100と、Wi−FiやBluetooth(登録商標)などによって通信可能であってもよい。
コンテンツサーバ300は、クライアント装置100にコンテンツを提供する。コンテンツサーバ300も、管理サーバ200と同様に、ネットワーク上の単独のサーバ装置、または直列的もしくは並列的に協働する複数のサーバ装置によって実装される。コンテンツサーバ300は、クライアント装置100のそれぞれと、例えば携帯電話網を介した無線通信などによって通信可能である。管理サーバ200の場合と異なり、クライアント装置100とコンテンツサーバ300との通信は、外部ネットワークを経由する。なお、外部ネットワークについては後述する。コンテンツサーバ300は、コンテンツのソースをクライアント装置100に送信する。
なお、図示されたシステム10の、後述する第3の実施形態におけるシステム30との相違は、クライアント装置100とコンテンツサーバ300との主な通信経路が、必ずしも管理サーバ200を経由しなくてよい点である。例えば、図1に示されているように、クライアント装置100は、管理サーバ200を経由しない通信経路によってコンテンツサーバ300からコンテンツのソースを取得してもよい。もちろん、クライアント装置100は、コンテンツのソースの少なくとも一部を、管理サーバ200を経由する通信経路によって取得してもよい。
より具体的には、例えば、グループ150は、不特定多数のユーザが集散する駅や広場、ビルなどの場所で形成される。管理サーバ200は、例えば、対象の場所でサービスを提供する携帯電話網やWi−Fiの基地局に接続される。この場合、Wi−Fiの基地局は、必ずしもクライアント装置100に、コンテンツサーバ300を含む外部ネットワークとの通信を提供しなくてもよい。つまり、クライアント装置100は、Wi−Fiを介して管理サーバ200と通信しつつ、他の携帯電話網の基地局を介してコンテンツサーバ300と通信してもよい。
一方、図では、コンテンツのソースの例として、ドキュメントファイルSRC1、画像ファイルSRC2、および音声ファイルSRC3が示されているが、この他にもさまざまな種類のソースが、コンテンツサーバ300からクライアント装置100に送信されうる。これらのソースによってクライアント装置100で出力されるコンテンツは、例えばウェブページや、ウェブページに含まれる映像または音声、独立した映像または音楽などを含む。
なお、上記の通り、本明細書では、クライアント装置100とコンテンツサーバ300との間の通信ネットワークの一部を、外部ネットワークともいう。これは、グループ150内のクライアント装置の間の通信ネットワークの外部に位置する通信ネットワークを意味する。クライアント装置100が外部ネットワークを構成する携帯電話網などの無線通信ネットワークを介してコンテンツサーバ300からソースを取得する場合、通信速度が(有線通信ネットワークなどと比べて)小さいのに加えて、端末が集中した地域では基地局の混雑が発生し、通信速度がさらに低下してしまう場合がある。コンテンツサーバ300からソースを取得するための通信に要する時間が長くなると、コンテンツの出力までにかかる時間も長くなってしまう。
一方、本実施形態におけるグループ150は、外部ネットワークを介さずに通信可能なクライアント装置100によって形成される。従って、クライアント装置100がWi−FiやBluetooth(登録商標)などを介してグループ150内の他のクライアント装置100からソースを取得する場合、通信速度は携帯電話網などに比べると大きくなる。装置間通信であれば基地局を経由せずに通信が可能であり、また基地局を経由する通信の場合でも通信経路が短縮されるために、混雑などによる通信速度の低下も生じにくい。それゆえ、コンテンツサーバ300からソースを取得する場合に比べて、コンテンツの出力を高速化することができる。
なお、個々のクライアント装置100の内部で、一度コンテンツサーバ300から取得したソースをキャッシュして再利用する技術は、国際公開第2005/033952号などにも記載されているように既に知られている。本実施形態では、このようなキャッシュの再利用を、個々のクライアント装置100の内部に限らず、例えば位置的に近接しているために外部ネットワークを介さずに通信することが可能なクライアント装置100の間に拡大することで、再利用可能なキャッシュを増やし、コンテンツの出力を高速化するものである。
とはいえ、相互に通信可能なクライアント装置100同士が個別に互いのキャッシュの内容を確認していたのでは、そのための通信や処理のために、必ずしもコンテンツの出力の高速化にはつながらない。そこで、本実施形態では、管理サーバ200の機能によって、グループ150内のクライアント装置100のそれぞれのキャッシュの内容を共有することを可能にしている。
より具体的には、本実施形態において、管理サーバ200は、グループ内キャッシュDB210を有する。グループ150に新たに参加するクライアント装置(図示された例ではスマートフォン100a)は、その時点でキャッシュしているソースを管理サーバ200に通知する。このとき、管理サーバ200は、通知されたソースのID(例えばURL:Uniform Resource Locator)を、当該ソースをキャッシュしているクライアント装置(この例ではスマートフォン100a)のIDに関連付けて、グループ内キャッシュDB210に追加する。
さらに、管理サーバ200は、グループ内キャッシュDB210に格納されている情報に基づいて、グループ150内の他のクライアント装置(図示された例ではスマートフォン100b,100c)のIDと、各クライアント装置がキャッシュしているソースのIDとを関連付けたキャッシュリストを、グループ150に新たに参加するクライアント装置(この例ではスマートフォン100a)に提供する。
このように、本実施形態では、グループ150内のクライアント装置100に対して、管理サーバ200から前もって上記のようなキャッシュリストが提供されている。従って、コンテンツ出力の要求を受け付けたクライアント装置100は、管理サーバ200から既に提供されているキャッシュリストを参照することによって、必要なソースがグループ150内のクライアント装置100によってキャッシュされているか、および当該ソースはどのクライアント装置100にキャッシュされているかを特定することができる。これによって、クライアント装置100は、ソースをキャッシュしている他のクライアント装置100に、Wi−FiやBluetooth(登録商標)などを介して直接的に要求を送信し、要求に応じて提供されたソースを受信することができる。
ここで、コンテンツを出力するために必要なソースが、クライアント装置100自身によってはキャッシュされておらず、またグループ150内の他のクライアント装置100にもキャッシュされていなかった場合には、クライアント装置100はコンテンツサーバ300からソースを取得する。このとき、新たに取得されたソースは、クライアント装置100によってキャッシュされうる。クライアント装置100は、この新たにキャッシュされたソースのIDを、管理サーバ200に送信してもよい。管理サーバ200は、通知されたソースのIDを、当該ソースをキャッシュしているクライアント装置100のIDに関連付けて、グループ内キャッシュDB210に追加する。さらに、管理サーバ200は、追加されたソースのIDと、該ソースをキャッシュしているクライアント装置100のIDとを関連付けた情報(既に提供されているキャッシュリストとの差分)を、グループ150内の他のクライアント装置100に配信する。
また、グループ150から離脱するクライアント装置(図示された例ではスマートフォン100c)は、グループ150からの離脱を管理サーバ200に通知する。あるいは、管理サーバ200が、クライアント装置のグループ150からの脱退を自動的に検出する。このとき、管理サーバ200は、グループ150から離脱したクライアント装置(図示された例ではスマートフォン100c)がキャッシュしていたソースの情報をグループ内キャッシュDB210から削除する。さらに、管理サーバ200は、クライアント装置100内に保持されている情報についても同様の更新を実施するよう、グループ150内に残っているクライアント装置100に通知を送信する。なお、当該ソースがグループ150内の他のクライアント装置(例えばスマートフォン100b)によってもキャッシュされている場合、当該他のクライアント装置のIDに関連付けられた情報は残される。
(複数の管理サーバが含まれる例)
図2は、図1に示すシステムに複数の管理サーバが含まれる例を示す図である。図2を参照すると、システム20は、クライアント装置100(スマートフォン100a〜100c)と、管理サーバ200a〜200cと、コンテンツサーバ300a〜300cとを含む。なお、図示された例において、管理サーバ200a〜200cは、それぞれ、スマートフォン100a〜100cとコンテンツサーバ300a〜300cとの通信経路上にある中間サーバである。
例えば、CDN(Contents Delivery Network)を利用してコンテンツが配信されるような場合、グループ150内のクライアント装置(スマートフォン100a〜100c)が、それぞれ異なる中間サーバ(管理サーバ200a〜200c)を介して、それぞれ異なるコンテンツサーバ300a〜300cからコンテンツのソースを取得することがありうる。同様に、例えば、グループ150内のクライアント装置が、互いに異なるサービスプロバイダを利用しているような場合にも、同じグループ150に対して複数の管理サーバ200が存在しうる。
この場合、管理サーバ200a〜200cは、ネットワークを介して互いに通信し、それぞれのグループ内キャッシュDB210a〜210cの内容を同期させる。同期のための通信は、定期的に実施されてもよいし、管理サーバ200a〜200cのうちのいずれかでグループ内キャッシュDB210の更新が発生した場合に実施されてもよい。
なお、本実施形態において、クライアント装置100、管理サーバ200、およびコンテンツサーバ300が複数存在する場合のそれらの数については、上記で図1および図2を参照して説明された例のように3つとは限らず、2つであってもよいし、4以上であってもよい。また、図2に示す例ではクライアント装置100、管理サーバ200、およびコンテンツサーバ300がそれぞれ1:1で対応しているが、これらの対応関係は1:Nであってもよいし、N:1であってもよい(N≧2)。より具体的には、例えば、複数の管理サーバ200のうちの1つが、複数のクライアント装置100にサービスを提供してもよい。また、例えば、1つのクライアント装置100が、複数の管理サーバ200または複数のコンテンツサーバ300によってサービスを提供されてもよい。
(1−2.クライアント装置の機能構成)
図3は、本開示の第1の実施形態に係るクライアント装置の概略的な機能構成を示すブロック図である。図3を参照すると、クライアント装置100は、通信部102と、ソース取得部104と、外部キャッシュ取得部106と、内部キャッシュ取得部108と、外部キャッシュDB110と、キャッシュ112と、コンテンツ出力部114と、グループ参加処理部116と、キャッシュリスト送信部118と、外部キャッシュリスト受信部120とを含みうる。
なお、以下で説明する各構成要素のうち、外部キャッシュDB110およびキャッシュ112は、クライアント装置100のメモリまたはストレージに格納されるデータベースでありうる。それ以外の構成要素は、別途の記載がない限り、クライアント装置100が備えるプロセッサが、メモリまたはストレージに格納されたプログラムに従って動作することによって実現される機能でありうる。
通信部102は、例えば、携帯電話網の通信装置と、Wi−FiやBluetooth(登録商標)の通信装置との両方を含む。例えば、通信部102は、コンテンツサーバ300とは携帯電話網を介して通信する一方で、管理サーバ200およびグループ150内の他のクライアント装置100とはWi−FiやBluetooth(登録商標)で通信してもよい。あるいは、通信部102は、例えばWi−Fiの通信装置だけを含んでもよい。この場合、通信部102は、グループ150内の他のクライアント装置100および管理サーバ200とWi−Fiを介して通信するとともに、Wi−Fiの基地局(管理サーバ200であってもよい)を介したネットワーク通信によってコンテンツサーバ300と通信する。
ソース取得部104は、例えば入力装置(図示せず)が取得するユーザ操作などによってコンテンツの出力が要求されたときに、通信部102を介してコンテンツサーバ300にソースを要求し、要求に応じてコンテンツサーバ300が提供したソースを受信する。なお、ここで、ソース取得部104は、内部キャッシュ取得部108、および外部キャッシュ取得部106によって取得されなかったソースをコンテンツサーバ300から取得する。つまり、ソース取得部104は、出力が要求されたコンテンツのソースの少なくとも一部が外部キャッシュ取得部106によって取得されなかった場合に、該取得されなかったソースをコンテンツサーバ300から取得する。上述の通り、クライアント装置100とコンテンツサーバ300との通信は外部ネットワークを介して実行されるため、ソース取得部104によるソースの取得には、外部キャッシュ取得部106によるグループ150内の他のクライアント装置100からのソースの取得よりも時間がかかりうる。
外部キャッシュ取得部106は、コンテンツの出力が要求されたときに、通信部102を介してグループ150内の他のクライアント装置100からソースを取得する。なお、外部キャッシュ取得部106が取得するソースは、内部キャッシュ取得部108がキャッシュ112から取得しなかったソースでありうる。外部キャッシュ取得部106は、外部キャッシュDB110から、グループ150内の他のクライアント装置100によってキャッシュされているソースのリストを取得し、このリストに基づいて、他のクライアント装置100にソースを要求する。後述するように、外部キャッシュDB110は、外部キャッシュリスト受信部120によって管理サーバ200から受信された情報を含む。なお、グループ150内の他のクライアント装置100にキャッシュされたソースを、以下の説明では簡単のために外部キャッシュともいう。
内部キャッシュ取得部108は、コンテンツの出力が要求されたときに、キャッシュ112に格納されたソースを取得する。キャッシュ112に格納されたソースは、最も短い時間で取得されるため、コンテンツの出力に際して優先的に利用される。なお、キャッシュ112に格納されたソースを、以下の説明では簡単のために内部キャッシュともいう。なお、上記のソース取得部104および外部キャッシュ取得部106が取得したソースは、コンテンツ出力部114に提供されるとともにキャッシュ112に格納され、次回のコンテンツ出力のときには内部キャッシュとして利用されうる。
コンテンツ出力部114は、ソース取得部104、外部キャッシュ取得部106、および内部キャッシュ取得部108がそれぞれ取得したソースに基づいてコンテンツを出力する。例えば、コンテンツ出力部114は、ディスプレイやスピーカのような出力装置、または出力装置のドライバソフトウェアを含む。
グループ参加処理部116は、クライアント装置100をグループ150に参加させるための要求を送信する。例えば、グループ参加処理部116は、GPSやビーコンとの通信などを利用して取得される位置情報に基づいて、クライアント装置100の位置がグループ150に対応する領域(予め設定された領域であってもよいし、グループ150内のクライアント装置100の位置によって動的に設定される領域であってもよい)に入った場合に、管理サーバ200に要求を送信する。グループ参加処理部116は、さらに、グループ150内の他のクライアント装置100との通信を試行し、通信が可能であった場合に管理サーバ200にグループ参加の要求を送信してもよい。なお、グループ150に対応する領域の情報や、グループ150内の他のクライアント装置100の情報は、例えば管理サーバ200によって提供されうる。また、グループ参加処理部116は、グループ参加の要求の送信にあたり、画像または音声などの通知によってユーザの許可を求めてもよい。
キャッシュリスト送信部118は、グループ参加処理部116によってクライアント装置100をグループ150に参加させるための要求が送信され、該要求が管理サーバ200によって承認された場合に、キャッシュ112に格納されているソースのIDを含むキャッシュリストを、通信部102を介して管理サーバ200に送信する。ここで、キャッシュリストは、キャッシュ112に格納されたソースを示す情報の一例である。また、キャッシュリスト送信部118は、キャッシュ112に新たなソースが追加された場合や、キャッシュ112から古くなったソースが削除された場合に、追加または削除されたソースのIDを含む通知を、通信部102を介して管理サーバ200に送信する。
外部キャッシュリスト受信部120は、クライアント装置100がグループ150に参加した場合に管理サーバ200から送信されるキャッシュリストを通信部102を介して受信し、外部キャッシュDB110に格納する。ここで受信されるキャッシュリストには、グループ150内の他のクライアント装置100のIDと、各クライアント装置100によってキャッシュされているソースのIDとが含まれる。また、外部キャッシュリスト受信部120は、クライアント装置100がグループ150に参加した後、他のクライアント装置100が新たなキャッシュを取得した場合や、他のクライアント装置100がグループ150から離脱した場合などに管理サーバ200から送信される通知を通信部102を介して受信し、該通知に基づいて外部キャッシュDB110を更新する。
(1−3.管理サーバの機能構成)
図4は、本開示の第1の実施形態に係る管理サーバの概略的な機能構成を示すブロック図である。図4を参照すると、管理サーバ200は、通信部202と、キャッシュリスト受信部204と、グループ管理部206と、キャッシュリスト更新部208と、グループ内キャッシュDB210と、キャッシュリスト送信部212とを含みうる。
なお、以下で説明する各構成要素のうち、グループ内キャッシュDB210は、管理サーバ200を構成する1または複数のサーバ装置のメモリまたはストレージに格納されるデータベースでありうる。それ以外の構成要素は、別途の記載がない限り、管理サーバ200を構成する1または複数のサーバ装置が備えるプロセッサが、メモリまたはストレージに格納されたプログラムに従って動作することによって実現される機能でありうる。
通信部202は、クライアント装置100と、例えば携帯電話網や、Wi−Fi、Bluetooth(登録商標)などのネットワークを介して通信する通信装置を含む。ここで、通信部202は、グループ150内のクライアント装置100だけでなく、まだグループ150に参加していないクライアント装置100や、グループから離脱したクライアント装置100とも通信可能でありうる。このようなクライアント装置100との通信によって、例えば、クライアント装置100がグループに参加することが可能であるか否かを判定し、当該クライアント装置100に参加可能なグループ150があることを通知するグループ管理部206の処理や、クライアント装置100がグループ150から離脱したことを検出し、キャッシュリスト更新部208が離脱したクライアント装置100がキャッシュしたソースの情報をグループ内キャッシュDB210から削除するグループ管理部206の処理が可能になる。さらに、管理サーバ200が中間サーバとしても機能する場合、通信部202は、コンテンツサーバ300、またはコンテンツサーバ300との間に介在する別の中間サーバと通信し、クライアント装置100とコンテンツサーバ300との通信を中継してもよい。
キャッシュリスト受信部204は、クライアント装置100から送信されたキャッシュリストを、通信部202を介して受信する。本実施形態において、キャッシュリスト受信部204は、クライアント装置100がグループ150に参加したときに、該クライアント装置100がキャッシュしているコンテンツのソースを示すキャッシュリストを受信する。上記の通り、キャッシュリストには、例えば当該クライアント装置100のキャッシュ112に格納されているソースのIDが含まれる。キャッシュリスト受信部204は、受信したキャッシュリストを、グループ内キャッシュDB210に格納する。より具体的には、例えば、キャッシュリスト受信部204は、受信されたソースのIDを、キャッシュリストを送信したクライアント装置のIDと関連付けて、グループ内キャッシュDB210に追加する。
グループ管理部206は、グループ150を管理する。上述のように、グループ150は、外部ネットワークを介さずに通信可能なクライアント装置100によって形成される。例えば、グループ管理部206は、グループ150に参加可能なクライアント装置100を、例えばクライアント装置100から提供される位置情報などに基づいて検出し、当該クライアント装置100に、参加可能なグループ150があることを通知する。また、グループ管理部206は、クライアント装置100からグループ150への参加要求が受信された場合、当該クライアント装置100をグループに参加させるか否かを決定する。例えば、グループ管理部206は、クライアント装置100自体、またはクライアント装置100のユーザが、グループ150に参加する権限を与えられているかに基づいて、グループ150への参加の可否を決定する。あるいは、グループ管理部206は、クライアント装置100の位置情報を再確認し、クライアント装置100の位置がグループ150に対応する領域内にあり、またクライアント装置100が引き続き当該領域に留まると予測される場合に、当該クライアント装置100のグループ150への参加を許可してもよい。
また、グループ管理部206は、例えば定期的に、またはクライアント装置100から何らかの要求もしくは情報が送信されたときに、クライアント装置100の位置情報を確認し、クライアント装置100の位置がグループ150に対応する領域から既に出ている、または出ることが予測される場合に、当該クライアント装置100をグループ150から離脱させることを決定してもよい。さらに、グループ管理部206は、上記の図2の例のように、グループ150が複数の管理サーバ200によって管理される場合、グループ150に参加しているクライアント装置100の情報と、各クライアント装置がキャッシュしているソースの情報とを、グループ150を管理する他の管理サーバ200との間で共有する。
キャッシュリスト更新部208は、通信部202を介してクライアント装置100から受信されたキャッシュリストに基づいて、グループ内キャッシュDB210を更新する。より具体的には、キャッシュリスト更新部208は、新たにグループ150に参加したクライアント装置100のIDに、当該クライアント装置100がキャッシュしているソースのIDを関連付けた情報を、グループ内キャッシュDB210に追加する。また、キャッシュリスト更新部208は、クライアント装置100のキャッシュ112に新たなソースが追加された場合や、キャッシュ112から古くなったソースが削除された場合に送信される通知を通信部202を介して受信し、通知に基づいてグループ内キャッシュDB210を更新する。さらに、キャッシュリスト更新部208は、グループ管理部206によってグループ150からクライアント装置100が離脱したことが検出された場合に、当該クライアント装置100のIDに関連付けられたソースの情報をグループ内キャッシュDB210から削除する。
キャッシュリスト送信部212は、通信部202を介して、グループ150に新たに参加したクライアント装置100にキャッシュリストを送信する。本実施形態におけるキャッシュリストは、クライアント装置100が、出力を要求されたコンテンツのソースをグループ150内の他のクライアント装置100から取得するための情報の一例である。より具体的には、例えば、キャッシュリストは、グループ150内のクライアント装置100のIDに各クライアント装置100にキャッシュされたソースのIDを関連付ける情報をグループ内キャッシュDB210から抽出することによって生成される。なお、このとき送信されるキャッシュリストには、送信先のクライアント装置100にキャッシュされているソースの情報、つまり送信先のクライアント装置100が内部キャッシュとして利用可能なソースの情報は含まれなくてもよい。従って、キャッシュリスト送信部212は、クライアント装置100がグループ150に新たに参加する場合、キャッシュリスト受信部204がキャッシュリストを受信するよりも前に、当該クライアント装置100にグループ内キャッシュDB210から抽出したキャッシュリストを送信してもよい。
(1−4.グループ内キャッシュDBの例)
図5は、本開示の第1の実施形態において管理サーバが保持するグループ内キャッシュDBの例を示す図である。図5を参照すると、グループ内キャッシュDB210は、装置ID2101と、ソースURL2103と、タイムスタンプ2105を項目として含む。また、図示された例では、グループ内キャッシュDB210にはレコード2100a〜2100gが含まれる。
装置ID2101は、グループ150内のクライアント装置100のIDである。図示された例において、装置ID2101はMACアドレスに類似した形式で表現されているが、他の例では、異なる階層のアドレス、システム10内で割り当てられたID、またはユーザが与えた任意の名称など、いかなる種類のIDが用いられてもよい。
ソースURL2103は、各クライアント装置100においてキャッシュされているソースのIDである。図示された例において、ソースURL2103は、例えば、それぞれのソースがコンテンツサーバ300から取得されるときのURL(Uniform Resource Locator)である。他の例では、例えば、ソースURL2103を所定のプロトコルに従ってハッシュ化した短縮URLなど、いかなる種類のIDが用いられてもよい。短縮URLを使用する場合、キャッシュリストのサイズを縮小できるのに加えて、各クライアント装置100がキャッシュしているソースのURLが非可読な形式で記述されるため、ユーザのプライバシーも保護することができる。
グループ内キャッシュDB210から抽出されたキャッシュリストを取得されたクライアント装置100は、キャッシュリストに含まれるソースURL2103および装置ID2101に基づいて、必要なソースがグループ150内の他のクライアント装置100にキャッシュされているか否かを判定し、さらに、ソースがどのクライアント装置100にキャッシュされているかを特定することができる。
なお、同じソースがグループ150内の複数のクライアント装置100によってキャッシュされている場合、グループ内キャッシュDB210では、それぞれのクライアント装置100のIDに関連付けられた複数のレコード2100が生成される(図示された例では、レコード2100aとレコード2100d、およびレコード2100bとレコード2100eによって、異なるクライアント装置100にキャッシュされた同じソースの存在が示されている)。
タイムスタンプ2105は、それぞれのソースのキャッシュに関連する時刻を示す。例えば、タイムスタンプ2105は、クライアント装置100がソースをコンテンツサーバ300から取得した時刻、またはソースがクライアント装置100のキャッシュ112に格納された時刻を示してもよい。この場合、クライアント装置100は、内部キャッシュのリストを管理サーバ200に送信するときに、タイムスタンプ2105の情報も送信する。この場合、タイムスタンプ2105は、同じソースがグループ150内の複数のクライアント装置100にキャッシュされている場合(図示された例では、レコード2100aとレコード2100d、およびレコード2100bとレコード2100eによって、異なるクライアント装置100にキャッシュされた同じソースの存在が示されている)に、どのソースがより新しいかを判定するために利用することができる。
あるいは、タイムスタンプ2105は、内部キャッシュのリスト、または内部キャッシュにソースが追加されたことの通知がクライアント装置100から管理サーバ200に送信された時刻を示してもよい。この場合、クライアント装置100から管理サーバ200に送信される情報には、タイムスタンプ2105が含まれていなくてもよい。例えば、各クライアント装置100がグループ150に継続的に参加しており、グループ150に参加した状態でクライアント装置100がコンテンツサーバ300から取得したソースが多い場合や、後述する変形例のようにクライアント装置100がグループ150に参加していない間も継続的に取得したソースの情報を管理サーバ200に提供しているような場合、上記のような構成でも、タイムスタンプ2105に基づいてどのソースがより新しいかを判定することができる。
(1−5.グループ管理の処理フローの例)
(クライアント装置の処理)
図6は、本開示の第1の実施形態においてグループに新たに参加するクライアント装置における処理の例を示すフローチャートである。図6を参照すると、クライアント装置100では、まず、グループ参加処理部116が、参加可能なグループの探索処理を実行する(S101)。なお、グループの探索処理の詳細については図7を参照して後述する。グループ参加処理部116は、参加可能なグループが発見されるまで(S103)、継続的にグループの探索処理を実行する。
参加可能なグループが発見された場合、グループ参加処理部116は、グループへの参加をユーザに確認する(S105)。例えば、グループ参加処理部116は、クライアント装置100が備えるディスプレイに、グループへの参加を確認するダイアログを表示させる。同様にして、グループ参加処理部116は、音声や、バイブレーションの所定のパターンなどによって、グループへの参加をユーザに確認してもよい。なお、ユーザが、参加可能なグループが発見された場合にはそのグループに参加することを予め許可しているような場合には、確認および承認に関するS105およびS107の処理は省略されてもよい。
S105の確認において、グループへの参加がユーザによって承認された場合(S107のYES)、キャッシュリスト送信部118が、グループへの参加の要求とともに、内部キャッシュリストを、通信部102を介して管理サーバ200に送信する(S109)。ここで、内部キャッシュリストは、クライアント装置100のキャッシュ112に格納されたソースのIDを含むリストである。さらに、外部キャッシュリスト受信部120が、外部キャッシュリストを、通信部102を介して管理サーバ200から受信する(S111)。受信された外部キャッシュリストに含まれる、グループ150内の他のクライアント装置100のIDと各クライアント装置100にキャッシュされたソースのIDとを関連付ける情報は、外部キャッシュDB110に格納される。
以上のような処理によって、クライアント装置100がグループ150に参加し、グループ150内の他のクライアント装置100がキャッシュしているソースを外部キャッシュとして利用することが可能になる。
図7は、図6に示したグループの探索処理をより詳細に示すフローチャートである。図7を参照すると、クライアント装置100のグループ参加処理部116は、GPSやビーコンとの通信などを利用して取得されるクライアント装置100の位置情報を、通信部102を介して管理サーバ200に通知する(S121)。管理サーバ200では、グループ管理部206が位置情報を受信し、クライアント装置100がグループ150に参加可能であるか否かを判定する。より具体的には、グループ管理部206は、グループ150について予め定義された領域、またはグループ150を構成する他のクライアント装置100の位置情報などに基づいて、クライアント装置100がグループ150に接近したか否かを判定する。判定の結果はクライアント装置100に通知され、参加処理部116は、管理サーバ200からの応答に基づいて、クライアント装置100のグループ150への接近が検出されたか否かを判定する(S123)。
なお、ここで、グループ150は、既に形成されていてもよいし、まだ形成されていなくてもよい。例えば、グループ150は、予め定義された領域内に所定数以上のクライアント装置100が存在する場合に生成されてもよい。あるいは、領域は予め定義されておらず、所定数以上のクライアント装置100が互いに接近した場合に、これらのクライアント装置100の近傍を領域としてグループ150が生成されてもよい。このような場合、上記のS123では、既に存在するグループ150への接近だけではなく、まだ存在しないグループ150の候補となる他のクライアント装置100への接近が検出されたか否かが判定されてもよい。
上記のS123において、クライアント装置100がグループ150(またはその候補になる他のクライアント装置100)に接近していることが検出された場合、グループ参加処理部116は、グループ150内の他のクライアント装置100、またはグループ150の候補になる他のクライアント装置100との通信を試行する。通信は、例えば、後にソースがやりとりされるのと同じ通信方式、例えばWi−FiやBluetooth(登録商標)などによって実行されうる。通信を試行する相手のクライアント装置100のIDは、例えば管理サーバ200によって提供される。
さらに、グループ参加処理部116は、S125の通信の試行が成功か否かを判定する(S127)。通信が成功した場合、グループ参加処理部116は参加可能なグループ150(またはその候補になる他のクライアント装置100)が発見されたと判定し(S129)、上記で図6を参照して説明したような処理を続行する。一方、S123でグループ150またはその候補への接近が検出されなかったり、S127でグループ150内またはその候補のクライアント装置100との通信が成功しなかったりした場合、グループ参加処理部116は、まだグループ150またはその候補が発見されていないものと判断し、図6に示したように再度グループの探索処理を実行する。
(管理サーバの処理)
図8は、本開示の第1の実施形態においてクライアント装置のグループへの参加を受け付ける管理サーバの処理を示すフローチャートである。図8を参照すると、管理サーバ200では、グループ管理部206が、通信部202を介してクライアント装置100の位置情報を収集している(S151)。ここで、位置情報を収集する対象は、グループ150内のクライアント装置100だけではなく、グループ150に参加していないクライアント装置100をも含む。より具体的には、例えば、グループ管理部206は、グループ150に対応する領域よりも広い領域をカバーする1または複数の基地局を介して通信しているクライアント装置100から位置情報を収集してもよい。あるいは、グループ管理部206は、管理サーバ200によって提供されているサービスを利用するクライアント装置100全体から位置情報を収集してもよい。
上記のS151で収集した位置情報などに基づいて、グループ管理部206は、グループ150に新たに参加するクライアント装置100の有無を判定する(S153)。グループ150に参加するクライアント装置100がある場合、キャッシュリスト受信部204が、当該クライアント装置100が送信した内部キャッシュリストを通信部202を介して受信する(S155)。さらに、キャッシュリスト受信部204は、受信された内部キャッシュリストに基づいてグループ内キャッシュDB210を更新する(S157)。
さらに、上記のS151で収集した位置情報などに基づいて、グループ管理部206は、グループ150から離脱するクライアント装置100の有無を判定する(S159)。より具体的には、例えば、位置情報によって、クライアント装置100がグループ150に対応する領域から出ている、または出ようとしていることが示される場合、クライアント装置100はグループ150から離脱させられる。グループ150から離脱するクライアント装置100がある場合、グループ管理部206から提供される情報に基づいて、キャッシュリスト更新部208がグループ内キャッシュDB210を更新する(S161)。より具体的には、キャッシュリスト更新部208は、当該クライアント装置100にキャッシュされたソースの情報を削除する。
なお、上記のS157やS161においてグループ内キャッシュDB210が更新された場合、キャッシュリスト送信部212は、更新によって発生した差分にあたる情報を、グループ150内のクライアント装置100に配信する。
以上のような処理によって、クライアント装置100のグループ150への新たな参加を受け付け、グループ150に参加しているクライアント装置100の変動に応じて適切にグループ内キャッシュDB210を管理することができる。
(1−6.コンテンツ出力の処理フロー)
図9は、本開示の第1の実施形態においてコンテンツを出力するクライアント装置の処理の例を示すフローチャートである。図9を参照すると、クライアント装置100は、まず、入力装置が取得するユーザ操作などによって、コンテンツ出力の要求を受け付ける(S201)。出力するコンテンツは、例えばURLなどによって特定される。このとき、クライアント装置100では、まず、内部キャッシュ取得部108が内部キャッシュからソースを取得する(S203)。より具体的には、内部キャッシュ取得部108は、キャッシュ112に格納されたソースの中から必要なソースを取得する。
次に、外部キャッシュ取得部106が、未取得のソース、つまり必要なソースの中でキャッシュ112には格納されていなかったソースがあるか否かを判定し(S205)、未取得のソースがある場合には外部キャッシュからソースを取得する(S207)。より具体的には、外部キャッシュ取得部106は、外部キャッシュDB110を参照して、必要なソースがグループ150内の他のクライアント装置100にキャッシュされているか否かを判定し、必要なソースをキャッシュしている他のクライアント装置100があれば、通信部102を介して当該クライアント装置100にソースを要求する。
さらに、ソース取得部104が、未取得のソース、つまり必要なソースの中で、キャッシュ112に格納されておらずグループ150内の他のクライアント装置100にもキャッシュされていなかったソースがあるか否かを判定し(S209)、未取得のソースがある場合にはコンテンツサーバ300からソースを取得する(S211)。このとき、新たにコンテンツサーバ300から取得されたソースは、キャッシュ112に格納される。キャッシュリスト送信部118は、通信部102を介して、管理サーバ200に上記ソースの追加を示す更新情報を送信する(S213)。続いて、上記のS203,S207,S211で取得されたソースに基づいて、コンテンツ出力部114がコンテンツを出力する(S215)。なお、S213の処理とS215の処理との間に相関性はないため、どちらの処理が先に実行されてもよい。
以上のような処理によって、クライアント装置100が既にソースをキャッシュしているコンテンツ(内部キャッシュを利用可能)に加えて、グループ150内の他のクライアント装置100がソースをキャッシュしているコンテンツについても、それらの装置のキャッシュを外部キャッシュとして利用することによって、コンテンツの出力を高速化することができる。
以上、本開示の第1の実施形態について説明した。本実施形態では、管理サーバ200からクライアント装置100に、グループ150内の他のクライアント装置100がキャッシュしているソースの情報が、例えばリストとして提供される。クライアント装置100は、コンテンツの出力時に、管理サーバ200から予め提供されている上記の情報に従って、必要なソースをキャッシュしているグループ150内の他のクライアント装置100を特定し、当該クライアント装置100にソースを要求することができる。本実施形態では、このようなクライアント装置100における外部キャッシュの利用にあたって、管理サーバ200との通信は発生しない。従って、例えば管理サーバ200との通信が不安定であったり、管理サーバ200との通信がボトルネックになるような状況であっても、外部キャッシュを利用してコンテンツの出力を高速化することができる。
(変形例)
なお、上記の例では、クライアント装置100において、クライアント装置100がグループ150に参加したときにキャッシュリスト送信部118がキャッシュリストを管理サーバ200に送信したが、本開示の実施形態はこのような例には限られない。
例えば、キャッシュリスト送信部118は、クライアント装置100がグループ150に参加していなくても、キャッシュリストや更新の通知を管理サーバ200に送信してもよい。この場合、管理サーバ200のグループ内キャッシュDB210には、グループ150に参加しているクライアント装置100と、グループ150に参加していないクライアント装置100とのキャッシュの情報が含まれる。
この場合、クライアント装置100が新たにグループに参加するときには、グループ参加処理部116が通信部102を介して管理サーバ200に送信する要求に基づいて、グループ管理部206が、キャッシュリスト更新部208を介してグループ内キャッシュDB210を更新し、グループに参加したクライアント装置100にキャッシュされたソースの情報を有効化する。一方、クライアント装置100がグループを離脱した場合や、グループに参加していないクライアント装置100からキャッシュの情報が提供された場合、キャッシュリスト受信部204、またはグループ管理部206は、グループ内キャッシュDB210において、当該クライアント装置100にキャッシュされたソースの情報を無効化する。
上記のような変形例の場合、管理サーバ200に蓄積されるデータの量は増大するものの、クライアント装置100がグループ150に参加するときのキャッシュリストのやりとりが不要になるため、グループ150への参加の処理を迅速化することができる。また、管理サーバ200が複数のグループ150を管理しており、ユーザがそれらのグループの間を行き来するような場合、それぞれのグループ150に出入りするときの処理を簡略化することができる。
(2.第2の実施形態)
次に、本開示の第2の実施形態について説明する。なお、本実施形態は、以下で図10および図11を参照して説明する点について上記の第1の実施形態と相違するが、それ以外の点については第1の実施形態と同様であるため、重複した説明は省略する。
図10は、本開示の第2の実施形態に係るクライアント装置の概略的な機能構成を示すブロック図である。図10を参照すると、クライアント装置100は、通信部102と、ソース取得部104と、外部キャッシュ取得部106と、内部キャッシュ取得部108と、キャッシュ112と、コンテンツ出力部114と、グループ参加処理部116と、キャッシュリスト送信部118と、装置ID取得部122とを含みうる。なお、このうち、装置ID取得部122以外については、上記の第1の実施形態と同様の構成要素であるため、重複した説明は省略する。
装置ID取得部122は、例えば、クライアント装置100が備えるプロセッサが、メモリまたはストレージに格納されたプログラムに従って動作することによって実現される機能でありうる。装置ID取得部122は、コンテンツの出力が要求されたときに、通信部102を介して、管理サーバ200から、当該コンテンツのソースをキャッシュしているグループ150内の他のクライアント装置100のIDを取得する。より具体的には、装置ID取得部122は、コンテンツの出力時に、必要なソースの少なくとも一部が内部キャッシュ取得部108によって取得されなかった場合、取得されなかったソースのIDを含む要求を管理サーバ200に送信する。管理サーバ200は、要求に含まれるIDによって示されるソースをキャッシュしているクライアント装置100がグループ150内にあれば、そのクライアント装置100のIDを返信する。装置ID取得部122は、管理サーバ200から受信したクライアント装置100のIDを外部キャッシュ取得部106に提供し、外部キャッシュ取得部106は、そのIDに基づいて、グループ150内の他のクライアント装置100にソースを要求する。
図11は、本開示の第2の実施形態に係る管理サーバの概略的な機能構成を示すブロック図である。図11を参照すると、管理サーバ200は、通信部202と、キャッシュリスト受信部204と、グループ管理部206と、キャッシュリスト更新部208と、グループ内キャッシュDB210と、装置ID送信部214とを含みうる。なお、このうち、装置ID送信部214以外については、上記の第1の実施形態と同様の構成要素であるため、重複した説明は省略する。
装置ID送信部214は、例えば、管理サーバ200を構成する1または複数のサーバ装置が備えるプロセッサが、メモリまたはストレージに格納されたプログラムに従って動作することによって実現される機能でありうる。装置ID送信部214は、通信部202を介して、クライアント装置100からソースのIDを含む要求が受信されたときに、グループ内キャッシュDB210を検索し、IDによって示されるソースが発見された場合には、そのソースをキャッシュしているグループ150内の他のクライアント装置100のIDを、通信部202を介してクライアント装置100に送信する。
以上で説明した本開示の第2の実施形態では、クライアント装置100がコンテンツを出力するときに、必要とされるソースのIDを含む要求を管理サーバ200に送信する。これに応じて、管理サーバ200は、要求されているソースをキャッシュしているグループ150内の他のクライアント装置100のIDをクライアント装置100に提供する。
本実施形態において、クライアント装置100は、グループ150内の他のクライアント装置100がキャッシュしているソースのリストを予め管理サーバ200から取得するわけではなく、コンテンツの出力時に、必要なソースのIDを含む要求を管理サーバ200に送信し、要求に応じて管理サーバ200が提供する他のクライアント装置100のIDに基づいて、グループ150内の他のクライアント装置100にソースを要求する。
これによって、コンテンツ出力時の管理サーバ200への問い合わせの時間はかかるものの、クライアント装置100がグループ150に参加するときにやりとりする情報は少なくて済む。また、管理サーバ200でグループ内キャッシュDB210が更新される度に、グループ150内のクライアント装置100に外部キャッシュDBの更新のための通知を送信する必要もない。つまり、本実施形態では、管理サーバ200のグループ内キャッシュDB210を最新の状態に保っておくだけで、適切にグループ150の内のクライアント装置100の間で互いにキャッシュされたソースを利用することができる。
以上で説明したような第2の実施形態は、例えば、グループ150に参加しているクライアント装置100の数や、それぞれのクライアント装置100にキャッシュされているソースの量が多い場合に適する。このような場合、クライアント装置100がグループ150に参加するときにすべてのソースの情報を送信するよりも、クライアント装置100において必要が生じた場合にソース単位で要求された情報を送信する方が合理的でありうる。また、グループ150内のクライアント装置100におけるキャッシュ112の更新が頻繁に発生するような場合にも、それらの更新を管理サーバ200のグループ内キャッシュDB210にだけ反映させればよいため、本実施形態が有利でありうる。
(3.第3の実施形態)
次に、本開示の第3の実施形態について説明する。なお、本実施形態は、以下で図12を参照して説明する点について上記の第1の実施形態および第2の実施形態と相違するが、それ以外の点については第1または第2の実施形態と同様であるため、重複した説明は省略する。
図12は、本開示の第3の実施形態に係るシステムの概略的な構成を示す図である。図12を参照すると、システム30は、クライアント装置100と、管理サーバ200と、コンテンツサーバ300とを含む。
上記で図1および図2を参照して説明した第1の実施形態に係るシステム10,20との相違点として、システム30では、クライアント装置100(ここではスマートフォン100a〜100c)が、主に中間サーバでもある管理サーバ200を介してコンテンツサーバ300と通信する。つまり、本実施形態において、グループ150内のクライアント装置100と中間サーバ(管理サーバ200)とは、閉じた通信ネットワークを形成しており、中間サーバ(管理サーバ200)を介してコンテンツサーバ300を含む外部のネットワークへのアクセスが可能になる。このようなネットワークは、例えば、飛行機の機内や、高速鉄道の車内などのような、通常の携帯電話網などを介したネットワークへのアクセスが困難な環境においてみられる。
本実施形態の効果を理解しやすくするためにより具体的に説明すると、例えば飛行機の機内では、クライアント装置100がWi−Fiによって中間サーバ(管理サーバ200)に接続され、中間サーバ(管理サーバ200)が衛星通信などを介してコンテンツサーバ300などの外部ネットワークにアクセスする。また、高速鉄道の車内でも、クライアント装置100がWi−Fiによって管理サーバ200に接続され、中間サーバ(管理サーバ200)が鉄道設備に付帯する通信設備などを介してコンテンツサーバ300などの外部ネットワークにアクセスする。
このような環境下では、中間サーバ(管理サーバ200)と外部ネットワークとの間の衛星通信などの通信量が限られているために、個々のクライアント装置100では十分な通信速度が得られないことがありうる。そこで、本実施形態では、機内や車内などに相当するグループ150内のクライアント装置100に接続される中間サーバを管理サーバ200とし、各クライアント装置100がコンテンツの出力にあたって外部キャッシュ(グループ150内の他のクライアント装置100のキャッシュ)を利用可能である場合には外部ネットワークとの通信をしないことによって、ボトルネックになりうる衛星通信などの部分での通信量を可能な限り削減する。
なお、例えば高速鉄道が駅に停車している間のように、クライアント装置100は、一時的に、中間サーバ(管理サーバ200)を介さずに携帯電話網などを介してコンテンツサーバ300にアクセス可能であってもよい。そのような時間が短く、または全くなく、クライアント装置100とコンテンツサーバ300との通信のほぼすべてが中間サーバ(管理サーバ200)を介して実行される場合、管理サーバ200はクライアント装置100が新たに取得したソースを、クライアント装置100がコンテンツサーバ300に送信する要求の解析によって把握することが可能である。従って、このような場合、クライアント装置100がコンテンツサーバ300から新たなソースを取得した場合の管理サーバ200への通知は、省略されてもよい。
また、図示された例では、システム30における中間サーバと管理サーバ200とが同一の装置であるように示されているが、本実施形態はこのような例には限られない。例えば、クライアント装置100とコンテンツサーバ300とを接続するネットワーク上に、管理サーバ200と中間サーバとが直列的に連続して配置されていてもよい。
(4.ハードウェア構成)
次に、図13を参照して、本開示の実施形態に係る情報処理装置のハードウェア構成について説明する。図13は、本開示の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。図示された情報処理装置900は、例えば、上記の実施形態におけるクライアント装置100、管理サーバ200、またはコンテンツサーバ300を実現しうる。
情報処理装置900は、CPU(Central Processing unit)901、ROM(Read Only Memory)903、およびRAM(Random Access Memory)905を含む。また、情報処理装置900は、ホストバス907、ブリッジ909、外部バス911、インターフェース913、入力装置915、出力装置917、ストレージ919、ドライブ921、接続ポート923、通信装置925を含んでもよい。情報処理装置900は、CPU901に代えて、またはこれとともに、DSP(Digital Signal Processor)またはASIC(Application Specific Integrated Circuit)と呼ばれるような処理回路を有してもよい。
CPU901は、演算処理装置および制御装置として機能し、ROM903、RAM905、ストレージ919、またはリムーバブル記録媒体927に記録された各種プログラムに従って、情報処理装置900内の動作全般またはその一部を制御する。ROM903は、CPU901が使用するプログラムや演算パラメータなどを記憶する。RAM905は、CPU901の実行において使用するプログラムや、その実行において適宜変化するパラメータなどを一次記憶する。CPU901、ROM903、およびRAM905は、CPUバスなどの内部バスにより構成されるホストバス907により相互に接続されている。さらに、ホストバス907は、ブリッジ909を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス911に接続されている。
入力装置915は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチおよびレバーなど、ユーザによって操作される装置である。入力装置915は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理装置900の操作に対応した携帯電話などの外部装置929であってもよい。入力装置915は、ユーザが入力した情報に基づいて入力信号を生成してCPU901に出力する入力制御回路を含む。ユーザは、この入力装置915を操作することによって、情報処理装置900に対して各種のデータを入力したり処理動作を指示したりする。
出力装置917は、取得した情報をユーザに対して視覚的または聴覚的に通知することが可能な装置で構成される。出力装置917は、例えば、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、有機EL(Electro-Luminescence)ディスプレイなどの表示装置、スピーカおよびヘッドホンなどの音声出力装置、ならびにプリンタ装置などでありうる。出力装置917は、情報処理装置900の処理により得られた結果を、テキストまたは画像などの映像として出力したり、音声または音響などの音声として出力したりする。
ストレージ919は、情報処理装置900の記憶部の一例として構成されたデータ格納用の装置である。ストレージ919は、例えば、HDD(Hard Disk Drive)などの磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイスなどにより構成される。このストレージ919は、CPU901が実行するプログラムや各種データ、および外部から取得した各種のデータなどを格納する。
ドライブ921は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体927のためのリーダライタであり、情報処理装置900に内蔵、あるいは外付けされる。ドライブ921は、装着されているリムーバブル記録媒体927に記録されている情報を読み出して、RAM905に出力する。また、ドライブ921は、装着されているリムーバブル記録媒体927に記録を書き込む。
接続ポート923は、外部装置を情報処理装置900に直接接続するためのポートである。接続ポート923は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)ポートなどでありうる。また、接続ポート923は、RS−232Cポート、光オーディオ端子、HDMI(登録商標)(High-Definition Multimedia Interface)ポートなどであってもよい。接続ポート923に外部装置929を接続することで、情報処理装置900と外部装置929との間で各種のデータが交換されうる。
通信装置925は、例えば、通信ネットワーク931に接続するための通信デバイスなどで構成された通信インターフェースである。通信装置925は、例えば、有線または無線LAN(Local Area Network)、Bluetooth(登録商標)、またはWUSB(Wireless USB)用の通信カードなどでありうる。また、通信装置925は、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ、または、各種通信用のモデムなどであってもよい。通信装置925は、例えば、インターネットや他の通信装置との間で、TCP/IPなどの所定のプロトコルを用いて信号などを送受信する。また、通信装置925に接続される通信ネットワーク931は、有線または無線によって接続されたネットワークであり、例えば、インターネット、家庭内LAN、赤外線通信、ラジオ波通信または衛星通信などである。
以上、情報処理装置900のハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。かかる構成は、実施する時々の技術レベルに応じて適宜変更されうる。
(5.補足)
本開示の実施形態は、例えば、上記で説明したような情報処理装置(クライアント装置またはサーバ)、システム、情報処理装置またはシステムで実行される情報処理方法、情報処理装置を機能させるためのプログラム、およびプログラムが記録された一時的でない有形の媒体を含みうる。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
なお、以下のような構成も本開示の技術的範囲に属する。
(1)コンテンツのソースが格納されるキャッシュと、
前記キャッシュに格納された前記ソースを示す情報を、外部ネットワークを介さずに通信可能なクライアント装置のグループを管理するサーバに送信するキャッシュ情報送信部と、
前記サーバから提供される情報に基づいて、出力が要求されたコンテンツのソースを前記グループ内の他のクライアント装置から取得する外部キャッシュ取得部と、
前記出力が要求されたコンテンツのソースの少なくとも一部が前記他のクライアント装置から取得されなかった場合に、該取得されなかったソースをコンテンツサーバから前記外部ネットワークを介して取得するソース取得部と
を備えるクライアント装置。
(2)前記サーバから提供される情報は、前記他のクライアント装置のIDを含む、前記(1)に記載のクライアント装置。
(3)前記サーバから提供される情報は、前記出力の要求に先立って提供される、前記グループ内のクライアント装置によってキャッシュされた前記ソースのリストを含む、前記(2)に記載のクライアント装置。
(4)前記出力の要求時に、該出力が要求されたコンテンツのソースのIDを含む要求を前記サーバに送信し、該要求に応じて前記サーバが送信する前記他のクライアント装置のIDを含む情報を取得するID取得部をさらに備える、前記(2)に記載のクライアント装置。
(5)前記キャッシュ情報送信部は、前記クライアント装置が前記グループに参加したときに、前記キャッシュに格納された前記ソースを示す情報を前記サーバに送信する、前記(1)〜(4)のいずれか1項に記載のクライアント装置。
(6)前記キャッシュ情報送信部は、前記クライアント装置が前記グループに参加しているか否かにかかわらず前記キャッシュに格納された前記ソースを示す情報を前記サーバに送信し、
前記クライアント装置は、前記クライアント装置が前記グループに参加したときに前記サーバに送信された情報を有効化するグループ参加処理部をさらに備える、前記(1)〜(4)のいずれか1項に記載のクライアント装置。
(7)外部ネットワークを介さずに通信可能なクライアント装置のグループを管理するグループ管理部と、
前記グループに参加しているクライアント装置がキャッシュしているコンテンツのソースを示す情報を受信するキャッシュ情報受信部と、
前記クライアント装置が出力を要求されたコンテンツのソースを前記グループ内の他のクライアント装置から取得するための情報を前記クライアント装置に提供するキャッシュ情報提供部と
を備えるサーバ。
(8)前記キャッシュ情報提供部は、前記他のクライアント装置のIDを含む情報を提供する、前記(7)に記載のサーバ。
(9)前記キャッシュ情報提供部は、前記出力の要求に先立って、前記グループ内のクライアント装置によってキャッシュされた前記ソースのリストを提供する、前記(8)に記載のサーバ。
(10)前記キャッシュ情報提供部は、前記出力が要求されたコンテンツのソースのIDを含む要求に応じて、前記他のクライアント装置のIDを含む情報を提供する、前記(8)に記載のサーバ。
(11)前記キャッシュ情報受信部は、前記クライアント装置が前記グループに参加したときに、該クライアント装置がキャッシュしているコンテンツのソースを示す情報を受信する、前記(7)〜(10)のいずれか1項に記載のサーバ。
(12)前記キャッシュ情報受信部は、前記クライアント装置が前記グループに参加しているか否かにかかわらず、該クライアント装置がキャッシュしているコンテンツのソースを示す情報を受信し、
前記グループ管理部は、前記クライアント装置が前記グループに参加したときに前記受信された情報を有効化する、前記(7)〜(10)のいずれか1項に記載のサーバ。
(13)前記グループ管理部は、前記グループに参加している前記クライアント装置の情報と、該クライアント装置がキャッシュしているコンテンツのソースの情報とを、前記グループを管理する別のサーバとの間で共有する、前記(7)〜(12)のいずれか1項に記載のサーバ。
(14)コンテンツのソースが格納されるキャッシュを備えるクライアント装置のプロセッサに、
前記キャッシュに格納された前記ソースを示す情報を、外部ネットワークを介さずに通信可能なクライアント装置のグループを管理するサーバに送信する機能と、
前記サーバから提供される情報に基づいて、出力が要求されたコンテンツのソースを前記グループ内の他のクライアント装置から取得する機能と、
前記出力が要求されたコンテンツのソースの少なくとも一部が前記他のクライアント装置から取得されなかった場合に、該取得されなかったソースをコンテンツサーバから前記外部ネットワークを介して取得する機能と
を実現させるためのプログラムが格納された記録媒体。
(15)プロセッサが、外部ネットワークを介さずに通信可能なクライアント装置のグループを管理することと、
前記グループに参加しているクライアント装置がキャッシュしているコンテンツのソースを示す情報を受信することと、
前記クライアント装置が出力を要求されたコンテンツのソースを前記グループ内の他のクライアント装置から取得するための情報を前記クライアント装置に提供することと
を含む情報処理方法。
10,20,30 システム
100 クライアント装置
102 通信部
104 ソース取得部
106 外部キャッシュ取得部
108 内部キャッシュ取得部
110 外部キャッシュDB
112 キャッシュ
114 コンテンツ出力部
116 グループ参加処理部
118 キャッシュリスト送信部
120 外部キャッシュリスト受信部
122 装置ID取得部
150 グループ
200 管理サーバ
202 通信部
204 キャッシュリスト受信部
206 グループ管理部
208 キャッシュリスト更新部
210 グループ内キャッシュDB
212 キャッシュリスト送信部
214 装置ID送信部
300 コンテンツサーバ

Claims (11)

  1. コンテンツのソースが格納されるキャッシュと、
    外部ネットワークを介さずに通信可能なクライアント装置のグループを管理するサーバに前記グループに参加しているか否かにかかわらず前記キャッシュに格納された前記ソースを示す情報を、送信するキャッシュ情報送信部と、
    前記サーバから提供される情報に基づいて、出力が要求されたコンテンツのソースを前記グループ内の他のクライアント装置から取得する外部キャッシュ取得部と、
    前記出力が要求されたコンテンツのソースの少なくとも一部が前記他のクライアント装置から取得されなかった場合に、該取得されなかったソースをコンテンツサーバから前記外部ネットワークを介して取得するソース取得部と、
    前記グループに参加したときに前記サーバに送信された情報を有効化するグループ参加処理部と、
    を備えるクライアント装置。
  2. 前記サーバから提供される情報は、前記他のクライアント装置のIDを含む、請求項1に記載のクライアント装置。
  3. 前記サーバから提供される情報は、前記出力の要求に先立って提供される、前記グループ内のクライアント装置によってキャッシュされた前記ソースのリストを含む、請求項2に記載のクライアント装置。
  4. 前記出力の要求時に、該出力が要求されたコンテンツのソースのIDを含む要求を前記サーバに送信し、該要求に応じて前記サーバが送信する前記他のクライアント装置のIDを含む情報を取得するID取得部をさらに備える、請求項2に記載のクライアント装置。
  5. 外部ネットワークを介さずに通信可能なクライアント装置のグループを管理するグループ管理部と、
    前記クライアント装置が前記グループに参加しているか否かにかかわらず、該クライアント装置がキャッシュしているコンテンツのソースを示す情報を受信するキャッシュ情報受信部と、
    前記クライアント装置が出力を要求されたコンテンツのソースを前記グループ内の他のクライアント装置から取得するための情報を前記クライアント装置に提供するキャッシュ情報提供部と、
    を備え、
    前記グループ管理部は、前記クライアント装置が前記グループに参加したときに前記受信された情報を有効化する、
    サーバ。
  6. 前記キャッシュ情報提供部は、前記他のクライアント装置のIDを含む情報を提供する、請求項5に記載のサーバ。
  7. 前記キャッシュ情報提供部は、前記出力の要求に先立って、前記グループ内のクライアント装置によってキャッシュされた前記ソースのリストを提供する、請求項6に記載のサーバ。
  8. 前記キャッシュ情報提供部は、前記出力が要求されたコンテンツのソースのIDを含む要求に応じて、前記他のクライアント装置のIDを含む情報を提供する、請求項6に記載のサーバ。
  9. 前記グループ管理部は、前記グループに参加している前記クライアント装置の情報と、該クライアント装置がキャッシュしているコンテンツのソースの情報とを、前記グループを管理する別のサーバとの間で共有する、請求項5〜8のいずれか一項に記載のサーバ。
  10. コンテンツのソースが格納されるキャッシュを備えるクライアント装置のプロセッサに、
    外部ネットワークを介さずに通信可能なクライアント装置のグループを管理するサーバに前記グループに参加しているか否かにかかわらず前記キャッシュに格納された前記ソースを示す情報を、送信する機能と、
    前記サーバから提供される情報に基づいて、出力が要求されたコンテンツのソースを前記グループ内の他のクライアント装置から取得する機能と、
    前記出力が要求されたコンテンツのソースの少なくとも一部が前記他のクライアント装置から取得されなかった場合に、該取得されなかったソースをコンテンツサーバから前記外部ネットワークを介して取得する機能と、
    前記クライアント装置は、前記クライアント装置が前記グループに参加したときに前記サーバに送信された情報を有効化する機能と、
    を実現させるためのプログラムが格納された記録媒体。
  11. プロセッサが、外部ネットワークを介さずに通信可能なクライアント装置のグループを管理することと、
    前記クライアント装置が前記グループに参加しているか否かにかかわらず、該クライアント装置がキャッシュしているコンテンツのソースを示す情報を受信することと、
    前記クライアント装置が出力を要求されたコンテンツのソースを前記グループ内の他のクライアント装置から取得するための情報を前記クライアント装置に提供することと、
    前記クライアント装置が前記グループに参加したときに前記受信された情報を有効化することと、
    を含む情報処理方法。
JP2016515869A 2014-04-30 2015-02-04 クライアント装置、サーバ、記録媒体および情報処理方法 Active JP6432598B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014093441 2014-04-30
JP2014093441 2014-04-30
PCT/JP2015/053114 WO2015166680A1 (ja) 2014-04-30 2015-02-04 クライアント装置、サーバ、記録媒体および情報処理方法

Publications (2)

Publication Number Publication Date
JPWO2015166680A1 JPWO2015166680A1 (ja) 2017-04-20
JP6432598B2 true JP6432598B2 (ja) 2018-12-05

Family

ID=54358421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016515869A Active JP6432598B2 (ja) 2014-04-30 2015-02-04 クライアント装置、サーバ、記録媒体および情報処理方法

Country Status (4)

Country Link
US (1) US10171613B2 (ja)
EP (1) EP3139276B1 (ja)
JP (1) JP6432598B2 (ja)
WO (1) WO2015166680A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019533204A (ja) * 2016-08-26 2019-11-14 チェン、レイモンド シュー クウォクCHENG,Raymond shu kwok 同一又は異なるソーシャルネットワークに登録した近接モバイルユーザの同一又は異なるosのモバイルデバイスを運用して互いに識別すると共にビジネス情報を交換する技術
CN109196843B (zh) * 2016-11-18 2021-07-09 华为技术有限公司 一种缓存数据请求方法及相关设备
US11665214B2 (en) * 2018-11-08 2023-05-30 Lg Electronics Inc. Method and apparatus for receiving audio data by using Bluetooth technology

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11306065A (ja) * 1998-04-24 1999-11-05 Nippon Telegr & Teleph Corp <Ntt> 電子ファイル配送システムおよび方法ならびに電子ファイル配送プログラムを記録した機械読み取り可能な記録媒体
JP2003323329A (ja) 2002-05-07 2003-11-14 Fujitsu Ltd 分散ファイル管理方法及びプログラム
JP2004127189A (ja) 2002-10-07 2004-04-22 Matsushita Electric Ind Co Ltd ゲートウェイ装置、コンテンツ転送システム及びコンテンツ転送方法
JP2004185263A (ja) 2002-12-03 2004-07-02 Oki Electric Ind Co Ltd 分散協調型コンテンツ配信システム
WO2005033952A1 (ja) 2003-09-30 2005-04-14 Sony Corporation 情報再生装置および方法、並びにプログラム
US8370514B2 (en) * 2005-04-28 2013-02-05 DISH Digital L.L.C. System and method of minimizing network bandwidth retrieved from an external network
US7680937B2 (en) * 2005-12-22 2010-03-16 Microsoft Corporation Content publication
US7617322B2 (en) 2006-09-29 2009-11-10 Microsoft Corporation Secure peer-to-peer cache sharing
US9049206B2 (en) * 2009-05-05 2015-06-02 Telefonaktiebolaget L M Ericsson (Publ) P2P for mobile providers
JP5556104B2 (ja) * 2009-09-24 2014-07-23 ブラザー工業株式会社 情報通信システム、情報通信方法及び情報通信プログラム
JP5765950B2 (ja) 2010-01-28 2015-08-19 トムソン ライセンシングThomson Licensing 票ベクトルに従って、ワイヤレス・コミュニケーション能力を有するピア間のコンテンツ配布を制御するためのデバイス、及び方法
JP2011180820A (ja) 2010-03-01 2011-09-15 Nec Corp データ転送管理装置、データ転送管理方法およびデータ転送管理プログラム
EP2572495B1 (en) * 2010-05-20 2016-07-06 Telefonaktiebolaget LM Ericsson (publ) System and method for managing data delivery in a peer-to-peer network
CN102571863A (zh) 2010-12-30 2012-07-11 国际商业机器公司 实现移动终端之间内容共享的方法和装置
US20120271903A1 (en) * 2011-04-19 2012-10-25 Michael Luna Shared resource and virtual resource management in a networked environment
US9549024B2 (en) * 2012-12-07 2017-01-17 Remote Media, Llc Routing and synchronization system, method, and manager

Also Published As

Publication number Publication date
JPWO2015166680A1 (ja) 2017-04-20
US20170006127A1 (en) 2017-01-05
EP3139276A1 (en) 2017-03-08
EP3139276B1 (en) 2020-07-01
EP3139276A4 (en) 2017-12-20
WO2015166680A1 (ja) 2015-11-05
US10171613B2 (en) 2019-01-01

Similar Documents

Publication Publication Date Title
US9098420B2 (en) Method and apparatus for synchronizing a cache
US10271083B2 (en) Pre-roll advertisement playing method, terminal, and video server
US9621620B2 (en) Apparatus and method for providing content with a distributed architecture, and system for providing content with the said apparatus
CN104301373B (zh) 经由文件共享服务同步的推送通知
JP5897153B2 (ja) ソーシャルネットワークにおけるユーザ検索方法、ユーザ検索システム、およびユーザ検索装置
CN105612735B (zh) 可靠地址发现高速缓存
JP2016514303A (ja) ピアツーピアシステムにおけるコンテンツ管理
JP6432598B2 (ja) クライアント装置、サーバ、記録媒体および情報処理方法
WO2017176924A1 (en) Mobile application accelerator
US10430441B1 (en) Tagging resources of a remote computing service based on locality
US20150006622A1 (en) Web contents transmission method and apparatus
CN104754618A (zh) 无线数据传输方法和装置
CN107003981A (zh) 与本地配对的设备同步以使用点到点通信从远程服务器获得数据
US8539058B2 (en) Processing state management device, processing state management method, and program
CN112020704A (zh) 用于执行应用更新周期的资源的设备间传输
US20140297843A1 (en) Apparatus and method for managing presence information
US10856147B2 (en) Identification information providing system, identification information providing apparatus, identification information providing method, and non-transitory recording medium
WO2018032705A1 (zh) 用于提供无线接入点信息包的方法与设备
EP2928105A2 (en) Content delivery architecture
JP2010079523A (ja) セッションデータ共有方法
EP3479550B1 (en) Constraint based controlled seeding
JP2016158070A (ja) 基地局輻輳管理システム、及び基地局輻輳管理方法
US10951684B2 (en) Information processing system, information processing method, user terminal and storage medium
US10659565B2 (en) Information processing system and information processing apparatus
US20210144217A1 (en) Service communication proxy apparatus and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171211

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180921

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: 20181009

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181022

R151 Written notification of patent or utility model registration

Ref document number: 6432598

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151