網絡塊裝置

在一些作業系統上,網絡塊裝置(Network Block Device, NBD)是一種裝置節點,其內容由遠端電腦提供。網絡塊裝置通常用於訪問非物理安裝於本地電腦上,而在遠端的儲存裝置。例如,本地電腦可訪問連接於另一台電腦上的硬碟

技術上講,網絡塊裝置由三部分組成,伺服器、客戶端及連接之間的網絡。在裝置節點工作的客戶端上,內核驅動/模組控制該裝置。每當程式試圖訪問該裝置時,內核驅動將轉發請求(如果內核中沒有完全實現客戶端部分,可在用戶空間程式的幫助下完成)到實際儲存數據的伺服器。在伺服器上,來自客戶端的請求由用戶空間程式進行處理。

伺服器端通常為執行在通用電腦上的用戶空間程式。伺服器的所有功能都可由用戶空間程式處理,因為伺服器只需通過正常的通訊端與客戶端的通訊,使用常規的檔案系統介面訪問儲存裝置。

網絡塊裝置客戶端模組適用於一些類Unix系統,包括Linux和Bitrig[1]。由於伺服器是一個用戶空間程式,理論上任何類Unix平台都能執行。例如,NBD的伺服器部分已經移植到了Solaris[2]

參見

  • iSCSI:許多GNU/Linux發行版上的iSCSI「目標工具」。tgtd可以組態任意塊裝置為LUN後備儲存(磁碟,分區等)。這是應用最多的基於IP的塊裝置轉發協定[3]
  • 循環裝置:類似的機制,但使用的是本地檔案
  • DRBD:分散式複製塊裝置是Linux平台上的分散式儲存系統
  • ATA over Ethernet:通過乙太網路傳送ATA命令

參考文獻

  1. ^ git.bitrig.org: NBD: Implement Network Block Device support.. May 20, 2015. 
  2. ^ Miroslav Kripac and Masaryk University Brno. Implementing Oracle Real Application Clusters Using Network Block Device Technology. December 10, 2002 [May 22, 2013]. (原始內容存檔於2016-12-07). 
  3. ^ iSCSI Adoption Continues its Upward Path. (原始內容存檔於2013-11-05). 

外部連結