JP2006107118A - P2p環境におけるビザンチン耐故障ファイル共有の応答高速化方法 - Google Patents

P2p環境におけるビザンチン耐故障ファイル共有の応答高速化方法 Download PDF

Info

Publication number
JP2006107118A
JP2006107118A JP2004292729A JP2004292729A JP2006107118A JP 2006107118 A JP2006107118 A JP 2006107118A JP 2004292729 A JP2004292729 A JP 2004292729A JP 2004292729 A JP2004292729 A JP 2004292729A JP 2006107118 A JP2006107118 A JP 2006107118A
Authority
JP
Japan
Prior art keywords
metadata
terminal
byzantine
byzantine agreement
list
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
JP2004292729A
Other languages
English (en)
Inventor
Mikio Maeda
幹夫 前田
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2004292729A priority Critical patent/JP2006107118A/ja
Publication of JP2006107118A publication Critical patent/JP2006107118A/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/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • 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
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1072Discovery involving ranked list compilation of candidate peers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】 P2P環境におけるビザンチン合意アルゴリズムを高速化する。
【解決手段】 ビザンチン合意処理の応答時間の計測により得られた処理性能により、端末毎に処理性能を記述することと処理性能順に各端末を整列し記述するPeerランキングリストを生成する。該リストを用いて、ビザンチン合意実行前において、より高速にビザンチン合意を処理可能と推定できる端末を選択する。あるいはメタデータの転送を行なうときに、メタデータの転送処理性能を計測、端末毎に処理性能を記述することと処理性能順に各端末を整列し記述するメタデータ転送処理性能リストを生成し、メタデータの転送実行前において、より高速にメタデータの転送を処理可能と推定できる端末を選択しメタデータの転送を行なう。
【選択図】 図2

Description

