數(shù)據(jù)完整性是數(shù)據(jù)存儲(chǔ)系統(tǒng)中關(guān)鍵的元素之一,對(duì)于企業(yè)而言,不一致的數(shù)據(jù)可能導(dǎo)致錯(cuò)誤的業(yè)務(wù)決策,因此保障數(shù)據(jù)的完整性與一致性至關(guān)重要。
一、靜默數(shù)據(jù)錯(cuò)誤
在數(shù)據(jù)存儲(chǔ)系統(tǒng)中,數(shù)據(jù)從主機(jī)端生成直至寫入SSD NAND中,會(huì)經(jīng)過(guò)多個(gè)部件、多種傳輸通道和復(fù)雜的軟件處理過(guò)程,其中任意一個(gè)環(huán)節(jié)發(fā)生錯(cuò)誤都可能會(huì)導(dǎo)致數(shù)據(jù)錯(cuò)誤。但是這種錯(cuò)誤一般無(wú)法被立即檢測(cè)出來(lái),而是后續(xù)通過(guò)應(yīng)用在訪問(wèn)數(shù)據(jù)過(guò)程中才會(huì)發(fā)現(xiàn),這種情況被稱為靜默數(shù)據(jù)破壞(Silent Data Corruption)。
靜默數(shù)據(jù)錯(cuò)誤問(wèn)題是存在存儲(chǔ)系統(tǒng)中最難解決的數(shù)據(jù)一致性問(wèn)題之一。在數(shù)據(jù)通路傳輸過(guò)程中,每百萬(wàn)億(10^13)比特中就會(huì)有概率出現(xiàn)bit錯(cuò)誤,而鏈路傳輸大多采用CRC進(jìn)行檢錯(cuò),CRC存在碰撞概率導(dǎo)致bit錯(cuò)誤無(wú)法發(fā)現(xiàn);在SSD內(nèi)部數(shù)據(jù)傳遞過(guò)程中,大部分路徑會(huì)經(jīng)過(guò)SRAM,SRAM存在bit翻轉(zhuǎn)概率,控制器一般采用ECC+CRC對(duì)路徑保護(hù),但仍然無(wú)法避免bit靜默錯(cuò)誤(極低概率)。
對(duì)于數(shù)據(jù)中心而言,維護(hù)數(shù)據(jù)安全至關(guān)重要。發(fā)生靜默錯(cuò)誤對(duì)應(yīng)用層有很高的風(fēng)險(xiǎn),如果應(yīng)用系統(tǒng)可靠性設(shè)計(jì)不完善,一旦出現(xiàn)靜默錯(cuò)誤,會(huì)存在數(shù)據(jù)損壞且不可恢復(fù)的可能,因此支持DIF/DIX特性端到端的數(shù)據(jù)鏈路保護(hù)對(duì)SSD部件及系統(tǒng)層都十分重要。
二、NVMe SSD端到端保護(hù)
為確保主機(jī)與閃存之間數(shù)據(jù)的完整性,NVMe SSD提供了一個(gè)端到端的功能,即主機(jī)寫入閃存的數(shù)據(jù)與最初主機(jī)寫的數(shù)據(jù)必須一致,以及主機(jī)讀到的數(shù)據(jù)與最初從閃存上讀上來(lái)的數(shù)據(jù)也一致。
在OCP Clould Spec對(duì)端到端的需求定義中,要求每一段傳輸路徑都應(yīng)有糾/檢錯(cuò)算法,降低數(shù)據(jù)傳輸過(guò)程中每一個(gè)環(huán)節(jié)出錯(cuò)的可能,規(guī)避靜默錯(cuò)誤的發(fā)生。如PCIe 每個(gè)TLP會(huì)通過(guò)ECRC(End-to-end CRC)進(jìn)行校驗(yàn)、RAM有ECC保護(hù)、Flash接口有 RAID 保護(hù),Scrambler 增加擾碼以及CRC編解碼保護(hù)和LDPC重讀保護(hù)。
NVMe則是在控制器內(nèi)添加保護(hù)信息(PI)來(lái)檢驗(yàn)數(shù)據(jù)一致性,這部分?jǐn)?shù)據(jù)一般存放在DDR中(DDR有ECC保護(hù))。具體則是給用戶邏輯塊(Logical Block)通過(guò)增加額外的8字節(jié)保護(hù)信息(PI),或者由主機(jī)軟件添加≥8字節(jié)的元數(shù)據(jù)(Metadata),支持DIF/DIX模式,使得控制器和/或主機(jī)軟件可以校驗(yàn)用戶數(shù)據(jù)邏輯塊的數(shù)據(jù)完整性和一致性。
三、什么是PI?
在端到端數(shù)據(jù)保護(hù)中,PI的使用尤為重要。PI全稱Protection Information,即保護(hù)信息,是元數(shù)據(jù)的一種。
NVMe協(xié)議里定義SSD控制器可以支持給每個(gè)邏輯塊(也就是用戶數(shù)據(jù))增加額外的元數(shù)據(jù),以及主機(jī)如何使用元數(shù)據(jù)區(qū)域自定義(如分布式文件系統(tǒng)的元數(shù)據(jù)),元數(shù)據(jù)最常見的用途之一是傳遞PI端到端保護(hù)信息(end-to-end protection information)。
PI相當(dāng)于邏輯塊數(shù)據(jù)的保鏢,有DIF和DIX兩種數(shù)據(jù)保護(hù)機(jī)制,兩者主要區(qū)別是 PI 信息的位置不同。具體選擇哪種格式,要根據(jù)應(yīng)用場(chǎng)景的具體需求。
DIF( Data Integrity Field ):保證HBA 、陣列和硬盤的數(shù)據(jù)完整性。
DIF實(shí)現(xiàn)的PI
DIX( Data Integrity Extensions ): 保證應(yīng)用、HBA卡的數(shù)據(jù)完整性。
DIX實(shí)現(xiàn)的PI
·PI信息的處理
Protection Information Field(PRINFO) 包括PRACT(Protection Information Action)和PRCHK(Protection Information Check) 字段。PRACT指明了PI信息生成的機(jī)制,PRCHK指明了controller收到包時(shí)檢查的PI信息。
PRACT
=1時(shí),
MD = 8B, SSD controller生成新的PI替代host傳入的PI,并將其寫入NAND;
MD>8B,host生成的PI直接傳入SSD,替換MD的前8或者后8字節(jié)(這里還需要注意kernel是否支持)。
=0時(shí), controller獲取上層應(yīng)用下發(fā)的PI信息,將檢查PI信息并寫入NAND。
PRCHK
Bit2=1,SSD在收到packet時(shí),檢查CRC;
Bit1=1,SSD在收到packet時(shí),檢查App Tag;
Bit0=1,SSD在收到packet時(shí),檢查Reference Tag。
四、憶聯(lián)SSD端到端保護(hù)方案
作為一家領(lǐng)先的存儲(chǔ)廠商,憶聯(lián)長(zhǎng)期以保障用戶數(shù)據(jù)安全作為產(chǎn)品的核心基礎(chǔ),旗下企業(yè)級(jí)固態(tài)硬盤(ESSD)與數(shù)據(jù)中心級(jí)固態(tài)硬盤(DSSD)均支持DIF/DIX特性,以此提升硬盤的全鏈路數(shù)據(jù)保護(hù)能力。
·延伸至主機(jī)系統(tǒng)、應(yīng)用的端到端保護(hù)
憶聯(lián)SSD支持多種DIF配置,滿足512+8、4K+8、4K+64字節(jié)多種情況的數(shù)據(jù)和元數(shù)據(jù)(含PI)的存儲(chǔ)要求,支持從應(yīng)用到Flash的端到端數(shù)據(jù)保護(hù),并能有效杜絕data replacement故障發(fā)生的可能。
·端到端冗余校驗(yàn),提升數(shù)據(jù)可靠
憶聯(lián)SSD通過(guò)保護(hù)整個(gè)傳輸路徑中的數(shù)據(jù)來(lái)保障數(shù)據(jù)的完整性。在DDR內(nèi)存上,采用ECC和CRC來(lái)防止DDR內(nèi)存異常導(dǎo)致的數(shù)據(jù)錯(cuò)誤和篡改;在NAND flash上,采用LDPC和CRC來(lái)防止由于NAND flash上的異常而導(dǎo)致的數(shù)據(jù)丟失;在DIE內(nèi),采用 XOR 算法來(lái)防止由于 DIE 或隨機(jī)故障造成的數(shù)據(jù)丟失。
·應(yīng)用級(jí)數(shù)據(jù)冗余校驗(yàn) ,且業(yè)務(wù)性能不受影響
憶聯(lián)SSD還通過(guò)支持DIF、DIX兩種傳輸方式,不僅在盤內(nèi)提供DPP數(shù)據(jù)路徑保護(hù),更能夠與系統(tǒng)配合,實(shí)現(xiàn)端到端的保護(hù),確保從系統(tǒng)到盤片整個(gè)通路的數(shù)據(jù)安全,從而為多種極端場(chǎng)景下系統(tǒng)的正常運(yùn)維提供雙重保護(hù)。
數(shù)據(jù)安全一直是信息技術(shù)中的一個(gè)重要問(wèn)題。伴隨著數(shù)字化轉(zhuǎn)型進(jìn)程的不斷深入,風(fēng)險(xiǎn)也隨之而來(lái),企業(yè)數(shù)據(jù)的存儲(chǔ)安全問(wèn)題也越來(lái)越突出。憶聯(lián)憑借在存儲(chǔ)領(lǐng)域多年的積累,為用戶提供極致體驗(yàn)的同時(shí),更能為企業(yè)數(shù)據(jù)存儲(chǔ)做好堅(jiān)實(shí)的保障。
審核編輯:湯梓紅
-
控制器
+關(guān)注
關(guān)注
112文章
16367瀏覽量
178108 -
SSD
+關(guān)注
關(guān)注
21文章
2862瀏覽量
117432 -
數(shù)據(jù)存儲(chǔ)
+關(guān)注
關(guān)注
5文章
971瀏覽量
50911 -
存儲(chǔ)系統(tǒng)
+關(guān)注
關(guān)注
2文章
410瀏覽量
40864 -
nvme
+關(guān)注
關(guān)注
0文章
221瀏覽量
22642
原文標(biāo)題:憶聯(lián)SSD端到端數(shù)據(jù)保護(hù)技術(shù)——企業(yè)關(guān)鍵業(yè)務(wù)的“守護(hù)者”
文章出處:【微信號(hào):UnionMemory憶聯(lián),微信公眾號(hào):UnionMemory憶聯(lián)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論