欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于p2p的容災(zāi)備份方法

文檔序號:7702675閱讀:186來源:國知局
專利名稱:基于p2p的容災(zāi)備份方法
技術(shù)領(lǐng)域
本發(fā)明屬于災(zāi)備領(lǐng)域,具體涉及一種利用P2P (端到端,Peer toPeer)技術(shù),對電子信息和服務(wù)進行容災(zāi)備份的方法。
背景技術(shù)
隨著信息技術(shù)的不斷發(fā)展,越來越多的企事業(yè)單位用計算機系統(tǒng)進行快速的數(shù)據(jù)存儲和處理,并對單位內(nèi)外提供應(yīng)用和服務(wù)。這使得企事業(yè)單位的正常運行越來越依賴于計算機系統(tǒng), 一旦遇到能夠造成計算機系統(tǒng)癱瘓的不可知災(zāi)難,整個單位就會陷入癱瘓。例如美國"9.11"事件發(fā)生后,世貿(mào)大廈內(nèi)有超過80%的公司因為數(shù)據(jù)丟失和
服務(wù)中斷而倒閉。
容災(zāi)備份,簡稱災(zāi)備,是避免這種情況發(fā)生的有效方法。所謂災(zāi)備是指在災(zāi)難發(fā)生吋,能夠保證數(shù)據(jù)盡量少丟失,系統(tǒng)不間斷運行或者盡快恢復(fù)正常運行。災(zāi)備一般是通過數(shù)據(jù)或者硬件的冗余來實現(xiàn)。目前常用的災(zāi)備系統(tǒng)有一個共同的特點備份系統(tǒng)與正常運行系統(tǒng)在物理上是分開的。部署一套正常運行系統(tǒng),就要另外再部署一套,甚至兩套、三套備份系統(tǒng),而且這些備份系統(tǒng)多數(shù)情況下是閑置的,只有在發(fā)生災(zāi)難吋才起作用。這使得構(gòu)建災(zāi)備系統(tǒng)成本高昂,并且災(zāi)備系統(tǒng)資源利用率低,這是災(zāi)備系統(tǒng)的兩個重要缺點。
為了克服這兩個缺點,硏究人員想出了很多辦法。比如建立數(shù)據(jù)中心,數(shù)據(jù)中心的實質(zhì)是一個集中式的備份系統(tǒng),它可以同吋為多個正常運行系統(tǒng)提供災(zāi)備服務(wù),降低了單獨建立災(zāi)備系統(tǒng)的成本。但是這種方法仍然存在資源利用率低的問題,而且又產(chǎn)生了數(shù)據(jù)中心自身災(zāi)備的問題。
虛似化技術(shù)是另一種克服災(zāi)備系統(tǒng)兩個缺點的方法。虛似化技術(shù)既可以把一個物理的災(zāi)備服務(wù)器分割成若干個獨立的虛似災(zāi)備服務(wù)器,又可以把若干個分散的物理災(zāi)備服務(wù)器虛擬為一個大的邏輯災(zāi)備服務(wù)器。從而可以根據(jù)實際應(yīng)用的需要,靈活配置邏輯災(zāi)備服務(wù)器的大小,以取得較優(yōu)的系統(tǒng)性能。但是在系統(tǒng)部署之初一旦配置好邏輯災(zāi)備服務(wù)器,后面就不容易修改。而且沒有災(zāi)難發(fā)生吋,災(zāi)備系統(tǒng)仍然處于閑置狀態(tài)。
第三種常用方法是集群技術(shù)。集群就是一組計算機,組成集群的單個計算機是集群的節(jié)點。 一個集群包含多臺服務(wù)器,各節(jié)點服務(wù)器通過內(nèi)部局域網(wǎng)相互通訊。當一臺節(jié)點服務(wù)器發(fā)生故障吋,這臺服務(wù)器上所運行的應(yīng)用程序?qū)⒃诹硪还?jié)點服務(wù)器上被自動接管。集群技術(shù)能夠自動進行負載均衡,提高了災(zāi)備系統(tǒng)利用率。但是集群系統(tǒng)需單獨組網(wǎng), 一方面成本較高,另一方面不適合大規(guī)模應(yīng)用。
這些方法雖然能夠在一定程度上緩解災(zāi)備系統(tǒng)的兩個重要缺點,但是都不能從根本上解決問題。

