NBD is a protocol for accessing block devices (hard disks and disk-like things) over a network. This is the NBD client library in userspace, a simple library for writing NBD clients. The key features are:
Synchronous API for ease of use.
Asynchronous API for writing non-blocking, multithreaded clients.
High performance.
Minimal dependencies for the basic library.
Well-documented, stable API.
Bindings in several programming languages.
Shell (nbdsh) for command line and scripting.
Copying tool (nbdcopy) for high performance copying and streaming.
Hexdump tool (nbddump) to print NBD content.
Query tool (nbdinfo) to query NBD servers.
FUSE support (nbdfuse) to mount NBD in the local file system.
Linux ublk support (nbdublk) to create the userspace block device.