Network block device (w skrócie NBD, dosł. z ang. sieciowe urządzenie blokowe) - sieciowy protokół komunikacyjny pozwalający na zdalny zapis i odczyt urządzenia blokowego (zwykle twardego dysku, partycji lub wolumenu logicznego) udostępnianego innym komputerom za pośrednictwem sieci komputerowej TCP/IP.

Angielski termin network block device jest także czasem używany bardziej ogólnie, np. w odniesieniu do podobnych technologii dla SAN (jak np. iSCSI).

Historia Protokół NBD był początkowo rozwijany dla wersji 2.1.55 jądra systemu Linux i opublikowany w 1997 roku. W 2011 roku protokół został zrewidowany, formalnie udokumentowany i obecnie jest rozwijany w kolaboracji jako otwarty standard. Istnieje kilka niezależnie rozwijanych programów klienckich i serwerowych, które mogą ze sobą współpracować.

Charakterystyka Technicznie NBD jest zrealizowany przy pomocy trzech komponentów: serwera, klienta oraz łączącej ich sieci. Na maszynie klienckiej, która zdalnie korzysta z dysku serwera, sterownik jądra systemu kontroluje operacje na urządzeniu (takie jak odczyt lub zapis bloku danych). Gdy jakiś program próbuje wykonać operację na urządzeniu, jądro systemu przesyła to żądanie do serwera, w którym fizycznie znajduje się wykorzystywane urządzenie. Po stronie serwera żądania przesłane przez klienta są wykonywane przez program działający w przestrzeni użytkownika na udostępnionym urządzeniu blokowym.

Implementacje Oprócz klienta i serwera dla systemu Linux, moduł klienta NBD jest dostępny także dla systemów: FreeBSD, GNU Hurd, Plan 9 oraz MS-Windows.

Serwer, będąc programem działającym w przestrzeni użytkownika, może potencjalnie działać na dowolnej platformie systemowej zgodnej ze standardem POSIX.

Alternatywne protokoły iSCSI: standard i protokół zdalnego dostępu do urządzeń blokowych, wywodzący swój zestaw komend ze standardu SCSI. Bardziej złożony i skomplikowany od NBD, posiada np. mechanizmy uwierzytelnienia. Wspierany przez wiele firm, które oferują rozwiązania zarówno sprzętowe jak i programowe. Istnieją też implementacje open source. NVMe-oF () - mechanizm zdalnego dostępu do urządzeń NVM Express, w szczególności dysków SSD Loop device: mechanism umożliwiający dostęp do dowolnego pliku tak jakby był on urządzeniem blokowym (umożliwia np. dostęp do zawartości obrazów dysków, płyt CD itp.) DRBD: () rozproszony system składowania danych dla systemu Linux ATA over Ethernet (AoE): bazujący na ATA mechanizm zdalnego udostępniania dysków przez sieć Ethernet USB/IP: protokół zapewniający zdalny dostęp do urządzeń USB poprzez protokół IP.

Przypisy

Linki zewnętrzne Network Block Device strona projektu NBD nbdkit serwer i stowarzyszony libnbd klient NBD qemu-nbd program pozwalający udostępnić przez NBD obraz dysku w formacie QEMU xNBD serwer NBD dla systemu Linux BNBD serwer NBD The Network Block Device artykuł o NBD w Linux Journal Windows Network Block Device (WNBD) klient NBD dla systemu MS-Windows, będący częścią projektu Ceph for Windows NDB server macOS serwer dla MacOs

Kategoria:Protokoły warstwy aplikacji Kategoria:Systemy składowania danych Kategoria:Sieciowe systemy składowania danych