NVMe over Fabrics 概況


NVMe over Fabrics 技術特征

跨網絡傳輸NVMe命令需要特殊的考慮,而不僅僅是針對本地存儲內存。例如,為了遠距離傳輸NVMe協議,理想的底層網絡或fabric技術將具有以下特性:

  • 可靠的、基於可信的流程控制和交付機制。這種流控制允許網絡或Fabric進行自身限流,提供了可靠的連接,可以保證在硬件級別進行傳輸,而不需要由於擁塞而丟棄幀或包。對FC,InfiniBand和PCI Express傳輸來說,基於可信的流量控制是天然具備的。
  • 一個最優化的客戶端。客戶機軟件應該能夠直接向fabric發送和接收本機NVMe命令,而不需要使用SCSI之類的翻譯層。
  • 一個低延遲的fabric。fabric本身應該優化為低延遲。包括交換在內,fabric的端到端延遲不應超過10µs。
  • 減少延遲和CPU利用率適配器或接口卡。適配器應該能夠為應用程序注冊直接內存區域,以便將傳輸的數據直接傳遞到硬件fabric適配器。
  • Fabric擴展。這種fabric應該能夠擴展到成千上萬個或更多的設備。
  • 多主機支持。fabric應該能夠支持多個主機同時主動發送和接收命令。這也適用於多個存儲子系統。
  • 多端口支持。主機服務器和存儲系統應該能夠同時支持多個端口。
  • 多路徑支持。fabric應該能夠同時支持任何NVMe主機initiator和任何NVMe存儲target之間的多個路徑。

獨立I/O隊列的最大數量(64K)和這些NVMe I/O隊列固有的並行性可以很好地用於上述結構類型。每個64K I/O隊列都可以同時支持64K個命令,這使得它能夠在非常大的fabric中實現。此外,NVMe命令集中只有很少數量的命令使得在各種fabric環境中實現相對簡單。

本地NVMe和NVMe over Fabrics之間的差異

大約90%的基於fabric的NVMe協議與本地NVMe協議相同。這包括NVMe名稱空間、I/O和管理命令、寄存器和屬性、電源狀態、異步事件、保留等。主要的區別在以下四個方面,見下表。

這些差異主要是NVMe產品的開發人員感興趣的,因為他們的設備驅動程序需要正確處理本地NVMe設備和遠程NVMe設備。其中一些項,例如標識符,可以公開給最終用戶,以幫助識別特定應用程序的特定NVMe設備。發現機制設計用於處理多種類型的傳輸。

NVMe傳輸分布圖

在本地NVMe實現中,NVMe命令和響應通過PCIe接口映射到主機中的共享內存。然而,fabric是建立在發送和接收消息的概念之上的,端點之間沒有共享內存。NVMe fabric消息傳輸被設計為使用包含一個或多個NVMe命令或應答的capsule,將NVMe命令和應答封裝到基於消息的系統中。capsule或capsule與數據的組合獨立於特定的fabric技術,並通過所需的fabric技術發送和接收。

對於fabric上的NVMe,使用常規的NVMe提交隊列和完成隊列維護整個NVMe多隊列模型,但封裝在基於消息的傳輸之上。NVMe I/O隊列對(提交和完成)是為多核cpu設計的,這種低延遲的高效設計在NVMe over Fabrics中得到了保持。

 

當通過fabric設備向NVMe發送復雜消息時,capsule允許將多個小消息作為一個消息發送,這提高了傳輸效率並減少了延遲。capsule要么是提交隊列條目,要么是與一定數量的數據、元數據或聚散列表(SGLs)相結合的完成隊列條目。這些元素的內容與本地NVMe協議相同,但是capsule使用將它們打包在一起的方式以提高效率。

 

NVMe Qualified Name (NQN)

存儲網絡結構的關鍵優點之一是用於跨越所有設備保持相容性的與生俱來的智能。在本例中,NVMe over Fabrics使用耳熟能詳的【qualified naming】授權命名尋址約定。

NVMe Qualified Name(NQN)用於識別遠程NVMe存儲目標。它類似於iSCSI限定名(IQN)。關於NVMe限定名的更多詳細信息在NVMe基本規范的第7.9節中進行了描述,可以在http://www.nvmexpress.org/speciations/中找到。

 

總結

NVMe over Fabrics准備擴展低延遲高效的NVMe塊存儲協議,以提供大規模的遠程存儲共享。NVMe over Fabrics在不同的fabric類型之間維護NVMe協議的體系結構和軟件一致性,發揮NVMe的優點,而不管存儲target中使用的fabric類型或非易失存儲類型如何。未來幾年對這個行業來說將是非常激動人心的!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM