You are on page 1of 4

International Journal of Computational Intelligence and Information Security, October 2011 Vol. 2, No.

10

Service Brokering In Semantic Service Oriented Environments Considering Quality of Service


Mohammad Sajjad Khaksar Fasaei1 , Pooia Lalbakhsh2 , and Mehdi Naghian Fesharaki3 1 Islamic Azad University - Arak Branch, Arak, Markazi, Iran 2 Islamic Azad University Borujerd Branch, Borujerd, Lorestan, Iran 3 Islamic Azad University Science and Research Branch, Tehran, Iran sajjadkhaksar@yahoo.com, lalbakhsh@ieee.org, mehfesharaki@yahoo.com Abstract
Service selection process and service brokering have a great importance in the semantic service oriented environments. In order to increase the transparency of distributed systems and their stability it is better to use ontology to add semantic to service-based environments. Therefore, it needs service broker design to use semantic. In this article, we identify a software service broker for service brokering using quality of service parameters such as performance, reliability and also existent concepts in the environment and their relationship through semantic similarity matrix. Receiving user requests and translating them, the broker selects the services that are similar to the requirement considering performance and reliability parameters. Keywords: Ontology, Quality of Service, Semantic brokering, Similarity function

1. Introduction
Service broker is a mediator for supplied services by one or more servers [1]. A service broker is responsible for receiving clients requests, find the requested item, and then generate a response to the corresponding requester. A service broker maintains the information for all of the existing services in its domain. In order to update broker information, any new created service should announce the broker about its existence and the related information which can be used to access its methods. In other words, servers publish the information of their services (service ID, address, classes and types, methods, etc.) to the service broker. A client can recall its required service using a service name through the service broker. The service broker can then find the demanded service and submit the required information needed to invoke the service methods in a response package. In some cases the broker acts as an interface through which client/server interactions are accomplished [2]. In general, we can consider the following important roles for a service broker: Discovering services and supervising their current status in its own application domain. Updating the current status of services in to evaluate quality of service parameters that are used for prioritizing services in service lists. Classifying services based on the predetermined quality of service metrics. Listening to the requesters and serve them with the best matching services according to the determined QoS factors. According to the significant role of information in the information age, service orientation debated as a popular strategy which can prepare a distributed granular network based infrastructure to maintain heterogeneous data sources transparent from each other and define a common strategy for their interactions. This level of transparency is a must in today multi-organizational and multi-national environments. in such extensive SOA environments there may be lots of services with similar tasks but different QoS levels, and each user needs to access to his/her desired QoS level according to its mission; therefore, efficient translation of user requirements which are injected into the system through a text, voice, or visual application layer in the sense of quality of service factors is necessary. In this paper, we are to add the potential of sematics to the service oriented environments as a knowledge 67

International Journal of Computational Intelligence and Information Security, October 2011 Vol. 2, No. 10 base, and introduce a QoS service brokering strategy which use this knowledge base to find the desired services for the incomming requests.

2. Related works
The architecture of a service oriented system depends on the system missions; therefore, various brokering strategies are proposed considering different brokering strategies. We take a look at some of the important reports in the following. In [3] the author introduces a software broker for service oriented environments that try to find software services based on reliability and performance as two important QoS metrics. A reliability broker tries to find fault tolerant services with higher levels of reliability. By monitoring system services, the broker detects failed services and transparently replaces them with the other online services. On the other hand, a performance broker considers service performance in the brokering process which is determined according to service response times constantly appraised. Another service broker reported in [4] which is implemented as a middleware represented in which multiple range are defined for service discovery..

3. Semantic Similarity Function


Our proposed broker works according to similarity detected between different concepts. Conceptual similarities are mapped onto a similarity graph which is designed as a part of ontology tree on which the nodes are the system concept and the relations between concepts are illustrated by interconnections [5]. A similarity function is also used to figure out the similarity of graph nodes in the interval of [0, 1] defined as: (1) Where C is a well formed set of concepts and the output of this function is a cardinal number in the interval of [0, 1] that show the similarity rate between two concept of x and y. The figure of 0 would be the least amount of similarity between two concept whereas 1 reflects two identical concepts. Semantic similarity function can be calculated as follow: (2) balances the two parts of the function and determined by the algorithm. Where is defined as reachable nodes shared by nodes reachable from up to the root. the commonalities between two concepts of and . is the set of implying

and

4. Service Brokering in Semantic Service-based Environments


Semantic service brokering is a solution for improving accessibility in service oriented architectures where various services with different and sometimes similar duties are active. It is evident that in such environments a broker cannot rely on the static IDs and service names. Dealing with concepts, system services can be classified in conceptual categories and request can be responded according to a much more comprehensive and broader decision making process. To map concepts onto the system services, system ontology should be designed as an ontology tree and each service should be assigned to its concept. This scalable strategy maps all system services onto a limited ontology tree which can be much easily dealt with. It should be noted that all system services should contribute in a predetermined conceptual domain to be meaningful. A service without a concept is a useless service which only imposes overhead to the system. Similarity values are then calculated using Eq. (2) and the results are stored in special data structures for semantic service brokering. We developed a light weight application program in C# to extract similarity values from the ontology tree and store them in a matrix called similarity matrix. Overall, the proposed broker consists of the following components: Goal-based Component Brokering Component Service List Updater Parameter Updater 68

