JP2017068451A - プログラム、パターン送信方法、共有コンテンツ制御システム及び情報処理装置 - Google Patents

プログラム、パターン送信方法、共有コンテンツ制御システム及び情報処理装置 Download PDF

Info

Publication number
JP2017068451A
JP2017068451A JP2015191618A JP2015191618A JP2017068451A JP 2017068451 A JP2017068451 A JP 2017068451A JP 2015191618 A JP2015191618 A JP 2015191618A JP 2015191618 A JP2015191618 A JP 2015191618A JP 2017068451 A JP2017068451 A JP 2017068451A
Authority
JP
Japan
Prior art keywords
content
user
access
pattern
request
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.)
Pending
Application number
JP2015191618A
Other languages
English (en)
Inventor
宏一郎 雨宮
Koichiro Amamiya
宏一郎 雨宮
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2015191618A priority Critical patent/JP2017068451A/ja
Priority to US15/209,169 priority patent/US20170093977A1/en
Publication of JP2017068451A publication Critical patent/JP2017068451A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Mining & Analysis (AREA)

Abstract

【課題】エッジサーバにおけるコンテンツ配信の効率を高める。
【解決手段】コンテンツへのアクセスが要求されるタイミングに関するパターンの送信方法は、第1ユーザの端末からコンテンツアクセスの要求を受信した第1エッジサーバから、当該要求のログを受信し、上記ログに基づいて、第1ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、第1ユーザと関連付けられている第2ユーザの端末と接続した実績がある第2エッジサーバへ、上記パターンを送信する処理を含む。
【選択図】図23A

Description