發(fā)明內(nèi)容
為了解決己有災(zāi)備系統(tǒng)成本高昂、利用率低的問題,本發(fā)明提出
一種利用P2P技術(shù),對電子信息和服務(wù)逬行容災(zāi)備份的方法。 注意到P2P技術(shù)的特點在于網(wǎng)絡(luò)中的節(jié)點,即計算機、服務(wù)器或者其他具有計算和存儲能力的終端設(shè)備,既可以獲取其它節(jié)點的資源或服務(wù),同吋又是資源或服務(wù)的提供者。因此可以基于P2P技術(shù)構(gòu)建
新型災(zāi)備系統(tǒng),該災(zāi)備系統(tǒng)最根本的思想在于正常運行系統(tǒng)中的節(jié)點旣可以在系統(tǒng)正常運行吋發(fā)揮應(yīng)有的作用,又可以利用閑置的硬盤、內(nèi)存、CPU等資源災(zāi)備其他節(jié)點的數(shù)據(jù)和服務(wù)。本發(fā)明的技術(shù)方案是
災(zāi)備系統(tǒng)的部署根據(jù)網(wǎng)絡(luò)規(guī)模、地理位置、災(zāi)備強度等,將待部署災(zāi)備系統(tǒng)的網(wǎng)絡(luò)劃分為若干個邏輯區(qū)域,邏輯區(qū)域的個數(shù)至少1個;每個邏輯區(qū)中新放置或者從已有節(jié)點中選擇至少1個節(jié)點,做為災(zāi)備服務(wù)器,其他節(jié)點作為普通節(jié)點;
軟件的安裝災(zāi)備服務(wù)器上裝有災(zāi)備服務(wù)器軟件和數(shù)據(jù)庫軟件;
普通節(jié)點上裝有災(zāi)備客戶端軟件;所述的數(shù)據(jù)庫軟件負責(zé)記錄與災(zāi)備
系統(tǒng)相矢的數(shù)據(jù),其中主要有4個數(shù)據(jù)表服務(wù)器信息表、節(jié)點信息
表、節(jié)點狀態(tài)表、災(zāi)備數(shù)據(jù)表;服務(wù)器信息表中記錄了所有災(zāi)備服務(wù)器的網(wǎng)絡(luò)地址;節(jié)點信息表中記錄了災(zāi)備系統(tǒng)中所有普通節(jié)點的災(zāi)備
系統(tǒng)標識IDn。de、加入?yún)奸g等信息,其中災(zāi)備系統(tǒng)標識ID^e是由服
務(wù)器分配給節(jié)點的;節(jié)點狀態(tài)表中記錄了節(jié)點登陸吋間、登出吋間、閑置資源狀況、網(wǎng)絡(luò)地址等信息;災(zāi)備數(shù)據(jù)表中記錄了災(zāi)備過的所有
數(shù)據(jù)塊的來源節(jié)點的IDn。de、接收節(jié)點的IDn。de、大小、備份吋間、備
份次數(shù)等信息;所述的災(zāi)備服務(wù)器軟件負責(zé)管理和實施災(zāi)備服務(wù)器的容災(zāi)備份和容災(zāi)恢復(fù),以及管理普通節(jié)點的容災(zāi)備份和容災(zāi)恢復(fù);所述的災(zāi)備客戶端軟件負責(zé)實施普通節(jié)點的容災(zāi)備份和容災(zāi)恢復(fù);數(shù)據(jù)的災(zāi)備以數(shù)據(jù)塊為單位進行;
災(zāi)備服務(wù)器的容災(zāi)備份過程當一臺災(zāi)備服務(wù)器的數(shù)據(jù)庫中的數(shù)
據(jù)發(fā)生變化吋,災(zāi)備服務(wù)器軟件根據(jù)服務(wù)器信息表中記錄的所有服務(wù)器的網(wǎng)絡(luò)地址,將發(fā)生變化數(shù)據(jù)廣播給其他災(zāi)備服務(wù)器,其他災(zāi)備服務(wù)器收到后更新自己的數(shù)據(jù)庫,以保證所有災(zāi)備服務(wù)器數(shù)據(jù)的一致
性,即災(zāi)備服務(wù)器上的數(shù)據(jù)得到了容災(zāi)備份;
災(zāi)備服務(wù)器的容災(zāi)恢復(fù)過程待恢復(fù)的災(zāi)備服務(wù)器向隨機選擇的
一個正常工作的災(zāi)備服務(wù)器發(fā)送災(zāi)備恢復(fù)請求;正常工作的災(zāi)備服務(wù)器將自己的數(shù)據(jù)庫中的全部內(nèi)容發(fā)送給待恢復(fù)的災(zāi)備服務(wù)器,待恢復(fù)的災(zāi)備服務(wù)器接收并存儲;
普通節(jié)點的登陸過程普通節(jié)點的災(zāi)備客戶端軟件向一個隨機選
擇的災(zāi)備服務(wù)器發(fā)送加入請求,災(zāi)備服務(wù)器收到請求之后為該節(jié)點生
成一個全災(zāi)備系統(tǒng)唯一的標識IDn。de,并將其發(fā)送給該節(jié)點保存;同
吋將該節(jié)點的標識IDn。de和加入?yún)奸g等信息記入自己的節(jié)點信息表;
普通節(jié)點的容災(zāi)備份過程 一個普通節(jié)點通過災(zāi)備客戶端軟件,用自己的IDn。de登陸災(zāi)備系統(tǒng),即允許災(zāi)備客戶端軟件搜集該節(jié)點的網(wǎng)絡(luò)地址和閑置資源情況,并告知一個隨機選擇的災(zāi)備服務(wù)器,該災(zāi)備服務(wù)器將該節(jié)點的登陸吋間、閑置資源情況、網(wǎng)絡(luò)地址記錄在自己的節(jié)點狀態(tài)表中;該普通節(jié)點向一個隨機選擇的災(zāi)備服務(wù)器提出災(zāi)備請求,災(zāi)備請求中至少包括節(jié)點標識IDn。de、待災(zāi)備的數(shù)據(jù)塊個數(shù)、數(shù)據(jù)塊大小、災(zāi)備次數(shù);災(zāi)備服務(wù)器收到這些信息之后,根據(jù)節(jié)點狀態(tài)表中記錄的各個普通節(jié)點是否已登陸、閑置資源的多少等情況,決定哪個數(shù)據(jù)塊災(zāi)備到哪個節(jié)點上,并形成災(zāi)備列表發(fā)送給該普通節(jié)
點;災(zāi)備列表是一個至少有兩個字段的表,兩個字段分別是"數(shù)據(jù)塊標識、接收節(jié)點網(wǎng)絡(luò)標識";節(jié)點上的客戶端軟件根據(jù)災(zāi)備列表,將所有數(shù)據(jù)塊的所有備份災(zāi)備到各個接收節(jié)點上,即將數(shù)椐塊發(fā)送給并保存在各個接收節(jié)點上;
普通節(jié)點的容災(zāi)恢復(fù)過程待恢復(fù)普通節(jié)點的客戶端軟件向一個
隨機選擇的正常工作的災(zāi)備服務(wù)器發(fā)送災(zāi)備恢復(fù)請求,該請求中包含該普通節(jié)點的IDn。de;災(zāi)備服務(wù)器根據(jù)IDn。de査找災(zāi)備數(shù)據(jù)表,將該
節(jié)點災(zāi)備過的所有數(shù)據(jù)塊的信息找出;對每一個數(shù)據(jù)塊,災(zāi)備服務(wù)器根據(jù)節(jié)點狀態(tài)表中記錄的接收節(jié)點是否已登陸,以及網(wǎng)絡(luò)性能等實際情況選擇一個災(zāi)備過該數(shù)據(jù)塊的、目前正處于登陸狀態(tài)的正常工作的普通節(jié)點,并獲得該正常工作節(jié)點的網(wǎng)絡(luò)標識;災(zāi)備服務(wù)器將所有的數(shù)據(jù)塊標識,及每個數(shù)據(jù)塊對應(yīng)的正常工作節(jié)點的網(wǎng)絡(luò)標識,組成一個列表,即恢復(fù)列表;災(zāi)備服務(wù)器將恢復(fù)列表發(fā)送給待恢復(fù)的節(jié)點;待恢復(fù)的節(jié)點上的客戶端軟件,根據(jù)恢復(fù)列表,到網(wǎng)絡(luò)中的指定的正常工作節(jié)點上獲得所有數(shù)據(jù)塊,并將所有數(shù)據(jù)塊重新組合為原始數(shù)據(jù)。
本發(fā)明的有益效果
與其他災(zāi)備方法相比,本發(fā)明具有以下特點1.基于P2P結(jié)構(gòu),利用正常運行系統(tǒng)中節(jié)點的閑置資源災(zāi)備其他節(jié)點的數(shù)椐和服務(wù),既降低了災(zāi)備系統(tǒng)的成本,又提高了災(zāi)備系統(tǒng)資源利用率。
2. 對能夠運行災(zāi)備系統(tǒng)的網(wǎng)絡(luò)的唯一要求是可以逬行端到端的 數(shù)據(jù)傳輸,而目前絕大部分的網(wǎng)絡(luò)都可以提供這一功能,因此系統(tǒng)可
以廣泛部署在Intemet、局域網(wǎng)、行業(yè)專網(wǎng)、有線網(wǎng)絡(luò)、無線網(wǎng)絡(luò)、 3G移動通信網(wǎng)絡(luò)等網(wǎng)絡(luò)中。
3. 數(shù)據(jù)被分割成數(shù)據(jù)塊分布到整個網(wǎng)絡(luò)中,提高了抵抗災(zāi)難的能力。
4. 一個數(shù)據(jù)塊可逬行任意次數(shù)的備份,能夠!放到i(感數(shù)椐逬行次 數(shù)較多的備份, 一般數(shù)椐進行次數(shù)較少的備份.提高了系統(tǒng)靈活性, 并且備份次數(shù)不再受到硬件的限制。
5. 加入災(zāi)備系統(tǒng)的節(jié)點越多,提供的閑置資源也越多,系統(tǒng)的災(zāi) 備能力就越強,不會形成系統(tǒng)瓶頸,不會產(chǎn)生"備不下"的情況。
以下結(jié)合


具體實施方式
對本發(fā)明作進一步的詳細說


圖1總體流程圖2普通節(jié)點加入示意圖3普通節(jié)點登陸示意圖4普通節(jié)點容災(zāi)備份示意圖5災(zāi)備服務(wù)器容災(zāi)恢復(fù)示意圖;
圖6普通節(jié)點容災(zāi)恢復(fù)示意圖7普通節(jié)點登出示意圖。
10
具體實施例方式
圖1表示的是本發(fā)明的總體流程圖。首先根據(jù)網(wǎng)絡(luò)規(guī)模、地理位 置、災(zāi)備強度等,將需要部署災(zāi)備系統(tǒng)的網(wǎng)絡(luò)劃分為若干個邏輯區(qū)域。 例如如果部署全國性的災(zāi)備系統(tǒng),可以劃分為東北、華北、華東、華 南、西北、西南等邏輯區(qū)域。
之后需要部署災(zāi)備服務(wù)器。災(zāi)備服務(wù)器是一個軟硬件性能都比較 好的網(wǎng)絡(luò)節(jié)點,既可以從網(wǎng)絡(luò)中已有的節(jié)點中選擇,也可以另外向網(wǎng) 絡(luò)中加入一臺新的節(jié)點。 一個邏輯區(qū)域中至少有1臺災(zāi)備服務(wù)器。災(zāi) 備服務(wù)器要事先人工安裝好災(zāi)備服務(wù)器端軟件和數(shù)據(jù)庫軟件。
數(shù)據(jù)庫軟件負責(zé)記錄與災(zāi)備系統(tǒng)相關(guān)的數(shù)據(jù),其中有4個數(shù)據(jù) 表服務(wù)器信息表、節(jié)點信息表、節(jié)點狀態(tài)表、災(zāi)備數(shù)據(jù)表。服務(wù)器 信息表中記錄了所有災(zāi)備服務(wù)器的網(wǎng)絡(luò)地址。節(jié)點信息表中記錄了災(zāi) 備系統(tǒng)中所有普通節(jié)點的災(zāi)備系統(tǒng)標識IDMde、加入?yún)奸g等信息,其
中災(zāi)備系統(tǒng)標識ID。。de是由服務(wù)器分配給節(jié)點的。節(jié)點狀態(tài)表中記錄 了節(jié)點登陸吋間、登出吋間、閑置資源狀況、網(wǎng)絡(luò)地址等信息。災(zāi)備 數(shù)據(jù)表中記錄了災(zāi)備過的所有數(shù)據(jù)塊的來源節(jié)點的IDn。de、接收節(jié)點 的ID。。de、大小、備份吋間、備份次數(shù)等信息。
災(zāi)備服務(wù)器軟件有兩個主要功能 一是管理和實施災(zāi)備服務(wù)器的 容災(zāi)備份和容災(zāi)恢復(fù);二是管理普通節(jié)點的容災(zāi)備份和容災(zāi)恢復(fù)。
節(jié)點首先需要加入災(zāi)備系統(tǒng),以獲得在災(zāi)備系統(tǒng)中的合法身份。 如果要災(zāi)備自己的數(shù)據(jù),還需要登陸,然后才能進行容災(zāi)備份, 當災(zāi)難發(fā)生后,逬行容災(zāi)恢復(fù)。節(jié)點還可以隨吋登出,節(jié)點登出之后,將不能災(zāi)備數(shù)據(jù),也不會再接收其他節(jié)點發(fā)來的災(zāi)備數(shù)據(jù),除非再次 登陸。
圖2表示的是本發(fā)明的節(jié)點加入災(zāi)備系統(tǒng)的過程。節(jié)點從網(wǎng)絡(luò)上 下載災(zāi)備客戶端軟件的安裝程序,并安裝災(zāi)備客戶端軟件,形成裝有 客戶端的節(jié)點,為了敘述簡便,除非特別說明,下文中的"節(jié)點"指 的都是裝有客戶端的普通節(jié)點。安裝程序中帶有所有災(zāi)備服務(wù)器的網(wǎng) 絡(luò)地址,節(jié)點從中隨機選擇一個災(zāi)備服務(wù)器,向其提出加入災(zāi)備系統(tǒng) 的請求,災(zāi)備服務(wù)器收到請求之后為該節(jié)點生成一個全災(zāi)備系統(tǒng)唯一 的標識ID。。de,將ID。。de發(fā)送給節(jié)點保存。同吋將節(jié)點的標識IDn。de、
加入?yún)奸g等信息記入自己的節(jié)點信息表。
同吋,災(zāi)備服務(wù)器將這個新加入節(jié)點的節(jié)點信息發(fā)送給網(wǎng)中其他 災(zāi)備服務(wù)器。其中節(jié)點信息至少包括節(jié)點的標識IDn。de、加入?yún)奸g。 其他災(zāi)備服務(wù)器收到節(jié)點信息之后,在各自的節(jié)點信息表中增加一條 記錄,包括節(jié)點的標識IDn。de、加入?yún)奸g。
圖3表示的是本發(fā)明的節(jié)點登陸的過程。節(jié)點點擊客戶端軟件中
的"登陸"按鈕,客戶端軟件搜集該節(jié)點的網(wǎng)絡(luò)地址和閑置資源情況, 組成節(jié)點狀態(tài),并告知一個隨機選擇的災(zāi)備服務(wù)器。災(zāi)備服務(wù)器收到 節(jié)點狀態(tài)之后,連同收到該節(jié)點狀態(tài)的吋間,即登陸吋間,記錄在節(jié) 點狀態(tài)表中,并將其發(fā)送給網(wǎng)中其他災(zāi)備服務(wù)器備份。只有已登陸的 節(jié)點,對災(zāi)備系統(tǒng)來講才是可用的。
圖4表示的是本發(fā)明的普通節(jié)點容災(zāi)備份過程。可以將其分為5 。步驟1選擇災(zāi)備類型。
災(zāi)備類型有"自動"和"手工"兩種。節(jié)點點擊客戶端軟件中的 "容災(zāi)備份"按鈕,從彈出框中選擇"自動"或者"手工"。
如果選擇"自動",節(jié)點需要填寫彈出框中災(zāi)備吋間段、需備份 數(shù)據(jù)所在目錄、災(zāi)備次數(shù)、數(shù)據(jù)塊大小、災(zāi)備間隔等內(nèi)容。其中災(zāi)備
吋間段可以是一個指定的吋間段,也可以是隨吋;災(zāi)備間隔可以是一
個固定的吋間間隔,也可以是當數(shù)據(jù)發(fā)生變化吋。節(jié)點可以選擇多個 目錄進行自動災(zāi)備,各個目錄的災(zāi)備吋間段、災(zāi)備次數(shù)、數(shù)據(jù)塊大小、 災(zāi)備間隔可以不一樣。
如果選擇"手工",節(jié)點從彈出框中選擇需要災(zāi)備的數(shù)據(jù),并指 定災(zāi)備次數(shù)和數(shù)據(jù)塊大小。節(jié)點可以進行多次手工災(zāi)備。
在一個節(jié)點上,自動災(zāi)備和手工災(zāi)備可以同吋逬行。
步驟2分割數(shù)據(jù)。
如果是自動災(zāi)備,客戶端軟件會自動將災(zāi)備吋間段內(nèi)、需備份數(shù) 據(jù)所在目錄下的所有數(shù)據(jù),按照災(zāi)備間隔規(guī)定的吋間,自動分割為大 小一致的數(shù)據(jù)塊。其中"需備份數(shù)據(jù)所在目錄下的所有數(shù)據(jù)"指的是,
當?shù)趌次自動災(zāi)備吋,是該目錄下的所有數(shù)據(jù);之后再災(zāi)備吋,是該 目錄下兩次災(zāi)備之間,發(fā)生變化的數(shù)據(jù)。
如果是手工災(zāi)備,客戶端軟件將數(shù)據(jù)分割為大/」\一致的數(shù)據(jù)塊。
步驟3獲得災(zāi)備列表。
節(jié)點向隨機選擇的災(zāi)備服務(wù)器發(fā)出災(zāi)備請求。災(zāi)備請求中至少包
括節(jié)點標識ID。。de、數(shù)據(jù)塊個數(shù)、數(shù)據(jù)塊大小、災(zāi)備次數(shù)。災(zāi)備服務(wù)器收到這些信息之后,根據(jù)節(jié)點狀態(tài)表中記錄的網(wǎng)絡(luò)中各個節(jié)點是否 已登陸、閑置資源的多少等情況,決定哪個數(shù)據(jù)塊災(zāi)備到哪個節(jié)點上, 并形成災(zāi)備列表。
災(zāi)備列表是一個至少有兩個字段的表,兩個字段分別是"數(shù)據(jù)塊 標識、接收節(jié)點網(wǎng)絡(luò)標識"。例如災(zāi)備列表中有一條記錄是"數(shù)據(jù)塊
1、 172.21.13.1",表示將數(shù)據(jù)塊l災(zāi)備到IP地址為172.21.13.1的這 個節(jié)點上。 一個數(shù)據(jù)塊可能被災(zāi)備到多個接收節(jié)點上, 一個接收節(jié)點 也可能接收多個數(shù)據(jù)塊。
災(zāi)備服務(wù)器將災(zāi)備列表發(fā)送給節(jié)點。
步驟4災(zāi)備數(shù)據(jù)。
節(jié)點上的客戶端軟件根據(jù)災(zāi)備列表,將所有數(shù)據(jù)塊的所有備份災(zāi) 備到各個接收節(jié)點上,即將數(shù)據(jù)塊發(fā)送給并保存在各個接收節(jié)點上。 步驟5備份災(zāi)備列表。
災(zāi)備服務(wù)器將災(zāi)備列表中的內(nèi)容存儲在自己的災(zāi)備數(shù)據(jù)表中,并 將災(zāi)備列表發(fā)送給網(wǎng)中其他災(zāi)備服務(wù)器,其他災(zāi)備服務(wù)器收到之后將 其加入各自的災(zāi)備數(shù)據(jù)表中。
圖5表示的是本發(fā)明的災(zāi)備服務(wù)器的容災(zāi)恢復(fù)過程。 在待恢復(fù)的災(zāi)備服務(wù)器上,人工安裝災(zāi)備服務(wù)器端軟件,點擊服 務(wù)器端軟件中的"容災(zāi)恢復(fù)"按鈕,在彈出框中入工填寫某一正常工 作的災(zāi)備服務(wù)器的網(wǎng)絡(luò)地址,服務(wù)器端軟件向這一個正常工作的災(zāi)備 服務(wù)器發(fā)送災(zāi)備恢復(fù)請求。正常工作的災(zāi)備服務(wù)器將自己的服務(wù)器信 息表、節(jié)點信息表、節(jié)點狀態(tài)表、災(zāi)備數(shù)據(jù)表發(fā)送給待恢復(fù)的災(zāi)備服務(wù)器,待恢復(fù)的災(zāi)備服務(wù)器接收并存儲。
圖6表示的是本發(fā)明的普通節(jié)點的容災(zāi)恢復(fù)過程??梢詫⑵浞譃?步。
步驟1獲得恢復(fù)列表。
待恢復(fù)的節(jié)點重新下載并安裝災(zāi)備客戶端軟件,其中帶有系統(tǒng)中 正常工作的災(zāi)備服務(wù)器的網(wǎng)絡(luò)地址。點擊客戶端軟件中的"容災(zāi)恢復(fù)" 按鈕,客戶端軟件向隨機選擇的一個正常工作的災(zāi)備服務(wù)器發(fā)送災(zāi)備
恢復(fù)請求,該請求中包含節(jié)點的IDn。de。災(zāi)備服務(wù)器根據(jù)IDn。de查找 自己的災(zāi)備數(shù)據(jù)表,將節(jié)點災(zāi)備過的所有數(shù)據(jù)塊的信息找出。對每一 個數(shù)椐塊,災(zāi)備服務(wù)器根據(jù)節(jié)點狀態(tài)表中記錄的接收節(jié)點是否已登 陸,以及網(wǎng)絡(luò)性能等實際情況選擇一個災(zāi)備過該數(shù)據(jù)塊的、目前正處 于登陸狀態(tài)的正常工作節(jié)點,并獲得該正常工作節(jié)點的網(wǎng)絡(luò)標識。災(zāi) 備服務(wù)器將所有的數(shù)據(jù)塊標識,及每個數(shù)椐塊對應(yīng)的正常工作節(jié)點的 網(wǎng)絡(luò)標識,組成一個列表,即恢復(fù)列表?;謴?fù)列表至少有兩個字段, 兩個字段分別是"數(shù)據(jù)塊標識、正常工作節(jié)點網(wǎng)絡(luò)標識",表示可以 到該正常工作節(jié)點上獲得該數(shù)據(jù)塊。
災(zāi)備服務(wù)器將恢復(fù)列表發(fā)送給待恢復(fù)的節(jié)點。
步驟2獲得數(shù)據(jù)塊。
待恢復(fù)的節(jié)點上的客戶端軟件,根據(jù)恢復(fù)列表,到網(wǎng)絡(luò)中的指定 的正常工作節(jié)點上獲得所有數(shù)據(jù)塊。 步驟3 恢復(fù)數(shù)據(jù)。
待恢復(fù)的節(jié)點上的客戶端軟件,將所有數(shù)據(jù)塊重新組合為原始數(shù)據(jù)。
圖7表示的是本發(fā)明的節(jié)點登出的過程。節(jié)點點擊客戶端軟件的 "登出"按鈕,客戶端軟件發(fā)送登出通知給隨機選擇的災(zāi)備服務(wù)器。 登出通知中包括節(jié)點標識IDn。de。災(zāi)備服務(wù)器收到登出通知之后將節(jié) 點狀態(tài)表中節(jié)點的登出吋間改為收到登出通知的吋閭,并通知網(wǎng)中其 他災(zāi)備服務(wù)器同樣將各自節(jié)點狀態(tài)表中節(jié)點的登出吋間改為收到登 出通知的吋間。
權(quán)利要求
1.基于P2P的容災(zāi)備份方法,其特征在于,包括災(zāi)備系統(tǒng)的部署根據(jù)網(wǎng)絡(luò)規(guī)模、地理位置、災(zāi)備強度等,將待部署災(zāi)備系統(tǒng)的網(wǎng)絡(luò)劃分為若干個邏輯區(qū)域,邏輯區(qū)域的個數(shù)至少1個;每個邏輯區(qū)中新放置或者從已有節(jié)點中選擇至少1個節(jié)點,做為災(zāi)備服務(wù)器,其他節(jié)點作為普通節(jié)點;軟件的安裝災(zāi)備服務(wù)器上裝有災(zāi)備服務(wù)器軟件和數(shù)據(jù)庫軟件;普通節(jié)點上裝有災(zāi)備客戶端軟件;所述的數(shù)據(jù)庫軟件負責(zé)記錄與災(zāi)備系統(tǒng)相關(guān)的數(shù)據(jù),其中主要有4個數(shù)據(jù)表服務(wù)器信息表、節(jié)點信息表、節(jié)點狀態(tài)表、災(zāi)備數(shù)據(jù)表;服務(wù)器信息表中記錄了所有災(zāi)備服務(wù)器的網(wǎng)絡(luò)地址;節(jié)點信息表中記錄了災(zāi)備系統(tǒng)中所有普通節(jié)點的災(zāi)備系統(tǒng)標識IDnode、加入時間等信息,其中災(zāi)備系統(tǒng)標識IDnode是由服務(wù)器分配給節(jié)點的;節(jié)點狀態(tài)表中記錄了節(jié)點登陸時間、登出時間、閑置資源狀況、網(wǎng)絡(luò)地址等信息;災(zāi)備數(shù)據(jù)表中記錄了災(zāi)備過的所有數(shù)據(jù)塊的來源節(jié)點的IDnode、接收節(jié)點的IDnode、大小、備份時間、備份次數(shù)等信息;所述的災(zāi)備服務(wù)器軟件負責(zé)管理和實施災(zāi)備服務(wù)器的容災(zāi)備份和容災(zāi)恢復(fù),以及管理普通節(jié)點的容災(zāi)備份和容災(zāi)恢復(fù);所述的災(zāi)備客戶端軟件負責(zé)實施普通節(jié)點的容災(zāi)備份和容災(zāi)恢復(fù);數(shù)據(jù)的災(zāi)備以數(shù)據(jù)塊為單位進行;災(zāi)備服務(wù)器的容災(zāi)備份過程當一臺災(zāi)備服務(wù)器的數(shù)據(jù)庫中的數(shù)據(jù)發(fā)生變化時,災(zāi)備服務(wù)器軟件根據(jù)服務(wù)器信息表中記錄的所有服務(wù)器的網(wǎng)絡(luò)地址,將發(fā)生變化數(shù)據(jù)廣播給其他災(zāi)備服務(wù)器,其他災(zāi)備服務(wù)器收到后更新自己的數(shù)據(jù)庫,以保證所有災(zāi)備服務(wù)器數(shù)據(jù)的一致性,即災(zāi)備服務(wù)器上的數(shù)據(jù)得到了容災(zāi)備份;災(zāi)備服務(wù)器的容災(zāi)恢復(fù)過程待恢復(fù)的災(zāi)備服務(wù)器向隨機選擇的一個正常工作的災(zāi)備服務(wù)器發(fā)送災(zāi)備恢復(fù)請求;正常工作的災(zāi)備服務(wù)器將自己的數(shù)據(jù)庫中的全部內(nèi)容發(fā)送給待恢復(fù)的災(zāi)備服務(wù)器,待恢復(fù)的災(zāi)備服務(wù)器接收并存儲;普通節(jié)點的登陸過程普通節(jié)點的災(zāi)備客戶端軟件向一個隨機選擇的災(zāi)備服務(wù)器發(fā)送加入請求,災(zāi)備服務(wù)器收到請求之后為該節(jié)點生成一個全災(zāi)備系統(tǒng)唯一的標識IDnode,并將其發(fā)送給該節(jié)點保存;同時將該節(jié)點的標識IDnode和加入時間等信息記入自己的節(jié)點信息表;普通節(jié)點的容災(zāi)備份過程一個普通節(jié)點通過災(zāi)備客戶端軟件,用自己的IDnode登陸災(zāi)備系統(tǒng),即允許災(zāi)備客戶端軟件搜集該節(jié)點的網(wǎng)絡(luò)地址和閑置資源情況,并告知一個隨機選擇的災(zāi)備服務(wù)器,該災(zāi)備服務(wù)器將該節(jié)點的登陸時間、閑置資源情況、網(wǎng)絡(luò)地址記錄在自己的節(jié)點狀態(tài)表中;該普通節(jié)點向一個隨機選擇的災(zāi)備服務(wù)器提出災(zāi)備請求,災(zāi)備請求中至少包括節(jié)點標識IDnode、待災(zāi)備的數(shù)據(jù)塊個數(shù)、數(shù)據(jù)塊大小、災(zāi)備次數(shù);災(zāi)備服務(wù)器收到這些信息之后,根據(jù)節(jié)點狀態(tài)表中記錄的各個普通節(jié)點是否已登陸、閑置資源的多少等情況,決定哪個數(shù)據(jù)塊災(zāi)備到哪個節(jié)點上,并形成災(zāi)備列表發(fā)送給該普通節(jié)點;災(zāi)備列表是一個至少有兩個字段的表,兩個字段分別是“數(shù)據(jù)塊標識、接收節(jié)點網(wǎng)絡(luò)標識”;節(jié)點上的客戶端軟件根據(jù)災(zāi)備列表,將所有數(shù)據(jù)塊的所有備份災(zāi)備到各個接收節(jié)點上,即將數(shù)據(jù)塊發(fā)送給并保存在各個接收節(jié)點上;普通節(jié)點的容災(zāi)恢復(fù)過程待恢復(fù)普通節(jié)點的客戶端軟件向一個隨機選擇的正常工作的災(zāi)備服務(wù)器發(fā)送災(zāi)備恢復(fù)請求,該請求中包含該普通節(jié)點的IDnode;災(zāi)備服務(wù)器根據(jù)IDnode查找災(zāi)備數(shù)據(jù)表,將該節(jié)點災(zāi)備過的所有數(shù)據(jù)塊的信息找出;對每一個數(shù)據(jù)塊,災(zāi)備服務(wù)器根據(jù)節(jié)點狀態(tài)表中記錄的接收節(jié)點是否已登陸,以及網(wǎng)絡(luò)性能等實際情況選擇一個災(zāi)備過該數(shù)據(jù)塊的、目前正處于登陸狀態(tài)的正常工作的普通節(jié)點,并獲得該正常工作節(jié)點的網(wǎng)絡(luò)標識;災(zāi)備服務(wù)器將所有的數(shù)據(jù)塊標識,及每個數(shù)據(jù)塊對應(yīng)的正常工作節(jié)點的網(wǎng)絡(luò)標識,組成一個列表,即恢復(fù)列表;災(zāi)備服務(wù)器將恢復(fù)列表發(fā)送給待恢復(fù)的節(jié)點;待恢復(fù)的節(jié)點上的客戶端軟件,根據(jù)恢復(fù)列表,到網(wǎng)絡(luò)中的指定的正常工作節(jié)點上獲得所有數(shù)據(jù)塊,并將所有數(shù)據(jù)塊重新組合為原始數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種基于P2P的容災(zāi)備份方法,該方法包括將待部署災(zāi)備系統(tǒng)的網(wǎng)絡(luò)劃分為若干個邏輯區(qū)域;每個邏輯區(qū)包含至少1個災(zāi)備服務(wù)器和若干個節(jié)點;災(zāi)備服務(wù)器為加入災(zāi)備系統(tǒng)的每個節(jié)點分配一個唯一的身份標識,并負責(zé)保存節(jié)點信息表和災(zāi)備數(shù)據(jù)表;各個節(jié)點根據(jù)災(zāi)備服務(wù)器上保存的節(jié)點信息表和災(zāi)備數(shù)據(jù)表相互進行數(shù)據(jù)備份;當災(zāi)難發(fā)生之后,災(zāi)備服務(wù)器根據(jù)這兩個表,從未遭受災(zāi)難的節(jié)點上恢復(fù)被災(zāi)難破壞的數(shù)據(jù)。本發(fā)明利用P2P技術(shù),充分利用災(zāi)備系統(tǒng)中各個節(jié)點的閑置資源災(zāi)備其他節(jié)點的數(shù)據(jù)和服務(wù),既降低了災(zāi)備系統(tǒng)的成本,又提高了災(zāi)備系統(tǒng)的資源利用率。
文檔編號H04L29/08GK101651710SQ20091009206
公開日2010年2月17日 申請日期2009年9月21日 優(yōu)先權(quán)日2009年9月21日
發(fā)明者楠 姜, 健 王 申請人:北京工業(yè)大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
措勤县| 襄汾县| 宜州市| 清徐县| 新乡市| 本溪市| 江永县| 台中县| 林周县| 常熟市| 明水县| 武乡县| 临沂市| 原平市| 洪湖市| 民和| 增城市| 丰宁| 余江县| 巴塘县| 获嘉县| 凤山市| 宾阳县| 屏边| 互助| 阿克苏市| 德安县| 泉州市| 牙克石市| 吉木萨尔县| 鄂托克旗| 名山县| 阿拉善右旗| 原平市| 鄂尔多斯市| 北海市| 澜沧| 黑龙江省| 界首市| 洛南县| 亳州市|