什麼是 NVMe Over TCP (NVMe/TCP)

通過簡單的語言了解什麼是 NVMe over TCP 以及 NVMe over TCP 如何工作。

NVMe over TCP 解釋

對雲計算不斷增長的需求需要一個高效且負擔得起的存儲系統。儘管傳統硬盤驅動器 (HDD) 非常便宜,但它們無法在雲端託管性能驅動的軟件或計算過程。

因此,為了解決計算機設備大容量存儲中的這個問題,NVM Express Inc. 發布了 NVMe SSD 的架構,這是一種用於通過 PCIe 或外圍組件互連高速總線的計算機的超快內部存儲設備。

然而,PCIe 僅用於 RAM 和 NVMe SSD 之間的直接數據通信。如何在主機和客戶端計算機位於遠程位置的雲計算環境中實現相同的功能?這些設備只能通過互聯網或內聯網進行通信。

為了應對這一挑戰,NVMe over Fabric 或 NVMe-oF 協議旨在支持 NVMe 網絡存儲解決方案的開發。它使用 NVMe 邏輯設備規範接口在主機或服務器與存儲區域網絡 (SAN) 或直接附加存儲 (DAS) 之間傳輸數據。

但是,即使對於大型企業而言,NVMe-oF 部署也非常昂貴。另外,由於NVMe-oF主要需要光纜作為A點到B點的數據傳輸介質,所以僅僅為公有云部署NVMe-oF是不可行的。

為了解決這個問題,NVM Express Inc. 提出了 NVMe over TCP 或 NVMe/TCP 協議。

什麼是 NVMe over TCP (NVMe/TCP)?

NVMe/TCP 是基於 NVMe 的存儲 I/O 命令規範的擴展版本。它是 NVMe-oF 的高級版本,將 NVMe 數據傳輸協議的功能定義為基於消息的通信協議 TCP。

有一個 NVMe/TCP 傳輸規範描述了以下內容:

簡而言之,NVMe 和 TCP 的結合,NVMe/TCP 在 NVMe-oF 主機和 NVMe-oF 控制器設備之間以更快且無錯誤的方式傳輸數據和命令。

此類設備可以使用基於以太網的 TCP/IP 網絡通過 Internet 和 Intranet 進行連接。連接介質可以是光纖電纜或傳統的 Cat 5 和 Cat 6 電纜

為什麼選擇 NVMe Over TCP?

最初的 NVMe 傳輸系統旨在用於直接進入 PC 系統的 SSD,主要是在主板上。傳輸協議最初針對連接到內部服務器或工作站的 NVM PCIe SSD 進行了優化。

後來,為了滿足雲上快速和海量數據存儲的要求,NVMe 傳輸協議與雲數據中心最常使用的傳輸綁定規範相結合,例如光纖通道、基於融合以太網的 RDMA (RoCE)、互聯網廣域 RDMA 協議 (iWARP)和無限帶寬。

雖然上述 NVMe 修改工作得很好,但它不適合公有云,因為需要客戶端提供專門的硬件設備。因此,TCP 傳輸綁定係統被納入其中,該系統在全球範圍內都很容易獲得,並且在長途網絡上也很可靠。

NVMe over TCP的核心組件

NVMe-oF 的 NVMe/TCP 傳輸規範包括以下網絡組件:

  • 使用 NVMe 協議的遠程數據訪問系統遵循計算機網絡系統的開放系統互連 (OSI) 模型。
  • NVMe/TCP 利用在 OSI 物理層和 OSI 數據鏈路層運行的以太網網絡技術。
  • 對於通信協議和分組數據交換策略,NVMe/TCP 依賴於 TCP/IP 協議。
  • NVMe 命令集將所有用戶發出的命令和應用程序 I/O 轉換為特定的 NVMe 命令表,如管理、I/O、結構等。
  • 在基於消息的結構中,NVMe 命令的遠程傳輸是使用膠囊進行的。這些膠囊可以是響應或命令膠囊。NVMe 命令膠囊代表一個 NVMe 數據交換單元。
  • 子系統和主機控制器通過交換 NVMe/TCP 協議數據單元或 NVMe/TCP PDU 在它們之間進行通信。
  • 控制器子系統和主機之間有一個三步連接過程。這些步驟或階段是 NVMe-oF Connect、NVMe/TCP Connect 和 Fabric Connect。
  • 在 NVMe/TCP 傳輸綁定係統中,當子系統與主機 NVMe-OF 成功連接時,會自動創建動態 I/O 控制器並將其分配給主機。

