3.2 Block, File, and Object Storage Implementations & Protocols

Key Takeaways

  • Block storage exposes raw, unformatted storage sectors indexed by Logical Block Addresses (LBAs) via protocols like Fibre Channel, iSCSI, and NVMe-oF, giving host operating systems direct control over file system formatting and caching.

  • File storage abstracts raw disks into a centralized hierarchical folder and file tree managed entirely by the storage appliance, exposing shared directories across IP networks via NFS and SMB protocols with native file-locking semantics.

  • Object storage organizes unstructured data into a flat address space where binary payloads are paired with globally unique Object IDs and rich, customizable metadata, accessible via HTTP/HTTPS RESTful APIs like Amazon S3.

  • NVMe over Fabrics (NVMe-oF) modernizes block storage transport by extending NVMe parallelism across FC, RDMA (RoCE), and TCP fabrics, replacing the limited queues of legacy interfaces (one 32-command queue in AHCI/SATA) with up to 64,000 queues of 64,000 commands each.

  • Object storage achieves petabyte-to-exabyte scale through erasure coding algorithms across distributed nodes rather than traditional RAID, prioritizing aggregate throughput and durability over low transactional latency.

Last updated: October 2026

Block, File, and Object Storage Implementations & Protocols

All digital enterprise storage systems are fundamentally designed around one of three architectural data primitives: Block Storage, File Storage, or Object Storage. The differences between these models are not merely semantic; they dictate how storage controllers organize physical media, how data travels across network protocols, how host operating systems format and cache data, and which enterprise workloads can successfully operate on the platform.


1. The Three Storage Primitives: Foundations of Data Storage

+-------------------------------------------------------------------------+
|                     THE THREE STORAGE ARCHITECTURES                     |
+-------------------+-----------------------+-----------------------------+
| BLOCK STORAGE     | FILE STORAGE          | OBJECT STORAGE              |
+-------------------+-----------------------+-----------------------------+
| Raw, unformatted  | Hierarchical tree of  | Flat namespace of discrete  |
| sectors indexed   | folders and files     | objects with unique IDs and |
| by LBA            | with POSIX/NTFS attrs | customizable metadata       |
| Sub-millisecond   | Low-to-medium latency | High initial latency,       |
| transactional I/O | with network locking  | massive parallel throughput |
+-------------------+-----------------------+-----------------------------+

Each model addresses a specific operational balance among three competing infrastructure requirements:

  1. Transactional Latency: Minimizing round-trip response time for sub-millisecond random reads and writes (Block).
  2. Collaborative Sharing: Enabling concurrent multi-client read and write access to a shared hierarchical namespace with native file-level locking (File).
  3. Global Scalability & Metadata Richness: Storing billions of unstructured data files across distributed nodes with unlimited custom attributes and HTTP-based global accessibility (Object).

2. Block Storage Implementation Deep Dive

Block storage is the foundational building block of enterprise IT. It operates at the physical drive level, abstracting storage media into raw, fixed-size blocks.

The Logical Block Addressing (LBA) Architecture

A block storage system organizes physical capacity into addressable chunks of equal size—typically 512 bytes (legacy 512n) or 4,096 bytes (modern 4Kn and 512e Advanced Format). Physical drives are aggregated by an array controller into RAID groups or dynamic pools and carved into Logical Unit Numbers (LUNs).

  • Addressing Model: The storage controller exposes a linear range of Logical Block Addresses (LBAs) starting from LBA 0 up to LBA (N - 1), where N is the total block count. The storage array has no awareness of files, directories, users, or application contexts. An I/O request consists simply of an operation type (Read/Write), a target LUN, a starting LBA, and the block length.
  • Host Operating System Control: When a LUN is attached via a block protocol, the host OS views it as an unpartitioned local physical disk. The host creates a partition structure (such as a GUID Partition Table - GPT) and formats the volume with a host-controlled file system:
    • Windows: NTFS or ReFS
    • Linux: ext4 or XFS
    • VMware: Virtual Machine File System (VMFS)
  • Buffer Caching: Because the host OS owns the file system, it manages its own in-memory page cache and write buffer, issuing low-level SCSI or NVMe commands only when cache flush or disk read operations occur.

Block Storage Protocols: FCP, iSCSI, and NVMe-oF

1. Fibre Channel Protocol (FCP)

  • FCP maps standard SCSI-3 commands directly into Fibre Channel frames (FC-4 upper layer protocol).
  • Operates over dedicated optical fibers and Fibre Channel switches at standard speeds of 16 Gb/s, 32 Gb/s, and 64 Gb/s.
  • Deterministic performance with hardware flow control via Buffer-to-Buffer credits (BB_Credits), guaranteeing that frames are never dropped due to congestion.

