Service Oriented Architectures (SOA) based on Web services are gaining high popularity and importance on the internet. Their area of application is not only limited to static and managed networks, but includes also dynamic environments, such as mobile ad-hoc networks. However, the reliablity of an SOA is heavily impacted by the reliablity of the underlying network infrastructure. Especially in mobile ad-hoc networks, where hosts are known to disconnect unpredictably, causing also transient network topologies, the availability of individual Web services is hampered.
The Vienna Dynamic Web Service Replicator aims at this problem by introducing a flexible replication and synchronization mechanism for stateful Web services
The goal of the ViSeRep project is to
develop an all-round solution for replication of Web services, which is
able to be applied in any kind of TCP-based network. This includes
WANs, LANs, Ad-hoc networks, VPNs, etc. and implies the following
requirements to such a solution:
To achieve this, we are developing a
replicator system which must be installed on each host which is
providing Web services and participating in the replication process
(e.g. accepting deployment of replicas, controlling placement,
monitoring availability of services). Its functionality is split into
several modules which operate individually, however communicate via the
internal database which stores all relevant information about the
network environment.

| Systems Architecture |
The concept of ViSeRep is based on a global view, where each host is informed about the state of the network, which Web services are deployed on which hosts, which tasks are performed where, and whether itself is expected to perform a task, such as controlling or monitoring. The system is designed to swing itself into a consistent state after changes in the network, such as failures. All information about the environment is collected and propagated by so called active monitors, which are elected from all hosts.

ViSeRep supports synchronization of stateful Web services by providing interfaces for declaring relevant data (e.g. objects, variables) for the service's state, which are synchronized automatically between all replicas in a primary copy manner.
Finally, we do allow the application of
customized replication strategies as plug-ins. For instance it is
possible to optimize the replica placement mechanism for particular
network environments or to extend it by taking into account prediction
of disconnections and of changing network topologies.
Publications