So in the course of Decentralized Systems in UPC we’ve been challenged to develop and test a solution that provides high availability of services in a Wide Area Network (WAN).
In a WAN, nodes are heterogeneous in terms of resources and so we were thinking of a way to monitor these resources, balance workload and dynamically define the level of replication. We will try to pay attention to message overhead costs and achieving the best latency possible.
So far I found a few papers that propose interesting solutions for this problem. One of them is “Resource-Aware Migratory Services in Wide-Area Shared Computing Environments” (*) in which the authors develop and test a system that behaves has an autonomous mobile agent. This agent has some migration policies that allow it to decide if it should or not migrate itself to another node with more available resources. This migration has to take into account service state and client session transfers. For clients to keep track of the service they implemented a migratory location server based on a DHT. The period in which the service is migrating is described as a “blackout period” and in order to reduce this period they replicate the service. They present some results that I will address later.
Today I will take off some time to get a deeper insight of this paper but by now it seems that we can either contribute to this work by performing a few more performance tests and performing some research on its levels of replication or by developing a new systems if it seems appropriate. The tests will probably be performed on PlanetLab and hopefully I’ll have time to do a nice page with statistics and a googlemaps interface in order to keep track of the deployment of services to nodes. The given time to research on the topic of the project is not the most favorable but we’ll try to make the best out of it!
(*) “Resource-Aware Migratory Services in Wide-Area Shared Computing Environments” – Annand Tripathi, Vinit Padhye, Devdatta Kulkarni