forked from ton-618-projects/cdfs
-
Notifications
You must be signed in to change notification settings - Fork 0
00_overview
Lavnish edited this page Mar 31, 2026
·
1 revision
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.
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
- Client Application Interface
- Metadata Management
- Chunk Storage & Management
- Network Communication Protocol
- Fault Tolerance & Replication Monitoring
- System Configuration
- Persisted Metadata (FSImage & Edit Log)
- System-wide Logging