A Toolkit for Building Dependable and Extensible Home Networking Applications
Dependability and extensibility are two of the key requirements to successful home networking. In this paper, we describe the design and implementation of a software development toolkit for building dependable and extensible home networking applications. A reliable Soft-State Store (SSS) is implemented as a shared infrastructure to simplify robust distributed programming against device and object failures. SSS supports multi-timescale refreshes and selectively uses persistence to accommodate the battery power and network bandwidth constraints in the home networking environment. A publish/subscribe event system allows any changes in the SSS to be propagated to interested subscribers, which then perform appropriate adaptive, corrective, alerting, or cleanup actions. An Attribute-Based Lookup Service (ABLS) and a Name-Based Lookup Service (NBLS), both implemented on top of the SSS for robustness, provide a level of indirection for supporting extensibility as well as allowing user-friendly, natural language-based access. We demonstrate the use of the toolkit for building a home networking system in an actual deployment. We describe two end-to-end remote home automation applications, present performance results, and report our experiences.
author = {Yi-Min Wang and Wilf Russell and Anish Arora},
title = {A Toolkit for Building Dependable and Extensible Home Networking Applications},
booktitle = {4th USENIX Windows Systems Symposium (4th USENIX Windows Systems Symposium)},
year = {2000},
address = {Seattle, WA},
url = {https://www.usenix.org/conference/4th-usenix-windows-systems-symposium/toolkit-building-dependable-and-extensible-home},
publisher = {USENIX Association},
month = aug
}