本発明は、コンテンツ共有の技術に関する。
複数のユーザ間でコンテンツを共有するためのサービスにおいて、インターネットに設けられたセンタサーバからコンテンツをダウンロードする場合には、狭い帯域を使用するため、伝送にかかる時間が長くなることがある。
一方、ダウンロードしようとするユーザの端末が接続するエッジサーバにおいて予めコンテンツをキャッシュしておけば、広い帯域における伝送だけで足りるので、コンテンツの取得時間は短くなる。
但し、例えば特定のコンテンツをダウンロードしようとするユーザが多い場合には、各エッジサーバに当該コンテンツを配信する負荷は大きくなりやすい。
特開2004−171052号公報
本発明の目的は、一側面では、エッジサーバにおけるコンテンツ配信の効率を高めることである。
一態様に係るパターン送信方法は、(A)第1ユーザの端末からコンテンツアクセスの要求を受信した第1エッジサーバから、当該要求のログを受信し、(B)上記ログに基づいて、第1ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、(C)第1ユーザと関連付けられている第2ユーザの端末と接続した実績がある第2エッジサーバへ、上記パターンを送信する処理を含む。
一態様に係るパターン送信方法は、(A)コンテンツ共有システムに含まれるエッジサーバから、コンテンツ配信の要求を受信し、(B)上記要求において指定されたユーザについて、当該ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、(C)配信するコンテンツと共に、上記パターンを上記エッジサーバへ送信する処理を含む。
一側面としては、エッジサーバにおけるコンテンツ配信の効率を高めることに役立つ。
図1は、コンテンツ共有システムのネットワーク構成例を示す図である。 図2は、データセンタのモジュール構成例を示す図である。 図3は、コンテンツデータ記憶部に記憶するデータの例を示す図である。 図4は、コンテンツ位置テーブルの例を示す図である。 図5は、アクセスログテーブルの例を示す図である。 図6は、アクセスパターンテーブルの例を示す図である。 図7は、接近ログテーブルの例を示す図である。 図8は、ユーザ位置テーブルの例を示す図である。 図9は、関連データの例を示す図である。 図10は、エッジノードのモジュール構成例を示す図である。 図11は、アクセスパターンテーブルの例を示す図である。 図12は、アクセスログテーブルの例を示す図である。 図13は、第1フェーズの概要を示す図である。 図14は、アップロード要求の構成例を示す図である。 図15は、アップロード通知メッセージの構成例を示す図である。 図16は、第1アップロード処理フローを示す図である。 図17は、第2アップロード処理フローを示す図である。 図18は、第2フェーズの概要を示す図である。 図19は、アクセスパターンメッセージの構成例を示す図である。 図20は、アクセスパターンの例を示す図である。 図21は、第1周期処理フローを示す図である。 図22は、特定処理フローを示す図である。 図23Aは、配布処理フローを示す図である。 図23Bは、配布処理フローを示す図である。 図24は、第1登録処理フローを示す図である。 図25は、第3フェーズの概要を示す図である。 図26は、接近ログメッセージの構成例を示す図である。 図27は、配備指示メッセージの構成例を示す図である。 図28は、事前要求メッセージの構成例を示す図である。 図29は、事前応答メッセージの構成例を示す図である。 図30は、配備完了メッセージの構成例を示す図である。 図31は、第1配備処理(A)フローを示す図である。 図32は、第2配備処理(A)フローを示す図である。 図33は、第2配備処理(A)フローを示す図である。 図34は、受付処理フローを示す図である。 図35は、配信処理(A)フローを示す図である。 図36は、第4フェーズの概要を示す図である。 図37は、アクセス要求の構成例を示す図である。 図38は、アクセスログメッセージの構成例を示す図である。 図39は、第4フェーズの概要を示す図である。 図40は、コンテンツ要求メッセージの構成例を示す図である。 図41は、第1ダウンロード処理フローを示す図である。 図42は、第2ダウンロード処理フローを示す図である。 図43は、第2登録処理フローを示す図である。 図44Aは、第2周期処理フローを示す図である。 図44Bは、第2周期処理フローを示す図である。 図45は、集計テーブルの例を示す図である。 図46は、実施の形態2に係る配備指示メッセージの構成例を示す図である。 図47は、実施の形態2に係る事前要求メッセージの構成例を示す図である。 図48は、実施の形態2に係る事前応答メッセージの構成例を示す図である。 図49は、第1配備処理(B)フローを示す図である。 図50は、第2配備処理(B)フローを示す図である。 図51は、配信処理(B)フローを示す図である。 図52は、コンピュータの機能ブロック図である。
[実施の形態1]
図1に、コンテンツ共有システムのネットワーク構成例を示す。コンテンツ共有システムは、データセンタ101及び複数のエッジノード103を含んでいる。データセンタ101は、広域網に含まれている。
ユーザ端末105は、ローカル網に設けられているエッジノード103を介して、コンテンツをアップロードし、あるいはダウンロードする。
共有されるコンテンツは、データセンタ101において保持されると共に、エッジノード103においてキャッシュされる場合がある。エッジノード103においてキャッシュされているコンテンツについては、ユーザ端末105へ速くダウンロードされる。ローカル網における帯域は、一般的に広域網における帯域に比べて広いからである。
また、ユーザが移動すれば、ユーザ端末105が接続するエッジノード103は切り替わる。エッジノード103は、例えば移動体通信網における基地局又は無線LAN(Local Area Network)におけるアクセスポイントである。
以下に示す例で、ユーザ端末105bがエッジノード103aに接続してコンテンツをアップロードすると、エッジノード103aにおいて当該コンテンツはキャッシュされる。
また、ユーザ端末105aがその時間帯にエッジノード103cに接続することが多く、更にユーザ端末105bからアップロードされたコンテンツをすぐにダウンロードする場合が多いと想定する。このような場合に、エッジノード103aにコンテンツがキャッシュされてから間もなく、ユーザ端末105aがエッジノード103cに接近すると、エッジノード103cはエッジノード103aへコンテンツを事前に要求する。
エッジノード103aは、データセンタ101から、ユーザ端末105aによるアクセスパターンを取得しており、そのアクセスパターンに基づいて、すぐにエッジノード103cにコンテンツを送った方がよいと判断する。そして、仮に他のエッジノード103からのコンテンツ要求と競合する場合であっても、優先して応答する。
このようにすれば、例えばエッジノード103aを介してアップロードされたコンテンツをすぐにダウンロードしたいユーザが多い場合に、各ユーザの行動パターンに応じた適切なコンテンツ配信を行うことができる。
図2に、データセンタ101のモジュール構成例を示す。データセンタ101は、受信部201、送信部203、センタサービス部205、特定部207、配布部209、配備制御部211、生成部213、コンテンツデータ記憶部221、コンテンツ位置記憶部223、アクセスログ記憶部225、アクセスパターン記憶部227、接近ログ記憶部229、ユーザ位置記憶部231及び関連データ記憶部233を有する。
受信部201は、各種データを受信する。送信部203は、各種データを送信する。センタサービス部205は、データセンタ101におけるコンテンツサービスを提供する。特定部207は、ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定する。更に、特定部207は、時間帯に応じて予測されるユーザの位置を特定する。配布部209は、エッジノード103にアクセスパターンを配布する。配備制御部211は、コンテンツの事前配備を制御する。生成部213は、ユーザ同士を関連付けるデータ(関連データという。)を生成する。
コンテンツデータ記憶部221は、コンテンツ本体及びコンテンツに付属するデータを記憶する。コンテンツ位置記憶部223は、コンテンツの格納場所を管理するコンテンツ位置テーブルを記憶する。アクセスログ記憶部225は、アクセス要求に関するアクセスログテーブルを記憶する。アクセスパターン記憶部227は、ユーザによるアクセス要求のタイミングをまとめたアクセスパターンテーブルを記憶する。接近ログ記憶部229は、エッジノード103へのデータセンタ101の接近に関する接近ログテーブルを記憶する。ユーザ位置記憶部231は、予測されるユーザの位置をまとめたユーザ位置テーブルを記憶する。関連データ記憶部233は、関連データを記憶する。
上述した受信部201、送信部203、センタサービス部205、特定部207、配布部209、配備制御部211及び生成部213は、ハードウエア資源(例えば、図52)と、以下で述べる処理をプロセッサに実行させるプログラムとを用いて実現される。
上述したコンテンツデータ記憶部221、コンテンツ位置記憶部223、アクセスログ記憶部225、アクセスパターン記憶部227、接近ログ記憶部229、ユーザ位置記憶部231及び関連データ記憶部233は、ハードウエア資源(例えば、図52)を用いて実現される。
図3を用いて、コンテンツデータ記憶部221に記憶されるデータについて説明する。コンテンツデータ記憶部221は、コンテンツ本体に対応付けて、コンテンツ名、ユーザID及び登録日時を記憶する。この例では、コンテンツ名、ユーザID及び登録日時が付属レコードに設定される。
コンテンツ名は、当該コンテンツを識別する。ユーザIDは、当該コンテンツを登録したユーザの識別子である。登録日時は、当該コンテンツが登録された日付及び時刻である。
次に、コンテンツ位置記憶部223に記憶されるコンテンツ位置テーブルについて説明する。図4に、コンテンツ位置テーブルの例を示す。この例におけるコンテンツ位置テーブルは、コンテンツに対応するレコード(以下、コンテンツ位置レコードという。)を有している。コンテンツ位置レコードは、コンテンツ名を設定するためのフィールドと、保持ノードIDを設定するための一又は複数のフィールドとを有している。
コンテンツ名は、当該コンテンツを識別する。保持ノードIDは、当該コンテンツを保持しているエッジノード103のIDである。
次に、アクセスログ記憶部225に記憶されるアクセスログテーブルについて説明する。図5に、アクセスログテーブルの例を示す。この例におけるアクセスログテーブルは、一回のコンテンツアクセスに対応するレコード(以下、アクセスログレコードという。)を有している。アクセスログレコードは、アクセス日時を設定するためのフィールドと、ユーザIDを設定するためのフィールドと、接続ノードIDを設定するためのフィールドと、ログ種別を設定するためのフィールドと、コンテンツ名を設定するためのフィールドとを有している。
アクセス日時は、コンテンツへのアクセスが行われた日付及び時刻である。ユーザIDは、コンテンツへのアクセス要求を送信したユーザ端末105を使用するユーザを識別する。ユーザIDは、ユーザ端末105の識別子であってもよい。接続ノードIDは、アクセス要求を行う際にユーザ端末105と接続していたエッジノード103のIDである。ログ種別には、「アクセス要求」が設定されている。「アクセス要求」は、当該ログがアクセスログであることを示している。コンテンツ名は、アクセスされたコンテンツを表す。
次に、アクセスパターン記憶部227に記憶されるアクセスパターンテーブルについて説明する。図6に、アクセスパターンテーブルの例を示す。この例におけるアクセスパターンテーブルは、ユーザID、曜日、時間帯及び接続ノードIDの組み合わせに対応するレコード(以下、パターンレコードという。)を有している。パターンレコードは、ユーザIDを設定するためのフィールドと、曜日を設定するためのフィールドと、時間帯を設定するためのフィールドと、接続ノードIDを設定するためのフィールドと、アクセス要求までの時間を設定するためのフィールドとを有している。
ユーザIDは、当該パターンに従ってアクセス要求を指示するユーザを識別する。曜日及び時間帯は、想定する時間的な状況を示す。接続ノードIDは、当該時間的な状況においてユーザ端末105が接続すると想定されるエッジノード103のIDである。接続ノードIDは、場所的な状況を示す。アクセス要求までの時間は、想定される状況においてエッジノード103に接近してから、アクセス要求を送信するまでの基準時間(この例では、実績に基づく平均時間)である。
例えば、図示した1番目のパターンレコードは、火曜の10時台にユーザEのユーザ端末105が、ノードFに接近した場合に、接近から15分後にアクセス要求が送信されると想定されることを示している。
次に、接近ログ記憶部229に記憶される接近ログテーブルについて説明する。図7に、接近ログテーブルの例を示す。この例における接近ログテーブルは、エッジノード103においてユーザ端末105から受けた接近通知に対応するレコード(以下、接近ログレコードという。)を有している。接近ログレコードは、接近日時を設定するためのフィールドと、ユーザIDを設定するためのフィールドと、接近ノードIDを設定するためのフィールドと、ログ種別を設定するためのフィールドとを有している。
接近日時は、エッジノード103において接近通知を受けた日付及び時刻である。ユーザIDは、接近通知を送ったユーザ端末105を使用するユーザを識別する。接近ノードIDは、接近通知を受けたエッジノード103のIDである。ログ種別には、「接近」が設定されている。「接近」は、当該ログが接近ログであることを示している。
次に、ユーザ位置記憶部231に記憶されるユーザ位置テーブルについて説明する。図8に、ユーザ位置テーブルの例を示す。この例におけるユーザ位置テーブルは、ユーザID、曜日及び時間帯に対応するレコード(以下、ユーザ位置レコードという。)を有している。ユーザ位置レコードは、ユーザIDを設定するためのフィールドと、曜日を設定するためのフィールドと、時間帯を設定するためのフィールドと、接近ノードIDを設定するためのフィールドとを有している。
ユーザIDは、所在を特定する対象となるユーザを識別する。曜日及び時間帯は、想定する時間的な状況を示す。接近ノードIDは、当該時間的な状況において当該ユーザのユーザ端末105が接近している可能性が高いエッジノード103のIDである。つまり、接近ノードIDは、予想されるユーザの所在位置を表す。
例えば、図示した1番目のユーザ位置レコードは、月曜の9時台に、ユーザBがノードAであるエッジノード103の近くに居る可能性が高いことを示している。
次に、関連データ記憶部233に記憶される関連データについて説明する。図9に、関連データの例を示す。この例における関連データは、テーブル形式である。但し、関連データは、テーブル形式以外の形式であってもよい。この例における関連データは、コンテンツを登録したユーザ(登録ユーザという。)に対応するレコード(以下、関連レコードという。)を有している。
関連レコードは、登録ユーザIDを設定するためのフィールドと、取得ユーザIDを設定するための一又は複数のフィールドとを有している。登録ユーザIDは、コンテンツの登録ユーザ、つまりコンテンツを提供する側のユーザを識別する。取得ユーザIDは、登録ユーザによって提供されたコンテンツを取得したユーザ(取得ユーザという。)を識別する。
例えば、図示した1番目の関連レコードは、ユーザBがコンテンツをアップロードした場合に、ユーザA、ユーザC及びユーザEが頻繁に当該コンテンツをダウンロードする傾向があることを示している。
続いて、エッジノード103について説明する。図10に、エッジノード103のモジュール構成例を示す。エッジノード103は、第1受信部1001、第1送信部1003、第2受信部1005、第2送信部1007、エッジサービス部1009、登録部1011、配備エージェント1013、コンテンツ記憶部1021、アクセスパターン記憶部1023及びアクセスログ記憶部1025を有する。
第1受信部1001は、ローカル網を介して各種データを受信する。第1送信部1003は、ローカル網を介して各種データを送信する。第2受信部1005は、無線媒体によってユーザ端末105から各種データを受信する。第2送信部1007は、無線媒体によって各種データをユーザ端末105へ送信する。エッジサービス部1009は、エッジノード103におけるコンテンツサービスを提供する。登録部1011は、アクセスパターンを登録する。配備エージェント1013は、コンテンツの事前配備を行う。
コンテンツ記憶部1021は、コンテンツ名に対応付けてコンテンツ本体を記憶する。アクセスパターン記憶部1023は、アクセスパターンテーブルを記憶する。アクセスログ記憶部1025は、アクセスログテーブルを記憶する。
上述した第1受信部1001、第1送信部1003、第2受信部1005、第2送信部1007、エッジサービス部1009、登録部1011及び配備エージェント1013は、ハードウエア資源(例えば、図52)と、以下で述べる処理をプロセッサに実行させるプログラムとを用いて実現される。
上述したコンテンツ記憶部1021、アクセスパターン記憶部1023及びアクセスログ記憶部1025、は、ハードウエア資源(例えば、図52)を用いて実現される。
次に、アクセスパターン記憶部1023に記憶されるアクセスパターンテーブルについて説明する。図11に、アクセスパターンテーブルの例を示す。アクセスパターン記憶部1023に記憶されるアクセスパターンテーブルの構成は、データセンタ101におけるアクセスパターン記憶部227に記憶されるアクセスパターンテーブルの場合と同様である。アクセスパターン記憶部1023に記憶されるアクセスパターンテーブルには、アクセスログ記憶部225に記憶されるアクセスパターンテーブルにおけるパターンレコードの一部が格納される。
次に、アクセスログ記憶部1025に記憶されるアクセスログテーブルについて説明する。図12に、アクセスログテーブルの例を示す。アクセスログ記憶部1025に記憶されるアクセスログテーブルの構成は、データセンタ101におけるアクセスログ記憶部225に記憶されるアクセスログテーブルの場合と同様である。アクセスログ記憶部1025に記憶されるアクセスログテーブルは、当該エッジノード103において受信したアクセス要求に係るアクセスログレコードを含んでいる。
以下では、コンテンツ共有システムの動作について第1フェーズ乃至第5フェーズに分けて説明する。図13に、第1フェーズの概要を示す。第1フェーズでは、コンテンツがアップロードされる。この例では、ユーザ端末105bからアップロード要求がエッジノード103aに送られる。
コンテンツ本体は、アップロード要求に含まれている。コンテンツ本体は、エッジノード103においてキャッシュされると共に、アップロード通知メッセージの形式でデータセンタ101に転送される。
図14に、アップロード要求の構成例を示す。アップロード要求は、コンテンツ名、コンテンツ本体及びユーザIDを含んでいる。コンテンツ名は、アップロードされるコンテンツを識別する。コンテンツ本体は、アップロードされるデータである。コンテンツ本体は、例えば画像形式又は音声形式のデータである。ユーザIDは、アップロードを要求するユーザのIDである。
図15に、アップロード通知メッセージの構成例を示す。アップロード通知メッセージは、コンテンツ名、コンテンツ本体、ユーザID及び保持ノードIDを含んでいる。コンテンツ名は、アップロードされたコンテンツを識別する。コンテンツ本体は、アップロードされたデータである。ユーザIDは、アップロードを要求したユーザのIDである。保持ノードIDは、アップロードされたコンテンツを保持しているエッジノード103のIDである。
エッジノード103における第1アップロード処理について説明する。図16に、第1アップロード処理フローを示す。第2受信部1005が、ユーザ端末105からアップロード要求を受信すると(S1601)、エッジサービス部1009は、アップロード要求に含まれるコンテンツ本体をコンテンツ名と対応付けてコンテンツ記憶部1021に記憶する(S1603)。そして、第1送信部1003は、アップロード通知メッセージをデータセンタ101へ送信する(S1605)。
次に、データセンタ101における第2アップロード処理について説明する。図17に、第2アップロード処理フローを示す。受信部201が、エッジノード103からアップロード通知メッセージを受信すると(S1701)、センタサービス部205は、コンテンツ本体と付属データ(コンテンツ名、ユーザID及び登録日時)とをコンテンツデータ記憶部221に記憶する(S1703)。また、センタサービス部205は、コンテンツ位置テーブルにコンテンツ位置を登録する(S1705)。具体的には、コンテンツ名が設定されているコンテンツ位置レコードがある場合には、センタサービス部205は、そのレコードにアップロード通知メッセージの送信元であるエッジノード103のIDを新たな保持ノードIDのフィールドに設定する。また、コンテンツ名が設定されているコンテンツ位置レコードがない場合には、センタサービス部205は、新たなコンテンツ位置レコードを追加して、コンテンツ名及び保持ノードIDを設定する。
次に、第2フェーズについて説明する。図18に、第2フェーズの概要を示す。第2フェーズでは、各エッジノード103へユーザのアクセスパターンが選択的に配られる。この例において送られるアクセスパターンは、メッセージ形式である。
図19に、アクセスパターンメッセージの構成例を示す。アクセスパターンメッセージは、ユーザID、曜日、時間帯、接続ノードID及びアクセス要求までの時間を含んでいる。ユーザIDは、当該パターンに従ってアクセス要求を指示するユーザを識別する。曜日及び時間帯は、想定する時間的な状況を示す。接続ノードIDは、当該時間的な状況においてユーザ端末105が接続すると想定されるエッジノード103のIDである。接続ノードIDは、場所的な状況を示す。アクセス要求までの時間は、想定される状況においてエッジノード103に接近してから、アクセス要求を送信するまでの基準時間(この例では、実績に基づく平均時間)である。
アクセスパターンについて、更に説明する。図20に、アクセスパターンの例を示す。例えば、エッジノード103aは、ユーザA(ユーザ端末105aの使用者)が、月曜の9時台において、エッジノード103cへ接近してから5分後にコンテンツをダウンロードしようとすることが多いというアクセスパターンを保持しているものとする。更に、エッジノード103aは、ユーザC(ユーザ端末105cの使用者)が、同じく月曜の9時台において、エッジノード103bに接近してから、15分後にコンテンツをダウンロードしようとすることが多いというアクセスパターンを保持しているものとする。
また、ユーザB(ユーザ端末105bの使用者)がアップロードするコンテンツをユーザA及びユーザCが頻繁にダウンロードしているものとする。つまり、ユーザBは、コンテンツを登録する側のユーザであり、ユーザA及びユーザCは、ユーザBが登録したコンテンツを取得する側のユーザである。このような場合に、ユーザBに対してユーザA及びユーザCは関連が深い。両者の関係は、データセンタ101において関連データで管理されているものとする。
ある月曜の9時台に、ユーザBがエッジノード103aに接近して新たなコンテンツをアップロードしたと想定する。このころ、ユーザAはエッジノード103cに接近しつつあり、同様にユーザCはエッジノード103bに接近しつつあるものとする。
このような場合には、エッジノード103bとエッジノード103cとの両方において、新たなコンテンツを事前にキャッシュする動作を行う。つまり、エッジノード103bとエッジノード103cとの両方からエッジノード103に対して事前にコンテンツを要求する。
仮にエッジノード103aにおいて、エッジノード103bとエッジノード103cとから同時に新たなコンテンツを要求された場合、習慣としてユーザAの方が早くコンテンツをダウンロードしようとする傾向がある。エッジノード103aは、ユーザAのアクセスパターンに基づいて、その傾向に応じるように先にエッジノード103cへ新たなコンテンツを送る。
一方、習慣としてユーザCは、コンテンツのダウンロードをあまり急がない傾向がある。エッジノード103aは、ユーザCのアクセスパターンに基づいて、その傾向に応じるように後にエッジノード103bへ新たなコンテンツを送る。
このように時間的にシフトしてコンテンツの配信を行えば、エッジノード103aにおける伝送負荷が大きくなった場合でも、滞ることなく事前のキャッシュを済ませることができる。
第2フェーズにおける処理について説明する。まず、データセンタ101における第1周期処理について説明する。図21に、第1周期処理フローを示す。第1周期処理では、日常的なデータ更新を行う。特定部207は、所定の周期に従ってタイミングを待つ(S2101)。
タイミングに至ると、特定部207は、特定処理を実行する(S2103)。特定処理では、コンテンツへアクセスするパターン及び予想されるユーザの所在位置を特定する。図22に、特定処理フローを示す。特定部207は、アクセスログテーブルに含まれるアクセスログレコードを、ユーザID、曜日、時間帯及び接続ノードIDの組み合わせ毎に仕分ける(S2201)。曜日及び時間帯は、アクセス日時に基づいて特定される。特定部207は、組み合わせ毎にアクセス要求までの時間の平均を求める(S2203)。そして、特定部207は、アクセスパターンテーブルに各組み合わせに対応するパターンレコードを登録する(S2205)。
特定部207は、接近ログテーブルに含まれる接近ログレコードを、ユーザID、曜日及び時間帯の組み合わせ毎に仕分ける(S2207)。曜日及び時間帯は、接近日時に基づいて特定される。特定部207は、組み合わせ毎に頻度の高い接続ノードIDを特定する(S2209)。そして、特定部207は、ユーザ位置テーブルに各組み合わせに対応するユーザ位置レコードを登録する(S2211)。特定処理を終えると、呼び出し元の第1周期処理に復帰する。
図21の説明に戻る。配布部209は、配布処理を実行する(S2105)。配布処理では、エッジノード103へアクセスパターンメッセージを配布する。図23A及び図23Bに、配布処理フローを示す。配布部209は、関連データで管理されている取得ユーザIDを1つ特定する(S2301)。更に、配布部209は、曜日と時間帯との組み合わせを1つ特定する(S2303)。このとき特定される、曜日と時間帯との組み合わせは、予め定められているものとする。
配布部209は、アクセスパターンテーブルのパターンレコードのうち、当該取得ユーザID、曜日及び時間帯の組み合わせに該当するパターンレコードを特定する。そして、配布部209は、当該パターンレコードに設定されている接続ノードIDとアクセス要求までの時間とを特定する(S2305)。
配布部209は、関連データに含まれる関連レコードの中から、取得ユーザIDに対応する登録ユーザIDを1つ特定する(S2307)。
配布部209は、ユーザ位置テーブルのユーザ位置レコードのうち、当該登録ユーザIDと当該曜日と当該時間帯との組み合わせに該当するユーザ位置レコードを特定する。そして、配布部209は、当該ユーザ位置レコードに設定されている接近ノードIDを特定する(S2309)。接近ノードIDは、想定される状況における登録ユーザの所在場所に相当する。
配布部209は、送信部203を介して、S2301で特定した取得ユーザID、当該曜日、当該時間帯、S2305で特定した接続ノードID及びアクセス要求までの時間を含むアクセスパターンメッセージを、S2309で特定した接近ノードID宛に送信する(S2311)。
受信部201がACK(ACKnowledgement)メッセージを受信すると(S2313)、配布部209は、S2307において未特定の登録ユーザIDがあるか否かを判定する(S2315)。未特定の登録ユーザIDがあると判定した場合には、S2307に示した処理に戻って上述した処理を繰り返す。
一方、未特定の登録ユーザIDがないと判定した場合には、端子Aを介して図23Bに示したS2317の処理に移る。配布部209は、S2303において未特定の組み合わせがあるか否かを判定する(S2317)。未特定の組み合わせがあると判定した場合には、端子Bを介して図23AのS2303に示した処理に戻って上述した処理を繰り返す。
一方、未特定の組み合わせがないと判定した場合には、配布部209は、S2301において未特定の取得ユーザIDがあるか否かを判定する(S2319)。未特定の取得ユーザIDがあると判定した場合には、端子Cを介して図23AのS2301に示した処理に戻って上述した処理を繰り返す。
一方、未特定の取得ユーザIDがないと判定した場合には、呼び出し元の第1周期処理に復帰する。
次に、エッジノード103における第1登録処理について説明する。第1登録処理では、アクセスパターンをアクセスパターンテーブルに登録する。図24に、第1登録処理フローを示す。第1受信部1001が、データセンタ101からアクセスパターンメッセージを受信すると(S2401)、登録部1011は、アクセスパターンメッセージに基づいて、パターンレコードをアクセスパターンテーブルに登録する(S2403)。第1送信部1003は、ACKメッセージをデータセンタ101へ送信し(S2405)、S2401に示した処理に戻って上述した処理を繰り返す。
次に、第3フェーズについて説明する。図25に、第3フェーズの概要を示す。第3フェーズでは、コンテンツをダウンロードする。この例で、ユーザ端末105aがエッジノード103cに近づくと、エッジノード103cはユーザ端末105aから接近通知を受信する。接近通知には、ユーザIDが含まれている。
エッジノード103cは、接近ログメッセージをデータセンタ101へ送る。データセンタ101は、ユーザ端末105aの位置を記録する。また、データセンタ101は、エッジノード103cによるアクセス要求に備えて予めエッジノード103cに配備するコンテンツを選択する。
データセンタ101からエッジノード103cへ送られる配備指示メッセージには、エッジノード103cが予めキャッシュするコンテンツの名前とそのコンテンツを既にキャッシュしている他のエッジノード103のIDが含まれている。この例では、エッジノード103aに所望のコンテンツがキャッシュされているものとする。
エッジノード103cは、事前要求メッセージをエッジノード103aへ送る。そして、エッジノード103aは、事前要求メッセージに応じてコンテンツを配信する。コンテンツは、事前要求メッセージの形式で送られる。
エッジノード103cは、コンテンツをキャッシュすると、その旨を配備完了メッセージによってデータセンタ101に知らせる。
以下、第3フェーズで用いられる各メッセージについて説明する。図26に、接近ログメッセージの構成例を示す。接近ログメッセージは、接近日時、ユーザID、接近ノードID及びログ種別を含んでいる。接近日時は、エッジノード103において接近通知を受けた日付及び時刻である。ユーザIDは、接近通知を送ったユーザ端末105を使用するユーザを識別する。接近ノードIDは、接近通知を受けたエッジノード103のIDである。ログ種別には、「接近」が設定されている。「接近」は、当該ログが接近ログであることを示している。
図27に、配備指示メッセージの構成例を示す。配備指示メッセージは、ユーザID、コンテンツ名及び保持ノードIDを含んでいる。コンテンツ名と保持ノードIDとの組は、エントリに相当する。また、エントリは、一つ又は複数である。ユーザIDは、エッジノード103への接近したユーザ端末105を使用するユーザを識別する。このユーザによるエッジノード103への接近が、コンテンツ配備の契機である。コンテンツ名は、配備されるコンテンツを識別する。保持ノードIDは、配備されるコンテンツを保持しているエッジノード103のIDである。このエッジノード103が、配備されるコンテンツを提供する。
図28に、事前要求メッセージの構成例を示す。事前要求メッセージは、ユーザID、提供ノードID、受取ノードID及びコンテンツ名を含んでいる。事前要求メッセージに含まれるユーザIDは、配備指示メッセージに含まれるユーザIDと一致する。このユーザは、事前に要求されるコンテンツへアクセスする可能性がある。提供ノードIDは、事前に要求されるコンテンツを提供するエッジノード103のIDである。受取ノードIDは、要求されるコンテンツを受け取るエッジノード103のIDである。コンテンツ名は、要求されるコンテンツを識別する。
図29に、事前応答メッセージの構成例を示す。事前応答メッセージは、ユーザID、提供ノードID、受取ノードID及びコンテンツ本体を含んでいる。事前応答メッセージに含まれるユーザIDは、事前要求メッセージに含まれるユーザIDと一致する。事前応答メッセージに含まれる提供ノードIDは、事前要求メッセージに含まれる提供ノードIDと一致する。事前応答メッセージに含まれる受取ノードIDは、事前要求メッセージに含まれる受取ノードIDと一致する。コンテンツ本体は、事前要求メッセージに含まれるコンテンツ名によって特定される。
図30に、配備完了メッセージの構成例を示す。配備完了メッセージは、コンテンツ名及び被配備ノードIDを含んでいる。コンテンツ名は、配備対象となったコンテンツを識別する。被配備ノードIDは、コンテンツが配備されたエッジノード103のIDである。被配備ノードIDは、事前要求メッセージ及び事前応答メッセージに含まれる受取ノードIDと一致する。
続いて、第3フェーズにおける処理について説明する。まず、エッジノード103における第1配備処理(A)について説明する。第1配備処理(A)では、エッジノード103がコンテンツを予め確保する。図31に、第1配備処理(A)フローを示す。第2受信部1005が、ユーザ端末105から接近通知を受信すると(S3101)、配備エージェント1013は、第1送信部1003を介して接近ログメッセージをデータセンタ101へ送信する(S3103)。この例では、当日の日付及び現在時刻が、接近ログメッセージの接近日時に設定される。接近通知に含まれるユーザIDが、接近ログメッセージに設定される。本エッジノード103のIDが、接近ログメッセージの接近ノードIDとして設定される。
そして、第1受信部1001が、データセンタ101から配備指示メッセージを受信すると(S3105)、配備エージェント1013は、配備指示メッセージに含まれるエントリ、つまりコンテンツ名と保持ノードIDとの組を1つ特定する(S3107)。
配備エージェント1013は、第1送信部1003を介して保持ノードID宛に事前要求メッセージを送信する(S3109)。この例では、接近通知に含まれるユーザIDが、事前要求メッセージに設定される。保持ノードIDが、事前要求メッセージの提供ノードIDとして設定される。本エッジノード103のIDが、事前要求メッセージの受取ノードIDとして設定される。S3107で特定したエントリのコンテンツ名が、事前要求メッセージに設定される。
そして、第1受信部1001が、保持ノードから事前応答メッセージを受信すると(S3111)。配備エージェント1013は、コンテンツ名を付してコンテンツ本体をコンテンツ記憶部1021に記憶する(S3113)。
配備エージェント1013は、第1送信部1003を介して配備完了メッセージをデータセンタ101へ送信する(S3115)。このとき、事前要求メッセージに含めたコンテンツ名が、配備完了メッセージに設定される。本エッジノード103のIDが、配備完了メッセージの被配備ノードIDとして設定される。
配備エージェント1013は、S3107において未特定のエントリがあるか否かを判定する(S3117)。未特定のエントリがあると判定した場合には、S3107に示した処理に戻って上述した処理を繰り返す。
一方、未特定のエントリがないと判定した場合には、S3101に示した処理に戻って上述した処理を繰り返す。
次に、データセンタ101における第2配備処理(A)について説明する。第2配備処理(A)では、接近ログメッセージの送信元であるエッジノード103にコンテンツの配備を指示する。図32に、第2配備処理(A)フローを示す。送信部203は、エッジノード103から接近ログメッセージを受信すると(S3201)、配備制御部211は、接近ログメッセージに基づいて、接近ログテーブルに接近ログレコードを登録する(S3203)。
配備制御部211は、関連データに含まれる関連レコードの中から、取得ユーザIDに対応する登録ユーザIDを1つ特定する(S3205)。
配備制御部211は、登録ユーザが登録したコンテンツを1つ特定する(S3207)。具体的には、配備制御部211は、コンテンツデータ記憶部221に記憶されている付属レコードのうち、当該登録ユーザIDを含む付属レコードに設定されているコンテンツ名を特定する。
配備制御部211は、コンテンツ位置テーブルにおいてコンテンツ名に対応する一又は複数の保持ノードIDのうち、保持ノードIDを1つ特定する(S3209)。例えば、配備制御部211は、接近ログメッセージの送信元であるエッジノード103に近いエッジノード103のIDを選択する。配備制御部211は、配備指示メッセージに、コンテンツ名と特定した保持ノードIDとを含むエントリを追加する(S3211)。
配備制御部211は、S3207において未特定のコンテンツがあるか否かを判定する(S3213)。未特定のコンテンツがあると判定した場合には、S3207に示した処理に戻って上述した処理を繰り返す。
一方、未特定のコンテンツがないと判定した場合には、配備制御部211は、S3205において未特定の登録ユーザIDがあるか否かを判定する(S3215)。未特定の登録ユーザIDがあると判定した場合には、S3205に示した処理に戻って上述した処理を繰り返す。
一方、未特定の登録ユーザIDがないと判定した場合には、端子Dを介して、図33に示したS3301の処理に移る。
図33の説明に移る。配備制御部211は、送信部203を介して配備指示メッセージをエッジノード103へ送信する(S3301)。この例では、接近ログメッセージに含まれるユーザIDが、配備指示メッセージに設定される。
受信部201が、所定時間内に配備指示メッセージの宛先であるエッジノード103から配備完了メッセージを受信したか否かを判定する(S3303)。
所定時間内に配備完了メッセージを受信したと判定した場合には、配備制御部211は、配備完了メッセージに基づいて、コンテンツ位置テーブルにコンテンツ位置レコードを登録する(S3305)。具体的には、配備制御部211は、配備完了メッセージに含まれるコンテンツ名が設定されているコンテンツ位置レコードがある場合には、そのレコードに配備完了メッセージに含まれる被配備ノードIDを新たな保持ノードIDのフィールドに設定する。また、配備制御部211は、配備完了メッセージに含まれるコンテンツ名が設定されているコンテンツ位置レコードがない場合には、新たなコンテンツ位置レコードを追加して、配備完了メッセージに含まれるコンテンツ名及び被配備ノードIDを設定する。そして、S3303に示した処理に戻って上述した処理を繰り返す。
一方、所定時間内に配備完了メッセージを受信しなかったと判定した場合には、端子Eを介して、図32に示したS3201の処理に戻る。
次に、コンテンツを提供するエッジノード103における処理について説明する。図34に、受付処理フローを示す。受付処理では、事前要求メッセージを受け付け、当該事前要求メッセージに対する事前応答メッセージを送信する目標時刻を設定する。
第1受信部1001が、他のエッジノード103から事前要求メッセージを受信すると(S3401)、配備エージェント1013は、当日の曜日及び現在時刻が該当する時間帯を特定する(S3403)。
配備エージェント1013は、アクセスパターンテーブルに含まれるパターンレコードのうち、事前要求メッセージに設定されているユーザID、特定した今日の曜日、今の時間帯及び事前要求メッセージに設定されている受取ノードIDの組み合わせに該当するパターンレコードを特定する。尚、事前要求メッセージに設定されている受取ノードIDは、パターンレコードにおける接続ノードIDに相当する。そして、配備エージェント1013は、特定したパターンレコードに設定されているアクセス要求までの時間を特定する(S3405)。
配備エージェント1013は、現在時刻に、特定したアクセス要求までの時間を加えて目標時刻を求める(S3407)。そして、S3401に示した処理に戻って上述した処理を繰り返す。
次に、エッジノード103における配信処理(A)について説明する。配信処理(A)処理では、目標時刻に従って事前応答メッセージを送信する。つまり、コンテンツの配信を行う。図35に、配信処理(A)フローを示す。配備エージェント1013は、未処理の事前要求メッセージに対する目標時刻のうち、最も早い目標時刻を特定する(S3501)。配備エージェント1013は、当該目標時刻に対応する事前要求メッセージに含まれるコンテンツ名を特定する(S3503)。未処理の事前要求メッセージが無ければ、S3501において待機する。
配備エージェント1013は、特定したコンテンツ名によって特定されるコンテンツ本体をコンテンツ記憶部1021から取得する(S3505)。配備エージェント1013は、第1送信部1003を介して事前応答メッセージを要求元のエッジノード103へ送信する(S3507)。この例では、配備エージェント1013は、事前要求メッセージに含まれるユーザID、提供ノードID及び受取ノードIDを事前応答メッセージに含める。また、配備エージェント1013は、S3505で取得したコンテンツ本体を事前応答メッセージに含める。
配備エージェント1013は、本エッジノード103における伝送が滞っているか否かを判定する(S3509)。伝送が滞っていないと判定した場合には、S3501に示した処理に戻って上述した処理を繰り返す。
一方、伝送が滞っていると判定した場合には、配備エージェント1013は、所定時間だけ待機して(S3511)、再度S3509における判定を行う。
次に、第4フェーズについて説明する。図36に、第4フェーズの概要を示す。第4フェーズでは、コンテンツ本体がダウンロードされる。この例で、ユーザ端末105aが、コンテンツに対するアクセス要求をエッジノード103cへ送る。エッジノード103cが、要求されたコンテンツ本体をキャッシュしている場合には、キャッシュしているコンテンツ本体をユーザ端末105aに送る。
そのとき、ユーザ端末105aによるアクセス要求に応じたことをアクセスログメッセージによってデータセンタ101に知らせる。データセンタ101は、アクセスログによってユーザのアクセスパターンを把握する。
図37に、アクセス要求の構成例を示す。アクセス要求は、コンテンツ名及びユーザIDを含んでいる。コンテンツ名は、アクセスするコンテンツを識別する。ユーザIDは、アクセス要求を送信するユーザ端末105を使用するユーザを識別する。
図38に、アクセスログメッセージの構成例を示す。アクセスログメッセージは、アクセス日時、ユーザID、接続ノードID、ログ種別及びコンテンツ名を含んでいる。アクセス日時は、コンテンツへのアクセスが行われた日付及び時刻である。ユーザIDは、コンテンツへのアクセス要求を送信したユーザ端末105を使用するユーザを識別する。接続ノードIDは、アクセス要求を行う際にユーザ端末105と接続していたエッジノード103のIDである。ログ種別には、「アクセス要求」が設定されている。「アクセス要求」は、当該ログがアクセスログであることを示している。コンテンツ名は、アクセスされたコンテンツを表す。
図39は、エッジノード103cにおいて、要求されたコンテンツをキャッシュしていない場合のデータフローを示している。この場合に、エッジノード103cは、コンテンツ要求メッセージをデータセンタ101に送り、データセンタ101からコンテンツがダウンロードされるようにする。この例では、コンテンツ本体がエッジノード103cを経由してユーザ端末105aに送られる。
図40に、コンテンツ要求メッセージの構成例を示す。コンテンツ要求メッセージは、コンテンツ名及びユーザIDを含んでいる。コンテンツ名は、要求されるコンテンツを識別する。ユーザIDは、コンテンツへのアクセス要求を送信したユーザ端末105を使用するユーザを識別する。
続いて、第4フェーズにおける処理について説明する。まず、エッジノード103における第1ダウンロード処理について説明する。第1ダウンロード処理では、ユーザ端末105からアクセス要求に応じてコンテンツ本体をダウンロードする。図41に、第1ダウンロード処理フローを示す。第2受信部1005が、ユーザ端末105からアクセス要求を受信すると(S4101)、エッジサービス部1009は、アクセス要求に含まれるコンテンツ名によって特定されるコンテンツ本体がコンテンツ記憶部1021に記憶されているか否かを判定する(S4103)。
コンテンツ本体がコンテンツ記憶部1021に記憶されていると判定した場合には、エッジサービス部1009は、アクセスログテーブルにアクセスログレコードを登録する(S4105)。この例では、当日の曜日及び現在時刻が、アクセスログレコードのアクセス日時に設定される。アクセス要求に含まれるユーザIDが、アクセスログレコードに設定される。本エッジノード103のIDが、アクセスログレコードの接続ノードIDとして設定される。
エッジサービス部1009は、第1送信部1003を介してアクセスログメッセージをデータセンタ101へ送信する(S4107)。アクセスログメッセージは、アクセスログレコードと同様に生成される。また、エッジサービス部1009は、第2送信部1007を介して、コンテンツ記憶部1021に記憶されているコンテンツ本体をユーザ端末105へ送信する(S4109)。そして、S4101に示した処理に戻って上述した処理を繰り返す。
一方、S4103において、コンテンツ本体がコンテンツ記憶部1021に記憶されていないと判定した場合には、エッジサービス部1009は、第1送信部1003を介してコンテンツ要求メッセージをデータセンタ101へ送信する(S4111)。この例では、コンテンツ要求メッセージには、アクセス要求に含まれるコンテンツ名及びユーザIDが設定される。
第1受信部1001が、データセンタ101からコンテンツ本体を受信すると(S4113)、エッジサービス部1009は、第2送信部1007を介してコンテンツ本体をユーザ端末105へ送信する(S4115)。このとき、コンテンツ本体をキャッシュするようにしてもよい。そして、S4101に示した処理に戻って上述した処理を繰り返す。
次に、データセンタ101における第2ダウンロード処理について説明する。第2ダウンロード処理では、コンテンツ要求メッセージに応じてコンテンツ本体を返信する。図42に、第2ダウンロード処理フローを示す。受信部201が、エッジノード103からコンテンツ要求メッセージを受信すると(S4201)、センタサービス部205は、アクセスログテーブルにアクセスログレコードを登録する(S4203)。この例では、当日の曜日及び現在時刻が、アクセスログレコードのアクセス日時に設定される。コンテンツ要求メッセージに含まれるユーザIDが、アクセスログレコードに設定される。コンテンツ要求メッセージの送信元であるエッジノード103のIDが、アクセスログレコードの接続ノードIDとして設定される。
センタサービス部205は、コンテンツ要求メッセージに含まれるコンテンツ名によって特定されるコンテンツ本体をコンテンツデータ記憶部221から取得する(S4205)。センタサービス部205は、取得したコンテンツ本体を、送信部203を介してエッジノード103へ送信する(S4207)。そして、S4201に示した処理に戻って上述した処理を繰り返す。
次に、データセンタ101における第2登録処理について説明する。図43に、第2登録処理フローを示す。受信部201が、エッジノード103からアクセスログメッセージを受信すると(S4301)、センタサービス部205は、アクセスログメッセージに基づいて、アクセスログテーブルにアクセスログレコードを登録する(S4303)。そして、S4301に示した処理に戻る。
最後に、第5フェーズについて説明する。第5フェーズでは、定期的に関連データを更新する。
データセンタ101における第2周期処理について説明する。図44A及び図44Bに、第2周期処理フローを示す。生成部213は、所定の周期に従ってタイミングを待つ(S4401)。
タイミングに至ると、生成部213は、アクセスログテーブルに含まれるアクセスログレコードを1つ特定する(S4403)。生成部213は、アクセスログレコードに含まれるユーザIDを、取得ユーザIDとして特定する(S4405)。
生成部213は、アクセスログレコードに含まれるコンテンツ名を特定する(S4407)。更に、生成部213は、コンテンツデータ記憶部221に記憶されている付属レコードにおいてコンテンツ名に対応付けられている登録ユーザIDを特定する(S4409)。
生成部213は、S4409において特定した登録ユーザIDとS4405において特定した取得ユーザIDとの組み合わせに基づいて、集計テーブルにおけるカウンタを更新する。具体的には、生成部213は、当該組み合わせに対するカウンタに1を加える(S4411)。
図45に、集計テーブルの例を示す。図示するように、集計テーブルは、登録ユーザIDと取得ユーザIDとの組み合わせ毎のカウンタを有している。
図44Aの説明に戻る。生成部213は、S4403において未特定のアクセスログレコードがあるか否かを判定する(S4413)。未特定のアクセスログレコードがあると判定した場合には、S4403に示した処理に戻って上述した処理を繰り返す。
一方、未特定のアクセスログレコードがないと判定した場合には、端子Fを介して図44Bに示したS4415の処理に移る。生成部213は、集計対象となっている登録ユーザIDを1つ特定する(S4415)。生成部213は、当該登録ユーザIDに対応するカウンタのうち、基準以上の値を示すカウンタに対応する取得ユーザIDを特定する(S4417)。但し、生成部213は、最大値を示すカウンタに対応する取得ユーザIDを特定するようにしてもよい。
生成部213は、S4415において特定した登録ユーザIDと、S4417において特定した取得ユーザIDとを含む関連レコードを関連データに登録する(S4419)。
生成部213は、S4415において未特定の登録ユーザIDがあるか否かを判定する(S4421)。未特定の登録ユーザIDがあると判定した場合には、S4415に示した処理に戻って上述した処理を繰り返す。
一方、未特定の登録ユーザIDがないと判定した場合には、端子Gを介して図44AのS4401に示した処理に戻って上述した処理を繰り返す。
本実施の形態によれば、エッジノード103におけるコンテンツ配信の効率を高めることに役立つ。例えば、コンテンツを事前配信する順番を決定しやすくなる。
また、同じ時間帯において複数のユーザが関る可能性があるコンテンツの事前配信に関して効率化を図ることに役立つ。
また、エッジノード103において、事前に配備するコンテンツを決めやすくなる。
尚、時間帯については、曜日を限定しなくてもよい。つまり曜日と時間帯との組み合わせを、各曜日において共通の時間帯に置き換えて処理するようにしてもよい。
[実施の形態2]
本実施の形態では、事前応答メッセージにパターンレコードを含める例について説明する。
本実施の形態では、図25に示した第3フェーズにおける一部のメッセージの構成が異なる。以下、それらの構成について説明する。
図46に、実施の形態2に係る配備指示メッセージの構成例を示す。実施の形態2に係る配備指示メッセージは、コンテンツ名と保持ノードIDとの組に対応付けて、登録ユーザID及び取得ユーザIDを含んでいる。つまり、コンテンツ名、保持ノードID、登録ユーザID及び取得ユーザIDがエントリに相当する。尚、取得ユーザIDは、一つ又は複数である。
登録ユーザIDは、配備対象であるコンテンツの登録ユーザを識別する。取得ユーザIDは、当該登録ユーザに関連する取得ユーザを識別する。つまり、取得ユーザIDは、配備されるコンテンツをダウンロードしようとする可能性があるユーザを特定する。
図47に、実施の形態2に係る事前要求メッセージの構成例を示す。実施の形態2に係る事前要求メッセージは、一つ又は複数の取得ユーザIDを含んでいる。事前要求メッセージに含まれる取得ユーザIDは、配備指示メッセージにおいて当該コンテンツ名に対応付けられている取得ユーザIDと一致する。
図48に、実施の形態2に係る事前応答メッセージの構成例を示す。実施の形態2に係る事前応答メッセージは、事前要求メッセージに含まれる取得ユーザIDに対応するパターンレコードを含んでいる。1つの取得ユーザIDに対して複数のパターンレコードが対応する場合もある。パターンレコードは、図6に示したアクセスパターンテーブルにおけるパターンレコードと同様の構成である
続いて、処理について説明する。本実施の形態では、エッジノード103において第1配備処理(A)に代えて第1配備処理(B)を実行する。図49に、第1配備処理(B)フローを示す。
S4901及びS4903に示した処理は、図31に示した第1配備処理(A)におけるS3101及びS3103に示した処理と同様である。
S4905においてデータセンタ101から受信する配備指示メッセージの内容が、図46に示したように第1配備処理(A)の場合と異なる。
S4907に示した処理は、図31に示した第1配備処理(A)におけるS3107に示した処理と同様である。
S4909において保持ノードID宛に送信される事前要求メッセージの内容が、図47に示したように第1配備処理(A)の場合と異なる。この例では、S4907において特定したエントリに設定されている取得ユーザIDが、事前要求メッセージに設定される。
S4911において保持ノードから受信する事前応答メッセージの内容が、図48に示したように第1配備処理(A)の場合と異なる。
S4913に示した処理は、図31に示した第1配備処理(A)におけるS3113に示した処理と同様である。
配備エージェント1013は、事前応答メッセージに含まれる各パターンレコードをアクセスパターンテーブルに登録する(S4915)。
S4917及びS4919に示した処理は、図31に示した第1配備処理(A)におけるS3115及びS3117に示した処理と同様である。
また、本実施の形態では、エッジノード103において第2配備処理(A)に代えて第2配備処理(B)を実行する。第2配備処理(B)では、図46に示した配備指示メッセージを生成する。図50に、第2配備処理(B)フローを示す。
S5001乃至S5009に示した処理は、図32に示した第2配備処理(A)におけるS3201乃至S3209に示した処理と同様である。
配備制御部211は、関連データにおいて、当該登録ユーザIDに対応付けられている取得ユーザIDを特定する(S5011)。
配備制御部211は、配備指示メッセージに、コンテンツ名、保持ノードID、登録ユーザID及びS5011において特定した取得ユーザIDを含むエントリを追加する(S5013)。
S5015及びS5017に示した処理は、図32に示した第2配備処理(A)におけるS3213及びS3215に示した処理と同様である。更に、第2配備処理(A)の場合と同様に、図33に示した処理を実行する。
また、本実施の形態では、エッジノード103において配信処理(A)に代えて配信処理(B)を実行する。配信処理(B)では、図48に示した事前応答メッセージを生成する。図51に、配信処理(B)フローを示す。
S5101乃至S5105に示した処理は、図35に示した配信処理(A)におけるS3501乃至S3505に示した処理と同様である。
配備エージェント1013は、当該目標時刻に対応する事前要求メッセージに含まれる取得ユーザIDを含むパターンレコードを特定する(S5107)。
S5109において第1送信部1003を介して要求元のエッジノード103へ送信する事前応答メッセージには、S5107において特定したパターンレコードが設定される。
S5111及びS5113に示した処理は、図35に示した配信処理(A)におけるS3509及びS3511に示した処理と同様である。
本実施の形態によれば、コンテンツが配信されたエッジノード103において、当該コンテンツを転送する効率を高めることに役立つ。例えば、他のエッジノード103から当該コンテンツの事前配信を要求された場合に、当該他のエッジノード103に接近するユーザに応じて、適切な転送タイミングを決定しやすくなる。
尚、上述したデータセンタ101は、コンテンツ共有システムに含まれるセンタサーバ装置の例である。上述したエッジノード103は、コンテンツ共有システムに含まれるエッジサーバ装置の例である。
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上述の機能ブロック構成はプログラムモジュール構成に一致しない場合もある。
また、上で説明した各記憶領域の構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ、処理の順番を入れ替えることや複数の処理を並列に実行させるようにしても良い。
なお、上で述べたデータセンタ101及びエッジノード103は、コンピュータ装置であって、図52に示すように、メモリ2501とCPU(Central Processing Unit)2503とハードディスク・ドライブ(HDD:Hard Disk Drive)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
以上述べた本発明の実施の形態をまとめると、以下のようになる。
本実施の形態に係るパターン送信方法は、(A)第1ユーザの端末からコンテンツアクセスの要求を受信した第1エッジサーバから、当該要求のログを受信し、(B)上記ログに基づいて、第1ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、(C)第1ユーザと関連付けられている第2ユーザの端末と接続した実績がある第2エッジサーバへ、上記パターンを送信する処理を含む。
このようにすれば、エッジサーバにおけるコンテンツ配信の効率を高めることに役立つ。例えば、コンテンツを事前配信する順番を決定しやすくなる。
更に、第1ユーザから上記要求を受信した時間帯において第2ユーザの端末と接続した実績がある第2エッジサーバを特定するようにしてもよい。
このようにすれば、同じ時間帯において複数のユーザが関る可能性があるコンテンツの事前配信に関して効率化を図ることに役立つ。
更に、いずれかのエッジサーバから、当該エッジサーバに第1ユーザの上記端末が接近したことを示す通知を受信した場合に、当該エッジサーバへ第2ユーザによって登録されたコンテンツを配備する指示を送信するようにしてもよい。
このようにすれば、エッジサーバにおいて、事前に配備するコンテンツを決めやすくなる。
本実施の形態に係るパターン送信方法は、(A)コンテンツ共有システムに含まれるエッジサーバから、コンテンツ配信の要求を受信し、(B)上記要求において指定されたユーザについて、当該ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、(C)配信するコンテンツと共に、上記パターンを上記エッジサーバへ送信する処理を含む。
このようにすれば、コンテンツが配信されたエッジサーバにおいて、当該コンテンツを転送する効率を高めることに役立つ。例えば、他のエッジサーバから当該コンテンツの事前配信を要求された場合に、当該他のエッジサーバに接近するユーザに応じて、適切な転送タイミングを決定しやすくなる。
なお、上記方法による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納されるようにしてもよい。尚、中間的な処理結果は、一般的にメインメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
第1ユーザの端末からコンテンツアクセスの要求を受信した第1エッジサーバから、当該要求のログを受信し、
前記ログに基づいて、前記第1ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、
前記第1ユーザと関連付けられている第2ユーザの端末と接続した実績がある第2エッジサーバへ、前記パターンを送信する
処理をコンピュータに実行させるプログラム。
(付記2)
更に、
前記第1ユーザから前記要求を受信した時間帯において前記第2ユーザの前記端末と接続した実績がある前記第2エッジサーバを特定する
処理をコンピュータに実行させる付記1記載のプログラム。
(付記3)
更に、
いずれかのエッジサーバから、当該エッジサーバに前記第1ユーザの前記端末が接近したことを示す通知を受信した場合に、当該エッジサーバへ前記第2ユーザによって登録されたコンテンツを配備する指示を送信する
処理をコンピュータに実行させる付記1又は2記載のプログラム。
(付記4)
コンテンツ共有システムに含まれるエッジサーバから、コンテンツ配信の要求を受信し、
前記要求において指定されたユーザについて、当該ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、
配信するコンテンツと共に、前記パターンを前記エッジサーバへ送信する
処理をコンピュータに実行させるプログラム。
(付記5)
第1ユーザの端末からコンテンツアクセスの要求を受信した第1エッジサーバから、当該要求のログを受信し、
前記ログに基づいて、前記第1ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、
前記第1ユーザと関連付けられている第2ユーザの端末と接続した実績がある第2エッジサーバへ、前記パターンを送信する
処理を含み、コンピュータにより実行されるパターン送信方法。
(付記6)
第1ユーザの端末からコンテンツアクセスの要求を受信した場合に、当該要求のログを送信する送信部
を有する第1エッジサーバと、
前記第1エッジサーバから、当該要求のログを受信する受信部と、
前記ログに基づいて、前記第1ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定する特定部と、
前記第1ユーザと関連付けられている第2ユーザの端末と接続した実績がある第2エッジサーバへ、前記パターンを送信する送信部と
を有する上位サーバと、
上記パターンを受信する受信部と、
上記パターンに基づくタイミングに従って、コンテンツを配信する配信部と
を有する前記第2エッジサーバと
を含む共有コンテンツ制御システム。
(付記7)
コンテンツ共有システムに含まれるエッジサーバから、コンテンツ配信の要求を受信し、
前記要求において指定されたユーザについて、当該ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、
配信するコンテンツと共に、前記パターンを前記エッジサーバへ送信する
処理を含み、コンピュータにより実行されるパターン送信方法。
(付記8)
コンテンツ共有システムに含まれるエッジサーバから、コンテンツ配信の要求を受信する受信部と、
前記要求において指定されたユーザについて、当該ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定する特定部と、
配信するコンテンツと共に、前記パターンを前記エッジサーバへ送信する送信部と
を有する情報処理装置。
101 データセンタ 103 エッジノード
105 ユーザ端末 201 受信部
203 送信部 205 センタサービス部
207 特定部 209 配布部
211 配備制御部 213 生成部
221 コンテンツデータ記憶部 223 コンテンツ位置記憶部
225 アクセスログ記憶部 227 アクセスパターン記憶部
229 接近ログ記憶部 231 ユーザ位置記憶部
233 関連データ記憶部 1001 第1受信部
1003 第1送信部 1005 第2受信部
1007 第2送信部 1009 エッジサービス部
1011 登録部 1013 配備エージェント
1021 コンテンツ記憶部 1023 アクセスパターン記憶部
1025 アクセスログ記憶部

