Message System and Data Transmission in the KLOE Data Acquisition System

Paper: 281
Session: B (talk)
Speaker: Doria, Alessandra, INFN, Napoli
Keywords: data acquisition systems, special architectures

Message System and Data Transmission in the KLOE
Data Acquisition System

Alessandra Doria

INFN Sezione di Napoli, Mostra d'Oltremare Pad.20, 00185 Napoli, Italy
and the KLOE Collaboration

The KLOE experiment is planned to run at the beginning of 1998, performing
CP violation studies at sensitivity of the order of 10^-4 the
Data Acquisition system has to support a total throughput of 50 MBytes
at a trigger rate of 10 kHz.
These requirements are a challenge to the DAQ system,
both on the electronics and the software sides.

Looking at the system from the software point of view,
the KLOE DAQ programs are distributed in a multi-platform UNIX environment.

Inside a single node, the mechanisms for inter-process communication
are implemented using standard UNIX facilities, such as signals, shared
memories and message queues, while the protocol used to implement
inter-node communication is the SNMP, with private
extensions of the standard MIB. This allows to fully integrate the
management of the DAQ network and of the DAQ processes in the run control.
Online monitoring facilities are also under development, using the same

All the DAQ programs comply with a common skeleton, which
implements the message system and the storage of relevant process variables
in a shared memory. Writing programs according to the ``template'' program,
each developer does not have to care about communication between its own
process and the run control.

A command server runs on each DAQ node, implemented as a SNMP server
running at user level. It controls the start up of the DAQ processes on
its local node and is responsible for distributing messages coming
from the network to the processes.

Through appropriate MIB variables, each DAQ node defines its relevant features,
such as functionality in the DAQ network, average throughput in previous runs
while sending or building events and so on. Using these parameters,
the central data flow controller can perform the assignment and
optimize the distribution of event data to builders, according to the real

We are now ready for a system test, using final electronics and a
prototype of the full DAQ system.
Another system test is also running with final software components,
using simulated events at the maximum rate foreseen in the experiment.
Performances achieved in the data transmission as well as in the data
monitoring and control will be presented.