NVMe over TCP 的優勢

  • TCP 是使用最廣泛的 Internet 或 Intranet 數據傳輸協議,每個數據中心和雲計算資源的客戶端都可以使用。
  • 數據中心及其客戶端不需要更換現有的網絡硬件,如路由器、交換機和 NIC。
  • TCP 可以使用光纖電纜和 Cat 5 或 Cat 6 電纜,因此維護非常容易。
  • NVMe-oF 的 TCP 傳輸綁定提供高性能和低延遲。因此,它非常適合主機上的關鍵任務和 CPU 密集型進程,並且可以輕鬆地被多個遠程客戶端訪問,而不會出現任何讀/寫衝突。
  • TCP 提供動態路由。因此,與遠程直接內存訪問 (RDMA) 相比,TCP 在大型數據中心和遠距離雲操作中表現最佳。
  • TCP 擁有比任何其他 NVMe 傳輸規範更大的開發社區。

NVMe over TCP 的挑戰

  • 使用 TCP 堆棧時,必須讓 CPU 解決大部分 TCP 操作,例如計算校驗和。因此,在更大範圍內,當多個客戶端工作站通過主機向網絡存儲設備請求寫入和讀取數據時,主機CPU的負載將會增加。
  • 超融合基礎設施必須簡單。但是,當您使用 NVMe/TCP 時,它會變得複雜。
  •  NVMe over TCP 也有一些安全弱點,除非您部署嚴格的網絡安全和 防病毒解決方案,否則黑客可以利用這些弱點滲透您的雲操作、竊取數據並在暗網上提供機密數據 。

NVMe Over TCP:最後的話

TCP 是跨公共或私有網絡數據中心的領先協議。因此,NVMe/TCP 是通過 Internet、Intranet 和雲基礎架構提供價格合理的存儲解決方案的首選。

該協議在長距離網絡連接上也具有可擴展性和可靠性。由於雲存儲讀寫延遲與大多數光纖通道協議相當,NVMe over TCP 是首選的雲存儲傳輸方案。

接下來, 雲存儲的 3 種替代方案



Leave a Comment

如何追踪被盜或丟失的 Nintendo Switch

如何追踪被盜或丟失的 Nintendo Switch

探索如何追踪丢失或被盗的 Nintendo Switch,以及相关的保护措施,以确保您的游戏机安全。

Instagram 筆記未顯示/工作?6 種修復方法

Instagram 筆記未顯示/工作?6 種修復方法

Instagram Notes 是一項允許 Instagram 用戶留下簡短筆記供好友列表中的人閱讀的功能,如今卻有些用戶面臨無法使用的問題。

如何在搜索中隱藏我的 Facebook 帳戶?

如何在搜索中隱藏我的 Facebook 帳戶?

如果您想在公開搜索中隱藏您的 Facebook 個人資料,請防止用戶使用您的電子郵件地址和電話號碼查找您。

修復 YouTube:我們的系統檢測到異常流量

修復 YouTube:我們的系統檢測到異常流量

如果 YouTube 檢測到來自我的計算機的異常流量,這可能意味著系統懷疑這是自動流量。了解解決方法!

如何在 Android 或 iPhone 上修復 Sim Not Provisioned 錯誤

如何在 Android 或 iPhone 上修復 Sim Not Provisioned 錯誤

當您在手機上插入 SIM 卡時,是否收到“SIM not provisioned”或“SIM not provisioned mm#2”錯誤。閱讀本文以了解您收到此錯誤消息的原因以及該問題的 8 種可能解決方案。

7 種最受歡迎​​的視頻遊戲類型

7 種最受歡迎​​的視頻遊戲類型

探索七種最受歡迎的視頻遊戲類型,包括動作、冒險、角色扮演、策略等,幫助玩家找到適合自己的遊戲樂趣。

Google 搜索欄小部件丟失了嗎?如何在 Android 上恢復它

Google 搜索欄小部件丟失了嗎?如何在 Android 上恢復它

發現如何輕鬆恢復丟失的 Google 搜索欄小部件,提高您的 Android 設備的使用效率。

NordVPN 無法連接到服務器

NordVPN 無法連接到服務器

NordVPN 可通過其值得信賴的 VPN 服務幫助您獲得額外保護,解決「NordVPN 無法連接到服務器」的問題。

清除 Instagram 搜索建議/歷史記錄的 6 種最佳方法

清除 Instagram 搜索建議/歷史記錄的 6 種最佳方法

每當您在 Instagram 上搜索某人或某物時,此信息都會保存在您的搜索歷史記錄中,這可能既有用又煩人。了解如何有效地清除 Instagram 搜索歷史記錄與建議。

Nintendo Switch 無法連接到電視?12 種修復方法

Nintendo Switch 無法連接到電視?12 種修復方法

任天堂 Switch 的連接問題極為常見,本文提供 12 種有效方法來解決連接電視時的黑屏問題,幫助您重新享受遊戲樂趣。