日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
談?wù)勱P(guān)于NVMe和NVMe-oF的那些事

談?wù)勱P(guān)于NVMe和NVMe-oF的那些事

作者:架構(gòu)師技術(shù)聯(lián)盟 2018-12-26 13:22:05

云計(jì)算

虛擬化 NVMe傳輸是一種抽象協(xié)議層,旨在提供可靠的NVMe命令和數(shù)據(jù)傳輸。為了支持?jǐn)?shù)據(jù)中心的網(wǎng)絡(luò)存儲(chǔ),通過(guò)NVMe over Fabric實(shí)現(xiàn)NVMe標(biāo)準(zhǔn)在PCIe總線(xiàn)上的擴(kuò)展,以此來(lái)挑戰(zhàn)SCSI在SAN中的統(tǒng)治地位。

創(chuàng)新互聯(lián)建站專(zhuān)業(yè)為企業(yè)提供臨淄網(wǎng)站建設(shè)、臨淄做網(wǎng)站、臨淄網(wǎng)站設(shè)計(jì)、臨淄網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、臨淄企業(yè)網(wǎng)站模板建站服務(wù),十多年臨淄做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

 NVMe傳輸是一種抽象協(xié)議層,旨在提供可靠的NVMe命令和數(shù)據(jù)傳輸。為了支持?jǐn)?shù)據(jù)中心的網(wǎng)絡(luò)存儲(chǔ),通過(guò)NVMe over Fabric實(shí)現(xiàn)NVMe標(biāo)準(zhǔn)在PCIe總線(xiàn)上的擴(kuò)展,以此來(lái)挑戰(zhàn)SCSI在SAN中的統(tǒng)治地位。NVMe over Fabric支持把NVMe映射到多個(gè)Fabrics傳輸選項(xiàng),主要包括FC、InfiniBand、RoCE v2、iWARP和TCP。

然而,在這些Fabrics選項(xiàng)協(xié)議中,我們常常認(rèn)為InfiniBand、RoCE v2(可路由的RoCE)、iWARP是理想的Fabric,其原因在于它們支持RDMA。

  • InfiniBand(IB):從一開(kāi)始就支持RDMA的新一代網(wǎng)絡(luò)協(xié)議。由于這是一種新的網(wǎng)絡(luò)技術(shù),因此需要支持該技術(shù)的網(wǎng)卡和交換機(jī)。
  • RDMA融合以太網(wǎng)(RoCE):一種允許通過(guò)以太網(wǎng)進(jìn)行RDMA的網(wǎng)絡(luò)協(xié)議。其較低的網(wǎng)絡(luò)頭是以太網(wǎng)頭,其上網(wǎng)絡(luò)頭(包括數(shù)據(jù))是InfiniBand頭。這允許在標(biāo)準(zhǔn)以太網(wǎng)基礎(chǔ)架構(gòu)(交換機(jī))上使用RDMA。只有NIC應(yīng)該是特殊的,并支持RoCE。
  • 互聯(lián)網(wǎng)廣域RDMA協(xié)議(iWARP):允許通過(guò)TCP執(zhí)行RDMA的網(wǎng)絡(luò)協(xié)議。在IB和RoCE中存在功能,iWARP不支持這些功能。這允許在標(biāo)準(zhǔn)以太網(wǎng)基礎(chǔ)架構(gòu)(交換機(jī))上使用RDMA。只有NIC應(yīng)該是特殊的,并支持iWARP(如果使用CPU卸載),否則所有iWARP堆棧都可以在SW中實(shí)現(xiàn),并且丟失了大部分的RDMA性能優(yōu)勢(shì)。

那么為什么支持RDMA在選擇NVMe over Fabric時(shí)就具有先天優(yōu)勢(shì)?這要從RDMA的功能和優(yōu)勢(shì)說(shuō)起。

