The convergence of embedded sensors and pervasive highperformance networking is giving rise to a new class of distributed applications, which we refer to as Internet-scale sensing (ISS). ISS systems consist of a large number of geographically distributed data sources tied into a framework for collecting, filtering, and processing potentially large volumes of real-time data. In this paper, we discuss the issues involved in building dependable ISS systems. ISS systems differ from conventional distributed systems in a number of respects, including the number of data sources, differing data quality requirements, and necessity to continue operating despite intermittent link and node failures. Such failures should result in graceful degradation of the quality of the results returned by the system, rather than loss of results. In this paper, we argue that conventional approaches to achieving consistency do not scale to the requirements of ISS systems. We outline a lightweight approach to dependability based on a set of metrics that reflect on the quality of the answers returned by the system. We argue that answers returned by an ISS system should include a measure of the harvest and freshness of the data sources participating in the result, and these metrics in turn can be used to drive fault-tolerance mechanisms in the system. We also propose three simple techniques to achieve scalability and graceful degradation in the face of failure.
Download Full PDF Version (Non-Commercial Use)