容錯技術

容錯技術

容錯就是當由於種種原因在系統中出現了數據、檔案損壞或丟失時,系統能夠自動將這些損壞或丟失的檔案和數據恢復到發生事故以前的狀態,使系統能夠連續正常運行的一種技術。

基本信息

概況介紹

容錯技術容錯技術
定義:容錯就是當由於種種原因在系統中出現了數據、檔案損壞或丟失時,系統能夠自動將這些損壞或丟失的檔案和數據恢復到發生事故以前的狀態,使系統能夠連續正常運行的一種技術。 容錯FT(FaultTolerant)技術一般利用冗餘硬體交叉檢測操作結果。隨著處理器速度的加快和價格的下跌而越來越多地轉移到軟體中。未來容錯技術將完全在軟體環境下完成,那時它和高可用性技術之間的差別也就隨之消失了。 
區域網路的核心設備是伺服器。用戶不斷從檔案伺服器中大量存取數據,檔案伺服器集中管理系統共享資源。但是如果檔案伺服器或檔案伺服器的硬碟出現故障,數據就會丟失,所以,我們在這裡講解的容錯技術是針對伺服器、伺服器硬碟和供電系統的。

故障分類

保證系統在某些組成部分出現故障或差錯時仍能正常工作的技術。系統的故障可分為兩類:一類是“致命的”,不可能自行修復,例如系統的主要部件全部損壞;另一類是局部的,可能被修復,例如部分元件失效、線路故障、偶然干擾引起的差錯等。容錯技術正是用於構造一種能夠自動排除非致命性故障的系統,即容錯系統。生物體是高度完善的容錯系統。例如人腦的細胞總數為1010 個,平均每小時死亡約1000個,一生中死亡約109 個,但人的神經系統卻能正常工作,而且思維能力不斷提高,可靠性日益增大。20世紀50年代中期,J.von諾伊曼提出容錯技術中的複合冗餘方法。他套用機率論證明了,可以用不甚可靠的器件堆成一個可靠的具有相同功能的組件。同期又出現了莫爾-香農冗餘方法。這些研究奠定了容錯系統理論的基礎。在容錯技術中,提高系統工作可靠性的方法主要有自檢技術和冗餘技術。容錯又有多種形式,如硬體容錯、軟體容錯、整機容錯、全線容錯等。

自檢技術

自檢指系統在發生非致命性故障時能自動發現故障和確定故障的性質、部位,並自動採取措施更換和隔離產生故障的部件。自檢需採用診斷技術,常用專門程式實現,屬於程式設計的範圍。容錯系統的實現要求系統必須具有重複部件或備份部件,或具有不只一個完成某種功能的通道。因此自檢技術常配合冗餘技術使用。採用計算機的容錯系統一般都需要套用自檢技術。

冗餘技術

容錯技術容錯技術

冗餘可分為硬體冗餘(增加硬體)、軟體冗餘(增加程式,如同時採用不同算法或不同人編制的程式)、時間冗餘(如指令重複執行、程式重複執行)、信息冗餘(如增加數據位)等。冗餘技術中最常用的兩種方法是重複線路和備份線路。重複線路指用多個相同品種和規格的元件或組件並聯起來,當作一個元件或組件使用,只要有一個不出故障系統就能夠正常工作。在並聯工作時每一個組件的可靠性機率是互相獨立的。備份線路與重複線路的差別是參加備份的組件並不接入系統,只有在處於工作狀態的組件發生故障後才把輸入和輸出接到備份組件上來,同時切斷故障組件的輸入輸出。系統具有自動發現故障的能力和自動轉接的設備。若系統的某一組件發生故障使系統出現錯誤輸出,該輸出又使重複線路的共同輸出產生錯誤,則並聯方式反而降低可靠性。此時可採用備份線路或採用其他規則,例如複合冗餘方法和莫爾-香農冗餘方法,把組件組合起來,仍能有效地提高系統可靠性。用複合冗餘方法構成的複合線路就是由包含多個謝弗門(輸入端帶有反相器的或門)的隨機重複線路的串連。這種方法對可靠性的計算基於元件出錯機率服從高斯分布的假定。莫爾-香農冗餘方法則用另一種方式組合繼電器,用組合機率的方法分析可靠性。兩種方法都可以構成同樣可靠的線路。當對系統可靠性要求並不十分高而元件可靠性又比較高時,莫爾-香農方法所用元件數比複合冗餘方法少很多。當要求系統可靠性很高時,複合冗餘方法又較優越。冗餘方法提高可靠性的代價是增加了硬體費用。特別是複合冗餘方法需要複合成千上萬次,例如針對人腦神經系統的計算表明需要用66000個細胞複合代替一個細胞,才能保證不發生誤差的間隔為 10000年。隨著大規模積體電路的發展,這種設計思想的實際套用已逐步成為可能。而大量採用重複電路和備份電路則早已成為提高可靠性的切實可行的有效方法。對於一定數量的備份元件,使系統可靠性最高的元件組合方式稱為最優冗餘結構。例如,當元件失效率與所受負荷成正比或有更強的依從關係時,把全部備份元件同時接入工作比當工作元件失效後再依次代換工作的方式可靠性高。