本発明は、複数の端末が自律分散協調により任意の情報、ファイルデータを送受するP2Pネットワーク上に接続された端末間でファイル共有を行なう方法に関する。
従来のP2P環境におけるビザンチン耐故障方式ファイル共有方法としては、特許文献1「サーバレス分散ファイルシステム」に開示されるようなビザンチン耐故障方式ファイル共有方法がある。
サーバレス分散ファイルシステムにおいては、ディレクトリ情報をビザンチンフォールトトレラントグループに所属する端末が行ない、ファイルはビザンチンフォールトトレラントグループを利用せずに端末で管理し、クライアント端末は、サーバレス分散ファイルシステム上のファイルにアクセスするために、ビザンチン合意アルゴリズムにより正常性が保障されたディレクトリ情報からファイルの識別情報と、前記ファイルの複製が記憶された複数のコンピュータの識別情報と、ファイル検証データを入手し、ファイルの識別情報およびコンピュータの識別情報によりファイルを取得し、クライアント端末上でファイルとファイル検証データを比較することにより、ファイルの正常性を担保することを特徴としている。
上記ビザンチン合意アルゴリズムでは、端末間で多数のメッセージパッシングおよび端末の計算処理性能がビザンチン合意処理の応答性能に影響する。ここで、ビザンチン合意とは、ある端末が他端末(例えばa,b,cとする)に通信する値がa,bには正しい値、cには故障した値を通知するような故障(ビザンチン故障と言う)が存在する場合において、故障を検知するアルゴリズムのことを指し、ビザンチン合意処理とは、上記の故障検知アルゴリズムを利用したシステム処理を指す。
そのため、ビザンチンフォールトトレラントグループの大多数の端末が高性能端末であっても、低性能端末もビザンチンフォールトトレラントグループに所属している状況下においては、高性能端末が本来の性能を発揮できず、P2P環境のような多様な計算処理性能を持つ端末が混交している環境下においてはビザンチン合意処理の応答性能に影響し問題である。
特開2002―358226号公報
P2Pによるファイル共有は集中管理によるサーバ維持コストや回線コストの削減が利点であるが、共有されたファイルの改竄・故障等の問題が発生する。この問題にはビザンチン合意アルゴリズムを用いることによりファイルの改竄・故障等を回避できる。
しかしながら、ビザンチン合意アルゴリズムは端末の計算処理性能が他端末に応答性能として影響するといった問題があり、P2P環境下においてはビザンチン合意アルゴリズムを実行する端末の性能が多様であり、集中管理型ファイル共有のようにビザンチン合意を行なう端末間の応答性能を最適化することが難しい。
本発明の目的は、P2P環境におけるビザンチン合意アルゴリズムを高速化するビザンチン耐故障方式ファイル共有方法を提供することにある。
本発明は、ファイルデータの正当性を保障する検証データを持つメタデータのビザンチン合意アルゴリズムの応答を高速に行なえると予測される端末をPeerランキングリストとして保持・管理し、コンテンツ利用時、該Peerランキングリストに保持されている、当該メタデータを持つ複数端末の中から端末を選択し、選択された端末でビザンチン合意アルゴリズムを行なう。
P2Pネットワーク上のような多様な計算機性能を持つ端末が混合している環境下においても、ビザンチン合意を行なう各端末に過去のビザンチン合意処理の応答性能を端末毎に記載したPeer性能ランキングリストおよびメタデータ転送方法を用いることにより、ビザンチン合意をより高速に行なえるPeerを選択できる。
1)各端末の自律分散協調により本システムは実現し、中央管理サーバへの投資を必要としないため、設備・管理コストの削減が可能である。
2)ビザンチン合意を行なう端末として、該端末が保持するPeer性能ランキングリストから上位に位置づけられる高性能Peerを選択するため、高速にビザンチン合意を行なうことが可能である。
3)ビザンチン合意を行なう端末がメタデータを保持していない場合でも他端末からメタデータを転送することにより、ビザンチン合意を行なうことが可能である。
4)ビザンチン合意を行なう複数方法の中から、Peer性能ランキングリストとメタデータ転送処理時間リストを用いることにより、高速にビザンチン合意を行なえる方法を選択することが可能である。
次に、本発明の実施の形態について図面を参照して説明する。
図1は本発明の一実施形態の利用者端末の構成を示している。
利用者端末1,2はアプリケーション12とビザンチン合意処理装置13とP2Pファイル転送装置14とP2P通信装置15と2次記憶装置で構成されるP2Pビザンチン耐故障ファイル共有環境であり、インターネット等の伝達ネットワーク10と接続されている。
OS上のP2Pファイル転送装置14とP2P通信装置15は、インターネット等の伝達ネットワーク10上において、利用者端末1,2を物理的に伝達ネットワーク10に接続し、端末1,2間で直接ファイルデータや情報を交換することを可能としている。2次記憶装置16はファイルデータ等の保存が可能で、論理的にP2Pファイル共有環境を構成している。ビザンチン合意処理装置13はアプリケーション12からのファイルの登録依頼、メタデータ検索依頼、コンテンツ要求依頼を受け取り、アプリケーション12に対して、コンテンツ登録終了、合致メタデータ通知、コンテンツ受信通知を通知する。
また、すべての利用者端末1,2,・・・は後述するPeer属性管理部1311により、クライアント−データ保存,クライアント−メタデータ保存,クライアント−ビザンチン合意,マスタ,レプリカ,待機のPeer属性のいずれかの状態に遷移することを可能とする。
また、図1に示される利用者端末は利用者端末1、利用者端末2と説明上分けて表記しているが、各々の端末の構成が異なることを意味するものではなく、説明にこだわらない時は利用者端末1と表記する。
図2は利用者端末1,2内のビザンチン合意処理装置13の構成と、アプリケーション12とビザンチン合意処理装置13との間関係を示している。
ビザンチン合意処理装置13はPeer属性管理部1311とPeerGUID管理部1312とファイル送受信部1321とコンテンツメタデータ作成部1322とメタデータ転送時間計測部1323とメタデータ転送時間管理部1324とメタデータ検索部1331とビザンチン合意処理依頼部1332とコンテンツ検索部1333とPeerリスト作成部1334とファイル管理部1341とビザンチン合意実行部1351とPeerランキング管理部1352とビザンチン合意Peer選択部1353とビザンチン合意処理時間計測部1354とビザンチン合意方式選択部1355とメタデータ転送決定部1356とマスタランキング管理部1357とを含んでいる。
次に、本実施形態の動作を説明する。
[コンテンツの保存]
利用者端末1のアプリケーション12はコンテンツ1361の登録時に、ビザンチン合意処理装置13にコンテンツ登録依頼を要求し、該コンテンツ1361と耐故障数(f)をビザンチン合意処理装置13に送信する。ここで、耐故障数とは複製メタデータの故障数が耐故障数より少なければ、正常性を保ったメタデータを提供できる値を指す。ビザンチン合意処理装置13は図5に示されるPeer属性管理部1311に対して、Peer属性を待機からクライアント−データ保存に状態遷移することを要求し、ビザンチン合意処理装置13は図3に示されるコンテンツメタデータ作成部1322に対してコンテンツ1361の登録を要求する。コンテンツメタデータ作成部1322は、図3に示すように、ハッシュ関数(MD5,SHA−1等)を用いて、コンテンツ1361を元に固定長のハッシュ値13621を生成し、コンテンツ1361の、ファイル名、ファイルのプロパティ等のファイル関連情報13612からコンテンツ関連情報13622を生成し、ハッシュ値13621とコンテンツ関連情報13622のデータを有するメタデータ1362を生成する。ビザンチン合意処理装置13は耐故障数(f)から該メタデータの複製の配備数を3f+1数以上(複製メタデータの内容の比較を行ない、多数決を取れる数)のメタデータ数とし、該メタデータを配備する利用者端末をP2P通信装置15を用いて3f+1数以上確保し、メタデータ保存側端末とし、該コンテンツの複製の配備数をf(ファイル(コンテンツ)の故障数)数以上とし、該コンテンツを配備する利用者端末2をP2P通信装置15を用いてf数以上確保し、コンテンツ保存側端末とする。メタデータにはファイルの内容が正常であるかを判断できるファイルのハッシュ値が含まれているため、ネットワーク上に最低一個の正常なファイルが存在すれば正常なファイルを取得することが可能となる。そのため、想定する故障ファイル数(f個)以上のファイルを端末に配備する必要がある。ビザンチン合意処理装置13はファイル送受信部1321に対して、図4に示される、ファイル発信要求2−1を該メタデータ保存側端末に通知し、該メタデータのファイルを該メタデータ保存側端末(2−2)に送信し、該メタデータ保存側端末はファイル管理部1341に対して、受信した該メタデータを2次記憶装置16にファイル保存(2−3)を行なわせる。ビザンチン合意処理装置13はファイル送受信部1321に対して、図4で示される、ファイル発信要求2−1を該コンテンツ保存側端末に通知し、該コンテンツのファイルを該コンテンツ保存側端末に送信し(2−2)、該コンテンツ保存側端末はファイル管理部1340に対して、受信した該コンテンツの2次記憶装置16のファイル保存(2−3)を行なわせる。ビザンチン合意処理装置13は該メタデータおよび該コンテンツの必要配備数分、上記処理を繰り返す。ビザンチン合意処理装置13はPeer属性管理部1311に対して、Peer属性をクライアント−データ保存から待機に状態遷移することを要求し、アプリケーション12に対してコンテンツ登録終了を通知する。
[メタデータの検索]
利用者端末1のアプリケーション12はメタデータ1362の検索時に、ビザンチン合意処理装置13にメタデータ検索依頼を要求し、メタデータの検索クエリと耐故障数fをビザンチン合意処理装置13に送信する。ビザンチン合意処理装置13は図5に示されるPeer属性管理部1311に対して、Peer属性を待機からクライアント−メタデータ保存に状態遷移することを要求する。ビザンチン合意処理装置13は図6に示されるメタデータ検索部1331に対して、該検索クエリを通知する。メタデータ検索部1331はP2P通信装置15を介して、インターネット等の伝達ネットワーク10に接続する利用者端末2に、該検索クエリを通知する。該検索クエリを受信した利用者端末2のメタデータ検索部1331は、ファイル管理部1341に対して該検索クエリを通知し、ファイル管理部1341は2次記憶装置16に保存されているメタデータ1362を、該検索クエリを利用して検索し、該検索クエリと一致するメタデータがある場合、メタデータ検索部1331に対して、該メタデータを通知する。メタデータ検索部1331は、図5で示されるPeerGUID管理部1312に対して、IPアドレス等のGUIDを要求し、該メタデータの情報の一部と該GUIDを、P2P通信装置25を介して、利用者端末1に通知する。利用者端末1のビザンチン合意処理装置13は図7に示されるPeerリスト作成部1334に対して、利用者端末2から通知された、該メタデータの情報の一部と該GUIDを通知する。Peerリスト作成部1334は、メタデータの情報の一部から、分散配備された同一複製メタデータであるかを判断し、同一複製メタデータごとにPeerリスト1363を作成し、Peerリスト1363に、耐故障数(f)を満たす3f+1数以上の利用者端末2の該GUIDを登録し、Peerリスト1363に耐故障数(f)を登録する。ビザンチン合意処理装置13はPeer属性管理部1311に対して、Peer属性をクライアント−メタデータ保存から待機に状態遷移することを要求し、アプリケーション12に対して合致メタデータを、作成したPeerリスト1363ごとに通知する。
[マスタの決定およびPeerリストの通知]
利用者端末1のアプリケーション12は、合致メタデータ通知に該当するコンテンツを要求する時に、ビザンチン合意処理装置13にコンテンツ要求依頼を要求し、該合致メタデータ通知をビザンチン合意処理装置13に送信する。ビザンチン合意処理装置13は図5に示されるPeer属性管理部1311に対して、Peer属性を待機からクライアント−ビザンチン合意に状態遷移することを要求し、ビザンチン合意処理装置13は、ビザンチン合意処理依頼部1332に対して該合致メタデータ通知を送信し、ビザンチン合意処理依頼部1332は、Peerリスト作成部1334に対して該合致メタデータ通知と一致するPeerリスト1363を要求する。ビザンチン合意処理依頼部1332は、Peerリスト1363の中のPeerが、図7に示されるマスタPeer決定ランキングリスト1366に記載がある場合は、マスタPeer決定ランキングリスト1366の上位に記載されているPeerをマスタとする利用者端末2として選出し、記載が無い場合は、Peerリスト1363に記述されているPeerGUIDの中からランダムにマスタとする利用者端末2を選出し、また、図7に示されるマスタランキング管理部1357により、利用者端末1にビザンチン合意を行なったメタデータが転送されてくるまでのビザンチン合意処理応答時間を計測し、マスタPeer決定ランキングリスト1366を更新する。
ビザンチン合意処理依頼部1332は、P2P通信装置15を介して、図8で示されるマスタを依頼する利用者端末2にビザンチン合意処理依頼(マスタ)を通知し、利用者端末2のビザンチン合意処理装置13は、図5に示されるPeer属性管理部1311に対して、Peer属性を待機からマスタに状態遷移することを要求する(以降、利用者端末(マスタ)と表記)。利用者端末1のビザンチン合意処理依頼部1332は、ファイル送受信部1321に対して、Peerリスト1363を利用者端末(マスタ)に送信することを要求する。ファイル送受信部1321は利用者端末(マスタ)に該Peerリスト1363を送信し、利用者端末(マスタ)のビザンチン合意処理部1332は、ビザンチン合意Peer選択部2353に対して、レプリカとする利用者端末(3,4,5…)を選出することを要求する。
[ビザンチン合意処理方式の決定およびPeerの選出]
利用者端末(マスタ)のビザンチン合意処理部1332は、ビザンチン合意Peer選択部1353に対して、レプリカとする利用者端末2を選出することを要求する時に、ビザンチン合意Peer選択部1353は、Peerリスト1363と図9に示すPeerランキングリスト1364とビザンチン合意処理方式をビザンチン合意方式選択部1355に通知する。
ビザンチン合意方式選択部1355は、該ビザンチン合意処理方式が方式1の場合、図10に示すように、該Peerリスト1363に記載された耐故障数(f)を読み出し、fの値からビザンチン合意に必要なPeer数を3f+1数と決定し、ビザンチン合意方式選択部1355は、該Peerランキングリスト1364に記載されている上位のPeerから順に、該Peerリスト1363に記載されているかを確認し、記載されている場合は、レプリカとする利用者端末3として選出し、また、ビザンチン合意に必要なPeer数を満たすまで、上記のレプリカとする利用者端末(4,5…)の選出を繰り返し、また、該Peerランキングリスト1364に記載されている全Peerに関して、該Peerリスト1363に記載されているかの確認終了後、ビザンチン合意に必要なPeer数の選出数が満たされていない場合は、該Peerリスト1363からランダムに残りのレプリカとする利用者端末の選出を繰り返す。ビザンチン合意方式選択部1355は、レプリカとする全利用者端末(3,4,5…)を選出し、ビザンチン合意Peer選択部1353にレプリカとする該全利用者端末(3,4,5…)を含む選出ビザンチン合意Peerリスト1365を通知する。利用者端末(マスタ)のビザンチン合意Peer選択部1353は、レプリカとする該全利用者端末に対して、図9に示すようにビザンチン合意依頼を通知する。
ビザンチン合意方式選択部1355は、該ビザンチン合意処理方式が方式2の場合、図11に示すように、該Peerリスト1363に記載された耐故障数(f)を読み出し、fの値からビザンチン合意に必要なPeer数を3f+1数と決定し、ビザンチン合意方式選択部1355は、該Peerランキングリスト1364に記載されている上位のPeerから順に、レプリカとする利用者端末3として選出し、また、該Peerランキングリスト1364に記載されているPeer数が、ビザンチン合意に必要なPeerよりも大きければ、ビザンチン合意に必要なPeer数を満たすまで、上記のレプリカとする利用者端末(4,5…)の選出を繰り返し、また、該Peerランキングリスト1364に記載されているPeer数が、ビザンチン合意に必要なPeer数よりも小さければ、不足分のレプリカとする利用者端末(4,5…)を、該Peerランキングリスト1364からランダムに残りのレプリカとする利用者端末(4,5…)の選出を繰り返し、ビザンチン合意方式選択部1355は、レプリカとする全利用者端末(3,4,5…)を選出し、ビザンチン合意処理装置13にレプリカとする該全利用者端末(3,4,5…)を含む選出ビザンチン合意Peerリスト1365を通知する。利用者端末(マスタ)のビザンチン合意処理装置13は、レプリカとする該全利用者端末に対して、図9に示すようにビザンチン合意依頼を通知する。
ビザンチン合意方式選択部1355は、該ビザンチン合意処理方式が方式3の場合、方式1により選出されたレプリカとする利用者端末(3,4,5…)により実行されるビザンチン合意処理のビザンチン合意処理時間がPeerランキングリスト1364により予測可能であり、方式2により選出されたレプリカとする利用者端末(3,4,5…)により実行されるビザンチン合意処理のビザンチン合意処理時間がPeerランキングリスト1364により予測可能であり、図13により示されるメタデータ転送時間計測部1323により生成されるメタデータ転送処理時間リスト13541によりメタデータ転送処理時間が予測可能であり、該ビザンチン合意処理時間に該メタデータ転送処理時間を加算した、ビザンチン合意およびメタデータ転送処理時間により、方式1を実行したときの該ビザンチン合意処理時間と方式2を実行したときの該ビザンチン合意処理時間+メタデータ転送処理時間を比較し、処理時間が短いと予想される方式を選択し、ビザンチン合意方式選択部1355は、レプリカとする利用者端末(3,4,5…)を選出し、ビザンチン合意処理装置13にレプリカとする該利用者端末(3,4,5…)を含む選出ビザンチン合意Peerリスト1365を通知する。利用者端末(マスタ)のビザンチン合意処理装置13は、レプリカとする該全利用者端末(3,4,5…)に対して、図9に示すようにビザンチン合意依頼を通知する。
[レプリカ端末での処理]
利用者端末(マスタ)のビザンチン合意処理装置13は、図8に示されるように、レプリカとする利用者端末3,4,5,…に対して、ビザンチン合意依頼を要求する場合、レプリカとする利用者端末3,4,5,…のビザンチン合意処理装置13にビザンチン合意依頼とPeerリスト1363を送信する。ビザンチン合意処理装置13は、図5に示されるPeer属性管理部1311に対して、Peer属性を待機からレプリカに状態遷移することを要求する。ビザンチン合意処理装置13は、図12に示されるメタデータ転送決定部1356に対して、Peerリスト1363を通知し、メタデータ転送決定部1356は、該Peerリスト1363に自PeerGUIDが記載されているかを確認し、自PeerGUID(Global Unique Identifier)が記載されている場合は、ビザンチン合意実行部1351に対してビザンチン合意処理を依頼し、自PeerGUIDが記載されていない場合は、メタデータ転送処理時間リスト13541に記載されている上位の利用者端末から順に、該Peerリスト1363に記載があるかを確認し、記載がある場合は、メタデータ転送元利用者端末を選出し、該メタデータ転送元利用者端末に対してメタデータ転送要求を通知し、該メタデータ転送元利用者端末からメタデータを自端末に転送し、記載が無い場合は、該Peerリスト1363からランダムにメタデータ転送元利用者端末を選出し、該メタデータ転送元利用者端末に対してメタデータ転送要求を通知し、該メタデータ転送元利用者端末からメタデータを自端末に転送する。また、図13に示されるメタデータ転送時間計測部1354により、メタデータの転送処理時間を計測し、メタデータ転送処理時間リスト13541を更新し、ビザンチン合意実行部1351に対してビザンチン合意処理を依頼する。
[ビザンチン合意]
利用者端末(マスタ)および利用者端末(レプリカ)のビザンチン合意処理装置13は、ビザンチン合意実行部1351に対して選出ビザンチン合意Peerリスト1365を通知し、図14に示されるように、選出ビザンチン合意Peerリスト1365に記載されている利用者端末2,3,4,5…間で、メタデータ1362のビザンチン合意を行ない、また、ビザンチン合意処理時間計測部1354により、ビザンチン合意の処理時間を計測し、Peerランキング管理部1352に対して、Peerランキングリスト2364の更新を依頼し、ビザンチン合意実行部1351は、ビザンチン合意処理装置13に対して、ビザンチン合意を行なったメタデータ1362を通知する。
[ビザンチン合意を行なったメタデータの転送]
利用者端末(マスタ)および利用者端末(レプリカ)のビザンチン合意処理装置13は、P2Pファイル転送装置14を用いて、利用者端末(クライアント−ビザンチン合意)に対してビザンチン合意を行なったメタデータ1362を転送する。ビザンチン合意処理装置13はPeer属性管理部1311に対して、Peer属性をマスタおよびレプリカから待機に状態遷移することを要求し、利用者端末(クライアント−ビザンチン合意)は、利用者端末(マスタ)および利用者端末(レプリカ)からのビザンチン合意を行なったメタデータ1362を受信する。
[コンテンツの検索]
利用者端末(クライアント−ビザンチン合意)のビザンチン合意処理装置13は、コンテンツの検索時に、コンテンツ検索部1333に対して、ビザンチン合意を行なったメタデータ1362のコンテンツ関連情報13622を通知する。コンテンツ検索部1333は、コンテンツ関連情報13622からコンテンツ検索クエリを抽出し、図15に示されるように、P2P通信装置15を介して、インターネット等の伝達ネットワーク3に接続する利用者端末2,3,4…に対して、コンテンツ検索クエリを通知する。該コンテンツ検索クエリを受信した利用者端末5のコンテンツ検索部1333はファイル管理部1341に対して、該コンテンツ検索クエリを通知する。ファイル管理部1341は2次記憶装置16に保存されているコンテンツ1361を、該コンテンツ検索クエリを利用して検索し、ファイル管理部1341は、該コンテンツ検索クエリと一致するコンテンツ1361がある場合、コンテンツ検索部1333に対して、該コンテンツを通知する。コンテンツ検索部1333は、図5で示されるPeerGUID管理部1312に対して、IPアドレス等のGUIDを要求し、該コンテンツの情報の一部と該GUIDを、P2P通信装置15を介して、利用者端末(クライアント−ビザンチン合意)に通知する。利用者端末(クライアント−ビザンチン合意)のビザンチン合意処理装置13は、利用者端末2,3,4…から通知された該コンテンツの情報の一部と該GUIDを利用し、P2Pファイル転送装置14を利用しコンテンツ1361の転送を行なう。ビザンチン合意実行部1351は、ハッシュ関数(MD5,SHA−1等)を用いて、受信したコンテンツ1361を元に固定長のハッシュ値13621を生成する。ビザンチン合意実行部1351は、該ハッシュ値13621と、ビザンチン合意を行なったメタデータ1362に含まれるハッシュ値13621を比較し、ハッシュ値が一致する場合は、ビザンチン合意処理装置13に対して、コンテンツ検証確認を通知し、ハッシュ値が一致しない場合は、コンテンツの転送を行なっていない利用者端末からコンテンツを転送し、ふたたび上記手順と同様に、受信したコンテンツのハッシュ値を求め、メタデータ1362内のハッシュ値13621と一致するまで繰り返す。
ビザンチン合意処理装置13はPeer属性管理部1311に対して、Peer属性をクライアント−ビザンチン合意から待機に状態遷移することを要求し、ビザンチン合意処理装置13はアプリケーション12に対してコンテンツ受信を通知すると共に、該コンテンツを通知する。
なお、利用者端末の機能は専用のハードウェアにより実現されるもの以外に、その機能を実現するためのプログラムを、コンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するものであってもよい。コンピュータ読み取り可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、CD−ROM等の記録媒体、コンピュータシステムに内蔵されるハードディスク装置等の記憶装置を指す。さらに、コンピュータ読み取り可能な記録媒体は、インターネットを介してプログラムを送信する場合のように、短時間の間、動的にプログラムを保持するもの(伝送媒体もしくは伝送波)、その場合のサーバとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含む。
本発明の一実施形態のシステムの接続を示す図である。 利用者端末の詳細を示す図である。 コンテンツメタデータ作成部の機能を示す図である。 ファイル管理部、ファイル送受信部の機能を示す図である。 Peer属性管理部、PeerGUID管理部の機能を示す図である。 Peerリストの詳細、マスタランキング管理部の機能を示す図である。 Peerリストの詳細を示す図である。 ビザンチン合意処理依頼部(状態遷移)の機能を示す図である。 ビザンチン合意Peer選択部の機能を示す図である。 ビザンチン合意方式選択部(方式1)の機能を示す図である。 ビザンチン合意方式選択部(方式2)の機能を示す図である。 メタデータ転送決定部の機能を示す図である。 メタデータ転送時間計測部の機能を示す図である。 ビザンチン合意実行部、ビザンチン合意処理時間計測部の機能を示す図である。 コンテンツ検索部の機能を示す図である。
符号の説明
1,2 利用者端末
10 伝達ネットワーク
12 アプリケーション
13 ビザンチン合意処理装置
14 P2Pファイル転送装置
15 P2P通信装置
16 2次記憶装置
1311 Peer属性管理部
1312 PeerGUID管理部
1321 ファイル送受信部
1322 コンテンツメタデータ作成部
1323 メタデータ転送時間計測部
1324 メタデータ転送時間管理部
1331 メタデータ検索部
1332 ビザンチン合意処理依頼部
1333 コンテンツ検索部
1334 Peerリスト作成部
1340 ファイル管理部
1351 ビザンチン合意実行部
1352 Peerランキング管理部
1353 ビザンチン合意Peer選択部
1354 ビザンチン合意処理時間計測部
1355 ビザンチン合意方式選択部
1356 メタデータ転送決定部
1357 マスタランキング管理部
1361 コンテンツ
13611 実データ
13612 コンテンツ関連情報
1362 メタデータ
13621 ハッシュ化されたコンテンツ
13622 コンテンツ関連情報
1363 Peerリスト
1364 Peerランキングリスト
1365 選出ビザンチン合意Peerリスト
1366 マスタPeer決定ランキングリスト

