Resumen de arquitectura
Savitri Network está estructurado como un monorepo con 13 submódulos git. Cada crate de Rust es independiente con dependencias locales por ruta.
Jerarquía de crates
savitri-core/
├── savitri-types/ ← primitivos (transacciones, cuentas, cripto)
├── savitri-crypto/ ← Ed25519, hashing, ZKP
├── savitri-mempool/ ← puntuación SIMD, gestión de cola
├── savitri-consensus/ ← PoU, votación BFT, DAG
├── savitri-storage/ ← RocksDB, modelo de estado
├── savitri-network/ ← libp2p, gossipsub, descubrimiento de pares
├── savitri-rpc/ ← servidor JSON-RPC 2.0
├── savitri-contracts/ ← ejecución de contratos inteligentes
├── savitri-node/ ← punto de entrada, orquestación
└── savitri-cli/ ← herramientas de línea de comandos
Flujo de datos
[Cliente] → RPC → Mempool → Consenso (PoU+BFT) → Almacenamiento
↓
[Red P2P] ← → [Otros nodos]
Componentes clave
Mempool
Cola optimizada con SIMD y puntuación de transacciones (0–1000). Usa AVX2+FMA en x86_64 y NEON en ARM para verificación paralela de firmas.
Consenso PoU+BFT
Proof-of-Unity evalúa validadores según uptime, stake y rendimiento de hardware. La votación BFT con quórum 2f+1 (67%) garantiza tolerancia a fallos bizantinos.
Almacenamiento DAG
El estado de la red se representa como un grafo acíclico dirigido (DAG). El sharding permite procesar transacciones independientes en paralelo.
Capa P2P
libp2p con gossipsub para propagación de transacciones y bloques. La verificación de firmas NUMA-aware reduce la latencia bajo alta carga.
Objetivos de rendimiento
| Métrica | Objetivo |
|---|---|
| Rendimiento | 125,000+ TPS |
| Latencia de finalización | < 2 segundos |
| Configuración mínima | Hardware de consumo |
| Esquema de firma | Ed25519 |