Skip to content

Sonaric Architecture Overview

Sonaric Network represents a paradigm shift in blockchain infrastructure management, offering a flexible, AI-driven solution for running nodes across multiple networks. This article delves into the architecture that makes Sonaric Network a groundbreaking approach to decentralized computing.

The Foundation: Sonaric Nodes

At the heart of Sonaric Network lies the Sonaric node, a sophisticated piece of software that can run on a wide range of devices, from personal computers to cloud instances. Each Sonaric node is designed to be a versatile compute unit, capable of hosting multiple blockchain nodes (guest networks) simultaneously.

The architecture of a Sonaric node is built upon three key components: a robust container runtime, an intelligent package manager, and an AI agent. These components work in harmony to create a flexible, efficient, and autonomous system.

Container Runtime: The Backbone

The container runtime forms the foundation of each Sonaric node. It's not just a simple container executor; it features a programmable control plane that manages the complete lifecycle of multi-container workloads across one or more machines. This advanced runtime allows Sonaric nodes to efficiently run and manage multiple guest networks, each isolated in its own container.

Package Manager: Streamlined Deployment

Integrated tightly with the runtime is the package manager. It synchronizes with an IPFS repository of immutable packages, each written in Sonaric's composable workload definition language. This design ensures that every package is immediately available to all nodes in the network, enabling instant deployment and automatic updates of guest networks.

The packages themselves are executed natively by the runtime, programming the control plane to manage the guest networks. This approach allows for efficient resource allocation and management, adapting to the needs of each guest network in real-time.

AI Agent: The Intelligent Orchestrator

The AI agent is the brain of the Sonaric node, running within its own container but with privileged access to the runtime API. This access allows the agent to browse available packages, control the runtime, and have full operational knowledge of the system it runs on. The agent makes decisions about resource allocation, network participation, and operational tasks, optimizing the node's performance across multiple guest networks.

Network Architecture and Communication

Sonaric Network is designed as a distributed system of nodes, currently coordinated by a central tracker. Each node reports to the tracker using HTTP, with plans to transition to a decentralized, peer-to-peer protocol in the future. To ensure security and authenticity, every request from a node is signed with its private key, part of a unique identity generated for each node at first startup.

Security and Isolation

Security is paramount in a system designed to run multiple guest networks simultaneously. Sonaric achieves this through several mechanisms:

  1. Each guest network runs in its own rootless container, providing process and filesystem isolation.
  2. Network interfaces for each container are isolated through custom routing rules set up by Sonaric.
  3. Container volumes are mounted separately, ensuring data isolation between guest networks.
  4. A local key management system stores encrypted secrets, with strict permissions ensuring each container only accesses its own secrets.

Resource Validation: Ensuring Honesty

To maintain the integrity of the network and prevent resource misreporting, Sonaric employs an innovative approach using RISC-0 zero-knowledge proofs. The process works as follows:

  1. The tracker periodically issues random computational challenges to nodes.
  2. Nodes must compute these challenges within a RISC-0 zkVM circuit and respond with a receipt within a set time frame.
  3. The receipt must be signed with the node's private key to prevent reuse.

This system leverages the property of zero-knowledge proofs that valid receipts can only be obtained by actually running the correct program with correct inputs. The computation is designed to be brief but resource-intensive, allowing the tracker to verify that nodes possess the computational resources they claim.

Additionally, Sonaric employs hardware fingerprinting and container detection to further ensure the accuracy of resource reporting.

Read more about Proof of Resources.

Future Developments

Sonaric Network's architecture is designed with the future in mind. Plans are in place to decentralize the tracker, moving towards a fully peer-to-peer network. The team is also working on enhancing the AI capabilities, aiming for more sophisticated resource allocation algorithms and autonomous network discovery.

Another key development is the implementation of Decentralized Service Level Agreements (DeSLAs), which will allow for dynamic specification and enforcement of infrastructure requirements across the network.

Conclusion

The architecture of Sonaric Network represents a sophisticated blend of container technology, artificial intelligence, and blockchain infrastructure. By providing a flexible, secure, and efficient platform for running multiple blockchain nodes, Sonaric is paving the way for a more interconnected and resource-efficient blockchain ecosystem. As the network continues to evolve, it promises to play a crucial role in the future of decentralized computing.