Claims (8)

  1. 第1ユーザの端末からコンテンツアクセスの要求を受信した第1エッジサーバから、当該要求のログを受信し、
    前記ログに基づいて、前記第1ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、
    前記第1ユーザと関連付けられている第2ユーザの端末と接続した実績がある第2エッジサーバへ、前記パターンを送信する
    処理をコンピュータに実行させるプログラム。
  2. 更に、
    前記第1ユーザから前記要求を受信した時間帯において前記第2ユーザの前記端末と接続した実績がある前記第2エッジサーバを特定する
    処理をコンピュータに実行させる請求項1記載のプログラム。
  3. 更に、
    いずれかのエッジサーバから、当該エッジサーバに前記第1ユーザの前記端末が接近したことを示す通知を受信した場合に、当該エッジサーバへ前記第2ユーザによって登録されたコンテンツを配備する指示を送信する
    処理をコンピュータに実行させる請求項1又は2記載のプログラム。
  4. コンテンツ共有システムに含まれるエッジサーバから、コンテンツ配信の要求を受信し、
    前記要求において指定されたユーザについて、当該ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、
    配信するコンテンツと共に、前記パターンを前記エッジサーバへ送信する
    処理をコンピュータに実行させるプログラム。
  5. 第1ユーザの端末からコンテンツアクセスの要求を受信した第1エッジサーバから、当該要求のログを受信し、
    前記ログに基づいて、前記第1ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、
    前記第1ユーザと関連付けられている第2ユーザの端末と接続した実績がある第2エッジサーバへ、前記パターンを送信する
    処理を含み、コンピュータにより実行されるパターン送信方法。
  6. 第1ユーザの端末からコンテンツアクセスの要求を受信した場合に、当該要求のログを送信する送信部
    を有する第1エッジサーバと、
    前記第1エッジサーバから、当該要求のログを受信する受信部と、
    前記ログに基づいて、前記第1ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定する特定部と、
    前記第1ユーザと関連付けられている第2ユーザの端末と接続した実績がある第2エッジサーバへ、前記パターンを送信する送信部と
    を有する上位サーバと、
    上記パターンを受信する受信部と、
    上記パターンに基づくタイミングに従って、コンテンツを配信する配信部と
    を有する前記第2エッジサーバと
    を含む共有コンテンツ制御システム。
  7. コンテンツ共有システムに含まれるエッジサーバから、コンテンツ配信の要求を受信し、
    前記要求において指定されたユーザについて、当該ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定し、
    配信するコンテンツと共に、前記パターンを前記エッジサーバへ送信する
    処理を含み、コンピュータにより実行されるパターン送信方法。
  8. コンテンツ共有システムに含まれるエッジサーバから、コンテンツ配信の要求を受信する受信部と、
    前記要求において指定されたユーザについて、当該ユーザによってコンテンツへのアクセスが要求されるタイミングに関するパターンを特定する特定部と、
    配信するコンテンツと共に、前記パターンを前記エッジサーバへ送信する送信部と
    を有する情報処理装置。
