Skip to content

00_overview

Lavnish edited this page Mar 31, 2026 · 1 revision

Overview: cdfs-ton

The cdfs-ton project implements a C Distributed File System, allowing users to store and retrieve files across multiple machines. It works by breaking files into chunks and distributing them among Storage Nodes. A central Metadata Server keeps track of file locations and handles requests, while ensuring data safety through replication and fault tolerance. Users interact with the system using a command-line client application for common file operations.

Visual Overview

flowchart TB

%% --- Client Layer ---
subgraph Client_Layer
    C["Client Interface"]
end

%% --- Control Plane ---
subgraph Control_Plane_Metadata
    M["Metadata Management"]
    P["Persisted Metadata (FSImage & Edit Log)"]
end

%% --- Data Plane ---
subgraph Data_Plane_Storage
    S["Chunk Storage & Management"]
end

%% --- Reliability ---
subgraph Reliability_Monitoring
    R["Fault Tolerance & Replication"]
end

%% --- Infrastructure ---
subgraph Infrastructure
    N["Network Protocol"]
    CFG["System Configuration"]
    L["System Logging"]
end

%% --- Core Flow ---
C -->|"File Ops"| M
C -->|"Chunk Transfer"| S

M -->|"Directs"| S
S -->|"Reports"| M

R -->|"Updates State"| M
R -->|"Replication"| S

M -->|"Persist"| P
P -->|"Restore"| M

%% --- Configuration ---
CFG --> M
CFG --> S
CFG --> C

%% --- Network Usage ---
C --> N
M --> N
S --> N
R --> N

%% --- Logging ---
M --> L
S --> L
C --> L
CFG --> L
R --> L
P --> L
Loading

Chapters

  1. Client Application Interface
  2. Metadata Management
  3. Chunk Storage & Management
  4. Network Communication Protocol
  5. Fault Tolerance & Replication Monitoring
  6. System Configuration
  7. Persisted Metadata (FSImage & Edit Log)
  8. System-wide Logging

Clone this wiki locally