TW525056B - Method and apparatus for providing multi-path I/O in non-concurrent clustering environment using SCSI-3 persistent reserve - Google Patents

Method and apparatus for providing multi-path I/O in non-concurrent clustering environment using SCSI-3 persistent reserve Download PDF

Info

Publication number
TW525056B
TW525056B TW090124995A TW90124995A TW525056B TW 525056 B TW525056 B TW 525056B TW 090124995 A TW090124995 A TW 090124995A TW 90124995 A TW90124995 A TW 90124995A TW 525056 B TW525056 B TW 525056B
Authority
TW
Taiwan
Prior art keywords
key
command
reserve
reserved
reservation
Prior art date
Application number
TW090124995A
Other languages
English (en)
Inventor
John T Flynn Jr
Richard H Johnson
Limei M Shaw
Original Assignee
Ibm
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 Ibm filed Critical Ibm
Application granted granted Critical
Publication of TW525056B publication Critical patent/TW525056B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • 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/2002Error 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 interconnections or communication control functionality are redundant
    • G06F11/2007Error 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 interconnections or communication control functionality are redundant using redundant communication media
    • 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/2002Error 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 interconnections or communication control functionality are redundant
    • G06F11/2005Error 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 interconnections or communication control functionality are redundant using redundant communication controllers
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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
    • 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/202Error 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 processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2033Failover techniques switching over of hardware resources
    • 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/202Error 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 processing functionality is redundant
    • G06F11/2038Error 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 processing functionality is redundant with a single idle spare processing component

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)
  • Communication Control (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

1 五、發明説明( 技術領域 本發明概括來說關於用SCSI或FCP (光纖通道協定) 主機裝置存取記憶體陣列,並更具體地關於以一種在使用 SCSI-3持續保留的非並行聚類環境中用於提供多路徑1/〇 (輸入/輸出)的方法和裝置。 背景技術 在近年來,磁碟驅動系統已經在尺寸和完善度特徵得到 了大規模地成長。這些系統可以典型地包括由複雜多工磁 碟驅動控制器控制的許多大型磁碟驅動單元。一個大規模 磁碟驅動系統可以典型地從多個主電腦接收命令,並可以 控制大量的磁碟驅動大量記憶元件,每個大量儲存單元能 夠儲存超過幾十億位元的資料。 小型電腦系統介面(s C SI )是一個用於互連電腦和其他 輸入/輸出裝置的日益流行的通信協定標準。s c s I的第一 版本(SCSI-1 )在 ANSI X3.1 3 1 - 1 9 86 中有描述。scsi 標準經歷了幾次修訂,驅動速度和容量得到了提高,但仍 遺留一定的侷限性。 根據SCSI協定,主機裝置(如一個工作站)和目標裝 置(如一個硬碟驅動器)以菊花鏈方式連接于單匯流排。 匯流排上的每個裝置,不管是主機還是目標,被分配一個 專用的ID號碼。可以連接於該匯流排的裝置的數量受到可 用的專用ID號碼的數量的限制。例如,在SCSI-1協定 下,只有八個裝置可以被連接到該SCSI匯流排。scsi協 疋的後來的版本用於十六個裝置,並且將來的版本無疑會 -4 - 方便更多的裝置與單SCSI匯流排的連接。 除了限制可以連接到單SCSI匯流排的裝置的數量外, 1^疋嗓限制可以通過特定目標號碼存取的邏輯單元(如 單獨的驅動器)的數量。例如,根據S C SI -1標準,每個 目标裝置的邏輯單元的數量也被限制到八個。因此,特定 目^ (例如一個磁碟陣列)可以提供對八個邏輯單元(磁 莱機)的存取,目標號碼和邏輯單元號碼唯一地標示s C SI 系2上的特定儲存裝置。SCSI-3規格被設計為進一步改善 力此丨生並谷納兩速串列傳輸介面。這樣做,使S C s J有效 、進行邏輯>I 。這種分層允許軟體介面保持相對固 足’而基於諸如光纖通道和串列儲存架構(SSA)的串列 互連,可容納新的物理互連方案。 為了增加彳以存取特定儲存裝置的主機的數量,多條 SC:I匯流排以多層樹結構被連接在—起,路 =料資料和命令。在這種多層網路中,當存取超^ :二:裝置:,給主機造成性能的延遲。另夕卜因為上 二的好#目刖的SCSI系統不能利用由目前的儲存陣列 扣Ύ好處’孩儲存陣列提供對大|的儲存裝置的平行存 取。例如’儲存裝置的數量可能超過可用的目標數和兮 ==可:邏:單元數。再者’每個SCSI匯流: 母人了此僅被一個王機使用,因此防止了由同一 系統上的任何兩個主魅行絲該__。多 不同層上的主射以以平行方式存 置,但是這種平行存取增加了將W㈣由== 525056 A7
性和成本。 y以看到’電腦使用的成長已經產生了對於儲存用於電 二::統的靈活的、高可用性系統的日益添加的需求。許多 企業具有包括或獨立工作或通過網路互連的個人電腦和工 作站的夕王電腦系統。人們期望多主機系統能夠存取多儲 存=統的公用池(pool),以便可以通過所有的主機系統存 取2料。這種安排添加了對於任何一個主機系統可用的總 =:貝料里。另外,可以在各主機之間分擔工作負載,並且 正個系統可以受到保護,不受任何一個主機的故障的影 響。 裝
由於系統的複雜性添加,人們越來越不希望在磁碟機或 控制器層發生中斷故障。結果,系統變得更加可靠並且各 故障之間的平均時間持續添加。然而,如果磁碟驅動系統 當機”或離線(off-line),即使問題在幾個小時内得到 相對較快地更正,但是對於用戶卻不僅僅是不方便了。導 致損失的時間不僅負面地影響系統的輸貫量(thr〇ughput) 性能,也負面地影響用戶的應用性能。再有,用戶不關心 是物理磁碟機還是它的控制器發生故障,該系統的故障和 引起的不方便在整體上造成了用戶的困擾。 因此,人們希望提供保護硬體故障的冗餘路徑,以便可 以保證資料存取的性能和高可用性。以前用於允許多主機 存取多電腦系統的方案使用了主機配接器卡、外板磁碟控 制器(out board disk controllers )、和標準網路通信 系統的組合。 __;_-6- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 525056 五、發明説明( 弄多磁碟驅動系統依賴於諸如上述的s c s j匯流排的標 準匯流排將主電腦連接到控制器,並且連接控制器和磁碟 驅動單元。因此,如果連接到該匯流排的磁碟驅動控制器 發生故障,由主電腦所看到的整個系統就發生故障,結果 是如上所述用戶無法接受的。 針對廷個問題,具有冗餘操作的磁碟驅動控制器系統可 乂刀佈在連接於S c SI匯流排的至少兩個配接器中。至少 一個電腦也可以連接到SCSI匯流排中。如果scSI配接器 中的一個發生故障,連接於該匯流排的另-個SCSI配接 裝 ,一旦檢測到這個故障,就接管由發生敌障的SCSI配接 器所服務的各裝置。 =種網路中,可⑽接多㈣服器讀供高可用性群 渠夕處理。群集飼服器能狗並行存取資料,這可以寶助提 :重要用所需要的冗餘和抗故障性能。當操作在非 =板式中時,高可用性群集多處理可以使用 的資式中’僅僅單群集節點可以存取邏輯卷中 個因為硬1 群集多處理向另—個群集節點提供了一 障恢復 的同時,如果;Α 存系統的存取 了把的話,希望防止節點故障恢復。 可以看到:存在著對於用於 路經1/0的方法和裝置的需求。U仃氷抑境中提供多 -7- 525056 A7 B7 五、發明説明( 為了克服如上所述的習知技術中的限制,並為了克服在 閱讀和理解本說明書時很清楚的其他限制,本發明揭示了 一種用於在非並行聚類環境中提供多路徑"〇的方法和 置。 本發明通過經由使用SCSK3持續保留命令的多路徑, 才疋供對邏輯卷的共用非並— 行存取,以解決了上述玛題。 根據本發明的原理的一種方法包括··將作業系統的打開 k頁映射到SCSI持續保留命令(persistent command),以允許所有的多路·徑使用共用儲存系統的邏 輯單元號碼來登記,並允許第二個多路徑在使用共用儲存 系統獲得持續保留後,存取共用儲存系統的邏輯單元號 碼。 根據本發明的原理的方法的其他實施例包括可替換的或 可選擇的另外的特徵。其中本發明的第一特徵是··將作業 系統的打開選項映射到SCSI持續保留命令,以允許所有 的多路徑以共用儲存系統的邏輯單元號碼登記進一步包 括:用使用單一保留键用共用儲存系統的邏輯單元號碼登 記來自第一主機的所有路徑。 本發明的另一特徵是:將作業系統的打開選項映射到 SCSI持續保留命令進一步包括:獲得關於持續保留 (persistent reservation)和保留鍵的資訊。 本發明的另一特徵是:獲得關於持續保留和保留键的資 訊進一步包括:使用保留輸入(reservati〇n in)命令。 本發明的另一特徵是:保留輸入命令進一步包括:讀鍵 — __________- 8 - 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
525056 A7 B7 發明説明( 服務動作和讀保留服務動作。 本發明的另一胜料E7 · ^ ςΓςΤ 特徵疋·將作業系統的打開選項映射到 SCSI持續保留命令進一 · 的邏輯里_ A 步包括·發佈用於用共用儲存*** r 早70號碼開始-個動作的持續保留輸出 (reservation 〇ut)命令。 柯出 本發明的另一姑搿σ m t 另特用於以共用儲存系統的邏輯單元 唬碼開'°—個動作的持續保留輸出命令進-步包括.從勺 選擇的服務動作。 0 f 知=發明的另—特徵是登記服務動作包括:-個增加(add) 和一個移除(remove)選項。 本發明的另一特徵是:增加選項進 輸—決定第一次登記嘗試是否成功:= /人,6己t試不成功時,進行第二次登記嘗試,當第二次登 =嘗試不成功時,將該路徑的狀態設置為停用,並且當路 徑具有被設置為停用的狀態時,忽略該路徑,當第一 ^第 一次登記嘗試成功時,將該路徑的狀態設置為真。 ^明的另—特徵是:移除選項進-步包括:決定一條 路徑是否具有持續保留,當該路徑被決定具有持續保留 時,以設置的服務選項釋放發佈持續保留輸出,並二當二 路棱被決定不具有持續保留時,釋放該保留。 本發明的另一特徵是:保留服務動作還包括:藉由檢杳 是否設置命令參數判I個裝置是否需要向共用^存系二 的邏輯單元號碼進行保留,當未設置命令參數時,預設 裝 訂 線 -9 · 525056 A7 B7 五、發明説明(7 (defaUlt)為需要保留,並且當沒有啟動程式(initiator)已 經保留共用儲存系統的邏輯單元號碼和設置命令參數為執 行孩命令參數時,實現對共用儲存裝置的邏輯單元號碼的 持續保留。 本發明的另一特徵是:命令參數是強制打開選項,當現 有保田鍵與邊裝置的保留鍵不匹配時,該強制打開選項使 得該裝置讀取現有保留鍵、預占和異常停止排隊任務/ 本喬月的另特徵是:該方法進一步包括:藉由設置命 ^數為非保留來防止SCSm留,藉此決定強制打開 疋口、成力70成,當強制打開命令成功完成時,設置該裝置 6勺保田旗到進行了持續保留的路徑索引並打開帶有設置 =非SCSI-2保留選項的所有路徑,並且當強制打開命令 /又有成功芫成時,發佈錯誤代碼。 本發明的另一特徵是··該命令參數是一個保持 (、n )保田選項,該保持保留使得該裝置讀取現有保 田鍵決疋疋否返回_個鍵、當不返回—個鍵時,決定不 由啟動私式保留邏輯單元號碼,並進行持續保留。 本發明的另-特徵是:保持保留選擇使得該裝置決定返 回的鍵是否與該裝置㈣留鍵匹配,#該返回的鍵與該裝 置的保留鍵不匹配日专,為^ &扯 誤代碼,當該返回的鍵與該 =的保留鍵匹配時,打開設置切scsi_2 #留選項的 =’設置保留旗諸為進行了持續保留的路徑索引, :呆:保留為真,並在關閉時,檢查保持保留欄位以決 疋疋否應孩釋放持續保留。
525056
本發明的另一特徵是:命令參數是非保留選項,該非保 田選員使得忒裝置讀取現有保留鍵、決定是否返回一個 鍵建乂不由啟動程式保留邏輯單元號碼並用來自主機的 原始命令參數打開所有路徑。 本發明的另一特徵是:非保留選項使得該裝置決定是否 返回鍵與邊裝置的保留键匹配,當該返回鍵與該裝置的保 留鍵不匹配時,發佈錯誤代碼,且當該返回鍵與該裝置的 保留鍵匹配時,用釋放來發佈持續保留輸出。 本發明的另一特徵是··該命令參數是一個預設保留選 項,该預設保留選項使得該裝置檢查所有路徑,決定是否 有路徑未登記,登記所有未登記的路徑,忽略任何未成功 豆。己的路徑,返回和讀取保留鍵,當該返回的保留鍵與該 裝置的保留鍵不匹配時,發佈錯誤代碼並打開所有設置的 非S C SI - 2保留的已登記路徑。 本發明的另一特徵是··該預設保留選項使得當不返回一 個鍵時,該裝置選擇一個登記的路徑,為所選擇的登記的 路徑發佈持續保留;如果該持續保留不成功,則忽略該路 徑;當持續保留成功時,用進行了保留的路徑索引來標記 保留欄位並打開帶有設置為非SCSI_2保留的命令參數的 所有登記的路徑。 本發明的另一特徵是··該命令參數是一個單選項,該單 選項使得該裝置檢查所有路徑,決定是否有路徑未登記、 登記所有未登記的路徑、忽略任何未成功登記的路徑、返 回並讀取保留鍵、當該返回的保留鍵與該裝置的保留鍵不 -11 . 525056 A7
匹配時,發佈錯誤代碼 記路徑。 並打開設置的非保留的所有已登 •該單選項使得當不返回一個键 你:农且避释一個登記的路徑為所選擇的登記的路徑發 貝保田,忽略持續保留不成功的該路徑;當持續保留 ^ ^用進仃了保留的路徑索引來標記保留攔位並打開 ^ "又置為非保留的命令參數的所有登記的路徑。 發:的另一特徵是釋放服務動作包括:關閉所有未保 切、汉置為保持保留選項的路徑,打開帶有設置的保持 ^留旗詰的-個路徑,並發佈帶有設置_放服務動作的 持績保留輸A命令,以釋放—個純的持續保留。 、發月的另個貫施例中,提供一種用於由共用儲存 系統支援SCSI持續保留命令的方法。該方法包括:處理 保田鍵以辨識登?己的主機並且處理持續保留命令以控制通 過一個主機的存取。 發月的另特徵是:持續保留命令的處理包括允許所 有的多路徑用共用儲存系統的邏輯單元號碼登記。 本發月的另4争徵是:該方法還包括用使用一個單保留 鍵的共用儲存系統的邏輯單元號碼登記來自第_主機的: 有路徑。 本發月的另特徵是:處理保留鍵包括獲得關於持續保 留和保留鍵的資訊。 本發明的另一特徵是:獲得關於持續保留和保留鍵的資 訊還包括使用保留輸入命令。 本發明的另一特徵是
525056 、發明説明( 1U / 作月的另一特徵是··保留輸入命令包括讀取鍵服務動 作和碩取保留服務動作。 於用I 的另特徵S ··持續㈣命令的處理包括發佈用 留輸出、命,存系統的邏輯單元號碼開始一個動作的持續保 =發明的另一特徵是··用於用共用儲存系統的邏輯單元 碼開始一個動作的持續保留輸出命令還包括從包括登 =留、釋放、清除、預占和異常停止 的服務動作。 疋谭 發月的另一個貫施例中,提供一種用於將作業手统 =開選项映射到SCSI持續保留命令的驅動器。該= 為處理保留鍵以標識登記的主機,並且處理持續 保田op令以控制通過一個主機的存取。 ^ 么月的另一特徵是:菘驅動器通過允許所有的多路徑 人-用錯存系統的邏輯單元號碼登記來處理持續保留命 令 ° 本發明的另一特徵[•該驅動器用使用一個單一保留鍵 =用儲存系統的邏輯單元號碼登記來自第-主機的所有 路徑0 本發月的另一特徵是:孩驅動器藉由獲得關於持續保留 和保留鍵的資訊來處理保留鍵。 〜本發明的另—特徵是:該驅動器藉由使隸留命令來料 知關於持續保留和保留鍵的資訊。 又 本發明的另-特徵是:彳呆留命令包括讀取鍵服務動作和 本紙張尺度剌見格(210 x挪π 裝 訂 線 -13 五、發明説明( 項取保留服務動作。 本發明的另一特徵是··讀 存系統的邏輯單元號碼開二 =二用於以共用-處理持續保留命令。 、持1保留輸出命令 本發月的另一特徵是··用於以共用儲一 r:r:r作:r保留輸出命 的服務動田作月除、預占和異常停止預占的組中選擇 的==r的這些和其他優點和特點可由後附 广專利把圍中的細節所指出並形成其中的一部分。可 疋’為了更好地理解本發明,將參照構成 的附圖和說日^ «料藉其之❹所獲得的目的= 减明中描述了根據本發明的裝置的特^實例。 遷式簡要説明 請參照圖式’在所有的圖式中,相同的標號表示相應的 部分。 圖1描述了說明本發明的環境的方塊圖; 圖2描述了在作業賴巾將打開㈣映射到用於控制對 共用儲存裝置的存取的適當SCSI_3持續保留命 置驅動器; 灰 圖3描述了表示共用LUN問題的方框圖; 圖4描述了本發明的流程圖; 圖5描述了用於以LUN登記的增加選項的流程圖; 圖6描述了用於以LUN解除登記一條路徑的移除選項的 14- 本紙張尺度適用中國國家標準(CNS) A*規格(21〇 χ 297公釐) 525056 A7 B7 五 發明説明( 12 流程圖; 圖7描述了用於以LUN保留的流程圖; 圖8描述了用於強制打開選項的流程圖; 圖9描述了用於保持保留打開選項的流程圖; 圖10描述了用於非保留選項的流程圖; 圖11描述了用於預設保留打開選項的流程圖;和 圖12描述了用於以LUN釋放的流程圖1 2〇〇。 本發明之詳細說明 在下列具體實施例的描述中,·將參照構成本發明的一部 分的圖式,並且其中藉由圖解來顯示實施本發明的特定實 施例。可以理解,在不脫離本發明的範圍的情況下可以利 用其他的實施例作為結構上的改變。 本發明提供了 一種用於在非並行聚類環境中提供多路徑 I/O的方法和裝置。藉使用SCSI_3持續保留命令提供經由 多路徑對邏輯卷的共用非並行存取。 圖1描述了表示本發明的環境的方塊圖1〇〇。在圖1 中,由LUN (邏輯單元號碼)示例的儲存系統可以通過多 個主機存取。在圖1中顯示了兩個主機11〇和112。然 而,熟習本領域的技術人員會知道本發明不意味著限制於 僅僅兩個主機存取該儲存系統的環境。 所有者主機110和故障恢復(fail〇ver)主機112均包 括用於存取LUN0 1 3 0的至少兩條路徑。所有者主機i j 〇 和故障恢復主機112均用LUN0 13〇登記。可是,所有者 主機110如由具有用於所有者主機H0的KEY A的 ____ -15- 本紙張尺度適用中國國家標準(CNS) A4規格(210 x 297公釐) 525056 A7
LUN0所指示的具有對LUN0的專用存取。 當操作在非並行模式時,SCSI保留/釋放控制對磁碟儲 存裝置的存取。在非並行模式中,僅有所有者主機110具 有對LUN0 130中的資料的存取權。如果發生硬體或軟體 故障,可能發生故障恢復存取,使得故障恢復主機112可 以存取LUN0 130上的資料 '然而,如果可能的話,希望 防止節點故障恢復。因為每個節點11〇、ιΐ2 用儲存裝置的多I/O路徑,如果一個單獨1/〇路徑中的硬 把發生故障,I/O的業務量可以被切換到替換路徑。這避 免了執行更具破壞性的節點故障恢復的需要。 圖2描述了在作業系統中將打開選項映射到用於控制對 共用儲存裝置的存取的適當SCSI-3持續保留命令的假置 ^動器。根據本發明,向作業系統引入一個新的裝置驅動 态,它提供了一個用於對單個共用裝置24〇的所有多路徑 的=個假裝置2 10。在圖2中,提供假裝置驅動器21〇用 於藉由將打開選項映射到適當的SCSI_3持續保留命令, 提供路徑選擇和路徑重試。假裝置驅動器21〇提供到邏輯 卷的共用非並行存取並提供對該裝置的多路徑存取。這給 I裝置的各路徑提供了 I/O負載平衡的附加的妤處,並且 田在一個單一裝置路徑上發生錯誤時,使路徑故障恢復以 防止對一個節點執行節點故障恢復。該假裝置驅動器2 1 0 將作業系統請求2 1 2轉換為s C SI磁碟機2 1 4可以處理的 #求SCSI磁碟機2 14將輸入/輸出(I/O )請求轉換為 多個命令描述符塊(CDB)。SCSI磁碟機2 14調用配接
五、發明説明( V 14 态驅動器22 0並將多個CDB提供給配接器驅動器22〇以 發出到LUN 240白勺請求。主機可以通過作業系統配置繞 過假磁碟機210。在這種方式中,當到LUN 240的多路 徑又一發生故障時,在不提供SCSI保留/釋放的情況下, 處理磁碟I/O請求25〇,以便無故障恢復地提供對磁碟儲 存裝置的存取。 夕圖3圖解了顯示共用LUN問題的方塊圖。主機看見存取 ’'LUN 32“勺多個配接器31〇。可是,多個配接器 33〇實際上被映射到單一的LUN.340。 因此,根據本發明,在假裝置驅動器中的SCSI_3持嘖 :留命令的實現允許對LUN的單一路徑和對lun配置的 二個2徑的兩者的支援。用單一路徑配置,由scsi_2正 釋放命令在系統磁碟機級上實現對lun的保留/釋 為了在多路徑配置環境實現這個命令,到_個 LUN的所有路徑必須在相 留類型進行對該刚的持續保留,
LUN的所有路徑可以在所有時間向該W 它之前’必須要求得到對這個議的持 類型,登記到那個LUN上的—個主機 的所有路徑可以共用和存取這個LU ^ 機 動器被應用於不錢SCSI-3持續保。/人果人這個假裝置驅 統,該假裝置驅動器將用儲存手 yp令的儲存子系 亍丁矛、統的多路徑配置自動切 本紙張尺歧财關家標 -17- 525056 A7
個增加和一個刪除選項。 a圖5描述了用於用LUN登記的添加選項的流程圖5〇〇。 两配置時,母一個未用路徑(underpath)將用LUN 510 登記。決定該登記是否成功(步騾512)。如果路徑登記 成功(步驟540 ),它的“已登記攔位,,被設置為真(步 騾5 5 〇 )。如果在此時失敗(步驟5丨4 ),它的“已登記 ,位被设置為假(步驟5 1 6 )。在打開時,所有路徑用 且记和忽略現存鍵”重新登記(步驟5 2 〇 )。在故障發 生後,接管主機發佈“強制打開”,使得SDD用“異常^ 止預占,服務選項命令發佈持續保留輸出(步驟522 )。 然後這個命令清除所有與預占的保留鍵相匹配的登記鍵。 圖6描述了用於用LUN解除登記(unregister) 一條路 &的冊㈣選項的流程圖600。當一個路徑將被刪除時,該 路徑的所有登記的未用路徑都需要從LUN解除登記的動 作。在刪除路徑前,持續保留被要求用該lun釋放(步驟 61〇)。檢查路徑保留旗語(步驟62q)。如果該旗倾設 置為未用路徑索引(步驟622 ),而不是·i,㈣該lun 的保留在裝置關閉調用時,尚未被釋放(步驟624 )。只 有當該路徑用被設置的RETAIN reservati〇n (保持 保留)旗諸打開時,這種愔 、種滑况才發生,並且它在裝置關閉 調用時不釋放該保留(步驟626 )。如果是這種情況,以 前預定的未用路徑將用釋放服務動作發佈持續保留輸出, 以便從L UN釋放該保留(步驟6 2 8 )。 圖7描述了用於用LUN保留的流程圖700。由諸如作業 525056 A7 B7 五、發明説明 系統邏輯卷管理器驅動器的上級調用器判定一個路徑是否 需要向它連接的LUN進行保留(步驟71〇)。檢查裝置打 開選項的“ext”參數(步驟720)。如果設置“ ext,,參數 (步騾740 ),它們將指示請求保留(步驟75〇)。這個 “ e X t ”參數的有效選擇值是: SC-FORCED-OPEN :不承諾裝置保留衝突狀態 SC-HETAmRESERVATI0N :不在關閉時釋^裝置 SC-no-rESERVE :在打開子常式以便調用那個裝置期 間,防止該裝置的保留,允許多主機共用一個裝置。 SC-SINGLE :將所.選擇的裝置置於專用存取模式 如果不設置任何上述的選項(步驟722 ),該裝置打開 子常式預設為所請求的保留(步冑724 )。如果還沒有啟 動程式已經保留了這個LUN ’該裝置實現到肖LUN的持 續保留(步726)。下面的流程圖說明了這些選項是如 何用S C SI -3持續保留命令實現的。 圖8描逑了用於強制打開選項的流程圖8 〇 〇。當用設 的強制打開選項調用裝置打開子常式時(步驟Η:): 裝置試圖讀取現有持續保留鍵(步驟82〇)。如果返回 個鍵,該裝置首先檢查保留鍵是否與它的鍵匹配(步 830)。如果它與它的鍵匹配(步驟83〇) 留了該LUN,所以該裝置不做任何事。如果返回:個鍵 並且它與這個裝置的保留鍵不匹配(步驟832),這個 留鍵被預占並且它的排隊任務異常停止(步驟84〇)。 個LUN的保留被這個裝置偷取並藉由設置非保留參數來 本纸張尺度適用中國國家標準(CNS) Α4規格(21〇χ297公釐)
裝 訂
線 -20- 525056 五、發明説明(18 A7 B7
^留(步驟85G)。決^這個命令是否成功完成(步驟 m)。如果這個命令未成功完成(步驟854 ),則發佈錯 戌代碼(、步驟85 6 )。如果這個命令成功完成(步驟 8 5 8 ),Θ裝置的保留旗lit、被設置為進行了這個保留的未用 路徑索引(步驟860 )。用設置為“ext”參數的SCN0_ RESERVE選項㈣所有登記的未料㈣作業系統磁療 機打開常式(步驟870 )。可以藉由登記到LUN的裝置的 所有未用路徑來存取和共用該LUN。 圖9描述了用於保持保留打開選項的流程圖& 〇 〇。當用 設置的^個選項調用裝置打開子常式時(步驟91〇),該 裝置將讀取現有持續保留鍵(步㉟920 )。決定是否返回 -個鍵(步驟叫。如果沒有返回保留键疋= 98〇),那意味著該LUN沒有被任何啟動程式保留(步驟 9 82 ),並且茲裝置將對該LUN進行持續保留(步驟 984 ) ’決疋該保留是否成功(步驟986 )。如果這個保留 p v失敗(步冑9 9 0 ),該系統驅動器到調用器的打開調 用失敗,錯誤代碼為χχχ (步驟992 )。如果這個保留命 令成功完成(步驟988 ),用SC-N0-RESERVE選項打 開所有登記的未用路徑(步驟942 )。 如果返回一個保留鍵(步驟9 3 2 ),決定該鍵是否與該 裝置的保留鍵匹配(步驟934 )。如《它與這個裝置的保 留鍵不E g& (步驟93 6 ) ’該裝置指示到該調用器打開調 用失敗,錯誤代碼為ΧΧΧ (步驟93 8 )。如果返回鍵與這 個裝置的保留鍵匹配(步驟94〇),則用設置的sc-N〇_
線 19525056 五 、發明説明( SERVE選項打開所有的未用路徑(步驟μ〗)。 如果用叹置的非SCSI_2 <呆留選項打開所有的未用路徑 (步驟9 4 2 ) ’則可以藉由登記於L UN的這個裝置的所有 未用路=存取和共用該LUN。該裝置的保留旗諸被設置為 進行了這個保留的未用路徑索引(步帮95〇)。保持保留 欄位被又置為真(步驟96〇 )。在裝置關閉調用時檢查這 個欄位以決定持續保留是否應該被釋放(步驟970 )。 圖10描述了用於非保留選項的流程目1GGG。當用設置 的這個選項調用裝置打開子常式時(步驟1G1G),該裝置 將讀取現有持續保留鍵(步㉟i㈣)。為了實現這個過 程’所有未用路徑$ ‘‘登記和忽略現存鍵”登記以確保所 有未用路徑用該LUN登記。如果有還沒有用該LUN登吃 的未用路徑,那個未用路徑將用登記服務動作發佈持續保 =輸出命令。如果這個重試再次失敗,這個未用路徑將被 心略並跳到其他操作’然後選擇登記的未用路徑以用 保留服務動作發㈣輕留輸人命令,以便得到現有持續 保留鍵。 決定是否返回-個键(步驟1〇3〇)。如果沒有 如 鍵(步驟1G8G) ’該LUN不被任何啟動程式保留(步; 1082)。該裝置用來自調用器的原始的“⑻,,參數二 所有的未用路徑到作業^ Μ機打開 = 1084)。 、少蛛 如果返回-個現有持續保留鍵(步驟1Q32),決定^ 否與這個裝置的保留鍵匹配(步驟1 034 )。如果它與:: 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐) 裝 訂 線 '22 20525056 五 發明説明( 裝置的保留鍵匹配(步驟1 040 ),則用釋放服務動作發佈 持、%保留命令,以便用該LUN釋放持續保留(步騾 1 042 );否則(步驟1〇36 ),該系統驅動器對該調用器 的打開調用失敗,錯誤代碼χχχ(步驟1〇38)。 圖11描述了用於預設保留打開選項的流程圖11〇〇。當 不用上面所列設置的任何一個選項調用裝置打開子常式 時,孩打開預設為所要求的RESERVE。不管它們是否已 、、工在配置階段登€,所有的未用路徑用該l 登記(步驟 。未用路徑將用“登記和忽略現存鍵,,服務動作發 佈持續保留輸出命令。該裝置用讀取保留發佈持續保留輸 入叩令,以便得到現有持續保留鍵(步驟^ 1 3 〇 )。決定是 返回個鍵(步驟1〗3 2 )。如果返回一個键(步驟 1 1 33 ),決足該鍵是否與該裝置的保留鍵匹配(步驟 U34)。、如果它不匹配於它自己的保留鍵(步驟 1 1 3 6 ),孩驅動器到該調用器的打開調用失敗,錯誤代碼 £1〇(步|1138)。如果返回的持續保留鍵與該裝置的 保留鍵匹配(步驟114G),用設置為“⑻,,參數的%· n〜rESERVE打開所有登記的未用路徑(步驟ιΐ42)。 如果沒有返回持續保留鍵(步驟1144),選擇登記的未用 路k (步驟115G)。用保留服務動作打開持續保留輸出命 令,以便與該LUN進行持續保留。決定該命令是否成功完 成(步* 1154)。如果成功完成(步驟ιΐ6〇),該裝置 用未用路徑索引來標記保留的欄位,該未用路徑索引與該 LUN進行了保留(步驟"7〇)。用設置為SC-NO- 525056 發明説明( RESERVE的‘EXT,,參數打開所有登記的未用路徑(步驴 1180)。如果保留命令失敗(步驟1156),該驅動哭: 該調用器的打開調用失敗,錯誤代碼為m〇 1158)。 ,騾 圖1 2描述了用於用LUN釋放的流程圖1 2⑼。當調用 裝置關閉常式時,除了它的retain —⑴咖(保持保留) 旗誠被設置4 TRUE (真)外,它應該總是釋放它的持續 保留給它所連接的LUN ’其中帶有釋放服務動作的持續保 留輸出命令必須藉由未用路徑發佈,該未用路徑在之前已 經進行了保留並仍然持有該保留。如果這個條件不能滿 足,該請求被忽略並返回正常狀態(GoodStatus)。 為了實現這個過程,首先驅動器關閉該裝置的所有未用 路徑(步驟1210),然後打開保持該保留的未用路徑(步 驟1 2 2 0 )。用釋放服務動作發佈持續保留輸出命令以釋放 該持續保留到該LUN (步驟1 230 )。 已經為說明和例示的目的提出了本發明具體實施例的前 面的描述。它不是窮舉的或將本發明限制為所公佈的精確 的开> 式。按照上面的宗旨’許多修改和變化是可能的。這 意味著本發明的範圍不侷限於其詳細的說明,而由後附的 申請專利範圍來限定。 L —____-24- 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 裝 訂 線

Claims (1)

  1. 525056 六、申請專利範圍 1· 一種用於當在多個輸入/輸出路徑的第一個中發生硬體故 障時使用多個輸入/輸出路徑中的第二個提供^共用^存 系統的邏輯單元號碼的存取的方法,該方法包括:將作 業系統的打開選項映射到小型電腦系統介面_3 (scsi) 持續保留命令,以允許所有的多路徑用共用儲存系統的 邏輯單元號碼登記,並允許該多路徑中的第二個在用共 用儲存系統獲得持續保留後存取共用儲存系統的邏輯單 元號碼。 2,如申請專利範圍第丨項的方法,其中將作業系統的打開 選項映射到SCSI持續保留命令,以允許所有的多路徑 用共用儲存系統的邏輯單元號碼登記進一步包括··使用 單一保留鍵用共用儲存系統的邏輯單元號碼登記來自第 一主機的所有路徑。 3·如申請專利範圍第1項的方法,其中將作業系統的打開 選項映射到SCSI持續保留命令進一步包括:獲得關於 持續保留和保留鍵的資訊。 4·如申请專利範圍第3項的方法,其中獲得關於持續保留 和保留鍵的資訊進一步包括:使用保留輸入命令。 5·如申請專利範圍第4項的方法,其中保留輸入命令進一 步包括:讀鍵服務動作和讀保留服務動作。 •如申凊專利範圍第1項的方法’其中將作業系統的打開 選項映射到SCSI持續保留命令進一步包括:發佈一用 於用共用儲存系統的邏輯單元號碼啟始一個動作的持續 保留輸出命令。 -25- 度適用中國國家標準(CNS)人4規格(21〇χ297公釐)
    申請專利範圍 7·,申請相第6項的方法,其中用於用共用储存系 :的邏輯單元號碼啟始—個動作的持續保留輸出命令進 —步包括:從包括登記、保留、釋放、清除、預占、登 =和忽錢存鍵、和異常停止預占的组中選擇的服務動 作。 8·如申請專利範圍第7瑁 , 、, 〃、自0万法,其中登記服務動作包 括· 一個增加和一個移除選項。 9·如申請專利帛7項的方法,其中增加選項進一步包 括· 當在配置時暫存每條路徑; 決足第一次登記嘗試是否成功; 在打開時,用登兄和忽田各現存鍵再次登記所有路徑登 記; 文p章發生後,由接管主機發佈一個強迫打開,以便用 ,占和異常停止服務選項命令使持續保留輸出清除與預 占的保留鍵匹配的保留鍵;和 田第或第一 /人登圮》試成功時,將該路徑的狀態設 置為真。 10·如申請專利範㈣7項的方法,其中删除選項進一步包 括: 決定一條路徑是否具有持續保留; S忒路徑被決疋具有持續保留時,用設置的服務選項 釋放來發佈持續保留輸出;和 路徑被決足為不具有持續保留時,釋放該保留。 本紙張尺度適用中國國家標準(CNS) A4規格(21〇 X297公釐) -26- 525056 A8 B8 C8 D8
    申請專利範圍
    11·如申請專利範圍第.7項的方法,其中保留服務動作還包 括: 藉由檢查是否設置命令參數來判定一個裝置是否需要 向共用儲存系統的邏輯單元號碼進行保留; 當未設置命令參數時,預設為所要求的保留,並且當 沒有啟動程式已經保留共用儲存系統的邏輯單元號石馬 時’實現對共用儲存裝置的邏輯單元號碼的持續保留; 和 當設置了命令參數時,執行該命令參數。 12·如申請專利範圍第u項的方法,其中命令參數是強制 打開選項’當現有保留鍵與該裝置的保留鍵不匹配時, 该強制打開選項使得該裝置讀取現有保留鍵、預占和異 常停止排隊任務。 13.如申請專利範圍第1 2項的方法,還包括: 藉由$又置命令參數為非保留以防止SCSI-2保留; 決定強制打開是否成功完成; 、田強制打開命令成功完成時,設置該裝置的保留旗誌 為進行了持續保留的路徑索引並打開帶有設置的非 s C SI - 2保留選項的所有路徑;和 當強制打開命令沒有成功完成時發佈錯誤代碼。 14·如申料利範㈣u項的方法,其中該命令參數是一 個保持^選項,該保持保留使得該裝置讀取現有保留 鍵決疋疋否返回一個鍵,當不返回一個鍵時,建立不 由啟動程式保留邏輯單元號碼,並進行持續保留。 -27-
    •如申請專利範圍第· 14項的方法,其中保持保留選項使 仔琢裝置決定返回的鍵是否與該裝置的保留鍵匹配;當 孩返回的鍵與該裝置的保留鍵不匹配時,發佈錯誤= 2,當該返回的鍵與該裝置的保留鍵匹配時,打開帶有 β又置的非s C SI - 2保留選項的所有路徑,設置保切士 為進行了持續保留的路徑索引,設置保持保留為I /I =關閉時檢查保持保留齡以決定是否應該釋放持續保 留。 =申請專利範圍帛η項的方.法,其中命令參數是非保 項,孩非保留選項使得該裝置讀取現有保留鍵,建 儿疋否返回一個鍵,建立不由啟動程式保留邏輯單元號 碼並用來自主機的原始命令參數打開所有路徑。 儿 =申請專利範圍帛16項的方法,其中該非保留選項使 得孩裝置決定是否返回鍵與該裝置的保留鍵匹配;當該 返回鍵與邊裝置的保留鍵不匹配時發佈錯誤代碼;當該 返回鍵與該裝置的保留鍵匹配時,用釋放來發佈持^保 留輸出。 18·如申請專利範圍第n項的方法,其中該命令參數是一 個預。又保田選項,該預設保留選項使得該裝置檢查所有 路徑,決疋是否有路徑未登記,登記所有未登記的路 ,、忽略任何未成功登記的路徑、返回和讀取保留鍵、 田省返回的保留鍵與該裝置的保留鍵不匹配時,發你錯 ,吳代碼並打開所有帶有設置的非scs2保留的已登記 路徑。 π ^5056 A8 B8
    525056 ABCD 六、申請專利範圍 釋放一個路徑的持續保留。 23· 一種用於由共用儲存系統支援s C SI持續保留命令的方 法,包括: 處理保留鍵以辨識登記的主機;和 處理持續保留命令以控制藉由一個主機的存取。 24. 如申請專利範圍第23項的方法,其中持續保留命令的 處理包括:允許所有的多路徑用共用儲存系統的邏輯單 元號碼登記。 25. 如申請專利範圍第24項的方法,還包括:使用一個單 一保留鍵以共用儲存系統的邏輯單元號碼來暫存來自第 一主機的所有路徑。 26. 如申請專利範圍第23項的方法,其中處理保留鍵包 括:獲得關於持續保留和保留鍵的資訊。 27·如申請專利範圍第26項的方法,其中獲得關於持續保 留和保留鍵的資訊還包括··使用保留輸入命令。 28·如申請專利範圍第27項的方法,其中保留輸入命令包 括··讀取鍵服務動作和讀取保留服務動作。 29.如申請專㈣圍第23項的方法,其中持續保留命令的 處理包括:發佈用於以共用儲存系統的邏輯單元號碼開 始一個動作的持續保留輸出命令。 3〇·如申請專利範圍帛29項的方法,其中用於用共用儲存 系統的邏輯單元號碼開始一個動作的持續保留輸出命令 還包括:從包括登記、保冑、釋放、清除、預占、登吃 和忽略現存鍵、和異常停止預占的組中選擇的服務動 -30 - 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公爱) ---------------- 申請專利範圍 作。 L種用於將作業系統的打開選項映射到S C SI持續保留 命令的驅動器,該驅動器被配置為處理保留鍵以辨識登 "己的主機’並且處理持續保留命令以控制通過一個主機 的存取。 士申叫專利範圍弟3 1項的驅動器,其中該驅動器藉由 允許所有的多路徑用共用儲存系統的邏輯單元號碼登記 來處理持續保留命令。 33.如申請專利範圍第32項的驅動器,其中該驅動器以使 用一個單一保留鍵的共用儲存系統的邏輯單元號碼登記 來自第一主機的所有路徑。 34·如申請專利範圍第3 1項的驅動器,其中該驅動器藉由 獲得關於持續保留和保留键的資訊來處理保留鍵。 35.如申請專利範圍第34項的驅動器,其中該驅動器藉由 使用保留命令來獲得關於持續保留和保留鍵的資訊。 36·如申请專利範圍第3 5項的驅動器,其中保留命令包 括:讀取鍵服務動作和讀取保留服務動作。 37·如申請專利範圍第3 1項的驅動器,其中該驅動器藉由 發佈用於以共用儲存系統的邏輯單元號碼開始一個動作 的持續保留輸出命令來處理持續保留命令。 38·如申請專利範圍第37項的驅動器,其中用於以共用儲存 系統的邏輯單元號碼開始一個動作的持續保留輸出命令還 包括:從包括登記、保留、釋放、清除、預占、登記和忽 略現存鍵、和異常停止預占的組中選擇的服務動作。 -31 - 本纸張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
TW090124995A 2000-10-13 2001-10-09 Method and apparatus for providing multi-path I/O in non-concurrent clustering environment using SCSI-3 persistent reserve TW525056B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/687,335 US6954881B1 (en) 2000-10-13 2000-10-13 Method and apparatus for providing multi-path I/O in non-concurrent clustering environment using SCSI-3 persistent reserve

Publications (1)

Publication Number Publication Date
TW525056B true TW525056B (en) 2003-03-21

Family

ID=24760045

Family Applications (1)

Application Number Title Priority Date Filing Date
TW090124995A TW525056B (en) 2000-10-13 2001-10-09 Method and apparatus for providing multi-path I/O in non-concurrent clustering environment using SCSI-3 persistent reserve

Country Status (9)

Country Link
US (1) US6954881B1 (zh)
EP (1) EP1246060B1 (zh)
JP (1) JP3659342B2 (zh)
KR (1) KR100424242B1 (zh)
CN (1) CN1186726C (zh)
AT (1) ATE313114T1 (zh)
DE (1) DE60115839T2 (zh)
SG (1) SG100764A1 (zh)
TW (1) TW525056B (zh)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7277952B2 (en) * 2001-09-28 2007-10-02 Microsoft Corporation Distributed system resource protection via arbitration and ownership
US7406039B2 (en) * 2002-02-26 2008-07-29 Dell Products L.P. System and method for a failover protocol in storage area network controllers
JP3882783B2 (ja) * 2002-05-31 2007-02-21 オムロン株式会社 プログラマブルコントローラ及びcpuユニット並びに通信ユニット及び通信ユニットの制御方法
US7711539B1 (en) * 2002-08-12 2010-05-04 Netapp, Inc. System and method for emulating SCSI reservations using network file access protocols
US7307948B2 (en) * 2002-10-21 2007-12-11 Emulex Design & Manufacturing Corporation System with multiple path fail over, fail back and load balancing
US20040139196A1 (en) * 2003-01-09 2004-07-15 Dell Products L.P. System and method for releasing device reservations
US7272674B1 (en) * 2003-06-30 2007-09-18 Veritas Operating Corporation System and method for storage device active path coordination among hosts
US7085867B2 (en) * 2003-08-06 2006-08-01 Lsi Logic Corporation Methods and structure for SCSI2 to SCSI3 reservation protocol mapping
US8239552B2 (en) * 2003-08-21 2012-08-07 Microsoft Corporation Providing client access to devices over a network
US7127545B1 (en) 2003-11-19 2006-10-24 Veritas Operating Corporation System and method for dynamically loadable storage device I/O policy modules
US7418545B2 (en) 2004-10-28 2008-08-26 Intel Corporation Integrated circuit capable of persistent reservations
US7370128B2 (en) 2004-10-29 2008-05-06 Intel Corporation Expander device capable of communication protocol translation
US7487403B2 (en) * 2004-11-12 2009-02-03 International Business Machines Corporation Method for handling a device failure
US7496745B1 (en) * 2005-02-04 2009-02-24 Qlogic, Corporation Method and system for managing storage area networks
US7577802B1 (en) * 2005-04-18 2009-08-18 Netapp, Inc. Accessing a reservable device by transiently clearing a persistent reservation on the device in multi-host system
JP4506594B2 (ja) * 2005-07-22 2010-07-21 日本電気株式会社 冗長パス制御方法
US7937617B1 (en) 2005-10-28 2011-05-03 Symantec Operating Corporation Automatic clusterwide fail-back
US20070168507A1 (en) * 2005-11-15 2007-07-19 Microsoft Corporation Resource arbitration via persistent reservation
US8972613B2 (en) 2006-10-31 2015-03-03 Hewlett-Packard Development Company, L.P. System and method for increasing input/output throughput in a data storage system
US8060775B1 (en) 2007-06-14 2011-11-15 Symantec Corporation Method and apparatus for providing dynamic multi-pathing (DMP) for an asymmetric logical unit access (ALUA) based storage system
US7890555B2 (en) * 2007-07-10 2011-02-15 International Business Machines Corporation File system mounting in a clustered file system
US8156164B2 (en) 2007-07-11 2012-04-10 International Business Machines Corporation Concurrent directory update in a cluster file system
CN101471830B (zh) * 2007-12-25 2011-02-02 英业达股份有限公司 Linux***下的多路径访问远程逻辑设备的方法
US7844757B2 (en) 2008-06-12 2010-11-30 International Machines Business Corporation Method and system for providing multiple paths to user data stored on a SCSI disk
US7840730B2 (en) 2008-06-27 2010-11-23 Microsoft Corporation Cluster shared volumes
US8719473B2 (en) * 2008-09-19 2014-05-06 Microsoft Corporation Resource arbitration for shared-write access via persistent reservation
US8380938B2 (en) 2010-02-24 2013-02-19 International Business Machines Corporation Providing shared access to data storage resources across cluster computing environment boundaries
US20120102561A1 (en) * 2010-10-26 2012-04-26 International Business Machines Corporation Token-based reservations for scsi architectures
US8463762B2 (en) 2010-12-17 2013-06-11 Microsoft Corporation Volumes and file system in cluster shared volumes
US9652469B2 (en) 2011-06-04 2017-05-16 Microsoft Technology Licensing, Llc Clustered file service
US8627431B2 (en) 2011-06-04 2014-01-07 Microsoft Corporation Distributed network name
US8639856B2 (en) * 2011-08-04 2014-01-28 International Business Machines Corporation SCSI reservation status information on a SAN disk
US8984220B1 (en) * 2011-09-30 2015-03-17 Emc Corporation Storage path management host view
EP2735973A4 (en) * 2012-02-06 2015-03-11 Hitachi Ltd COMPUTER SYSTEM AND DATA INPUT / OUTPUT METHOD
US8738701B2 (en) 2012-02-28 2014-05-27 Microsoft Corporation Arbitration of disk ownership in a storage pool
US10404520B2 (en) 2013-05-29 2019-09-03 Microsoft Technology Licensing, Llc Efficient programmatic memory access over network file access protocols
US9641614B2 (en) 2013-05-29 2017-05-02 Microsoft Technology Licensing, Llc Distributed storage defense in a cluster
CN104423889B (zh) * 2013-08-26 2017-06-16 国际商业机器公司 一种多路径管理方法和***
US9378154B2 (en) 2014-05-02 2016-06-28 International Business Machines Corporation Secure reservation mode for logical unit numbers and persistent reservations
TWI511037B (zh) * 2014-05-09 2015-12-01 Wistron Corp 儲存叢集化系統與提供對叢集式儲存的存取的方法
US9645872B1 (en) * 2015-03-27 2017-05-09 EMC IP Holding Company LLC Method to use multipath to reduce IO error handle duration
US9547441B1 (en) 2015-06-23 2017-01-17 Pure Storage, Inc. Exposing a geometry of a storage device
US10310740B2 (en) 2015-06-23 2019-06-04 Pure Storage, Inc. Aligning memory access operations to a geometry of a storage device
US11269884B2 (en) 2015-09-04 2022-03-08 Pure Storage, Inc. Dynamically resizable structures for approximate membership queries
KR20170028825A (ko) 2015-09-04 2017-03-14 퓨어 스토리지, 아이앤씨. 압축된 인덱스들을 사용한 해시 테이블들에서의 메모리 효율적인 스토리지 및 탐색
US11341136B2 (en) 2015-09-04 2022-05-24 Pure Storage, Inc. Dynamically resizable structures for approximate membership queries
CN106557276B (zh) * 2015-09-30 2021-02-23 中兴通讯股份有限公司 存储接管、切换处理方法及装置
US10133503B1 (en) 2016-05-02 2018-11-20 Pure Storage, Inc. Selecting a deduplication process based on a difference between performance metrics
US10452297B1 (en) 2016-05-02 2019-10-22 Pure Storage, Inc. Generating and optimizing summary index levels in a deduplication storage system
US9940060B1 (en) 2016-05-02 2018-04-10 Pure Storage, Inc. Memory use and eviction in a deduplication storage system
US10628182B2 (en) 2016-07-11 2020-04-21 Pure Storage, Inc. Generation of an instruction guide based on a current hardware configuration of a system
US10540095B1 (en) 2016-08-12 2020-01-21 Pure Storage, Inc. Efficient garbage collection for stable data
CN106484327B (zh) * 2016-09-20 2019-07-23 华为技术有限公司 一种数据处理方法及相关存储设备
US9747039B1 (en) 2016-10-04 2017-08-29 Pure Storage, Inc. Reservations over multiple paths on NVMe over fabrics
US10162523B2 (en) 2016-10-04 2018-12-25 Pure Storage, Inc. Migrating data between volumes using virtual copy operation
US10191662B2 (en) 2016-10-04 2019-01-29 Pure Storage, Inc. Dynamic allocation of segments in a flash storage system
US20180095788A1 (en) 2016-10-04 2018-04-05 Pure Storage, Inc. Scheduling operations for a storage device
US10678432B1 (en) 2016-10-04 2020-06-09 Pure Storage, Inc. User space and kernel space access to memory devices through private queues
US10481798B2 (en) 2016-10-28 2019-11-19 Pure Storage, Inc. Efficient flash management for multiple controllers
US10185505B1 (en) 2016-10-28 2019-01-22 Pure Storage, Inc. Reading a portion of data to replicate a volume based on sequence numbers
US10359942B2 (en) 2016-10-31 2019-07-23 Pure Storage, Inc. Deduplication aware scalable content placement
US11307998B2 (en) 2017-01-09 2022-04-19 Pure Storage, Inc. Storage efficiency of encrypted host system data
US10387661B2 (en) 2017-01-09 2019-08-20 Pure Storage, Inc. Data reduction with end-to-end security
US10719273B2 (en) * 2017-01-24 2020-07-21 Wyse Technology L.L.C. Enabling SCSI commands that are not supported by a client terminal
US10528280B1 (en) 2017-01-31 2020-01-07 Pure Storage, Inc. Tombstones for no longer relevant deduplication entries
JP6933107B2 (ja) * 2017-11-22 2021-09-08 富士通株式会社 ストレージシステム,ストレージ制御装置およびストレージ制御プログラム
US11397545B1 (en) 2021-01-20 2022-07-26 Pure Storage, Inc. Emulating persistent reservations in a cloud-based storage system

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4207609A (en) 1978-05-08 1980-06-10 International Business Machines Corporation Method and means for path independent device reservation and reconnection in a multi-CPU and shared device access system
US4445605A (en) 1980-08-25 1984-05-01 Horton Industries, Inc. Spring engaged fluid released fan clutch for a live shaft
US5239632A (en) 1992-04-16 1993-08-24 Hewlett-Packard Company Device to translate logical unit number communications on one SCSI bus to ID communications on a subordinate SCSI bus
JPH08328991A (ja) 1995-03-30 1996-12-13 Canon Inc インタフェース装置
US5909595A (en) 1995-05-15 1999-06-01 Nvidia Corporation Method of controlling I/O routing by setting connecting context for utilizing I/O processing elements within a computer system to produce multimedia effects
JPH08314843A (ja) 1995-05-22 1996-11-29 Hitachi Ltd 計算機システム
US6532547B1 (en) * 1995-06-16 2003-03-11 Emc Corporation Redundant peripheral device subsystem
JP3190546B2 (ja) 1995-08-29 2001-07-23 株式会社日立製作所 ブロックアドレスの変換方法および回転型記憶サブシステムの制御方法ならびにディスクサブシステム
US5768623A (en) 1995-09-19 1998-06-16 International Business Machines Corporation System and method for sharing multiple storage arrays by dedicating adapters as primary controller and secondary controller for arrays reside in different host computers
US5790775A (en) * 1995-10-23 1998-08-04 Digital Equipment Corporation Host transparent storage controller failover/failback of SCSI targets and associated units
JP3628777B2 (ja) * 1995-10-30 2005-03-16 株式会社日立製作所 外部記憶装置
US5867736A (en) 1996-03-29 1999-02-02 Lsi Logic Corporation Methods for simplified integration of host based storage array control functions using read and write operations on a storage array control port
US5925120A (en) 1996-06-18 1999-07-20 Hewlett-Packard Company Self-contained high speed repeater/lun converter which controls all SCSI operations between the host SCSI bus and local SCSI bus
US5828876A (en) 1996-07-31 1998-10-27 Ncr Corporation File system for a clustered processing system
US5892955A (en) 1996-09-20 1999-04-06 Emc Corporation Control of a multi-user disk storage system
US6073218A (en) 1996-12-23 2000-06-06 Lsi Logic Corp. Methods and apparatus for coordinating shared multiple raid controller access to common storage devices
US6151684A (en) * 1997-03-28 2000-11-21 Tandem Computers Incorporated High availability access to input/output devices in a distributed system
US6009535A (en) * 1997-06-30 1999-12-28 Emc Corporation SCSI adaptor failover for a disk drive system
US6073188A (en) 1997-07-25 2000-06-06 Compaq Computer Corporation Electronic switchbox for selection and sharing of internal peripheral devices among different computers, the internal peripheral devices located in slots of a chassis
US5937428A (en) 1997-08-06 1999-08-10 Lsi Logic Corporation Method for host-based I/O workload balancing on redundant array controllers
US6145028A (en) * 1997-12-11 2000-11-07 Ncr Corporation Enhanced multi-pathing to an array of storage devices
US6021454A (en) 1998-03-27 2000-02-01 Adaptec, Inc. Data transfer between small computer system interface systems
JP3331960B2 (ja) 1998-04-22 2002-10-07 日本電気株式会社 ホストコンピュータシステム
JPH11345175A (ja) 1998-06-02 1999-12-14 Nec Kofu Ltd 代替パス制御システム及び方法
US6286056B1 (en) 1998-06-26 2001-09-04 Seagate Technology Llc Data storage device with small computer system interface providing persistent reservations
JP2000047950A (ja) 1998-07-24 2000-02-18 Hitachi Ltd 外部記憶装置
US6115772A (en) 1998-09-18 2000-09-05 International Business Machines, Inc. System and method for host expansion and connection adaptability for a SCSI storage array
US6182167B1 (en) 1998-10-22 2001-01-30 International Business Machines Corporation Automatic sharing of SCSI multiport device with standard command protocol in conjunction with offline signaling
KR20000045794A (ko) * 1998-12-30 2000-07-25 서평원 스카시 버스 장애시의 재접속 방법
US6484229B1 (en) 1999-03-05 2002-11-19 Hitachi, Ltd. Magnetic disk apparatus
US6256695B1 (en) * 1999-03-15 2001-07-03 Western Digital Corporation Disk drive method of determining SCSI bus state information after a SCSI bus reset condition
US6408343B1 (en) * 1999-03-29 2002-06-18 Hewlett-Packard Company Apparatus and method for failover detection
TW457475B (en) * 1999-12-08 2001-10-01 Inventec Corp Status detecting method for hard disk drivers
US6658587B1 (en) 2000-01-10 2003-12-02 Sun Microsystems, Inc. Emulation of persistent group reservations
US6728905B1 (en) * 2000-03-03 2004-04-27 International Business Machines Corporation Apparatus and method for rebuilding a logical device in a cluster computer system
US6772231B2 (en) * 2000-06-02 2004-08-03 Hewlett-Packard Development Company, L.P. Structure and process for distributing SCSI LUN semantics across parallel distributed components

Also Published As

Publication number Publication date
JP2002163156A (ja) 2002-06-07
CN1348134A (zh) 2002-05-08
CN1186726C (zh) 2005-01-26
EP1246060A1 (en) 2002-10-02
US6954881B1 (en) 2005-10-11
ATE313114T1 (de) 2005-12-15
JP3659342B2 (ja) 2005-06-15
SG100764A1 (en) 2003-12-26
EP1246060B1 (en) 2005-12-14
DE60115839D1 (de) 2006-01-19
KR20020029605A (ko) 2002-04-19
DE60115839T2 (de) 2006-07-20
KR100424242B1 (ko) 2004-03-24

Similar Documents

Publication Publication Date Title
TW525056B (en) Method and apparatus for providing multi-path I/O in non-concurrent clustering environment using SCSI-3 persistent reserve
JP4087072B2 (ja) ストレージシステム及び仮想プライベートボリューム制御方法
US6779064B2 (en) System, method, and computer program product for on-line replacement of a host bus adapter
US6073209A (en) Data storage controller providing multiple hosts with access to multiple storage subsystems
JP4252301B2 (ja) 記憶システム及びそのデータバックアップ方法
US7120673B2 (en) Computer storage system providing virtualized storage
US8621603B2 (en) Methods and structure for managing visibility of devices in a clustered storage system
US8583876B2 (en) Logical unit security for clustered storage area networks
US8412858B2 (en) Techniques for indicating a passive state for a device
US9823955B2 (en) Storage system which is capable of processing file access requests and block access requests, and which can manage failures in A and storage system failure management method having a cluster configuration
GB2397412A (en) Storage system with LUN virtualisation
US8086768B2 (en) Storage system and control method of storage system
US7478267B2 (en) Access control device and interface installed in same
EP1837765A2 (en) Backup apparatus and backup method
EP1966710B1 (en) Integrated circuit capable of independently operating a plurality of communication channels
US20110022828A1 (en) Non-disruptive methods for updating a controller of a storage system
EP2101266A1 (en) Remote copy system and method having copy path check unit
US8677094B2 (en) Storage system, release method, and secondary storage apparatus
US7272852B2 (en) Reserve/release control method
US20130167206A1 (en) Storage system, method of controlling access to storage system and computer system
EP1589412A2 (en) Computer data migration system
US8984175B1 (en) Method and apparatus for providing redundant paths to a storage volume

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MM4A Annulment or lapse of patent due to non-payment of fees