JP2005071247A - 意味情報ネットワークを用いたビザンチン耐故障ファイル共有システム及びその端末装置 - Google Patents

意味情報ネットワークを用いたビザンチン耐故障ファイル共有システム及びその端末装置 Download PDF

Info

Publication number
JP2005071247A
JP2005071247A JP2003303064A JP2003303064A JP2005071247A JP 2005071247 A JP2005071247 A JP 2005071247A JP 2003303064 A JP2003303064 A JP 2003303064A JP 2003303064 A JP2003303064 A JP 2003303064A JP 2005071247 A JP2005071247 A JP 2005071247A
Authority
JP
Japan
Prior art keywords
file
terminal device
files
byzantine
network
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
JP2003303064A
Other languages
English (en)
Inventor
Mikio Maeda
幹夫 前田
Ryoichi Ono
亮一 小野
Hiroyuki Nakamura
宏之 中村
Sumio Miyazaki
純生 宮崎
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 JP2003303064A priority Critical patent/JP2005071247A/ja
Publication of JP2005071247A publication Critical patent/JP2005071247A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】 意味情報ネットワークにおいて、ファイル内容の改竄に対する耐故障性を保証し、複数の端末装置が同時に終了した場合でも継続してファイル内容を保証することが可能なファイル共有システム、端末装置、ファイル共有方法及びファイル共有プログラムを提供する。
【解決手段】 端末装置に実装するファイル共有アプリケーションプログラム3011は、ユーザ41,42が入力操作する情報を受信するサービスエンティティ3012、ファイル操作要求のパラメータの内容をチェックするAPI処理部3043、ファイル単位にオープン/リード/ライトを行うファイル管理機能部3041、意味情報ネットワーク20内に分散配備されたファイルの内容を照合して多数決論理によりその内容を保証するビザンチン合意処理部3042、及び意味情報ネットワーク20内に分散配備されたファイルの一貫性を保証する排他制御機能部3044を備える。
【選択図】 図2

Description

