AuthorBridges, Patrick G.
AdvisorSchlichting, Richard D.
MetadataShow full item record
PublisherThe University of Arizona.
RightsCopyright © is held by the author. Digital access to this material is made possible by the University Libraries, University of Arizona. Further transmission, reproduction or presentation (such as public display or performance) of protected items is prohibited except with permission of the author.
AbstractAdaptation is an increasing important attribute for software that must operate well in changing environments, such as those encountered by mobile devices connected by wireless networks. However, adaptive software can be difficult to design, implement, and build, especially in systems with multiple adaptable components on multiple machines. A key challenge in such systems is coordinating adaptation across components, whether these components on located on the same or different machines. Without such coordination, for example, components may adapt in inconsistent or incompatible ways, leading to instability or poor performance. In addition, customizing adaptation policies to match the demands of the system and constructing testbeds are also difficult. This dissertation describes Cholla, a framework for implementing adaptation in configurable networked software. Cholla addresses the challenges of inter-component coordination on a single machine and can be used along with existing techniques to implement coordination across machines. In addition, Cholla extends the benefits of configurable software to adaptation by allowing the policies that control adaptation to be constructed in a configurable manner. This allows the control logic to be analyzed, customized, and composed in ways that would be difficult at best in other systems. A prototype implementation of Cholla that uses Cactus, a system for building highly configurable network protocols and services, is also presented. Two example applications are presented to demonstrate the effectiveness of Cholla: a multimedia transmission system and a configurable proxy for wireless networks. Both applications use CTP, a Cactus-based configurable transport protocol, and are structured in such a way that Cholla controls adaptive behavior in both CTP and between CTP and the application. Experimental results show that approach is the effective, especially in cases where adaptation mechanisms are limited and system behavior is very sensitive to adaptation choices. Finally, this dissertation describes a WaveLAN emulator that allows the testing of adaptable software for wireless systems without constructing a complete hardware testbed. While the emulator can only provide accurate results under light network loads, it is nonetheless useful for emulating the dynamic nature of connectivity in low latency wireless networks.
Degree ProgramGraduate College