21-25 May 2012
New York City, NY, USA
US/Eastern timezone

The new CERN Controls Middleware

24 May 2012, 13:30
4h 45m
Rosenthal Pavilion (10th floor) (Kimmel Center)

Rosenthal Pavilion (10th floor)

Kimmel Center

Poster Online Computing (track 1) Poster Session


Andrzej Dworak (CERN)


The Controls Middleware (CMW) project was launched over ten years ago. Its main goal was to unify middleware solutions used to operate CERN accelerator complex. A key part of the project, the equipment access library RDA, was based on CORBA, an unquestionable middleware standard at the time. RDA became an operational and critical part of the infrastructure, yet the demanding run-time environment revealed shortcomings of the system. Accumulation of fixes and workarounds led to unnecessary complexity. RDA became difficult to maintain and to extend. CORBA proved to be rather a cumbersome product than a panacea. Fortunately, many new transport frameworks appeared since then. They boasted a better design and supported concepts that made them easier to use. Willing to profit from the coming long LHC shutdown which will make it possible to update the operational software, the CMW team reviewed user requirements and in their terms investigated eventual CORBA substitutes. Evaluation of several market recognized products helped to identify three most-suitable middleware solutions: ZeroMQ, Ice and YAMI. This paper presents the prototyping process using the three libraries, its outcome and the influence of the chosen product on the internal implementation of the new RDA. Also, the new generic API and its strengths are presented. The article ends with an outline of the planned deployment process and explains how backward compatibility problems are addressed.

Primary author


Presentation Materials