International Journal of Computational Intelligence and Information Security, October 2011 Vol. 2, No. 10 Status Monitor

The broker begins its work by receiving a service request which is submitted to the Goal-based Component for a goal-based interpretation. This request may include a service name, a service ID, or a valid concept which is generated regarding predetermined policies. Goal-based Component translates the request into a service ID using the similarity matrix and then sends the corresponding concept to the Brokering Component. This component uses a list of services which are ordered by their estimated quality of service. Following each received ID the best service in the sense of performance is responded. In the presence of service failures which are detected by the Status Monitor, the list is refreshed and updated and the failed services are replaced by other working services. Parameter Updater is in charge of updating QoS metrics which constantly updates the estimated figures. Deleting undesirable services from the list and substituting new service IDs fall under the responsibility of the Service List Updater. It compares the incoming service IDs with existing ones and decides to replace the services if required. To estimate service reliability our broker concentrates of the failure rate of services. The failure frequency for each service is saved and analyzed. The emergent figure will be stored in broker tables for ordering service IDs. Service status is detected by special service oriented Hello messages forwarded by the broker. The corresponding method should be coded in service codes in advance. Responding the message reflects that the service is online and properly working, while missing responses reveal service failure increasing the failure frequency factor of the service. While crossing a predetermined threshold, the corresponding service is considered as a failed service which will be eliminated from the working services. In the sense of performance, service response time is considered; therefore, less response time reflects better service performance. To estimate service response time similar strategy as Hello message can be adopted. To reduce overhead the same Hello message used to estimate service status is analyzed in the sense of time and considered as the service response time.

5. Implementation Considerations
The proposed semantic QoS-based service broker can be simply be customized for any system and also implemented. Implementation of the system comes after implementing the following items: System services: web service technology has been showed up as the reputable technology to satisfy SOA tenets. We recommend JAVA technology to develop web services since JAVA web services can be deployed on most of the web service containers. Web service clients: to consume web service data, a client application should be developed. Development accomplished according to the web service WSDL file. Development of such client applications can be done by various commercial or open source application development tools from Microsoft Visual Studio to Sun NetBeans IDE. Service container: each web service should be deployed on a service container to become active. The container is responsible for listening to the network to submit the incoming requests to the service core and the related methods. We recommend Apache Axis service container which is a light weight container and offers good QoS metrics [6]. Underlying network: web services are independent from the underlying network, and any type of IP network can be used as service communication channel. Ontology tree can be designed using Protg which is an ontology development software. As mentioned before a C# application is used to figure out similarity values from ontology tree into the similarity matrix.

4. Conclusion
The purpose of this research is to improve the quality of service brokering in semantic service-based environments. this strategy prepares a more scalable strategy to deal with heterogeneous service oriented environments by focusing on the goal and purpose of the incoming requests. In addition to conceptual brokering, our proposal considers to QoS metrics of reliability and performance to enrich the brokering process. The proposed model can be considered as a solution to manage challenging and complex distributed environments which are getting widespread in military and urban areas. The proposed brokering model not only increases the reusability and accessibility of services by conceptual classification, It also works as a monitor to update the 69

International Journal of Computational Intelligence and Information Security, October 2011 Vol. 2, No. 10 current state of the system to prevent starvation by substituting failed services to form a highly reliable and robust SOA.

References
[1] Stream Serve Persuasion SP4 Service Broker User Guide, Rev A, STREAMSERVE, INC, United States patent #7, http://www.streamserve.com, pp. 127-520, 2001-2009. [2] P. Lalbakhsh, M. S. Khaksar Fasaei, M. N. Fesharaki, An Ontology-based SOA Enabled Brokering Model for Common Operational Picture, Regarding Network Centric Warfare Services, Paper presented at 4th national conference of Irans scientific society on command, control, communications, computers and intelligence, Sharif university of technology, Tehran, Iran, 2010. [3] J. X. W. Du, Software Brokers for Quality of Services in Service-Oriented Distributed Systems, Proceedings of the Second Annual Conference on Communication Networks and Services Research (CNSR04), 2004 [4] T. Koponen, T. Virtanen, A Service Discovery: A Service Broker Approach, Proceedings of the 37th Hawaii International Conference on System Sciences, IEEE, 2004. [5] H. Liangxiu and B. Dave, Semantic-supported and agent-based decentralized grid resource discovery, Future Gener. Comput. Syst., vol. 24, pp. 806-812, 2008. [6] Apache Axis can be downloaded through: http://ws.apache.org/axis.

70

You might also like