Instead, our architecture allows us to realize this using opportunistic
data aggregation. Sensor selection and tasking is achieved
by naming nodes using geographic attributes. As data is sent
from the sensors to the querier, intermediate sensors in the return
path identify and cache relevant data. This is achieved by
running application-specific filters. These intermediate nodes can
then suppress duplicate data by simply not propagating it, or they
may slightly delay and aggregate data from multiple sources. We
are also experimenting with influencing the dynamic selection of
aggregation points to minimize overall data movement.