套用領域

容錯技術容錯技術

容錯技術已獲得廣泛套用,常用於對可靠性要求高的系統,特別是用於危及人身安全的關鍵部位。在這些部位大多採用雙重冗餘,也有採用三重、四重甚至五重冗餘的。現代的大型複雜系統常常是容錯能力很強的系統。例如蘇聯“聯盟”ΤМ型載人飛船使用了三重冗餘的主電氣系統以及雙重冗餘的氣動液壓管路和生命保障系統。容錯技術在計算機中套用得最早和最廣泛。50年代初捷克斯洛伐克製造了世界上第一台容錯計算機SAPO。60年代美國開始大力研製用於控制太空飛行器發射和飛行的容錯計算機。

技術類別

1、雙重檔案分配表和目錄表技術
硬碟上的檔案分配表和目錄表存放著檔案在硬碟上的位置和檔案大小等信息,如果它們出現故障,數據就會丟失或誤存到其他檔案中。通過提供兩份同樣的檔案分配表和目錄表,把它們存放在不同的位置,一旦某份出現故障,系統將做出提示,從而達到容錯的目的。
2、快速磁碟檢修技術
這種方法是在把數據寫入硬碟後,馬上從硬碟中把剛寫入的數據讀出來與記憶體中的原始數據進行比較。如果出現錯誤,則利用在硬碟內開設的一個被稱為“熱定位重定區”的區,將硬碟壞區記錄下來,並將已確定的在壞區中的數據用原始數據寫入熱定位重定區上。
3、磁碟鏡像技術
磁碟鏡像是在同一存儲通道上裝有成對的兩個磁碟驅動器,分別驅動原盤和副盤,兩個盤串列交替工作,當原盤發生故障時,副盤仍舊正常工作,從而保證了數據的正確性。
4、雙工磁碟技術
它是在網路系統上建立起兩套同樣的且同步工作的檔案伺服器,如果其中一個出現故障,另一個將立即自動投入系統,接替發生故障的檔案伺服器的全部工作。
5、網路作業系統具有完備的事務跟蹤系統
這是針對資料庫和多用戶軟體的需要而設計的,用以保證資料庫和多用戶套用軟體在全部處理工作還沒有結束時或工作站或伺服器發生突然損壞的情況下,能夠保持數據的一致。其工作方式是:對指定的事務(操作)要么一次完成,要么什麼操作也不進行。
6、UPS監控系統
UPS監控系統用於監控網路設備的供電系統,以防止供電系統電壓波動或中斷。在工作中,我們選取的容錯技術應根據實際情況而定(如資金,規模等)。

發展歷程

容錯技術容錯技術
上世紀80年代,第一代容錯技術就開始進入商用領域。美國Stratus(容錯公司)在Stratus獨特的硬體級容錯技術及VOS專有作業系統環境下,採用了MotorolaM68000處理器。1993年,英特爾I860處理器在Stratus的硬體級容錯體系結構中成功套用,在軟體環境方面,還能滿足業界對開放性要求的Unix作業系統FTX,即AT&TUNIXSVR4。1996年,容錯技術得到HP的支持,共同推出StratusContinuum系列,將Stratus容錯結構結合HPPA-RISC對稱多處理技術。進入21世紀以來,製造、中小企業、能源、交通等領域對伺服器,特別是中低端IA伺服器的需求激增,過去僅僅可以套用在RISC平台、HP-UX環境下的容錯產品也面臨著新的挑戰。另一方面,企業越來越依賴信息系統來完成關鍵業務的套用,同時他們不可能配備更多的專業人員來進行專職維護。雙機熱備、集群伺服器遇到難題。如今:NEC通過與美國容錯公司多年的合作,於2001年推出了業界第一台基於IA架構、支持MicrosoftWin-dowsServer2000標準作業系統環境的容錯伺服器。NEC的Express5800/ft系列在Windows及Linux平台上的可靠性達到了99.999%,這種實時保護技術來源於STRATUS連續處理技術(FundamentalsofContinuousPro-cessingDesign),它包括:
1、LOCKSTEP技術
LOCKSTEP技術使用相同的、冗餘的硬體組件在同一時間內處理相同的指令。LOCKSTEP技術可以保持多個CPU、記憶體精確的同步,在正確的相同時鐘周期內執行相同的指令。該技術保證能夠發現任何錯誤,即使短暫的錯誤,系統也能在不間斷處理和不損失數據的情況下恢復正常運行。
2、安全故障(FailSafe)軟體
FAILSAFE軟體和LOCKSTEP技術運行一樣,可防止很多軟體錯誤和儲運耗損。該軟體在Windows2000/2003環境下採用熱插拔、記憶體鏡像、負載均衡、多點終止失效、多通道I/O等方式,大大增強了系統連續運行的穩定性。