2. Internet Small Computer Systems Interface (iSCSI)

  • Encapsulates SCSI-3 Command Descriptor Blocks (CDBs) within TCP/IP packets over port TCP 3260.
  • Leverages ubiquitous Ethernet infrastructure (10GbE, 25GbE, 100GbE).
  • Cost-effective alternative to Fibre Channel, though it introduces TCP packet processing overhead unless paired with specialized iSCSI HBAs or Network Interface Cards with TCP Offload Engines (TOE).

3. Non-Volatile Memory Express over Fabrics (NVMe-oF)

  • Replaces legacy SCSI command translation by extending the lightweight, highly parallel NVMe command set directly across network fabrics.
  • The Legacy Queuing Bottleneck: SCSI and AHCI command stacks were designed in the mechanical hard disk era. AHCI/SATA offers a single queue of 32 commands, and traditional SCSI stacks funnel I/O through limited queues with locking that consumes CPU when servicing all-flash arrays.
  • NVMe Parallelism: NVMe supports up to 64,000 independent command queues, each with a queue depth of up to 64,000 commands. NVMe-oF maps these queues directly to CPU cores and host memory, delivering multi-core scale without lock contention.
  • Fabric Variations:
    • FC-NVMe: Transports NVMe commands across standard 32Gb/64Gb Fibre Channel fabrics alongside legacy FCP.
    • NVMe/RDMA: Uses Remote Direct Memory Access over Converged Ethernet (RoCEv2) or InfiniBand, enabling host memory to transfer data directly to array memory without CPU involvement (latencies under 10 microseconds).
    • NVMe/TCP: Operates over standard TCP/IP Ethernet networks without requiring specialized RDMA-capable switches, providing lower latency and higher IOPS than iSCSI.

Best-Fit Enterprise Workloads

  • High-transaction relational database management systems (RDBMS) such as Oracle RAC, Microsoft SQL Server, and SAP HANA.
  • Virtual machine disk images (VMware VMDK on VMFS, Microsoft Hyper-V VHDX on CSV).
  • Clustered enterprise applications requiring raw disk access and sub-millisecond latency.

3. File Storage Implementation Deep Dive

File storage (or network-attached file storage) manages data as a structured, hierarchical tree of named files and nested directories. Unlike block storage, where the host formats the disk, the storage appliance formats, owns, and controls the file system.

Hierarchical Namespace & Metadata Management

In a file storage architecture, data is stored alongside rich file system metadata:

  • Payload: The actual byte contents of the file.
  • System Metadata: Stored in data structures such as inodes (UNIX/Linux) or the Master File Table (MFT) (Windows). Metadata includes file name, path, byte size, creation timestamp, last accessed timestamp, last modified timestamp, owner ID, group ID, and permission access control lists.
  • Path-Based Traversal: Clients access files by querying a human-readable path string (e.g., /dept/finance/2026/q3_forecast.xlsx or \\nas01\finance\q3_forecast.xlsx). The storage controller traverses directory pointer tables to locate the underlying data blocks.

Network File Sharing Protocols

+-------------------------------------------------------------------------+
|                        FILE PROTOCOL ATTRIBUTES                         |
+-----------------------+-----------------------+-------------------------+
| ATTRIBUTE             | NFS v3                | NFS v4.2                |
+-----------------------+-----------------------+-------------------------+
| State Model           | Stateless             | Stateful                |
| Primary Port          | Dynamic RPC + 2049    | Single TCP Port 2049    |
| File Locking          | External NLM Daemon   | Integrated in Protocol  |
| Security              | IP / UNIX UID/GID     | Native Kerberos / RPCSEC|
| Advanced Features     | Basic asynchronous    | pNFS, Server-side copy, |
|                       | I/O                   | Sparse files, Space res.|
+-----------------------+-----------------------+-------------------------+

1. Network File System (NFS)

  • NFS v3 (RFC 1813): A stateless protocol relying on Open Network Computing Remote Procedure Call (ONC RPC). Because the server does not track client connection state, auxiliary daemons must handle peripheral tasks:
    • mountd: Handles initial file system mount requests.
    • nlm (Network Lock Manager): Coordinates advisory file locking.
    • statd (Network Status Monitor): Monitors host reboots to recover locks.
    • These auxiliary daemons communicate across dynamically assigned RPC ports managed by rpcbind, making NFS v3 challenging to route through firewalls.
  • NFS v4 / v4.1 / v4.2 (RFC 7530, RFC 5661, RFC 7862):
    • Stateful architecture operating exclusively over a single well-known port (TCP 2049).
    • Compound RPC procedures bundle multiple file operations (e.g., LOOKUP, OPEN, READ) into a single network packet, drastically reducing round-trip latency over high-latency networks.
    • Native integration of file locking, eliminating external NLM daemons.
    • Strong authentication with Kerberos (RPCSEC_GSS) and rich, Windows-compatible ACLs.
    • pNFS (Parallel NFS): Separates control/metadata operations from direct data I/O, allowing clients to stream data directly to multiple storage nodes simultaneously.