RDMA是一種新的內(nèi)存訪(fǎng)問(wèn)技術(shù),RDMA讓計(jì)算機(jī)可以直接存取其他計(jì)算機(jī)的內(nèi)存,而不需要經(jīng)過(guò)處理器耗時(shí)的處理。RDMA將數(shù)據(jù)從一個(gè)系統(tǒng)快速移動(dòng)到遠(yuǎn)程系統(tǒng)存儲(chǔ)器中,而不對(duì)操作系統(tǒng)造成任何影響。RDMA技術(shù)的原理及其與TCP/IP架構(gòu)的對(duì)比如下圖所示。

因此,RDMA可以簡(jiǎn)單理解為利用相關(guān)的硬件和網(wǎng)絡(luò)技術(shù),服務(wù)器1的網(wǎng)卡可以直接讀寫(xiě)服務(wù)器2的內(nèi)存,最終達(dá)到高帶寬、低延遲和低資源利用率的效果。如下圖所示,應(yīng)用程序不需要參與數(shù)據(jù)傳輸過(guò)程,只需要指定內(nèi)存讀寫(xiě)地址,開(kāi)啟傳輸并等待傳輸完成即可。RDMA的主要優(yōu)勢(shì)總結(jié)如下:

1) Zero-Copy:數(shù)據(jù)不需要在網(wǎng)絡(luò)協(xié)議棧的各個(gè)層之間來(lái)回拷貝,這縮短了數(shù)據(jù)流路徑。

2) Kernel-Bypass:應(yīng)用直接操作設(shè)備接口,不再經(jīng)過(guò)系統(tǒng)調(diào)用切換到內(nèi)核態(tài),沒(méi)有內(nèi)核切換開(kāi)銷(xiāo)。

3) None-CPU:數(shù)據(jù)傳輸無(wú)須CPU參與,完全由網(wǎng)卡搞定,無(wú)需再做發(fā)包收包中斷處理,不耗費(fèi)CPU資源。

這么多優(yōu)勢(shì)總結(jié)起來(lái)就是提高處理效率,減低時(shí)延。那如果其他網(wǎng)絡(luò)Fabric可以通過(guò)類(lèi)似RDMA的技術(shù)滿(mǎn)足NVMe over Fabric的效率和時(shí)延等要求,是否也可以作為NVMe overFabric的Fabric呢?下面再看看NVMe-oF和NVMe的區(qū)別。

NVMe-oF和NVMe之間的主要區(qū)別是傳輸命令的機(jī)制。NVMe通過(guò)外圍組件互連Express(PCIe)接口協(xié)議將請(qǐng)求和響應(yīng)映射到主機(jī)中的共享內(nèi)存。NVMe-oF使用基于消息的模型通過(guò)網(wǎng)絡(luò)在主機(jī)和目標(biāo)存儲(chǔ)設(shè)備之間發(fā)送請(qǐng)求和響應(yīng)。

NVMe-oF替代PCIe來(lái)擴(kuò)展NVMe主機(jī)和NVMe存儲(chǔ)子系統(tǒng)進(jìn)行通信的距離。與使用本地主機(jī)的PCIe 總線(xiàn)的NVMe存儲(chǔ)設(shè)備的延遲相比,NVMe-oF的最初設(shè)計(jì)目標(biāo)是在通過(guò)合適的網(wǎng)絡(luò)結(jié)構(gòu)連接的NVMe主機(jī)和NVMe存儲(chǔ)目標(biāo)之間添加不超過(guò)10 微秒的延遲。

