Performance Modeling and Benchmarking of Event-Based ... - DVS
Performance Modeling and Benchmarking of Event-Based ... - DVS
Performance Modeling and Benchmarking of Event-Based ... - DVS
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chapter 2<br />
Background<br />
In this chapter we provide an overview <strong>of</strong> the state-<strong>of</strong>-the-art in the area <strong>of</strong> event-based systems<br />
(EBS) <strong>and</strong> performance modeling. We discuss the meaning <strong>of</strong> events <strong>and</strong> typical applications as<br />
well as different middlewares for EBS <strong>and</strong> introduce performance models called queueing Petri<br />
nets (QPN).<br />
2.1 <strong>Event</strong>-<strong>Based</strong> Systems<br />
For a better underst<strong>and</strong>ing <strong>of</strong> event-based systems we first introduce our underst<strong>and</strong>ing <strong>of</strong> events<br />
<strong>and</strong> related terms. The following definitions are based on our work presented in [101]. However,<br />
slightly different definitions are used by [144, 143, 223].<br />
An event is defined as a significant change in the state <strong>of</strong> the universe [48, 50]. By referring<br />
to significant changes, the infinite number <strong>of</strong> events is limited to those that are relevant to<br />
an application. Since time is an inherent dimension <strong>of</strong> the universe, two observations <strong>of</strong> the<br />
universe at different points in time constitute two distinct events, even if no other properties<br />
have changed.<br />
Further, we distinguish between change events <strong>and</strong> status events:<br />
• A change event is an observed state change in comparison to the previous state.<br />
Example: An object has changed its position by a few meters.<br />
• A status event describes a current state.<br />
Example: Two readings <strong>of</strong> a temperature sensor at different points in time.<br />
observation that both yielded the same temperature constitutes an event.<br />
Even the<br />
By considering time an integral part <strong>of</strong> the state <strong>of</strong> the universe, both change <strong>and</strong> status events<br />
can be modeled in a uniform manner: a status event is a change event, in which the time has<br />
changed.<br />
<strong>Event</strong>s must be observed to be reported <strong>and</strong> processed. An observation captures a discrete<br />
instance <strong>of</strong> a (possibly continuous) signal. An observation <strong>of</strong> an event carries a timestamp <strong>and</strong><br />
descriptive parameters <strong>and</strong> is typically represented as a tuple <strong>of</strong> values. Depending on the type<br />
<strong>of</strong> event <strong>and</strong> application system, the timestamp may be just one point (point semantics <strong>of</strong> time,<br />
instantaneous event) or an interval (interval semantics <strong>of</strong> time, interval event). Parameters may<br />
be absolute values or deltas relative to older reference values (⇒ change event).<br />
<strong>Event</strong>s, or more precisely, their representation, must be reported to event consumers (event<br />
sink, event h<strong>and</strong>ler, event listener, event subscriber) using an event notification. It is generally<br />
accepted that event notifications are routed from event producers (event source, publisher) to<br />
event consumers by a notification service. The notification service decouples producers <strong>and</strong><br />
consumers, <strong>and</strong> provides the routing from source to sink [155]. In the simplest form, this<br />
9