3.2 基于移動Agent的容錯技術(shù)
移動代理是指一個可以在網(wǎng)絡(luò)上移動并執(zhí)行確定功能的程序,也就是說移動代理可以在運(yùn)行的一點(diǎn)掛起,移動到另一臺機(jī)器并從掛起點(diǎn)繼續(xù)運(yùn)行。從這一方面上講,它和檢查點(diǎn)技術(shù)頗為相似。
移動代理系統(tǒng)的研究涉及多方面的問題,其中移動代理的容錯性能占據(jù)一個重要方面,移動代理在有線或無線網(wǎng)絡(luò)上自行移動,網(wǎng)絡(luò)節(jié)點(diǎn)內(nèi)部程序的錯誤、網(wǎng)絡(luò)節(jié)點(diǎn)的崩潰或離線、網(wǎng)絡(luò)傳輸?shù)难舆t等無一不對代理的順利執(zhí)行構(gòu)成威脅,移動代理的自主性、可移動性、交互性等自身特性使它的容錯性能有別于傳統(tǒng)的容錯方案。
現(xiàn)有幾種的移動代理的容錯模型多數(shù)是基于復(fù)制的。下面加以介紹:
(1)檢查點(diǎn)方法(Check Pointing ApprOAch)如圖3所示,當(dāng)代理在庫所執(zhí)行時,它的初始代碼存儲在穩(wěn)定存儲器中,執(zhí)行狀態(tài)周期性地被存儲到檢查點(diǎn),如果庫所失效,代理將從穩(wěn)定存儲器中恢復(fù)。但在實(shí)際運(yùn)行過程中,檢查點(diǎn)需要將運(yùn)行狀態(tài)及時發(fā)送到庫所存儲位置,如果庫所失效,則檢查點(diǎn)方法無法恢復(fù)。這種方法只能處理到庫所失效級。
圖3 檢查點(diǎn)容錯原理圖
(2)Stefan Pleisch和Andr 6 Schiper提出的分類方法
將多數(shù)模型分為基于暫態(tài)復(fù)制(temporal—replica—don—based)和基于空間復(fù)制(spatial—replication—based)兩類。
暫態(tài)復(fù)制基于檢查點(diǎn)方法,但將備份保存在前一庫所。如圖4所示,P1監(jiān)視P2和P2”,當(dāng)庫所P2發(fā)生故障時,P1將代理a2送至P2’繼續(xù)執(zhí)行?梢,暫態(tài)復(fù)制能夠克服庫所故障,如果庫所處在不同的主機(jī)上還能克服主機(jī)故障。
圖4 基于暫態(tài)復(fù)制的容錯模型
空間復(fù)制方法如圖5所示,代理將每個階段的執(zhí)行結(jié)果全部復(fù)制到下一階段的庫所上,即使有一個庫所失效,其它庫所也收到了代理,也可以繼續(xù)執(zhí)行。通常每個階段只有一個代理執(zhí)行,這是由每個階段的選舉法則(voting protoco1)決定的。顯然這種方法也能克服庫所故障和主機(jī)故障。甚至在某種程度上能夠克服拜占庭故障。
圖5 基于空間復(fù)制方法的容錯模型
4 相關(guān)的比較
目前關(guān)于容錯機(jī)制的研究工作正在廣泛地開展。在已有的工作中,最簡單的方法是基于檢查點(diǎn)的方法,只需保存進(jìn)程的檢查點(diǎn),檢查點(diǎn)間的協(xié)作通過引入通信的策略也只要較少的消息代價就能實(shí)現(xiàn)因而其無故障操作開銷較小,但是它的故障恢復(fù)開銷卻很大,因?yàn)樗枰獓?yán)格的恢復(fù)協(xié)同和回滾后需要大量的重計算。悲觀和隨機(jī)的日志策略由于頻繁的存儲訪問、消息高開銷,它們的無故障操作開銷比較大;但樂觀日志可以以vector clock實(shí)現(xiàn)較低的無故障操作開銷,樂觀日志的低無故障開銷使其在移動環(huán)境中得以實(shí)現(xiàn)。
從移動Agent方面來考慮的話,S.Pleisch and A.Schiper提出的基于復(fù)制的技術(shù),無論是基于暫態(tài)的復(fù)制技術(shù)(Temporal Replication based,TRB),還是基于空間的復(fù)制技術(shù)(Spatial Replication based,SRB),都將面臨一種可能,即對移動Agent故障的判斷是不可靠的,這樣將導(dǎo)致有多個相同的移動Agent同時在網(wǎng)絡(luò)中執(zhí)行,破壞只執(zhí)行一次的性質(zhì)。
從實(shí)現(xiàn)的角度上考慮,系統(tǒng)設(shè)計者常常需要在決定每個主機(jī)的副本數(shù)量、保持每個副本和決定備份、恢復(fù)的策略等等問題上做大量工作。由于在大多數(shù)應(yīng)用中,每個主機(jī)都擁有自己獨(dú)立的控制權(quán),因此要決定諸如主機(jī)同時運(yùn)行的副本數(shù)量的問題是件非常困難的事情,同時在一個主機(jī)中,運(yùn)行多個副本無形中也增加了安全性方面的負(fù)擔(dān)。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:移動計算容錯行為研究(下)
本文網(wǎng)址:http://www.ezxoed.cn/html/support/1112155949.html