2. Server Message Block (SMB)

  • The native file sharing protocol in Microsoft Windows networks.
  • SMB 2.1: Introduced client-side opportunistic leasing, allowing clients to cache file metadata and byte ranges locally.
  • SMB 3.0 / 3.0.2: Introduced enterprise features for mission-critical workloads:
    • SMB Direct: Bypasses the host TCP/IP stack using RDMA (RoCE or iWARP), enabling hypervisors (Hyper-V) to host virtual machine disks on SMB shares with performance rivaling Fibre Channel SANs.
    • SMB Multichannel: Automatically aggregates multiple network adapters to combine bandwidth and provide seamless connection failover.
  • SMB 3.1.1: Mandates pre-authentication integrity to prevent man-in-the-middle tampering and supports AES-128/256-GCM encryption.

Scaling Challenges in File Storage

While file storage excels at human-readable collaboration, it faces inherent architectural limitations at extreme scale:

  • Directory Tree Traversal Latency: As a file system grows to millions of files across deep directory structures, traversing directory inodes to locate a single file induces significant metadata read latency.
  • File Locking Contention: When hundreds of concurrent compute nodes attempt to open, write, and lock the same shared file, lock contention and lease revocation degrade aggregate performance.

4. Object Storage Implementation Deep Dive

Object storage completely abandons the hierarchical directory tree and raw LBA block sector models. It manages data as discrete, autonomous units called Objects organized within a flat, non-hierarchical address space.

Object Anatomy: Payload, Unique ID, and Custom Metadata

Every object written to an object storage system contains three distinct components:

  1. Data Payload: The unstructured binary data stream (e.g., a PDF document, video file, medical image, machine learning training set, or backup archive). Payloads can range from a few bytes to multiple terabytes.
  2. Unique Identifier (Object ID / Key): A globally unique string or 128-bit/256-bit hash (or URI) that identifies the object within a logical container or Bucket. Unlike file systems where an object's identity depends on its directory path, an object is referenced solely by its unique identifier.
  3. Extensible Custom Metadata: The defining technical feature of object storage. In addition to standard system attributes (creation date, file size, MD5 checksum), object storage allows applications to attach an unlimited number of custom key-value metadata tags directly to the object (e.g., PatientID: 98124, ScanType: MRI, RetentionPeriod: 7Years, Department: Radiology). This metadata is indexed in a distributed database, allowing applications to search and query billions of objects instantly without scanning storage disks.
+-------------------------------------------------------------------------+
|                        OBJECT STORAGE ARCHITECTURE                      |
+-------------------------------------------------------------------------+
| BUCKET: "enterprise-medical-imaging-repository"                         |
|                                                                         |
| OBJECT KEY: "scans/2026/mri-knee-patient98124.dcm"                     |
|                                                                         |
| CUSTOM METADATA:                                                        |
|   - X-Amz-Meta-PatientID: "98124"                                       |
|   - X-Amz-Meta-Modality: "MRI"                                          |
|   - X-Amz-Meta-Retention-Years: "7"                                     |
|   - X-Amz-Meta-Compliance: "HIPAA-Immutable"                           |
|                                                                         |
| DATA PAYLOAD: [Binary Large Object - 48.2 MB DICOM Image Data]          |
+-------------------------------------------------------------------------+

RESTful API Data Access & The Amazon S3 Standard

Object storage does not use operating system file system drivers (such as NFS mounts or drive letters). Data is accessed strictly at the application layer over HTTP/HTTPS using RESTful APIs:

  • PUT: Uploads a new object payload and its metadata tags into a specified bucket.
  • GET: Retrieves the object binary payload and metadata using its unique key.
  • HEAD: Fetches only the object metadata headers without downloading the data payload, enabling fast metadata queries.
  • DELETE: Deletes the specified object.

While proprietary APIs exist, the Amazon S3 API has become the universal industry standard for object storage. Enterprise on-premises object storage arrays and software platforms expose fully compliant S3 REST endpoints.

