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