本発明は、例えばLANやインターネット網等の伝送媒体を介して複数の端末装置がファイルを共有するシステムに関し、特に、セキュリティホール・ウイルス等により共有ファイルが破損するようなビサンチン故障(改竄)に対して耐故障性を有し、また当該ファイル共有システムを構成する端末装置が停止した場合においても継続的にビザンチン耐故障性を保証するファイル共有システム、端末装置、ファイル共有方法、及びファイル共有プログラムに関するものである。
従来のファイル共有システムは、中央のサーバシステムが共有するファイルを集中管理する方法(以下、「サーバ型ファイル共有方法」という。)と、サーバが共有するファイルを管理するのではなく、端末装置が分散したファイルを共有ファイルとして管理する方法(以下、「サーバレス型ファイル共有方法」という。)とがある(特許文献1参照)。
前者のサーバ型ファイル共有方法は、サーバシステムが共有ファイルを集中管理するため、以下の問題があった。
(1)クライアント端末(端末装置)数の増加に伴って、処理負荷がサーバシステムに集中する。
(2)サーバシステムの故障により、共有ファイル自体が破損する場合がある。
(3)サーバシステムの維持管理・運用にコストがかかる。
一方、後者のサーバレス型ファイル共有方法は、前者のサーバ型ファイル共有方法により生じる問題を解決するのに有効であるが、ファイル共有システムの構成要素が変化(追加・削除)する環境下におけるファイルの信頼性を保証する方法については明確に示されていない。
ところで、後者のサーバレス型ファイル共有方法を用いたシステム(サーバを用いないシステム)として、ファイル公開者がファイル情報を配布すべき最適なユーザを特定することができ、またエンドユーザが最適な情報を特定することができる意味情報ネットワークシステムが公開されている(非特許文献1参照)。同様に、サーバを用いないシステムについて、本願出願時に未公開である先行出願(特願2003−42743号公報、特願2003−42909号公報)に記載されている。しかし、これらの技術は以下の課題に言及していない。
(1)近年のインターネット環境では、悪意のプログラムや操作により共有ファイルの改竄が発生し、ファイル内容に対する信頼性を保証できない。
(2)上記の改竄された共有ファイルを検出する技法として、複数の複製ファイルをネットワーク内に配備し、互いのファイル内容を照合し多数決をとるビザンチン傷害(非特許文献2参照)に対応するビザンチン合意アルゴリズムが知られている。しかし、意味情報ネットワークのような端末装置(peer)が自由に参加及び離脱を行うネットワークにおいて、継続したビザンチン合意処理を行うことができない。
特開2002−358226号公報(段落〔0006〕〜〔0008〕) 星合隆成、「意味情報ネットワークSIONetにおけるエンティティのオンライン増減設機構」、電子情報通信学会論文誌、電子情報通信学会、2002年2月、B,Vol.J85・No.2、p.180−199 "ビザンチン傷害"、[online]、[平成15年8月22日検索]、インターネット、<URL:http://www.dd.iij4u.or.jp/~okuyamak/Information/Byzantine_faults.html>
上記のように、従来のサーバ型ファイル共有方法では、共有するファイルの数及び端末装置の数が増加するに従い、これらに比例して大規模なサーバを設置しなければならない。このため、コストがかかると共に、リアルタイムに対応することが困難になる等の問題があった。一方、従来のサーバを用いない意味情報ネットワークにおけるサーバレス型ファイル共有方法では、上記のサーバ型ファイル共有方法による問題を解決することは可能であるが、ファイル内容の改竄が発生した場合にファイル内容を保証することができないという問題があった。また、複数の端末装置が同時に終了した場合に最新のファイルを継続して共有することができないという問題もあった。
本発明は、上記の問題を解決するためになされたものであり、その目的は、ファイル内容の改竄に対する耐故障性を保証し、かつ複数の端末装置が同時に終了した場合においても継続してファイル内容を保証することが可能なファイル共有システム、端末装置、ファイル共有方法及びファイル共有プログラムを提供することにある。
上記の課題を解決するために、本発明は、参加または離脱可能な意味情報ネットワークに接続される複数の端末装置を備え、該端末装置がビザンチン合意処理を行うことによりファイルの内容を保証するビザンチン耐故障ファイルを共有する場合に、前記ネットワークから離脱する端末装置の数をαとし、ビザンチン合意処理に用いるパラメータとしての故障数をfとしたときに、前記複数の端末装置のうちの一の端末装置が、(3f+1+α)個のファイルを複製し、該複製数と同じ数の他の端末装置に前記複製したファイルをそれぞれ分散配備し、前記一の端末装置及び他の端末装置が、前記ファイルを共有ファイルとしてそれぞれ管理することを特徴とする。これにより、複数の端末装置が同時に離脱した場合であっても、継続したビザンチン合意処理を行うことが可能となり、ファイル内容の正常性を検証することが可能となる(以上、請求項1,2,6,10,11)。
また、本発明は、端末装置が、該端末装置を操作するユーザによるファイルの参照操作を検出し、該検出に基づいて前記ファイルを管理している他の端末装置からファイルを読み出し、ビザンチン合意処理により前記ファイルの内容の正常性をチェックし、該ファイルの内容を前記ユーザに通知することを特徴とする。これにより、ファイル改竄の検出排除が可能となる(以上、請求項3,7)。
また、本発明は、端末装置が、前記ファイルを管理している他の端末装置からファイルを読み出し、ビザンチン合意処理により前記ファイルの内容の正常性をチェックし、正常でないと判断した場合には、前記端末装置のIDを含む切り離しイベントを前記ファイルを管理している他の端末装置に配信し、当該他の端末装置が、前記IDの端末装置とのネットワークにおけるリンクを解放することを特徴とする。これにより、ファイル改竄を検出した場合に、切り離しイベントをブロードキャストして異常な端末装置の存在を通知してその端末装置を切り離すようにするから、異常な端末装置の影響を排除することが可能となる。(以上、請求項4,8)
また、本発明は、端末装置が、ネットワーク内に存在する前記ファイルの数を定期的にチェックし、該ファイルの数がビザンチン合意処理に必要な数を下回っていた場合には、端末装置を選定し、該選定した端末装置に追加イベントを配信するとともに前記ファイルを複製して分散配置し、前記選定された端末装置が、前記ファイルを共有ファイルとして管理することを特徴とする。これにより、ビザンチン合意条件を維持することが可能となる。また、アクセス頻度の少ないファイルについても正常性の保証確率を向上させることが可能となる(以上、請求項5,9)。
本発明の効果は以下の通りである。
(1)ファイルを管理するサーバを設置する必要がないから、サーバシステムの設備・維持管理コストを排除したファイル管理システムを構築することができる。
(2)ネットワークから離脱する端末装置の数(α)に従ってファイルの複製数が決定するから、ネットワークのアクセス効率及び要求する信頼性を考慮して、ネットワーク内に保持するファイルの複製数を制御することができる。
(3)複製されたファイルの内容を照合してビザンチン合意処理を行うから、ファイルの内容の信頼性を保証できる。
(4)ファイルの複製数を(3f+1+α)としネットワーク内に分散配置したから、複数の端末装置が同時に離脱した場合においてもビザンチン合意処理を継続することができる。
以下、本発明の実施の形態について図面を参照して詳細に説明する。
図1は、本発明の実施の形態に係るファイル共有システムを説明する接続図である。本ファイル共有システムは、IP等の伝達ネットワーク10と、意味情報ネットワーク(SIONet(Semantic Information−Oriented Network))20と、ファイル共有システムの第1のユーザ41が操作するPC等の端末装置31と、ファイル共有システムの第2のユーザ42が操作するPC等の端末装置32とを備えている。端末装置31は、共有ファイル313が格納される2次記憶装置312を備えており、ファイル共有アプリケーションプログラム311を実装する。また、端末装置32は、共有ファイル323が格納される2次記憶装置322を備えており、ファイル共有アプリケーションプログラム321を実装する。
端末装置31及び端末装置32は、伝達ネットワーク10により物理的に接続され、ファイル共有アプリケーションプログラム311,321及び意味情報ネットワーク20により論理的に接続される。端末装置31,32は、SIONetと共同して機能するプログラム及びSIONetを構築するSI−SWやSI−R等のプログラムをインストールして、自身の端末装置にイベントプレース(EP)を生成するか、またはSIONetと共同して機能するプログラムをインストールし、他のネットワーク上に存在するイベントプレース(EP)へアクセスしてセッションまたはシェアードリンクを確立することにより、意味情報ネットワーク20に接続されるものとする。尚、端末装置31,32を説明上分けて表記しているが、その構成が異なることを意味するものではない。以下、いずれの端末装置31,32であるかこだわらない場合は、端末装置30として説明する。
ここで、本発明は、共有ファイル313,323の内容の耐故障性を保証し、かつ複数の端末装置31,32等(図示しない端末装置も含む)が同時に終了した場合においても共有ファイル313,323の内容を保証することを特徴とする。これらの特徴について、図2〜図11を参照して詳細に説明する。
図2は、図1に示した端末装置31,32(端末装置30)におけるファイル共有アプリケーションプログラムの構成を、ソフトウェアの観点から説明する機能ブロック図である。端末装置30のソフトウェアは、UNIX(登録商標)やウインドウズ(登録商標)等のOS302、SIONet対応部303、ミドルウェア部304及びAPL(A Programming Language)部301から構成される。SIONet対応部303は、OS302上にSIONetと共同して機能するプログラム及びSIONetを構築するためのプログラムをインストールすることにより、自身の端末装置にイベントプレース(EP)を生成するか、またはSIONetと共同して機能するプログラムをインストールし他のネットワーク上に存在するイベントプレース(EP)にアクセスしてセッションまたはシェアードリンクを確立することにより、意味情報ネットワーク20に接続する機能を有する。
ファイル共有アプリケーションプログラム3011は、サービスエンティティ(SE)3012、ファイル管理機能部3041、ビザンチン合意処理部3042、API(Application Programming Interface)処理部3043及び排他制御機能部3044を備え、サービスエンティティ3012はAPL部301に、ファイル管理機能部3041、ビザンチン合意処理部3042、API処理部3043及び排他制御機能部3044はミドルウェア部304にインストールされる。サービスエンティティ3012は、ファイル共有システムのユーザが入力操作する情報の受信及び画面表示等の信号の入出力を行う。API処理部3043は、サービスエンティティ3012からファイル操作要求を受信し、そのパラメータの内容をチェックする。ファイル管理機能部3041は、API処理部3043が受信したファイル操作要求に従って、ファイル単位にオープン(OPEN)/リード(READ)/ライト(WRITE)を行う。ビザンチン合意処理部3042は、ファイル(共有ファイル)へのリード/ライト時に、意味情報ネットワーク20内に分散配備されたファイル(共有ファイル)の内容を照合して、多数決論理によりリードデータの内容及びライトデータの内容を保証する。排他制御機能部3044は、意味情報ネットワーク20内に分散配備されたファイルの一貫性を保証するために排他制御を行う。サービスエンティティ3012、ファイル管理機能部3041、ビザンチン合意処理部3042、API処理部3043及び排他制御機能部3044により、アクセス効率や信頼性を考慮して意味情報ネットワーク20内にファイルを分散配備可能とし、かつリード/ライト時に当該ファイルの改竄を検出可能とすることで、ファイル内容自体の信頼性を確保する。
図3は、ファイル共有システムの第1のユーザ41または第2のユーザ42が、新規にファイルを共有するための操作を行う場合に、端末装置30のサービスエンティティ3012が前準備として実行するファイルオープン処理を説明するフロー図である。サービスエンティティ3012は、新規ファイルを生成する場合、固定値またはユーザが入力した入力値に従い、要求する信頼性(ファイルの複製数)及びファイル名をパラメータとして指定し、ファイルオープン要求をAPI処理部3043に送信する。API処理部3043は、ファイルオープン要求を受信すると、パラメータの内容に誤りがないかをチェックし(ステップS31)、ファイルオープン処理依頼をファイル管理機能部3041に送信する。ファイル管理機能部3041は、ファイルオープン処理依頼を受信すると、メモリ等の1次記憶装置またはハードディスク等の2次記憶装置にファイル管理情報を生成して(ステップS32)ファイルを生成する。そして、ファイル管理機能部3041は、ファイル共有システム全体のロックを行うために、排他制御機能部3044を経由して全端末装置にロックオーダー(ロックイベント)を配信する(ステップS33)。また、ファイル管理機能部3041は、当該ロックオーダーに対して応答した端末装置のIDリスト(PeerIDのリスト)を作成し(ステップS34)、当該IDリストからサービスエンティティ3012が要求した信頼性(ファイルの複製数)を満足する数分の端末装置を選定しその数分のファイルを複製し、選定した端末装置にファイル生成イベントとしてそれぞれ配信する(ステップS35)。また、ファイル管理機能部3041は、各端末装置においてファイル管理情報及びファイルの生成が完了した段階で、ファイル共有システム全体のロックを解除するために、排他制御機能部3044を経由して全端末装置にロック解除オーダー(ロック解除イベント)を配信する(ステップS36)。
図4は、図3に示したファイル生成イベントを受信する端末装置におけるファイルオープン処理を説明するフロー図である。受信側の端末装置のAPI処理部3043が意味情報ネットワーク20を介してファイル生成イベントを受信すると、ファイル管理機能部3041は、ファイル生成イベントの受信を契機に、2次記憶装置にファイル管理情報を生成し(ステップS41)、OS302のオープンシステムコール(ステップS42)等を用いて2次記憶装置にファイルを生成する(ステップS42)。
図5は、図3及び図4に示したファイルオープン処理により生成されたファイルが各端末装置に分散配備されている様子を示す模式図である。図5に、サービスエンティティ3012が信頼性(ファイルの複製数)のパラメータの改竄発生ファイル数を1に指定した場合、4以上の端末装置にファイルの複製が生成される例を示す。ファイルオープン処理を行った端末装置がPeer#1であり、Peer#1の端末装置からPeer#2〜#5の端末装置にファイル生成イベントが配信され、Peer#2〜#5の端末装置にファイルの複製が生成されている。ビザンチン合意処理部3042が実行するビザンチン合意のアルゴリズムにおいては、改竄発生ファイル数(改竄数、故障数)をfとした場合に、意味情報ネットワーク20内に複製数として(3f+1)個以上のファイルを配備する必要がある。すなわち、意味情報ネットワーク20内に、(3f+1)個以上の複製ファイルが存在する場合には、ビサンチン耐故障性を保証し、ファイルの内容を保証することができる。しかし、意味情報ネットワーク20のような自由な参加及び離脱が発生するネットワークにおいては、複数の端末装置が同時に離脱する場合が想定される。この場合、複数の端末装置が同時に離脱すると、意味情報ネットワーク20内の複製ファイルの数は、(3f+1)よりも少ない数になるため、ビザンチン耐故障性を保証できず、ファイルの内容を十分に保証することができない。従って、意味情報ネットワーク20から同時に離脱する可能性のある最大の端末装置の数を考慮した数のファイルを複製しておく必要がある。つまり、離脱する端末装置の数をαとした場合に、(3f+1+α)個のファイルの複製を意味情報ネットワーク20内に分散配備しておくことにより、ビサンチン耐故障性を保証し、ファイルの内容を保証することができる。この場合、ファイル管理機能部3041は、αの値を固定データとして管理するようにしてもよいし、上記のようにサービスエンティティ3012が指定するパラメータとしてもよい。
図6は、図3〜図5に示したファイル管理機能部3041が生成するファイル管理情報の例を説明する構成図である。図6に示すように、ファイル管理情報は、ファイル名、パス名、最大改竄ファイル数、及び複製管理する端末装置を特定する情報である複製管理PeerIDから構成される。ここで、最大改竄ファイル数は上述したfの値である。また、複製管理PeerIDは、図5の例においては、複製管理PeerPeerID=Peer#2,Peer#3,Peer#4,Peer#5が設定されている。また、この複製管理PeerIDの最大複製可能数は、ファイル管理機能部3041の定数データとして保持される。
図7は、図3及び図4に示したファイルオープン処理により意味情報ネットワーク20内に分散配備されたファイルをリードする場合のファイルリード処理を説明するフロー図である。ファイル共有システムの第1のユーザ41または第2のユーザ42が共有ファイルに対して参照の操作を行うと、サービスエンティティ3012は、当該操作を検出し、ファイル識別子、ファイルの先頭からの読み出し位置及びサイズをパラメータとして指定し、API処理部3043に読み出しを指示する。API処理部3043は、読み出しの指示を受信すると、指定されたパラメータをチェックし(ステップS71)、ファイル管理機能部3041に読み出しを依頼する。ファイル管理機能部3041は、読み出しの依頼を受信すると、図6に示したファイル管理情報に基づいて、意味情報ネットワーク20内に合意可能な複製数分のファイルが存在するか(ファイルの複製数がビザンチン合意条件(3f+1+α)を下回っていないか)否かをチェックする(ステップS72)。合意可能な複製数分のファイルが存在する場合(ファイルの複製数がビザンチン合意条件を下回っていない場合)は、ファイル共有システム全体のロックを行うために、排他制御機能部3044を経由して全端末装置にロックオーダー(ロックイベント)を配信し(ステップS73)、複製を管理している端末装置(ファイル管理情報の複製管理PeerIDに設定されているPeerIDの端末装置)から当該ファイルの内容の読み出しを行い(ステップS74)。そして、ビザンチン合意のアルゴリズムにより内容の正常性を確認し(ステップS75,S76)、ファイル管理機能部3041は、排他制御機能部3044を経由してロック解除イベントを配信後(ステップS77)、API処理部3043を経由してサービスエンティティ3012に読み出したデータを返送する。
ステップ72において、ファイル管理機能部3041が、ファイル管理情報に基づいて、合意可能な複製数分のファイルが存在しない(ファイルの複製数がビザンチン合意条件を下回っている)と判断した場合には、図11に示す追加フローに従って複製管理を行う端末装置の追加を行い、上記と同様の処理によりファイルの内容の正常性を確認する。そして、ファイル管理機能部3041は、排他制御機能部3044を経由してロック解除イベントを配信後(ステップS77)、API処理部3043を経由してサービスエンティティ3012に読み出したデータを返送する。尚、図11の追加フローの説明については後述する。
ステップ75及びステップ76において、ビザンチン合意処理部3042が、ビザンチン合意のアルゴリズムにより内容の正常性を確認した結果ファイルの異常を検出した場合には、当該異常が検出されたファイルを管理している端末装置のPeerIDを含む切り離しイベントを、意味情報ネットワーク20内の全端末装置に配信する。通知を受けた端末装置は、ファイル共有アプリケーションプログラムにより、当該PeerIDの端末装置とシェアードリンクを持つ場合は当該シェアードリンクを切断する。このとき、ファイルを複製管理している端末装置は、ファイル管理情報から、異常が検出されたファイルを管理している端末装置おPeerIDを削除する等してファイル管理情報を更新する。そして、ファイル管理機能部3041は、排他制御機能部3044を経由してロック解除イベントを配信する(ステップS77)。
図8は、ファイル管理情報変更イベントを送信する端末装置における正常離脱処理を説明するフロー図である。ファイル共有システムの第1のユーザ41または第2のユーザ42がファイル共有アプリケーションプログラム3011によるサービスの終了の操作を行うと、サービスエンティティ3012は、当該操作を検出し、API処理部3043を経由してファイル管理機能部3041に終了を指示する。ファイル管理機能部3041は、当該終了による離脱に伴ってファイル管理情報の変更を指示するファイル管理情報変更イベントを複製管理端末装置に配信し(ステップS81)、ファイル共有アプリケーションプログラム3011の終了処理を行う。このとき、ファイル管理情報及びファイルを削除する。
図9は、図8に示したファイル管理情報変更イベントを受信する端末装置における正常離脱処理を説明するフロー図である。端末装置がファイル管理情報変更イベントを受信したときに、意味情報ネットワーク20内に合意可能な複製数分のファイルが存在しない場合(ファイルの複製数がビザンチン合意条件(3f+1+α)を下回っている場合)が想定される。この場合、図11に示す追加フローに従って複製管理を行う端末装置の追加処理を実行する必要があるが、この追加処理を意味情報ネットワーク20内の複数の端末装置が同時に行わないようにしなければならない。追加処理が同時に行われると、ファイル管理情報変更イベントを受信した複数の端末装置が一斉に複製管理を行う端末装置の追加処理を行った結果、必要数以上のファイルが生成されてしまうからである。
このため、API処理部3043は、ファイル管理情報変更イベントを受信すると、当該イベントに設定されたあて先のPeerIDリスト内で、自身のPeerIDの数値が最大値であるか否かをチェックする(ステップS91)。自身のPeerIDの数値が最大値でない場合には、ファイル管理情報の更新を行う。一方、自身のPeerIDの数値が最大値である場合には、図11に示す追加フローに従って複製管理を行う端末装置の追加処理を実行し、ファイル管理情報の更新を行う。すなわち、ファイル管理情報変更イベントが配信された複数の端末装置のうちの、PeerIDの数値が最大値である端末装置が、図11に示す追加処理を実行する。
図10は、端末装置がハードウェア故障等により異常離脱する場合の異常離脱検出処理を説明するフロー図である。一定周期毎に起動するAPI処理部3043により、ファイル管理機能部3041は、ファイル管理情報に基づいて、意味情報ネットワーク20内に合意可能な複製数分のファイルが存在するか(ファイルの複製数がビザンチン合意条件(3f+1+α)を下回っていないか)否かをチェックする(ステップS101)。合意可能な複製数分のファイルが存在しない場合(ファイルの複製数がビザンチン合意条件を下回っている場合)は、図11に示す追加フローに従って複製管理を行う端末装置の追加処理を実行する。尚、API処理部3043が起動する周期は、ファイル毎に区別しない固定値として設定され保持されるようにしてもよいし、また、ファイルのアクセス頻度を考慮してファイル毎の可変値として設定され保持されるようにしてもよい。
また、アクセス頻度の少ないファイルが既に改竄されている可能性を考慮して、ビザンチン合意処理部3042は、上記の周期処理内において、複製を管理している端末装置(ファイル管理情報の複製管理PeerIDに設定されているPeerIDの端末装置)から当該ファイルの内容の読み出しを行い(ステップS102)、ビザンチン合意のアルゴリズムにより内容の正常性を確認する(ステップS103,S104)。ビザンチン合意のアルゴリズムにより内容の正常性を確認した結果ファイルの異常を検出した場合(ファイルの改竄を検出した場合)には、図7のステップ76に示したように切り離しイベントを配信する。
図11は、ファイルの複製数がビザンチン合意条件(3f+1+α)を下回っている等の場合に、複製管理を行う端末装置を追加する追加処理を説明するフロー図である。ファイル管理機能部3041は、一旦ファイル共有システム全体のロックを行うために、排他制御機能部3044を経由して全端末装置にロックオーダー(ロックイベント)を配信する。また、ロックオーダーに対して応答した端末装置のPeerIDを応答PeerIDリストに登録し、当該応答PeerIDリストから、ランダムにPeerIDを選択または最初に応答した端末装置であって先頭に登録されているそのPeerIDを選択し(ステップS111)、当該PeerIDの端末装置に対して複製追加依頼イベントを配信する(ステップS112)。複製追加依頼イベントを受信した端末装置は、図3に示したファイルオープン処理と同様の処理を実行し、ファイル管理情報及びファイルを生成する。そして、図11に示したファイル管理機能部3041は、ロック解除イベントを配信し、複製管理を行う端末装置を追加する処理を終了する。
以上、本発明の実施の形態を挙げて本発明を説明したが、本発明は上記の実施の形態に限定されるものではなく、本発明の思想から逸脱しない限りにおいて種々の変形が可能である。例えば、上記の実施の形態においては、図7に示したようにファイルをリードするタイミングまたは図10に示したように一定周期毎のタイミングにおいて、ファイルの複製数の存在をチェックしファイル内容を読み出してビサンチン合意処理を実行するようにしたが、ファイルをライトするタイミングにおいても同様の処理を実行するようにしてもよい。
尚、端末装置30〜32は、ファイル共有アプリケーションプログラム311,321,3011をサービスエンティティ3012、ファイル管理機能部3041、ビザンチン合意処理部3042、API処理部3043及び排他制御機能部3044により実行するためのソフトウェアを組み込んだコンピュータによってそれぞれ構成される。このソフトウェアは、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピィーディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
本発明の実施の形態に係るファイル共有システムを説明する接続図である。 ファイル共有アプリケーションプログラムの構成を説明する機能ブロック図である。 ファイル生成イベントを配信する端末装置におけるファイルオープン処理を説明するフロー図である。 ファイル生成イベントを受信する端末装置におけるファイルオープン処理を説明するフローズである。 ファイルオープン処理が完了した後のファイルの状態を説明する図である。 ファイル管理情報を説明する構成図である。 ファイルリード処理を説明するフロー図である。 ファイル管理情報変更イベントを配信する端末装置における正常離脱処理を説明するフロー図である。 ファイル管理情報変更イベントを受信する端末装置における正常離脱処理を説明するフロー図である。 異常離脱検出処理を説明するフロー図である。 複製管理を行う端末装置を追加する追加処理を説明するフロー図である。
符号の説明
10 伝達ネットワーク
20 意味情報ネットワーク(SIONet)
30〜32 端末装置
41,42 ユーザ
301 APL部
302 OS
303 SIONet対応部
304 ミドルウェア部
311,312,3011 ファイル共有アプリケーションプログラム
312,322 2次記憶装置
313,323 共有ファイル
3012 サービスエンティティ(SE)
3041 ファイル管理機能部
3042 ビザンチン合意処理部
3043 API処理部
3044 排他制御機能部