FAILSAFE可以管理和診斷特徵捕獲,分析和通報伺服器的軟體問題,從而允許個人在軟體發生錯誤之前去糾正錯誤。FAILSAFE軟體的下列功能增強了NECExpress5800/ft系統在Windows環境中的可靠性:保護短暫的硬體故障;通過增強的驅動程式預防軟體失效;軟體問題的捕獲、分析及修正;記憶體數據的連續性維持;豐富的糾錯功能可以解決各種不同的錯誤。為了避免物理撞擊等意外故障,安全故障軟體還提供了自動重啟功能,能夠將宕機前CPU與記憶體數據即時保存下來,最大限度地避免數據的意外丟失。
3、激活服務(ACTIVESERVICE)
當然,假如容錯伺服器的硬體發生永久性故障,儘管系統能夠正常運行,也必須及時更換硬體才能維持容錯的冗餘架構。容錯伺服器都配備了簡易直觀的圖形界面來管理監測工具,(如NECExpress5800/ft提供了ESMPRO管理軟體),能夠對伺服器中硬體運行及故障狀態進行適時監控。

未來趨勢

容錯技術的套用已經開始從過去的證券、電信等領域進入基礎行業,如製造、能源、物流、交通及有著"7×24"不間斷運營需求的中小商業團體和政府。NEC為迎合網際網路的高速增長,為容錯伺服器引入了最新的穩定、安全、可升級、功能強大的Linux版本。

容錯的未來將會向更高的可用性、更卓越的可維護性發展。調查顯示,越來越多的用戶開始注重TCO(總擁有成本)而不是初期購買價格,更多的企業決定逐步放棄採用雙機熱備的方式來維護複雜的集群伺服器,轉而將目光瞄向具有容錯技術的平台或容錯伺服器平台。

中國市場,NEC公司與神州數碼的合作在一定程度上彌補了容錯伺服器在中國市場服務拓展領域的短板。這將引發國內各領域的容錯技術與套用的井噴式發展。

技術研究

