Rover: a toolkit for mobile information access
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Solutions to hidden terminal problems in wireless networks
SIGCOMM '97 Proceedings of the ACM SIGCOMM '97 conference on Applications, technologies, architectures, and protocols for computer communication
Agile application-aware adaptation for mobility
Proceedings of the sixteenth ACM symposium on Operating systems principles
Proceedings of the 24th International Conference on Software Engineering
Automatic Generation of Fault-Tolerant CORBA-Services
TOOLS '00 Proceedings of the Technology of Object-Oriented Languages and Systems (TOOLS 34'00)
Using Mobile Extensions to Support Disconnected Services
Using Mobile Extensions to Support Disconnected Services
Impact of interference on multi-hop wireless network performance
Proceedings of the 9th annual international conference on Mobile computing and networking
ACT: An Adaptive CORBA Template to Support Unanticipated Adaptation
ICDCS '04 Proceedings of the 24th International Conference on Distributed Computing Systems (ICDCS'04)
Mitigating congestion in wireless sensor networks
SenSys '04 Proceedings of the 2nd international conference on Embedded networked sensor systems
A Classification of Disconnected Operation Techniques
EUROMICRO '06 Proceedings of the 32nd EUROMICRO Conference on Software Engineering and Advanced Applications
Concierge: a service platform for resource-constrained devices
Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems 2007
Hardening XDS-Based Architectures
ARES '08 Proceedings of the 2008 Third International Conference on Availability, Reliability and Security
R-OSGi: distributed applications through software modularization
Proceedings of the ACM/IFIP/USENIX 2007 International Conference on Middleware
Crossing the digital divide: cost-effective broadband wireless access for rural and remote areas
IEEE Communications Magazine
Hi-index | 0.00 |
Because middleware abstractions remove the need for lowlevel network programming, modern distributed component systems expose network volatility (i.e., frequent but intermittent outages) as application-level exceptions, requiring custommanual handling. Unfortunately, handling network volatility effectively is nontrivial--the programmer must consider not only the specifics of the application, but also of its target deployment environment. As a result, to make a distributed component application resilient against network volatility, programmers commonly create custom solutions that are ad-hoc, tedious, and error-prone. In addition, these solutions are difficult to customize for different networks and to reuse across different applications. To address these challenges, this paper presents a systematic approach to hardening distributed components to become resilient against network volatility. Specifically, we present an extensible framework for enhancing a distributed component application with the ability to continue executing in the presence of network volatility. To accommodate the diverse hardening needs of various combinations of networks and applications, our framework not only provides a collection of hardening strategies, but also simplifies the creation of new strategies. Our reference implementation, built on top of the R-OSGi infrastructure, is called DR-OSGi1. DR-OSGi imposes a very low overhead on the hardened applications, requires no changes to their source code, and is plug-in extensible. Applying DR-OSGi to several realistic distributed applications has hardened them with resiliency to effectively withstand network volatility.