Перейти к основному содержимому

Обзор архитектуры

Savitri Network структурирована как монорепозиторий с 13 git-подмодулями. Каждый Rust-крейт независим и имеет локальные path-зависимости.

Иерархия крейтов

savitri-core/
├── savitri-types/ ← примитивы (транзакции, аккаунты, крипто)
├── savitri-crypto/ ← Ed25519, хэширование, ZKP
├── savitri-mempool/ ← SIMD-оценка, управление очередью
├── savitri-consensus/ ← PoU, BFT-голосование, DAG
├── savitri-storage/ ← RocksDB, модель состояния
├── savitri-network/ ← libp2p, gossipsub, обнаружение узлов
├── savitri-rpc/ ← JSON-RPC 2.0 сервер
├── savitri-contracts/ ← исполнение смарт-контрактов
├── savitri-node/ ← точка входа, оркестрация
└── savitri-cli/ ← инструменты командной строки

Поток данных

[Клиент] → RPC → Mempool → Consensus (PoU+BFT) → Storage

[P2P сеть] ← → [Другие ноды]

Ключевые компоненты

Mempool

SIMD-оптимизированная очередь с оценкой транзакций (0–1000). Использует AVX2+FMA на x86_64 и NEON на ARM для параллельной верификации подписей.

Консенсус PoU+BFT

Proof-of-Unity оценивает валидаторов по аптайму, стейку и производительности оборудования. BFT-голосование с кворумом 2f+1 (67%) обеспечивает Byzantine fault tolerance.

DAG-хранилище

Состояние сети представлено как направленный ациклический граф (DAG). Шардирование позволяет параллельно обрабатывать независимые транзакции.

Слой P2P

libp2p с gossipsub для распространения транзакций и блоков. NUMA-aware верификация подписей снижает задержки при высокой нагрузке.

Целевые показатели производительности

МетрикаЦель
Пропускная способность125 000+ TPS
Задержка финализации< 2 секунды
Минимальные требования к нодеПотребительское железо
Схема подписиEd25519