3
Distributed Web Services Discovery Middleware for Edges of Internet Abdul Haseeb, Mihhail Matskin KTH Royal Institute of Technology, Forum 105, 164 40 Kista, Stockholm, Sweden. e-mail: {ahaseeb, misha}@kth.se Peep Küngas Institute of Computer Science, University of Tartu, J. Liivi 2, 50409, Tartu, Estonia e-mail: [email protected] Abstract—The advent of mobile computing devices and development of wireless and ad-hoc networking technologies has led to growth of infrastructure-less environments. Mostly, these environments lie at the edges of Internet i.e. they are disconnected/sparsely connected to rest of the world. In order to exploit the access to such edges of Internet, we propose and experimentally evaluate an interoperability middleware that synergizes P2P technology, message queuing support and a passive distributed UDDI for Web services discovery and invocation. I. INTRODUCTION We can view a huge number of heterogeneous devices pervasive in everyday life (ranging from high- end servers to mobile devices and to low end resource- constrained robots). These pervasive devices create communication clusters in multiple interacting yet independent network platforms. In some cases [1] (due to mobility and dynamism) these pervasive environments remain in isolation (i.e. disconnected from rest of the world) thus forming edges of the Internet. There is a need to develop a platform that could glue various edges of the Internet together into a coherent and an interoperable whole. Interoperability must deal with connectivity aspects (internal connectivity and connectivity of edges with the Internet). Internal connectivity can be either P2P or via shared memory. However connectivity to the Internet depends upon the openness of the system. In any case usage of available connectivity or using disconnected reconciliation-mode connectivity on the basis of mediators is needed to be exploited to bridge edges of the Internet. In this paper we use a swarm of robots [1] operating in a dynamic environment as a representative example of this case. There is no assumption on the availability of wireless capability of robots - i.e. some robots may be equipped with Wi-Fi capability, while the other, use only environment mediators (like RFID tags) for reading/writing data (see Figure 1). II. WEB SERVICES, INTEROPERABILITY AND PERVASIVE ENVIRONMENTS Current solutions [3, 4] of service discovery in infrastructure-less environment are primarily based on broadcast. These solutions do not address the issues of scalability, network-wide reachability, mobility and adaptability of protocols to dynamic environments [5]. Some work [6] also tried to leverage P2P technology for distributed service discovery. However, their approach cannot cope with high mobility and scenarios where entities cannot communicate in a P2P fashion. Similarly, Web services architecture, built on top of JXTA (Juxtapose), was proposed [7]. But the proposed architecture assumed homogenous communication capabilities. For infrastructure- less environment of mobile agents a messenger approach [8] was proposed as well, which provided mechanism for dynamic management of distributed UDDI in the absence of communication infrastructure. This approach suits the requirements of unpredictable coverage of entities in environment, however, this solution did not consider collaborative service discovery. Apart from decentralization, there is a need to establish asynchronous interactions between a set of entities. Asynchronous messaging can be built on top of synchronous interactions by introducing a queuing system for storing and forwarding of messages. We refer to such queuing system as message post-boxes. Such mediation is useful for scenarios where P2P communication between entities is not possible. In summary, pervasive environments (infrastructure- less/ad-hoc) are attributed by lack of stable connectivity, mobility, heterogeneous communication and lack of P2P communication. Thus a proposed solution should overcome the shortcomings of availability of both service requesters and repositories at the same time, asynchronous and mediator based communication [9]. Our proposed methodology synergizes P2P technology, message queuing support and distributed UDDI. It abstracts environment and computing entities to a P2P system and provides a conceptual classification of entities according to Figure 1: Swarm of robots – a representative edge. Gateway Passive RFID Robot with Wireless Capability Active RFID Internet 2010 IEEE International Conference on Web Services 978-0-7695-4128-0/10 $26.00 © 2010 IEEE DOI 10.1109/ICWS.2010.87 680

[IEEE 2010 IEEE International Conference on Web Services (ICWS) - Miami, FL, USA (2010.07.5-2010.07.10)] 2010 IEEE International Conference on Web Services - Distributed Web Services

  • Upload
    peep

  • View
    216

  • Download
    3

Embed Size (px)

Citation preview

Page 1: [IEEE 2010 IEEE International Conference on Web Services (ICWS) - Miami, FL, USA (2010.07.5-2010.07.10)] 2010 IEEE International Conference on Web Services - Distributed Web Services

Distributed Web Services Discovery Middleware for Edges of Internet

Abdul Haseeb, Mihhail Matskin

KTH Royal Institute of Technology,

Forum 105, 164 40 Kista, Stockholm, Sweden.

e-mail: {ahaseeb, misha}@kth.se

Peep Küngas

Institute of Computer Science, University of Tartu,

J. Liivi 2, 50409, Tartu, Estonia

