Operations 16 min read

Understanding DAS, NAS, and SAN: A Guide to Modern Storage Technologies

This article explains the three main storage architectures—Direct Attached Storage (DAS), Network Attached Storage (NAS), and Storage Area Network (SAN)—and compares their protocols, scaling methods, caching policies, RAID levels, LUN concepts, and core Linux block I/O structures.

Efficient Ops
Efficient Ops
Efficient Ops
Understanding DAS, NAS, and SAN: A Guide to Modern Storage Technologies

Storage Technologies

Network storage devices are classified into three main types based on technology: Direct Attached Storage (DAS), Network Attached Storage (NAS), and Storage Area Network (SAN).

DAS extends the SCSI bus, allowing multiple hosts to connect via SCSI channels, overcoming the limitation of a single host per SCSI card.

NAS uses a dedicated storage server with an optimized file system and a lightweight OS to provide cross‑platform file sharing.

SAN connects one or more storage devices (e.g., RAID arrays) to servers over a dedicated high‑speed network; DAS is typical for small‑to‑medium enterprises, NAS attaches via Ethernet, while SAN uses Fibre Channel for higher performance.

NAS and SAN differ mainly in where the file system resides.

NAS vs SAN

In NAS a single file system is shared over network protocols (NFS, CIFS); in SAN each application server maintains its own file system.

SAN presents storage as block‑level LUNs, while NAS provides file‑level access.

SAN typically offers larger cache, better RAID support, multi‑path, and higher reliability.

Storage Methods

Object storage builds on a file system to store and retrieve data.

Block storage uses fixed‑size blocks, avoiding packetization and offering higher transfer performance.

File storage connects to servers via Ethernet using protocols such as NFS, CIFS, HTTP, FTP, involving packetization.

iSCSI Protocol

iSCSI and Fibre Channel (FC) are the two major block‑level transport standards; FC is expensive, making it the main drawback of FC SAN deployments.

The iSCSI protocol defines how to encapsulate SCSI commands and data into TCP/IP packets for transmission over Ethernet, allowing remote storage to appear as a local SCSI disk.

Comparison of iSCSI and FC:

FC is designed for high‑capacity storage and business continuity, using optical signals for very high performance.

iSCSI leverages familiar IP networks, enabling longer distances and lower cost using existing Ethernet infrastructure.

iSCSI can extend FC‑style storage over IP, providing flexibility and cost advantages.

Scale‑Up vs Scale‑Out

Scale‑Up (vertical scaling) adds capacity to an existing storage system without increasing bandwidth or compute power. Scale‑Out (horizontal scaling) adds new nodes, each bringing capacity, processing, and I/O bandwidth, similar to adding another fish tank rather than enlarging the existing one.

Write‑Through vs Write‑Back Caching

<code>Write-through Cache Policy: The goal of write-through caching is to accelerate the read operations. All write operations go to Primary Source (HDDs); write operations may also go to the Cache (SSDs). Thus the write operations may be slower compared to a configuration without Write-through Cache

Write-back Cache Policy: The goal of write-back caching is to accelerate both read and write operations. Writes may be cached on the Cache (SSDs) and written to the Primary Storage (HDDs) at a later point of time.</code>

Write‑through accelerates reads, writing to both primary storage and cache, which can be slower. Write‑back caches writes in SSD cache first, returning immediately, but risks data loss on power failure.

RAID

RAID (Redundant Array of Inexpensive Disks) combines multiple inexpensive disks into a single logical unit to improve performance or reliability.

RAID can be implemented in hardware or software; Linux software RAID offers flexibility and cost savings, while hardware RAID provides better error detection and rebuild capabilities.

RAID level comparison (illustrated below).

RAID 5 vs RAID 10: RAID 5 offers higher storage efficiency, suitable for large file storage or data warehouses, while RAID 10 provides better performance for small‑IO database workloads.

LUN Concept

A Logical Unit Number (LUN) identifies a logical unit of storage on a SCSI bus, extending the limited number of target IDs.

Block Devices

Block devices allow random access to fixed‑size data chunks (blocks). The smallest addressable unit is a sector, typically 512 bytes, with block sizes commonly 512 B, 1 KB, or 4 KB.

Sector: the device’s smallest addressable unit. Block: the file system’s smallest addressable unit.

buffer_head

When a block is loaded into memory, it is stored in a buffer described by a

buffer_head

structure, which maps the disk block to its in‑memory representation.

bio

The kernel’s block I/O operations are encapsulated in a

bio

structure, which holds a list of segments (contiguous memory buffers) and links the VFS layer to the device driver.

sync vs fsync

sync

queues modified buffers for writing and returns immediately (asynchronous).

fsync

waits for the I/O to complete for a specific file (synchronous). Delayed write occurs when dirty pages are held in cache until the cache fills or the kernel needs to reuse it.

storageNASiSCSIRAIDSANscale-outDASwrite-back
Efficient Ops
Written by

Efficient Ops

This public account is maintained by Xiaotianguo and friends, regularly publishing widely-read original technical articles. We focus on operations transformation and accompany you throughout your operations career, growing together happily.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.