JP2015191618A 2015-09-29 2015-09-29 プログラム、パターン送信方法、共有コンテンツ制御システム及び情報処理装置 Pending JP2017068451A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015191618A JP2017068451A (ja) 2015-09-29 2015-09-29 プログラム、パターン送信方法、共有コンテンツ制御システム及び情報処理装置
US15/209,169 US20170093977A1 (en) 2015-09-29 2016-07-13 Pattern tranmission method, control method, and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015191618A JP2017068451A (ja) 2015-09-29 2015-09-29 プログラム、パターン送信方法、共有コンテンツ制御システム及び情報処理装置

Publications (1)

Publication Number Publication Date
JP2017068451A true JP2017068451A (ja) 2017-04-06

Family

ID=58407481

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015191618A Pending JP2017068451A (ja) 2015-09-29 2015-09-29 プログラム、パターン送信方法、共有コンテンツ制御システム及び情報処理装置

Country Status (2)

Country Link
US (1) US20170093977A1 (ja)
JP (1) JP2017068451A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021252872A1 (en) * 2020-06-11 2021-12-16 OmniMesh Technologies, Inc. Digital service management in edge computing elements of content delivery networks

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107730077A (zh) * 2017-09-13 2018-02-23 平安科技(深圳)有限公司 节点任务数据显示方法、装置、存储介质和计算机设备
CN110650166B (zh) * 2018-06-27 2022-06-28 中国电信股份有限公司 内容分发方法和系统
US20200142735A1 (en) * 2019-09-28 2020-05-07 Intel Corporation Methods and apparatus to offload and onload workloads in an edge environment
JP2022050219A (ja) * 2020-09-17 2022-03-30 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610381B2 (en) * 2003-09-12 2009-10-27 Hewlett-Packard Development Company, L.P. System and method for evaluating a capacity of a streaming media server for supporting a workload
US8145731B2 (en) * 2003-12-17 2012-03-27 Hewlett-Packard Development Company, L.P. System and method for determining how many servers of at least one server configuration to be included at a service provider's site for supporting an expected workload
US8566555B2 (en) * 2009-03-30 2013-10-22 Nec Corporation Data insertion system, data control device, storage device, data insertion method, data control method, data storing method
JP5250482B2 (ja) * 2009-05-21 2013-07-31 株式会社日立製作所 省電力制御装置及び方法
US9189308B2 (en) * 2010-12-27 2015-11-17 Microsoft Technology Licensing, Llc Predicting, diagnosing, and recovering from application failures based on resource access patterns
US9132350B2 (en) * 2012-02-14 2015-09-15 Empire Technology Development Llc Player matching in a game system
US9203847B2 (en) * 2012-06-26 2015-12-01 At&T Intellectual Property I, L.P. Detection and management of unauthorized use of cloud computing services
WO2015134665A1 (en) * 2014-03-04 2015-09-11 SignalSense, Inc. Classifying data with deep learning neural records incrementally refined through expert input

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021252872A1 (en) * 2020-06-11 2021-12-16 OmniMesh Technologies, Inc. Digital service management in edge computing elements of content delivery networks