Claims (5)

  1. 複数の端末が自律分散協調により任意の情報、ファイルデータを送受信するP2Pネットワーク上に接続された端末間でファイル共有を行なうシステムにおいて、ファイルデータの正当性を保障する検証データを持つメタデータのビザンチン合意アルゴリズムの応答を高速に行なえると予測される端末をPeerランキングリストとして保持・管理し、コンテンツ利用時、該Peerランキングリストに保持されている、該メタデータをすでに保持しているか、メタデータの再配置を行ない保持することが可能な複数端末の中から端末を選択し、選択された端末でビザンチン合意アルゴリズムを行なうことを特徴とするP2P環境におけるビザンチン耐故障ファイル共有の応答高速化方法。
  2. コンテンツ利用を要求する端末が、前記メタデータを持つ端末の一覧とビザンチン耐故障数を記載したPeerリストを生成し、該Peerリストの端末の中からビザンチン合意を行なうグループのマスタを一端末決定し、該マスタ端末にPeerリストを送付する、請求項1に記載の方法。
  3. コンテンツ利用を要求する端末が、
    前記マスタ端末にPeerリストを送付し、ビザンチン合意をビザンチングループで行ない、ビザンチングループから応答が返却されるまでの応答時間をPeerリスト送付端末上において計測し、
    前記ビザンチン合意の応答時間の計測により得られた時間により、マスタ端末の応答時間を記述することと、応答時間順に各端末を整列し記述するマスタPeer決定ランキングリストを生成し、
    前記Peerリストの端末の中からビザンチン合意を行なうグループのマスタを、前記マスタPeer決定ランキングリストの上位の端末から選択し、該マスタ端末に前記Peerリストを送付し、
    前記メタデータの複製を持つ端末間でビザンチン合意を行なうときに、各端末間で行なうビザンチン合意処理の応答時間を前記マスタ端末により計測、またはレプリカにより計測し、
    前記ビザンチン合意処理の応答時間の計測により得られた処理性能により、端末毎に処理性能を記述し、処理性能順に各端末を整列し記述するPeerランキングリストを生成し、
    前記Peerランキングリストを用いることにより、ビザンチン合意実行前において、より高速にビザンチン合意を処理可能と推定できる端末を選択し、選出ビザンチン合意リストを生成し、
    前記選出ビザンチン合意リストはビザンチン合意を行なうグループの端末に送信し、選出ビザンチン合意リストを受信した端末によりビザンチン合意を行なう、
    請求項2に記載の方法。
  4. 前記選出ビザンチン合意リストを受信した端末はビザンチン合意を行なうメタデータを保持していない場合、前記Peerリストに記載されている端末からメタデータを転送し、
    前記Peerリストとメタデータ転送済み端末を用いることにより、ビザンチン合意実行前において、より高速にビザンチン合意を処理可能と推定できる端末を選択し、前記選出ビザンチン合意リストを生成し、
    前記メタデータの転送を行なうときに、メタデータの転送処理性能を計測し、
    前記メタデータの転送処理性能の計測により得られた処理性能により、端末毎に処理性能を記述することと処理性能順に各端末を整列し記述するメタデータ転送処理性能リストを生成し、
    前記メタデータ転送処理性能リストを用いることにより、メタデータの転送実行前において、より高速にメタデータの転送を処理可能と推定できる端末を選択しメタデータの転送を行なう、請求項2に記載の方法。
  5. 請求項3と請求項4に記載されている選出ビザンチン合意リストの生成により推定される各々のビザンチン合意処理性能から、より高速にビザンチン合意を処理可能と推定できる方法を選択する、請求項1に記載の方法。