e-mail: [email protected]

Abstract—The advent of mobile computing devices and

development of wireless and ad-hoc networking technologies

has led to growth of infrastructure-less environments. Mostly,

these environments lie at the edges of Internet i.e. they are

disconnected/sparsely connected to rest of the world. In order

to exploit the access to such edges of Internet, we propose and

experimentally evaluate an interoperability middleware that

synergizes P2P technology, message queuing support and a

passive distributed UDDI for Web services discovery and

invocation.

I. INTRODUCTION

We can view a huge number of heterogeneous devices pervasive in everyday life (ranging from high-end servers to mobile devices and to low end resource-constrained robots). These pervasive devices create communication clusters in multiple interacting yet independent network platforms. In some cases [1] (due to mobility and dynamism) these pervasive environments remain in isolation (i.e. disconnected from rest of the world) thus forming edges of the Internet. There is a need to develop a platform that could glue various edges of the Internet together into a coherent and an interoperable whole.

Interoperability must deal with connectivity aspects (internal connectivity and connectivity of edges with the Internet). Internal connectivity can be either P2P or via shared memory. However connectivity to the Internet depends upon the openness of the system. In any case usage of available connectivity or using disconnected reconciliation-mode connectivity on the basis of mediators is needed to be exploited to bridge edges of the Internet.

In this paper we use a swarm of robots [1] operating in a dynamic environment as a representative example of this case. There is no assumption on the availability of wireless capability of robots - i.e. some robots may be equipped with Wi-Fi capability, while the other, use only environment mediators (like RFID tags) for reading/writing data (see Figure 1).

II. WEB SERVICES, INTEROPERABILITY AND PERVASIVE

ENVIRONMENTS

Current solutions [3, 4] of service discovery in infrastructure-less environment are primarily based on broadcast. These solutions do not address the issues of scalability, network-wide reachability, mobility and adaptability of protocols to dynamic environments [5]. Some work [6] also tried to leverage P2P technology for

distributed service discovery. However, their approach cannot cope with high mobility and scenarios where entities cannot communicate in a P2P fashion. Similarly, Web services architecture, built on top of JXTA (Juxtapose), was proposed [7]. But the proposed architecture assumed homogenous communication capabilities. For infrastructure-less environment of mobile agents a messenger approach [8] was proposed as well, which provided mechanism for dynamic management of distributed UDDI in the absence of communication infrastructure. This approach suits the requirements of unpredictable coverage of entities in environment, however, this solution did not consider collaborative service discovery.

Apart from decentralization, there is a need to establish asynchronous interactions between a set of entities. Asynchronous messaging can be built on top of synchronous interactions by introducing a queuing system for storing and forwarding of messages. We refer to such queuing system as message post-boxes. Such mediation is useful for scenarios where P2P communication between entities is not possible.

In summary, pervasive environments (infrastructure-less/ad-hoc) are attributed by lack of stable connectivity, mobility, heterogeneous communication and lack of P2P communication. Thus a proposed solution should overcome the shortcomings of availability of both service requesters and repositories at the same time, asynchronous and mediator based communication [9].

Our proposed methodology synergizes P2P technology, message queuing support and distributed UDDI. It abstracts environment and computing entities to a P2P system and provides a conceptual classification of entities according to

Figure 1: Swarm of robots – a representative edge.

Gateway

Passive

RFID

Robot with Wireless

Capability

Active

RFID

Internet

2010 IEEE International Conference on Web Services

978-0-7695-4128-0/10 $26.00 © 2010 IEEE

DOI 10.1109/ICWS.2010.87

680

Page 2: [IEEE 2010 IEEE International Conference on Web Services (ICWS) - Miami, FL, USA (2010.07.5-2010.07.10)] 2010 IEEE International Conference on Web Services - Distributed Web Services

their communication capabilities. Proposed solution assumes environment “mailboxes”/“message post-boxes” (for instance RFID tags), which can be used for communication when P2P communication between entities is not possible. Our solution also uses a passive mode of communication. To the best of our knowledge, no earlier solution has used a passive mode. In our experimental evaluation we prove the effectiveness of passive communication mode in terms of network load while maintaining an acceptable latency.

III. DISTRIBUTED SERVICE DISCOVERY MIDDLEWARE

We take the basic design philosophy of middleware from JXTA [10]. We do not assume homogenous communication capabilities of the entities. Thus we consider an abstract approach of entity classification on the basis of their communication capabilities.

A. Conceptual Classification of Entities

Entities are classified in the following manner: 1. Rendezvous computing entities (RCE) are the entities

with Wi-Fi connectivity which enables them to communicate outside a domain or to external world. RCE serve for dissemination of requests from one cluster to another thus serving as routing peers. Entity-group/cluster includes all entities that can have a pair-wise communication among each other.