Immutability, Versioning, and Data Protection

  • No In-Place Updates: Objects are written and replaced as whole units; they are not modified in place. (True WORM retention requires S3 Object Lock, described next.) In block or file storage, an application can open a 10 GB file, seek to byte offset 4096, and overwrite 512 bytes in-place. In object storage, in-place modification is impossible. To change a single byte, the client must upload an entirely new object via a PUT operation. If versioning is enabled, the storage system retains previous versions under the same object key.
  • S3 Object Lock: Enforces compliance retention policies. Once locked in Compliance Mode, an object cannot be overwritten or deleted by any user—including root administrators—until the retention period expires, providing robust defense against ransomware and satisfying SEC Rule 17a-4 compliance.
  • Distributed Erasure Coding: Traditional RAID (RAID 5/6) protects data across physical drives within a single shelf but cannot protect against chassis or data center failures. Object storage architectures employ Erasure Coding (EC) (e.g., Reed-Solomon k+m algorithms). An object is split into k data fragments and m parity fragments, which are distributed across distinct storage nodes, server racks, or geographical data centers. A scheme with 12+4 erasure coding can survive the simultaneous loss of any 4 storage nodes without data loss, while maintaining lower storage overhead than triple mirroring.

5. Technical Comparison: Block vs. File vs. Object Storage

Technical AttributeBlock StorageFile StorageObject Storage
Data AbstractionRaw disk sectors (LBAs)Files and foldersObjects in flat buckets
Addressing Scheme512-byte / 4KB Sector LBAHierarchical directory pathUnique Object ID / URI string
File System LocationHost Operating SystemStorage Appliance / NAS HeadNone (flat object namespace)
Metadata CapabilitiesNone at storage layerBasic POSIX/NTFS attributesUnlimited custom key-value tags
Latency ProfileSub-millisecond (<1ms)Low to Medium (1ms - 10ms)Higher initial latency (10ms - 50ms)
Throughput ScalingHigh per-LUN throughputModerate (bottlenecked by locks)Massive aggregate throughput
Scalability CeilingTerabytes to PetabytesTerabytes to PetabytesExabytes across distributed nodes
In-Place ModificationNative random sector updatesNative byte-range updatesNot supported (replace the whole object)
Multi-Client WriteClustered FS only (VMFS)Supported (file locking)Independent concurrent writes
Primary ProtocolsFCP, iSCSI, NVMe-oFNFS v3/v4.2, SMB 2.1/3.1.1HTTP/HTTPS REST (Amazon S3)
Storage EfficiencyRAID 10, RAID 5/6, 3PAR/AlletraRAID 5/6, SnapshotsDistributed Erasure Coding (EC)
Cost per Usable TBHighest (premium flash/SAN)ModerateLowest (high-density commodity)

6. Workload Mapping & Architecture Selection Matrix

Selecting the correct storage primitive depends on application architecture, performance requirements, and data access patterns:

+-------------------------------------------------------------------------+
|               WORKLOAD MAPPING TO STORAGE PRIMITIVES                    |
+------------------------------------+------------------------------------+
| APPLICATION WORKLOAD               | RECOMMENDED STORAGE PRIMITIVE      |
+------------------------------------+------------------------------------+
| High-Performance Enterprise DB     | BLOCK STORAGE (NVMe-oF / FCP)      |
| (Oracle, Microsoft SQL, SAP HANA)  | Requires sub-millisecond latency,  |
|                                    | high random IOPS, in-place updates |
+------------------------------------+------------------------------------+
| Hypervisor VM OS Datastores        | BLOCK STORAGE (VMFS / CSV) or      |
| (VMware vSphere, Microsoft Hyper-V)| HIGH-PERFORMANCE FILE (SMB Direct) |
|                                    | Shared block volumes or persistent |
|                                    | RDMA-accelerated file shares       |
+------------------------------------+------------------------------------+
| User Home Folders & Corporate CAD  | FILE STORAGE (SMB 3.1.1 / NFS v4)  |
| (General office, shared documents) | Hierarchical directory structure,  |
|                                    | native file locking, AD ACLs       |
+------------------------------------+------------------------------------+
| Cloud-Native Container Storage     | BLOCK or FILE via CSI Driver       |
| (Kubernetes Persistent Volumes)    | Block for single-node databases;   |
|                                    | File (ReadWriteMany) for web pods  |
+------------------------------------+------------------------------------+
| AI / ML Big Data Training Lakes    | OBJECT STORAGE (S3 RESTful API)    |
| (Millions of images/audio clips)   | Massive parallel read throughput,  |
|                                    | custom tags, exabyte scaling       |
+------------------------------------+------------------------------------+
| Backup Repositories & Archives     | OBJECT STORAGE (S3 Object Lock)    |
| (HPE StoreOnce Cloud Bank, Veeam)  | Lowest cost per TB, WORM defense,  |
|                                    | distributed erasure coding         |
+------------------------------------+------------------------------------+

