网络块装置
维基百科,自由的 encyclopedia
在一些操作系统上,网络块装置(Network Block Device, NBD)是一种装置节点,其内容由远程电脑提供。网络块装置通常用于访问非物理安装于本地电脑上,而在远程的存储装置。例如,本地电脑可访问连接于另一台电脑上的硬盘。
技术上讲,网络块装置由三部分组成,伺服器、客户端及连接之间的网络。在装置节点工作的客户端上,内核驱动/模块控制该装置。每当程序试图访问该装置时,内核驱动将转发请求(如果内核中没有完全实现客户端部分,可在用户空间程序的帮助下完成)到实际存储数据的伺服器。在伺服器上,来自客户端的请求由用户空间程序进行处理。
伺服器端通常为运行在通用电脑上的用户空间程序。伺服器的所有功能都可由用户空间程序处理,因为伺服器只需通过正常的套接字与客户端的通信,使用常规的文件系统接口访问存储装置。
网络块装置客户端模块适用于一些类Unix系统,包括Linux和Bitrig[1]。由于伺服器是一个用户空间程序,理论上任何类Unix平台都能运行。例如,NBD的伺服器部分已经移植到了Solaris上[2]。