2. Edge computing entities (ECE) are the entities those can’t communicate in a P2P fashion and require information mediators for their communication.

3. Message relays (MR) are the information mediators that serve ECE to communicate their messages. MR serve dissemination of messages within a cluster

Detailed discussion about the architecture and design rationale can be read in our previous work [12].

B. Semantic Query Propagation

To incorporate semantics and to perform semantic-based query propagation to appropriate entities, we use a model in which entities publish their expertise in the network along with their Web services. Expertise is the semantics of services which an entity offers. Basic philosophy of creating a semantic topology is to re-route the query to an entity which is likely to answer the query instead of using broadcast mechanisms. For this purpose we use a shared common ontology of domain. Knowledge of an entity, about the expertise of other entities, forms the virtual semantic topology. In other words an entity knows another entity in this semantic topology if it can compute the semantic distance of a query to target entity’s published expertise.

C. Active and Passive Mode of Communication

In terms of communication, entities can follow either of

the following two communication modes.

1. Active Communication Mode

• Web services descriptions are pushed to other entities/MR (this corresponds to normal Web service publishing to UDDI).

• Service descriptions are first pushed inside a cluster via MR and later RCE disseminate them to rest of network.

2. Passive Communication Mode

• In this mode a Web services discovery occurs when an entity’s (RCE or ECE) request is answered by some other entity/MR. In other words entities don’t publish their service descriptions unless requested.

• Passive mode is less bandwidth intensive than active communication mode (as we prove in our evaluation).

D. Entity and Web services registration

Upon a system bootstrap, entities (RCE and ECE) perform their registration (i.e. indication to environment about their presence) using MR’s data model (for our case we use extended RDF data model [12]). For active mode of communication registration includes advertising Web services descriptions and a set of entity’s expertise (in principle each published Web service can be augmented by an expertise). For passive mode of communication registration only includes presence and endpoint related information. As a representative example an expertise can be Weather Information Services, Cleaning Services, and Monitoring Services etc.

Registration marks MR as an information container (similar to Shared Spaces [13]) for services and entities surrounding it. The latter serves for discovery of entities by each other. Entity discovery occurs when entities receive a list of other registered entities from the MR. This is a naïve epidemic way of discovering other entities in the environment. We refer to entities around MR as entity-cluster.

RCE use RPV Protocol [10] to organize them into a virtual overlay. For RPV each RCE maintains a local list of active RV (Rendezvous View) and period exchanges of random RV to other RCE in its RV. In a similar fashion each rendezvous entity sends a periodic RV and purges non-responsive rendezvous entities from its RV.

E. Distributed Web services discovery

In our middleware each entity serves as a small scale UDDI using its Local Service Registry (LSR) [12, 14] which serves as a local cache for Web service discovery. For LSR we have implemented a light-weight UDDI [12].

Dynamic and partial view of network doesn’t leverage the usage of a hash function to store service descriptions and a rendezvous mechanism between multiple registries [15] on ECE/RCE. Rather, we consider the following approach for Web services discovery.

1. Upon receiving a query, entities check their LSR. If they can find a mapping of query’s subject with expertise of some entity, an entity recommendation is provided.

2. The requesting entity can, then, take following actions: o Re-query for a semantically similar expertise in the

network (if no exact match is available)

681

Page 3: [IEEE 2010 IEEE International Conference on Web Services (ICWS) - Miami, FL, USA (2010.07.5-2010.07.10)] 2010 IEEE International Conference on Web Services - Distributed Web Services

o Trigger discovery protocol to query the services of the entities which has been recommended.

3. After a certain time threshold if the request remains unanswered on MR or is published again by requesting entity then RCE forwards the query to another RCE (i.e. query is forwarded to another cluster).

In the following section we evaluation various aspects of proposed middleware.

IV. EXPERIMENTAL EVALUATION

The proposed middleware has been used in actual robot swarms [1]. Here in evaluation, we highlight the theoretical results using Player/Stage Simulator [16] for robots. The modeled communication infrastructure is attributed by instability and partial communication coverage (attributed by robotic mobility). Web service descriptions are expressed in form of extended RDF [12]. Robotic functional interfaces are first expressed in WSDL 2.0. Mapping specification is then used to map WSDL 2.0 to RDF. In a similar fashion OWL is transformed into RDF triples which are used for mapping service discovery queries to published services using semantic distance and recommendation mechanism [14]. For translation of OWL into RDF triples first OWL is transformed into “OWL Abstract Syntax” (OWL-AS). OWL-AS based ontology is further parsed into RDF triples using W3C Group note for parsing OWL-AS to RDF.

Experimental setting uses varying Robot-RFID cluster ratios. Robot-RFID cluster ratio is the number of robots sharing a MR/RFID. Following is a brief description of experimental result. Due to space considerations, only brief elaboration of results is given here. Readers are free to contact authors to get detailed discussion, justification and experimental data/results.

