專利名稱:對等互連的診斷的制作方法
技術領域:
本發明涉及回路診斷的領域。尤其是,本發明涉及對等的接口診斷。
背景技術:
任何計算機系統的一個關鍵部件是存儲數據的設備。計算機系統具有許多可存儲數據的不同的地方。在計算機系統中,用于存儲大量數據的一個常見的地方是在磁盤驅動器上。磁盤驅動器的最基本的部分是一個旋轉的磁盤、將轉換器移到磁盤上的各個位置的一個致動器,以及用于讀、寫數據到磁盤和從磁盤讀、寫數據的電路。磁盤驅動器還包括電路,用于對數據進行編碼,以便可以成功地對數據檢索和寫到磁盤表面。微處理器控制磁盤驅動器的大多數操作,并控制將數據傳送回提出請求的計算機和從提出請求的計算機取出用于存儲到磁盤的數據。
代表數據的信息存儲在存儲磁盤的表面上。磁盤驅動器系統讀、寫存儲在存儲磁盤上的各個磁道上的信息。
光纖通道(FC)是由ANSI標準化的一種串行數據轉移結構。一種著名的FC標準是光纖通道調停回路(FC-AL)。這個標準定義分布式菊花鏈回路。FC用于該回路上的對等通信。
FC-AL是為新的大容量存儲設備和需要極高帶寬的其他外圍設備而設計的。除了其他的較高層次協議外,FC-AL還支持“小型計算機系統接口”(SCSI)命令集。這些較高層次的協議對FC的映射被稱作“FC-4層”。
在FC-AL中,來自起源設備的信息在到達接收設備之前可以通過多個其他的設備,以及各個設備之間的鏈路。然而,信息在多個鏈路上的通過增加了在點到點的連通上隔離臨界的和失敗鏈路的復雜性,但存在隔離臨界鏈路的三項傳統的技術。隔離臨界FC鏈路的一項技術是利用鏈路狀況來隔離有問題的鏈路。第二種方法是使用FC-4映射的錯誤報告的特點。第三種方法是結合前兩種方法。
這三項技術的主要要求是掌握拓撲結構(即連通順序)的知識。可以在從回路位置映射進行FC-AL定義回路初始化的期間,或通過固有裝置(implicitmeans)來獲得拓撲結構的知識。固有裝置的一個例子是使用硬地址的磁盤驅動器外殼。
在臨界鏈路隔離中使用鏈路狀況的第一種方法要求在回路上的至少一個設備中實行管理應用程序(MA)。可以執行幾項MA,以覆蓋任何一個設備的故障。MA可以在正常的回路操作期間定期調查回路,或者要求檢測鏈路錯誤的設備報告事件,在輪詢法模式中,積累在所有設備中的鏈路狀況用來定位臨界鏈路。在報告錯誤識別模式中,從報告錯誤的所有設備累積而來的狀況用來定位臨界鏈路。
利用這種方法,可以對單個錯誤的來源進行隔離,但并不保證實行這種隔離。
使用鏈路狀況可使方法FC-4獨立化。這是多協議回路中的一個優點。但是,使用鏈路狀況的缺點是輪詢法或報告錯誤模式的額外開銷降低了回路的效率。
第二種方法使用FC-4映射的錯誤報告的特點。使用FC-4報告的錯誤來隔離回路上的錯誤來源,這要求保持錯誤記錄。通過分析記錄以確定哪些設備正在報告錯誤和哪些設備不正在報告錯誤,來定位來源。
通過使用FC-4報告的錯誤來隔離回路上的錯誤來源,可以不再要求MA來保持鏈路錯誤歷史記錄和調查回路。不調查回路可減少回路上的額外開銷。此外,只有當錯誤發生時,才對其進行報告。
通過使用FC-4報告的錯誤來隔離回路上的錯誤來源,在用單個主設備接收所有被報告錯誤的設備中能最好地執行。這種設備的一個例子是單啟動的SCSI存儲子系統。
只依靠FC-4錯誤狀況至少有三個缺點。發生單個錯誤不會提供充分的信息來隔離來源。此外,必須累積狀況以建立歷史記錄,以便隔離錯誤來源。最后,在支持多協議的回路或接收FC-4狀況的多個設備中,由于沒有向公共目標設備報告錯誤,因此,實現會變得困難。
隔離臨界FC鏈路的第三項技術使用鏈路狀況和FC-4錯誤報告來隔離有問題的鏈路。不采用輪詢法,并且可以隔離單個錯誤的來源。
至于對鏈路狀況的任何使用,都需要MA來保持所有設備的錯誤計數。當報告FC-4錯誤或MA檢測鏈路錯誤時,MA從所有設備中讀取累積的鏈路狀況,以確定可能的錯誤來源。
具有多個FC-4的回路上的實施有一個缺點MA必須支持所有的FC-4。
參考
圖1,示出回路105的圖例,它包括SCSI光纖通道協議(FCP)設備。該回路包括一個SCSI啟動程序設備110,該設備用作回路主導裝置并與SCSI目標設備120、130和140進行通信。設備120與設備130之間的鏈路或互連150是臨界的和/或失敗的。
由FC-4提供的錯誤檢測與報告可以用來隔離臨界鏈路(如果有的話)。
由于臨界鏈路150,回路主導裝置110將經歷命令超時和數據錯誤。命令超時是命令、轉移就緒或響應幀期間的錯誤的結果。當這些幀被錯誤地接收時,就放棄它們。由于超時可由給目標的幀丟失而產生、命令,或者由于目標、轉移就緒和響應而產生,因此,無法確定壞鏈路的位置。
在寫數據操作中,設備120不會經歷來自回路主導裝置110的數據的錯誤。但是,設備120和設備130將檢測由臨界鏈路引入的錯誤,在FCP響應中,報告有關寫數據的錯誤。
在讀數據操作中,回路主導裝置110不會檢測從設備130和設備140讀取的數據的錯誤。
人們需要的是不要求掌握回路的拓撲結構知識的回路錯誤診斷,這會減少回路額外開銷通信量并提高診斷的效率。
發明概要在隔離錯誤來源的對等方法中,管理應用程序(MA)功能被分配給回路上的所有設備。鏈路狀況用于錯誤來源的隔離。尤其是,每個設備保持與其輸入連接的設備和上游設備的特性和鏈路錯誤狀況。當設備檢測有關其輸入的鏈路錯誤時,設備請求上游設備進行鏈路錯誤計數。
當上游設備的鏈路狀況指出設備也檢測出鏈路錯誤時,錯誤來源是回路上的一個不同的鏈路。如果來自上游設備的鏈路狀況沒有指出它檢測出錯誤,則錯誤來源可能是上游設備與設備自身之間的互連。然后,設備可以在上游設備與其自身之間開始進行診斷轉換,以便驗證互連是臨界的。
有利的是,關于回路錯誤診斷的本發明不要求掌握回路的全部拓撲結構的知識。本發明還減少了回路額外開銷通信量,因為錯誤隔離被分配給回路中的每個設備。此外,回路診斷的效率提高了,這是因為離問題來源最近的設備實行診斷。另外,本發明使回路上的每個設備的性能降低達到最小化,因為當每個設備空閑時,該設備中的診斷功能可加以執行,從而避免診斷影響設備在更高優先權任務期間的性能。
附圖簡述圖1是由SCSI FC通道協議設備組成的傳統回路的方框圖。
圖2是具有一個多重磁盤堆棧和用于將轉換器裝載到磁盤表面并從磁盤表面卸載轉換器的滑道(ramp)組件的磁盤驅動器分解視圖。
圖3是回路錯誤診斷方法的程序圖。
圖4是回路錯誤診斷方法的程序圖。
圖5是識別局部記錄在分布式菊花鏈對等回路上的錯誤狀態的方法的程序圖。
圖6是確定診斷和解決錯誤的方法的程序圖。
圖7是回路中確定上游設備和/或上游鏈路中的錯誤的一種同等裝置的方框圖。
圖8是同等裝置中的回路錯誤隔離管理應用程序的方框圖。
圖9是一種計算機系統的示意視圖。
關于較佳實施例的描述在以下對較佳實施例的詳細描述中,參考構成其一部分的附圖,在附圖中,通過插圖說明來示出可實踐本發明的一些特殊的實施例。不言而喻,在不脫離本發明的范圍的前提下,可以利用其他的實施例,并可以進行結構修改。
本申請中描述的發明對于具有旋轉或直線驅動的所有磁盤驅動器的機械配置都有用。此外,本發明也對各種磁盤驅動器有用,這些磁盤驅動器包括硬盤驅動器、zip驅動器、軟盤驅動器,并且可能需要從表面卸載轉換器并停放轉換器的任何其他類型的驅動器。圖2是一種具有旋轉的致動器類型的磁盤驅動器200的分解視圖。磁盤驅動器200包括一個外套或底部212,以及一個蓋子214。底部212和蓋子214構成磁盤外殼。致動組件220旋轉地附著于致動軸桿218的底部212。致動組件220包括具有多個支臂223的一個梳狀結構222。負載桿或負載彈簧224附著于梳齒222上的各個支臂223。負載桿或負載彈簧也被稱作懸掛件。承載一個磁性轉換器250的滑動器226附著于每個負載彈簧224的末端。具有轉換器250的滑動器226構成多次提到的磁頭。應該注意,許多滑動器有一個轉換器250,圖中示出這一點。還應該注意,本發明同樣可應用于具有不只一個轉換器的滑動器,例如被稱作MR或磁阻磁頭的部件,其中,一個轉換器250通常用于讀取,另一個轉換器通常用于寫入。音圈228位于與負載彈簧224和滑動器226相對的致動臂組件220的末端。
第一個磁體230和第二個磁體231附著于底部212的內部。如圖2所示,第二個磁體231與蓋子214關聯。第一和第二個磁體230、231,以及音圈228是音圈電機的關鍵部件,音圈電機向致動組件220施加一個力,使其圍繞致動軸桿218旋轉。主軸電機也被安裝到底部212。主軸電機包括稱作主軸孔233的一個旋轉部分。在這種特殊的磁盤驅動器中,主軸電機位于孔內部。在圖2中,許多磁盤234附著于主軸孔233。在其他的磁盤驅動器中,單個磁盤或許多不同的磁盤可能附著于孔。這里描述的本發明同樣可應用于具有多個磁盤的磁盤驅動器和具有單個磁盤的磁盤驅動器。這里描述的本發明也同樣可應用于具有在孔233內部或在軸心下面的主軸電機的磁盤驅動器。
接下來參考圖3,示出回路錯誤診斷的方法300的程序圖。方法300包括確定回路310中的上游設備的特性。其后,方法300包括保存特性320。在一個實施例中,在設備的初始化期間執行確定步驟310和保存步驟320。在另一個實施例中,從回路映射中檢索回路中的上游設備的特性。隨后,方法300包括請求來自回路330中的上游設備的鏈路錯誤計數。方法300還包括局部存儲鏈路錯誤計數340。隨后,方法300包括監控回路的錯誤350。其后,方法300包括確定錯誤存在于設備360的輸入端。如果錯誤不存在,則方法繼續采取動作350。如果錯誤存在,那么,請求來自回路中的上游設備的當前鏈路錯誤計數370。方法隨后確定回路的配置是否已經變化。如果回路的配置已經變化,則方法繼續采取動作310,否則,方法繼續確定當前的鏈路錯誤計數與被保存的錯誤計數相比是否有所變化385。如果當前的鏈路錯誤計數與被保存的錯誤計數相比有所變化(這指出回路中的其他地方有錯誤),則方法繼續采取動作,局部存儲鏈路錯誤計數340。如果當前的鏈路錯誤計數與被保存的錯誤計數相比沒有變化,則錯誤發生在上游設備與檢測錯誤的設備之間的鏈路上,在測試鏈路處繼續執行方法390,并報告錯誤395。
關于回路錯誤診斷的本發明不要求掌握回路的全部拓撲結構的知識,并且減少了回路額外開銷通信量,因為錯誤隔離被分配給回路中的每個設備。而且,由于離問題來源最近的設備執行診斷,因此,回路診斷的效率提高了。此外,本發明使回路上的每個設備的性能降低達到最小化,因為當每個設備空閑時,該設備中的診斷功能可加以執行,從而避免診斷影響設備在更高優先權任務期間的性能。
接下來參考圖4,示出回路錯誤診斷的方法400的程序圖。方法400包括識別局部被記錄在分布式菊花鏈對等回路中的設備上的鏈路錯誤狀態410。以下結合圖5更詳細地描述這種識別。在一個實施例中,分布式菊花鏈對等回路是光纖通道調停回路(FC-AL)。在另一個實施例中,設備是磁盤驅動器如在圖2的磁盤驅動器220。
光纖通道(FC)設備檢測并計算設備接收的錯誤。這些計數被保存在鏈路錯誤狀況塊(LESB)中。可能在設備中遇到的錯誤包括鏈路失敗(例如,字同步損失超過規定的時間)、同步的損失(例如,字同步損失少于規定的時間,無效傳輸超過規定的字數),檢測到運行的非奇偶錯誤或無效字符的無效傳輸字,以及/或一個無效的循環冗余檢測。
如果LESB中的任何字段增加,則設備檢測到錯誤。
精通該技術領域的人十分了解從回路上的設備獲得鏈路狀況的幾項技術。一項技術使用讀取鏈路狀況(RLS)擴展鏈路服務(ELS),它返回被尋址的設備的LESB。在RLS ELS的一個實施例中,設備支持RLS的實施,RLS允許對接收RLS的設備運用LESB。從回路上的設備獲得鏈路狀況的另一個實施例是通過使用小型計算機系統接口(SCSI)記錄讀出命令,其中,磁盤驅動器返回記錄頁中的LESB。這項技術適用于具有不將FC ELS信息傳送給應用程序的磁盤驅動器的各種系統。而從回路上的磁盤驅動器獲得鏈路狀況的另一個實施例是通過使用外殼服務接口(ESI),其中,支持SFF委員會工業集團說明書(SFF)8067的磁盤驅動器定義外殼啟動的ESI。一項功能為外殼處理器提供LESB、回路初始化計數,以及有關兩個設備的當前狀況。外殼處理器可以將這個信息用于回路管理或將其提供給另一個管理實體。從回路上的設備獲得鏈路狀況的另一個實施例是通過使用報告設備狀況(RPS)ELS,其中,LESB具有RLS請求的設備、回路初始化計數和該設備的當前狀況。
從回路上的設備獲得鏈路狀況的這些方法都具有一個共同的元件LESB。
方法400還包括診斷錯誤420。回路錯誤診斷的方法400不要求掌握回路的全部拓撲結構的知識,并減少了回路額外開銷通信量,這是因為錯誤隔離分配給回路中的每個設備。此外,由于離問題來源最近的設備執行診斷,因此,回路診斷的效率提高了。此外,方法400使回路上的每個設備的性能降低達到最小化,因為當每個設備空閑時,該設備中的診斷功能可加以執行,從而避免診斷影響設備在更高優先權任務期間的性能。
接下來參考圖5,示出識別局部記錄在設備(不是在如圖4的步驟410中的分布式菊花鏈對等回路中)上的錯誤狀態的方法500的程序圖。
方法500包括從本地來源接收分布式菊花鏈對等回路中的直接上游設備的一個當前的錯誤狀況計數510。方法500還包括從本地來源接收分布式菊花鏈對等回路520中的直接上游設備的一個先前的錯誤狀況計數520。在一個實施例中,接收520在設備的初始化期間執行。在不同的實施例中,接收520在接收510之前、期間和/或之后執行。其后,方法500包括將當前的錯誤狀況計數與先前的錯誤狀況計數進行比較530。隨后,方法500包括確定該比較指出一個錯誤540。
接下來參考圖6,示出確定、診斷和解決錯誤的方法600的程序圖。在方法600中,圖5中的確定步驟540確定當前的錯誤狀況計數不同于先前的錯誤狀況計數610。隨后,在方法600中,圖4中的診斷步驟410包括測試在分布式菊花鏈對等回路中該設備與直接的上游設備之間的鏈路620。在測試620的一個實施例中,測試包括通過分布式菊花鏈對等回路,從一個設備到另一個設備沿回路發送數據,并確定當傳輸數據時,數據是否由其所要發送的設備接收。
如果確定上游鏈路中有錯誤,則生成的錯誤報告指出,懷疑錯誤在分布式菊花鏈對等回路中的設備與直接的上游設備之間的鏈路中630。在不同的實施例中,在測試620之前、期間和/或之后執行生成630。
圖7是回路中的同等裝置700的方框圖。
裝置700包括與回路720耦合的一個通信輸入/輸出部件710。裝置確定上游設備和/或上游鏈路中的錯誤。在一個實施例中,回路720是FC-AL。回路720的剩余部分包括至少另一個設備(未示出),該設備處于來自同等裝置700的回路720中的上游。在一個實施例中,回路中的其他設備是同等裝置700。通信設備710與回路錯誤隔離管理應用程序730耦合。在不同的實施例中,回路錯誤隔離管理應用程序730執行方法300、400、500和/或600的各個步驟。
同等裝置700不要求掌握回路的全部拓撲結構的知識。同等裝置700減少了回路額外開銷通信量,這是因為錯誤隔離被分配給回路中的每個設備。此外,由于離問題來源最近的同等裝置700執行診斷,因此,回路診斷的效率提高了。此外,本發明使回路上的每個設備的性能降低達到最小化,因為當每個同等裝置700空閑時,該同等裝置700中的診斷功能可加以執行,從而避免診斷影響同等裝置700在更高優先權任務期間的性能。
在一個實施例中,同等裝置700包括一個磁盤驅動器(例如,圖2中的磁盤驅動器200)。
圖8是同等裝置(例如,同等裝置700)中的回路錯誤隔離管理應用程序(MA)800的方框圖。MA 800包括回路中的上游設備的特性(未示出)的判定程序810。判定程序810通過圖700中的通信輸入/輸出端710來接收特性。特性由本地存儲器820局部地存儲在同等裝置700上。存儲器820與判定程序耦合。在一個實施例中,判定程序810包括來自回路映射的上游設備的特性的一個檢索程序。
MA 800還包括來自回路中的上游設備的鏈路錯誤計數的一個請求程序830。請求程序830與鏈路錯誤計數840的本地存儲器耦合。鏈路錯誤計數840的本地存儲器存儲鏈路錯誤計數,用于以后與當前的鏈路錯誤計數進行比較。
MA 800還包括來自回路中的上游設備的當前的鏈路錯誤計數的一個請求程序850。請求程序850與圖700中的通信輸入/輸出端710耦合。請求程序850接收鏈路錯誤的當前的計數。
MA 800還包括配置回路變化的判定程序860。判定程序860與圖700中的通信輸入/輸出端710耦合。
比較器870比較從請求程序850接收的當前的鏈路錯誤計數、從存儲器840接收的被保存的錯誤計數和從判定程序860接收的回路配置的變化,并且,相應地調用鏈路錯誤的解決程序880或設備錯誤診斷請求的發生器與發送器890。在一個實施例中,請求程序880包括一個鏈路試驗器。
在裝置800的一個實施例中,初始化程序與回路中的上游設備的特性的判定程序810耦合,與特性的本地存儲器840耦合。
在裝置800的另一個實施例中,包括與鏈路錯誤計數的本地存儲器耦合的一個回路錯誤監控器。此外,有關同等裝置的通信輸入的錯誤的檢測器與該監控器耦合。
系統700和800部件可以具體表現為計算機硬件電路或計算機可讀程序或兩者的組合。
尤其是,在裝置700和800的計算機可讀程序實施例中,程序可以使用面向對象的語言(例如,Java、Smalltalk或C++)以面向對象的方式構建,并且程序可以使用面向過程的程序語言(例如,COBOL或C)以面向程序的方式構建。軟件組件利用精通該技術領域的人眾所周知的許多方法來進行通信,例如,應用程序接口(A.P.L)或工序間的通信技術(例如,遠程過程調用(R.P.C)、公用對象請求代理程序體系(CORBA)、組件對象模型(COM)、分布式組件對象模型(DCOM)、分布式系統對象模型(DSOM)和遠程方法調用(RMI))。這些組件可以在少至一臺計算機或多至與組件同樣多的計算機上運行。
圖9是一種計算機系統的示意視圖。有利的是,本發明很適用于計算機系統2000,其中,計算機系統2000包括與回路中的上游設備耦合的一個通信設備,以及用于識別被局部記錄在分布式菊花鏈對等回路中的設備上的錯誤狀態的裝置。
計算機系統2000也可以稱作電子系統或信息處理系統,它包括一個中央處理器、一個存儲器和一個系統總線。信息處理系統包括一個中央處理器2004、一個隨機存取存儲器2032,以及用于通信聯絡地將中央處理器2004和隨機存取存儲器2032耦合在一起的一個系統總線2030。信息處理系統2002包括一個磁盤驅動器設備,該設備包括上述的滑道。信息處理系統2002也可以包括一個輸入/輸出總線2010和幾個設備外圍設備(例如,2012、2014、2016、2018、2020和2022,它們可以附著于輸入輸出總線2010)。外圍設備可包括硬盤驅動器、磁光驅動器、軟盤驅動器、監控器、鍵盤和其他這類的外圍設備。任何類型的磁盤驅動器都可以使用如上所述的將滑動器裝載或卸載到磁盤表面上的方法。
關于回路錯誤診斷的本發明不要求掌握回路的拓撲結構的知識,并減少了回路額外開銷通信量,這是因為錯誤隔離被分配給回路中的每個設備。而且,由于離問題來源最近的設備執行診斷,因此回路診斷的效率提高了。此外,本發明使回路上的每個設備的性能降低達到最小化,因為當每個設備空閑時,該設備中的診斷功能可加以執行,從而避免診斷影響設備在更高優先權任務期間的性能。
結論總之,用于管理互連錯誤的一種方法包括識別局部記錄在分布式菊花鏈對等回路100中的設備上的錯誤狀態的步驟410和診斷錯誤的步驟420。在一個實施例中,設備例如110、120、130和/或140執行該方法。在另一個實施例中,分布式菊花鏈對等回路包括一個FC-AL 150。在另一個實施例中,設備是磁盤驅動器200。
在另一個實施例中,識別步驟310包括在分布式菊花鏈對等回路100中,從本地來源接收直接的上游設備120或130的一個當前的錯誤狀況計數370;在分布式菊花鏈對等回路150中,從本地來源接收直接的上游設備120或130的一個先前的錯誤狀況計數330;如在375中,將當前的錯誤狀況計數與先前的錯誤狀況計數進行比較;并確定該比較指出錯誤385。在另一個實施例中,在接收步驟520之后執行接收步驟370。
在另一個實施例中,接收步驟330在設備110、120、130和/或140的初始化期間執行。
在另一個實施例中,確定步驟540包括確定當前的錯誤狀況計數不同于先前的錯誤狀況計數610。當錯誤狀況計數不同時,上游設備也已經檢測到一個錯誤,上游設備與設備之間的鏈路不是錯誤的來源。
在一個附加實施例中,診斷步驟420包括測試630分布式菊花鏈對等回路中的設備與直接的上游設備之間的一個鏈路。測試步驟630還可包括通過分布式菊花鏈對等回路將數據從直接的上游設備傳送到該設備,并確定當傳輸數據時,設備沒有接收到數據。
在另一個實施例中,診斷步驟420包括生成錯誤報告620,指出懷疑錯誤在分布式菊花鏈對等回路中的設備與直接的上游設備之間的一個鏈路中。
本發明包括一個信息處理系統900,該系統包括與回路720中的上游設備耦合的一個通信設備710,以及用于識別局部記錄在分布式菊花鏈對等回路730中的設備上的錯誤狀態的一個裝置。
本發明還包括回路150中的一個同等裝置700,該裝置包括一個通信輸入端710,以及與通信輸入端進行通信的一個回路錯誤隔離管理應用程序730。回路錯誤隔離管理應用程序730的一個實施例包括回路中的上游設備的特性的一個判定程序810、與判定程序進行通信的特性的本地存儲器820、與存儲器進行通信的來自回路中的上游設備的鏈路錯誤計數的請求程序830、與請求程序830進行通信的鏈路錯誤計數的一個本地存儲器840、來自回路中的上游設備的當前的鏈路錯誤計數的請求程序850、配置回路變化的一個判定程序860、與判定程序860進行通信的當前的鏈路錯誤計數和被保存的錯誤計數的比較器870、鏈路錯誤計數的存儲器840、當前的鏈路錯誤計數的存儲器850、與比較器進行通信的鏈路錯誤的解決程序880、與比較器870和特性的存儲器820進行通信的設備錯誤診斷請求的發送器890。在裝置700的一個實施例中,同等裝置700包括具有一個底部和旋轉地附著于該底部的一個磁盤驅動器200。在另一個實施例中,解決程序880包括一個鏈路試驗器。在另一個實施例中,回路中的上游設備的特性的判定程序810包括從回路映射中檢索上游設備的特性的一個檢索器。在另一個實施例中,裝置包括與回路中的上游設備的特性的判定程序810進行通信并與特性的本地存儲器進行通信的一個初始化程序。
信息處理系統(例如,磁盤驅動器)包括與回路中的其他設備進行通信的一個控制器,并執行分布式或對等回路錯誤診斷。回路的一個例子是光纖通道調停回路。通過監控錯誤計數以確定錯誤計數是否正在增加,分布式或對等回路錯誤診斷技術就能識別和診斷直接的上游設備和直接的上游鏈路中的錯誤。增加的錯誤計數或改變的回路配置指出,錯誤來源不是上游設備;而未改變的錯誤計數和未改變的回路配置則指出,錯誤來源是上游鏈路。
不言而喻,以上的描述意在進行說明,而不是加以限制。通過閱讀以上描述,精通該技術領域的人將了解許多其他的實施例。所以,應該參考所附的權利要求以及被授權這些權利要求的同等物的全部范圍,來確定本發明的范圍。
權利要求
1.分布式菊花鏈對等回路中的回路錯誤診斷的一種方法,該方法由分布式菊花鏈對等回路中的設備執行,其特征在于,所述方法包括以下步驟(a)識別局部記錄在分布式菊花鏈對等回路中的設備上的錯誤狀態;以及,(b)診斷錯誤。
2.如權利要求1所述的方法,其特征在于,所述識別步驟(a)包括(a)(1)從本地來源接收分布式菊花鏈對等回路中的上游設備的一個當前的錯誤狀況計數;(a)(2)從本地來源接收分布式菊花鏈對等回路中的上游設備的一個先前的錯誤狀況計數;以及,(a)(3)將當前的錯誤狀況計數與先前的錯誤狀況計數進行比較。
3.如權利要求2所述的方法,其特征在于,識別步驟(a)還包括確定比較指出錯誤和從一個組中選擇當前的錯誤狀況計數的步驟(a)(4)該組包括等同于先前的錯誤狀況計數和不等同于先前的錯誤狀況計數;以及,診斷步驟(b)包括生成錯誤報告的步驟(b)(1),該錯誤報告指出,懷疑錯誤在分布式菊花鏈對等回路中的設備與上游設備之間的一個鏈路中。
4.如權利要求3所述的方法,其特征在于,所述診斷步驟(b)包括(b)(1)確定不懷疑錯誤來源在分布式菊花鏈對等回路中的設備與上游設備之間的一個鏈路中;以及,(b)(2)測試分布式菊花鏈對等回路中的設備與上游設備之間的一個鏈路。
5.如權利要求4所述的方法,其特征在于,所述測試步驟(b)(2)包括(b)(2)(i)通過分布式菊花鏈對等回路將數據從上游設備傳輸到該設備;以及,(b)(2)(ii)確定當傳輸數據時,該設備沒有接收到數據。
6.回路中的一種同等裝置,其特征在于,包括一個通信輸入端;以及,與所述通信輸入端耦合的一個回路錯誤隔離管理應用程序。
7.如權利要求6所述的同等裝置,其特征在于,所述回路錯誤隔離管理應用程序包括回路中的上游設備的特性的一個判定程序;特性的本地存儲器,與所述判定程序耦合;來自回路中的上游設備的鏈路錯誤計數的一個請求程序,與所述存儲器耦合;鏈路錯誤計數的本地存儲器,與所述請求程序耦合;來自回路中的上游設備的當前鏈路錯誤計數的一個請求程序;配置回路變化的一個判定程序;當前鏈路錯誤計數與被保存的錯誤計數的比較器,與所述判定程序、鏈路錯誤計數的存儲器和當前的鏈路錯誤計數的存儲器耦合;鏈路錯誤的一個解決程序,與所述比較器耦合;以及,與所述比較器和特性存儲器耦合的設備錯誤診斷請求發送器。
8.如權利要求6所述的同等裝置,其特征在于,所述解決程序包括一個鏈路試驗器;回路中的上游設備的特性判定程序包括從回路映射中檢索上游設備特性的一個檢索程序;并且,所述裝置包括初始化程序,與回路中的上游設備的特性判定程序耦合,并與特性本地存儲器耦合。
9.如權利要求6所述的同等裝置,其特征在于,所述同等裝置還包括一個磁盤驅動器。
10.一種信息處理系統,其特征在于,包括與回路中的上游設備耦合的一個通信設備;以及,用于識別局部記錄在分布式菊花鏈對等回路中的設備上的錯誤狀態的裝置。
全文摘要
一種信息處理系統(例如,磁盤驅動器)包括一個控制器,該控制器與回路中的其他設備進行通信并執行分布式或對等回路錯誤診斷。回路的一個例子是光纖通道調停回路。通過監控錯誤計數以確定錯誤計數是否正在增加,分布式或對等回路錯誤診斷技術就能識別并診斷直接的上游設備和直接的上游鏈路中的錯誤。增加的錯誤計數或改變的回路配置指出錯誤來源不是上游設備,而未改變的錯誤計數和未改變的回路配置則指出錯誤來源是上游鏈路。
文檔編號G06F11/00GK1391673SQ00816032
公開日2003年1月15日 申請日期2000年11月22日 優先權日1999年11月22日
發明者M·H·米勒, J·A·庫姆斯 申請人:西加特技術有限責任公司