亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種多種存儲(chǔ)協(xié)議下的統(tǒng)一服務(wù)系統(tǒng)的制作方法

文檔序號(hào):6399896閱讀:147來(lái)源:國(guó)知局
專利名稱:一種多種存儲(chǔ)協(xié)議下的統(tǒng)一服務(wù)系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體地說(shuō)是一種多種存儲(chǔ)協(xié)議下的統(tǒng)一服務(wù)系統(tǒng)。
背景技術(shù)
在實(shí)際應(yīng)用中對(duì)大容量存儲(chǔ)的需求促使了 RAID技術(shù)的誕生,并形成了磁盤陣列產(chǎn)品,目前磁盤陣列中支持的協(xié)議主要有ISCSI (互聯(lián)網(wǎng)小型計(jì)算機(jī)系統(tǒng)接口)和FCP協(xié)議。iSCSI是一種在TCP/IP上進(jìn)行數(shù)據(jù)塊傳輸?shù)臉?biāo)準(zhǔn),可以實(shí)現(xiàn)在IP網(wǎng)絡(luò)上運(yùn)行SCSI協(xié)議;FCP協(xié)議是光纖通道和上層應(yīng)用之間的接口,它是在光纖信道上的SCSI接口協(xié)議。目前還出現(xiàn)了 SRP協(xié)議。SRP協(xié)議是IB( Infiniband) SAN的一種,其主要作用是把SCSI協(xié)議的命令和數(shù)據(jù)通過(guò)RDMA的方式在Infiniband網(wǎng)絡(luò)上傳輸;隨著互聯(lián)技術(shù)的發(fā)展,以后還會(huì)出現(xiàn)其它的協(xié)議,每出現(xiàn)一種新的協(xié)議,都要開發(fā)一種新的協(xié)議服務(wù)支持。在現(xiàn)有的協(xié)議設(shè)計(jì)中,每種協(xié)議服務(wù)都是單獨(dú)實(shí)現(xiàn)的,如IET,F(xiàn)C-TARGET,這些服務(wù)雖然有通用的數(shù)據(jù)讀寫處理過(guò)程,但沒(méi)有結(jié)合點(diǎn),不能統(tǒng)一對(duì)外提供服務(wù)。

