TWI253569B - Computer system, redundant storage virtualization subsystem, external storage, virtualization controller, computer-readable storage medium, and related methods thereof - Google Patents

Computer system, redundant storage virtualization subsystem, external storage, virtualization controller, computer-readable storage medium, and related methods thereof Download PDF

Info

Publication number
TWI253569B
TWI253569B TW093118844A TW93118844A TWI253569B TW I253569 B TWI253569 B TW I253569B TW 093118844 A TW093118844 A TW 093118844A TW 93118844 A TW93118844 A TW 93118844A TW I253569 B TWI253569 B TW I253569B
Authority
TW
Taiwan
Prior art keywords
storage virtualization
access
controller
redundant
storage
Prior art date
Application number
TW093118844A
Other languages
English (en)
Other versions
TW200502788A (en
Inventor
Ling-Yi Liu
Tse-Han Lee
Michael Gordon Schnapp
Yun-Huei Wang
Chung-Hua Pao
Original Assignee
Infortrend Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infortrend Technology Inc filed Critical Infortrend Technology Inc
Publication of TW200502788A publication Critical patent/TW200502788A/zh
Application granted granted Critical
Publication of TWI253569B publication Critical patent/TWI253569B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Description

1253569 玖、發明說明: 【發明所屬之技術領域】 本發明係與一冗餘外部儲存虛擬化電腦系統(redundant external storage virtualization computer system)相關,尤 指一種利用點對點序列訊號連結作為主要裝置端輸出入(I0)裝置 連結之冗餘外部儲存虛擬化電腦系統。 【先前技術】 所謂儲存虛擬化(storage virtualization)係一種將實體儲存 空間虛擬化的技術,其係將實體儲存裝置(psD, physical storage devices)的不同區段結合成可供一主機系統存取使用的 邏輯儲存體(logical storage entity)-在此稱為「邏輯媒體單 元」(LMU,logical media unit)。該技術主要用於磁碟陣列⑽a) 儲存虛擬化,經由此磁碟陣列的技術,可將較小實體儲存裝置結 合成為容量較大、可容錯、高效能之邏輯媒體單元。 儲存虛擬化控制器(SVC, storage virtualization Controller) 之主要目的是將實體儲存媒體之各區段之組合映射(卿)形成一 主機系統可見之邏輯媒體單元。由該主機⑽發出之輸出入⑽ 明求於接收之後會先被剖析並解譯,且相關之操作及資料會被編 譯成實體儲存裝置的輸出人請求。這個過程可以是間接地,例如 運用快取、延遲(如··回g(write_back))、預期(耐以_)(先 頃(read-ahead))、群集(gr〇up)等操作來加強效能及其他之操作 1253569 特性,因而-主機輸出入請求並不—定是以 應於實體儲存裝置輸出入請求。 ,、式直接對 ==可_社式(stand_alQne))鮮歧化 翰出入介面連接於主機系㈣存虛擬化控制器:: 妾至位於主機錢外部的裝置,—般而言,外 ” 控制器通常係獨立於主機進行運作。 -子虛挺化 .外部(或獨立式)直接存取磁碟陣列控制器 l"raccess RAID controller)^^^^^^^^,lilf„_ 制— 元,術观成梅_術磁碟陣 二_ level)決定’其所構成的邏輯媒體單元對於主機系 刹β係為可連、―址的,以使每—賴騎輯舰單元可被 1典型地,一個單一的磁碟陣列控制器(single RAID c〇ntroller)^^^ff^ ? 兀y以由實體儲存裝各個區段藉由不_磁碟_而以 不同的方式組合而成,所組合成的各個不同的邏輯雜單元則具 有各該磁碟陣列型態之特性。 •另-個外部儲存虛擬化控制器的例子是麵(九对 a Bunch of rives)柄擬控制$。麵為『僅是—捆碟機』之縮寫,係一組實 體直接存取儲存裝置,並經由—或多個多裝置輸出人裝置連結通 …(ltiple device 10 device interconnect channel)直接連 ;主機系、、克上。但使用點對點輸出入裝置連結連接至該主機 1253569 連^Γ 碟、舰硬_),無法透過直接 連、,、口而構成如前述之細系統,因為這些直 允許多個妓錢賴至獅w道。錄智 ==由將輸出入請求映射到實體直接存取儲咖 =:用賴擬多辦裝置輪^裝置連結直接存取儲存褒置, 連結通道輪細咖洲地經由輯點輪出入褒置 繼咖㈣觸—物磁帶備份子 為了將一即諸存-虛擬化控制器配置成一冗餘對的主要動機係 ' X I倾存趣化㈣器發 ===輕㈣喊讀—=2 ==== 現。 形下另一個控制器可接管其工作而實 而不論此實體儲存裝 在裝置端,較鱗鱗虛概㈣ 置,此兩個_必須_其進行存取,核㈣储存裝 置原本疋否被指定由其所管理 虛擬化控彻、,即便g 在主機端’靡彡驗每—個儲存 原本就沒上m ί ㈣伴齡虛航㈣1"(她)處於 效、維護操作i所、1後又因故下線的情況下(例如像是故障/失 *、4的下線),具有將所有可供存取㈣源呈現 1253569
於主機且使該等資源可被域所彻的能力,這些可存取的資源 也包括原來就指定由另-侧諸存虛擬化控制器所管理的資源“ 於上述裝置端,-代表性的實作方式,係採用多啟動者 〇nultlple-initlator)、多裝置(multlple_device)類型的裝置 端輸出入裝置連結(如:光纖、並列小型電腦系統介面(並列微, Parallel smaU computer咖现此咐咖),而所有财置端 輸出入裝置連結皆連接至此兩_存虛擬化控彻,所以此二儲 存虛擬化控制器中任-個皆可存取連接於裝置端輪出人裝置連壯 上的任何-财難存裝置。纽二儲存虛擬化控彻皆在紅 操作時’每個實體儲存裝置將由其中—贿虛擬化控制哭或另一 儲存虛擬化湖H管理,至於是由制者的設定或 系統組態來決定,例如··對一由實體儲存裝置之磁碟陣列⑽D) 組合所構成的邏輯題單元,此㈣舰單元巾的财實體 裝置’將由此邏輯舰單元所指定的特定儲存虛擬化控制
典型的裝置端實作转,係包含有多裝置輸出人裝置連社, 其係連接至該主機與該二儲存虛擬化控繼,並就每—個連^而 吕,,個虛擬儲存控制器將呈現它自已所獨有的—組映射至 化控制器未上線或是下線時:—购疋的鍺存倾 、、丨在、、泉上的儲存虛擬化控制哭合在 主機端連結上呈現兩組裝置識別碼,其t_組為自已所财^ -組為在正纽態下係指定給其同伴(_)的,城在線上的儲 10 1253569 存虛擬化控制器亦將映射邏輯媒體單元至這些 =ΓΓΓ刚嶋⑽全‘時戶= 未上崎日士 4貝作方案中,即使當一儲存虛擬化控制器 Ί,主機亚不需要特殊魏,來從—個裝置/路 :個’即可_騎錢觸鮮元植棘,句績_、= 吊可以稱為「透日収餘(transparent redundancy)」。 八冗餘儲存虛擬化控制器的組態係分為兩類,第—類是主動—待 2式Wtlve-Standby),在此模式中,其中—個儲存虛擬赌 ^對儲存虛擬化子系財崎有邏輯雜單元騎有輸出入請 求^行魏、管理及處理,而另—儲存虛擬化控制器將僅是處2 待命狀態(stand by) ’而於主_存虛擬化控_發生障礙或失 月匕日守,P遺時接替主動儲存虛擬化控制器。第二種是主動—主動模式 ,tiVe-active),在此模式中,此兩個儲存虛擬化控制器對同; 呈現於此儲存虛擬化子系統中的各種邏輯媒體單元的輸出入請求 進行呈現、管理及處理。在主動—主動模式中,上述二儲存虛擬化 控制為-直都準備在另一個儲存虛擬化控制器因故障 (raalfunetiQn)而導致發轉礙或失能的情況下鮮對方。主動— 主動模式,通常提供較好的效能,因為其兩鋪存倾化控制器 的資源(例如:中央處理器(CPU,centralpr〇cessingunit)時間口、 内部匯流翻寬…等)與單-儲存虛擬化控制器相比可負荷較多 的輸出入請求服務。 1253569 於冗餘儲存虛難系財㈣外—健本要件就是每個儲存 纽化控制益需能監視另一個的狀態。此可利用—介於此二储存 虛擬化控制器間的控制器間通訊通道(ICC,化怜卜 子
c〇圃m如職ehannel)來完成,侧肢通道來域該二I 虛擬化控彻賴作狀態。此通訊通射以是_的,其唯—的子 作用就是錢與絲_存虛擬化子_的操作侧的參數與資 料。或者此通訊通道是〜❹個主機端輕置端的輸出入裝置連 結’經由此種連結’這些操作上的參數、f料交射連同錢些 連結上的域-f轉虛擬化㈣存顧化控制器輸^ 入請求所關聯的資料一起被多工傳輸。 此:冗餘儲存虛擬化系統的另一個重要要件是一個儲存虛擬 化控制器要能使另一個儲存虛擬化控制器,,完全失 能”(completely incapacitate),如此,此儲存虛擬化控制 能不受干擾的完全接替另-個儲存虛擬化控制器。舉例來1為
了讓此-存活的儲存虛擬化控制器承接它同伴的身分,其可能* 要承接該離線_存虛擬化控繼其原先呈現於主機端2 跳㈣裝飾'碼’這接下來’將要求該離線的儲存虛擬: 控制器釋出對這些識別碼的控制。 上述的”失能作用”要件,血刑从於#, /、i地係错由拉啟該離線控 重置訊號線來實現’拉啟重置节號妗监 00 里直況唬線將導致所有外部連 進入一預設狀態,以排除對該存琥、,泉 、, 舌的储存虛擬化控制器可能的千 擾。為了達成前述,-種相的方法是在儲存虛擬化控制器之間 1253569 =結重置訊號線,如此-來—儲存虛擬化控制雜能重置另一儲 f虛擬化控制ϋ。另外—種方法是_儲存虛擬化控制器建立一 =檢測触力的方絲實現,t猶虛缝控繼、自己發生故 早化,其可以藉由拉啟自我的重置訊號來自殺(例如:盆包含一龄
:"r!"(w:tchd^ 5 ^ J :所執仃的程式對此監視計時器的輪詢發生失敗時 =將拉啟-重置訊號),而使所有外部連接訊號線進入一預設 〜、而了排除對存_儲存虛擬化控制奸擾的可能性。 作21上= 諸存虛擬化採用並列SCSi或是光纖輸出入裝置連結 ::£=:=== 連接至單人衣置連結是—種允許多個輸出人裝置被直接 WAL)遍/路(請注意典型的光纖通道仲裁迴圈 料、 有裝置外主動電路,但此電路的目的並非為了 賦予互相連結功能,而县炎、奋广 的故障或是抽射能在細==能發生在直接存取儲存裝置上 儲存裝置)。多接存取 【AL與並列SCSI。多穿置幹出入:^吊見的例子是光纖通道 互連的所有主機及所有裝置戶蹲連肩寬侧此等連結而 方峨物咖_腦系統的 心其中主機端輸出入裝置連結係允許一儲存 1253569 =制器接替其同伴,藉由接收其同伴顺 的輪出入裝置連結的識別碼以及恤、- 連結允魏-鮮卢猶端輸出入裝置 壯η 蝴11存轉料接錢裝置端於中入 =置^^的實體儲存裝置’舉例來說:一典型的輪出入:置連 動°者、==端峨端,係為並列咖或先軸L多啟 式)下的竭結,因此,操作在目標模式(即裝置模 勺匕-儲存虛挺化控制器都連接至該主機上的 二縣在啟動者模式的此二儲存虛擬化控制器連同多個 衣置白連,、、口至裝置端。然而 個實體儲魏置輯,料㈣^制缺點是,當單一 俯衣置轉,視其故障之本質為何,將可 :::出入概结失效而使所有其他連 :: 體儲存聚置無法被存取。 . 現、。上的Μ ==種改_ ’可有效避Μ於—導致單—裝置端連結 使連接於該相贼置端·人裝置連結的其他詩 =2=取中斷,其係藉由使用雙埠實體儲存裝置以及“ 純置增加—的連結而達成 裝置端輸出入裝置連結之阻斷(才万法早― 結控制K:wm @ 貫體儲树置上的連 甘 _早而造成)’將不會造成其他連接於此相同連έ士上的 二=士體儲存裝置無法存取’因為連接至每個實體儲存裝置的第 -連〜將能被絲不計擾地存取這些實體儲存褒置。 14 1253569 圖一所示之架構更具有一優點,就是輸出入請求負載能被分散 於此等几餘裝置端連結間,因而,與圖一所示的每組實體儲存裝 · 置單 連結的結構相比,圖二藉此可有效加倍裝置端輸出入 · 衣置連、、”子系統的整體頻寬。在此情況下,—特選的裝置端輪出 <置連、、°典型地係為光纖FC-AL·,因為目前市售光纖pc一al 貫體儲存|置的雙埠性f,以及此光賴定驗成允許—啟動者 (例如儲存虛擬化控制器)去決定在不同連結上的那一些連結識別 碼對應至相同的實體儲存裝置。 _ 雖:、、i圖—中所示之架構在面對裝置端輸出入裝置連結失效的 問題上,遠比圖―巾所示者確實更為強健,但其仍存有連接於一 實體儲存裝置的故障使得連接至其雙料對上的兩條輸出入穿置 賴同時讀的可紐。絲纽航,再_:欠,連接在相= 二對上的其他貫體儲存裝置的存取將被情。且在由實體儲存媒 體的標準單一冗餘磁碟陣列(刪)組合所構成的邏輯媒體單元 (如夕RAI^5)中,這保證將是—場大災難,因為其可造成在此組*巾_ 的夕们只肢儲存裴置離線而導致整個邏輯儲存單元離線。 【發明内容】 $本U的主要目的,在於提供—種冗餘外存虛擬化電腦系 / 彡統使帛點對點序列訊號傳輸作為主要裝置端輸出 入裝置連結,以解決上述問題。 一 t發明係揭露-種冗餘外部儲存虛擬化電腦系統,包含有: 機用來發达輸出入請求(I0 request); 一冗餘儲存虛擬化 15 1253569 =器對’飾接至主機,用來執行輸出入操作以回應主機之 接至主機之第一盘第存虛擬化控制器對包含有輕 ㈣嶋料-_触_峨所執行的 attachment)^^ 〇 Oology 統令tr用的smr愤供之冗餘外部儲存虛擬化電腦系 、 為主要衣置端輪出入裝置i#纟士,B — ϋ h 裝置都有其專用連結至存虛擬化控制㈣。母古貫體儲存 本發明另_項優點是該_輸出人裝置連結不 有效負載資料的部份,尚可賴控制資訊。 …又貝況的 主 機轉输询,縣提供-存虛擬化控制器對,用來::=··-— 之輪出入請求’其咖输魅叙_=了了出 :==實_咖至;:::: 成員係包括’該組實轉㈣之至少― h断獻«_物物接於 1253569 口亥几餘儲存虛擬化控制哭科· 對中的-個儲存虛擬化;制哭二=冗餘儲存虛擬化控制器 餘儲存虛減㈣__核者上·又下線,則該冗 替兮冗於#以 儲存虛擬化控制器將自動地接 之舰存虛擬化控制器對中該個儲存虛擬化控制器原先執行 本發明再一步揭露—種應 之外部儲存她嶋,#姆===制=、對中 行輪出入操作以回應一主機之輸出入請求;二 結控制器,耦接於該令央處 二广置連 .. 輸出入炎置連結控制器之一者中,®十士 接至魅機;以及至少—裝置 /轉 少一輸“裝置辆控彻之^連、4、置於該至 存裝置並與之執行_ ’用來她至至少-實體儲 擬化_,在,·其卜_部儲存虛 们外口F儲存虛擬化控制哭, 又離線時,將接替該冗餘儲存虛擬化 f 、” 線後 存虛擬化控制器原先所執行之功能/ 、、且中该另-個外部儲 本發明又一步揭露一種於一 擬化控制哭並〜、 第—與―第二外部儲存虛 υ配置為—冗餘儲存麵化控制 亚 行儲存虛擬化方法,該方法包含: ::/之_錢中執 發出的輪出人請求,❹ —_系統_的—主機端 卢凝务㈣ 餘财虛擬化控制H、財的-個計 虛挺化控制器執行輸出入操作,並使用點 々_存 至該電腦系統巾之 ”m喊傳遞方式 W錯魏置,以及當在該冗餘錯存虛 17 ^53569 線,^= 個健存虛擬化控制器未上線或上線後又下 餘儲存虛擬化_射之另—個儲存虛擬化控 用作以回應該主機發出的該輸出人請求,並使 裝置。如虎傳遞方式存取該電腦系統中該至少-實體儲存 第- tt—/揭露—種執行儲存虛擬化於—具有一第一與— 之電腦鋪㈣配置為―冗餘儲存雜化控制器對 儲存虛擬化控制器執行輸出人操作以=:==的1 虛擬化㈣ϋ未地让絲X下._,_/⑽辦 化控制器組中另一個的㈣虛心:二冗雜存虛擬 應該主機發出的該輪出入請求,以存出入操作以回 Ϊ = 3 冗餘輸出入裝置連結埠對執行輪出入請求 讧傳达舰,此冗輯“裝置連 "弟一储存虛擬化控制器之第二輸出人裝置連往璋 由軟==:麵擬化之方法,其編程可以藉 ^ 本發明可叫電腦語錢餘式後再载入 :電腦可讀取湖财,該記錄媒咖是丨⑻、硬碑光 碟或其他可記錄軟體程式之物品。 Μ先 18 1253569 【實施方式】 /請參閱圖三’圖三係為本發明之—實施例的方塊示意圖,此 系統包含有-主機10以及一冗餘儲存虛擬化子系統2〇伽 redundant storage virtualization subsystem) 〇 化子系統2G包含有-冗餘儲存虛擬化控制器對(包括第_^二 儲存虛擬化控制n(sva SV⑵·,與複數個實體儲存裝置彻: 此冗餘儲存虛擬化子纽之賴包含有相_對點輸出入裝置 ,結’用來連接所㈣實體儲存裝置至此二儲存虛擬化控制 200 ”中儲存虛擬化控制器可為一磁碟陣列控 個JB0D模擬器。 ^ 雖…、、圖—中所不僅有一主機i 〇與一儲存虛擬化子系統罚相互 連接^際應用時可用多個主機1〇連接一侧諸存虛擬化子系統 20,或是-主機1G連接多個儲存虛擬化子系統⑼,或是多個 L〇連接f個儲存虛擬化子系統加。主機1〇可為—主機電腦,如 5系、、4 I作站、個人電腦系統或是其他相關電腦等,而 且主機10也可為另_儲存虛擬化控制器。 一為了讓上述兩個控制器·可存取相同的實體儲存裝置420, 本貫施例中在儲存虛擬化控繼與實體儲存裝謂之間的 裝=輸出Μ置連結路#上插人—存取控制開關342。因為點對 ,、、’占、、、、σ的本貝,母次僅有—儲存虛擬化控制器·能啟動存取一 2體儲縣置’即該特定實體赫裝置在當時所被指定到的儲 存虛擬化㈣ϋ ·。個與此實體贿裝謹有關的儲存 19 I253569 虛蛱化控制器200則停留在待命狀態,其連接此特定的實體儲存 衣置的輪出入裝置連結則被禁能(disabled)。每個儲存虛擬化控 制器200有一訊號線與存取控制開關342連接以控制此存取控制 竭關342 ’此開關342係決定那一個儲存虛擬化控制器連結被接通 至貝體儲存裝置420。 汝圖四所示,存取控制開關342外的這些訊號線可以被牽成一 單彳工制汛唬線cs,其係依據圖四十所示之真值表(truth table) 來控制存取控制開關342的狀態。另外,亦可如圖五所示,存取 拴制開關342被設計成接收兩條控制輸入線⑺丨,,而因為從 兩個儲存虛擬化控制器200發出的訊號有四種可能的組合,故每 侧諸存虛擬化控制器送出的控制輸人線⑶,⑽係依據圖四 十中所不之真值表來決定此存取控制開關342的狀態。 、明/主思’在几餘儲存虛擬化子系統中任何主動元件或群組係位 於熱插拔(hot swappable)單元中,所以若一元件發生失效時, 此子系統並不需要關機即可更換此元件,此種熱插拔單元一般被 稱為現場可更換單元(刚,field咖謂此觀t)。因此,主 動兀件i如·貫體儲存裝置與存取控糊關,很自然地應設置於 熱插拔單70巾’且將實體儲存裝置與存取控姻關放置於同一熱 插拔單兀是有其意義的,因為如果缺少任何u下的另一方 也不此獨立運作。因此,存取控綱賴實體齡裝置典型地係 設置於可拆卸的實體儲雜舰(physieai伽奪加麗 20 1253569 canister)中,圖二+丄命一丄、只日r 一 —卞,、14二十八,即頒示了此種設計的方塊示意 圖。 在貝方木中,於此儲存虛擬化子系統20中的所有的實體 儲存裝置馳合軸—實體齡侧,減所有存取 控制開關342可组成—開關電路340,圖六即為此種實作方案的一 例子BU為本發明中連接至主機1〇及實體儲存裝置陣列侧 的儲存虛擬化控㈣_之—實施财塊圖。此實施例中,第一 儲存虛擬化控彻咖)咖包含有—域端輪出人裝置連結控 制器220、-中央處理電路(cpc,⑽㈣_⑽細 circuit)24G、-讀、體、一 sm輸出入裝置連結控制器_ 以及一冗餘控制器通訊⑽,redundant c〇ntr〇此 c〇m_icating)連結控制器跳。此處雖以分開的功能方塊描述, :於實際應㈣’部份甚至全部的功能方塊如比圓i Mock) 皆可整合在-單-晶片上。例如:虹連結控制^ 236能與主機端 輸出入裝置連結控制器220整合為一單晶片Ic。 主機端輸出入裝置連結控制器22〇連接至主機ι〇及中央處理 電路240,用來作為第一儲存虛擬化控制器⑽⑴·及主機1〇 =間的介面及緩衝’其可接收由域1Q傳來的輸出人請求和相關 ㈣,並且將其轉換及/或映射至中央處理電路灿。主機端輸出 入衣置連結控制22G可以包含有一或多個用來輕接於主機^之 主機端埠。此處職及之埠的_可以為:先_道支援灿咖 連結(fibre ehannel suppGrting fabric)、,轉輯結、公用避 21 1253569 路連結及/或專用迴路連結於目標模式,操作於目標模式之並列小 型電腦系統介面(並列 SCSI, parallel small computer system ' interface)、支援網際網路scsi(iscsi,internet SCSI)協定且 _ 知作於目標模式之之乙太網路,操作於目標模式之序列附加 SCSKSAS,serial-attached SCSI),以及操作於目標模式之序列 serial advanced technology attachment)。 虽中央處王里電路240接收到來自主機端輸出入裝置連結控制 器220之主機輸出入請求時,中央處理電路24〇會將此輸出入請 求剖析,並且執行-些操作以回應此輸出人請求,以及將所請求 之資料及/或報告及/或資訊,由第—儲存虛擬化控制器咖妹由 主機端輸出入裝置連結控制器22〇傳送至主機1〇。將主㈣傳入 之輸出入請求墙之後,若所_的為—讀取請求且—或多個於 作被執行以為蘭時,中央處理電路24(}會由⑽或師木 中或藉由此二種方式取得所請求的資料,並將這师料傳 tl0取^^Γ#縫絲⑽取得或並林在於記憶體勝 I貝取,月求將會經由SATA輸出入較連結控制器期及該 路340發送至實體儲存裝置陣列卿电 命Μ紗六壯m 土 、 乂二斤口月求的貧料將由 貝粗齡I置陣列棚傳送至記憶體咖,之後再經 由 入裝置連結控制器22〇傳送到機 、而幸別出 求(wme request)傳達至中央處理電路24〇時,於寫入往^月 析亚執行-或多個操作後,中央處理月、破剖 电路240透過主機端輪出入 22 1253569 k置連結控制器220接收從主機1〇傳入之資料,將其儲存 體f t。對於同步或非同步裝置操作兩者,f料皆經由中央處心 理电路240傳送至實體儲存裝f陣列獅。當該寫入請求為一回寫 明求Ovrite back request),輸出入做完報告(i〇 c卿㈣呵〇rt) 會先被傳送至主機10,而後中央處理電路240才會執行實際的寫 入操作;而當該寫人請求為—完全寫人請求(write through request) ’則輸出入做完報告會在資料已實際寫入實體儲存裝置 陣列棚後才被傳送至主機1G。記憶體测係連接於中央 路⑽其作為-緩_,用來緩衝傳送於域.1Q及實體儲存裝 置陣列棚之間通過中央處理電路24〇的資料。實際應用時,記 憶體280可以是動態隨機存取記憶體⑽M,細缝rand〇m access memory),或更特別地,該醜亦可為同步動態隨機存取 記憶體(SDRAM,synchronous dynamic rand〇m 咖⑽肥顧^.。 SATA輸出人裝置連結控彻·係為介於t央處理電路24〇 及實體儲存裝置_ 4_之裝置端輸出人裝置連結控制器,用 來作為儲存虛擬化控制器200及實體儲存裝置陣列侧間之介面 及緩衝。SATA輸出入裝置連結控制器3〇〇接收由中央處理電路24〇 傳入之輸出人請求及侧資料’並將其映射及/或傳送至實體儲存 裝置陣列400。為了符合SATA協定的規範,㈣輸出入裝置連結 控制器删會將經由中央處理電路施傳入之資料及控制訊· 格式化,並且將這些資料及訊號傳送至實體儲存裝置陣列棚。 於本實施例中’可於中央處理電路24〇上附接一箱體管理服 23 1253569 ^t^ 360(EMSclrcuitry, enclosure serv.ce
ClrCUitry),作為—容置實體儲存裝置陣列棚箱體的管理電路。 ^而儲存虛擬化子系統2〇转其他㈣置方式,例如可依各種不 ^產品的魏設計喊’㈣紐管賴務箱鮮觀務電路咖 省略’或是將箱體管理服務箱體;I;理服務電路·整合在中央處 理電路240中。 、 在本貝知例中在苐一儲存虛擬化控制器(Svci) 2q〇上的rcc 連結控制H 236 _來連接巾央處理電路到第二儲存虛擬化 控制器(SV⑵2G()。除此之外,SATA輸出人裝置連結控制器3〇〇 係經由開關電路340 1%接至實體儲存裝置陣歹,H〇〇,開關電路34〇 亦連接至第二儲存虛擬化控制器(svc幻2〇〇。在此一架構中,第二 储存虛擬化控制器(SVC2) 2⑽可附接於第一儲存虛擬化控制器 (SVC1) 200 ’且實體儲存裝置陣列4〇〇可藉由開關電路34〇,而被 此兩個健存虛擬化控制器所存取。更甚者,由主機丨〇發出的 控制/貢料訊號可從中央處理電路24〇透過RCC連結控制器2祁傳 送給第二儲存虛擬化控制器(SVC2) 200或更進一步地傳送給一第 二實體儲存裝置陣列(圖中未示)。 请麥閱圖七,圖七為中央處理電路24〇之一實施例,其中包 3 有 CPU 日日片組/同位引擎 224(CPU chipset/parity engine),一 中央處理ϋ 242(CPU),-唯讀記憶體施(丽,read 〇nly memory),一非揮發性隨機存取記憶體248 (NVRAM,v〇latile random access memory) ’ 一液晶顯示模組 350 (liquid crystal 24 1253569 display module,LCD module),及一箱體管理服務電路360。其 中该CPU 242可為,例如,一 power pc CPU,而ROM 246可為一 快閃記憶體,用來儲存基本輸入/輸出系統(BI0S)及/或其他程 式。NVRAM 248用來儲存該實體儲存裝置陣列輸出入操作執行狀態 的相關資訊,以備輪出入操作尚未做完前發生不正常電源關閉 時,作檢驗使用。LCD模組350則是用來顯示子系統的操作狀態, 箱體管理服務電路360用來控制該實體儲存裝置陣列之電源及進 行其他之管理。ROM 246, NVRAM 248, LCD模組350及箱體管理服 務電路360皆經由一 X—匯流排(X—bus)連結至cpu晶片組/同位引 擎224。又,該NVRAM 248及該LCD模組350係為可選擇項目, 在本發明之另一種配置中可以省略不設。 圖八為本發明中CPU晶片組/同位引擎224之一實施例,CPU 晶片組/同位引擎224包含有同位引擎260,CPU介面910,記憶體 ;丨面 920,周邊元件連結(pci,peripherai c〇mp〇nent interconnect)介面 930、932,X-Bus 介面 940,及主要記憶體(pm, primary memory)匯流排950,其中PM匯流排950,舉例而言,為 一 64-bit,133Mhz匯流排,且連接至同位引擎260、CPU介面910、 記憶體介面920、PCI介面930、932、X-Bus介面940上,用以於 其間通聯資料訊號及控制訊號。 由主機端輸出入裝置連結控制器220所發出之資料及控制信 號經由PCI介面930,傳送至PM先進先出緩衝器934(PM FIFO) 中緩衝’再進入CPU晶片組/同位引擎224。其中連結至主機端輸 25 1253569 出入衣置連結控制器220之PCI介面93〇可為 ,舉例而言,64-bit, 1之^員見於PCI從屬週期(PCI slave cycle)中,PCI介面 〇擁有PM匯流排95〇(pm Bus),使PM先進先出緩衝器934中之 貝料及控制信號被傳送至記憶體介面_或是cpu介面91〇。 由PM Bus 950傳至CPU介面910之資料及控制信號,而後會 傳送至CPU 242進行進一步的處理,而cpu介面91〇及CPU 242 間的溝通管道則可為,舉_言,64-bit資料傳輸線及32-bit 位址線來進行。此資料及控制信號會經由-頻寬為64-bit, 133Mhz之CPU至記憶體先進先出緩衝器922(CM FIFO,CPU to memroy FIFO),傳送至記憶體介面92〇。 在CM先進先出緩衝器922及記憶體介面92〇之間,有一除錯 ^^±t^ 924(ECC circuit, error correction code circuit) ’用以產生一 ECC碼,而其產生的方式可為,舉例而言, 將8-bit的資料以互斥或(x〇R)運算後,產生一單一位元之ecc 碼。接下來,記憶體介面920將資料及ECC碼儲存在記憶體28〇 中。該記憶體280可為,舉例而言,SDRAM。而記憶體28〇中的資 料經過除錯碼修正電路926⑽⑺·t題cimiit),並與除錯 碼產生電路924中的ECC碼作比較,最後再被傳送到pM Bus 95〇, 其中除錯碼修正電路926是用來進行單—位元自動修正(卜阶 auto-correction)及多位元偵錯(腿lti—bit err〇r 呢)。 同位引擎260會回應於CPU 242的指示,來執行一特定磁碟 陣列型怨之同位功能。當然,在一些特定的條件下,比如說腿加, 26 1253569 同位引擎260可以關掉而不執行同位功能。於圖八所示之實施例 中,同位引擎260包含有一 XOR引擎262經由XOR先進先出緩衝 器(XOR FIFO)264而連接至PM Bus 950。該XOR引擎262,舉例而 言,可對一給定之位址及長度的記憶體位置來執行X〇r運算。 鎖相迴路980(PLL,phase locked loop)是用於在相關訊號間 維持適當的相移(phase shift)。而計時控制器982 (timer controller)是用來提供各種不同時脈及訊號的時間基準。内部暫 存器984 (internal register)是用來暫存CPU晶片/同位引擎224 的狀態,及控制PM Bus 950中的資料流動,而一對通用.非同步收 發器(UART,universal asynchronous receiver and transmi廿從,) 功能方塊986則是用作CPU晶片/同位引擎224對外的介面,且該 介面規格為RS232。 於實際應用時,PCI介面930,932可代換為周邊元件連結擴 充(PCI-X, peripheral component interc〇nnect extended)介 面’或者是以周邊元件連結快捷(PCI Express)介面取代pci介面 930 , 932 。 請參考圖九,圖九顧六中SATA輸出人裝置連結控制器· 之方塊圖’於本實施例中,遍輸出入裝置連結控制器_包含 有兩個 Pd-X 轉 SATA 控制器 31〇 (pci—χ t〇 c〇n_⑻。 圖十為圖九中PCI-X轉SATA控制器⑽之方塊圖,其中每個p㈣ 轉SATA控制器310包含有一連接至中央處理電路之⑽—X介 面粑,-連接至PCI_X介面312之解碼/多工仲裁器犯 27 1253569
(Dec/Mux arbiter),以及八個連接至Dec/Mux仲裁器314之SATA 埠60〇cPCI-X介面312包含有一連接至Dec/Mux仲裁器314之匯 二 流排介面318,以及一用來儲存PCI-X轉SATA控制器31〇組態之 : 組態電路 316 (configuration circuit)。Dec/Mux 仲裁器 314 將 在PCI-X介面312與複數個SATA埠600間進行仲裁,且執行自 PCI-X介面312至SATA埠600之交易(transaction)之位址解碼。 而資料及控制訊號將經由此PCI-X轉SATA控制器310之SATA蜂 600,被傳送至實體儲存裝置420。於實際應用中,PCI—乂轉从^ ^ 控制态310可由PCI轉SATA控制器取代,而在pci轉“ΤΑ控制 态中’ PCI-X介面312可由一 PCI介面取代。同樣地,在其他的實
施例卜PCI-X轉SATA控制器310可由- pci Express轉SATA 控制器取代,而在PCI Express轉SATA控制器中,pci—χ介面312 係由一 PCI Express介面取代。 接下來請參考圖十-’圖十—為圖十中SATA璋之一實施 例方塊圖。如圖十-中所示,SA料_包含有一超集合暫存器修 630 (琴rset reglster),—指令區塊暫存器帽(⑺麵ndblock reglSter),一控制區塊暫存器咖(咖_ block reglster), 以及-直接記憶體存取暫存器咖⑽A邮伽),前述所有的 暫存器係經由Dec/Mux仲裁器314,而連接至ρπ—χ介面312的 匯流排介面318。㈣填值於上述之财爾,得以及透過-由直接記憶體存取控制器67〇所控制之雙蜂先進先出緩衝器 咖,而在⑽麻仲裁器314與傳輪層_ (transport layer) 28 1253569 間傳輸。資料傳送至傳輸層690後,會被再格式化成為框架資訊 - 結構(FIS,frame information structure),並傳送到連結層 7〇〇 * (link layer) 〇 - 連結層700務後將框架資訊結構再格式化成為框架, 係以加入框架起始資訊(S〇F,start of frame),循環冗餘校驗 碼(CRC,cyclic-redundancy check code),框架結束資訊(e〇f, end of frame)等,並將其以8b/l〇b編碼方式轉譯成8b/l〇b編 碼之字元而達成,並將其傳送到實體層(ρΗγ layer)。 ❿ 實體層710係經由一對差動訊號線(differential signal 1 ines)—傳輸線UX+及LTX-—傳送出訊號至實體儲存裝置42〇, 並經由.另一對差動訊號線一接收線LRX+& LRX—一接收來自實體 儲存裝置420之訊號,其中各組的兩條訊號線.,例如LTX+& LTX一, 係同時個別傳送以一參考電壓Vref為準的正負電壓的訊號 TX+/TX-,例如+V/-V或是-V/+V的電壓訊號,所以它們的電壓差 是+2V或是-2V,如此一來便可增加訊號的品質。在LRX+及LRX— φ 接收線上也可以使用相同的方法接收訊號RX+/RX—。 當-框架由實_ 710傳送至連結層·,連結層·將用 8b/10b編碼的字兀進行解碼,並且除去s〇{?,CRC,E〇F的部份, 其中經由框架貪訊結構FIS計算得出的CRC將會被拿來與所接收 到CRC作比較,用來確定所接收之資訊的正確性。當傳輸層69〇 接收到來自連結層700白勺FIS訊號,傳輸層_將會決定ns的 型式,並依照FIS的型式將fIS的内容傳送到所指定的區域。 29 1253569 圖十二為符合SATA協定之傳輸結構,其中於序列線中通聯的 訊號為一連串使用8b/10b編碼之字元,其最小單位為雙字組 〜 (double-word,32位元)。每一個雙字組的内容將被組合以提供低 , 階的控制資訊,或是用以傳送主機與相連結之裝置間的資訊,而 在δίΐ號線上傳送的兩種資料結構為原素(口^^瓜丨七“^以及框架。 一原素係由一單一的雙字組所組成,其係為主機與裝置間通 成資吼中最簡單的單位。當一原素中的位元組在編碼之後,其所 產生的型樣(pattern)便不容易被誤解成其他型式的原素或是其 儀 他任思的型悲。原素主要的用途是傳送即時(real—time)狀態的資 訊,這些資訊是用來控制資訊的傳遞以及協調主機及裝置間的通 訊。一原素之第一位元組為一特別的字元。 框木疋由複數個雙子組所構成,並以(start 〇f Frame) 原素開始,以EOF (End of Frame)原素結束。在S0F原素之後為 一使用者有效負載,稱之為框架資訊結構〇pIS,frame information structure)。另外循環冗餘校驗碼(CRC)為緊接在 馨 EOF原素之鈾的敢後非原素雙字組,且crc為依據is運算得來。 另外,介於S0F與EOF間可以有流程控制原素H〇LD或是H〇LM用 來調整資料流,以達到速率匹配(speed matching)的目的。 傳輸層690係用來建構FIS以用於傳送,以及是於自連結層 700接收到FIS時將其分解。且該傳輸層69〇並不維護ATA指令或 是先前的FIS内容的所後關係(context)。當收到請求時,傳輸層 690會收集FIS内容,並依照正確的順序建構FIS。ns的型態有 30 1253569 很多種,圖十三及十四分別為其中之一。 請芩閱圖十三,圖十三係為一資訊框架之示意圖。如圖中所 示,一直接記憶體存取設定之FIS在攔位〇處包含有一標頭 (HEADER),而其第一位元組(位元組〇)則定義了該FIs的型態 (41h),此FIS的型態則定義了此FIS其餘的攔位,和定義它的全 部長度為七個雙字組。位元組1中的位元D則標示了該後續資料 傳送的方向,D為1表示傳送端至接收端,D為〇則表示接收端至 傳送端。位元組1中的位元I為一中斷位元(interrupt bit),而 位元R為一保留位元,且設為〇。直接記憶體存取緩衝器識別碼之 高/低攔位(DMA buffer identifier high/low field,攔位 2 和 攔位1) ’則分別標示了該主機記憶體之直接記憶體存取緩衝區 域。直接記憶體存取緩衝器偏移欄(DMA buffer 〇ffset fieid5 field 4) ’為進入緩衝态内之位元組偏移。直接記憶體存取傳送 計數欄(DMA transfer count field, field 5),則為此裝置所讀 取或寫入的位元組數量。 請參閱圖十四,圖十四係為另一型態之資訊框架之示意圖。 如圖中所示,一資料FIS(DATAFIS)於欄位〇處包含有一標頭,且 該第一位元組(位元組0)定義了該資料型FIS的型式(46h),而此 FIS的型式則定義了其餘的攔位以及它的全長為n+i雙字組 (double-word)。還有,位元組1中的R位元則為保留位元,並且 設定為0,而攔位1至η為雙字組資料,其中包含有要傳送的資料。 一單一資料FIS内的資料係有上限。 31 1253569 。月口顧在圖六之實施例,主機端輸出人裝置連 =置端㈣Μ置連結控鄉_(咖輸出人裝置連触 ===用相同類型之IC晶片,而其中主機端輸出人裝置連; 出入H上的輪出人Μ連結埠之組態係被設定為域端的輸 入壯=連料,而裝置端輸出人裝置連結控制_中之輸出 ,料之組態顺設定域置端的輸ϋ人裝置連結槔使 主機亦可制—單―晶片,其組g可被設定為_包含有 一輸出人裝置連結埠及裝置端輪“裝置連結埠,用以在同 一日=分接至主機1{)及實體儲存裝置陣列權。 342 所述之存取_關 曰”、在一狀悲而讓被指定處理裝置端輸出入請求的儲存虛 配接至細她哪,崎些裝置端 ,出入"求係為回應域端輸出人請求所產生之操作的結果, #^ 2〇〇 “子取Λ體儲存裝置·,此情況可能出現的—個組態的例子是, Ζ虛擬化控制器中之—被選定為主人(%浙),當此儲 擬化控制器涉及某些實體儲存裝置相關管理功能時,且 此官理功能係由此儲存虛擬化控制器所執行(例如:監視 體储存I置420的健康狀態或對實體儲存裝置上的媒體的某 —個保留給儲存虛擬控制器組内部使用的區域進行存取),同時, Γ些可經^賴_她哪刪棘的邏輯媒體 早凡,則疋4曰疋給另-個儲存虛擬化控制器雇作為處理主機端 32 1253569 輸出入明长之用。在此情況下,該等儲存虛擬化控制器200彼此 之間可以互相通訊(如可能可以透過圖六所示的舣連結控制器 2⑹,以決定—適當的機會,使開關342陳態得以安全地被改 .又進而允5午另-個儲存虛擬化控制器2〇〇對此實體儲存裝置棚 進行存取,❿無須中斷實體儲存裝置420正在進行中的存取。此 步驟在其後將稱之為,’實體儲存裝置存取權轉移”。 圖十五為-轉換程相流程圖,其巾每—儲存虛擬化控制器 2〇〇皆能決定存取控制開關342目前的狀態,其係利用允許儲存 虛擬化控制H 2GG讀贿制訊號的狀態,由讓每—個儲存虛 擬化,器200在記憶體中維護一存放目前狀態的鏡像而達成二 目刖未配接至貫體儲存裝置42〇卻要求存取實體儲存裝置物 的儲存虛擬化控_ 20(稱為存取權請求者,此⑽ master),將發出一個請求給目前正配 的儲存虛擬化控制器(稱為存取權所有者,幻,使 此存取控制_ 342峨態得以油換成允許此存轉請求 取實體儲存裝置。當存轉财者接_此請求時,此存 所有者會等待一”適當”的時機,來開始此轉換程序,此程序必 須使任何正在進行令(pending)的輸出入請求被做完、並將所有尚 未開始執行的輸出人請求放人制中(queueing)。當所有正在 進行令的請求幢做完,此存取權所有者就會更改它的開關抑制 _的狀態,以釋出對實體儲存裝置的存取能力,然後 —個應答崎(admQwledgement)給躲權請求者,告知它現在 33 1253569 可以安全的存取實雜置了。此時,存轉請求者 改其開關㈣訊制狀態,吨得可對實體儲輕置蛛存 mr得轉換程序完成,同時此存取請求者將變成新的存取 摧所有者。 —此時’新的存取權所有者是可自由的依意願去發出輸出入請求 給貫體儲純置·’並且新的存取權所有者可保留此所有權,直 到原本的存取騎有者請求將存取權_回去,並錢行上述相 同的步驟。或者,在-些”適當,’㈣機’例如,所有當時要發 的輪出入請求把執行完畢時,此新的存取權所有者可以自動地 開始切回(swltch-ba⑻程序,此係藉由更改其存取開關控制訊號 的狀態,崎出對實體儲存裝置伽的存取能力,以及發出一主 動發出的(unsolicited)應答訊號給原先的存取權所有者,告知它 新的存取權财者已财存取權,此原先的存取_有者現在可 以收回存取權了。 基本上來說’不論是新的存取權所有者保留所有權直到原本的 存取權所有者發出-,,朗”請求,或是自動轉移所有權給原本 的存取權所有者,要何财式,可以是⑽設而固定, 或是根據-些因素而動態決定’如:此二個儲存虛擬化控制器相 對的存取頻率,或比對保留所有權與自動歸還所有權給原本的存 取權所有者此兩方式在效能上相對的影響。 為達成上述轉換程序,有一些控制器間通訊的機制可供選用。 在這裡提出一種可能的通訊機制,其係為二元訊號對存取所有權 34 1253569 仲裁機制(binary signal pair access ownership arbitration mechanism),其中每一 SATA輸出入裝置連結均有一對“存取請 求”訊號線,對於每一條數位二元訊號線,都有一個儲存虛擬化 控制器200可設定/清除此訊號線(在此訊號線上的”主動,,儲存 虛擬化控制器),以及有另一儲存虛擬化控制器2〇〇可讀取此訊 號線的狀態(”被動”儲存虛擬化控制器)。此存取請求訊號線 中之一以第一儲存虛擬化控制器(SVC1 )2⑽為主動端、第二儲存虛 擬化控制器(SVC2)200為被動端,同時,另一存取請求訊號線係: 第一儲存虛擬化控制器(SVC1 )200為被動端、第二儲存虛擬化控制 器(SVC2)200為主動端。在被動端,儲存虛擬化控制器會讀取 其另一個儲存虛擬化控制器的存取請求訊號的目前狀態,以及從 上回的讀取後是否訊號線曾改變過狀態。當讀取時,則後者將被 清除’亦即從上回的讀取後是魏號線曾發生舰態改變之紀錄 將會被清除。 ' 在此一機制中,起初 ......‘铽存虛擬化控制器200擁有SATA輸 出入裝置連結賴有_及树於此輸^裝置連結的訊號線係 ^拉啟^assert)狀悲,當另一個儲存虛擬化控制器綱意欲取 付所有核時’其成為—存取請求者並且拉啟其,,主動,,訊號線, 然後監視其”肋,’訊親,監看其狀態的改變,此改變代表者 此訊號線在-些時點諸停止減(deassert),㈣,代表 ==者應彻纟㈣,她化控制器、 可利祕勝取㈣關⑽_,來接_趟輸出入 1253569 裝置連結,所以該發出請求的儲存虛擬化控制 體儲存裝置420上了。 ⑽ 就配接到實 另-方面,此存取權所有者會持續監視其被動訊料 捕壬何正在進行中的輸出入請求,同時將 = 放f列中。當所有正在進行_出人請求皆做完, 啟其主動訊號線,以應答此存取控制請求。二拉 控制,例如當細·請求被排在撕岭 ,而不是監視—停止拉敬狀態,因為麵權所^ 此在V止拉啟之後接著立刻拉啟訊號線,而使存 本沒有機會细_t停錄啟織 4者根 流程圖。 叶4▲貞响述於前的 取财料賴制之—變伽__存 取:_移,係利用一對硬體電路,此處 峨 2為-個,明接控制存取控綱編號,而不是控制那 i直接由鱗虛擬储繼來㈣的訊號。 盆中卢所有權仲裁電路中之一的輪出端係連接並控制與 -個h h統控―侧的存取控制_控舰號,而另 化栌二=柄仲裁電路之輸出端係連接並控制與另-儲存虛擬 化&制純_存取控制關控制峨。除此之外,每一存取所 36 1253569 電路將來自於此二齡倾化控彻的转所有權請求 1二二#广ess。贿物卿est 作為輸入端。 二社1'齡擁有存轉也財請求麵所有權時, 匕的存取所有權請求訊號會維持在停止拉啟的狀態。在此狀能 娜咖獅彻相電路的輸出 啟鳩取伽時,其拉 ^ am,如果此時另—個儲存虛擬化栌制哭 的存取所有權請求訊號係未作動,則此發出請求的儲存虛謝;: 制爾的存取所梅_將會減它的 ^: 作射,咖擬化㈣㈣存取财縣求訊號係為 訊查“求的儲存虛擬化控制器的存 路輸出仍轉停止拉啟狀態,直到另— 甩 取所有權_〖鱗錄啟後,此發蛛_2==存 的存取所有齡裁電路輪料會變為作射4 == 虛擬化控制器的存取所有權仲裁電路的 2 到此發出請求儲存虛擬化控制器的存取所有: 為t ’且此嶋你—儲存虛魏㈣存== 訊號所影響。基本上而言,該二 :取所有“求 取控制開關而放置,嬖如像 中裁u路可緊靠著存 存裝置时。j像疋與存取控制開關—同位於該實體儲 1253569 個儲糊制中需要有一判定設備(祕ty),能在兩 下=匕控制器同時拉啟他們的存取所有權請求訊號的情況 以及# L子虛擬化控制絲判定它是不是被授與存取所有權, 禮目《有存取所有權的儲存虛擬化控制器來欺另一儲存 器㈣請求存取所有權。前者可藉由使一儲存虛擬化 :1〜、决疋存取控制開關的狀態的能力而達成,而使一儲存 =化控_财財另—儲存虛擬化控彻的存輯有權請求 «的狀態的能力則可達成後者。“,既然此兩個判定是在存 取:有權轉移過程期間不同的時間點做出的,它們可以合併成一 個早-设備’其係由每—儲存虛擬化控制器提供單一數位二元訊 號所構成,稱為另一個儲存虛擬化控制器存取所有權請求訊號 alternate storage virtualization controller cess ownership request signal),並且由儲存虛擬化控制器 上所執行的f讀來讀取此輯陳態。正魏態下,這訊號會反 映另-儲存虛擬化控制器的存取所有權請求訊號的狀態,然而, 當此儲存虛擬化控_取得存取所有㈣,它的删R會被清除 為不作動(inactive),而不受另—個齡虛擬化控的存取所 有權請求訊號驗態影響,且會轉此—狀態朗此儲存虛擬化 控制器的減讀取,其後,它能回到正常狀態下而反映另一個儲 存虛擬化控制li的存取所有權請求的狀態。圖十七係為此實施方 案中不同訊號m目互影響的時序5J。請參關十八,圖十八係為 對應至圖十七之存取權仲裁機制的流程圖。如圖中所示,在此一 38 1253569 細權仲裁機制中,當一個儲存虛擬化控制器意欲取得所有權 時’它會拉啟它的廳訊號,然後開始監視它的ASAOR訊號。當 此儲存虛擬化控制器债測到它的脱⑽訊號為不作動時,則知道 其已經取得所有權且可以進行存取實體齡裝置了。接著,此儲 存虛擬化控制器會維持其廳訊號為拉啟的狀態,直到其意欲釋 出存取所有榷為止’亦即停止拉啟其織訊號。上述整個過程中, 儲存虛擬化控制裔想要維持存取所有權,則它除了維持它的題 職為拉啟外,它也監視它的AS膽喊是錄啟,若它制到 匕的ASAOR讯戒拉啟’表示另—個儲存虛擬化控制器希望取得所 有核,則在-個適當的時點’它會開始特所有正在進行中的輸 出入請求麟,同時將所有新的輸出人請求放人糾,而當所有 正在進打中的輸出人請求都做完時,它才會釋出所有權,並且停 止拉啟匕的AOR訊號。如果它希望存取所有權被歸還,如,當有 —新的輸出人π求在彳7列中要被發出時,則它會立刻重新拉啟 它的AOR訊號。 另一種可能軸嶋啦蚊財纽元及/雜元組資訊 傳运的通輯道來傳遞存取所有轉移請求或是應答訊息。一租 低成本、專用的通訊通道,如積體電路間通道⑽l⑹_ 可用來貫現n述交換這些請求或應答訊息的目的。此外,亦可利 見存的帛以允林几餘對中之二個儲存虛擬化控制器彼此互 相溝通之控制關軌通道⑽)來實現,去交換這些存取所有權 轉移明求舖合n ’作為此二儲存虛擬化控制關交換的正常 39 1253569 狀態=訊的—部分。這些__通道可以為光纖通 運、序列先進技補取介面通道、並列小型電腦系統介面通道 乙太網路以及序舰加小型電齡統細通道等。 一種強制存取所有__情況是,#存取權所有者故障 而另一個儲存虛擬化控· 必須接替其功能時。圖十九係顯 示在這種情況下轉換存取所有權的程序。當另—個儲存虛擬化控 制器偵測到此故障贿虛擬化控制器無法正常運作時, 另-_存虛擬化控制器就會拉啟故障儲存虛擬化控制器的 重置訊號(reset signal),使其能完全地失能,並迫使所有的 外部訊號線進人預設狀態。其巾上料部職線中之—為此故障 儲存虛擬化㈣II 的存取控侧做號;在拉啟此儲存 虛擬化控制ϋ的重置訊糾’這控舰號、_被設定成使存活的 儲存虛擬化控制器200能夠配接至實體儲存裝置42〇的狀態。在 拉啟此故障儲存虛擬化控制器的ϋ置訊號之後,該存活的儲存虛 擬化控制器200就會設定其存取控制開關控制訊號,使成為配接 到實體儲存裝置420的狀態,如此一來,即完成轉換存取權的程 序。 存取控制開關342將會持續此狀態直到故障儲存虛擬化控制 為200被更換或是重新上線,並且其請求所有權轉移。其中對每 個儲存虛擬化控制器200處於重置(reset)、電源啟動 (P〇wer-Up)、或初始化(initialization)期間時,其存取控 制開關訊號線的狀悲維持在使此儲存虛擬化控制器2〇〇本身不能 1253569 2配接至實體齡裝細_,叫不會因不慎迫使存取控 制開關342進入一中斷存取的 工 押制i 而干擾其餅上儲存虛擬化 工nb正在妨的實體儲存裝置的存取。 就正常狀態下不具有實體儲钟置·存取所有權的儲存虛 咖空制謂而言’—處理臨時性(⑽-圖1)存取需求的^ 2= ’令存取權所有者扮演—代理者,用來發送此請求存 ==_制㈣Q的輸_求,此錢 虛係稱為存取請求者(此咖卿ester),此方= 义顧仃-,為”輸出人請求重定路徑傳送(I。『叫咖 rerouting),,的操作。在i古錄 必要的輪出入^ °法中,存取請求者必須轉移所有 的貧訊給存取權所有者,用以建構-輸出入請 求lk、、、e貫體儲存裝置42〇。 請求發送或執行期門“^ / 心狀外,在輸出入 實體—請求者將會轉移任何要被寫入 執行後= 存取權所有者,且在輸出入請求 將合任何從實體儲存裝置中讀取的有效負載資料 僂L品你=此存取請求者。在此輸出人請求執行做完,將會回 本做完的狀態給存取請求者,此操作做完狀 成功或失敗以及失敗理崎訊。圖二十係描二為 方法的流程圖。 麵定路徑傳送的功能可經由—冗餘輸出入裝置連 二晉^麵行’此輸出入襄置連結埠對中的每個成員埠係分別 几餘儲存虛擬化控制器對中各儲存虛擬化控制器上,但卻 1253569 透過輪出4置連結連接至相同的實體儲 入裳置連結埠對的―個成員埠可以是-崎置雜 繼墙連料。此_^_^ 他於Γ㈣係扮演―裝置端細^連結埠,以及對其 别入才呆作係扮演-主機端輸出入裝置連結捧。在這一點上、 =輸出人㈣賴中的撕可包含點對點敝裝置 連:埠’,Γ ·· ΓΓ結,或者是,其可包含多裝置輸出入裝置 ^埠,例如:光纖通道或並列咖連結。此外,如此 明求重定路#傳送的功能也可以義於细此冗餘儲存卢^ ^對的互補擴充埠將在下对搭關二十—雜三忙詳細解 她於為使兩鑛存翻2_能存取每_個實體 =衣置嘛喊__取獅,此輸出入請求 ==具^個優點。首先,因sata協定的本質,在此 而未作動狀態(downstate)至準胸 π ^,其要求—相當長的起動期晰1W),這可能會使 =於子取推請求者從存取權所有者處接收到所有權時到所有權請 求者能真正_啟動實體鮮裝置存取之料有—㈣的延遲。 其次,讓SATA介面細騎再讓其準備好的触,可能會需要造 ,任何-端的SATA介面電路進人異常狀況處理的狀態,:為異 讀況處理程序之測試通f不會像正常狀況程序之職—樣的徹 42 1253569 底,因此 需轉移的情況。 ,有時候錯誤可能會出現而干擾此連結去成功的再起動 ㈦―brmg—UP)。為了減少此—風險,最好試著核少任何-端需 解譯與處街她跑,纽册,咖彡、存取所有權 所有的裝置端輸出入裝置連結都是SATA的,,純” sata儲存虛 擬化控制器有—個限制,就是它的可連結的實體儲存裝置的數目 受限於可包裝在-單一儲存虛擬化控制器當中的裝置端輪出入裝 置連結的數目,而SATA的規格當中,訊號線的最大長度僅限於h5 _ 公尺,以致於連翻―儲存虛擬化控㈣之實醜存裝置—定要 靠得夠近,使訊號線之長度不超過丨.5公尺。由於這些限制,㈣ 儲存虛擬化子系統只能提供最多16個遍實體儲存裝置的連 接。所以-純SATA齡虛謝好_無法像域f(>al儲存虛擬 化子系統-樣,擁有經由同—絲置端輸出人裝置連結的外接擴 充機箱連接至最多為250個實體儲存裝置的擴充性。 為了克服以上的限制’本發明的儲存虛擬化控制器上選擇性籲 地可包含-或多個擴細裝置端多裝置輸出人裝置連結 (expansion device-side multiple-device 10 device -erc〇nnect),於此稱為裝置端擴充埠,如並列咖或是光纖 FC-AL或是支援iSCSI的乙太網路或是SAS等,而這些連結可允許 外接擴充機箱(chassis)。這些機箱可為由實體儲存裝置所構成 的原始型JB0Ds(nat1Ve JBODs) ’係直接連接到連結上而不需要介 於其中哺換電路,也可是-顧該原始型删s的智慧型厕 43 1253569 才果擬子系統。此智慧型删模擬子系統係使用SATA或實體、 儲存衣置組合及單—或者冗餘儲存虛擬化控繼所構成,其巾的. 者存虛擬化控制③疋用來提供將連接删子系統與主要儲存虛擬_ 化子系統(primary storage Vlrtualizati〇n subsystem)的多裝 置端輸出入連結協定’轉換到連接麵儲存虛擬化控制器與其所 管理的實體儲存裝置的裝置端輸出入裝置連結(sm與腿)協 定。當然,擴祕亦可以是㈣擴糾,惟其有連結長度與實體 儲存裝置數量上之限制,一如前文所述一般。 f 、本毛明提出二種裝置端擴充埠佈線實施例以供選擇。圖二十 —為其中-實施例’其令在―個儲存虛擬化控制器上的每一個裝 置端擴糾係與在另—儲存虛擬化控繼上的互獅 (complement,亦即互補擴充埠)相連繫,此處稱為冗餘儲存虛擬 化控制器互連擴充粉edundant svc inte聰職⑽找卿細 Port)實施方案。此會使這兩個儲存虛擬化控制器於正常操作期間 共享此裝置端連結以及其所提供的頻寬,並且允許這兩侧諸存虛着 擬化控繼完全存取每_存單辦。其更進—步地,允許任一 儲存虛擬化控制器保有對所有儲存單位的完全存取,此包含原先 指定給另-個儲存虛擬化控㈣的儲存單位,即便是在該另二個 儲存虛擬化控繼故障的情況下。圖二十二麵示硬體開關如何 被使用而實現此種具有_形式(1〇〇p—style)多裝置輪出入裝置 連結(如光纖FOAL)賴糾的可切換連結。在正常操作期間,所 有開關的狀態為‘‘〇’,,從而’在此賴上的兩儲存虛擬化控制器 44 1253569 可與儲存單元連結。若第—齡虛減控制i(SVCl)故障,M2會 «又為1 ,且維持Ml被清除為“〇” ,從而,繞過第一儲存虛 擬化控制器(SVG1),並自第二贿虛擬化控彻(sv⑵至儲存單 兀建立一直接連接。若是第二儲存虛理化控制故障,則 訊號Ml會設為丫⑽為隨意訊號,“d〇n,t咖”),藉此, _第二儲存虛擬化控制器(sv⑵,並且自第—儲存虛擬化控制 益(SVC1)至儲存單元建立—直接連接。此開關動作可藉由一個硬 hardware signal detection circuit)^ 動’此SDC係偵測是不是有一個有效的訊號呈現在si或兑。或者 此-開_作亦可經由此兩_存虛擬化㈣器其中之一摘測到 另一個儲存虛擬化控制器故障時啟動。 圖-十二係顯示-電路設計,·此電路設計為依賴硬體訊號偵測 以啟動此開難態的變更。圖二切係顯示—電路設計,此電路 設計係從第-贿虛擬化控(sv⑴與第二贿虛擬化控制器 (SVC2)各自取讀人喊α與C2,簡發此卿狀態的變更。 在這種實施方針,每-個控制訊號在其對應的儲存虛擬化控制 器離線時將被強迫進入一,,清除⑻,,狀態(圖中未顯示此對應的 電路)’以避免若此控制訊號是王態㈤—分伽)或是浮動 (Floatmg)且g)而被接著的電路所解釋為,,設定⑴,,狀態時可 月匕引起的後果。圖―十五係顯示圖二十三與圖二十四的混合型, 其係藉由硬體訊號制或㈣存虛擬化控制⑽輸人訊號來支援 啟動開關狀態的變更,以提供比只有單獨—種還大的彈性。 45 1253569 圖—十’、係描繪一強化的實施例,在此稱為冗餘儲存虛擬化控. '1 ^^^^##^4(redundant SVC interconnected redundant ; P nsion p0rt)貫施例。其中包含有成對的冗餘擴充埠,而不是. 相^間獨立的擴充埠’以时使在提供服務給—個儲存虛擬化控 制-的擴料的-個連結斷掉或故料,不會導致此齡虛擬化 j器對連接於此連結上_存單摘存取能力全部喪失。在此 码木構下’冗餘對之每—埠分顺連接於此連結上的每個雙埠實 '子衣置的埠相連接,或者是,與—雙琿儲存虛擬化子系、统 · 的—埠相連接,此雙埠儲存虛擬化子系祕模擬連接至此連結的 複數個實體儲键置,舉齡說,射為—厕驗触虛擬化 系先右/、中儲存虛擬化控制器上的一擴充埠或連結故障, 則輸出入赫會透過另—個擴充埠/連結重定路徑傳送。 允圖。十七係出另r"可能的實施例,其中,-個儲存虛擬化 Mb上的每-擴鱗係在另—個儲存虛擬化控_上有一冗餘 互補物(redundant complem賦亦即冗餘互補擴充槔),此在一' _存虛擬化控制器上的擴充埠以及其在另—個儲存虛擬化控制 社的冗餘互補埠係以下财式連接至每—雙埠儲存單元的 兩埠上:-儲存虛擬化控·的擴充埠係連接至—雙埠對中的一 蜂:而其在另—儲存虛擬化控織上的互補擴充埠係連結至此雙 埠對中的另—埠。此互補擴料並沒有互連而是藉由每—儲存單 兀具有雙軸性質來軸冗餘的目的ϋ健是儲存單元的 雙琿性質’在碰其中—儲存虛擬化控制器的擴充埠故障,或一 46 1253569 連接儲存虛擬化控啦之—擴糾與—贿單元的連結故障時, 亚:足以社—儲存虛擬化控制器的存取皆得以轉的這種冗餘 功此。為貫現此種目的,係需要提供一些機制用以使輸出入 重定路徑傳送1在—儲存虛擬化控彻自有的擴料或^它 與儲存裝置的連結故_,改、_連 至儲存裝㈣連結。 _存紐化控制器 圖二十八係贿—實施方案,此實施神 存虛擬化子系統與儲存單元 ……果執仃於此儲 ,± 早欲_輕部分斷掉或故障發生時, =驗體_去連接賴二十堵邱連接兩贿存虚擬ς 制讀儲存早福兩個輸出入装置之連結。在儲 卜 與儲存單元之間的連結一般传為機业 糸統 於斷掉。如圖二十八⑽故特別易 結上的操作都適當地運作時,所有簡的狀^ ,連 埠所發出的訊號直接被遞送至 二’、、' 。自擴充 預m ρ 相對應的4,此處稱為 、在母—個儲存虛擬化控制器的冗餘對中的每— 互補擴充埠/連結都可完全獨立運作且不受干擾。 的母 己本身接至触早辑2的連結轉或者⑽料元埠2自 早’使得所有的輪出入訊號必須變成從兩侧諸存内疑 化控勤擴糾傳遞至儲存單元時,Ml與似係設為, 然而脱維持在“清除(〇)” ’並且财、M5為隨意值。當所有輸出 ^域自此二儲存虛擬化控_的擴料傳遞 47 1253569 第:^值。料—儲存虛擬化控彻(SVC1)離線,而需_從 贿虛減控制⑨(sv⑵傳遞輸出人訊號存單元蜂2 :、M4以及M5會維持在“清除(〇),,,而錢則為隨意 右’除了第—儲存虛擬化控制器(SVC1)離線以外,且儲存單 711埠2的連結斷掉或是彳諸在蛋 U存早7^埠2自己本身故障,則輸出入訊
^要自第二儲存虛擬化控彻(sv⑵傳遞至儲存單元⑹,此時 :由叹疋M5與M2為“1”,M1維持為“清除⑻,,,同時⑽鱼财 麵隨意鮮卩可完成。減地,若第二儲細靴㈣器(SVC2) 離線,而。需直接從第一儲存虛擬化控制器、(sv⑴傳遞輪出入訊號 到儲存單元琿1時’ M2、M3係維持“清除⑻,,,而Μ與脱以及 舫則為隨意值。若,除了第二儲存虛擬化控制器(svc2)離線以 外’亦有至儲存單元埠丨的連結斷掉或可能是其自身的故障發生, 則輪出入峨需要從第一儲存虛擬化控制器(svci)傳遞至儲存單 元埠2’此將藉由設定船與财為“丨”,船維持為“清除(〇),,,
同時Ml與M2為隨意值即可做到。圖四十二所示的表即概括此各 種可能情況下此開關的設定。 此開關動作可藉由硬體訊號偵測電路(SDC,Hardwares^nai Detection Circuit)來啟動,此SDC係偵測是否有_彳__^ 呈現在S1或S2,或者亦可由此兩個儲存虛擬化控制器之一來啟 動,此係當儲存虛擬化控制器偵測到預設路徑斷掉或故障時啟動 此-開_作。圖二十九顯示-電路設計,此電路設計係依賴硬 體訊號偵測去啟動此開關狀態的變更(此電路的真值表係顯示於 48 1253569
圖四十二)。圖中所示,幻係為一超控訊號(〇赠如卿i), 使得在第二儲存虛擬化控制器(SVC2)及八戈關聯電路故障的情況 下’第-儲存虛擬化控制細⑴得以_取得此㈣闕之狀能 的控制權。同樣地,R2料—超控訊號,使得在第-儲存虛擬;; 控制益(SVCO及/或關聯的電路故障的情況下,第二儲存虛擬化 控制器(SV⑵得以關取得鱗_之狀g的控娜。圖三十顯 示一電路設計’此電路設計從第—與第二婦趣化控制哭” (svasv⑵分細人峨G1,G2,簡發_雜的變更 (此電路之真值表係顯示於圖四十四),在此例中,經由第一儲 存虛擬化㈣抓即設定訊號α,表示其輸“請求要被遞送 =存單元蟑2,以取代預設的儲存單元礼·然而,經由肥 设定訊號G2 ’絲示其輸出人請求要婦翻齡單元淳工,而 非預設的儲存單元埠2。圖三十一顯示一種兩者的混合型,其係藉 由更體為虎偵測或自二儲存虛擬化控制器的輸入訊號兩種方式來
支援啟更’以提供比只有單獨_種方式還大的彈性 (此I路之真值表係顯示於圖四十五中)。 入對^緣於圖二十七的組態上裝置擴充埠的佈線,尚有另一種完 全無需任何的連結的方式可供選擇。於此例中,為達成冗餘的目 、係、’工域讀Λ人請求的傳遞賴為自儲存虛擬化控制器到 壯個’越儲存虛擬化控制ϋ間通訊連結而由存活的互補擴充 料、置端連結送出,此内部儲存虛擬化控_溝通連結通常係用 來使此—儲存虛擬化控制器彼此的相互狀態同步。 49 1253569 备i存虛擬化控獅細—個連接糊人裝置連結的
躲,__輯_猶存虛擬化 伽Γ埠之—連接,财論是嗎獅_埠/連結發 _/故障或是其他,此偵_儲存虛擬化控制器會送出輸 給另—_她_㈣,使此另—_存虛擬化控 1 —互補擴充槔/連結以及另一個儲存單元缚而發送給相同 _存單元。於繼人請求執行_,任何繼人請求有關 的貝料/狀恶會在此二個儲存虛擬化控制器間轉移。如果此另一個 =存虛擬化控制器的擴充埠/連結係於準備好可作動狀態下且正 吊運作時’但是此另一個儲存虛擬化控制器存取此儲存單元仍然 失敗,則此儲存單元就會被視為已失效或移除了。反之,若 存取成功,則前述的存取能力喪失將被視為在原本的儲存虛 擬似工制亚且往後與此贿單元存取關聯的輸出人請求會自. 動地重定傳送路彳m個儲存虛擬化控制器,*、經由互補擴充 阜連、、σ'送出。在此期$,原本的儲存虛擬化控制器係經由其擴 充埠繼監視對此儲存單元的可躲性,此舰—般係藉由週= ιc出内邛產生的輸出入請求以檢驗此連結與儲存單元的狀 °如果在某-時點’此原本的儲存虛擬化控制器發現此儲存單 兀現在可經由其擴充埠/連結而被存取,則停止輸出入請求重定傳 达路徑至另-個儲存虛擬化控制器,並且開始再—次地經由其自 己的擴糾/連結直接發送輸心請求。圖三十二即紅述操作的 流程圖。 50 1253569 結架構。蝴===;伽她餘主機端連 連結卑時,以將邏輯媒料=、ΙΓΓ個主機端 機端連結呈現至主機。此種 單元進行存取。所戈故F早了’主機能仍維持對此邏輯媒體 圖三十三係鱗—冗餘外部儲存虛擬化電腦錢之 ㈣料,連接=個 補^^的母—辦在其另—個儲存虛擬化控制器上會有-個互 1車。在—代紐社機猶結支援冗餘的實施财,每一儲存 主機端蟑。 _媒脰早心相同的形式呈現至其二個 體阜在正t作下’主機能經由一個儲存虛擬化控制器存取邏輯媒 兀”中_存虛擬化控制器係被配置為在一主 ===媒體單元,這可能是冗餘對其中—或兩個儲存纽化 其中—齡虛擬化控彻故障,則已經被此兩個儲 存虛擬化蝴H呈縣域的糖舰單元將可透過仍正常工作 的儲存纽化控制_持存取,並且,在飾彳由频儲存虛擬 匕匕制σσ之所處理的輸出入請求發生中斷時,經由在主機上特 烟心的夕几祕從(multlple Redundan卜阳她g)功能的幫 51 1253569 =輸出人請求就會完全被遞送到此正常工作的儲存虛擬化控制 為° 那些原本只經由現在故障中的儲存虛擬化控制器而呈現至主 機的邏輯媒體單元,將立刻藉由正常工作的儲存虛擬化控制⑽ 由連接至域社機端賴衫現至域。對於這些邏輯媒體單 兀以及連_有重新紋的·舰單元,此正常功的儲 擬化控彻能料勤縣—賴上线财賴舰單元而透 明地接替主機輸出入請求的處理,其係以相同於此故障中的儲存 虛擬化控制器在其故障之前所做的方式進行。藉此種,,透明接替 (t_rat takeover)”,主機不需要特殊的功能去查覺儲存 =化控制n故障以及由主機自己對輪出人請求重定路 為回應。 —除了儲存虛擬化控制器的冗餘架構以外,二組互補璋係也 =埠互補(redundant _ 。一域中有兩個獨 =車使用兩個個別的輸出入裝置連結與這二個互補冗餘埠挺連 則會有兩_立的雜至每麵觸 , 二經:出輪出入請求。若主機之,或一儲存触化控制: 右知出人裝置連結斷掉或阻斷時,具有多冗餘路徑功能的 ^柯透過另-冗鱗徑將輸出人請求蚊路徑發送。另^ Γ,當兩條路徑都正常運作時,主機會在此二路徑上選靜 :伽衡此二路徑_載,此, 勺貝戰十衡(Load Balancing)。 52 1253569 形成的了互實1 上述透通接替的功能,在每一儲存虛擬化控制器上所 、彳對巾的母—埠對錢實體上軸互連結。對於匯产 排式的多裝置輸出入裝置連結而言,如:並 由直接將裝置佈線在一起而構 纟 '結僅僅 ^ . 再战而不而任何中介電路。對於复 ’特殊的開關電路可用來達成上述所需的實體連、 纖連結上實現此種連結, 開關妝φ &减伽就係被用來啟動此 播 交更。在主機實行多冗餘路徑功能的架構中,有另— 種主機端連_、轉, 的冗滅祕t . 季數的連結即可達成類似 广’、、二十五中所示。需注意的是,射胁將-儲 ^ 擬化控制器連接此等主機的主機端連結並未連結至另—個儲 體子^化”器。在此—架構下,連結冗餘係藉由讓每-邏輯媒. 機^ t可透過—個儲存虛擬化控制器的主機端連結而可被主 4=:Γ另,儲存虛擬化控制器上的 m 財絲實現。若針—賴_、阻斷或因 個連二J/早,主機仍然能由另—個儲存虛擬化控制器經由另-存取此顧單元。_地,若儲她_制器中 故卜另-個儲存虛擬化控能接替並且,再—次地 邏輯媒體單元。 由另—個連結存取此 一經由上述說明可知,依據本發明之冗餘儲存虛擬化子純之一 貫施態樣如下,儲存趣化子錢包含兩敏_存虞擬化 53 1253569 ㈣器而形成-冗餘對,該冗餘儲存虛擬化控制器對之至少 =存虛聽控彻係包含有至少—擴料,可經由—多裝
:輪出入裝臟而雛—包含㈣—編存裝置的第 -、、且貫體儲存裝置;該第二組實體儲存裝置中之—成員係 對冗餘埠,且該對冗麟中之—成員埠係捕至—包含至:一与 ,充埠的擴充埠組’·該冗餘實體儲存裳科對之該成員谭愈則 3至少-該擴充埠之擴充埠組係經由—簡電路互她合在一 f且該擴充埠組包含有-第—與—第二擴充埠次組,以形成一 次組,該每-次組係包含有至少—成員擴充埠;該開_ 只現連結献線之開關機制而支援下列各種安排:⑴爭 翻亥對互補她之—她至該實體儲存裝置冗解對之一第 =埠二及墟該對互補次組之該第二次組至該實體儲存冗 每之⑦—成貝埠,⑵雛該對互補次組之二個次組至該 貝體儲存冗餘稍之該第—成員埠;⑶_該對互補次組之二
^組至該實體儲存冗餘埠對之該第二成科;⑷純該對互 f人虹之該第一次組至該實體儲存冗餘埠對之該第-成員璋;⑸ 二接謂互補她之該第二次組至該實體儲存冗餘埠對之該第二 、:車⑻祕°亥對互補次組之該第二次組至該實體儲存冗餘 埠對之該第-成員埠,·以及⑺減該對互補次組之該第一次組 至該實體儲存冗餘料之該第三成員^阜。 冗餘SATA儲存廣擬化子系統的—變化型為使用腦實體儲 衣置而不使用SATA貫體儲存裝置。對每一個pm實體儲存裝 54 1253569 置,於存取控桐_此實體儲存裝置間,緊靠著順實體儲存 裝置’需要安插-個SATA轉PATA轉換電路,且典型地係與此存 取控制·卜起位於同—個現場可更換單元中。此轉換電路係將 SATA訊號及協定,轉換成pATA職及協定,並於相反方向時再轉 換回SATA訊號及協定。實際上,在短期來說,與題相比㈣ 石_的供應仍舰缺,且它的單財不算太便宜,因此使用簡 實體儲存裝置來替代SATA實體儲存裝置用於一㈣儲存虛擬化 子系統中有其重要性。在此過渡期間,此種子系統讓職實體儲 存裝置可鱗代sata麵儲存裝置,)肖除了 SATA #體儲存裝置 錢上及成本上_慮。在這樣的子系統帽常可將轉換電路與 存取控制卩-起放置於存放實體儲存裝置的可拆卸厘 (mnovabie canister)之中,因此,當後續有實體儲存裝置或相 關電路需要進行維修服務時,可贿容易地從系統上拆卸下來。 此外,藉由將轉換電路設置於可拆敏當中,在黯磁碑價才夂降 =交可接受的程度時,原先裝設pATA的可拆卸_可很方便的 正個攸糸統中移除,並將新的SATA實體儲存裝置及相關電路設置 到系統上。 實^^圖^十六細三十^圖三十六料可射卩冗餘邏 貝肢儲存衣置ϋ的方塊圖,圖三十七係為包括在此时特有的印 刷電路板的較詳細的方塊圖,存取控__位於其巾。圖二十 八為-可拆卸冗餘腿實體儲存裝置_方顧,圖二 包括在此时财的_電雜陳詳細財塊_,存取控綱 55 I253569 關與SATA轉腿轉換電路係位於其中。此兩者中皆有一對咖 =出入裝置連結以及-組來自於二個儲存虛擬化控制器的存取控 制開關控舰號,連接進人—存取㈣咖。主要不同的地方在 =可拆卸pm實體儲存裝置时多了 —個观轉ρΑτΑ轉換電 ’這在可拆卸SATA實體儲存裝置槽中是沒有的。 以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍 所做之均輕化與修飾,皆應屬本發日轉利之涵蓋範圍。
【圖式簡單說明】 圖式之簡單說明 圖為-傳統冗餘外部儲存虛擬化電腦系統之方塊圖。 T二為另-傳統冗餘外部儲存虛擬化電腦純之方塊圖。 為依據本發明之-冗餘外·存虛擬化電㈣統的方塊圖。 ^四為利用—條訊號線來控.g之存取控_ _方塊圖。
2為-利用兩條訊號線來控制狀態之存取控烟關的方塊圖。 為依據本發明之儲存虛擬化控制器的方塊圖。 ,七為圖六中所示之中央處理電路之—實施例的方塊圖。 圖八為圖七中所示之中央處理晶片組/同位引擎之—實施例的 方塊圖。 ^九為圖六中所示之SATA輸出人裝置連結控偏的方塊圖。 2十為圖九中所示之PCI—X轉SATA控制器的方塊圖。 圖十一為圖十中所示之SATA埠的方塊圖。 56 1253569 圖十二為一符合SATA協定的傳輸架構的示意圖。 圖十三為一符合SATA協定之第一框架資訊結構的示意圖。 圖十四為一符合SATA協定中第二框架資訊結構的示意圖。 圖十五為一轉換程序之流程圖。 圖十六為使用二元訊號對存取所有權仲裁機制進行轉換程序的流 程圖。 圖十七為使用另一個二元訊號對存取所有權仲裁機制進行轉換程 序的時序圖。 圖十八為圖十七中所示之轉換程序的流程圖。 圖十九為當儲存虛擬化控制器組中有一儲存需擬化控制器故障時 的強制轉換程序的流程圖。 圖一十為一輪出入請求路徑的流程圖。 圖一十一為一几餘儲存虛擬化控制器連結擴充埠實施例的方塊示 意圖。 圖二十二係-顯示如何使用硬體關而完成可切換連結的方塊 圖。 圖一十一如-種依賴硬體訊號偵測以啟動此開關狀態的變更的 電路設計。 圖一十四’貞7F種彳< 第—儲存虛擬化控槪(就1)與第二儲存虛 擬化匕制杰(SVC2)各自取得輸入訊號C1與C2,以觸發此開關 狀態的變更的電路設計。 圖一十五氣、、、細種圖二十三與圖二十四中所示電路之混合型電 57 1253569 路的示意圖。 圖一十六為一冗餘儲存虛擬化控制器連結冗餘擴充埠實施例方塊 示意圖。 圖一十七為另一几餘儲存虛擬化控制器連結冗餘擴充埠實施例的 方塊示意圖。 Θ十八為利用硬體開關去連結如圖二十七戶斤示的連接於二儲 存虛擬化控彻的二個輸出人裝錢結之實施例的方塊圖。 圖二十九係顯示-種依賴硬體織制以啟_二十八所示的硬 體開關的開關狀態變更之電路設計的示意圖。 圖三十係顯示-種從第—儲存虛擬化控制器(sv⑴與第二儲存虛 擬化控制器(SVC2)各自取得輸入訊號C1與C2,以觸發圖二十 八所示的硬體____更之電路設剌示意圖。 圖三十-係顯示—種圖二十九卿三十中所示電路之混合型電 為連結擴充埠上輸出入請求 圖二十二係為在冗餘儲存虛擬化控制 路徑的流程圖。 圖 —十三係為-外部儲存虛擬化電_統之示意圖,宜包含 母個儲存虛擬化控制器中的兩個個別的主魅 完全分開的主機端輪出入裝置連結以及主機埠。兩個 方塊不意圖。 圖三十四為電路完成圖三十三中所示之主機端連結的 圖三 十五係為-冗餘外部儲存虛擬化電腦系統之方塊 示意圖,其 58 W569 中母1存虛擬化控制器上都有 機踹私山 主麵知埠,用以連接到一主 如而輪出入裝置連結與主機蜂之示音圖。運制主 圖二十六係為可拆卸冗餘職實。 圖三十七如—丄 4錢置_方塊圖。 為圖二十六所示的可拆卸 細的方塊圖。 知有的印刷電路板的較詳 圖 圖 -十八為一可拆卸冗餘PATA實 十九係相三权麻时物的方塊圖。 詳細的方塊圖。 特有的印刷電路板的較 圖 圖 圖四十為_所祐___真絲。 圖四十-為圖五所示控___直值表。 圖況時’用以改變迴一 二—躺—十九中所示之電路的真值表。 = 賴三钟卿之電路的真録。
jio^ 主機 200 ~~~~~~.___— SVC 236 ~~~—--__ ~~--— RCC連結控制器 242 —-—一 —-—. CPU 246 WM
20 s---__ SVS ——-——______________________________ 丨220 主機端輪出入裝置 連結控制器 K_1 -—_ 中央處理電路 244 I " ~~——__ 中央處理晶片組// L 1 同位引擎 248 1 —— ^VRAM 59 1253569
262 XOR引擎 264 XOR FIFO 280 記憶體 300 SATA輸出入裝置連 結控制器 310 PCI-X轉SATA控制 器 312 PCI-X介面 314 解碼/多工仲裁器 316 組態電路 318 匯流排介面 340 開關電路 342 存取控制開關 350 LCD相:組 360 EMS 420 實體儲存裝置 600 SATA 埠 620 DMA暫存器 630 超集合暫存器 640 指令區塊暫存器 650 控制區塊暫存器 660 雙埠先進先出缓衝 器 670 DMA控制器 680 PI0 690 傳輸層 700 連結層 710 實體層 910 CPU介面 920 記憶體介面 922 CM FIFO 924 除錯碼產生電路 926 除錯碼修正電路 930 、 932 PCI介面 934 、 936 PM FIFO 940 X-匯流排介面 950 PM匯流排 980 鎖相迴路 982 計時控制器 984 内部暫存器 986 UART 60

Claims (1)

1253569 f…-·-—-—〜·,,.,.———.、 i年月曰修(袋ul::U 拾、申請專利範圍:1^—-~ -」 1· 一種電腦系統,包含有·· 一主機,用來發出輸出入請求; -冗餘外部儲存虛擬化控彻對,伽於執行輸出人操作以回應 該主機發出的輸出人請求,其包括她接至該主機之一第: 與一第二外部儲存虛擬化控制器;以及 -組實體儲存襄置包含至少一實體儲存震置,係用來提供該電腦 系統儲存空間’該組至少一實體儲存裝置中之至少—成員, 係包括有-實體儲存裝置經由一點對點序列訊號連結輕接於· 該冗餘儲存虛擬化控制器對; 其中,當該冗餘儲存虛擬化控制器對中的一個儲存虛擬化控制器 未上線或者上線後又離線,舰冗餘儲存虛擬化控制器組中 的另-個儲存虛擬化控制器將自動地接替該冗餘儲存虛擬化 控制器對巾原先該個儲存虛擬化控彻原先執行之功能。 2.如申請專利範圍第i項所述之電腦系統,其中該點對點序列訊 號連結係為-序列先進技術接取介面(SATA)輸出入裝置連 · 結。 3·如申請專利範圍第丨或第2項所述之電腦祕,其中對該等實 體儲存裝置中至少-個而言,該電腦系統更包含有一存取控-制開關,其係耦接於每個該實體儲存裝置與該冗餘儲存虛擬 ‘ 化控制器對之間,用以選擇切換該實體儲存裝置至該冗餘儲 存虛擬化控制器對在該第一及該第二儲存虛擬化控制器之間 61 1253569 的連接。 4. =2利範圍第1或第2項所述之電腦系統,其中,該冗 有::子亚擬化控制辑中’每一該儲存虛擬化控制器更包含 中’用於執行輸出人操作以回應於該主機的該輪出 至^輸出入裝置連結控制器,麵接於該十央處理電路; 社㈣以-設置於該至少一輸出入農置連 之—者中’用來输至該主機;以及 至少置連結埠’設置於該至少-輪出入裝置連 :二趙::裝r由該點她说號連結· 5. 如暢利軸4項所述之觸統,其中該主機 :置連結埠巾结埠中之— 係設置㈣—健如4置賴控制器中。 6. 如申請專利範圍第4項所述之電腦系統, 裝置連料中之一者與該裝置端輸出入裝置連結 係設置於不同之該等輸出入裝置連結控制器t。 7. -種冗餘儲存虛擬化子系統,用來提供—主機齡空間 餘儲存虛擬化子系統包含有·· μ 一冗^卜部儲存虛擬化控制器對,用來執行輪出入操作以回庫於 機發出之輪⑽求,其包蝴於_至該主機之 62 1253569 一第一與一第二外部儲存虛擬化控制器;以及 一組實體鱗裝置包含至少—實體儲存裝置,制來提供該主機 ’ 儲存空間,該組至少一實體儲存裝置中至少一成員,係包括 - 有一實體儲存裝置經由一點對點序列訊號連結耦接於該冗餘 儲存虛擬化控制器對; 其中’當该冗餘儲存虛擬化控制器對中的一個儲存虛擬化控制器 未上線或者上線後又線,則該冗餘儲存虛擬化控制器對中 的另-個儲存虛擬化控制器將自動地接替該冗餘儲存虛擬化 控制器對巾縣雜齡虛擬化__先執行之魏。 _ 8·如申請專利範圍第7項所述冗餘儲存虛擬化子系統,其中該點 對點序列訊號連結係為一序列先進技術接取介面輸出入裝置 連結。 9·如申請專利範圍第7或第8項所述之冗餘儲存虛擬化子系統, 其更包含有-附加於該冗餘儲存虛擬化子系統之可拆卸g, 用以設置該至少一實體儲存裝置之一者於其中。 10·如申明專利範圍第7或第8項所述之冗餘儲存虛擬化子系統,鲁 其中對該等實體儲魏置巾每—個而言,該子祕更包含有 -存取控綱關’其係搞接於該實體儲存裝置與該冗餘儲存 虛擬化控制H對之㈤,帛崎擇切觀實贿存裝置至觀 - 餘儲存虛擬化___該第—及觸二躲虛擬化控繼 、 間的連接。 11·如申請專利範圍第10項所述之冗餘儲存虛擬化子系統,其更 63 1253569 包含有一附加於該冗餘儲存虛擬化子系統之可拆卸匣,用以 設置該至少一實體儲存裝置之一者與該存取控制開關於其 中。 12·如申請專利範圍第1〇項所述之冗餘儲存虛擬化子系統,其中 轉接於该實體儲存裝置與該冗餘儲存虛擬化控制器對之間的 該存取控制開關,係可選擇性地使該實體儲存裝置的序列訊 號於忒存取控制開關為第一配接狀態時,配接往返於該第 一儲存虛擬化控制H,於該存取控綱關為第二配接狀態 時’配接往返於該第二儲存虛擬化控制$。 I 13·如申請專利範圍第12項所述之冗餘儲存虛擬化子系統,其中 匕3存取所有權仲裁機制,.其設置於該儲存虛擬化控制 裔對與w亥存取控制開關之間,係用於控制該存取控制開關之 配接狀態。 κ如申請專利細第13項所述之冗_存虛擬化子祕,其中 該存取所有權仲裁機制包含有一對存取請求訊號線,其係趣 接於該儲存虛擬化控制器對之間,該對存取請求訊號線包括鲁 有„ 第一及一第二存取請求訊號線’其中該第一儲存虛擬化 控制器在該第一存取請求訊號線上為主動,在該第二存取請 求訊號線上為被動;該第二儲存虛擬化控制器在該第二棘 請求訊號線上為主動,在該第-存取請求訊號線上為被動;-以及,猶存虛擬化控制器對令每一個儲存虛擬化控制器, 能在其所擁有的該主動存取請求訊號線上發出存取請求訊 64 1253569 號在其所擁有的該被動存取請求訊號線上讀取一請求狀 I、’並且在其所擁有的該被動存取請求訊號線上辨識出該請 求狀態自前次讀取後的改變。 - 申明專利範圍第13項所述之冗餘儲存虛擬化子系統,其中 "亥存取所有權仲裁機制包含有一存取所有權偵測機制,用以 „ 判&是否存取所有權為該儲存虛擬化控制器其中之一所擁 有。 16·如申請專利範圍第13項所述之冗餘儲存虛擬化子系統,其中 该存取所有權仲裁機制更包含有一存取所有權授予機制,用 · 於當該儲存虛擬化控制器其中之一請求存取所有權時,授予 該存取所有權。 1?·如申凊專利範圍帛13項所述之冗餘儲存虛擬化子系統,其中 該存取所有權仲裁機制更包含有一存取所有權仲裁電路,其 係搞接至該第一與該第二儲存虛擬化控制器以及該存取控制 開關,其中,若該存取所有權仲裁電路接收該第一儲存虛擬 化控制為發出的一第一存取所有權請求訊號,且該第二儲存 · 虛擬化控制為尚未擁有存取所有權時,存取所有權將被授予 給該第i存虛擬化控制H ;以及,若贿輯有權仲裁電 路接收該第二儲存虛擬化控制器發出的一第二存取所有權請 求峨,且該第一儲存虛擬化控制器尚未擁有存取所有權 、 時,該存取所有權將被授予給該第二儲存虛擬化控制器。 18·如申請專利範圍第17項所述之冗餘儲存虛擬化子系統,其更 65 . 1253569 包含有一存取所有權判定機制,藉以當該第一與該第二儲存 虛擬化控制器同時發出該第一與該第二存取所有權請求訊號 給該存取權仲裁電路時,該存取所有權將授予給該儲存虛擬 化控制器對中之預設者。 19·如申請專利範圍第10項所述之冗餘儲存虛擬化子系統,更包 含有: 一合作機制,用以使該冗餘儲存虛擬化控制器對共同控制該存取 控制開關之配接狀態; 視機制用以使該儲存虛擬化控制器對中每一該儲存虛擬化 控制器得以監視該儲存虛擬化控制器對中另一個儲存虛擬化 控制器之狀態;以及 一狀態控制機制,用以使該儲存虛擬化控制器對中的每個儲存虛 擬化控制器在獨立於該儲存虛擬化控制器對中另一個儲存虛 擬化控制器的狀態下,得以強制取得該存取控制開關的完全 的控制。 20·如申請專利範圍第7或第8項所述之冗餘儲存虛擬化子系 統,其中,在該冗餘儲存虛擬化控制器對中,每個該儲存虛 擬化控制器更包含有.·· 一中央處理電路,用於執行輸出入操作以回應於該主機的該輸出 入請求; 至^、輸出入裝置連結控制為,輕接於該中央處理電路; 至少一主機端輪出入裝置連結埠,設置於該至少一輸出入裝置連 66 1253569 結控制益之一者中,用來耦接至該主機;以及 至少-裝置端輪出人裝置連結埠,設置於該至少—輪出人裝置連. 結控制器之-者中,用來經由該點對點序列訊號連結輕接至 該至少一實體儲存裝置。 21.如申請專利範圍第2〇項所述之冗餘儲存虛擬化子系統,其中 該主機端輪出入裝置連結埠中之一者與該裝置端輪出入裝置 連結埠中之一者係設置於同一健輸出入裝置連結控制器 中。 22·如申明專利範圍第20項所述之冗餘儲存虛擬化子系統,其中鲁 =機端輸出入震置連結埠中之一者與該裝置端輸出入裝置 連、、4中之-者係設置於不同 <該等輸出人裝置連結控制器 中。 " 23·如申π專利範圍第2(^項所述之冗餘儲存虛擬化子系、、统,其中 更包括有-邏輯媒體單元,係經由該主機端輸出入裝置連結 埠中的一第—埠呈現於該主機上,該邏輯媒體單元亦透過該 主機端輸出入襄置連結埠中的一第二琿冗餘地呈現至該纟 · 機。 24·如申請專利範圍第23項所述之冗餘儲存虛擬化子系統,其中 忒第一主機端輪出入裝置連結埠與該第二主機端輸出入裝置 連、、、"埠係為該冗餘儲存虛擬化控制對中同一儲存虛擬化控制 、 為上的輸出入裝置連結埠。 專乾圍第23項所述之冗餘儲存虛擬化子系統,其中 67 I253569 入裝置連結痒係為該冗餘儲存虛擬化控制 控制器上之—輸出人裝置連結璋;以 版機料係輪餘儲存虛擬化控 26 n蝴咖舰⑽入峨結槔。 如申_範圍第23項所述之冗餘儲存虛擬化子系統,1中 :第:主機端輪出人裝置連料與該第二主機端輸出入裝置 連結璋係麵接於相同的主機端輸出入裝置連結上。 27. 如申請專利範圍第26項所述之冗餘儲存虛擬化子系統,盆中 主機端輸出入裝置連結埠與該第二主機端輸出入裝 ==經由-_電路祕至朗—社機端輸出入裝置 28. 如申請專利範.圍第23項所述之冗餘儲存虛擬化子系統,其中 H:主機端輸出入裝置連結蟑與該第二主機端輸出入裝置 連、、、。埠係各_至不_主機端輸出人裝置連結上。 29. 如申凊專利範圍第2〇項所述之冗餘儲存虛擬化子系統,並中 至少-該主機端輸“裝置連結埠係為於目標模式(細财 mode)時之支援點對點連結之光纖通道。 30. 如申請專利範圍第2〇項所述之冗餘儲存虛擬化子系統,其中 至少-該主機端輸出入裝置連結蟑係為於目標模式時支援公 用迴路連結之光纖通道。 31·如申請專利範圍第20項所述之冗餘儲存虛擬化子系統,其中 至少-該主機端輸出入裂置連結埠係為於目標模式時支援專 68 1253569 用迴路連結之光纖通道。 32.如申請專利範圍第2〇項所述之冗餘儲存虛擬化子系統,其中 ‘ 至少一該主機端輸出入裝置連結埠係為操作於目標模式之並 - 列小型電腦系統介面(並列SCSI)。 33·如申請專利範圍第2〇項所述之冗餘儲存虛擬化子系統,其中 至J 一泫主機端輸出入裝置連結埠係為操作於目標模式之支 援網際網路小型電腦系統介面(iSCSI)協定之乙太網路。 34·如申請專利範圍第2〇項所述之冗餘儲存虛擬化子系統,其中 至J 一該主機端輸出入裝置連結埠係為操作於目標模式之序 鲁 列附加小型電腦系統介面(Seria卜Attached SCSI,SAS)。 35·如申請專利範圍第2〇項所述之冗餘儲存虛擬化子系統,其中 至少一該主機端輸出入裝置連結埠係為操作於目標模式時之 序列先進技術接取介面。 36·如申請專利範圍第7或第8項所述之冗餘儲存虛擬化子系統, 其中更包括有一控制器間通訊通道,係設置於該冗餘儲存虛 擬化控制器對間,用以於傳遞狀態同步資訊。 鲁 37·如申請專利範圍第36項所述之冗餘儲存虛擬化子系統,其中 該控制器間通訊通道係為一現存之輸出入裝置連結,藉此, 控制為間通訊交換係與輸出入請求以及關聯資料一起多工傳 輸。 38·如申請專利範圍第祁項所述之冗餘儲存虛擬化子系統,其中 該控制器間通訊通道係為一專用通道,及其主要功能係為交 69 1253569 換該狀態同步資訊。 39·如申請專利範圍第36項所述之冗餘儲存虛擬化子系統,其中 ‘ 該控制器間通訊通道係為一光纖通道。 - 40·如申請專利範圍第36項所述之冗餘儲存虛擬化子系統,其中 該控制器間通訊通道係為序列先進技術接取介面通道。 41·如申請專利範圍第36項所述之冗餘儲存虛擬化子系統,其中 該控制器間通訊通道係為並列小型電腦系統介面通道。 42·如申請專利範圍第36項所述之冗餘儲存虛擬化子系統,其中 该控制器間通訊通道係為乙太網路。 肇 43·如申請專利範圍第36項所述之冗餘儲存虛擬化子系統,其中 該控制器間通訊通道係為序列附加小型電腦系統介面通道。 44·如申請專利範圍第36項所述之冗餘儲存虛擬化子系統,其中 該控制器間通訊通道係為積體電路間介面(I2C)通道。 45·如申請專利範圍第7或第8項所述之冗餘儲存虛擬子系統, 其中該冗餘儲存虛擬化控制器對係可用以執行輸出入請求重 定路徑傳送功能。 φ 46·如申請專利範圍第7或第8項所述之冗餘儲存虛擬子系統, 其中該冗餘儲存虛擬化控制器對係可用以執行實體儲存裝置 存取所有權轉移功能。 47·如申請專利範圍第7或第8項所述之冗餘儲存虛擬化子系統, · 其中該冗餘儲存虛擬化控制器對之至少一成員儲存虛擬化控 制器係包含有至少-擴充埠,經由—多裝置裝置端輸出入裝 70 1253569 置連結,耦接至一包含有至少一實體儲存裝置的第二組實體 儲存裝置。 48·如申請專利範圍第47項所述之冗餘儲存虛擬化子/系統,其中 包含有至少一該擴充槔的一組擴充埠的各個成員係彼此耦接 在一起,且透過一開關t路連接至該第二組實體儲存裝置。 49·如申請專利範圍第47項所述之冗餘儲存虛擬化子系統,其中 包含有至少-該擴充埠的—組齡埠之各個成貞係彼此輕接 在一起,且未透過中介電路直接連接至該第二組實體儲存裝 置。 . 5〇·如申#專利範圍第47項所述之冗餘儲存虛擬化子系統,其中 包含有至少二該擴充埠的擴充埠組係形成一冗餘擴充埠 組’用以互相執行輸出人請求蚊路徑傳送功能,藉以使得 正常係透過該冗餘擴充埠組中之一第一成員埠而傳送至一實 體儲存裝置的輸出入請求可重定路徑遞送而透過該冗餘擴充 埠組中之一第二成員埠。 ^ 51·如申請專利範圍第47項所述之冗餘儲存虛擬化子系統,其中 該第二組實體儲存裳置中之一成員係具有一對冗餘璋,以及 該對冗餘淳中之—成員槔係_至—包含至少-該擴充埠的 擴充埠組。 52·如申明專利範圍第51項所述之冗餘餘存虛擬化子系統,其中 透過該第二組實體儲存裝置中該成員的該等冗餘埠,輸出入 明求重禮#傳送舰得以被執行,軌使得正常是經由該 1253569 几餘琿對十之—第—口 、 Α ^ Φ ^ 貝埠而被傳送給一實體儲存裝置的輸 至^^定路徑遞送而經由該冗餘埠財—第二成員璋 至该實體儲存裝置。 53. 專利關第52項所述之冗餘儲存虛擬化子系統,其中 έ包含有至少二該擴充埠的擴充埠組係形成-冗餘擴充埠 二/、互相執行輪出入請求重定路徑傳送功能,藉以使正 书係經由該冗餘擴充埠組中之—第—成員埠而傳送至一實體 :存裝置的輸itj人凊求可重定路徑遞送而經由該冗餘擴充璋 組中一第二成員埠。 4·如申明專利範圍第51項所述之冗餘儲存虛擬化子系統,其中 该實體儲存裝置冗餘埠射每個成M埠係減至不同的擴充 埠組,該擴充埠組係包含有至少一該擴充埠。 55·如申請專利範圍第51項所述之冗餘儲存虛擬化子系、統,其中 該冗餘實體儲存裝置痒對之該成員埠與該包含至少一該擴充 埠之擴充埠組係經由一開關電路互相耦合在一起。 56·如申請專利範圍第55項所述之冗餘儲存虛擬子系統,其中該 擴充埠組包含有一第一與一第二擴充埠次組,以形成一對互 補次組,該每一次組係包含有至少一成員擴充埠。 57·如申請專利範圍第56項所述之冗餘儲存虛擬化子系統,其中 藉由該開關電路而實現的連結訊號線開關機制之一,係為耗 接該對互補次組之該第一次組至該實體儲存冗餘埠對之一第 一成員埠,以及耦接該對互補次組之該第二次組至該實體儲 72 1253569 存冗餘埠對之一第二成員埠。 58·如申請專利範圍第56項所述之冗餘儲存虛擬化子系統,其中 藉由該開關電路而實現的連結訊號線開關機制之一,係為轉 接該對互補次組之二個次組至該實體儲存冗餘埠對之一第一 成員埠。 59·如申請專利範圍第56項所述之冗餘儲存虛擬化子系統,其中 藉由該開關電路而實現的連結訊號線開關機制之一,係為轉 接該對互補次組之該第一次組至該實體儲存冗餘埠對之一第 一成員埠。 60.如申請專利範圍第56項所述之冗餘儲存虛擬化子系統,其中 該開關電路實現一連結訊號線之開關機制,該機制係支援下 列各種安排: (1) 轉接該對互補次組之該第一次組至該實體儲存裝置冗餘埠 對之一第一成員埠,以及耦接該對互補次組之該第二次組至 該實體儲存冗餘埠對之一第二成員埠; (2) 耗接該對互補次組之二個次組至該實體儲存冗餘埠對之該第 一成員埠; (3) 耗接該對互補次組之二個次組至該實體儲存冗餘埠對之該第 二成員埠; (4) 轉接該對互補次組之該第一次組至該實體儲存冗餘埠對之該 第一成員埠; (5) 輕接該對互補次組之該第二次組至該實體儲存冗餘埠對之該 73 1253569 第二成員埠; ⑻辆接賴互補她之該第二次組至該實體儲存冗餘稍之該-第一成員埠;以及 ▲ ⑺雛該對互補次組之該第一次組至該實體儲存冗餘谭對之該 第二成員璋。 6L如申請專利範圍第51項所述之冗餘儲存虛擬化子系統,其中 該冗餘實體儲存裝料對巾之該成M埠與該包含至少一擴充 埠之擴充埠組係未經中介電路直接耦接在一起。 62. 如申請專利範圍第51項所述之冗餘儲存虛擬化子系統,其中_ 該冗餘儲存虛擬化控制器對中之—成貝儲存虛擬化控制器更 包含有至少二該擴充埠,以形成一冗餘擴充埠組。 63. 如申請專利範圍第62項所述之冗餘儲存虛擬化子系統,其中 該冗餘擴充埠組中之-第—擴充埠與—第二擴充蟑分別輕接 至該包含至少-實體儲存裝置的第二組實體儲存裝置之一成 員實體儲存裝置之冗餘實體儲存裝置埠對巾* _成員蜂。 64. 如申請專利範圍第62項所述之冗餘儲存虛擬化子系统,其中· 該冗餘擴充埠組中之-第—擴充埠與—第二擴充埠皆輕接至 該包含至少一實體儲存裝置的第二組實體儲存裝置之一成員 實體儲存褒置之冗餘實體儲存裝置琿對中相同的成員埠。 65. 如申請專利範圍帛64項所述之冗餘儲存虛擬化子系統,其巾 該第一該第二擴糾係未經中介電路而直接連接至該包含至 少一實體儲存裝置的第二組實體儲存裳置之一成員實體儲存 74 1253569 裝置之冗餘實體儲存裝置琿對中相同的成員埠。 66·如申凊專利範圍第51項所述之冗餘儲存虛擬化子系統,其更 包含有: · 一第一擴充埠組,其包含至少一設置於該冗餘儲存虛擬化控制對 中之第一儲存虛擬化控制器上的擴充埠;以及 一第二擴充埠組,其包含至少一設置於該冗餘儲存虛擬化控制對 中之第一儲存虛擬化控制器上的擴充埠; 其中a亥第一擴充埠組與該第二擴充埠組係一起形成一冗餘擴充埠 組對。 · 67·如申請專利範圍第66項所述之冗餘儲存虛擬化子系統,其中 該第一擴充埠組與該第二擴充埠組係分別耦接至包含有至少 -實體儲存裝置之該第二组實體儲存裝£中每一該實體儲存 裝置之冗餘實體儲存裝置埠對中不同的成員埠。 68·如申請專利範圍第66項所述之冗餘儲存虛擬化子系統,其中 該第一擴充埠組與該第二擴充埠組係皆耦接至包含有至少一 實體儲存裝置之該第二組實體儲存裝置中每一該實體儲存裝 # 置之冗餘實體儲存裝置埠對中相同的成員埠。 69·如申請專利範圍第47項所述之冗餘儲存虛擬化子系、統,其中 至少一該擴充埠係為光纖通道。 - 70·如申請專利範圍第47項所述之冗餘儲存虛擬化子系統,其中 · 至少一該擴充埠係為並列小型電腦系統介面。 71·如申請專利範圍第47項所述之冗餘儲存虛擬化子系統,其中 75 1253569 至^该擴充埠係為序列先進技術接取介面。 72·如申凊專利範圍第47項所述之冗餘儲存虛擬化子系統,其中 至少一該擴充埠係為乙太網路。 73·如申請專利範圍第47項所述之冗餘儲存虛擬化子系統,其中 至少一該擴充埠係為序列附加小型電腦系統介面。 74·如申請專利範圍第7或第8項所述之冗餘儲存虛擬化子系統, 其t β亥實體儲存裝置係為一序列先進技術接取介面實體儲存 裝置。 如申-月專利範圍第7或第8項所述之冗餘儲存虛擬化子系統, 其中該實贿存裝雜為—鋼絲技術接取介面實體儲存 裝置。 76·如申請專利範圍第7或第8項所述之冗餘儲存虛擬化子系統, 其中該冗餘儲存虛擬化控制器對之每一該儲存虛擬化控制器 係包含有一狀態定義電路,用以迫使該冗餘儲存虛擬化控制 器對中之另一個儲存虛擬化控制器之外部連接訊號線進入一 預設狀態。 77·如申請專利範圍第7或第8項所述之冗餘儲存虛擬化子系統, 其中该几餘儲存虛擬化控制器對中每一該儲存虛擬化控制器 係包含有一自殺電路,用以迫使其自身的外部連接訊號線進 入一預設狀態。 • 種應用於一冗餘儲存虛擬化控制器對中之外部儲存虛擬化 控制器,係包含有: 76 1253569 一中央處理電路,用以執趴 求; 了輪出人操作以回應-主機之輪出入請 :二輸出入裝置連結控制器,耦接於該中央處理電路; 至> 一主機端輸出入裝 外制&二 炫於該至少—細人裒置連 、、、。控—之-者中,用來麵至触機;以及 至少:裝置端輪出入裳置連結埠,設置於該至少一輸出入裝置連 勃之—者中,用來_至至少—實體儲拽置並與之 執行點對點序列訊號傳遞;
’、中該外轉虛減控彻,德職儲存虛擬化控制器對 中之另-個外部儲存虛擬化控制器未上線或者上線後又離線 寺將自動地自動地接替該另一個外部儲存虛擬化控制器原 先所執行之功能。 爪如申山請專利範圍第78項所述之儲存虛擬化控制器,其中該主 機端輸出人裝置連結埠中之—者與該裝置端輸出人裝置連結 埠中之一者係設置於同一個該輸出入裝置連結控制器中。
80·如申請專利範圍第78項所述之儲存虛擬化控,其中該主 機端輸出人裝置連結埠中之—者與該裝置端輸出人裝置連結 埠中之一者係設置於不同之該等輸出入裝置連結控制器中。 81·如申請專利範圍第78項所述之儲存虛擬化控制器,其中該至 少一裝置端輪出入裝置連結埠中之一包含有一序列先進技術 接取介面連結埠,用以經由一序列先進技術接取介面輸出入 裝置連結與該至少一實體儲存裝置之一者連接。 77 1253569 82·如申明專利範圍第或第幻項所述之儲存虛擬化控制器, 更包含有一偵測機制,用以察覺該另一個儲存虛擬化控制器 , 是否為離線或失效的狀態。 · 83·如申請專利範圍第78或第81項所述之儲存虛擬化控制器, 更包έ有一狀怨定義電路,用以迫使該冗餘儲存虛擬化控制 為對中之另一個儲存虛擬化控制器之外部連接訊號線進入一 預設狀態。 84·如申請專利範圍帛78或第81項所述之儲存虛擬化控制器, 更包3有-自殺電路’用以迫使其自身的外部連接訊號線進 _ 入一預設狀態。 85·如申凊專利範圍第78或第81項所述之儲存虛擬化控制器, 八中u亥力月匕包$ ·將原本該另一個儲存虛擬化控制器所呈現 給主機並使主機可使用之可存取資源呈現給主機並使主機可 使用之,以及將該個儲存虛擬化控制器自身所呈現給主機並 使主機可使用之可存取資源呈現給主機並使主機可使用之。 •=申明專利第78或第81項所述之儲存虛擬化控制||,· 其中更包含有-存取所有權仲裁機制,用以提供決定該儲存 虛擬化控制謂巾那—個儲存虛擬化控制雜有存取所有 權。 如申明專利觀圍第86項所述之儲存虛擬化控制器,其中該存 ㈣有權仲賴觀含有—存取所補_機制,用以判定 疋否存取所有權為該儲存虛擬化控繼所擁有。 78 !253569 88 由 4 •申凊專利範圍第86項所述之儲存虛擬化控制器,其中該存 取所有權仲裁機制包含有一存取所有權授予機制,用於當該 · 儲存虛擬化控制器其中之一請求存取所有權時,授予存取所 - 有權。 89·如申請專利範圍第78或第81項所述之儲存虛擬化控制器, 更包含有: 一合作機制,用以與該儲存虛擬化控制器對中之另一個儲存虛擬 化控制器一起去合作控制一存取控制開關之配接狀態; -監視機制,用以使該齡虛擬化控對中之該個儲存虛擬化 · 控制器得以監視該儲存虛擬化控制器對中該另一個儲存虛 化控制器之狀態;以及 -狀態控制肋使該儲存虛擬化控㈣射麟儲存虛擬 化控制器在獨立於該儲存虛擬化控制器對中之該另一個儲存 虛擬化控制益的狀態下.,得以強制取得該存取控制開關的完 全的控制。 90.如申請專利範圍第78或第81項所述之儲存虛擬化控制器,· 其中更包含有-控制器間通訊埠,用以傳遞該冗餘儲存虛擬 化控制器對中之該個儲存虛擬化控制器與該另一個儲存虛擬 化控制器間之狀態同步資訊。 9L如申請專利範圍第90項所述之儲存虛擬化控制器,其中聰 — 制器間通訊埠係為一現存之輸出入裝置連結,藉此,控制器 間通訊交換與輪出人請求以及_資料—起多工傳輸。°口 79 1253569 •如申#專利域第90項所述之儲存虛擬化控制器,其中該控 制為間通轉係為—專料,及其主要功能係為交換該狀態 同步資訊。 3·如U利减第90項所述之儲存虛擬化控制器,其中該控 制器間通訊埠係為光纖通道。 94·如申請專利範圍第90項所述之儲存虛擬化控制器,其中該控 制器間通訊埠係為序列先進技術接取介面。 95. 如申請專利範圍第90項所述之儲存虛擬化控制器,其中該控 制器間通訊蟑係為並列小型電腦系統介面。 96. 如申請專利範圍第⑽項所述之儲存虛擬化控制器,其中該控 制器間通訊埠係為乙太網路。 97. 如申請專利範圍第90項所述之儲存虛擬化控制器,其中該控 制器間通訊埠係為序_加小型電齡統介面。 8’如申/月專利軌圍第9〇項所述之儲存虛擬化控制器,其中該控 制為間通訊埠係為積體電路間介面(⑽。 99·如申請專利範圍第78或第81項所述之儲存虛擬化控制器, 其令_存虛擬化控制器係可用以執行輸出入請求重定路徑 傳送功能。 100.如申請__ 78項所述之儲存虛擬化控制器, 其以儲存虛擬化控_射用以執行實_存裝置存取所 有權轉移功能。 肌如申請專利範圍第78或第81項所述之儲存虛擬化控制器, 1253569 更包3有—擴充埠’用以經由—多裝置裝置端輸出入裝置連 結麵接至—包含有至少—實體儲存裝置的第二組實體儲存裝 置。 ⑽.如申請專利範圍第78或第81項所述之儲存虛擬化控制器, 其中’至少-該主機端輸出人装置連結埠係為於目標模式時 支援點對點連結之光纖通道。 ⑽.如料__ 78或第8ι項所述之齡虛擬化控制器, 、中’至少-該主機端輸出人I置連結埠係為於目標模式時 支援公用迴路連結之光纖通道。 104·如中請專利範圍第78或第81項所述之儲存虛擬化控制器, ,、,至少—該主機端輪出Μ置連結埠係為於目標模式時 之支援專用迴路連結之光纖通道。 W請專利觸78輸1項所述之儲存虛擬化控制器, 二至该主機端輪出入裝置連結埠係為操作於目標模 式之並列小型電腦系統介面。 ⑽盆如申請專利範圍第78或第81項所述之儲存虛擬化控制器 4主機端輸出人I置連料係為操作於目標模 m 際娜小㈣㈣齡面财之乙太網路。 =78 嫩赠迦化控制器, ★至’社機端輸置連結埠係為操作於目標模 式之序列附加小_腦系統介面。 ⑽.如申請專利範圍第78或第81項所述之儲存虛擬化控制器, 1253569 其中,至少一該主機端輸出入裝置連結埠係為操作於目標模 式時之序列先進技術接取介面。 · 109· -種於-具有-第―與—第二外部儲存虛擬化控制器並配置 . 為一冗餘儲存虛擬化控制器對之電腦系統中執行儲存虛擬化 之方法’该方法包含: 回應該電腦系統中的-主機端發出的輸出入請求,以該冗餘儲存 虛擬化控制恭對中的一個儲存虛擬化控制器執行輸出入操 作,並使用點對點序列訊號傳遞方式存取該電腦系統中之至 少一實體儲存裝置;以及 · 當在該冗餘儲存虛擬化_ H射__存虛擬化控制器未上 線或上線後又離線時,則由該冗餘儲存虛擬化控制器對中之 另一個儲存虛擬化控制器執行該輸出入操作以回應該主機發 出的該輸出入請求,並使用點對點序列訊號傳遞方式存取該 電腦系統中之該至少一實體儲存裝置。 110·如申请專利範圍帛109項所述之方法,其中該點對點序列訊 號傳輸係遵循SATA協定。 · 111·如申睛專利範圍第109或第11〇碩所述之方法,其中當該一 儲存虛擬化控制器未上線或者上線後又離線時,則該另一個 儲存虛擬化控制器將自動接替該個儲存虛擬化控制器原先所 執行之功能。 . •如申明專利範圍S 111項所述之方法,其中該功能包含:將 原本该個儲存虛擬化控制器所呈現給主機並使主機可使用之 82 1253569 可存取資源呈現給主機缝主機可使用之,以及將該另一個 儲存虛擬化控制器自身所呈現給主機並使主機可使用之可存 取資源呈現給主機並使主機可使用之。 113.如申請專利範圍帛1〇9或第11〇項所述之方法,其更包含有 提供-重定路徑傳送機制,用以使該冗餘儲存虛擬化控制器 對知以執行輸出入請求重定路徑傳送之功能。 114·如中請專利範圍第113項所述之方法,其中該輸出入請求重 定路徑傳送功能係由下列步驟所執行··
U5.如申請專利範圍第114項所述之方法,其中更包含有於該存 取推所有者與該實體儲存裝置間傳遞而與該輸出入請求相關 之訊息與㈣之至少—部份,係被代傳至該請求發動者。 116.如申請專利範圍第⑽或第削項所述之方法,其更包含有 Γ y'\ · 該冗餘儲存虛擬化控麟中之—請求啟動者傳送—輸出入請求給 該冗餘儲存虛擬化控制器對中一存取權所有者;以及 該存取權所有者執行該請求啟動者所傳送之該輸出入請求。
提供-存取㈣_,其係墟於駐少—實觀錢置中之一 與該外部冗餘儲存虛擬化控制器對之間,用以選擇性地使該 實體儲存裝置的序列訊號,於該存取控制開關為第一配歡 態時,配接往返於該第一儲存虛擬化控制器,於該存取^ 開關為第二配接狀態時,配接往返於該第二錯存虛擬化控制 k 〇 83 1253569 in.如申請專利範圍第116項所述之方法,更包含有下列步驟: 提供-存取所«賴電路,_取_存取㈣關之存取所 有權,該存取所有權仲载電路包含有 第存取所有權晴求訊號線,用以作為一第一輸入線及其係 輕接至該第一儲存虛擬化控制器; 第一輸出線,其係耦接至該存取開.關之一第一存取控制開關 控制訊號輸入線; -第二存取所浦請求訊麟,肋作為—第二輸人端及其麵 接至該第二儲存虛擬化控制器;以及 第一輸出端,其係搞接至該存取開關之一第二存取控制開關 控制訊號輸入線; 藉此,當該冗餘儲存虛擬化控制對中之一個儲存虛擬化控制器拉 啟其存取所有權請求信號線時,若該冗餘儲存虛擬化控制器 對中之另一個儲存虛擬化控制器已先拉啟其存取所權請求訊 號線’則該個儲存虛擬化控制器之存取控制開關控制訊號線 不會被拉啟’直到该另一個儲存虛擬化控制器停止拉啟其該 存取所有權請求訊號線為止。 118.如申請專利範圍第117項所述之方法,其更包含有下列步驟: 提供該存取所有權仲裁電路一第一另一個儲存虛擬化控制器之存 取所有權請求訊號線,用以作為一第三輸出線及其係耦接至 該第二儲存虛擬化控制器;以及 提供該存取所有權仲裁電路一第二另一個儲存虛擬化控制器之存 84 1253569 取所有權請求訊號線,用以作為一第四輪出線及其係柄接至 該第一儲存虛擬化控制器; 藉此’當該冗餘儲存虛擬化控制器對中之—個儲存虛擬化控制器 拉啟該存取所有權請求訊號時,而該冗餘儲存虛擬化控制器 對中之另-個儲存虛擬化控制器之存取請求訊號為停止拉 啟,則_至該個儲存虛擬化控㈣的另—個儲存虛擬化控 制器之存取所有權請求訊號線將被拉啟,以指示存取所有權 已授予給該個儲存虛擬化控制器; 提供-存輯_判定卿,而當該第—與該第二齡虛擬化控 制器同時拉啟該等存取所有權請求訊號線時,用以授予該存 取所有權給該冗餘儲存虛擬化控制器對之其中一個儲存虛擬 化控制器。 119·如申請專利範圍第109或第110項所述之方法,更包含有提 供一存取所有權轉移機制,係用以使該冗餘儲存虛擬化控制 器對中該個儲存虛擬化控制器與該另一個儲存虛擬化控制器 合作移轉存取所有權往返於其間。 120·如申請專利範圍第119項所述之方法,其中該儲存虛擬化控 制對間與存取所有權轉移相關的資訊交換,係透過控制器間 通訊的一部份進行。 121·如申請專利範圍第119項所述之方法,其中該存取所有權轉 移機制包含下列步驟··. (a)存取權所有者決定釋出該存取所有權並移轉所有權給該冗餘 85 1253569 儲存虛擬倾_對之另__存虛擬化控制器; ()赫取權所有者釋出該存取所有權,因此其不再為存取權所· 有者;以及 , (C)該另-個贿虛統控㈣取_存取所補,並成為該實 體儲存裝置之新的存取權所有者。 12\如申請專利範圍第121項所述之方法,其中該⑷決定釋出 /存取所有權與轉移所有權給該另一個儲存虛擬化控制器之 步驟係由取件-存取請求者角色的該另一個儲存虛擬化控制 益所觸發,其係藉由發出一存取權請求指示給該存取權所有· 者以請求存取所有權轉移而觸發。 股如中請專利範圍第121項所述之方法,更包含有下列步驟: 提供-第-訊號線,對該第—儲存虛擬化控制器而言,該第一訊 號線為主_號線’但對該第二儲存虛擬化控制器而言為被 動訊號線’其係用以自該第—儲存虛擬化控制器發出一第— 存取請求訊號給該第二儲存虛擬化控制器; 提供-第二訊號線,對該第二儲存虛擬化控制器而言,該第二訊鲁 號線為主動訊號線,但對該第—儲存虛擬化控制器則為被動 訊號線,其係用以自該第二儲存虛擬化控制器發出一第二存 取清求汛號給該第一儲存虛擬化控制器; 該儲存虛擬化控繼射的該存取歸求者餘啟其絲峨 、 線,以明求從觀餘儲存虛擬化控制騎巾的該存取權所有 者轉移對該至少-實體儲存裝置的存取所有權; 86 ^253569 該存取權所有者停止拉啟其主動訊號線,以釋出該存取所 以及 ’ · 。亥存取請求者減其主動職線,並改_存取控_關之配接. 狀態,以取得該存取所有權。 似.如巾請專利範圍第121項所述之方法,其中,更包含有以下 ^步驟··在存取顧有者歧釋㈣存取財觀移轉所有 權給該另-個儲存虛擬化控制器之後,以及在該存取權所有 者釋出該存取所有權之前,該存取權所有者將新的輸出入請 求放入件列中使其之後再執行,並且做完所有正在進行中的· 輸出入請求。 125·如申請專利範圍第ί21項所述之方法,其中該存取權所有者 釋出該存取所有權之步驟,包含有改變一減於該儲存虛擬 化控制H對與4實體儲存裝置之間的存取控制開關的狀態。 126·如申請專利範圍第121項所述之方法,其中該存取請求者取 得該存取所有歡步驟,包含有改變,接於簡存虛擬化 控制器對與该實體儲存裝置之間的存取控制開關的狀態。 · 127· -種電腦可讀取之儲存媒體,該儲存媒體中儲存有一程式 碼’该程式碼可應驗_電腦系統巾,該電腦系統包含有一 主機、-對減雜主機的外部儲存虛擬化控彻,以及至 少一耦接至該對外部儲存虛擬化控制器的實體儲存裝置,該 私式碼可使得該電腦系統執行下列步驟·· 以該冗餘f轉虛擬化控制器對中之—個儲存虛擬化控制器執行輸 87 1253569 出入操作以回應該主機發出的輸出入請求,以經由一點對點 *序列訊號傳遞方式存取該至少一實體儲存裝置;以及 . 當在該冗·存虛擬化_輯巾__存虛擬化控㈣未上, 線或上線後又離線時,則藉由該冗餘儲存虛擬化控制器對令 的另一個儲存虛擬化控制器自動聽執行原本應由原來該個 渚存虛擬化控制杰所執行的該輸出入操作,以回應該主機發 出的《亥輸出入凊求’以經由一點對點序列訊號傳遞方式存取 該至少一實體儲存裝置。 128·如申%專利關第127項所述之電腦可讀取儲存媒體,其中_ 該至少一實體儲存裝置中之至少一係經由一題輸出入裝置 連結耦接至該儲存虛擬化控制器對。 129.-種執行儲存虛擬化於一具有一第一與一第二外部儲存虛擬 控制而配置為一冗餘儲存虛擬化控制器對之電腦系統中 的方法,該方法包含·· 回應自該電腦系統中的—主機端發出的輸出人請求,以該冗餘儲 存虛擬化控制n對中的—個儲存虛擬化控㈣執行輸出人操_ +作以存取該電腦系統中至少一實體儲存裝置;以及 當在該冗餘儲存虛擬化控㈣對中的該個贿虛擬化控制器未上 線或上線後又離線時,則藉由該冗餘儲存虛擬化控制器對中 :另個儲存虛擬化控制器執行該輸出入操作以回應該主機 七出的該輸出人請求,以存取該電腦系統中該至少一實體儲 存裝置·, 88 1253569 其中,係透過-冗餘輸出入農置連結痒對執行輸出入 徑傳送魏,.舰錄^裝科科觸包括二位於今· 第-齡虛擬化㈣故第―輸出人敍連料,叹」位. 於該第二儲存虛擬化控制器之第二輸出入裝置連社蜂 胤如申請專利範圍第129項所述之方法,其中當_存 化控制器未上線或上線後又離線時,該另一個儲存虛擬化亚控 制态將接替該個儲存虛擬化控制器原先執行之功能。 131. 如申請專利範圍第129項所述之方法,其中該輸出入請求重 定路徑傳送功能係由下列步驟所執行·· φ 該冗餘儲存虛擬化控制輯中之—請求啟動者傳送_輸出入請求 給該冗餘儲存虛擬化控制器對中之一存取權所有者以及 該存取權所有者執行該請求啟動者所傳送之該輸出入請求。 132. 如申請專利範圍第131項所述之方法,其中更包^有於該存 取權所有者與該實體齡裝置間傳遞而與該輸出人請求關聯子 的訊息與資料之至少—部份,係被代傳至該請求啟動者。 I33·如申請專利範圍第m項所述之方法,其中該冗餘輸出入裝鲁 置連結埠對包含有一對裝置端輸出入裝置連結埠。 1 134·如申請專利範圍第129柄述之方法,其中該冗餘輸出入裝 置連結埠對包含有—對混合型輸出入裂置連結埠,該混合㉟ · 輸出入裝置連結埠係可用來作為對某些輸出入操作之裝置端 、 輸出入裝置連結琿’且可作為對其他輪出入操作之主機端輪 出入裝置連結埠。 ^ 89 1253569 135·如申請專利範圍第ι29項所述之方法,其更包含有提供一存 取所有權轉移機制,係用以使該冗餘儲存虛擬化控制器對中 該個儲存虛擬化控制器與該另一個儲存虛擬化控制器合作移 轉存取所有權往返於其間。 136·如申請專利範圍第135項所述之方法,其中該儲存虛擬化控 制器對間與存取所有權轉移相關的資訊交換,係透過控制器 間通訊的一部份進行。 137.如申請專利範圍第135項所述之方法,其中該存取所有權轉 移機制包含下列步驟.: (a)存取權所有者献釋&該存取所有權並移轉所有權給該冗餘 儲存虛擬化控制器對中之另一個儲存虛擬化控制器;、 ㈦該存轉财挪出該存輯有權,耻料縣存取 有者;以及 (C)體取得财顺树,並成為該實 體儲存裝置之新的存取權所有者。 138·Ζ2利關第137項所述之方法,其中該⑷決定釋出 步驟係由取得-存取個儲存虛擬化控制器之 哭所觸私甘/角的該另一個儲存虛擬化控制 :以細由發出—存取權請求指示給該存取權所有 者明求存取所有權轉移而觸發。 驟
^=_137物之妓,更包 在存取椎所有嫩去咖存取所有權並移轉所有權 90 1253569 給該另一個儲存虛擬化控制器之後,以及在該存取權所有者 釋出該存取所有權之前,該存取權所有者將新的輸出入請求 放入佇列中使其之後再執行,並且做完所有正在進行中的輸 出入請求。
91
TW093118844A 2003-07-02 2004-06-28 Computer system, redundant storage virtualization subsystem, external storage, virtualization controller, computer-readable storage medium, and related methods thereof TWI253569B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US48392603P 2003-07-02 2003-07-02

Publications (2)

Publication Number Publication Date
TW200502788A TW200502788A (en) 2005-01-16
TWI253569B true TWI253569B (en) 2006-04-21

Family

ID=34375216

Family Applications (3)

Application Number Title Priority Date Filing Date
TW093118121A TWI260500B (en) 2003-07-02 2004-06-23 Storage virtualization computer system and external controller therefor
TW093118601A TWI262390B (en) 2003-07-02 2004-06-25 JBOD subsystem and external emulation controller thereof
TW093118844A TWI253569B (en) 2003-07-02 2004-06-28 Computer system, redundant storage virtualization subsystem, external storage, virtualization controller, computer-readable storage medium, and related methods thereof

Family Applications Before (2)

Application Number Title Priority Date Filing Date
TW093118121A TWI260500B (en) 2003-07-02 2004-06-23 Storage virtualization computer system and external controller therefor
TW093118601A TWI262390B (en) 2003-07-02 2004-06-25 JBOD subsystem and external emulation controller thereof

Country Status (3)

Country Link
US (5) US8301809B2 (zh)
CN (3) CN1320436C (zh)
TW (3) TWI260500B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI473005B (zh) * 2011-06-09 2015-02-11 Taejin Infotech Co Ltd 基於開關的混合存儲系統及其提供方法
TWI501075B (zh) * 2014-08-06 2015-09-21 Inventec Corp 伺服器

Families Citing this family (127)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE42761E1 (en) 1997-12-31 2011-09-27 Crossroads Systems, Inc. Storage router and method for providing virtual local storage
US5941972A (en) 1997-12-31 1999-08-24 Crossroads Systems, Inc. Storage router and method for providing virtual local storage
US8813137B2 (en) * 1998-05-08 2014-08-19 Qualcomm Incorporated Apparatus and method for decoding digital image and audio signals
US8301809B2 (en) * 2003-07-02 2012-10-30 Infortrend Technology, Inc. Storage virtualization computer system and external controller thereof
JP4383132B2 (ja) * 2003-09-02 2009-12-16 株式会社日立製作所 仮想化制御装置及び計算機システム
US7308530B1 (en) * 2003-10-02 2007-12-11 Marvell International Ltd. Architecture for a data storage device
US20050114464A1 (en) * 2003-10-27 2005-05-26 Shai Amir Virtualization switch and method for performing virtualization in the data-path
US20050102468A1 (en) * 2003-11-06 2005-05-12 Delaney William P. Methods and systems for coupling multiple initiators to SATA storage devices
US7676603B2 (en) * 2004-04-20 2010-03-09 Intel Corporation Write combining protocol between processors and chipsets
US7124143B2 (en) 2004-05-10 2006-10-17 Hitachi, Ltd. Data migration in storage system
US7502954B1 (en) * 2004-05-26 2009-03-10 Emc Corporation High availability data storage system
US7958292B2 (en) * 2004-06-23 2011-06-07 Marvell World Trade Ltd. Disk drive system on chip with integrated buffer memory and support for host memory access
JP4438582B2 (ja) 2004-09-22 2010-03-24 株式会社日立製作所 データ移行方法
KR100640588B1 (ko) * 2004-09-24 2006-11-01 삼성전자주식회사 Sata 인터페이스와 ata 인터페이스를 선택적으로사용하는 비휘발성 메모리 저장 장치
KR100594305B1 (ko) * 2004-12-17 2006-06-30 삼성전자주식회사 시리얼 ata 인터페이스를 이용하여 광학 디스크드라이버의 프로그램 코드를 업데이트하는 장치 및 그 방법
CN100511118C (zh) * 2004-12-21 2009-07-08 普安科技股份有限公司 储存虚拟化控制器、子系统及系统与方法
US9495263B2 (en) * 2004-12-21 2016-11-15 Infortrend Technology, Inc. Redundant SAS storage virtualization subsystem and system using the same, and method therefor
US8301810B2 (en) * 2004-12-21 2012-10-30 Infortrend Technology, Inc. SAS storage virtualization controller, subsystem and system using the same, and method therefor
US20060143506A1 (en) * 2004-12-29 2006-06-29 Lsi Logic Corporation RAID storage controller assist circuit, systems and methods
CN100447731C (zh) * 2005-01-13 2008-12-31 普安科技股份有限公司 冗余存储虚拟化计算机系统
TWI344602B (en) * 2005-01-13 2011-07-01 Infortrend Technology Inc Redundant storage virtualization computer system
TW200627170A (en) * 2005-01-25 2006-08-01 Sunplus Technology Co Ltd Control system for storage device
CN100359454C (zh) * 2005-01-27 2008-01-02 凌阳科技股份有限公司 储存装置的控制系统
US8019842B1 (en) * 2005-01-27 2011-09-13 Netapp, Inc. System and method for distributing enclosure services data to coordinate shared storage
US8180855B2 (en) * 2005-01-27 2012-05-15 Netapp, Inc. Coordinated shared storage architecture
US20060194386A1 (en) * 2005-02-25 2006-08-31 Dell Products L.P. Method and apparatus for supporting port aggregation of serial attached SCSI wide ports via virtual ports
US7689744B1 (en) * 2005-03-17 2010-03-30 Lsi Corporation Methods and structure for a SAS/SATA converter
US7774514B2 (en) * 2005-05-16 2010-08-10 Infortrend Technology, Inc. Method of transmitting data between storage virtualization controllers and storage virtualization controller designed to implement the method
US7984258B2 (en) * 2005-06-03 2011-07-19 Seagate Technology Llc Distributed storage system with global sparing
US8352649B2 (en) * 2005-06-09 2013-01-08 Infortrend Technology, Inc. Storage virtualization subsystem architecture
DE102005028478A1 (de) * 2005-06-20 2006-12-28 Giga-Byte Technology Co., Ltd., Hsin-Tien Datenübertragungsvorrichtung und ein Verfahren zum Verwenden derselben
GB2427486B (en) * 2005-06-23 2010-09-29 Giga Byte Tech Co Ltd Interface system for SATA having fast data access function and method thereof
TWI277874B (en) * 2005-06-24 2007-04-01 Via Tech Inc Method for access non-standard register in serial advanced technology attachment (SATA) device
US7627005B2 (en) * 2005-09-29 2009-12-01 Emc Corporation Multiplexing system
DE102005031617A1 (de) * 2005-07-06 2007-01-25 Giga-Byte Technology Co., Ltd. System und Verfahren zur Steuerung einer Sata-Schnittstelle
US7493430B2 (en) * 2005-07-14 2009-02-17 Quantum Corporation Data flow control and bridging architecture enhancing performance of removable data storage systems
US7363457B1 (en) 2005-07-21 2008-04-22 Sun Microsystems, Inc. Method and system for providing virtualization data services for legacy storage devices
US7571269B2 (en) * 2005-08-25 2009-08-04 Silicon Image, Inc. Covert channel for conveying supplemental messages in a protocol-defined link for a system of storage devices
CN101356506B (zh) * 2005-08-25 2014-01-08 晶像股份有限公司 智能可缩放存储切换架构
TWI361348B (en) * 2005-09-02 2012-04-01 Infortrend Technology Inc Parity engine for use in storage virtualization controller and methods of generating data by parity engine
DE602006001446D1 (de) * 2005-09-23 2008-07-24 Infortrend Technology Inc Redundantes Speichervirtualisierungssubsystem mit Datenpfadverzweigungsfunktion
EP1777613B1 (en) 2005-10-11 2021-11-24 Infortrend Technology, Inc. Pool spares for data storage virtualization subsystem
TWI307034B (en) * 2005-11-23 2009-03-01 Infortrend Technology Inc Storage virtualization subsystem and system with host-side redundancy via sas connectivity
US20070124521A1 (en) * 2005-11-30 2007-05-31 International Business Machines Corporation System and method of substituting redundant same address devices on a multi-mastered IIC bus
EP1816563B1 (en) * 2006-01-26 2016-04-27 Infortrend Technology, Inc. Method of managing data snapshot images in a storage system
US7516352B2 (en) * 2006-03-21 2009-04-07 International Business Machines Corporation Isolating a drive from disk array for diagnostic operations
US9342413B2 (en) * 2006-04-27 2016-05-17 Infortrend Technology, Inc. SAS RAID head
US7673185B2 (en) * 2006-06-08 2010-03-02 Dot Hill Systems Corporation Adaptive SAS PHY configuration
US7536584B2 (en) * 2006-06-08 2009-05-19 Dot Hill Systems Corporation Fault-isolating SAS expander
WO2007146515A2 (en) * 2006-06-08 2007-12-21 Dot Hill Systems Corporation Fault-isolating sas expander
US8285893B2 (en) * 2006-10-13 2012-10-09 Dell Products L.P. System and method for adaptively setting connections to input/output hubs within an information handling system
US7496694B2 (en) * 2006-11-21 2009-02-24 Lsi Logic Corporation Circuit, systems and methods for monitoring storage controller status
US8307128B2 (en) * 2006-12-08 2012-11-06 International Business Machines Corporation System and method to improve sequential serial attached small computer system interface storage device performance
US8607070B2 (en) * 2006-12-20 2013-12-10 Kingston Technology Corporation Secure storage system and method of use
US20080168226A1 (en) * 2007-01-05 2008-07-10 Accusys. Inc. Correction method for reading data of disk array system
US20080168224A1 (en) * 2007-01-09 2008-07-10 Ibm Corporation Data protection via software configuration of multiple disk drives
US20080244620A1 (en) * 2007-03-27 2008-10-02 Brian James Cagno Dynamic Communication Fabric Zoning
US8527781B2 (en) * 2007-05-09 2013-09-03 Kingston Technology Corporation Secure and scalable solid state disk system
US8499168B2 (en) * 2007-05-09 2013-07-30 Kingston Technology Corporation Secure and scalable solid state disk system
US8010768B2 (en) * 2007-05-09 2011-08-30 Kingston Technology Corporation Secure and scalable solid state disk system
ITTO20070387A1 (it) * 2007-06-04 2008-12-05 Reven Ge S R L Sistema di elaboratori comprendente almeno due elaboratori e relativo metodo per il funzionamento continuo di detto sistema
US8099532B2 (en) * 2007-06-14 2012-01-17 International Business Machines Corporation Intelligent dynamic multi-zone single expander connecting dual ported drives
JP4945363B2 (ja) * 2007-07-30 2012-06-06 株式会社日立製作所 バックエンドで接続されるストレージシステム
US8141092B2 (en) 2007-11-15 2012-03-20 International Business Machines Corporation Management of an IOV adapter through a virtual intermediary in a hypervisor with functional management in an IOV management partition
US8141093B2 (en) * 2007-11-15 2012-03-20 International Business Machines Corporation Management of an IOV adapter through a virtual intermediary in an IOV management partition
US8141094B2 (en) * 2007-12-03 2012-03-20 International Business Machines Corporation Distribution of resources for I/O virtualized (IOV) adapters and management of the adapters through an IOV management partition via user selection of compatible virtual functions
TWI357562B (en) * 2007-12-20 2012-02-01 Infortrend Technology Inc Io processor
US7966288B2 (en) * 2008-01-02 2011-06-21 Sandisk Il Ltd. Device and method for integrating file systems
US8307129B2 (en) * 2008-01-14 2012-11-06 International Business Machines Corporation Methods and computer program products for swapping synchronous replication secondaries from a subchannel set other than zero to subchannel set zero using dynamic I/O
US7930165B2 (en) * 2008-02-07 2011-04-19 Accemic Gmbh & Co. Kg Procedure and device for emulating a programmable unit providing system integrity control
US8359415B2 (en) * 2008-05-05 2013-01-22 International Business Machines Corporation Multi-root I/O virtualization using separate management facilities of multiple logical partitions
JP2010033125A (ja) * 2008-07-25 2010-02-12 Hitachi Ltd ストレージ装置及びデータ転送方法
US8516173B2 (en) * 2008-07-28 2013-08-20 International Business Machines Corporation Swapping PPRC secondaries from a subchannel set other than zero to subchannel set zero using control block field manipulation
JP2010049640A (ja) * 2008-08-25 2010-03-04 Seiko Epson Corp 情報処理装置及びその制御方法
US9384160B2 (en) * 2008-09-04 2016-07-05 Avago Technologies General Ip (Singapore) Pte. Ltd. Methods and controllers for affiliation managment
EP2338244B1 (en) * 2008-09-12 2021-06-16 Assa Abloy Ab Use of a secure element for writing to and reading from machine readable credentials
US8225019B2 (en) * 2008-09-22 2012-07-17 Micron Technology, Inc. SATA mass storage device emulation on a PCIe interface
US20100115140A1 (en) * 2008-10-30 2010-05-06 Micron Technology, Inc. Encoded addressing within control code for bus communication
CN101763221B (zh) 2008-12-24 2013-01-30 成都市华为赛门铁克科技有限公司 一种存储方法、存储系统及控制器
US8239395B2 (en) 2008-12-26 2012-08-07 Sandisk Il Ltd. Storage device presenting to hosts only files compatible with a defined host capability
US8943409B2 (en) * 2008-12-26 2015-01-27 Sandisk Il Ltd. Storage device managing playable content
US20100169395A1 (en) * 2008-12-26 2010-07-01 Sandisk Il Ltd. Device and method for filtering a file system
US8166067B2 (en) * 2008-12-26 2012-04-24 Sandisk Il Ltd. Method and apparatus for providing access to files based on user identity
US8144582B2 (en) * 2008-12-30 2012-03-27 International Business Machines Corporation Differentiating blade destination and traffic types in a multi-root PCIe environment
US20100235900A1 (en) * 2009-03-13 2010-09-16 Assa Abloy Ab Efficient two-factor authentication
US9032058B2 (en) * 2009-03-13 2015-05-12 Assa Abloy Ab Use of SNMP for management of small footprint devices
US8474026B2 (en) * 2009-03-13 2013-06-25 Assa Abloy Ab Realization of access control conditions as boolean expressions in credential authentications
EP2406749B1 (en) * 2009-03-13 2018-06-13 Assa Abloy Ab Transfer device for sensitive material such as a cryptographic key
CN107247565B (zh) * 2009-03-18 2020-06-09 株式会社日立制作所 存储控制装置以及虚拟卷的控制方法
US8125472B2 (en) * 2009-06-09 2012-02-28 Global Oled Technology Llc Display device with parallel data distribution
US8510592B1 (en) * 2009-09-15 2013-08-13 Netapp, Inc. PCI error resilience
US8261269B2 (en) * 2009-09-21 2012-09-04 Oracle International Corporation System and method for synchronizing transient resource usage between virtual machines in a hypervisor environment
US8201020B2 (en) 2009-11-12 2012-06-12 International Business Machines Corporation Method apparatus and system for a redundant and fault tolerant solid state disk
US9256521B1 (en) * 2010-11-03 2016-02-09 Pmc-Sierra Us, Inc. Methods and apparatus for SAS controllers with link list based target queues
US8521931B2 (en) * 2010-12-30 2013-08-27 Lsi Corporation Serial input output (SIO) port expansion apparatus and method
US9329939B2 (en) * 2011-06-08 2016-05-03 Taejin Info Tech Co., Ltd Two-way raid controller for a semiconductor storage device
US20120317335A1 (en) * 2011-06-08 2012-12-13 Byungcheol Cho Raid controller with programmable interface for a semiconductor storage device
US8819316B2 (en) * 2011-06-21 2014-08-26 Taejin Info Tech Co., Ltd. Two-way raid controller with programmable host interface for a semiconductor storage device
CN102255958B (zh) * 2011-06-27 2014-11-26 北京星网锐捷网络技术有限公司 数据同步方法及系统
CN102801768A (zh) * 2012-01-20 2012-11-28 华为技术有限公司 数据处理方法及系统、网络设备
US8773817B2 (en) * 2012-07-24 2014-07-08 Lsi Corporation Storage device having degauss circuitry with ramp generator for use in generating chirped degauss signal
JP6040612B2 (ja) * 2012-07-24 2016-12-07 富士通株式会社 ストレージ装置、情報処理装置、情報処理システム、アクセス制御方法、およびアクセス制御プログラム
DE112013004360B4 (de) * 2012-09-05 2021-12-30 Mitsubishi Electric Corporation Eingabe/Ausgabe-Ansprechsteuerungseinstellungseinrichtung
CN103793179A (zh) * 2012-10-30 2014-05-14 英业达科技有限公司 机柜伺服系统及逻辑磁盘系统的管理方法
CN103294630B (zh) * 2013-05-07 2015-11-04 福建鑫诺通讯技术有限公司 一种嵌入式linux系统中实现串口多路复用的方法
US9372774B2 (en) 2013-05-22 2016-06-21 GM Global Technology Operations LLC Redundant computing architecture
CN103440177A (zh) * 2013-08-23 2013-12-11 浪潮电子信息产业股份有限公司 一种基于numa多物理层分区的存储控制冗余方法
US10691838B2 (en) * 2014-06-20 2020-06-23 Cypress Semiconductor Corporation Encryption for XIP and MMIO external memories
KR102320407B1 (ko) * 2015-06-05 2021-11-03 삼성전자주식회사 I2c 통신 모듈을 포함하는 컴퓨팅 장치 및 그것의 통신 에러 복구 방법
US10372185B2 (en) 2015-07-28 2019-08-06 Western Digital Technologies, Inc. Enhanced power control of data storage arrays
US9921754B2 (en) * 2015-07-28 2018-03-20 Futurewei Technologies, Inc. Dynamic coding algorithm for intelligent coded memory system
US10261690B1 (en) 2016-05-03 2019-04-16 Pure Storage, Inc. Systems and methods for operating a storage system
US10445018B2 (en) 2016-09-09 2019-10-15 Toshiba Memory Corporation Switch and memory device
US10866912B2 (en) 2017-03-10 2020-12-15 Toshiba Memory Corporation Integrated heterogeneous solid state storage drive
US10509415B2 (en) * 2017-07-27 2019-12-17 Aurora Flight Sciences Corporation Aircrew automation system and method with integrated imaging and force sensing modalities
US10956245B1 (en) * 2017-07-28 2021-03-23 EMC IP Holding Company LLC Storage system with host-directed error scanning of solid-state storage devices
TWI656442B (zh) 2017-11-30 2019-04-11 慧榮科技股份有限公司 用來於一記憶裝置中進行存取控制之方法以及記憶裝置及其控制器
CN108280041B (zh) * 2017-12-29 2020-03-10 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) 一种内部集成电路主机的通信方法和装置
CN108459971A (zh) * 2018-03-19 2018-08-28 国云科技股份有限公司 一种基于桌面云共享设备的云盘性能加速方法
CN109213446B (zh) * 2018-08-23 2022-03-22 郑州云海信息技术有限公司 写缓存模式的切换方法、装置、设备及可读存储介质
CN109271108B (zh) * 2018-09-03 2021-11-30 青岛镕铭半导体有限公司 一种存储器控制装置及数据存储设备
US11868309B2 (en) 2018-09-06 2024-01-09 Pure Storage, Inc. Queue management for data relocation
CN111324296B (zh) 2018-12-16 2022-08-09 华为技术有限公司 一种数据处理的方法、控制器、存储设备及存储系统
US11500727B2 (en) 2020-05-27 2022-11-15 Western Digital Technologies, Inc. ZNS parity swapping to DRAM
US11138066B1 (en) * 2020-05-27 2021-10-05 Western Digital Technologies, Inc. Parity swapping to DRAM
US11645012B1 (en) * 2022-01-18 2023-05-09 Dell Products, L.P. Method and apparatus for distributing read operations between emulations in a storage engine
US20240028202A1 (en) * 2022-07-20 2024-01-25 Dell Products, L.P. Optimizing Backend Workload Processing in a Storage System

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0721162A2 (en) * 1995-01-06 1996-07-10 Hewlett-Packard Company Mirrored memory dual controller disk storage system
US6532547B1 (en) 1995-06-16 2003-03-11 Emc Corporation Redundant peripheral device subsystem
US5819310A (en) * 1996-05-24 1998-10-06 Emc Corporation Method and apparatus for reading data from mirrored logical volumes on physical disk drives
US5986880A (en) * 1997-06-16 1999-11-16 Compaq Computer Corporation Electronic apparatus having I/O board with cable-free redundant adapter cards thereon
US6178520B1 (en) * 1997-07-31 2001-01-23 Lsi Logic Corporation Software recognition of drive removal or insertion in a storage system
JPH1153235A (ja) * 1997-08-08 1999-02-26 Toshiba Corp ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム
US6725331B1 (en) * 1998-01-07 2004-04-20 Emc Corporation Method and apparatus for managing the dynamic assignment resources in a data storage system
US6148349A (en) * 1998-02-06 2000-11-14 Ncr Corporation Dynamic and consistent naming of fabric attached storage by a file system on a compute node storing information mapping API system I/O calls for data objects with a globally unique identification
US6247077B1 (en) * 1998-02-06 2001-06-12 Ncr Corporation Highly-scalable parallel processing computer system architecture
US6061750A (en) * 1998-02-20 2000-05-09 International Business Machines Corporation Failover system for a DASD storage controller reconfiguring a first processor, a bridge, a second host adaptor, and a second device adaptor upon a second processor failure
US6230240B1 (en) * 1998-06-23 2001-05-08 Hewlett-Packard Company Storage management system and auto-RAID transaction manager for coherent memory map across hot plug interface
US6711632B1 (en) * 1998-08-11 2004-03-23 Ncr Corporation Method and apparatus for write-back caching with minimal interrupts
US6314460B1 (en) * 1998-10-30 2001-11-06 International Business Machines Corporation Method and apparatus for analyzing a storage network based on incomplete information from multiple respective controllers
US6799283B1 (en) * 1998-12-04 2004-09-28 Matsushita Electric Industrial Co., Ltd. Disk array device
JP2000276304A (ja) * 1999-03-26 2000-10-06 Nec Corp データ移行方法と情報処理システム
US6483107B1 (en) * 1999-05-11 2002-11-19 Josef Rabinovitz Canister having a combined guide rail and light pipe system for use in a computer peripheral enclosure
US6631442B1 (en) * 1999-06-29 2003-10-07 Emc Corp Methods and apparatus for interfacing to a data storage system
US7068661B1 (en) * 1999-07-13 2006-06-27 Alcatel Canada Inc. Method and apparatus for providing control information in a system using distributed communication routing
US6397292B1 (en) 1999-08-19 2002-05-28 Emc Corporation Asymmetrical striping of mirrored storage device arrays and concurrent access to even tracks in the first array and odd tracks in the second array to improve data access performance
US6493772B1 (en) * 1999-08-23 2002-12-10 International Business Machines Corporation System and method with guaranteed maximum command response time
WO2001022221A1 (en) * 1999-09-22 2001-03-29 Netcell Corp. Raid controller system and method with ata emulation host interface
US6574709B1 (en) * 1999-09-30 2003-06-03 International Business Machine Corporation System, apparatus, and method providing cache data mirroring to a data storage system
US6553387B1 (en) * 1999-11-29 2003-04-22 Microsoft Corporation Logical volume configuration data management determines whether to expose the logical volume on-line, off-line request based on comparison of volume epoch numbers on each extents of the volume identifiers
US6516370B1 (en) * 1999-12-29 2003-02-04 Emc Corporation Data storage system
US6681339B2 (en) * 2001-01-16 2004-01-20 International Business Machines Corporation System and method for efficient failover/failback techniques for fault-tolerant data storage system
US7155569B2 (en) * 2001-02-28 2006-12-26 Lsi Logic Corporation Method for raid striped I/O request generation using a shared scatter gather list
US6957291B2 (en) * 2001-03-29 2005-10-18 Quantum Corporation Removable disk storage array emulating tape library having backup and archive capability
US6792505B2 (en) * 2001-04-16 2004-09-14 International Business Machines Corporation System apparatus and method for storage device controller-based message passing having effective data channel bandwidth and controller cache memory increase
US6978345B2 (en) * 2001-05-15 2005-12-20 Hewlett-Packard Development Company, L.P. Self-mirroring high performance disk drive
US7065661B2 (en) * 2002-12-16 2006-06-20 Emc Corporation Using request and grant signals to read revision information from an adapter board that interfaces a disk drive
US7107343B2 (en) * 2001-07-12 2006-09-12 Adaptec, Inc. Method and apparatus for improved RAID 1 write performance in low cost systems
US7171434B2 (en) * 2001-09-07 2007-01-30 Network Appliance, Inc. Detecting unavailability of primary central processing element, each backup central processing element associated with a group of virtual logic units and quiescing I/O operations of the primary central processing element in a storage virtualization system
US7178147B2 (en) * 2001-09-21 2007-02-13 International Business Machines Corporation Method, system, and program for allocating processor resources to a first and second types of tasks
US7028213B2 (en) * 2001-09-28 2006-04-11 Hewlett-Packard Development Company, L.P. Error indication in a raid memory system
US7107320B2 (en) * 2001-11-02 2006-09-12 Dot Hill Systems Corp. Data mirroring between controllers in an active-active controller pair
US7055056B2 (en) * 2001-11-21 2006-05-30 Hewlett-Packard Development Company, L.P. System and method for ensuring the availability of a storage system
US7552289B2 (en) 2002-01-18 2009-06-23 Rasilient, Inc. Method and apparatus for arbitrating access of a serial ATA storage device by multiple hosts with separate host adapters
WO2003068283A2 (en) * 2002-02-15 2003-08-21 Coloplast A/S A wound care device
KR100463841B1 (ko) * 2002-02-25 2004-12-29 한국전자통신연구원 레이드 서브 시스템과 이를 이용한 디스크 에러 모드에서데이터 입출력 및 복구 방법
US7032131B2 (en) * 2002-03-26 2006-04-18 Hewlett-Packard Development Company, L.P. System and method for ensuring merge completion in a storage area network
US6831831B2 (en) * 2002-04-11 2004-12-14 Bruce A Bicknell Disc storage subsystem having improved reliability
US7073022B2 (en) * 2002-05-23 2006-07-04 International Business Machines Corporation Serial interface for a data storage array
US20050089027A1 (en) * 2002-06-18 2005-04-28 Colton John R. Intelligent optical data switching system
US6961813B2 (en) * 2002-06-21 2005-11-01 Hewlett-Packard Development Company, L.P. System and method for providing multi-initiator capability to an ATA drive
US6925531B2 (en) * 2002-07-11 2005-08-02 Storage Technology Corporation Multi-element storage array
US7146521B1 (en) * 2002-08-21 2006-12-05 3Pardata, Inc. Preventing damage of storage devices and data loss in a data storage system
US7210005B2 (en) * 2002-09-03 2007-04-24 Copan Systems, Inc. Method and apparatus for power-efficient high-capacity scalable storage system
US20040123027A1 (en) * 2002-10-03 2004-06-24 Workman Michael Lee Systems and methods of multiple access paths to single ported storage devices
JP4230189B2 (ja) * 2002-10-03 2009-02-25 株式会社日立製作所 ディスクアレイ装置、及びその電源供給方法
US8214531B2 (en) * 2002-10-24 2012-07-03 Emulex Design & Manufacturing Corporation Network configuration synchronization for hardware accelerated network protocol
US6886059B2 (en) * 2002-10-31 2005-04-26 Lsi Logic Corporation Methods and structure for SCSI/IDE translation for non-SCSI enclosures in a storage subsystem
US20040088482A1 (en) * 2002-11-04 2004-05-06 Tanzer Herbert J. Systems for storing data
US20040177218A1 (en) * 2002-11-06 2004-09-09 Meehan Thomas F. Multiple level raid architecture
US7246192B1 (en) * 2003-01-10 2007-07-17 Marvell International Ltd. Serial/parallel ATA controller and converter
US8095704B2 (en) * 2003-01-13 2012-01-10 Sierra Logic Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves that may be incorporated within disk arrays
US7051134B2 (en) 2003-01-21 2006-05-23 Ali Corporation Daisy chained ATA host controllers in a single PCI device
JP3974538B2 (ja) * 2003-02-20 2007-09-12 株式会社日立製作所 情報処理システム
WO2004077211A2 (en) * 2003-02-28 2004-09-10 Tilmon Systems Ltd. Method and apparatus for increasing file server performance by offloading data path processing
US7111194B1 (en) * 2003-03-21 2006-09-19 Network Appliance, Inc. Mirror split brain avoidance
US7516272B2 (en) * 2003-03-28 2009-04-07 Emc Corporation Midplane-independent implementations of data storage system enclosures
US7302536B2 (en) 2003-06-17 2007-11-27 Hitachi, Ltd. Method and apparatus for managing replication volumes
JP4266725B2 (ja) * 2003-06-27 2009-05-20 株式会社日立製作所 記憶システム
US8301809B2 (en) * 2003-07-02 2012-10-30 Infortrend Technology, Inc. Storage virtualization computer system and external controller thereof
US7249205B2 (en) * 2003-11-20 2007-07-24 International Business Machines Corporation Apparatus and method to provide information from a first information storage and retrieval system to a second information storage and retrieval system
US7734868B2 (en) * 2003-12-02 2010-06-08 Nvidia Corporation Universal RAID class driver
US20050160319A1 (en) * 2004-01-14 2005-07-21 Marcak Scott B. System and method for detecting and reporting resource conflicts
US7313643B2 (en) * 2004-02-17 2007-12-25 Nec Electronics America, Inc. PCI-express to PCI/PCI X translator
US7913148B2 (en) * 2004-03-12 2011-03-22 Nvidia Corporation Disk controller methods and apparatus with improved striping, redundancy operations and interfaces
US7370188B2 (en) * 2004-05-17 2008-05-06 Intel Corporation Input/output scanning

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI473005B (zh) * 2011-06-09 2015-02-11 Taejin Infotech Co Ltd 基於開關的混合存儲系統及其提供方法
TWI501075B (zh) * 2014-08-06 2015-09-21 Inventec Corp 伺服器

Also Published As

Publication number Publication date
CN1320437C (zh) 2007-06-06
US20050005063A1 (en) 2005-01-06
TW200502788A (en) 2005-01-16
TW200502765A (en) 2005-01-16
TWI262390B (en) 2006-09-21
US10452270B2 (en) 2019-10-22
US20130013827A1 (en) 2013-01-10
CN1598755A (zh) 2005-03-23
US20050015545A1 (en) 2005-01-20
CN1558321A (zh) 2004-12-29
CN100334567C (zh) 2007-08-29
CN1320436C (zh) 2007-06-06
TW200502757A (en) 2005-01-16
US20050005062A1 (en) 2005-01-06
US20050005044A1 (en) 2005-01-06
US7281072B2 (en) 2007-10-09
US9594510B2 (en) 2017-03-14
CN1553346A (zh) 2004-12-08
US8301809B2 (en) 2012-10-30
TWI260500B (en) 2006-08-21

Similar Documents

Publication Publication Date Title
TWI253569B (en) Computer system, redundant storage virtualization subsystem, external storage, virtualization controller, computer-readable storage medium, and related methods thereof
TWI378349B (en) Computer system, storage virtualization subsystem, storage virtualization controller, and method for storage virtualization
US20230185747A1 (en) Presentation of direct accessed storage under a logical drive model
US8788873B2 (en) Server input/output failover device serving highly available virtual devices
KR101455016B1 (ko) 고가용성 솔리드 스테이트 드라이브를 제공하는 방법 및 장치
CN106021147B (zh) 在逻辑驱动器模型下呈现直接存取的存储设备
KR940004386B1 (ko) 데이타 처리 시스템 및 그 처리 방법
JPS60100258A (ja) バツフア装置
US5805920A (en) Direct bulk data transfers
TWI344602B (en) Redundant storage virtualization computer system
EP0936547A2 (en) Identifying at-risk components in systems with redundant components
JPH036742A (ja) フオールト・トレラント・データ処理システム
TWI522816B (zh) 應用伺服器至非依電性隨機存取記憶體之路徑選取技術
TW201227269A (en) Apparatus and method for handling a failed processor of a multiprocessor information handling system
JP2017515225A (ja) 仮想化のためのコヒーレント・アクセラレータ機能分離方法、システムおよびコンピュータ・プログラム
JPH02501603A (ja) 多重処理データシステムにおけるロック制御方法
KR102413593B1 (ko) 교착상태 방지를 위한 방법들 및 회로들
CN101452373A (zh) 输入输出处理器
CN106888116A (zh) 一种双控制器集群共享资源的调度方法
JP3004861U (ja) 密接に結合された二重のコントローラモジュールを用いた欠陥許容式の記憶装置用制御システム
Tu et al. Seamless fail-over for PCIe switched networks
Hansen et al. Using idle disks in a cluster as a high-performance storage system
US8732331B2 (en) Managing latencies in a multiprocessor interconnect
EP4332809A1 (en) End-to-end transaction integrity through standard interconnect
Guo et al. An intelligent query system based on Chinese short message service for restaurant recommendation