中的步驟,除了互相排斥的特征和/或步驟以外,均可以以任何方式組合。
[0027]本發(fā)明適用于所述SAN裝置140,主要是在數(shù)據(jù)存儲(chǔ)時(shí)促進(jìn)透明數(shù)據(jù)服務(wù)。更具體地說,本發(fā)明是關(guān)于一種用可計(jì)算機(jī)實(shí)現(xiàn)的方法、數(shù)據(jù)處理系統(tǒng)及計(jì)算機(jī)可用的程序代碼來呈現(xiàn)所管理的存儲(chǔ)設(shè)備的自主身份及呈現(xiàn)獨(dú)特的in-band通信,目的是在不干擾原主機(jī)及存儲(chǔ)設(shè)備之間既有的功能及管理模式下,提供透明數(shù)據(jù)服務(wù)功能。
[0028]本發(fā)明的存儲(chǔ)代理方法使所述SAN裝置140在對(duì)所管理的存儲(chǔ)系統(tǒng)提供額外數(shù)據(jù)服務(wù)時(shí),對(duì)服務(wù)器端呈現(xiàn)存儲(chǔ)系統(tǒng)本身的自主身份及特征,而非虛擬化存儲(chǔ)系統(tǒng)。本發(fā)明的存儲(chǔ)代理方法使原本的存儲(chǔ)系統(tǒng)驅(qū)動(dòng)程序及管理程序代碼能在不被所述SAN裝置140的干擾下運(yùn)作。
[0029]請(qǐng)參照?qǐng)D2,圖2為以邏輯方式顯示以SAN裝置210實(shí)現(xiàn)的two-way數(shù)據(jù)鏡像。數(shù)據(jù)鏡像為所述SAN裝置210提供的透明通信的其中一個(gè),在一個(gè)two-way數(shù)據(jù)鏡像中,使用兩個(gè)存儲(chǔ)系統(tǒng)。圖2揭露了所述SAN裝置210被邏輯性地配置在服務(wù)器200、第一存儲(chǔ)系統(tǒng)220及第二存儲(chǔ)系統(tǒng)230之間。所述第一存儲(chǔ)系統(tǒng)220包含第一邏輯單元221及第三邏輯單元222。所述第二存儲(chǔ)系統(tǒng)230包含第二邏輯單元231及第四邏輯單元232。
[0030]在圖2中,所述第一邏輯單元221經(jīng)由所述SAN裝置210與所述第二邏輯單元231互為鏡像,并且所述第一邏輯單元221及所述第二邏輯單元231結(jié)合組成第一鏡像邏輯單元211’并且在所述服務(wù)器200端被呈現(xiàn)為第一虛擬邏輯單元211。所述第三邏輯單元222經(jīng)由所述SAN裝置210與所述第四邏輯單元232互為鏡像,并且所述第三邏輯單元222及所述第四邏輯單元232結(jié)合組成第二鏡像邏輯單元212’并被呈現(xiàn)為第二虛擬邏輯單元212。
[0031]請(qǐng)參照?qǐng)D3(a),圖3(a)顯示了 SAN裝置310呈現(xiàn)用于第一存儲(chǔ)系統(tǒng)320及第二存儲(chǔ)系統(tǒng)330之間的獨(dú)特的in-band通信方法。所述SAN裝置310呈現(xiàn)第一虛擬邏輯單元311及第二虛擬邏輯單元312,其中所述第一虛擬邏輯單元311包含第一虛擬自主身份31IID以及所述第二虛擬邏輯單元312包含第二虛擬自主身份312ID。在圖3(a)中,服務(wù)器300與所述SAN裝置310相連接,所述SAN裝置310與所述第一存儲(chǔ)系統(tǒng)320及所述第二存儲(chǔ)系統(tǒng)330相連接,其中所述第一存儲(chǔ)系統(tǒng)320包含第一邏輯單元321及第三邏輯單元322,所述第二存儲(chǔ)系統(tǒng)330包含第二邏輯單元331及第四邏輯單元332。此外,所述第一邏輯單元321包含第一邏輯單元自主身份321ID,以及所述第三邏輯單元322包含第三邏輯單元自主身份322ID。所述第二邏輯單元331包含第二邏輯單元自主身份331ID,以及所述第四邏輯單元332包含第四邏輯單元身份332ID。
[0032]如圖3 (a)所示,由所述SAN裝置310所實(shí)現(xiàn)的一個(gè)two-way數(shù)據(jù)鏡像。當(dāng)進(jìn)行數(shù)據(jù)鏡像時(shí),所述第一邏輯單元321與所述第二邏輯單元331相鏡像,并且在所述SAN裝置310被呈現(xiàn)為所述第一虛擬邏輯單元311。同樣地,所述第三邏輯單元322與所述第四邏輯單元332相鏡像,并且在所述SAN裝置310被呈現(xiàn)為所述第二虛擬邏輯單元312。
[0033]本發(fā)明的存儲(chǔ)代理方法讓用戶能自行決定所述SAN裝置310是否利用提供存儲(chǔ)系統(tǒng)進(jìn)行鏡像的兩個(gè)邏輯單元的自主身份。也就是說,所述服務(wù)器300可利用所述第一邏輯單元自主身份321ID或所述第二邏輯單元自主身份331ID來作為所述第一虛擬自主身份311ID。同樣地,所述服務(wù)器300可利用所述第三邏輯單元自主身份322ID或所述第四邏輯單元自主身份332ID來作為所述第二虛擬自主身份312ID。如圖3(a)所示,所述第一邏輯單元321被選為提供其自主身份,也就是所述第一邏輯單元自主身份321ID,給所述第一虛擬邏輯單元311,因此被稱為所述第一虛擬邏輯單元311的第一代理邏輯單元。同樣地,所述第四邏輯單元332被選為提供其自主身份,也就是所述第四邏輯單元自主身份332ID,給所述第二虛擬邏輯單元312,因此被稱為所述第二虛擬邏輯單元312的第二代理邏輯單元。
[0034]所述第一虛擬邏輯單元311及所述第二虛擬邏輯單元312既不是所述第一存儲(chǔ)系統(tǒng)320也不是所述第二存儲(chǔ)系統(tǒng)330,它們?yōu)樗龅谝淮鎯?chǔ)系統(tǒng)320及所述第二存儲(chǔ)系統(tǒng)330的組合。傳統(tǒng)SAN配置Ia所提供的傳統(tǒng)作法是,所述SAN裝置310創(chuàng)造新的自主身份給所述第一虛擬邏輯單元311及所述第二虛擬邏輯單元312,新的自主身份與所述第一邏輯單元自主身份321ID、第二邏輯單元自主身份331ID、第三邏輯單元自主身份322ID及第四邏輯單元自主身份332ID均不相同。
[0035]所述第一虛擬自主身份311ID在被所述第一虛擬邏輯單元311的第一代理邏輯單元提取后,可被儲(chǔ)存于所述SAN裝置310內(nèi)的非易失性內(nèi)存中。如果存儲(chǔ)系統(tǒng)包含有所述第一虛擬邏輯單元311的第一代理邏輯單元為脫機(jī),所述SAN裝置310仍能夠反饋所述第一邏輯單元自主身份321 ID。
[0036]所述SAN裝置310透明地傳遞任何所接收到的所述第一虛擬邏輯單元311的供貨商特有的指令給所述第一虛擬邏輯單元311的第一代理邏輯單元。此外,所述SAN裝置310同樣透明地傳遞任何所接收到的所述第二虛擬邏輯單元312的供貨商特有的指令給所述第二虛擬邏輯單元312的第二代理邏輯單元。因此所述服務(wù)器300能夠在所述SAN裝置310提供讀寫指令鏡像時(shí),同時(shí)管理所述第一存儲(chǔ)系統(tǒng)320及所述第二存儲(chǔ)系統(tǒng)330。
[0037]重新回到圖3(a),由所述SAN裝置310所呈現(xiàn)的第一虛擬邏輯單元311及第二虛擬邏輯單元312中,所述第一存儲(chǔ)系統(tǒng)320及所述第二存儲(chǔ)系統(tǒng)330 —次只有其中之一可以被選為代理邏輯單元。亦即,所述服務(wù)器300與一個(gè)邏輯單元通話,即與整個(gè)存儲(chǔ)系統(tǒng)通話。如圖3(a)所示的實(shí)施例,所述SAN裝置310呈現(xiàn)所述第一虛擬邏輯單元311及所述第二虛擬邏輯單元312。所述第一虛擬邏輯單元311具有選自所述第一存儲(chǔ)系統(tǒng)320的所述第一虛擬邏輯單元311的第一代理邏輯單元,以及所述第二虛擬邏輯單元312具有選自所述第二存儲(chǔ)系統(tǒng)330的所述第二虛擬邏輯單元312的第二代理邏輯單元。藉由發(fā)送管理指令(從所述服務(wù)器300)至所述第一虛擬邏輯單元311及所述第二虛擬邏輯單元312兩者,相同或不同的管理應(yīng)用程序可同時(shí)管理所述第一存儲(chǔ)系統(tǒng)320及所述第二存儲(chǔ)系統(tǒng)330。
[0038]另一解決方案是,只選定一個(gè)虛擬邏輯單元,例如選定所述第一虛擬邏輯單元311為代理邏輯單元,再動(dòng)態(tài)地在所述第一邏輯單元321與第二邏輯單元331之間切換代理關(guān)系,因此容許交替管理所述第一存儲(chǔ)系統(tǒng)320及所述第二存儲(chǔ)系統(tǒng)330。
[0039]請(qǐng)參照?qǐng)D3(b),圖3(b)顯示了所述第一虛擬自主身份311ID的架構(gòu)。所述第一虛擬自主身份311ID包含供貨商標(biāo)識(shí)符311ID(1)及產(chǎn)品標(biāo)識(shí)符311ID(2)。邏輯單元的自主身份主要包含供貨商標(biāo)識(shí)符、產(chǎn)品標(biāo)識(shí)符及模式名稱等,其可經(jīng)由索取標(biāo)準(zhǔn)查詢數(shù)據(jù)(Standardlnquiry Data)的SCSI查詢指令獲得。服務(wù)器程序代碼,例如存儲(chǔ)系統(tǒng)驅(qū)動(dòng)程序,存儲(chǔ)系統(tǒng)管理應(yīng)用程序等,通常通過使用SCSI查詢指令來確定是否支持一個(gè)存儲(chǔ)系統(tǒng)。這些程序代碼通常不會(huì)對(duì)不支持的存儲(chǔ)系統(tǒng)發(fā)送管理指令,甚至拒絕運(yùn)作它們。
[0040]所述SAN裝置310利用本發(fā)明的存儲(chǔ)代理方法返回從所述第一虛擬邏輯單元311的第一代理邏輯單元獲得的數(shù)據(jù),以作為所述第一虛擬邏輯單元311的標(biāo)準(zhǔn)查詢數(shù)據(jù)。此夕卜,所述SAN裝置310利用本發(fā)明的存儲(chǔ)代理方法返回從所述第二虛擬邏輯單元312的第二代理邏輯單元獲得的數(shù)據(jù),以作為所述第二虛擬邏輯單元312的標(biāo)準(zhǔn)查詢數(shù)據(jù)。
[0041 ] 請(qǐng)參照?qǐng)D4,圖4顯示SAN裝置410利用儲(chǔ)存虛擬方法對(duì)服務(wù)器400呈現(xiàn)特殊代理邏輯單元41 OS。在圖4中,所述服務(wù)器400與所述SAN裝置410相連接,所述SAN裝置410與第一存儲(chǔ)系統(tǒng)420及第二存儲(chǔ)系統(tǒng)430相連接,其中所述第一存儲(chǔ)系統(tǒng)420包含第一邏輯單元421及第三邏輯單元422,所述第二存儲(chǔ)系統(tǒng)430包含第二邏輯單元431、第四邏輯單元432及特殊目的邏輯單元430S。再者,所述SAN裝置410包含第一虛擬邏輯單元411、第二虛擬邏輯單元412及所述特殊代理邏輯單元410S。
[0042]如圖4所示,所述SAN裝置410經(jīng)由發(fā)送SCSI指令給所述特殊目的邏輯單元430S來管理所述第二存儲(chǔ)系統(tǒng)430,其中所述特殊目的邏輯單元430S專屬于所述服務(wù)器400。所述特殊目的邏輯單元430S只為了進(jìn)行接收以對(duì)管理需求作出反應(yīng),其并不支持通常的讀寫操作。所述SAN裝置4