技術研究技術研究
隨著現代工業技術的發展和計算機的普及,工業設備運行的安全性和可靠性越來越引起人們的重視,為了保證其安全、高效和可靠地運行,必須採用與之相適應的管理模式,容錯技術為計算機系統提供了這樣的能力:當計算機內部出現故障的情況下,計算機系統仍能正確工作。計算機容錯技術計算機系統可靠性提高的重要手段。
當系統內部有故障存在時,通過容錯技術消除故障的影響,使系統最終仍能給出正確的結果。按照時間劃分,故障可分為以下三種:永久性故障、間歇性故障和偶然性故障。永久故障是永遠持續下去直至修復為止的故障。對硬體來說,永久性故障意味著不可逆的物理變異。對軟體來說,這類故障也就是一個不可以自動恢復的錯誤狀態。間歇性故障是短暫的,但卻是斷續的,它既有偶然性,又有不定期的重複性。如一個處於臨界狀態的電路輸出時好時壞,而一個虛焊點就會引起這樣的故障。偶然性故障出現是短暫的,且可能是非重複性的。常常由於環境的變換、電源方面的干擾、元器件性能的波動、軟體的隨機變換、電磁干擾等因素而引起。這樣的故障有可能僅出現一次,或很長時間出現一次,但卻可能造成數據錯誤,甚至系統癱瘓。
針對不同故障應採取不同的容錯方法。容錯技術能自動適時地檢測並診斷出系統的故障,然後採取對故障的控制或處理的對策略。按照系統的失效回響階段,可以把各種容錯技術分成三種:故障檢查、靜態冗餘、動態冗餘。故障檢測並不提供對故障的容忍,而是發生故障時給出一個警告。故障檢測廣泛套用於微型機和小型機之類的小系統中,其中一些已體現了簡單的在線上檢測機理。嚴格地說,故障檢測不是容錯,它儘管檢測了故障,但是不能容忍這些故障,不給出故障警告。動態冗餘用於糾錯碼存儲器或具有固定配置(即線路器件之間的邏輯連線保持不變)的多數表決冗餘計算機之類的系統中。
根據不同情況,一個容錯系統可經歷以下階段:(1)故障檢測:大多數失效最終導致產生邏輯故障。有許多方法可用來檢測邏輯故障,如奇偶校驗、一致性校驗和協定違章都可以用來檢測故障。故障檢測技術有兩個主要的類別,即脫機檢測和在線上檢測,在脫機檢測情況下,進行檢測時設備不能進行有用的工作;在線上檢測提供了實時檢測能力,因為在線上檢測與有用的工作同時執行。在線上檢測技術包括奇偶校驗和冗餘校驗;(2)故障限制:當故障出現時,希望限制其影響範圍。故障限制是把故障效應的傳播限制到一個區域內,從而防止污染其他區域;(3)故障禁止:故障禁止技術把失效效應掩蓋了起來,從某種意義上說,是冗餘信息戰勝了錯誤信息,多數表決冗餘設計就屬於故障禁止;(4)重試:在許多場合,對一個作業系統的第二次試驗可能是成功的,對不引起物理破壞的瞬間故障尤其如此;(5)診斷:對故障檢測技術沒有提供有關故障位置、性質的信息進行診斷;(6)重組:當檢測出一個故障並判明是永久性故障時,重組系統的器件替換失效的器件或把失效的器件與系統的其他部分隔離開來,也可使用冗餘系統,確保系統能力不降低;(7)恢復:經檢測和重組後,必須消除錯誤效應。通常,系統會回到故障檢測前處理過程的某一點,並從這一點重新開始操作。這種恢復形式通常要後備檔案、校驗點和套用記錄方法;(8)重啟動:如果一個錯誤破壞的信息太多,或者系統沒有設計恢復功能,那么恢復就不可能實現。僅當系統未受任何破壞時,才能進行“熱”重啟,並從故障檢測點恢復所有的操作。“熱”重啟相當於系統需要完全重新載入;(9)修復:即把診斷為故障的器件還原下來,修復也可以是在線上進行的或者脫機進行的;(10)重構:對元件進行物理替換之後,把修復的模組重新加入到該系統中去。對在線上修復來說,實現重構不中斷系統的工作。隨著計算機硬體和網路的快速發展,容錯計算機的系統開銷逐漸降低,且糾錯速度快。而軟體方法實現的容錯,對硬體不會提過高的要求。同時系統靈活,資源利用比較合理。更正檢測、診斷將會採取人工智慧的處理途徑,以專家系統的各種智慧型工具來支持故障檢測和診斷。利用專家的知識,藉助推理機構,迅速而準確地提供診斷結果。系統的動態重構、故障恢復功能及神經元晶片等將被用到容錯技術中來,都將在智慧型化的支持下得以實現。同時對電路內部的自檢、自重構研究,可以解決電路本身及子系統的可靠性問題,將會出現容錯的VLS1晶片及可直接支持系統容錯設計的可容錯設計晶片,為系統設計者提供一個具有透明性的容錯設計元器件。進入到晶片內部的容錯技術的研究將成為容錯研究的一大分支。
隨著網路時代的到來,對於一個成功的電子商務系統來說,必須回響線上客戶的需求並遵守服務的那個協定(SLA),同時保護客戶的隱私及電子商務系統安全正常運營。對於客戶要求的回響程度及安全保護措施是一個基於Internet電子商務系統成功的必要條件,容錯伺服器就成為網路時代電子商務運營商首要選擇。未來的智慧型化家庭都將擁有一個家庭數據中心,可提供全天候的服務,包括家庭安全、防盜和防煤氣泄漏以及各種家用電器的控制,這個家庭數據中心也只有採用容錯計算機才能擔當。今後容錯技術將同時在軟體和硬體上得到發展,將會出現初級的容錯軟體的設計方法,套用軟體方面的容錯設計將會產生一些實用的工具,同時產生一個通用作業系統和硬體相結合的容錯方法,走軟硬結合的道路。系統容錯設計將在分散式系統、CSCW等方面出現新的容錯設計方法。

相關詞條

相關搜尋

熱門詞條

聯絡我們