7. Common Exam Traps & Pitfalls

  • Exam Trap 1: Assuming Object Storage Allows In-Place Byte Modifications. Exam questions frequently describe a scenario where an application needs to make frequent, small random byte updates inside a 20 GB transactional file. Recommending object storage is incorrect. Modifying a single byte in an object requires re-uploading the entire 20 GB object via an HTTP PUT request, causing catastrophic write amplification and network saturation. Block storage is the only suitable choice.
  • Exam Trap 2: Believing S3 Buckets Contain Real Physical Directories. In Amazon S3 and object storage arrays, folder structures visible in management consoles are entirely synthetic. The storage system maintains a single flat address space. An object key named finance/2026/budget.xlsx does not reside inside a directory called finance; the forward slashes / are simply delimiter characters inside a flat string identifier.
  • Exam Trap 3: Assuming File Storage Outperforms Block Storage Due to Controller Caching. Some assume that because a NAS appliance possesses large controller RAM caches, it is faster than block storage. In reality, file storage introduces the overhead of the network file sharing protocol (NFS/SMB), file system metadata lookup, and file locking mechanisms. Block storage bypasses file system translation entirely, providing the lowest latency and highest deterministic IOPS.
  • Exam Trap 4: Assuming POSIX File Permissions Seamlessly Map to Windows NTFS ACLs. In multi-protocol NAS environments (sharing a single folder over both NFS and SMB), assuming permissions translate automatically without identity mapping is a major operational pitfall. Without an Active Directory to LDAP identity mapping service, Windows clients and Linux clients will experience permission denied errors or unexpected file privilege escalation.
Loading diagram...
Data Access Paths: Block vs File vs Object
Test Your Knowledge

An application developer is evaluating storage architectures for a new cloud-native document management platform. The application requires storing millions of unstructured PDF files, each accompanied by extensive custom searchable metadata tags (such as customer ID, document category, and retention expiration date), accessed via standard web protocols. Which storage architecture is best suited for this workload?

A

Block storage, because it presents raw Logical Block Addresses (LBAs) that allow the web server to format the media directly with an ext4 file system.

B

Direct-Attached Storage (DAS), because SAS-4 cabling removes network protocol overhead for remote web clients.

C

FC-SAN storage, because 32Gb Fibre Channel fabrics give microsecond-level transactional locking to remote HTTP web clients.

D

Object storage, because it uses a flat namespace with unique IDs, rich custom metadata and HTTP/HTTPS REST APIs.

Test Your Knowledge

How does NVMe over Fabrics (NVMe-oF) fundamentally overcome the architectural bottlenecks of legacy SCSI-based storage protocols (such as traditional Fibre Channel FCP and iSCSI)?

A

By replacing the limited queues of legacy SCSI and AHCI stacks with up to 64,000 queues of up to 64,000 commands each, mapped to CPU cores.

B

By encapsulating file-level SMB 3.1.1 compound frames inside stateless UDP datagrams so that TCP connection handshakes are no longer needed.

C

By eliminating all physical networking switches and requiring direct point-to-point PCIe cabling between every server and storage enclosure.

D

By converting all block I/O requests into HTTP RESTful GET and PUT commands processed by a distributed web server gateway.

Test Your Knowledge

A Linux database administrator mounts a raw LUN presented over an iSCSI SAN. What critical step must the operating system perform before applications can store files and directories on this storage volume?

A

The host must issue an HTTP POST request to the storage array REST API to generate an S3 bucket manifest for the LUN.

B

The host must connect to the storage array through NFS export policies to download the array's remote inode table.

C

The host OS must partition the raw block device and format it with a local file system such as XFS or ext4.

D

The host must assign an iSCSI Qualified Name (IQN) to each individual file it creates inside the LUN.

Test Your Knowledge

A systems administrator needs to modify a single configuration parameter inside a 10 GB disk image file stored on an object storage repository. Why does this operation result in substantial network traffic and write amplification compared to performing the same update on a block storage volume?

A

Object storage re-encrypts the entire storage cluster with a new AES-256 master key whenever any single metadata attribute changes.

B

Objects cannot be modified in place; changing any part of an object means uploading a whole replacement object with an HTTP PUT request.

C

Object storage forces the client to negotiate a stateful NFS lock across every node in the cluster before it can update a byte range.

D

Object storage converts all binary data into plain-text JSON documents before writing to disk, which multiplies the stored data volume.

Sections you finish are checked off in the contents.