近幾年來,網絡存儲以及I/O技術一直都是計算技術發展領域中的一項非常重要的技術,該技術的特性不僅決定了計算機在處理方面的能力,而且還進一步地決定了計算機在整體性能和應用環境上面的能力,從根本上講,無論是現在還是將來,網絡存儲技術和I/O技術都將制約著計算機技術的應用和發展,尤其是在高端計算的領域。
1988年,Patterson和Gibson等人提出了RAID概念,這是信息存儲研究領域中最重要的一個突破,也是在實現理想信息存儲系統道路上邁出了至關重要的一步,目前,網絡存儲技術和I/O技術發生了革命性的變化,迫使巨大的市場與數據存儲產生了迫切的需求,高性能計算平臺的發展需要高性能、可擴展性、可共享、自適應、海量、高可靠和高可用的I/O和存儲技術,信息爆炸的時代給網絡存儲帶來了前所未有的機遇和挑戰,核心技術的攻克并轉化為應用又推動了信息化,使得比特流到處蔓延,存儲技術的發展是多方面的:存儲介質新材料、新編碼體制、存儲體系結構創新、I/O智能接口技術的突飛猛進,在最近的20年以來,存儲部件性能提高了數百倍,存儲密度提高了數百萬倍,I/O接口正向串行方向發展。
1 國內外技術發展現狀
近年來業界對存儲領域尤為關注,存儲正在走向信息技術的中心,除了美國國家標準以外,如IEEE的存儲系統標準化委員會(Storage SystemStandards Committee, SSSC)正致力于存儲標準的制定與推廣,如存儲系統標準化工作組(StorageSystem Standards Working Group,SSSWG)、海量存儲系統技術委員會(MassStorage Systems TechnicalCommittee, MSSTC)、存儲數據安全(Security in Storage)等組織正在作一些技術調查和標準、規范的制定工作,但是還是落后于市場的要求,人們往往利用事實的標準作為產品的標準,雖然統一系統區域網和存儲區域網的標準已經出現,但適用和規模化的產品還未出現。
網絡存儲及其關鍵技術為各大研究機構和公司如IBM,SUN,HP,EMC,LSILogic,StorageTek、日立數據等實現其技術進步的重要支柱,他們重視該領域研究,引導技術發展,制定了相關總線、接口甚至系統互連接口規范和標準,如光纖通道(fiberchannel,FC)接口、SCSI,SAS,SATA,iSCSI,Infiniband等,并將其首先應用于高尖端的巨型機系統中,充分發揮應有的潛力,利用技術輻射,形成標準化系統,加速其產品化進程,目前較為流行的有:基于存儲區域網的海量存儲系統和基于類似以太網等類型的存儲系統,存儲專業廠家和計算機界的大公司紛紛投入了重兵、巨資和充足的物力加大研發力度,使自己的產品成為未來的標準和龍頭,現在仍然是群雄割據。
而我國從20世紀末已經關注到存儲系統在產業鏈中的重要地位,開展了大規模網絡存儲系統及其關鍵技術的研制,開始在大型網絡存儲系統、廣域存儲系統研究上進行重點支持,并由此產出一批具有國內領先水平的科研成果、專利和產品,開始推向市場,為網絡存儲今后的研究和產業化打下了很好的基礎,但與國際研究水平和產品相比,差距還很大,從工業基礎、技術積累、人才培養、研發模式、特別是產業化途徑都存在著許多困難和障礙,因此,必須抓住機會,兼顧主流技術發展趨勢,加大投入,開發出既符合標準又有發展前途的高端網絡存儲產品,突破關鍵核心技術,增強自主創新能力,提高企業的核心競爭力,提升國家的綜合國力。
2 存儲部件的支撐技術
存儲部件主要技術包括存儲體系結構、智能I/O系統架構、高性能接口技術及多種網絡協議、高性能處理器平臺包括嵌入式系統、系統內部互連總線、高效緩沖管理、虛擬存儲與管理、多機共享與負載平衡、并發數據流控制、傳輸、交換、信息系統容錯和容災、數據安全、數據存儲網格、信息融合及其應用等技術。
存儲的主要硬件系統平臺有:高性能服務器平臺,如EMC,IBM,SUN等采用高性能服務器和超強I/O掛接能力,集成出高可靠的存儲平臺;定制處理器平臺,如HP,Hitach等廠家的產品;嵌入式處理平臺,如LSILogic,EMC廠家的產品,軟件系統平臺有:高可靠實時操作系統,如VxWork等;商用操作系統,如WindowsXP等;嵌入式操作系統,如嵌入式Linux等,控制器采用智能I/0架構,應用ROMB(RAID on Motherboard),ROC(RAID onChip)方式等,如AMCC-3WARE, LSILogic等廠家的產品。
3 存儲部件的系統結構
通常存儲部件采用總線式控制器、主機熱備式雙控制器的HA結構、網絡存儲交換架構、上述3種結構的混合。
3. 1總線式模式
以存儲部件為基礎的中低端的存儲系統采用了嵌入式硬件處理平臺、高可靠的嵌入式軟件系統和總線結構來實現其系統擴展,利用SAS點對點和擴展功能同樣能夠實現上述功能,熊夠提供冗余路徑,保證設備端的高可靠,利用Intel IOP嵌入式系統和SAS總線形成iSCSI-Storage,完成了主機適配、陣列處理、設備接口和緩沖管理等功能,根據SAS總線的Expander可擴展性實現系統的互連和存儲容量的增減。
3. 2服務器平臺HA結構
實現高可靠的存儲部件的另外一種途徑是利用現有服務器平臺和定制服務器平臺實現存儲控制器,IBM DS8000系列和DDN SFA 1000/1000 E諫列是其典型的開發案例。
IBM采用的是傳統對稱體系結構,用強大的P570服務器作為存儲控制器,所以存儲的管理OS運行在控制器內,CPU與內存也在控制器內,其中DS8100用雙2路結構,DS8300用雙4路結構,這一種體系結構是應當是說與現有的中端存儲的結構很相似,DS8000系列采用的這種體系結構在可靠性方面是比HDS的USP系列有所欠缺,另外,因為采用OS的內存來做存儲的Cache,所以Cache size就是頁面大小,默認為4 KB,這樣的Cache Size對小的I/O很適合,但是對大型的I/O操作,過大的Cache大小可能會有額外的管理負擔,雖然在Cache的冗余結構設計上相比于HDS和EMC的全交換模式有劣勢,但P570服務器有兩級Cache,加上主內存形成了3級分層模式,從而與單一的專有Cache結構相比能取得更好的系統性能。
IBM DS8000系列支持兩個虛擬分區,每個分區可以獨立運行DS8000的系統程序,DS8000系列采用PowERPC5+處理器,兩個分區的主內存均由易失內存和非易失內存兩部分構成,結合P570采用的對稱結構,每個分區的處理器既可以訪問自己易失內存也可以訪問另一個分區的非易失內存,以IBM DS8300為例,其前端支持128個4GbpsFC端口、128個FICON端口和64個ESCON,不支持iSCSI端口,DS8300最大支持1024塊磁盤,容量達PB級,DS8700存儲的最低層為HDD組成的陣列,其上為SSD組成的陣列,是層次式存儲的一個典型案例。
DDN SFA 1000/1000 E是S2A推出的一款適應于高性能計算和流媒體視頻應用的高可用的磁盤陣列存儲部件具有雙控制器和主機端口,支持8Gbps光纖通道和IBA的QDR接口,可掛接PB數量級的存儲容量,具有RAID6等功能,方便管理,其控制器采用定制服務器平臺。
圖1 SFA10000 Active/Active RAID Controller結構
3.3 交換結構
高端存儲部件為了保證系統的高可靠、高可用和高性能,通常情況下,均采用交換結構,其負責協議解析和處理的主機適配端口、大容量高速緩存端口和具有陣列功能的設備端口均掛接在冗余路徑的Crossbar上,實現系統和數據的互連互通。
Symmetrix DMX系列和ETERNUS8000系列采用了這種設計思想,EMC的Symmetrix DMX-3于2005年發布,并在2007年7月發布了其性能優化版本Symmetrix DMX-4,其設計核心與HDS的USP系列類似,也是以Cache為核心,所不同的是Symmetrix DMX-3和DMX-4采用鏡像Cache矩陣直連的方式,DMX-4的處理器采用PowERPC,支持64個4 GBps FC接口、48個FICON接口和64個ESCON接口,前端帶寬為256GBps,后端帶寬為256GBps,有效帶寬為32GBps。
ETERNUS8000系列共有4個模型,分別為Mode1700,900,1100,2100,所支持的存儲容量也依次增加,其中Mode12100滿配置容量超過1PB,ETERNUS8000系列中除Mode1700以外,均采用前端控制器交換互連,前端控制器與后端存儲FC交換互連的結構,ETERNUS8000的Mode12100支持128個4GbpsFC接口、64個iSCSI接口,并支持多種RAID級別,包括RAID0,1,5,6等,支持基于Server的Failover軟件,最大支持2760塊磁盤,最大容量達PB級。
4 一種安全存儲部件的設計
4.1存儲部件設計
4.1.1硬件組成
如圖2所示,系統的硬件主要包括CPU中心硬件、磁盤通道控制器硬件
和連接到PCI-E Switch的功能硬件,具體如下:
圖2 存儲部件硬件
1)CPU中心硬件
主要由IOP81348 CPU,DDR內存、CPLD,LCD控制器、CF接口、Flash芯片以及通過I2C連接的風扇/電源控制器等組成,CPU內部提供RAIDS/6硬件XOR引擎,8條SAS鏈路、一個PCI-E Root Complex, CPLD主要監控和控制主板的不同功能,支持調試LED、蜂鳴器、CF卡、LCD以及后備電池等,CPU中心硬件基于IOP81348結構進行開發。
2)磁盤通道控制器硬件
系統采用了CPU集成的8條SAS鏈路,磁盤通道SAS協議控制與管理由CPU內部邏輯實現,8條SAS鏈路分成兩組,每組帶寬為X4,每組通過一個SAS擴展器實現與8塊SAS/SATA磁盤的互連,兩組可以連接16塊磁盤,SAS擴展器采用PMC-sierra公司PM8083 SXP SAS擴展器芯片,提供12 X 3 Gbps的擴展功能,這一部分基于PM8083擴展器芯片進行硬件設計與開發,功能較為獨立。
3)連接到PCI-E Switch的功能硬件
主要包括PCI-E SWITCH、數據加密模塊、數據解密模塊、千兆網卡模塊。
OI PCI-E SWITCH,系統CPU集成一個PCI-E1. 0的X8的Root Complex,通過PLX公司的PEX8632芯片實現PCI-E交換功能,讓所有端點設備共享X8的帶寬,當前,將PEX8632分成5個端口,上游X8端口直接連接到81348CPU的RootComplex;下游有4個端口包括兩個X8端口和兩個X4端口。
②數據加密模塊,實現在寫入磁盤之前將數據進行硬件加密的功能,將數據加密卡的所有硬件邏輯全部集成到主板中,繼續采用PCI-E做為接口,該模塊將占用PCI-E Switch的一個下游X8端口。
③數據解密模塊,實現在讀出磁盤數據之后將數據進行硬件解密的功能,將一期數據解密卡的‘所有硬件邏輯全部集成到主板中,繼續采用PCI-E接口,該模塊將占用PCI-E Switch的一個下游X8端口。
④千兆網卡模塊/HCA卡,采用Intel 82575千兆以太網控制器作為iSCSI主機端口,82575芯片提供兩個千兆以太網端口,該模塊將占用PCI-ESwitch的一個下游X4端口。
4.1.2軟件組成
軟件按功能分成系統引導固件與操作系統、磁盤陣列功能軟件等3個部分。
1.系統引導固件與操作系統:系統加電首先執行的一段微碼(Redboot),有些類似PC機的BIOS,主要完成系統硬件的自檢和資源分配,包括CPU,平臺、MMU的初始化、中斷向量和異常的初始化、輸入輸出設備初始化等,最后加載操作系統并把訪問控制交給操作系統,目前RedBoot除了支持引導功能外,還提供調試、Flash燒寫,支持串口、網絡下載,操作系統采用商用嵌入式Linux,在此操作系統中還將增加盤陣系統管理所依賴的動態庫和命令包,當前操作系統壓縮存于Flash中,RedBoot引導完成后,CPU執行操作系統壓縮文件,自動解壓到內存中后,操作系統開始執行。
2.磁盤陣列功能軟件:實現磁盤陣列所有存儲、加密、管理等功能的軟件模塊。
磁盤陣列功能軟件如圖3所示,主要由iSCSI/HCA接口模塊、數據加解密、備份容災、LVM卷管理、RAID功能模塊、磁盤管理模塊、中央管理程序、系統監控與管理等部分組成。
圖3 軟件組成結構圖
1)中央管理程序:負責整個存儲系統的數據流與任務的組織、協調,包括SCSI命令的隊列管理,數據傳輸控制、數據加解密等調度管理,以及數據緩存管理等。
2)iSCSI接口模塊:遵循iSCSI協議規范,拆卸、封裝iSCSI包,接收、分析iSCSI命令,完成數據的傳輸。
3)數據加解密模塊:數據加密、解密硬件卡的驅動和管理程序,包括數據加密、數據解密的功能實現、密鑰管理以及內核態的API接口實現等。
4)備份容災:包括快照、容災和本地備份恢復等功能,其中,快照建立在LVM卷基礎上,采用PIT(時間點)和COW(寫時拷貝)技術,減少了常規備份在空間和時間上開銷。
5)LVM卷管理:建立在RAID塊設備基礎之上,主要實現卷的靈活配置與管理,容量動態刪減等。
6)RAID功能模塊:實現各種RAID功能的管理,包括數據的組織與分條、校驗數據的生成、RAID1,3,5,6數據的初始化、重構(Rebuild)、同步、基于ADMA引擎的XOR管理等,該模塊將底層的一個或多個SCSI塊設備組建成一個RAID塊設備。
7)磁盤管理模塊:主要是CPU內部集成的SAS控制器SCSI驅動程序isc813xxx,通過該驅動模塊實現SAS/SATA磁盤管理、磁盤監測以及介質掃描等功能。
8)系統配置與管理:負責整個系統的配置與管理,包括各個模塊的參數動態配置,邏輯磁盤、物理磁盤的管理與監控,系統外圍環境的監控、WEB服務器、監控管理C/S代理等。
4.2軟件數據流程
圖4為存儲系統在加密功能使能情況下的數據流程圖,流程主要包括以下幾個部分:
基于iSCSI協議數據以明文的形式從網絡中接收或發送到網絡中,iSCSI數據接收與發送的過程中包括iSCSI數據包的分組與封裝。
從iSCSI主機端口寫入的數據存入到明文寫Buffer中,需要讀入的數據在發送前存入在明文讀Buffer中,兩種Buffer由中央管理程序統一管理,Buffer中數據均以明文形式存在。
圖4 數據流程圖
緩存管理程序使用緩存淘汰算法管理Buffer,回寫數據第一步操作是將回寫的數據進行數據加密后并存入到密文寫Buffer,加密后的寫數據經過LVM, RAID兩個虛擬設備層后最終寫入到物理磁盤中,其中寫磁盤操作由RAID卡完成,物理磁盤中存放的數據均是密文。
從物理磁盤中讀出數據,經過RAID, LVM虛擬設備層的數據拼接寫入到密文讀Buffer,再經過數據解密將明文數據存入到明文讀Buffer,供主機端口進行數據發送。
在加密功能禁用的情況下,系統將不提供密文Buffer,所有數據都存入到明文Buffer中,并直接流向LVM或直接從LVM中流出。
RAID塊設備由RAID功能模塊程序實現,以MI)塊設備形式存在,所有操作需要系統的CPU管理。
RAID塊設備底層為SAS磁盤控制器管理,以SCSI塊設備形式存在物理磁盤。
4. 3數據加解密
數據加密有兩個關鍵因素,一是數據量大,二是傳輸速度快,結合盤陣的硬件分析,比較靈活的處理方式采用PCI-E加密卡,具有擴展性,接口適應高速處理的需要,目前采用基于PCI-E X 4總線,總線接口速度(DMA方式)為5 Gbps。
1)硬件組成
為了實現更高的處理速度,密碼算法需要進行適當的擴展,采用硬件的方式如FPGA或專用芯片等;處理器用來管理密碼算法和密鑰、以及與盤陣處理軟件進行交互協議處理;密鑰接口可以支持密鑰的證書管理等相關操作,還設計密鑰銷毀開關,以備應急之需,如圖5所示:
圖5 加密硬件組成
2)軟件組成
為了提高處理速度,數據包的封裝需要盡可能簡單,有效數據占有協議內容的絕大部分,一次傳送的有效數據至少在2KB以上;操作方式定義是為了給加密卡置初態,使加密卡根據應用的需求完成對數據的處理;狀態查詢確保對單塊加密卡進行正確的操作或對多塊加密卡實施有效的調度,保證任務的均勻分配和監管設備的正常運行,如圖6所示。
3)密碼算法
密碼算法采用參數分割方式,以適應不同部門的應用需求;密碼算法具有可擴展實現。
4)加密卡功能
系統能夠實現數據的加解密;支持密鑰的證書管理并適應其他管理方式;支持應用對加密卡的初始化;具有密鑰的銷毀功能。
圖6 加密軟件組成
5 結束語
信息包含著價值,是社會的財富,有了高可靠性、高可用性、高性能、安全可擴展的海量存儲系統,將極大的保護社會的信息和社會的財富,促進社會的進步,“存儲你的信息就是存儲你的未來”,這充分表明了信息存儲在當今乃至未來社會中所起的舉足輕重的作用,信息存儲市場廣闊,目前網絡存儲和技術發展迅猛,如IEEE SSSWG,T10 Technical Committee,SNIA, IETF等組織正逐步制定了較為齊全的參考模型、幾乎覆蓋了當今所有的I/ O存儲接口標準協議和網絡化存儲的體系架構,業界對網絡存儲主要開展如下研究:高效率、智能化信息存儲生命周期管理、虛擬化網絡存儲、對稱/非對稱異構平臺存儲網絡體系結構、基于數據穩健網絡存儲共享機制和容災機制、網絡存儲安全和可信存儲標準、下一代網絡存儲和管理標準、網絡存儲服務質量、無線存儲網絡、數據網格、云存儲等,在我國信息化征途中,只有真正掌握可持續發展并有自主知識產權的網絡存儲產品,才使保障信息安全和數據可信存儲有了堅實的基礎,我國是一個存儲部件和系統的消費大國,在未來幾年中,我國信息存儲需求規模將以60.6%的年復合增長率快速增長,金融、電信、電力、石油、遙感、國家安全機構等戰略部門以及教育、醫療等社會服務機構均需要可以支撐海量數據信息的處理、分析和保存的高端存儲系統和平臺,我國正在信息化征途上邁進,政府、銀行、電信、醫療、教學、傳媒、石油、地質、氣象、科學研究、國防乃至日常生活與信息存儲與服務有不解之緣,急劇增長的信息迫切需要海量存儲與服務系統,迫切需要有自主知識產權、安全可靠的網絡存儲系統。
轉載請注明出處:拓步ERP資訊網http://m.hanmeixuan.com/
本文標題:安全存儲部件研究