CLES: A Universal Wrench for Embedded Systems Communication and Coordination
Files
TR Number
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Modern embedded systems—autonomous vehicle-to-vehicle communication, smart cities, and military Joint All-Domain Operations—feature increasingly heterogeneous distributed components. As a result, existing communication methods, tightly coupled with specific networking layers and individual applications, can no longer balance the flexibility of modern data distribution with the traditional constraints of embedded systems. To address this problem, this paper presents a domain-specific language, designed around the Representational State Transfer (REST) architecture, most famously used on the web. Our language, called the Communication Language for Embedded Systems (CLES), supports both traditional point-to-point data communication and allocation of decentralized distributed tasks. To meet the traditional constraints of embedded execution, CLES’s novel runtime allocates decentralized distributed tasks across a heterogeneous network of embedded devices, overcoming limitations of centralized management and limited operating system integration. We evaluated CLES with performance micro-benchmarks, implementation of distributed stochastic gradient descent, and by applying it to design versatile stateless services for vehicle-to-vehicle communication and military Joint All-Domain Command and Control, thus meeting the data distribution needs of realistic cyber-physical embedded systems.