- Source: Network block device
On Linux, network block device (NBD) is a network protocol that can be used to forward a block device (typically a hard disk or partition) from one machine to a second machine. As an example, a local machine can access a hard disk drive that is attached to another computer.
The protocol was originally developed for Linux 2.1.55 and released in 1997. In 2011 the protocol was revised, formally documented, and is now developed as a collaborative open standard. There are several interoperable clients and servers.
There are Linux-compatible NBD implementations for FreeBSD and other operating systems. The term 'network block device' is sometimes also used generically.
Technically, a network block device is realized by three components: the server part, the client part, and the network between them. On the client machine, which uses the exported device node, a kernel driver implements a virtual device. Whenever a program tries to access the device, the kernel driver forwards the request (if the client part is not fully implemented in the kernel it can be done with help of a userspace program) to the server machine, on which the data reside physically. On the server machine, requests from the client are handled by a userspace program.
Network block device servers are typically implemented as a userspace program running on a general-purpose computer. All of the function specific to network block device servers can reside in a userspace process because the process communicates with the client via conventional sockets and accesses the storage via a conventional file system interface.
The network block device client module is available on Unix-like operating systems, including Linux.
Alternative protocols
iSCSI: The "target-utils" iscsi package on many Linux distributions.
NVMe-oF: an equivalent mechanism, exposing block devices as NVMe namespaces over TCP, Fibre Channel, RDMA, &c., native to most operating systems
Loop device: a similar mechanism, but uses a local file instead of a remote one
DRBD: Distributed Replicated Block Device is a distributed storage system for the Linux platform
ATA over Ethernet: send ATA commands over Ethernet
USB/IP: A protocol that provides network access to USB devices via IP.
External links
Network Block Device on GitHub
nbdkit is a plugin-based NBD server and libnbd is a high-performance C client
qemu-nbd A nbd tool from qemu project
BNBD is an alternative NBD server implementation
xNBD was another NBD server program for Linux
The Network Block Device, the Linux Journal
References
Kata Kunci Pencarian:
- ARPANET
- Android (sistem operasi)
- Brave (peramban web)
- Elektron
- Daftar episode Alvin and the Chipmunks
- ExifTool
- Festival Seni Media Jepang
- Sandra Oh
- Network block device
- Device file
- Storage area network
- Loop device
- Network-attached storage
- NBD
- Private network
- Diskless node
- ISCSI
- DRBD