Claims (11)

  1. 参加または離脱可能なネットワークに接続される複数の端末装置を備え、該端末装置がビザンチン合意処理を行うことによりファイルの内容を保証するビザンチン耐故障ファイル共有システムであって、前記ネットワークから離脱する端末装置の数をαとし、ビザンチン合意処理に用いるパラメータとしての故障数をfとした場合に、前記複数の端末装置のうちの一の端末装置は、(3f+1+α)個のファイルを複製する機能と、該複製数と同じ数の他の端末装置に前記複製したファイルをそれぞれ分散配備する機能とを備え、前記一の端末装置及び他の端末装置は、前記ファイルを共有ファイルとして管理する機能をそれぞれ備えることを特徴とするファイル共有システム。
  2. 参加または離脱可能な複数の端末装置が接続されるネットワークの下で、ビザンチン合意処理を行うことによりファイルの内容を保証するビザンチン耐故障ファイル共有端末装置であって、前記ネットワークから離脱する端末装置の数をαとし、ビザンチン合意処理に用いるパラメータとしての故障数をfとした場合に、(3f+1+α)個のファイルを複製する機能と、該複製数と同じ数の他の端末装置に前記複製したファイルをそれぞれ分散配備する機能と、前記ファイルを共有ファイルとして管理する機能とを備えることを特徴とするファイル共有端末装置。
  3. 請求項2に記載のファイル共有端末装置において、該端末装置を操作するユーザによるファイル参照の操作を検出する機能と、該検出に基づいて前記ファイルを管理している他の端末装置からファイルを読み出す機能と、ビザンチン合意処理により前記ファイルの内容の正常性をチェックする機能と、該ファイルの内容を前記ユーザに通知する機能とを備えることを特徴とするファイル共有端末装置。
  4. 請求項2に記載のファイル共有端末装置において、前記ファイルを管理している他の端末装置からファイルを読み出す機能と、ビザンチン合意処理により前記ファイルの内容の正常性をチェックする機能と、前記正常性をチェックした結果、正常でないと判断した場合には、自らの端末装置のIDを含む切り離しイベントを前記他の端末装置に配信し、当該他の端末装置に前記IDの端末装置とのネットワークにおけるリンクを解放させる機能を備えることを特徴とするファイル共有端末装置。
  5. 請求項2から4のいずれか一項に記載のファイル共有端末装置において、ネットワーク内に存在する前記ファイルの数をチェックする機能と、該ファイルの数がビザンチン合意処理に必要な数を下回っていた場合には、端末装置を選定し、該端末装置に追加イベントを配信するとともに前記ファイルを複製して分散配置し、前記ファイルを共有ファイルとして管理させる機能とを備えることを特徴とするビザンチン耐故障ファイル共有端末装置。
  6. 参加または離脱可能なネットワークに接続される複数の端末装置を備え、該端末装置がビザンチン合意処理を行うことによりファイルの内容を保証するビザンチン耐故障ファイル共有方法であって、前記ネットワークから離脱する端末装置の数をαとし、ビザンチン合意処理に用いるパラメータとしての故障数をfとした場合に、前記複数の端末装置のうちの一の端末装置が、(3f+1+α)個のファイルを複製し、該複製数と同じ数の他の端末装置に前記複製したファイルをそれぞれ分散配備し、前記一の端末装置及び他の端末装置が、前記ファイルを共有ファイルとしてそれぞれ管理することを特徴とするファイル共有方法。
  7. 請求項6に記載のファイル共有方法において、前記ファイルを管理している一の端末装置が、該端末装置を操作するユーザによるファイル参照の操作を検出し、該検出に基づいて前記ファイルを管理している他の端末装置からファイルを読み出し、ビザンチン合意処理により前記ファイルの内容の正常性をチェックし、該ファイルの内容を前記ユーザに通知することを特徴とするファイル共有方法。
  8. 請求項6に記載のファイル共有方法において、前記ファイルを管理している一の端末装置が、前記ファイルを管理している他の端末装置からファイルを読み出し、ビザンチン合意処理により前記ファイルの内容の正常性をチェックし、正常でないと判断した場合には、前記一の端末装置のIDを含む切り離しイベントを前記ファイルを管理している他の端末装置に配信し、当該他の端末装置が、前記IDの端末装置とのネットワークにおけるリンクを解放することを特徴とするファイル共有方法。
  9. 請求項6から8のいずれか一項に記載のファイル共有方法において、前記ファイルを管理している端末装置が、ネットワーク内に存在する前記ファイルの数を定期的にチェックし、該ファイルの数がビザンチン合意処理に必要な数を下回っていた場合には、端末装置を選定し、該選定した端末装置に追加イベントを配信するとともに前記ファイルを複製して分散配置し、前記選定された端末装置が、前記ファイルを共有ファイルとして管理することを特徴とするビザンチン耐故障ファイル共有方法。
  10. 複数の端末装置が接続され、参加または離脱可能なネットワークにおける前記端末装置を構成するコンピュータに、ビザンチン合意処理を行うことによりファイルの内容を保証する処理を実行させるビザンチン耐故障ファイル共有プログラムであって、前記ネットワークから離脱する端末装置の数をαとし、ビザンチン合意処理に用いるパラメータとしての故障数をfとした場合に、前記コンピュータに、(3f+1+α)個のファイルを複製する処理と、ネットワークを介して前記複製数と同じ数の他の端末装置に前記複製したファイルをそれぞれ分散配備する処理と、前記ファイルを管理する処理とを実行させることを特徴とするファイル共有プログラム。
  11. 請求項10に記載のファイル共有プログラムを記録した記録媒体。