此外,在技術(shù)細(xì)節(jié)和工作機(jī)制上兩者有很大不同,NVMe-oF是在NVMe(NVMe over PCIe)的基礎(chǔ)上擴(kuò)展和完善起來(lái)的,具體差異點(diǎn)如下:

  • 命名機(jī)制在兼容NVMe over PCIe的基礎(chǔ)上做了擴(kuò)展,例如:引入了SUBNQN等。
  • 術(shù)語(yǔ)上的變化,使用Capsule、Response Capsule來(lái)表示傳輸?shù)膱?bào)文
  • 擴(kuò)展了Scatter Gather Lists (SGLs)支持In Capsule Data傳輸。此前NVMe over PCIe中的SGL不支持In Capsule Data傳輸。
  • 增加了Discovery和Connect機(jī)制,用于發(fā)現(xiàn)和連接拓?fù)浣Y(jié)構(gòu)中的NVM Subsystem
  • 在Connection機(jī)制中增加了創(chuàng)建Queue的機(jī)制,刪除了NVMe over PCIe中的創(chuàng)建和刪除Queue的命令。
  • 在NVMe-oF中不存在PCIe架構(gòu)下的中斷機(jī)制。
  • NVMe-oF不支持CQ的流控,所以每個(gè)隊(duì)列的OutStanding Capsule數(shù)量不能大于對(duì)應(yīng)CQ的Entry的數(shù)量,從而避免CQ被OverRun
  • NVMe-oF僅支持SGL,NVMe over PCIe 支持SGL/PRP

先談?wù)劜┛埔恢蓖瞥绲腇C Fabric,F(xiàn)C-NVMe將NVMe命令集簡(jiǎn)化為基本的FCP指令。由于光纖通道專(zhuān)為存儲(chǔ)流量而設(shè)計(jì),因此系統(tǒng)中內(nèi)置了諸如發(fā)現(xiàn),管理和設(shè)備端到端驗(yàn)證等功能。

光纖通道是面向NVMe overFabrics(NVMe-oF)的Fabric傳輸選項(xiàng),由NVMExpress Inc.(一家擁有100多家成員技術(shù)公司的非營(yíng)利組織)開(kāi)發(fā)的規(guī)范。其他NVMe傳輸選項(xiàng)包括以太網(wǎng)和InfiniBand上的遠(yuǎn)程直接內(nèi)存訪(fǎng)問(wèn)(RDMA)。NVM Express Inc.于2016年6月5日發(fā)布了1.0版NVMe-oF。

國(guó)際信息技術(shù)標(biāo)準(zhǔn)委員會(huì)(INCITS)的T11委員會(huì)定義了一種幀格式和映射協(xié)議,將NVMe-oF應(yīng)用到光纖通道。T11委員會(huì)于2017年8月完成了FC-NVMe標(biāo)準(zhǔn)的***版,并將其提交給INCITS出版。

FC協(xié)議(FCP)允許上層傳輸協(xié)議,如NVMe,小型計(jì)算機(jī)系統(tǒng)接口(SCSI)和IBM專(zhuān)有光纖連接(FICON)的映射,以實(shí)現(xiàn)主機(jī)和外圍目標(biāo)存儲(chǔ)設(shè)備或系統(tǒng)之間的數(shù)據(jù)和命令傳輸。

在大規(guī)?;趬K閃存的存儲(chǔ)環(huán)境最有可能采用NVMeover FC。FC-NVMe光纖通道提供NVMe-oF結(jié)構(gòu)、可預(yù)測(cè)性和可靠性特性等與給SCSI提供的相同,另外,NVMe-oF流量和傳統(tǒng)的基于SCSI的流量可以在同一FC結(jié)構(gòu)上同時(shí)運(yùn)行。

基于FC標(biāo)準(zhǔn)的NVMe定義了FC-NVMe協(xié)議層。NVMe over Fabrics規(guī)范定義了NVMe-oF協(xié)議層。NVMe規(guī)范定義了NVMe主機(jī)軟件和NVM子系統(tǒng)協(xié)議層。

要求必須支持基于光纖通道的NVMe才能發(fā)揮潛在優(yōu)勢(shì)的基礎(chǔ)架構(gòu)組件,包括存儲(chǔ)操作系統(tǒng)(OS)和網(wǎng)絡(luò)適配器卡。FC存儲(chǔ)系統(tǒng)供應(yīng)商必須讓其產(chǎn)品符合FC-NVMe的要求。目前支持FC-NVMe的主機(jī)總線(xiàn)適配器(HBA)的供應(yīng)商包括Broadcom和Cavium。Broadcom和思科是主要的FC交換機(jī)供應(yīng)商,目前博科的Gen 6代FC交換機(jī)已經(jīng)支持NVMe-oF協(xié)議。