發(fā)明內(nèi)容
本發(fā)明的目的是提供一種多種存儲(chǔ)協(xié)議下的統(tǒng)一服務(wù)系統(tǒng)。本發(fā)明的目的是按以下方式實(shí)現(xiàn)的,系統(tǒng)包括多協(xié)議解釋驅(qū)動(dòng)模塊、訪問(wèn)權(quán)限控制模塊、通用中間層模塊、后端處理模塊,其中:
多協(xié)議解釋驅(qū)動(dòng)模塊,負(fù)責(zé)為主機(jī)總線適配器HBA接收或者發(fā)送消息,如接收來(lái)自訪問(wèn)用戶的消息或?qū)⑾l(fā)送到訪問(wèn)用戶端。對(duì)于每種傳輸協(xié)議,都有相應(yīng)的協(xié)議解釋驅(qū)動(dòng),它的實(shí)現(xiàn)完全是協(xié)議相關(guān)的;
訪問(wèn)權(quán)限控制模塊,提供了權(quán)限控制功能,對(duì)每個(gè)訪問(wèn)用戶會(huì)有相應(yīng)的訪問(wèn)權(quán)限,有的訪問(wèn)用戶訪問(wèn)一組設(shè)備,而另外的訪問(wèn)用戶或訪問(wèn)另一組設(shè)備,它會(huì)創(chuàng)建一個(gè)邏輯單元的數(shù)據(jù)結(jié)構(gòu),每個(gè)邏輯單元?jiǎng)?chuàng)建一個(gè)SCSI命令的消息隊(duì)列,為了控制哪些訪問(wèn)用戶能夠訪問(wèn)邏輯單元,有一個(gè)訪問(wèn)控制鏈表來(lái)控制哪些訪問(wèn)用戶能夠訪問(wèn)哪些邏輯單元;
通用中間層模塊,進(jìn)行通用的命令處理,會(huì)話以及命令的創(chuàng)建,完成邏輯單元到設(shè)備的轉(zhuǎn)換,并將這些命令根據(jù)不同的設(shè)備類型分發(fā)到不同的設(shè)備上去,并最終調(diào)用后端設(shè)備句柄來(lái)完成命令的處理。
后端處理模塊由SCSI命令處理器來(lái)組成,它負(fù)責(zé)SCSI命令執(zhí)行。當(dāng)邏輯單元的SCSI命令隊(duì)列接收到一個(gè)新命令時(shí),SCSI命令處理器調(diào)用相應(yīng)的后端設(shè)備句柄來(lái)完成這個(gè)命令?!N多種存儲(chǔ)協(xié)議的統(tǒng)一服務(wù)方法,其特征在于訪問(wèn)用戶在需要建立與目標(biāo)器的連接時(shí),首先要加載多協(xié)議解釋模塊模塊,完成協(xié)議解釋驅(qū)動(dòng)的注冊(cè),當(dāng)協(xié)議解釋驅(qū)動(dòng)接收到訪問(wèn)用戶的連接請(qǐng)求時(shí),會(huì)調(diào)用中間層函數(shù)來(lái)完成會(huì)話的創(chuàng)建,此后訪問(wèn)用戶就開始與多協(xié)議統(tǒng)一的命令交互過(guò)程,訪問(wèn)用戶端就能看到目標(biāo)器提供的后端磁盤,并對(duì)它進(jìn)行格式化讀寫,當(dāng)協(xié)議解釋驅(qū)動(dòng)把協(xié)議命令傳遞給中間層處理時(shí),中間層會(huì)分配命令并初始化相應(yīng)的域,提取出相應(yīng)的邏輯單元號(hào)并返回,其過(guò)程如下:
(1)分配命令結(jié)構(gòu),設(shè)置命令的狀態(tài),命令的缺省任務(wù)屬性,命令的超時(shí)間隔,命令的引用計(jì)數(shù);
(2)初始化其協(xié)議解釋驅(qū)動(dòng)指針以及協(xié)議解釋驅(qū)動(dòng)操作函數(shù)表;
(3)增加會(huì)話的命令計(jì)數(shù),將其加入到會(huì)話的命令隊(duì)列中,并根據(jù)命令的邏輯單元號(hào)來(lái)查找相應(yīng)的傳輸設(shè)備,確定命令的數(shù)據(jù)傳輸方向,初始化命令的后端設(shè)備,命令的scsi設(shè)備;
(4)從CDB結(jié)構(gòu)中解釋出操作碼、傳輸?shù)臄?shù)據(jù)長(zhǎng)度,并調(diào)用相應(yīng)的后端設(shè)備方法來(lái)請(qǐng)求數(shù)據(jù)緩存;
(5)如果命令并不需要數(shù)據(jù)傳輸,則由多協(xié)議中間層來(lái)處理;
(6)如果命令是讀命令,則分配相應(yīng)的內(nèi)存空間,并將命令傳遞給后端設(shè)備來(lái)處理;
(7)如果是寫命令,則分配相應(yīng)的空間,調(diào)用協(xié)議解釋驅(qū)動(dòng)的準(zhǔn)備傳輸處理方法,告訴協(xié)議解釋驅(qū)動(dòng)空間已經(jīng)準(zhǔn)備好了并且啟動(dòng)數(shù)據(jù)傳輸,當(dāng)協(xié)議解釋驅(qū)動(dòng)獲得所有的數(shù)據(jù)后,然后調(diào)用接收數(shù)據(jù)方法來(lái)處理;
(8)協(xié)議解釋驅(qū)動(dòng)發(fā)送響應(yīng),當(dāng)發(fā)送完響應(yīng)后,協(xié)議解釋驅(qū)動(dòng)通知中間層可以釋放命令以及相應(yīng)的數(shù)據(jù)緩存;
協(xié)議部分只負(fù)責(zé)數(shù)據(jù)的傳輸,數(shù)據(jù)的通用處理都在中間層來(lái)處理,后端處理磁盤讀寫,以此實(shí)現(xiàn)多種存儲(chǔ)協(xié)議下的統(tǒng)一服務(wù),實(shí)施統(tǒng)一管理,能夠同時(shí)支持多種協(xié)議,且易于擴(kuò)展。本發(fā)明的有益效果是:現(xiàn)存的協(xié)議服務(wù)都單獨(dú)存在,不能統(tǒng)一對(duì)外提供服務(wù),并且它們之間沒(méi)有結(jié)合點(diǎn)。本文發(fā)明了一種多協(xié)議統(tǒng)一服務(wù)方法,能夠?qū)CSI命令通過(guò)不同的傳輸協(xié)議(如FCP,iSCSI,SRP協(xié)議等)傳輸給儲(chǔ)存后端設(shè)備來(lái)處理。在本發(fā)明的多協(xié)議統(tǒng)一服務(wù)方法中,有效地將各種IO的通用處理結(jié)合在一起,對(duì)其進(jìn)行了抽象,提取了中間層的概念,并將具體的協(xié)議實(shí)現(xiàn)與通用的命令處理相分離,并能同時(shí)對(duì)外提供ISCSI,F(xiàn)C, SRP協(xié)議服務(wù)。


