A simple protocol to automate the executing, scaling, and reconfiguration of Cloud-Native Apps
Stanislaw Ambroszkiewicz, Waldemar Bartyna
TL;DR
The paper addresses automating execution, scaling, and reconfiguration of Cloud-Native Apps by introducing SSMMP, a protocol that extends the networking stack rather than the business logic. It defines an abstract CNApp model with a Manager-Agent-Instance architecture and a session-based mechanism to dynamically instantiate and connect microservices. The key contributions include the formal SSMMP/v1.1 specification, an abstract graph representation of CNApps, and detailed workflows for initialization, execution, session management, and shutdown, plus guidance on recovery and monitoring. This protocol-free, runtime-centric approach enables scalable control planes for large CNApp deployments and aligns with trends toward protocol-based management without sidecars, potentially enabling Netflix/Uber-scale CNApps.
Abstract
We propose a simple protocol for Service Mesh management. The protocol specification consists of the formats of messages, and the actions taken by senders and recipients. The idea is that microservices of Cloud-Native Application should be also involved in configurations of their communication sessions. It does not interfere with the business logic of the microservices and requires only minor and generic modifications of the microservices codebase, limited only to network connections. Thus, sidecars are no longer needed, which is in line with the current trends, e.g. Cilium Service Mesh. This article presents the full formal specification of the proposed protocol SSMMP/v1.1.