NVMe over fabric白皮書(shū)明確列出了光纖通道作為一個(gè)NVMeover Fabrics選擇,也描述了理想的Fabrics需要具備可靠的、以Credit為基礎(chǔ)的流量控制和交付機(jī)制。然而,基于Credit的流程控制機(jī)制是FC、PCIe傳輸原生能力。在NVMe的白皮書(shū)中并沒(méi)有把RDMA列為“理想”NVMe overFabric的重要屬性,也就是說(shuō)RDMA除了只是一種實(shí)現(xiàn)NVMeFabric的方法外,沒(méi)有什么特別的。

FC也提供零拷貝(Zero-Copy)技術(shù)支持DMA數(shù)據(jù)傳輸。RDMA通過(guò)從本地服務(wù)器傳遞Scatter-Gather List到遠(yuǎn)程服務(wù)器有效地將本地內(nèi)存與遠(yuǎn)程服務(wù)器共享,使遠(yuǎn)程服務(wù)器可以直接讀取或?qū)懭氡镜胤?wù)器的內(nèi)存。更多關(guān)于NVMe over FC的內(nèi)容,請(qǐng)參考“基于FC的NVMe或FC-NVMe標(biāo)準(zhǔn)”和“Brocade為何認(rèn)為FC是***的Fabric”。

接下來(lái),談?wù)劵赗DMA技術(shù)實(shí)現(xiàn)NVMe over fabric的Fabric技術(shù),RDMA技術(shù)最早出現(xiàn)在Infiniband網(wǎng)絡(luò),用于HPC高性能計(jì)算集群的互聯(lián)?;贗nfiniBand的NVMe傾向于吸引需要極高帶寬和低延遲的高性能計(jì)算工作負(fù)載。InfiniBand網(wǎng)絡(luò)通常用于后端存儲(chǔ)系統(tǒng)內(nèi)的通信,而不是主機(jī)到存儲(chǔ)器的通信。與FC一樣,InfiniBand是一個(gè)需要特殊硬件的無(wú)損網(wǎng)絡(luò),它具有諸如流量和擁塞控制以及服務(wù)質(zhì)量(QoS)等優(yōu)點(diǎn)。但與FC不同的是,InfiniBand缺少發(fā)現(xiàn)服務(wù)自動(dòng)將節(jié)點(diǎn)添加到結(jié)構(gòu)中。關(guān)于更多RDMA知識(shí),請(qǐng)讀者參考文章“RDMA技術(shù)原理分析、主流實(shí)現(xiàn)對(duì)比和解析”。

***,談?wù)凬VMe/TCP協(xié)議選項(xiàng)(暫記為NVMe over TCP),在幾年前,NVMe Express組織計(jì)劃支持傳輸控制協(xié)議(TCP)的傳輸選項(xiàng)(不同于基于TCP的iWARP)。近日NVM Express Inc.歷時(shí)16個(gè)月發(fā)布了NVMe over TCP***個(gè)版本。該Fabric標(biāo)準(zhǔn)的出現(xiàn)已經(jīng)回答了是否滿(mǎn)足承載NVMe協(xié)議標(biāo)準(zhǔn)的Fabric即可作為NVMe over fabric的Fabric的問(wèn)題。

但是TCP 協(xié)議會(huì)帶來(lái)遠(yuǎn)高于本地PCIe訪(fǎng)問(wèn)的網(wǎng)絡(luò)延遲,使得NVMe協(xié)議低延遲的目標(biāo)遭到破壞。在沒(méi)有采用RDMA技術(shù)的前提下,NVMe/TCP是采用什么技術(shù)達(dá)到類(lèi)似RDMA技術(shù)的傳輸效果呢?下面引用楊子夜(Intel存儲(chǔ)軟件工程師)觀點(diǎn),談?wù)劥偈沽薔VMe/TCP的誕生幾個(gè)技術(shù)原因:

