CellProtocol Explainer
The CellProtocol is a proposal for how solve the fundamentals of unleashing the potential of the individual in the Digisphere using an ecosystem built with nano services.
To unleash the potential of the individual there is some requirements that has to be fulfilled. To get there we must identify both needed functionality and the means to measure it. Both which is nontrivial but not impossible.
Why should we unleash the potential of the individual?
The reason is that value generation is rooted in the constructive or positive contribution of each individual. This goes for both the analog world and the digital. That it is possible to boost individual value creation by doing financial tricks does not alter the fact that whatever the boost is - boost times 0 is still 0. So any number above 0 in the individual's contribution will increase the accumulated output greatly. Sadly this seems to be forgotten.
How can each individual’s potential be unleashed in the Digisphere?
Although there's certainly different approaches and implementations that may work, there no way around empowering the individual to be in control of own value creation. If you don't have the means to understand and control your own value creation there is a slim chance you’ll ever reach the potential of your data and contribution. The CellProtocol aims to be a foundational ruleset that enables this.
To avoid that any single entity gets defining power, the protocol should be owned by the Commons and implementations should be verified by neutral entities like The Digipomps Foundation. (For this reason general functionality for voting should also be available.)
CellProtocol
The CellProtocol aims to be a minimal ruleset for streams from authorised execution of code. The design goal is to make the protocol implementation-agnostic, distributed and scalable. To achieve authorised execution of code, the protocol needs some structure to embed functionality. To be able to authorise executing the functionality we need, authentication and a way to grant permissions. Which requires authentication. To be able to stream, we need publisher and subscribers. All this is handled by the Cell.
Cells
Cells represent encapsulated units of functionality within the nano services ecosystem. These units have a singular output stream and possess the capability to subscribe to multiple input streams, facilitating seamless communication within and across address spaces. A distinguishing feature of Cells is their flexibility: they can be tailored to specific tasks and requirements, making them highly adaptable to diverse computing environments. The Cell structure should be as lightweight as possible but must handle authentication and authorisation
Key Interfaces:
The protocol defines several essential interfaces for Cells:
- Emit and Absorb Interfaces: These interfaces form the core functionality of Cells. The Emit interface enables the output of data or results, while the Absorb interface allows Cells to intake and process incoming data.
- Explore Interface: Although optional, the Explore interface empowers Cells to query and discover relevant information within their environment, enhancing their autonomy and intelligence.
- Meddle Interface: Similarly optional, the Meddle interface provides Cells with the ability to modify or influence data streams, enabling advanced manipulation and processing capabilities.
Identity and Access Management:
Each Cell is owned by an Identity, which governs access to its data and functionality. Through a rigorous agreement process, identities can grant or revoke access to Cells, ensuring secure and authorized interactions between entities within the system. This granular access control mechanism promotes privacy, security, and trust in the ecosystem.
Interconnectivity and Collaboration:
To facilitate seamless communication between address spaces, special Cells act as intermediaries, relaying commands and data through an internal protocol. This interconnected network enables efficient collaboration and coordination between Cells across distributed environments, unlocking new possibilities for innovation and synergy.
Benefits and Impact:
- Enhanced Security: By enforcing strict access control and authorization mechanisms, the protocol mitigates security risks and safeguards sensitive data and functionality.
- Improved Interoperability: Standardizing communication protocols and interfaces fosters interoperability between diverse nano services and address spaces, promoting compatibility and integration.
- Efficient Collaboration: The protocol streamlines collaboration and data exchange between Cells, accelerating the development and deployment of complex distributed systems.
- Empowering Innovation: With a robust framework in place, developers and organizations can unleash their creativity and drive innovation, leveraging the power of nano services to tackle real-world challenges.
- Individ-centric: Privacy is preserved and enhanced by empowering the individual with control of own digital presence.
- Open for all: To truly empower the individual, the protocol must be a public good owned by all users.
Cells are hosted in a Scaffold that implements functionality for finding, configuring and loading cells. Interpreting a json serialised form of cell configuration must be part of any CellScaffold implementation to facilitate similar behaviour in different implementations.
Example CellConfiguration:
{
"name": "Test feed",
"uuid": "52B6B1CD-93DE-4B44-824D-8BD87AB08AC5",
"cellReferences": [
{
"subscribeFeed": true,
"label": "chat",
"setKeysAndValues": [
{
"key": "start"
}
],
"endpoint": "cell:///SimpleChat"
},
{
"subscribeFeed": true,
"label": "locations",
"setKeysAndValues": [
{
"key": "start"
}
],
"endpoint": "cell:///Locations"
}
]
}
To bridge the abyss between scaffolds running in different address spaces special Cells are used to act as proxies. These Cells are special because the exist in two different scaffold address spaces. Like in two different cloud services or in smartphone and cloud service. A bridge can cover the span between two smartphones or two processes running on the same hardware. A cell interacting with a bridge will use the exact same interfaces as with a local cell, the only thing that differs may be latency.
The Digipomps Foundation Nano Services Protocol - The Cell Protocol - represents a significant milestone in the evolution of distributed computing. By providing a comprehensive framework for the authorized execution of functionality within nano services, we pave the way for a more secure, interoperable, and collaborative ecosystem. Join us in shaping the future of computing through the adoption and advancement of this groundbreaking protocol.
Thank you for considering our project.