Also Published As

Publication number Publication date
US20170093977A1 (en) 2017-03-30

Similar Documents

Publication Publication Date Title
JP2017068451A (ja) プログラム、パターン送信方法、共有コンテンツ制御システム及び情報処理装置
JP7037511B2 (ja) 基地局、アクセス要求の応答方法、装置及びシステム
US9749804B2 (en) Data services using location patterns and intelligent caching
US10827554B2 (en) Combined RRC inactive resume, RRC RNA and NAS registration procedure
TWI467968B (zh) Http最佳化、多歸屬、行動性和優先順序
US8539079B2 (en) Edge-based resource spin-up for cloud computing
US11463554B2 (en) Systems and methods for dynamic multi-access edge allocation using artificial intelligence
US10070348B2 (en) Hypertext transfer protocol support over hybrid access
CN103430169A (zh) 资产到用户设备的预取
WO2012077303A1 (ja) 通信サービス提供システム、通信サービス提供方法およびデータセンタ管理システム
US20220264675A1 (en) System and method for processing data
US11388630B2 (en) Information processing method and device in baseband processing split architecture, and storage medium
KR20180088880A (ko) 네트워크 이용을 개선하기 위한 네트워크 지원 프로토콜 사용
US11128733B2 (en) Server-side resource prioritization
CN111406437B (zh) 多路径数据通信
US9185514B1 (en) Orchestration of application updates over a wireless communication network
CN103582082A (zh) 选网方法及选网装置
WO2021073000A1 (zh) 一种数据调度方法、插件及装置和调度服务器
EP2997489B1 (en) Method and device for efficient mobile data transmission
KR101402923B1 (ko) 캐시 장치에 사전 배포하는 콘텐츠를 관리하는 서버 및 방법, 그리고 캐시 장치
KR20130078220A (ko) 사용자 단말기 및 그의 애플리케이션 간 데이터 공유 방법
CN114363173B (zh) 通信方法、装置及可读存储介质
KR20180110565A (ko) 컨텐츠 전송 제어 방법, 이를 위한 장치, 이를 기록한 컴퓨터 판독 가능한 기록 매체 및 프로그램
CN112512118B (zh) 一种通信方法和设备
US11750891B1 (en) Machine learning based selective pre-caching of content fragments on wireless communication devices