1. NVMe虛擬化的出現(xiàn):在NVMe虛擬化實(shí)現(xiàn)的前提下,NVMe-oF target那端并不一定需要真實(shí)的NVMe 設(shè)備,可以是由分布式系統(tǒng)抽象虛擬出來(lái)的一個(gè)虛擬NVMe 設(shè)備,為此未必繼承了物理NVMe設(shè)備的高性能的屬性 。那么在這一前提下,使用低速的TCP協(xié)議也未嘗不可。

2. 向后兼容性:NVMe-oF協(xié)議,在某種程度上希望替換掉iSCSI 協(xié)議(iSCSI最初的協(xié)議是RFC3720,有很多擴(kuò)展)。iSCSI協(xié)議只可以在以太網(wǎng)上運(yùn)行,對(duì)于網(wǎng)卡沒(méi)有太多需求,并不需要網(wǎng)卡一定支持RDMA。當(dāng)然如果能支持RDMA, 則可以使用iSER協(xié)議,進(jìn)行數(shù)據(jù)傳輸?shù)腃PU 資源卸載。 但是NVMe-oF協(xié)議一開(kāi)始沒(méi)有TCP的支持。于是當(dāng)用戶(hù)從iSCSI向NVMe-oF 轉(zhuǎn)型的時(shí)候,很多已有的網(wǎng)絡(luò)設(shè)備無(wú)法使用。這樣會(huì)導(dǎo)致NVMe-oF協(xié)議的接受度下降。在用戶(hù)不以性能為首要考量的前提下,顯然已有NVMe-oF協(xié)議對(duì)硬件的要求,會(huì)給客戶(hù)的轉(zhuǎn)型造成障礙,使得用戶(hù)數(shù)據(jù)中心的更新?lián)Q代不能順滑地進(jìn)行。

3. TCP OffLoading:雖然TCP協(xié)議在很大程度上會(huì)降低性能,但是TCP也可以使用OffLoading,或者使用Smart NIC或者FPGA。那么潛在的性能損失可得到一定的彌補(bǔ)??偟膩?lái)說(shuō)短期有性能損失,長(zhǎng)期來(lái)講協(xié)議對(duì)硬件的要求降低,性能可以改進(jìn)。為此總的來(lái)講,接受度會(huì)得到提升。

4. 相比Software RoCE:在沒(méi)有TCP Transport的時(shí)候,用戶(hù)在不具備RDMA網(wǎng)卡設(shè)備的時(shí)候。如果要進(jìn)行NVMe-oF的測(cè)試,需要通過(guò)Software RoCE,把網(wǎng)絡(luò)設(shè)備模擬成一個(gè)具有RDMA功能的設(shè)備,然后進(jìn)行相應(yīng)的測(cè)試。其真實(shí)實(shí)現(xiàn)是通過(guò)內(nèi)核的相應(yīng)模塊,實(shí)際UDP 包來(lái)封裝模擬RDMA協(xié)議。有了TCP transport協(xié)議,則沒(méi)有這么復(fù)雜,用戶(hù)可以采用更可靠的TCP協(xié)議來(lái)進(jìn)行NVMe-oF的一些相關(guān)測(cè)試。 從測(cè)試部署來(lái)講更加簡(jiǎn)單有效。

NVMe/TCP(NVMe over TCP)的協(xié)議,在一定程度上借鑒了iSCSI的協(xié)議,例如iSCSI數(shù)據(jù)讀寫(xiě)的傳輸協(xié)議。這個(gè)不太意外,因?yàn)橛行﹨f(xié)議的指定參與者,也是iSCSI協(xié)議的指定參與者。另外iSCSI協(xié)議的某些部分確實(shí)寫(xiě)得很好。 但是NVMe/TCP相比iSCSI協(xié)議更加簡(jiǎn)單,可以說(shuō)是取其精華。


網(wǎng)站題目:談?wù)勱P(guān)于NVMe和NVMe-oF的那些事
文章URL:http://www.dlmjj.cn/article/dhoosjd.html