Unified S3 Data Plane (SAT & SCT)
API Reference
References
•
AARKAM-REF-0501
Aarkam.Gateway Architecture & Protocols
Technical overview of the high-performance ASP.NET Core Kestrel gRPC and S3 REST Gateway interface.
Document Identifier
AARKAM-REF-0501
Standard Status
Normative Spec
Security Classification
Sovereign Tier-4 Enterprise
Specification Revision
V-1.0.0-GA • 3 min read
Aarkam.Gateway is the unified API gateway interface of the distributed storage cluster. Built on high-performance ASP.NET Core Kestrel and gRPC, it exposes high-concurrency streaming endpoints for S3-compatible REST clients and the native SDK (Aarkam.Client).
1. Gateway Routing Architecture
⚡
Gateway Network Ports & Protocol Routing
Port Architecture
Port 57772 / 7772
Rokka S3 REST Gateway
HTTPS / TLS 1.3
Port 57774
Rokka Coordinator
Raft MON Quorum / mTLS
Port 57775
Rokka Storage Daemon
Kdouja Direct I/O / gRPC
2. Core Responsibilities
- Protocol Translation & S3 Compatibility: Converts incoming S3 REST requests (
PUT,GET,DELETE,HEAD) into high-performance gRPC protocol buffer streams (StoreChunk,RetrieveChunk). - Stream Demultiplexing: Splits large incoming byte streams into 4KB data pages, coordinating parallel transmission to the physical storage nodes resolved from the hash ring.
- Zero-Copy Memory Semantics: Uses unmanaged native memory buffers and
ReadOnlySpan<byte>pipelines, guaranteeing zero intermediate memory allocations in the managed .NET heap.
3. Protocol Buffer Contracts (StorageService.proto)
The gateway hosts the core protocol buffer RPC contracts:
protobuf
syntax = "proto3";
package aarkam.storage;
service StorageService {
// Client-to-Gateway streaming upload RPC
rpc StoreChunk(stream ChunkWriteRequest) returns (ChunkWriteResponse);
// Gateway-to-Client streaming download RPC
rpc RetrieveChunk(ChunkReadRequest) returns (stream ChunkReadResponse);
}
message ChunkWriteRequest {
string bucket = 1;
string key = 2;
int64 chunk_index = 3;
bytes payload = 4;
string checksum_crc32c = 5;
}
message ChunkWriteResponse {
bool success = 1;
string etag = 2;
int64 bytes_written = 3;
}
4. Port Allocations & Endpoints
| Protocol | Default Port | Transport | Purpose |
|---|---|---|---|
| AarkamIO Portal | 57771 / 7771 |
HTTPS / HTTP (TLS 1.3) | Web Management Console, Genesis Ceremony (/genesis), Sovereign IAM. |
| Rokka S3 Gateway | 57772 / 7772 |
HTTPS / HTTP (TLS 1.3) | Client-facing AWS SigV4 S3 REST object API. |
| Rokka Coordinator | 57774 / 7774 |
mTLS (HTTP/2 gRPC) | Distributed Raft MON consensus quorum, HRW hash ring topology. |
| Abodi / Kdouja Storage | 57775 / 7775 |
mTLS (gRPC IPC) | Direct I/O (66KB sector) chunk transit and parallel replication. |
| Abodi Diagnostics Agent | 57776 / 7776 |
HTTPS / HTTP REST | Node diagnostics, S.M.A.R.T. telemetry, 72h ML failure runway. |
| Prometheus Metrics | 9090 |
HTTP | OpenTelemetry & Prometheus cluster metrics scrape target. |