c26de44f3424b5e9e8a6083eeb277dca.ppt
- Количество слайдов: 16
Framework of an Application-Aware Adaptation Scheme for Disconnected Operations Umar Kalim, Hassan Jameel, Ali Sajjad, Sang Man Han, Sungyoung Lee, and Young-Koo Lee Department of Computer Engineering, Kyung Hee University dated: 2005/11/23
Background • Hand-held devices using a wireless network • Environment conditions such as network bandwidth varies due to user mobility • Service may be disrupted as a result of – Network bandwidth dropping below a threshold – Out of range • Example scenario – Hospital’s environment/rescue team – Junior doctors need to diagnose patients
Wireless Access Point Below threshold Within range Out of range
Research Objective Devise a mechanism that allows the system to automatically reconfigure itself in order to maintain service availability (even with poor network bandwidth)
Proposed Solution • Mobile computing middleware (Remote Evaluation paradigm) – Reflection – Code mobility • Adaptation scheme is application aware – The framework allows the developer to determine the application policies
Proposed Solution • Dynamically reconfigure the application – Redeploy components - when online a offline Before After Operates according to the remote evaluation paradigm Certain objects (with their states) are relocated to the client platform and continues its operation Example Implementation
Types of Disruptions • Voluntary disconnections – User initiated event – Knowledge in advance – enable the system to prepare for preparation • Involuntary disconnections – Unplanned – network failure – No knowledge in advance - need to detect disconnection, require to be pessimistically prepared for it, and pro-actively prepare a response • Remedy is the same
How is it Achieved • Floating objects – Deal with the process of adaptation to disconnected operations • Based on a distributed object framework – Allow the redeployment of components • Code mobility and dynamic binding – Java class loader and Java Reflection API – Ability to replace objects – substitute for remote implementations • Transfer of State – Java Serialization/De-serialization • Disconnection. Management Interface – disconnect and reconnect
Classification of Components for Disconnection • Log – After disconnection, the invocations that are made on this reference are logged locally • Substitute – Upon disconnection , a temporary but local reference should be used to replace the remote reference – It may have a different (or limited) functionality • Replica – The reference should be replicated and transferred to the client for local execution to maintain service availability – Reconnection; latest, revoke, prime, merge
Classification of Components for Reconnection • Latest – The state of the reference with latest time-stamp is maintained while the other is discarded • Revoke – The entire changes made on the replicated or substituted reference are dropped in favor of the state of the original reference • Prime – Contrary to revoke references – The state of the original reference is discarded in favor of the Prime reference • Merge – Neither the replicated/substituted reference nor the original reference is clearly identified to be maintained – There is a need for conflict detection and resolution techniques • All disconnection-aware references may implement the Merge interface – Whenever a reconnection occurs, the system would invoke the merge method for reconciliation by using callback mechanism
State Transitions Module Layout Class diagram – framework
Real-Time Effectiveness How long does a disconnection take? How long does the process of reconciliation take?
Related Work • Commonly used techniques – – – Caching [1] Hoarding [2] Queuing remote interactions [3] Replication and replica reconciliation [1] Multi-modal components [4] • Architectural reconfiguration [5] – Exact algorithm - Complexity - O(kn-m) – Stochastic algorithm - Complexity - O(n 2) – Adaptive greedy algorithm - Complexity - O(n 3)
Conclusion & Future Work • Programming model to maintain service availability even in the face of disconnections – Code mobility – Reflection • Application in Delay Tolerant Networks (DTNs) • Operational issues of predicting a disconnection in the face of fading bandwidth
Questions & Comments Thanks Please feel free to contact us for further details at the following addresses Young-Koo Lee yklee@khu. ac. kr Umar Kalim umar. kalim@gmail. com Department of Computer Engineering, Kyung Hee University, Suwon, South Korea.
Selected References 1. 2. 3. 4. 5. 6. J. J. Kistler and M. Satyanarayanan. Disconnected Operation in the Coda File System. ACM Transactions on Computer Systems, vol. 10, no. 1, February 1992 G. H. Kuenning and G. J. Popek. Automated Hoarding for Mobile Computers. Proc. of the 16 th ACM Symp. on Operating Systems Principles, St. Malo, France, October, 1997 A. D. Joseph, et. al. , Rover: a toolkit for mobile information access, 15 th ACM Symposium on Operating Systems Principles, December 1995, Colorado Y. Weinsberg, and I. Ben-Shaul. A Programming Model and System Support for Disconnected-Aware Applications on Resource-Constrained Devices. Int’l Conf. on Software Engr. , Orlando, Florida, May 2002 M. Mikic-Rakic and N. Medvidovic. Support for Disconnected Operation via Architectural Self-Reconfiguration M. Shepperd et al. Comparing Software Prediction Techniques using Simulation, IEEE Transactions, 2001. Please refer to our paper for further details