Evaluating the Impact of Inter-cluster Communications in Edge Computing
Marc Michalke, Iulisloi Zacarias, Admela Jukan, Kfir Toledo, Etai Lev-Ran
TL;DR
Inter-cluster communication is increasingly critical for edge computing in multi-cluster Kubernetes deployments. The authors build an open-source, modular testbed to compare Submariner, ClusterLink, and Skupper using representative workloads such as ML inference/training and vehicle decision assist under varied network conditions. They find that ClusterLink generally provides best performance for large payloads, Submariner excels for small payloads via HTTP GET, and Skupper performs well in some cases but can lag on larger or bidirectional data; transport choices and TCP reuse strongly influence outcomes. The work offers practical guidance for tool selection in edge deployments and highlights the tradeoffs between latency, security, and simplicity in inter-cluster connectivity.
Abstract
Distributed applications based on micro-services in edge computing are becoming increasingly popular due to the rapid evolution of mobile networks. While Kubernetes is the default framework when it comes to orchestrating and managing micro-service-based applications in mobile networks, the requirement to run applications between multiple sites at cloud and edge poses new challenges. Since Kubernetes does not natively provide tools to abstract inter-cluster communications at the application level, inter-cluster communication in edge computing is becoming increasingly critical to the application performance. In this paper, we evaluate for the first time the impact of inter-cluster communication on edge computing performance by using three prominent, open source inter-cluster communication projects and tools, i.e., Submariner, ClusterLink and Skupper. We develop a fully open-source testbed that integrates these tools in a modular fashion, and experimentally benchmark sample applications, including the ML class of applications, on their performance running in the multi-cluster edge computing system under varying networking conditions. We experimentally analyze two classes of envisioned mobile applications, i.e., a) industrial automation, b) vehicle decision drive assist. Our results show that ClusterLink performs best out of the three tools in scenarios with increased payloads, regardless of the underlying networking conditions or transmission direction between clusters. It is closely followed by Skupper, unless request and reply both transport significant amounts of data. Finally, when requesting smaller amounts of data from a service, Submariner slightly outperforms Skupper and ClusterLink regardless of the inter-node networking conditions.
