The enhanced communication abstraction layer (eCAL) is a middleware that enables scalable, high performance interprocess communication on a single computer node or between different nodes in a computer network. The design is inspired by known Data Distribution Service for Real-Time Systems (see Data distribution service on wikipedia). The current eCAL implementation realizes a subset of such a DDS system, there is only a basic support for Quality of Service (QoS) driven data transport (best effort and reliable).

eCAL is designed for typical cloud computing scenarios where different processes exchange their I/O’s using a publisher/subscriber pattern. The data exchange is based on so called topics. A topic wraps the payload that should be exchanged with additional informations like a unique name, a type and a description. A topic can be connected to more than one publisher and/or subscriber. These are the basic elements of the eCAL API.

Programming language: C++
License: Apache License 2.0
Latest version: v5.7.5

eCAL alternatives and similar libraries

Based on the "Inter-process communication" category.
Alternatively, view eCAL alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of eCAL or a related project?

Add another 'Inter-process communication' Library


eCAL has been moved

We are proud to announce that Continental eCAL has been moved under the umbrella of the Eclipse Foundation. From now on, Eclipse eCAL will be developed in the new repository:


You can find the new Eclipse eCAL Documentation at: https://eclipse-ecal.github.io/ecal/