圖1是多種存儲(chǔ)協(xié)議下的統(tǒng)一服務(wù)系統(tǒng)不意 圖2出SCSI命令處理流程圖。
具體實(shí)施例方式參照說(shuō)明書附圖對(duì)本發(fā)明的方法作以下詳細(xì)地說(shuō)明。如附圖所示,本發(fā)明磁盤陣列中一種多種存儲(chǔ)協(xié)議下的統(tǒng)一服務(wù)系統(tǒng)及其方法。系統(tǒng)包括多協(xié)議解釋驅(qū)動(dòng)模塊、訪問(wèn)權(quán)限控制模塊、通用中間層模塊、后端處理模塊。其中:
多協(xié)議解釋驅(qū)動(dòng)模塊負(fù)責(zé)為主機(jī)總線適配器HBA接收或者發(fā)送消息,如接收來(lái)自訪問(wèn)用戶的消息或?qū)⑾l(fā)送到訪問(wèn)用戶端。對(duì)于每種傳輸協(xié)議,都有相應(yīng)的協(xié)議解釋驅(qū)動(dòng),它的實(shí)現(xiàn)完全是協(xié)議相關(guān)的。訪問(wèn)權(quán)限控制模塊,提供了權(quán)限控制功能,對(duì)每個(gè)訪問(wèn)用戶會(huì)有相應(yīng)的訪問(wèn)權(quán)限。有的訪問(wèn)用戶可以訪問(wèn)一組設(shè)備,而另外的訪問(wèn)用戶可以訪問(wèn)另一組設(shè)備。它會(huì)創(chuàng)建一個(gè)邏輯單元的數(shù)據(jù)結(jié)構(gòu),每個(gè)邏輯單元?jiǎng)?chuàng)建一個(gè)SCSI命令的消息隊(duì)列,為了控制哪些訪問(wèn)用戶能夠訪問(wèn)邏輯單元,有一個(gè)訪問(wèn)控制鏈表來(lái)控制哪些訪問(wèn)用戶能夠訪問(wèn)哪些邏輯單元。通用中間層模塊,進(jìn)行通用的命令處理,會(huì)話以及命令的創(chuàng)建,完成邏輯單元到設(shè)備的轉(zhuǎn)換,并將這些命令根據(jù)不同的設(shè)備類型分發(fā)到不同的設(shè)備上去。并最終調(diào)用后端設(shè)備句柄來(lái)完成命令的處理。
后端處理模塊由SCSI命令處理器來(lái)組成,它負(fù)責(zé)SCSI命令執(zhí)行。當(dāng)邏輯單元的SCSI命令隊(duì)列接收到一個(gè)新命令時(shí),SCSI命令處理器調(diào)用相應(yīng)的后端設(shè)備句柄來(lái)完成這個(gè)命令。
實(shí)施例如圖2所示,訪問(wèn)用戶在需要建立與目標(biāo)器的連接時(shí),首先要加載多協(xié)議解釋模塊模塊,完成協(xié)議解釋驅(qū)動(dòng)的注冊(cè)過(guò)程,當(dāng)協(xié)議解釋驅(qū)動(dòng)接收到訪問(wèn)用戶的連接請(qǐng)求時(shí),會(huì)調(diào)用中間層函數(shù)來(lái)完成會(huì)話的創(chuàng)建,此后訪問(wèn)用戶就可以開始與多協(xié)議統(tǒng)一的命令交互過(guò)程,訪問(wèn)用戶端就能看到目標(biāo)器提供的后端磁盤,并可以對(duì)它進(jìn)行格式化讀寫。當(dāng)協(xié)議解釋驅(qū)動(dòng)把協(xié)議命令傳遞給中間層處理時(shí),中間層會(huì)分配命令并初始化相應(yīng)的域,提取出相應(yīng)的邏輯單元號(hào)并返回。其過(guò)程如下:
(1)分配命令結(jié)構(gòu),設(shè)置命令的狀態(tài),命令的缺省任務(wù)屬性,命令的超時(shí)間隔,命令的引用計(jì)數(shù);
(2)初始化其協(xié)議解釋驅(qū)動(dòng)指針以及協(xié)議解釋驅(qū)動(dòng)操作函數(shù)表;
(3)增加會(huì)話的命令計(jì)數(shù),將其加入到會(huì)話的命令隊(duì)列中,并根據(jù)命令的邏輯單元號(hào)來(lái)查找相應(yīng)的傳輸設(shè)備,確定命令的數(shù)據(jù)傳輸方向,初始化命令的后端設(shè)備,命令的scsi設(shè)備;
(4)從CDB結(jié)構(gòu)中解釋出操作碼、傳輸?shù)臄?shù)據(jù)長(zhǎng)度,并調(diào)用相應(yīng)的后端設(shè)備方法來(lái)請(qǐng)求數(shù)據(jù)緩存
(5)如果命令并不需要數(shù)據(jù)傳輸,則由多協(xié)議中間層來(lái)處理
(6)如果命令是讀命令,則分配相應(yīng)的內(nèi)存空間,并將命令傳遞給后端設(shè)備來(lái)處理;
(7)如果是寫命令,則分配相應(yīng)的空間,調(diào)用協(xié)議解釋驅(qū)動(dòng)的準(zhǔn)備傳輸處理方法,告訴協(xié)議解釋驅(qū)動(dòng)空間已經(jīng)準(zhǔn)備好了并且可以啟動(dòng)數(shù)據(jù)傳輸。當(dāng)協(xié)議解釋驅(qū)動(dòng)獲得所有的數(shù)據(jù)后,然后調(diào)用接收數(shù)據(jù)方法來(lái)處理;
(8)協(xié)議解釋驅(qū)動(dòng)發(fā)送響應(yīng),當(dāng)發(fā)送完響應(yīng)后,協(xié)議解釋驅(qū)動(dòng)通知中間層可以釋放命令以及相應(yīng)的數(shù)據(jù)緩存。通過(guò)這種方式,協(xié)議部分只專門負(fù)責(zé)數(shù)據(jù)的傳輸,數(shù)據(jù)的通用處理都在中間層來(lái)處理,后端專門處理磁盤讀寫,這樣就完成了多種存儲(chǔ)協(xié)議的統(tǒng)一服務(wù)的實(shí)現(xiàn),與單獨(dú)實(shí)現(xiàn)相比,易于維護(hù),統(tǒng)一管理,能夠同時(shí)支持多種協(xié)議,且易于擴(kuò)展。除說(shuō)明書所述的技術(shù)特征外,均為本專業(yè)技術(shù)人員的已知技術(shù)。
權(quán)利要求
1.一種多種存儲(chǔ)協(xié)議下的統(tǒng)一服務(wù)系統(tǒng),其特征在于,系統(tǒng)包括多協(xié)議解釋驅(qū)動(dòng)模塊、訪問(wèn)權(quán)限控制模塊、通用中間層模塊、后端處理模塊,其中: 多協(xié)議解釋驅(qū)動(dòng)模塊,負(fù)責(zé)為主機(jī)總線適配器HBA接收或者發(fā)送消息,如接收來(lái)自訪問(wèn)用戶的消息或?qū)⑾l(fā)送到訪問(wèn)用戶端,對(duì)于每種傳輸協(xié)議,都有相應(yīng)的協(xié)議解釋驅(qū)動(dòng),它的實(shí)現(xiàn)完全是協(xié)議相關(guān)的; 訪問(wèn)權(quán)限控制模塊,提供了權(quán)限控制功能,對(duì)每個(gè)訪問(wèn)用戶會(huì)有相應(yīng)的訪問(wèn)權(quán)限,有的訪問(wèn)用戶訪問(wèn)一組設(shè)備,而另外的訪問(wèn)用戶或訪問(wèn)另一組設(shè)備,它會(huì)創(chuàng)建一個(gè)邏輯單元的數(shù)據(jù)結(jié)構(gòu),每個(gè)邏輯單元?jiǎng)?chuàng)建一個(gè)SCSI命令的消息隊(duì)列,為了控制哪些訪問(wèn)用戶能夠訪問(wèn)邏輯單元,有一個(gè)訪問(wèn)控制鏈表來(lái)控制哪些訪問(wèn)用戶能夠訪問(wèn)哪些邏輯單元; 通用中間層模塊,進(jìn)行通用的命令處理,會(huì)話以及命令的創(chuàng)建,完成邏輯單元到設(shè)備的轉(zhuǎn)換,并將這些命令根據(jù)不同的設(shè)備類型分發(fā)到不同的設(shè)備上去,并最終調(diào)用后端設(shè)備句柄來(lái)完成命令的處理; 后端處理模塊由SCSI命令處理器來(lái)組成,它負(fù)責(zé)SCSI命令執(zhí)行,當(dāng)邏輯單元的SCSI命令隊(duì)列接收到一個(gè)新命令時(shí),SCSI命令處理器調(diào)用相應(yīng)的后端設(shè)備句柄來(lái)完成這個(gè)命令。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于訪問(wèn)用戶在需要建立與目標(biāo)器的連接時(shí),首先要加載多協(xié)議解釋模塊模塊,完成協(xié)議解釋驅(qū)動(dòng)的注冊(cè),當(dāng)協(xié)議解釋驅(qū)動(dòng)接收到訪問(wèn)用戶的連接請(qǐng)求時(shí),會(huì)調(diào)用中間層函數(shù)來(lái)完成會(huì)話的創(chuàng)建,此后訪問(wèn)用戶就開始與多協(xié)議統(tǒng)一的命令交互過(guò)程,訪問(wèn)用戶端就能看到目標(biāo)器提供的后端磁盤,并對(duì)它進(jìn)行格式化讀寫,當(dāng)協(xié)議解釋驅(qū)動(dòng)把協(xié)議命令傳遞給中間層處理時(shí),中間層會(huì)分配命令并初始化相應(yīng)的域,提取出相應(yīng)的邏輯單元號(hào)并返回,其過(guò)程如下: (1)分配命令結(jié)構(gòu),設(shè)置命令的狀態(tài),命令的缺省任務(wù)屬性,命令的超時(shí)間隔,命令的引用計(jì)數(shù); (2)初始化其協(xié)議解釋驅(qū)動(dòng)指針以及協(xié)議解釋驅(qū)動(dòng)操作函數(shù)表; (3)增加會(huì)話的命令計(jì)數(shù),將其加入到會(huì)話的命令隊(duì)列中,并根據(jù)命令的邏輯單元號(hào)來(lái)查找相應(yīng)的傳輸設(shè)備,確定命令的數(shù)據(jù)傳輸方向,初始化命令的后端設(shè)備,命令的scsi設(shè)備; (4)從CDB結(jié)構(gòu)中解釋出操作碼、傳輸?shù)臄?shù)據(jù)長(zhǎng)度,并調(diào)用相應(yīng)的后端設(shè)備方法來(lái)請(qǐng)求數(shù)據(jù)緩存; (5)如果命令并不需要數(shù)據(jù)傳輸,則由多協(xié)議中間層來(lái)處理; (6)如果命令是讀命令,則分配相應(yīng)的內(nèi)存空間,并將命令傳遞給后端設(shè)備來(lái)處理; (7)如果是寫命令,則分配相應(yīng)的空間,調(diào)用協(xié)議解釋驅(qū)動(dòng)的準(zhǔn)備傳輸處理方法,告訴協(xié)議解釋驅(qū)動(dòng)空間已經(jīng)準(zhǔn)備好了并且啟動(dòng)數(shù)據(jù)傳輸,當(dāng)協(xié)議解釋驅(qū)動(dòng)獲得所有的數(shù)據(jù)后,然后調(diào)用接收數(shù)據(jù)方法來(lái)處理; (8)協(xié)議解釋驅(qū)動(dòng)發(fā)送響應(yīng),當(dāng)發(fā)送完響應(yīng)后,協(xié)議解釋驅(qū)動(dòng)通知中間層可以釋放命令以及相應(yīng)的數(shù)據(jù)緩存。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,協(xié)議部分只負(fù)責(zé)數(shù)據(jù)的傳輸,數(shù)據(jù)的通用處理都在中間層來(lái)處理,后端處理磁盤讀寫,以此實(shí)現(xiàn)多種存儲(chǔ)協(xié)議下的統(tǒng)一服務(wù),實(shí)施統(tǒng)一管理,能夠同時(shí)支持多種協(xié)議,且易于擴(kuò)展。
全文摘要
本發(fā)明提供一種多種存儲(chǔ)協(xié)議下的統(tǒng)一服務(wù)系統(tǒng),系統(tǒng)包括多協(xié)議解釋驅(qū)動(dòng)模塊、訪問(wèn)權(quán)限控制模塊、通用中間層模塊、后端處理模塊,IO處理的協(xié)議部分只負(fù)責(zé)數(shù)據(jù)的傳輸,數(shù)據(jù)的通用處理都在中間層來(lái)處理,后端專門處理磁盤讀寫?,F(xiàn)存的協(xié)議服務(wù)都單獨(dú)存在,不能統(tǒng)一對(duì)外提供服務(wù),并且它們之間沒(méi)有結(jié)合點(diǎn)。本發(fā)明的多協(xié)議統(tǒng)一服務(wù)方法,能夠?qū)CSI命令通過(guò)不同的傳輸協(xié)議(如FCP,iSCSI,SRP協(xié)議等)傳輸給儲(chǔ)存后端設(shè)備來(lái)處理。該系統(tǒng)能夠有效地將各種IO的通用處理結(jié)合在一起,對(duì)其進(jìn)行了抽象,提取了中間層的概念,并將具體的協(xié)議實(shí)現(xiàn)與通用的命令處理相分離,并能同時(shí)對(duì)外提供ISCSI,FC,SRP協(xié)議服務(wù)。
文檔編號(hào)G06F3/06GK103176751SQ20131006677
公開日2013年6月26日 申請(qǐng)日期2013年3月4日 優(yōu)先權(quán)日2013年3月4日
發(fā)明者王恩東, 呂爍, 文中領(lǐng), 楊帆 申請(qǐng)人:浪潮電子信息產(chǎn)業(yè)股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1