We overview the MESSENGER project that aims at managing data between distributed UDDI registries. The project suggests integrating users and software agents into what is referred to as messengers. Initially, software agents reside in users' mobile devices and cache a description of the Web services that satisfy their users' needs. Each time a user is in the vicinity of a UDDI registry, her software agent interacts with that UDDI registry, so the details stored on Web services are submitted. Unlike other research initiatives in the field of Web services, which consider a single UDDI registry and assume a wired and stable communication infrastructure, we are particularly concerned in the MESSENGER project with the following aspects:
UDDI registries are deployed across various regions. An UDDI registry is alert to the presence of other peers, but does not perform any direct exchange on its content with them. The UDDI registries may belong to different businesses and thus, pose different requirements on acceptable announcements and retrieval requests of Web services.In a typical Web services scenario, an UDDI registry is responsible for two operations. The first operation is to receive the announcements of Web services from providers. The second operation is to search the UDDI registry for the Web services that satisfy users' needs. However, since the announcements of Web services are submitted to distributed UDDI registries, this results in a different content among the UDDI registries. Targeting the data management of multiple UDDI registries has some similarities with the issue of information replication. An immediate solution to this data management is to flood the communication infrastructure with the new content of any UDDI registry, which has lately been subject to changes. Changes in UDDI registries may become frequent as the number of Web services that are announced continues to grow as reported in. While the flooding fits well a wired configuration, the lack of reliable and permanent connections in a wireless context is a major obstacle to the flooding. In the MESSENGER project, users on the move are the support vehicle of the data exchange between the UDDI registries.
There is no pre-defined communication infrastructure between the distributed UDDI registries. An infrastructure of type wireless for direct interactions is considered after assessing the importance of exchange between the UDDI registries. In addition, an UDDI registry may be called to disappear if its owner decides to withdraw it.
Absence of a centralized component that manages the UDDI registries. Each UDDI registry is independent in defining the announcements of providers that it accepts and the retrieval requests of users that it satisfies. The definition is based on UDDI registry-defined policies. In addition each provider is independent in selecting the UDDI registries to which it would like submitting its announcements of Web services. The selection is based on provider-defined policies.
In the MESSENGER project, each UDDI registry is associated with a structure known as cluster of Web services. Several clusters are made available across the communication infrastructure, so providers can connect to the most appropriate cluster using various criteria (e.g., proximity, workload). The connection between providers and clusters is of type wired. For tracking purposes a provider cannot be connected to more than one cluster. Thus a provider cannot announce in the UDDI registries of multiple clusters. The cluster on which a provider posts its Web services for the first time is called master. Interesting is the situation where providers have similar Web services but respectively announce their Web services in separate UDDI registries. Unless some appropriate exchange mechanisms are made available, an UDDI registry would never be aware of the existence of similar Web services in other UDDI registries. In addition, for a user wishing to satisfy her needs by triggering or composing Web services, she should be use all the existing Web services regardless of where they are announced.
A part of the solution to the data management of distributed UDDI registries relies on users who are mobile and have mobile devices. The other part of the solution relies on software agents. Users and software agents are combined together to constitute what we call by messengers. While residing in the mobile device of an user, the agent caches a description of the Web services that were involved in the satisfaction of the user's needs. Later on, and on behalf of providers users announce Web services in various UDDI registries to be associated with clusters referred to now as slaves. Because users have mobile devices, mobile support stations manage these devices when it comes to identifying their physical location and handling their messages/calls. A mobile support station communicates with mobile users within its radio coverage area known as wireless cell. When a user enters a new cell (i.e., she is under the coverage area of a new mobile support station) an exchange of information occurs between the agent of the user and the UDDI registry. This exchange enables an update of this UDDI registry's content. It is important to highlight that a user does not have to interact with all the clusters.
Because a UDDI registry receives information on Web services from both providers of Web services and agents of users, the Web services are decomposed into two types: internal and external. Internal Web services are announced in an UDDI registry of a master cluster (providers take care of the announcements). This UDDI registry has a full control over the internal Web services by guaranteeing for example their QoS. External Web services are always announced in an UDDI registry of a slave cluster (agents take care of the announcements). This UDDI registry cannot guarantee for example the QoS of the external Web services and their availability in their respective provider hosts for triggering purposes. External Web services constitute one of the challenges of data management between distributed UDDI registries.
The integration of messengers into the data management of UDDI registries opens up the opportunity of conducting further research in the future. We identify two initiatives. The first one uses the features of ad-hoc networking to support data management of UDDI registries, and the second one embeds contextual information into UDDI registries and messengers.
The author acknowledges the contributions of the following colleagues to the MESSENGER project: Q. H. Mahmoud, S. Kouadri Mostéfaoui, and H. Yahyaoui. Some relevant publications on the MESSENGER project:
Zakaria Maamar, Hamdi Yahyaoui, and Qusay H. Mahmoud. "Dynamic Management of UDDI Registries in a Wireless Environment of Web Services: Concepts, Architecture, Operation, and Deployment." Journal of Intelligent Information Systems, Springer Verlag, 2006 (forthcoming).
Zakaria Maamar, Qusay H. Mahmoud, and Abdelouahid Derhab. "On Promoting Ad-Hoc Collaboration Among Messengers." In Proceedings of The IEEE 20th International Conference on Advanced Information Networking and Applications (AINA'2006), Vienna, Austria, April 2006.