Event-based communication provides a flexible and robust approach to monitoring and managing large-scale distributed systems. Composite event detection extends the scope and flexibility of these systems, by allowing application components to express interest in complex patterns of events. This makes it possible to handle the large numbers of events generated in Internet-wide systems, and in network monitoring and pervasive computing applications. In this article we introduce a novel generic composite event detection framework that can be added on top of existing middleware architectures, as demonstrated in our implementation over JMS. We argue that the framework is flexible, expressive, and easy to implement. Based on finite state automata extended with a rich time model and parameterization support, it provides a decomposable core language for specifying composite events. This allows detection to be distributed automatically throughout the system, guided by distribution policies that control the quality of service. Finally, tests show that using our composite event system over JMS can reduce bandwidth consumption while maintaining low notification delay for composite events.
Bibliographical noteFunding Information:
Research supported by UK EPSRC and QinetiQ, Malvern, ICL (now part of Fujitsu), and the SECURE EU consortium.