JP2003303064A 2003-08-27 2003-08-27 意味情報ネットワークを用いたビザンチン耐故障ファイル共有システム及びその端末装置 Pending JP2005071247A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003303064A JP2005071247A (ja) 2003-08-27 2003-08-27 意味情報ネットワークを用いたビザンチン耐故障ファイル共有システム及びその端末装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003303064A JP2005071247A (ja) 2003-08-27 2003-08-27 意味情報ネットワークを用いたビザンチン耐故障ファイル共有システム及びその端末装置

Publications (1)

Publication Number Publication Date
JP2005071247A true JP2005071247A (ja) 2005-03-17

Family

ID=34407170

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003303064A Pending JP2005071247A (ja) 2003-08-27 2003-08-27 意味情報ネットワークを用いたビザンチン耐故障ファイル共有システム及びその端末装置

Country Status (1)

Country Link
JP (1) JP2005071247A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006277673A (ja) * 2005-03-30 2006-10-12 Brother Ind Ltd 配信システム、配信元装置及び配信元処理方法、管理情報記録装置、管理情報処理装置及び管理情報処理方法、配信元処理用プログラム及び管理情報処理用プログラム並びに情報記録媒体
JP2008204206A (ja) * 2007-02-20 2008-09-04 Nec Corp データ分散格納システム及びデータ分散方法、それに用いる装置並びにそのプログラム
JP2010086271A (ja) * 2008-09-30 2010-04-15 Fujitsu Ltd 情報処理装置、情報処理システム、方法、およびプログラム
JP2011186897A (ja) * 2010-03-10 2011-09-22 Ricoh Co Ltd 画像形成装置
JPWO2015140942A1 (ja) * 2014-03-18 2017-04-06 株式会社東芝 情報処理システム、サーバ装置、情報処理方法およびプログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006277673A (ja) * 2005-03-30 2006-10-12 Brother Ind Ltd 配信システム、配信元装置及び配信元処理方法、管理情報記録装置、管理情報処理装置及び管理情報処理方法、配信元処理用プログラム及び管理情報処理用プログラム並びに情報記録媒体
JP4670433B2 (ja) * 2005-03-30 2011-04-13 ブラザー工業株式会社 配信システム、ノード装置、情報処理方法及びノード装置用プログラム
JP2008204206A (ja) * 2007-02-20 2008-09-04 Nec Corp データ分散格納システム及びデータ分散方法、それに用いる装置並びにそのプログラム
JP2010086271A (ja) * 2008-09-30 2010-04-15 Fujitsu Ltd 情報処理装置、情報処理システム、方法、およびプログラム
JP2011186897A (ja) * 2010-03-10 2011-09-22 Ricoh Co Ltd 画像形成装置
JPWO2015140942A1 (ja) * 2014-03-18 2017-04-06 株式会社東芝 情報処理システム、サーバ装置、情報処理方法およびプログラム
US10303565B2 (en) 2014-03-18 2019-05-28 Kabushiki Kaisha Toshiba Multicasting system voting on server data

