دستگاه بلوکی شبکه "network block device (NBD)" در سیستم عامل لینوکس، یک پروتکل شبکه است که میتوان از آن برای فوروارد کردن یک دستگاه بلوکی (که معمولاً یک دیسک سخت یا پارتیشن است) از یک ماشین به ماشین ثانویه استفاده کرد. به عنوان مثال یک ماشین محلی میتواند به یک درایو دیسک سخت که به یک کامپیوتر دیگر متصل شده است، دسترسی پیدا کند.
این پروتکل در ابتدا برای سیستم عامل لینوکس نسخهی 2.1.55 توسعه داده شده و در سال 1997 عرضه شد. این پروتکل در سال 2011 بازبینی و اصلاح شده است که فایل رسمی آن قابل دسترسی است و اکنون به عنوان یک استاندارد متنباز اشتراکی توسعه داده میشود. این پروتکل شامل چندین کلاینت و سرور است که با یکدیگر همکاری متقابل دارند.
پیادهسازیهای سازگار با لینوکس دستگاه بلوکی شبکه برای فریبیاسدی و سایر سیستمعاملها موجود هستند. اصطلاح «دستگاه بلوکی شبکه» گاهی به صورت عمومی نیز مورد استفاده قرار میگیرد.
اساساً، یک دستگاه بلوکی شبکه، شامل سه بخش مختلف است: بخش سرور، بخش کلاینت و شبکهی میان این سرور و کلاینت. در ماشین کلاینت، که گرهی دستگاه بر روی آن قرار دارد، یک درایور کرنل دستگاه را کنترل میکند. هر زمان که یک برنامه سعی کند تا به این دستگاه دسترسی پیدا کند، این درایور کرنل، آن درخواست را به ماشین سرور فوروارد میکند (اگر بخش کلاینت به صورت کامل در کرنل پیادهسازی نشده باشد، میتوان به کمک یک برنامهی فضای کاربری "userpace program" این کار را انجام داد) که دادهها به صورت فیزیکی بر روی آن قرار دارند. در ماشین سرور، درخواستهای کلاینتها به وسیلهی یک برنامهی فضای کاربری مدیریت میشوند.
سرورهای دستگاه بلوکی شبکه عموماً به عنوان یک برنامهی فضای کاربری که بر روی یک کامپیوتر همهمنظوره درحال اجرا است، پیادهسازی میشوند. تمامی عملکردهای خاص سرورهای دستگاه بلوکی شبکه میتوانند در یک فرآیند فضای کاربری مستقر شوند، چراکه این فرآیند به وسیلهی سوکتهای مرسوم با کلاینت ارتباط برقرار کرده و به وسیلهی یک واسط سیستم فایل مرسوم به فضای ذخیرهسازی دسترسی دارد.
ماژول کلاینت دستگاه بلوکی شبکه بر روی سیستمعاملهای شبه یونیکس، شامل لینوکس قابل دسترس است.