A. Discoverable Services

Discoverable services are those services that have more than one point of discovery in the system. Mobility or partial failure can create situations where the Web services host is out of communication coverage area. An additional host for Web services description gives a higher probability of discovering a Web service when host entity is inaccessible. Our results reveal that the active communication mode makes more Web services discoverable as compared to passive mode. However, with an increased Robot-RFID cluster ratio the performance of active mode deteriorates significantly. This is caused by increased number of conflicts/messages-re-requests (See IV.B).

B. Message re-request overhead

Comparisons of message re-requests reveal the fact that there are fewer conflicts with smaller robot-RFID cluster Ratio. In passive mode the conflicts are the number of request losses, while in active mode conflicts are the service description losses. With a higher RFID (“mailbox”) memory size and lower robot-RFID cluster ratio both communication modes show similar results. But with increased RFID memory size, passive mode gives improved results (i.e. controlled message re-request overhead). Passive mode

shows better results with higher robot-RFID cluster ratios and higher memory size.

C. Cluster ratio and average messages number on MR

It is revealed that there is a significant rise in average disseminated messages in active mode when robot-RFID cluster ratio is increased. On the other hand passive mode gives better results (i.e. fewer messages disseminated in the environment). Experiments reveal that even with a higher robot-RFID cluster ratio, the rise in number of disseminated messages in passive mode is better to that of active mode. Passive mode exhibits controlled losses even with increased robot-RFID cluster ratio. With a higher RFID memory the results of passive mode improve further as compared to that of active mode. Active mode on the other hand incurs more losses with higher robot-RFID cluster ratios.

V. CONCLUSIONS

Experiments reveal the effectiveness of passive mode

over active mode while maintaining an acceptable latency of

service discovery. Active mode (as employed in literature)

does not fare well in terms of conflicts, higher robot-RFID

cluster ratio and message re-request overhead.

REFERENCES

[1] “Knowledge Environment for Interacting Robot Swarms”, www.roboswarm.eu.

[2] M. Cai, et. al., “RDFPeers: A Scalable Distributed RDF Repository Based on a Structured P2P Network”, ACM WWW’04, pp.650 – 657.

[3] S. Helal, et. al., “Konark - A Service Discovery and Delivery Protocol for Ad-hoc Networks”. 3rd IEEE WCNC, New Orleans, USA, 2003.

[4] D. Tang, et. al., “Resource Discovery in Ad hoc Networks”, Technical report, Stanford University, August 1998. CSL-TR-98-769.

[5] D. Chakraborty, "Service Discovery and Composition in Pervasive Environments", PhD Thesis, June 2004.

[6] S. Banerjee, et. al., “Scalable Grid Service Discovery based on UDDI”, 3rd ACM Int. MGC Workshop, 2005.

[7] Z. Wang and Y. Hu, “A P2P Network Based Architecture for Web Service”, Proc. of Int. Conf. on Wireless Communications, Networking and Mobile Computing, IEEE, 2007, pp. 3446-3449.

[8] Z. Maamar, et. al., “Dynamic management of UDDI registries in a wireless environment of web services: Concepts, architecture, operation, and deployment”. Journal of Intelligent Information Systems, Springer Netherlands, 2007, pp. 105-131.

[9] B. K. Kim, et. al, “Web Services based robot control platform for ubiquitous functions”, Proc. of IEEE Int. Conf. on Robotics and Automation, pp. 691- 696, 2005.

[10] Sun Microsystems Inc., “JXTA-SOAP bindings.

[11] I. Stoica et. al., “Chord: Scalable P2P lookup service for internet applications”, ACM SIGCOMM, pp 149-160, 2001.

[12] A. Haseeb, M. Matskin and P. Küngas, “Light-Weight Decentralized Autonomic Web Service Discovery for Systems with Heterogeneous Communication Capabilities”, Proc. of 12th IASTED IMSA’08.

[13] N. Carriero et. al., “A Computational model of everything”. In Proc. of Communications of ACM, pp: 77-81, 2001.

[14] A. Haseeb, M. Matskin and P. Kungus, “Distributed Discovery and Invocation of Web Services in Infrastructure-less dynamic environments”. Intl. Journal of Web Services Practices, Vol. 4, 2009.

[15] Q. Lin et. al., “DWSDM: A Web Services Discovery Mechanism Based on a Distributed Hash Table”. IEEE GCCW’06, pp. 176-180.

[16] B. P. Gerkey, et. al., “The Player/Stage Project: Tools for Multi-Robot and Distributed Sensor Systems”. 11th Int. Conf. on Advanced Robotics (ICAR), Coimbra, 2003, pp. 317-323.

682