JP2006178609A - ピュアー型p2p通信におけるレプリカ管理方法およびそれを具備した装置、ならびにそのプログラム - Google Patents
ピュアー型p2p通信におけるレプリカ管理方法およびそれを具備した装置、ならびにそのプログラム Download PDFInfo
- Publication number
- JP2006178609A JP2006178609A JP2004369290A JP2004369290A JP2006178609A JP 2006178609 A JP2006178609 A JP 2006178609A JP 2004369290 A JP2004369290 A JP 2004369290A JP 2004369290 A JP2004369290 A JP 2004369290A JP 2006178609 A JP2006178609 A JP 2006178609A
- Authority
- JP
- Japan
- Prior art keywords
- replica
- file
- time
- replication
- communication
- 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
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】古くなって他のサーバントから参照/検索されなくなったファイルを削除してメモリを確保し、直近で必要性の高いレプリカファイル用にメモリ空間を効率よく確保する。
【解決手段】有限のメモリ内における各レプリカファイルの任意時点での優先順位を決定するため、レプリケーションが実施された時刻t1、時刻t1から現在Tまでに検索されてヒットした数、および各ヒットに対してその時刻から現在まで経過した時間により重みを減衰させる関数F(t)を組み合わせて、各ファイルの持ち点であるレーティングR1(T)を決定し、このレーティングを用いて、新たなレプリカ生成時にレーティング最小のものをプッシュアウト(消去)する。
【選択図】図1
【解決手段】有限のメモリ内における各レプリカファイルの任意時点での優先順位を決定するため、レプリケーションが実施された時刻t1、時刻t1から現在Tまでに検索されてヒットした数、および各ヒットに対してその時刻から現在まで経過した時間により重みを減衰させる関数F(t)を組み合わせて、各ファイルの持ち点であるレーティングR1(T)を決定し、このレーティングを用いて、新たなレプリカ生成時にレーティング最小のものをプッシュアウト(消去)する。
【選択図】図1
Description
本発明は、IP(Internet Protocol)ネットワーク上でP2P(Peer−to−Peer)型通信を行う場合、各サーバント内に多くの種類のレプリカ(複製)が存在するときに、他のサーバントからの問い合わせやダウンロード要求の多いレプリカをメモリ内に残し、少ないものを消滅させて、使用効率を向上させるようなレプリカ管理方法およびその方法を備えた装置、ならびにそのプログラムに関する。
インターネットにおける新たなネットワークモデルとして、P2Pサービスが注目されている(P2P型通信については、非特許文献1を参照)。P2Pサービスでは、サービスに参加する端末(ノード)はピア(peer)と呼ばれ、ピアが1つないし複数の別のピアに接続することで、ピア同士で接続された論理ネットワークが構成される。ピアは論理ネットワーク内で要求されたサービスを提供できるピアを検索し、検索にヒットしたピアからサービスの提供を受ける。しかし、ピアの頻繁な参加離脱により、論理ネットワークの安定性は低下し、提供されるサービス品質に大きな影響を与える。
ネットワーク上でP2P型通信を行う場合、ファイルのレプリケーションが頻繁に実行され、各サーバント内に多くの種類のレプリカが存在するときには、なるべく他のサーバントからの問い合わせやダウンロード要求の多いレプリカをメモリ内に残し、少ないものについては消滅させることにより、メモリ内の使用効率を上げたいと考えるのが一般的である。
このような場合の対処方法としては、次の2種類の方法が考えられる。
1)各サーバント内のレプリカ数が増加してメモリ容量が不足する場合に、優先度を定め、優先度の低いものを削除する方法。
2)レプリカ毎にメモリ内に存続させる時間(ファイルTTL)を何等かの方法(いくつかの方法が考えられる)で定めておき、時間がきたならば、そのレプリカファイルを消去する方法。
である。これらのいずれも、効率よく各サーバント内のレプリカを保存することを目的とした技術である(非特許文献2〜4参照)。
1)各サーバント内のレプリカ数が増加してメモリ容量が不足する場合に、優先度を定め、優先度の低いものを削除する方法。
2)レプリカ毎にメモリ内に存続させる時間(ファイルTTL)を何等かの方法(いくつかの方法が考えられる)で定めておき、時間がきたならば、そのレプリカファイルを消去する方法。
である。これらのいずれも、効率よく各サーバント内のレプリカを保存することを目的とした技術である(非特許文献2〜4参照)。
従来、P2P型通信には、大別して次の2種類の型がある。
〔Napster型〕:目的情報の所在を一括管理する専用サーバが存在するタイプ、
〔Gnutella型〕:目的情報の所在を伝言ゲーム方式で次々に問い合わせていくタイプ、
前者は、各サーバントからの検索要求パケットが、専用サーバに集中するため、サーバボトルネックとなり易い。また、後者は、TTLに設定された値のホップ数の範囲まで次々に目的の情報の有無を隣接サーバントに対して問い合わせていき、各サーバントでは、隣接サーバントへ延ばしている「腕」の分だけ分岐されてパケットが送出されることになる。このような情報検索パケットが多数のサーバントから並列に発信される場合には、網内のパケット数が爆発的に増加し、網内の広域に渡って混雑が予想される。
〔Napster型〕:目的情報の所在を一括管理する専用サーバが存在するタイプ、
〔Gnutella型〕:目的情報の所在を伝言ゲーム方式で次々に問い合わせていくタイプ、
前者は、各サーバントからの検索要求パケットが、専用サーバに集中するため、サーバボトルネックとなり易い。また、後者は、TTLに設定された値のホップ数の範囲まで次々に目的の情報の有無を隣接サーバントに対して問い合わせていき、各サーバントでは、隣接サーバントへ延ばしている「腕」の分だけ分岐されてパケットが送出されることになる。このような情報検索パケットが多数のサーバントから並列に発信される場合には、網内のパケット数が爆発的に増加し、網内の広域に渡って混雑が予想される。
伊藤直樹:P2Pコンピューティング(ソフト・リサーチ・センター)
Q.Lv,P.Cao,E.Cohen,K.Li,Li,and S.Shenker,"Search and replication in unstructured peer−peer networks,"proceedings of 16th ACM International Conference on Supercomputing(ICS’02),June 2002.
後藤,阿多,村田:"P2Pネットワークにおけるサービス安定性向上のためのレプリケーション配置手法,"信学技報NS2002−152,Oct.2002.
能上,内田:"Pure型P2Pにおけるファイル検索&レプリケーションについて、"信学総大2004(2004年3月).
IP網においてP2P型通信を行っている場合に、あるファイルへのヒット率を向上させるために、当該コンテンツの複製(レプリカ)を他のサーバントに送っておき、サーバントの負荷や回線の使用率上昇を抑える手法がある(レプリケーション)(非特許文献2〜4参照)。
例えば、非特許文献2には、ピアが提供する情報のレプリカを他のピアにも配置される手法を採用するが、レプリカの効果は配置するピアの物理的位置や接続性に大きく影響を受けることから、効率的なレプリカを配置するために物理ネットワークの特性を考慮することが記載されている。また、非特許文献4には、あるサーバントがある時間後に自らの負荷の上昇や周囲の回線が輻輳すると予測できたならば、前もってそのファイルに関するレプリケーションを実行しておく。レプリケーションにおいてヒット率をあるレベル以上に維持しながら、ある程度空間的に適当な密度で分散させた配置法にするため、a)何をもってレプリケーション実行のトリガとするか、b)どのサーバントへレプリカを配置するか、の問題を考慮しながら、ファイルのレプリケーションを実行することが記載されている。
例えば、非特許文献2には、ピアが提供する情報のレプリカを他のピアにも配置される手法を採用するが、レプリカの効果は配置するピアの物理的位置や接続性に大きく影響を受けることから、効率的なレプリカを配置するために物理ネットワークの特性を考慮することが記載されている。また、非特許文献4には、あるサーバントがある時間後に自らの負荷の上昇や周囲の回線が輻輳すると予測できたならば、前もってそのファイルに関するレプリケーションを実行しておく。レプリケーションにおいてヒット率をあるレベル以上に維持しながら、ある程度空間的に適当な密度で分散させた配置法にするため、a)何をもってレプリケーション実行のトリガとするか、b)どのサーバントへレプリカを配置するか、の問題を考慮しながら、ファイルのレプリケーションを実行することが記載されている。
複数ファイルが対象である場合に、各サーバント内のメモリは有限であるため、多数のレプリカファイルが何度も複製されると、ついにはメモリの空き容量が不足して、新しくレプリカを作成できなくなる。このような場合に、古くなって他のサーバントから参照/検索されなくなったファイルを削除してメモリ空間を確保し、直近で必要性の高いレプリカファイル用にメモリ空間を確保することが考えられる。
(目的)
本発明の目的は、このような従来の問題を解決し、古くなって他のサーバントから参照/検索されなくなったファイルを削除してメモリを確保し、直近で必要性の高いレプリカファイル用にメモリ空間を効率よく確保することができるような具体的な手順を与えるピュアー型P2P通信におけるレプリカ管理方法およびその方法を備えた装置、ならびにそのプログラムを提供することにある。
本発明の目的は、このような従来の問題を解決し、古くなって他のサーバントから参照/検索されなくなったファイルを削除してメモリを確保し、直近で必要性の高いレプリカファイル用にメモリ空間を効率よく確保することができるような具体的な手順を与えるピュアー型P2P通信におけるレプリカ管理方法およびその方法を備えた装置、ならびにそのプログラムを提供することにある。
本発明のピュアー型P2P通信におけるレプリカ管理方法は、P2P型通信における各サーバントでレプリケーションが実施される場合において、有限のメモリ内における各レプリカファイルの任意の時点での優先順位をその時点における持ち点数(ここでは、これを‘レーティング’と呼ぶ)により決定し、それに基づいてメモリが不足する場合に消去(プッシュアウト)させるレプリカの順番を決定する方法、およびその方法に基づいてその一連の処理を実行する手順を提供する(レーティングによるレプリカファイル消去法)。
また、上記の場合におけるレプリカファイルのメモリ内存続時間(ファイルTTL(File Time to Live))(そのレプリカが生成された後にメモリ内に存続する時間)を定義し、その方法に基づいてファイルTTL値が0になったときにメモリ内から該当するレプリカファイルを消去する方法およびその手順を提供する(有限存続のファイルTTLによるレプリカファイル消去法)。
また、本発明のピュアー型P2P通信におけるレプリカ管理装置は、上記の検索方法を実現するために、1)ある時間単位(T)を定義し、この時間ごとに自身の持つレプリカファイル毎のヒット数を記録し、現時点における各レプリカファイルの持つレーティングを計算する機能と、2)ある時刻において、レプリケーションを実行しようとするときに、メモリ容量が足りないことが判明した場合、その時点において最小のレーティングを持つレプリカファイルをメモリ内から消去する機能と、3)レプリカファイル毎にファイルTTLを管理し、ファイルTTLの値が0になったならばその該当するレプリカファイルをメモリから消去する機能と、4)自身が持つレプリカに対して、過去に問い合わせがあった時刻と減衰関数F(t)とからなる情報セットをサーバント毎に格納しておく機能とを具備する。
本発明によれば、P2P型通信を行う際に、各ファイル毎にレプリケーションが多数実施されるが、その際に、各ファイル毎のその時点における「レーティング」に従ってメモリ内のファイルを消去する優先度を定めたり、ファイルのメモリ内での存続時間を定めることにより、効率的に各サーバント内に存在するレプリカの種類や数を制御することができる。
以下、本発明の原理と実施例について、図面により詳細に説明する。
(原理)
図1は、本発明の第1の実施例に係るレーティングによるレプリカファイルプッシュアウト法の原理説明図である。
P2P型通信においては、ある時刻において、ある特定のファイル探索および転送要求が集中しそうなときには、レプリケーションを行って、なるべく「物理的な空間(ネットワーク)上での負荷分散」がなされるようにすると良い。
(原理)
図1は、本発明の第1の実施例に係るレーティングによるレプリカファイルプッシュアウト法の原理説明図である。
P2P型通信においては、ある時刻において、ある特定のファイル探索および転送要求が集中しそうなときには、レプリケーションを行って、なるべく「物理的な空間(ネットワーク)上での負荷分散」がなされるようにすると良い。
しかしながら、ファイルの種類は多数存在し、それぞれのファイルに対してダウンロード要求が増えると、それに伴ってレプリケーションの回数も増加する。このように、各サーバントにおいて、様々な種類のファイルのレプリカが増加してくるが、各レプリカが各サーバント内で存続する時間(ファイルTTL)を特に指定しない場合(請求項1参照)、すなわち、ファイルTTLが無限大の場合には、このサーバント内のレプリカ用のメモリは有限であるため、いつか必ず各メモリの容量が不足する。このような場合には、新しく作成されたレプリカはこれからも参照される頻度は相対的に高く、逆に過去にあまり参照されなかった古いレプリカほど今後の利用価値は低くなっていると考えられる。このような観点で、各レプリカに優先度付けを行い、メモリが足りなくなった場合には、利用価値の小さなレプリカから消去する方法を採用する。
図1には、レーティングによるレプリカファイルのプッシュアウト法の概要が示されている。レプリカファイルの優先順位を決定する場合、各複製ファイルが生成(レプリケーション)された時刻(t1,t2)、その時刻から現在までに検索されてヒットした数、各ヒットに対してその時刻から現在まで経過した時間により重みを減衰させる関数を組み合わせて各ファイルのレーティングを決定し、これを用いて、新たなレプリカ生成時にレーティング最小のものをプッシュアウト(消去)する。
ここでは、レーティングを無限に存続する減衰関数の和により求める(減衰関数は、ヒットする都度、その時点から定義される)。メモリ不足時には、その値が小さいファイルからプッシュアウトする。ここでは、F(t)=exp(T−t)の式が用いられている。
ファイル1の場合、前回のヒット時刻t1とt2から現在値Tにおける減衰値0.45および0.21の和をとり、0.66がファイル1の現在のレーティングとなる。
ファイル1の場合、前回のヒット時刻t1とt2から現在値Tにおける減衰値0.45および0.21の和をとり、0.66がファイル1の現在のレーティングとなる。
図2は、本発明の第1の実施例に係るレプリカファイルのプッシュアウト法の動作フローチャートである。
レプリカファイルのプッシュアウトが開始され、新しくレプリケーションの実行が決定されたならば(ステップ101)、各レプリカのレーティングを比較し、順番に並べる(ステップ104)。i=0に初期化し(ステップ105)、最初のレプリケーションに際してiを+1する(ステップ106)。新しいレプリケーション用にメモリ容量が確保できているか否かを判定し(ステップ107)、確保されていれば、レプリケーションを実行する(ステップ109)。そして、ステップ101に戻る。
レプリカファイルのプッシュアウトが開始され、新しくレプリケーションの実行が決定されたならば(ステップ101)、各レプリカのレーティングを比較し、順番に並べる(ステップ104)。i=0に初期化し(ステップ105)、最初のレプリケーションに際してiを+1する(ステップ106)。新しいレプリケーション用にメモリ容量が確保できているか否かを判定し(ステップ107)、確保されていれば、レプリケーションを実行する(ステップ109)。そして、ステップ101に戻る。
確保できていなければ、i番目に低いレーティングのレプリカを削除する(ステップ108)。次に、iを+1し(ステップ106)、ステップ109までの処理を繰り返す。
一方、レプリケーションの実行が決定されない場合には(ステップ101)、時間Tが経過したか否かを判別し(ステップ102)、Tが経過したならば、時間区間Tにおける各レプリカのヒット数からレーティングをそれぞれ計算する(ステップ103)。そして、ステップ101に戻る。
一方、レプリケーションの実行が決定されない場合には(ステップ101)、時間Tが経過したか否かを判別し(ステップ102)、Tが経過したならば、時間区間Tにおける各レプリカのヒット数からレーティングをそれぞれ計算する(ステップ103)。そして、ステップ101に戻る。
図3は、本発明の第2の実施例に係る有限存続のファイルTTLによるレプリカファイルの消去法の2種類の計算例を示す原理説明図である。
第2の実施例では、レプリカ毎にメモリ内に存続させる時間(ファイルTTL)を2種類の方法で定めておき、時間が来たならばそのレプリカファイルを消去する方法である。
(例1)減衰関数F(t)による場合は、ファイルiについて時間とともに減衰する関数F(t)を定義し、そのファイルが検索されて、ヒットする度ごとに関数F(t)の値に1を加算して、再び減衰を続け、その値が0になったときにファイルが消去される。図では、総存続時間はt4−t1で表わされる。
このように、本実施例では、ファイルTTLを指定し、その値が0になったならば自動的にメモリ内から消去されるようにして、メモリが満杯にならないようにする。
第2の実施例では、レプリカ毎にメモリ内に存続させる時間(ファイルTTL)を2種類の方法で定めておき、時間が来たならばそのレプリカファイルを消去する方法である。
(例1)減衰関数F(t)による場合は、ファイルiについて時間とともに減衰する関数F(t)を定義し、そのファイルが検索されて、ヒットする度ごとに関数F(t)の値に1を加算して、再び減衰を続け、その値が0になったときにファイルが消去される。図では、総存続時間はt4−t1で表わされる。
このように、本実施例では、ファイルTTLを指定し、その値が0になったならば自動的にメモリ内から消去されるようにして、メモリが満杯にならないようにする。
(例2)ヒット数の観測に基づき存続時間τ(k)を与える方法であって、ファイルが生成された時刻から一定時間内に、検索されヒットし、またダウンロードされた数を考慮して、ファイル消去までの時間の長さを決定する。ここでは、k回検索ヒットおよびダウンロードしたので、τ(k)の存続時間後にファイルを消去している。
τ(k)=√(k*t0)、 総存続時間=t3−t1である。
τ(k)=√(k*t0)、 総存続時間=t3−t1である。
図4は、第2の実施例に係るレプリカファイル消去法の動作フローチャートである。
レプリカファイルのプッシュアウトが開始され、新しくレプリケーションの実行が決定されたならば(ステップ201)、新しいレプリカのファイルTTLを計算する(ステップ202)。新しいレプリケーションが実行されても、またされなくても、時間Tが経過したか否かを判別し(ステップ203)、経過しなければステップ201に戻って、同じ動作を繰り返す。Tが経過したならば、全レプリカのファイルTTLを計算する(ステップ204)。
レプリカファイルのプッシュアウトが開始され、新しくレプリケーションの実行が決定されたならば(ステップ201)、新しいレプリカのファイルTTLを計算する(ステップ202)。新しいレプリケーションが実行されても、またされなくても、時間Tが経過したか否かを判別し(ステップ203)、経過しなければステップ201に戻って、同じ動作を繰り返す。Tが経過したならば、全レプリカのファイルTTLを計算する(ステップ204)。
i=0に初期化し(ステップ205)、最初のレプリケーションに際してiを+1する(ステップ206)。レプリカiのファイルTTLは0であるか否かを判別し(ステップ207)、0であればそのレプリカをメモリから削除する(ステップ208)。0になっていないときには、全レプリカのファイルTTL値を調べたか否かを判別し(ステップ209)、未だのときには、ステップ206に戻って同じ動作を繰り返す。また、全レプリカのファイルTTL値を調べたならば、ステップ201に戻る。
(実施例)
(第1の実施例)
図5は、本発明の第1の実施例に係るレーティングによるレプリカファイルのプッシュアウト法の詳細動作説明図である。
レプリカファイルの優先順位を決定する場合において、各複製ファイル生成(レプリケーション)された時刻、その時刻から現在までに検索されてヒットした数、各ヒットに対してその時刻から現在まで経過した時間により、重みを減衰させる関数を組み合わせて各ファイルのレーティングを決定し、これを用いて、新たなレプリカ生成時にレーティング最小のものをプッシュアウト(消去)する。
(第1の実施例)
図5は、本発明の第1の実施例に係るレーティングによるレプリカファイルのプッシュアウト法の詳細動作説明図である。
レプリカファイルの優先順位を決定する場合において、各複製ファイル生成(レプリケーション)された時刻、その時刻から現在までに検索されてヒットした数、各ヒットに対してその時刻から現在まで経過した時間により、重みを減衰させる関数を組み合わせて各ファイルのレーティングを決定し、これを用いて、新たなレプリカ生成時にレーティング最小のものをプッシュアウト(消去)する。
減衰関数F(t)=exp(T−t)を用いた場合のファイル1とファイル2のレーティング計算方法を説明する。
ファイル1の場合、レプリケーションが行われた後、t11で検索されてヒットし、その時点で1の値が与えられ、減衰した後の現在時刻Tでは、0.21の値であり、また、t12で検索されてヒットし、その時点で1の値が与えられ、減衰した後の現在時刻Tでは、0.45の値であった。このときのレーティング値R1は、
R1=ΣF(T−t1i)=F(T−t11)+F(T−t12)=0.21+0.45
=0.66
となる。
ファイル1の場合、レプリケーションが行われた後、t11で検索されてヒットし、その時点で1の値が与えられ、減衰した後の現在時刻Tでは、0.21の値であり、また、t12で検索されてヒットし、その時点で1の値が与えられ、減衰した後の現在時刻Tでは、0.45の値であった。このときのレーティング値R1は、
R1=ΣF(T−t1i)=F(T−t11)+F(T−t12)=0.21+0.45
=0.66
となる。
ファイル2の場合、t21,t22,t23で次々と検索されてヒットし、それらの時刻で1の値が与えられ、減衰した後の現在時刻Tでは、それぞれ0.19,0.20,0.21の値であった。このときのレーティング値R2は、
R2=ΣF(t2i)=0.19+0.20+0.21=0.60
となる。
現時点Tでメモリが足りない場合には、ファイル1とファイル2のレーティング値のR1とR2を比較し、レーティング値の小さいファイル2が消去される。
R2=ΣF(t2i)=0.19+0.20+0.21=0.60
となる。
現時点Tでメモリが足りない場合には、ファイル1とファイル2のレーティング値のR1とR2を比較し、レーティング値の小さいファイル2が消去される。
(第2の実施例)
ここでは、有限のファイルTTLによるレプリカファイルの消去法の例を3種類示す。
(方法1)ヒットする都度、関数Fi(t)をリセットする場合である。
ここで、Fi(t)=1−x*t 0<x<1
ファイルiについて、時間とともに減衰する関数Fi(t)を定義する。そのファイルが検索され、ヒットする度に関数Fi(t)をリセットして1という値を持たせ、その値が0になった時点でそのファイルが消去される。ある期間内にそのファイルiの検索要求およびダウンロードがあれば、ファイルが必ずメモリ内に残るという点で、効果がある。
ここでは、有限のファイルTTLによるレプリカファイルの消去法の例を3種類示す。
(方法1)ヒットする都度、関数Fi(t)をリセットする場合である。
ここで、Fi(t)=1−x*t 0<x<1
ファイルiについて、時間とともに減衰する関数Fi(t)を定義する。そのファイルが検索され、ヒットする度に関数Fi(t)をリセットして1という値を持たせ、その値が0になった時点でそのファイルが消去される。ある期間内にそのファイルiの検索要求およびダウンロードがあれば、ファイルが必ずメモリ内に残るという点で、効果がある。
図6(1)は、本発明の第2の実施例のうちの(方法1)の説明図である。
t1はレプリカが作成された時点、t2,t3はレプリカが参照およびダウンロードされた時点である。ファイルiが参照され、ヒットした時点で関数Fi(t)は1にセットされる。Fi(t)その時点から時間とともに傾き−x(0<x<1)で減少する。
Fi(t)が0になった時点で、そのファイルは消去される。
図6(1)の場合には、時点t4でこのファイルは消去され、この場合の総存続時間FTTLは、
FTTL=t4−t1
となる。
t1はレプリカが作成された時点、t2,t3はレプリカが参照およびダウンロードされた時点である。ファイルiが参照され、ヒットした時点で関数Fi(t)は1にセットされる。Fi(t)その時点から時間とともに傾き−x(0<x<1)で減少する。
Fi(t)が0になった時点で、そのファイルは消去される。
図6(1)の場合には、時点t4でこのファイルは消去され、この場合の総存続時間FTTLは、
FTTL=t4−t1
となる。
(方法2)ヒットする都度、関数Fi(t)に1を加える場合である。
この方法は、前述の(方法1)において、ヒットする度に関数Fi(t)をリセットして、1という値が加算される場合であって、その他の条件は(方法1)と同じである。
ヒットする度に1が加算されるので、検索要求およびダウンロード要求が多いほど、メモリ内に長く残るという点で、効果がある。
この方法は、前述の(方法1)において、ヒットする度に関数Fi(t)をリセットして、1という値が加算される場合であって、その他の条件は(方法1)と同じである。
ヒットする度に1が加算されるので、検索要求およびダウンロード要求が多いほど、メモリ内に長く残るという点で、効果がある。
図6(2)は、本発明の第2の実施例のうちの(方法2)の説明図である。
t1はレプリカが作成された時点、t2,t3はレプリカが参照およびダウンロードされた時点である。
ファイルのTTLを定める関数Fi(t)は、レプリカファイルが作成された時点および参照された時点で値1が加えられ、この値が時間とともに傾き−xで減少する。
Fi(t)が0になった時点で、このファイルは消去される。
図6(2)の場合、時点t4でこのファイルは消去される。この場合の総存続時間FTTLは、
FTTL=t4−t1
となる。
t1はレプリカが作成された時点、t2,t3はレプリカが参照およびダウンロードされた時点である。
ファイルのTTLを定める関数Fi(t)は、レプリカファイルが作成された時点および参照された時点で値1が加えられ、この値が時間とともに傾き−xで減少する。
Fi(t)が0になった時点で、このファイルは消去される。
図6(2)の場合、時点t4でこのファイルは消去される。この場合の総存続時間FTTLは、
FTTL=t4−t1
となる。
(方法3)ヒット数の観測に基づき存続時間τ(k)を与える場合である。
ファイルが生成(レプリケーション)された時刻から一定時間内において、『そのファイルが検索されヒットし、ダウンロードされた数』を考業し、時間の長さを直接決める方法である。
図6(3)は、本発明の第2の実施例のうちの(方法3)の説明図である。
t0は単位時間、t1はレプリカが作成された時点、t1〜t2はTTL決定のための観測期間、t3はレプリカ消滅時点である。
ここでは、t1からt2までの観測時間内に、このファイル1が他のサーバントから検索され、ヒットした数kをカウントし、それに基づいてt2以降の存続時間τ(k)を定める。τ(k)=√(k*t0)
総存続時間FTTLは、
FTTL=(t2−t1)+τ(k)=t3−t1
ファイルが生成(レプリケーション)された時刻から一定時間内において、『そのファイルが検索されヒットし、ダウンロードされた数』を考業し、時間の長さを直接決める方法である。
図6(3)は、本発明の第2の実施例のうちの(方法3)の説明図である。
t0は単位時間、t1はレプリカが作成された時点、t1〜t2はTTL決定のための観測期間、t3はレプリカ消滅時点である。
ここでは、t1からt2までの観測時間内に、このファイル1が他のサーバントから検索され、ヒットした数kをカウントし、それに基づいてt2以降の存続時間τ(k)を定める。τ(k)=√(k*t0)
総存続時間FTTLは、
FTTL=(t2−t1)+τ(k)=t3−t1
(サーバントの内部機能)
図7は、本発明の一実施例に係るサーバントの内部機能を示す図である。
1はサーバント(端末装置)であり、通常のPCの機能を持つ、いわゆる端末であるが、P2Pアプリケーションレイヤとしてはサーバントとして見えるものである。2は通常のタイマである。3は情報計算部であり、レーティング情報計算部4を内部に含む。レーティング情報計算部4は、各レプリカファイルのレーティングを計算する機能を有する。5は情報管理/転送部であり、レプリカ検索情報管理部6、ヒット情報管理部7および要求情報転送部8を内部に含む。
図7は、本発明の一実施例に係るサーバントの内部機能を示す図である。
1はサーバント(端末装置)であり、通常のPCの機能を持つ、いわゆる端末であるが、P2Pアプリケーションレイヤとしてはサーバントとして見えるものである。2は通常のタイマである。3は情報計算部であり、レーティング情報計算部4を内部に含む。レーティング情報計算部4は、各レプリカファイルのレーティングを計算する機能を有する。5は情報管理/転送部であり、レプリカ検索情報管理部6、ヒット情報管理部7および要求情報転送部8を内部に含む。
レプリカ検索情報管理部6は、他のサーバントからのレプリカ検索情報を管理する機能を持つ。ヒット情報管理部7は、その検索が本サーバント内でヒットした情報を管理する機能を持つ。要求情報転送部8は、ヒットしたレプリカを他サーバントへ転送する機能を持つ。
9はメモリ部であり、メモリ容量管理/制御部10とメモリ11を内部に含む。メモリ容量管理/制御部10は、メモリの残容量を管理したり、不要な情報を削除したり、新しい情報を書き込んだりする制御機能を持つ。メモリ11は、各種レプリケーション情報やヒット情報、保持しているファイルに関する情報、サーバントのIPアドレス、等を格納/蓄積する場所である。
9はメモリ部であり、メモリ容量管理/制御部10とメモリ11を内部に含む。メモリ容量管理/制御部10は、メモリの残容量を管理したり、不要な情報を削除したり、新しい情報を書き込んだりする制御機能を持つ。メモリ11は、各種レプリケーション情報やヒット情報、保持しているファイルに関する情報、サーバントのIPアドレス、等を格納/蓄積する場所である。
12はレプリケーション実行部であって、レプリケーション情報解析部13とレプリケーションアクション実行部14とを内部に含む。レプリケーション情報解析部13は、どのファイルをいつどのようなタイミングでレプリケーションするかを解析する機能を持つ。レプリケーションアクション決定/実行部14は、レプリケーションに関してとるべきアクションを決定し、実行する機能を持つ。
15はPAD(パケット組み立て/分解部)であり、各種情報をIPパケットに変換したり、その逆にIPパケットから各種情報への分解を行ったりする機能を持つ。16はパケット送信部であり、IPパケットを他のサーバントに送出する機能を持つ。17はパケット受信部であり、網内の他のサーバントからの到着パケットを受信する機能を持つ。
18はこのサーバントが接続されているIP網(インターネット)である。
18はこのサーバントが接続されているIP網(インターネット)である。
図7に示すサーバントは、次の機能を有している。
1)ある時間単位(T)を定義する。この時間間隔ごとに、自身の持つレプリカファイル毎のヒット数を記録し、現時点における各レプリカファイルの持つレーティングを計算する機能を有する。
2)ある時刻において、レプリケーションを実行しようとするときに、メモリ容量が不足することが判明した場合、その時点において、最小のレーティングを持つレプリカファイルをメモリ内から消去する機能を有する。新しいレプリケーションが実行できるメモリ容量が確保できるまで、次々にレーティング最小のレプリカファイルを消去する。
1)ある時間単位(T)を定義する。この時間間隔ごとに、自身の持つレプリカファイル毎のヒット数を記録し、現時点における各レプリカファイルの持つレーティングを計算する機能を有する。
2)ある時刻において、レプリケーションを実行しようとするときに、メモリ容量が不足することが判明した場合、その時点において、最小のレーティングを持つレプリカファイルをメモリ内から消去する機能を有する。新しいレプリケーションが実行できるメモリ容量が確保できるまで、次々にレーティング最小のレプリカファイルを消去する。
3)レプリカファイル毎にファイルTTLを管理し、ファイルTTLの値が0になったならば、その該当するレプリカファイルをメモリから消去する機能を有する。
4)自身が持つレプリカに対して、過去に問い合わせがあった時刻と減衰関数Fi(t)とからなる情報セットをサーバント毎に格納しておく機能を有する。具体的には、次のような情報セットを保持する。
(A1(Q1,R1,T1),A2(Q2,R2,T2),・・・,AN(QN,RN,TN)
また、
Rk=ΣF(T−tki)
が成立する。
なお、ここで、
Ak:k番目のレプリカに関する情報
Qk:k番目のレプリカのファイル名
Rk:現時点でのk番目のレプリカのレーティング
Tk:k番目のレプリカが作成された時刻
T:現在の時刻
tki:k番目のレプリカに関してi回目に検索された時刻
Fi(t):減衰関数
4)自身が持つレプリカに対して、過去に問い合わせがあった時刻と減衰関数Fi(t)とからなる情報セットをサーバント毎に格納しておく機能を有する。具体的には、次のような情報セットを保持する。
(A1(Q1,R1,T1),A2(Q2,R2,T2),・・・,AN(QN,RN,TN)
また、
Rk=ΣF(T−tki)
が成立する。
なお、ここで、
Ak:k番目のレプリカに関する情報
Qk:k番目のレプリカのファイル名
Rk:現時点でのk番目のレプリカのレーティング
Tk:k番目のレプリカが作成された時刻
T:現在の時刻
tki:k番目のレプリカに関してi回目に検索された時刻
Fi(t):減衰関数
また、サーバントは、これらの情報セットを、レーティングRkの大きい順番に並べることができる機能を有する。そして、メモリ内に新しいレプリカを格納しようとする場合に、メモリに容量が不足する場合には、上記の優先度順に並べられた情報セットの情報に基づいて、新しいレプリカを格納するために必要なメモリ容量を確保できるまで優先度が低いレプリカファイルから順番に消去していく機能を有する。
図3および図4に記載されたフローチャートをプログラム化し、完成されたプログラムをCD−ROMなどの記録媒体に格納しておけば、サーバント内のレプリケーション実行部12のコンピュータに記録媒体を装着して、プログラムをコンピュータにインストールし、実行させることにより、本発明のピュアー型P2P通信におけるレプリカ管理方法を容易に実現することができる。また、このプログラムをインターネットを介して広く他のコンピュータにダウンロードすることで、このプログラムの汎用化が可能となる。
1:サーバント、2:タイマ、3:情報計算部、4:レーティング情報計算部、
5:情報管理/転送部、6:レプリカ検索情報管理部、7:ヒット情報管理部、
8:要求情報転送部、9:メモリ部、10:メモリ容量管理/制御部、11:メモリ、
12:レプリケーション実行部、13:レプリケーション情報解析部、
14:レプリケーションアクション決定/実行部、15:PAD、
16:パケット送信部、17:パケット受信部、18:IP網(インターネット)、
5:情報管理/転送部、6:レプリカ検索情報管理部、7:ヒット情報管理部、
8:要求情報転送部、9:メモリ部、10:メモリ容量管理/制御部、11:メモリ、
12:レプリケーション実行部、13:レプリケーション情報解析部、
14:レプリケーションアクション決定/実行部、15:PAD、
16:パケット送信部、17:パケット受信部、18:IP網(インターネット)、
Claims (9)
- P2P型通信を行う各サーバントでレプリケーションを実施するためのレプリカ管理方法において、
有限のメモリ内における各レプリカファイルの任意時点での優先順位を決定するため、
レプリケーションが実施された時刻、該時刻から現在までに検索されてヒットした数、および各ヒットに対してその時刻から現在まで経過した時間により重みを減衰させる関数を組み合わせて、各ファイルの持ち点であるレーティングを決定し、
該レーティングを用いて、新たなレプリカ生成時にレーティングが最小のファイルをプッシュアウトすることを特徴とするピュアー型P2P通信におけるレプリカ管理方法。 - P2P型通信を行う各サーバントでレプリケーションを実施するためのレプリカ管理方法において、
レプリカファイルのプッシュアウト処理が開始され、新しくレプリケーションの実行が決定されたか否かを判定するステップと、
各レプリカのレーティングを比較し、比較結果に基づいて順番に並べるステップと、
新しいレプリケーション用にメモリ容量が確保できているか否かを判定するステップと、
確保されていれば、レプリケーションを実行するステップと、
確保されていなければ、低いレーティングのレプリカを削除するステップ
とを有することを特徴とするピュアー型P2P通信におけるレプリカ管理方法。 - 請求項1または2に記載のピュアー型P2P通信におけるレプリカ管理方法において、
前記レプリケーションの実行が決定されない場合には、予め定められた時間が経過したか否かを判別するステップと、
前記時間が経過したならば、該時間区間における各レプリカのヒット数からレーティングをそれぞれ計算するステップとを有することを特徴とするピュアー型P2P通信におけるレプリカ管理方法。 - P2P型通信を行う各サーバントでレプリケーションを実施するためのレプリカ管理方法において、
レプリカが生成された後にメモリ内に存続する時間TTLを定義し、
また、ファイルについて時間とともに減衰する関数F(t)を定義し、
該ファイルが検索されて、ヒットする度ごとに関数F(t)をリセットして予め定めた値を持たせて、再び減衰を続け、
該ファイルの値が0になったときに該ファイルを消去することを特徴とするピュアー型P2P通信におけるレプリカ管理方法。 - 請求項4に記載のピュアー型P2P通信におけるレプリカ管理方法において、
前記ファイルが検索されて、ヒットする度ごとに、予め定めた値を加えて、加算値から関数F(t)による減衰を続けることを特徴とするピュアー型P2P通信におけるレプリカ管理方法。 - P2P型通信を行う各サーバントでレプリケーションを実施するためのレプリカ管理方法において、
ファイルが生成された時刻から予め定めた時間内に、該ファイルが検索されてヒットし、またダウンロードされた数をカウントし、該カウントされた数に基づきファイル消去までの時間の長さを決定することを特徴とするピュアー型P2P通信におけるレプリカ管理方法。 - P2P型通信を行う各サーバントでレプリケーションを実施するためのレプリカ管理方法において、
レプリカファイルのプッシュアウト処理が開始され、新しくレプリケーションの実行が決定されたか否かを判定するステップと、
新しいレプリカの該レプリカが生成された後にメモリ内に存続するファイルTTLを計算するステップと、
新しいレプリケーションが実行されても、ファイルが生成された時刻から予め定めた時間が経過したか否かを判別するステップと、
該時間が経過したならば、全レプリカのファイルTTLを計算するステップと、
該レプリカのファイルTTLが0であるか否かを判別するステップと、
0であればそのレプリカをメモリから削除するステップと、
0でなければ、全レプリカのファイルTTL値を調べたか否かを判別するステップと
を有することを特徴とするピュアー型P2P通信におけるレプリカ管理方法。 - IP網に接続され、該IP網に対してパケットの送受信を行う手段と、
レプリケーションを実施してからの時間単位を定義し、該時間単位の間隔ごとに、自身の持つレプリカファイル毎のヒット数を記録し、現時点における各レプリカファイルの持つレーティングを計算する情報計算手段と、
任意の時刻において、レプリケーションを実行しようとするときに、メモリ容量が不足することが判明した場合、その時点において、最小のレーティングを持つレプリカファイルをメモリ内から消去し、かつレプリカファイル毎にファイルTTLを管理し、該ファイルTTLの値が0になったならば、該当するレプリカファイルをメモリから消去させるレプリケーション実行手段と、
保持するレプリカに対して、過去に問い合わせがあった時刻と減衰関数とからなる情報セットを格納しておく情報管理手段と
を有することを特徴とするサーバント装置。 - P2P型通信を行う各サーバントでレプリケーションを実施するためのレプリカ管理プログラムであって、
該サーバントのコンピュータに、レプリカファイルのプッシュアウト処理が開始され、新しくレプリケーションの実行が決定されたか否かを判定する手順、各レプリカのレーティングを比較し、比較結果に基づいて順番に並べる手順、新しいレプリケーション用にメモリ容量が確保できているか否かを判定する手順、確保されていれば、レプリケーションを実行する手順、確保されていなければ、低いレーティングのレプリカを削除する手順を、実行させるためのレプリカ管理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004369290A JP2006178609A (ja) | 2004-12-21 | 2004-12-21 | ピュアー型p2p通信におけるレプリカ管理方法およびそれを具備した装置、ならびにそのプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004369290A JP2006178609A (ja) | 2004-12-21 | 2004-12-21 | ピュアー型p2p通信におけるレプリカ管理方法およびそれを具備した装置、ならびにそのプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006178609A true JP2006178609A (ja) | 2006-07-06 |
Family
ID=36732688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004369290A Pending JP2006178609A (ja) | 2004-12-21 | 2004-12-21 | ピュアー型p2p通信におけるレプリカ管理方法およびそれを具備した装置、ならびにそのプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006178609A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010231576A (ja) * | 2009-03-27 | 2010-10-14 | Brother Ind Ltd | ノード装置、ノード処理プログラム及びコンテンツ保存方法 |
-
2004
- 2004-12-21 JP JP2004369290A patent/JP2006178609A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010231576A (ja) * | 2009-03-27 | 2010-10-14 | Brother Ind Ltd | ノード装置、ノード処理プログラム及びコンテンツ保存方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Tewari et al. | Beyond hierarchies: Design considerations for distributed caching on the internet | |
US20100161752A1 (en) | Method and System of Administrating a Peer-to-Peer File Sharing Network | |
KR20140067881A (ko) | 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법 | |
JP2008250767A (ja) | 分散ストレージシステム | |
Yang et al. | A model for replica placement in content distribution networks for multimedia applications | |
JP4573732B2 (ja) | サーバント装置 | |
Neves dos Santos et al. | Cedo: Content-centric dissemination algorithm for delay-tolerant networks | |
US10530893B2 (en) | Method for managing packets in a network of information centric networking (ICN) nodes | |
JP2007305025A (ja) | 生体の原理を用いたレプリカ制御法、およびそれを具備する装置、ならびにそのプログラム | |
US20140222988A1 (en) | Method for adaptive content discovery for distributed shared caching system | |
Yu et al. | Granary: A sharing oriented distributed storage system | |
Du et al. | Highly available component sharing in large-scale multi-tenant cloud systems | |
JP2006178609A (ja) | ピュアー型p2p通信におけるレプリカ管理方法およびそれを具備した装置、ならびにそのプログラム | |
Stamos et al. | Integrating caching techniques on a content distribution network | |
Rong | Multimedia Resource Replication Strategy for a Pervasive Peer-to-Peer Environment. | |
Song | Segment-based proxy caching for distributed cooperative media content servers | |
Grunthal | Efficient indexing of the BitTorrent distributed hash table | |
JP2005322022A (ja) | ピアツーピア端末装置及びキャッシュ生成方法ならびにそのコンピュータプログラム | |
Hays | Reducing the Download Time in Stochastic P2P Content Delivery Networks by Improving Peer Selection | |
JP2005227842A (ja) | P2p通信におけるレプリケーション手法およびそれを具備する装置、ならびにそのプログラム | |
Tewari | Performance study of peer-to-peer file sharing | |
Perera et al. | Broadcast Updates with Local Look-up Search (BULLS) a new peer-to-peer protocol | |
Jaiswal | Adaptive content replication in Peer to Peer Network | |
Sit | Storing and managing data in a distributed hash table | |
Zhang et al. | Accelerate data sharing in a wide-area networked file storage system |