欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種實現(xiàn)單控制器存儲的方法

文檔序號:9216982閱讀:355來源:國知局
一種實現(xiàn)單控制器存儲的方法
【技術領域】
[0001]本發(fā)明涉及單控制器的存儲技術領域,特別涉及一種實現(xiàn)單控制器存儲的方法。
【背景技術】
[0002]iSCSI 是 internet Small Computer System Interface 的縮寫,又稱為 IP-SAN,iSCSI技術是一種由IBM公司研宄開發(fā)的,是一個供硬件設備使用的可以在IP協(xié)議的上層運行的SCSI指令集,這種指令集合可以實現(xiàn)在IP網(wǎng)絡上運行SCSI協(xié)議,使其能夠在諸如高速千兆以太網(wǎng)上進行路由選擇。iSCSI技術是一種新儲存技術,該技術是將現(xiàn)有SCSI接口與以太網(wǎng)絡(Ethernet)技術結合,使服務器可與使用IP網(wǎng)絡的儲存裝置互相交換資料。
[0003]該存儲技術通過在IP網(wǎng)上傳送SCSI命令和數(shù)據(jù),實現(xiàn)數(shù)據(jù)在網(wǎng)絡之間的傳遞。由于其出色的數(shù)據(jù)傳輸能力,iSCSI協(xié)議被認為是促進存儲區(qū)域網(wǎng)(SAN)市場快速發(fā)展的關鍵因素之一。iSCSI能夠在LAN、WAN甚至Internet上進行數(shù)據(jù)傳送,使得數(shù)據(jù)的存儲不再受地域的限制。iSCSI技術的核心是在TCP/IP網(wǎng)絡上傳輸SCSI協(xié)議,即使用TCP/IP報文和iSCSI報文封裝SCSI報文,使得SCSI命令和數(shù)據(jù)可以在普通以太網(wǎng)絡上進行傳輸。
[0004]IET (iSCSI Enterprise Target)是 Linux 下的 iSCSI Target 實現(xiàn),open-1scsi是Linux下的iscsi initiator實現(xiàn)。使用iet和open-1scsi就可以方便的實現(xiàn)簡單的IPSAN,同時iet也可以和其他系統(tǒng)的iscsi initiator配合使用。
[0005]Linux系統(tǒng)中使用Page Cache用來緩存文件數(shù)據(jù),Buffer Cache用來緩存磁盤數(shù)據(jù)。Cache (緩存)的存在提高了讀寫性能,也會引入系統(tǒng)掉電時數(shù)據(jù)丟失的風險。
[0006]NVDMM集成了 DRAM,閃存以及超級電容技術,可作為非易失系統(tǒng)主存或者高速內(nèi)存盤使用。NVDIMM繼承了 DRAM技術帶寬高,成本低,壽命長的特性,又能夠在系統(tǒng)完全掉電時保存完整數(shù)據(jù)。在高性能計算,大數(shù)據(jù)處理以及存儲局域網(wǎng)等關鍵性領域能夠發(fā)揮作用。
[0007]目前,單控制器的存儲領域存在著存儲單元不足的技術問題。

【發(fā)明內(nèi)容】

