网络块设备

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