JP2004292729A 2004-10-05 2004-10-05 P2p環境におけるビザンチン耐故障ファイル共有の応答高速化方法 Pending JP2006107118A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004292729A JP2006107118A (ja) 2004-10-05 2004-10-05 P2p環境におけるビザンチン耐故障ファイル共有の応答高速化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004292729A JP2006107118A (ja) 2004-10-05 2004-10-05 P2p環境におけるビザンチン耐故障ファイル共有の応答高速化方法

Publications (1)

Publication Number Publication Date
JP2006107118A true JP2006107118A (ja) 2006-04-20

Family

ID=36376787

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004292729A Pending JP2006107118A (ja) 2004-10-05 2004-10-05 P2p環境におけるビザンチン耐故障ファイル共有の応答高速化方法

Country Status (1)

Country Link
JP (1) JP2006107118A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101430237B1 (ko) * 2008-03-10 2014-08-18 주식회사 케이티 피어 투 피어 통신에서의 피어 선정 방법 및 그 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101430237B1 (ko) * 2008-03-10 2014-08-18 주식회사 케이티 피어 투 피어 통신에서의 피어 선정 방법 및 그 시스템

Similar Documents

Publication Publication Date Title
CN109189751B (zh) 基于区块链的数据同步方法及终端设备
JP4837929B2 (ja) 動的ピアツーピア環境における相互排除技法
JP5826287B2 (ja) データ同期化
Monga et al. ElfStore: A resilient data storage service for federated edge and fog resources
US7490140B2 (en) Peer data transfer orchestration
US20060224687A1 (en) Method and apparatus for offline cooperative file distribution using cache nodes
KR20120018178A (ko) 객체 저장부들의 네트워크상의 스웜-기반의 동기화
US20110153737A1 (en) Method and apparatus for decomposing a peer-to-peer network and using a decomposed peer-to-peer network
US20140059315A1 (en) Computer system, data management method and data management program
Yu et al. Granary: A sharing oriented distributed storage system
US7979490B2 (en) Method for combatting the illicit distribution of protected material and computer system for carrying out said method
GB2500348B (en) Validation of access to a shared data record subject to read and write access by multiple requesters
CN115695049B (zh) 一种cdn元数据分发方法及装置
JP2005063374A (ja) データ管理方法、データ管理装置、およびそのためのプログラムならびに記録媒体。
JP2008269141A (ja) オーバレイ検索装置、オーバレイ検索システム、オーバレイ検索方法およびオーバレイ検索用プログラム
JP2006107118A (ja) P2p環境におけるビザンチン耐故障ファイル共有の応答高速化方法
WO2012046585A1 (ja) 分散ストレージシステム、その制御方法、およびプログラム
Sun et al. A lightweight data location service for nondeterministic exascale storage systems
Garewal et al. The helium network
US20200045105A1 (en) Group leader role queries
Wang et al. ASDF: An autonomous and scalable distributed file system
Dewan et al. Julunga: A new large-scale distributed read-write file storage system for cloud computing environments
Sacha et al. A service-oriented peer-to-peer architecture for a digital ecosystem
Seára et al. Extending OAI-PMH over structured P2P networks for digital preservation
Gu et al. Dynamic replica placement and location strategies for data grid