[0008]為了解決現(xiàn)有技術的問題,本發(fā)明提供了一種實現(xiàn)單控制器存儲的方法,其基于IET+Cache+NVDMM實現(xiàn)單控制器存儲,該方法簡單、可靠、成本低、性能優(yōu)異,可實現(xiàn)高性能、高可靠性的單控制器存儲。
[0009]本發(fā)明所采用的技術方案如下:
一種實現(xiàn)單控制器存儲的方法,包括:
A、單控制器存儲通過IET模塊創(chuàng)建iSCSITarget端,iSCSI Initiator端通過網(wǎng)絡對所述的iSCSI Target端訪問;
B、單控制器存儲通過Cache模塊實現(xiàn)與IET模塊的接口、與NVDIMM模塊的接口;
C、單控制器存儲使用NVDIMM模塊實現(xiàn)系統(tǒng)掉電時的數(shù)據(jù)保護和恢復,NVDIMM模塊與Linux系統(tǒng)、IET模塊和Cache模塊實現(xiàn)對接;
D、單控制器存儲使用SATA/SAS控制器連接磁盤設備。
[0010]Cache模塊實現(xiàn)讀寫操作的緩存和優(yōu)化。
[0011]IET模塊對iSCSI Initiator接收到的SCSI命令進行解析,將磁盤的讀寫命令交給Cache模塊來處理,Cache模塊的socket thread線程接收并管理IET模塊傳來的命令。
[0012]Cache模塊分配獨立且連續(xù)的物理內(nèi)存空間用作磁盤讀寫緩存。
[0013]Cache模塊的緩存數(shù)據(jù)頁采用基數(shù)樹進行維護,數(shù)據(jù)會首先被緩存到Page頁,一旦數(shù)據(jù)被寫入Page之后,會將該頁標識成dirty,每個邏輯卷都有自己的寫回線程writeback,寫回線程執(zhí)行磁盤緩存的刷新任務,周期性的將dirty page刷新到磁盤。
[0014]Cache模塊使用雙鏈表LRU算法實現(xiàn)頁的替換和更新,根據(jù)頁在一段時間內(nèi)的訪問頻率,將頁放在不同的LRU鏈表中。
[0015]本發(fā)明的一種實現(xiàn)單控制器存儲的方法,其使用IET實現(xiàn)單控制器存儲的iSCSITarget端。對IET源碼進行簡單的二次開發(fā),即可滿足系統(tǒng)功能要求,并達到穩(wěn)定的性能。
[0016]其在IET軟件中實現(xiàn)Cache模塊,Cache模塊實現(xiàn)讀寫操作的緩存和優(yōu)化。
[0017]Cache模塊包含與IET的接口、數(shù)據(jù)讀寫、與用戶空間接口、與NVDIMM接口等部分。
[0018]使用NVDIMM實現(xiàn)異常掉電狀態(tài)下的數(shù)據(jù)保護和恢復。
[0019]本發(fā)明提供的技術方案帶來的有益效果是:
本發(fā)明通過IET中實現(xiàn)的Cache模塊對iSCSI讀寫操作進行緩存和優(yōu)化,使用NVDIMM實現(xiàn)系統(tǒng)異常掉電狀態(tài)下的數(shù)據(jù)保護和恢復。本發(fā)明的實現(xiàn)方法簡單、可靠、成本低、性能優(yōu)異,可實現(xiàn)高性能、高可靠性的單控制器存儲。
【附圖說明】
[0020]為了更清楚地說明本發(fā)明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0021]圖1為本發(fā)明的一種實現(xiàn)單控制器存儲的方法的系統(tǒng)實現(xiàn)原理圖。
[0022]圖2為本發(fā)明的一種實現(xiàn)單控制器存儲的方法的系統(tǒng)內(nèi)部接口實現(xiàn)原理圖。
【具體實施方式】
[0023]為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結合附圖對本發(fā)明實施方式作進一步地詳細描述。
[0024]實施例一
如圖1所示,單控制器存儲的功能實現(xiàn)如下:
1、單控制器存儲使用IET創(chuàng)建iSCSI Target端(iSCSI目標端),iSCSI Initiator端(iSCSI發(fā)起端)通過網(wǎng)絡對其訪問。實現(xiàn)了 SCSI協(xié)議在TCP/IP網(wǎng)絡上的傳輸,實現(xiàn)了數(shù)據(jù)在網(wǎng)絡之間的傳遞。
[0025]2、單控制器存儲的IET使用自主開發(fā)的Cache模塊,該模塊實現(xiàn)了與IET的接口、與NVDMM的接口,提高了數(shù)據(jù)讀寫的性能和可靠性。
[0026]3、單控制器存儲使用NVDMM實現(xiàn)系統(tǒng)掉電時的數(shù)據(jù)保護和恢復,NVDMM要與Linux系統(tǒng)、IET模塊和Cache模塊實現(xiàn)對接。
[0027]4、單控制器存儲使用SATA/SAS控制器連接磁盤設備。
[0028]如圖2所示,單控制器存儲的系統(tǒng)內(nèi)部接口實現(xiàn)如下:
UIET模塊對iSCSI Initiator接收到的SCSI命令進行解析,將磁盤的讀寫命令交給Cache模塊來處理,Cache模塊的socket thread線程接收并管理IET傳來的命令。
[0029]2、Cache模塊分配獨立且連續(xù)的物理內(nèi)存空間用作磁盤讀寫緩存,與Linux內(nèi)核緩存不同,該緩存不受Linux內(nèi)核的管理,而是由Cache模塊獨立分配管理,并且該物理內(nèi)存空間位于NVDIMM中,通過Cache與NVDIMM、Linux系統(tǒng)與NVDIMM的接口實現(xiàn)系統(tǒng)掉電時數(shù)據(jù)的保護和恢復。
[0030]3、Cache模塊的緩存數(shù)據(jù)頁采用radix tree (基數(shù)樹)進行維護。數(shù)據(jù)會首先被緩存到Page頁,一旦數(shù)據(jù)被寫入Page之后,會將該頁標識成dirty。每個邏輯卷都有自己的寫回線程writeback,寫回線程執(zhí)行磁盤緩存的刷新任務,周期性的將dirty page刷新到磁盤。
[0031]4、Cache模塊使用雙鏈表LRU (Least Recently Used近期最少使用算法)實現(xiàn)頁的替換和更新,根據(jù)頁在一段時間內(nèi)的訪問頻率,將頁放在不同的LRU鏈表中。
[0032]5、使用1ctl機制實現(xiàn)用戶態(tài)管理組件ietadm_cache對Cache模塊的訪問,實現(xiàn)如強制刷新,查看Cach狀態(tài)等功能。
[0033]以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
【主權項】
1.一種實現(xiàn)單控制器存儲的方法,包括: A、單控制器存儲通過IET模塊創(chuàng)建iSCSITarget端,iSCSI Initiator端通過網(wǎng)絡對所述的iSCSI Target端訪問; B、單控制器存儲通過Cache模塊實現(xiàn)與IET模塊的接口、與NVDIMM模塊的接口; C、單控制器存儲使用NVDIMM模塊實現(xiàn)系統(tǒng)掉電時的數(shù)據(jù)保護和恢復,NVDIMM模塊與Linux系統(tǒng)、IET模塊和Cache模塊實現(xiàn)對接; D、單控制器存儲使用SATA/SAS控制器連接磁盤設備。2.根據(jù)權利要求1所述的一種實現(xiàn)單控制器存儲的方法,其特征在于,所述的Cache模塊實現(xiàn)讀寫操作的緩存和優(yōu)化。3.根據(jù)權利要求1所述的一種實現(xiàn)單控制器存儲的方法,其特征在于,所述的IET模塊對iSCSI Initiator接收到的SCSI命令進行解析,將磁盤的讀寫命令交給Cache模塊來處理,Cache模塊的socket thread線程接收并管理IET模塊傳來的命令。4.根據(jù)權利要求1所述的一種實現(xiàn)單控制器存儲的方法,其特征在于,所述的Cache模塊分配獨立且連續(xù)的物理內(nèi)存空間用作磁盤讀寫緩存。5.根據(jù)權利要求1-4任意一項所述的一種實現(xiàn)單控制器存儲的方法,其特征在于,所述的Cache模塊的緩存數(shù)據(jù)頁采用基數(shù)樹進行維護,數(shù)據(jù)會首先被緩存到Page頁,一旦數(shù)據(jù)被寫入Page之后,會將該頁標識成dirty,每個邏輯卷都有自己的寫回線程writeback,寫回線程執(zhí)行磁盤緩存的刷新任務,周期性的將dirty page刷新到磁盤。6.根據(jù)權利要求1-4任意一項所述的一種實現(xiàn)單控制器存儲的方法,其特征在于,所述的Cache模塊使用雙鏈表LRU算法實現(xiàn)頁的替換和更新,根據(jù)頁在一段時間內(nèi)的訪問頻率,將頁放在不同的LRU鏈表中。
【專利摘要】本發(fā)明涉及單控制器的存儲技術領域,特別涉及一種實現(xiàn)單控制器存儲的方法。本發(fā)明通過IET模塊實現(xiàn)的Cache模塊對iSCSI讀寫操作進行緩存和優(yōu)化,使用NVDIMM模塊實現(xiàn)系統(tǒng)異常掉電狀態(tài)下的數(shù)據(jù)保護和恢復。本發(fā)明的實現(xiàn)方法簡單、可靠、成本低、性能優(yōu)異,可實現(xiàn)高性能、高可靠性的單控制器存儲。
【IPC分類】G06F3/06, G06F13/16
【公開號】CN104932839
【申請?zhí)枴緾N201510327269
【發(fā)明人】李公臣, 劉強, 金長新
【申請人】浪潮集團有限公司
【公開日】2015年9月23日
【申請日】2015年6月15日
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
施甸县| 故城县| 吉隆县| 台江县| 郎溪县| 巴楚县| 星子县| 中西区| 阳朔县| 应城市| 正镶白旗| 丽江市| 宝鸡市| 阜城县| 二连浩特市| 伽师县| 富平县| 吴桥县| 隆安县| 日喀则市| 晋城| 太保市| 永川市| 云霄县| 墨玉县| 伊川县| 潮州市| 章丘市| 宜良县| 文化| 阿勒泰市| 司法| 巢湖市| 安化县| 仁化县| 奉化市| 和平区| 房山区| 青海省| 根河市| 尤溪县|