Similar Documents

Publication Publication Date Title
CN111183625B (zh) 用于在区块链网络中删除节点的系统和方法
CN103226502B (zh) 一种数据灾备控制系统及数据恢复方法
EP2718816B1 (en) Recovery service location for a service
TW497071B (en) Method and apparatus for managing clustered computer systems
US7370336B2 (en) Distributed computing infrastructure including small peer-to-peer applications
US7793060B2 (en) System method and circuit for differential mirroring of data
US8775387B2 (en) Methods and systems for validating accessibility and currency of replicated data
CN101322116B (zh) 资源新鲜度和复制
US20180308091A1 (en) Fairness preserving byzantine agreements
US8856091B2 (en) Method and apparatus for sequencing transactions globally in distributed database cluster
US20030120751A1 (en) System and method for providing virtual network attached storage using excess distributed storage capacity
US20070124734A1 (en) Maintaining coherency in a symbiotic computing system and method of operation thereof
JP2005196683A (ja) 情報処理システム、情報処理装置、及び情報処理システムの制御方法
JP2009508191A (ja) Id保存を介するエンタープライズサーババージョン移行
JP5444178B2 (ja) バックアップ・リストア処理装置とバックアップ・リストア処理方法およびプログラム
CN111327467A (zh) 一种服务器系统及其容灾备份方法和相关设备
CN103597463A (zh) 恢复服务的自动配置
JP2007299284A (ja) ログ収集システム、クライアント装置、及びログ収集エージェント装置
US11550677B2 (en) Client-less database system recovery
JP2005071247A (ja) 意味情報ネットワークを用いたビザンチン耐故障ファイル共有システム及びその端末装置
JP2005071238A (ja) ファイル共有システム及び端末装置
KR20180073003A (ko) 오브젝트에 대한 동기화 관리 장치 및 방법
CN111010448B (zh) 一种分布式消息系统和数据中心dc
Pearl et al. High Availability and Disaster Recovery
Frank et al. Data Stream handling in the LHCb experiment