Professional Documents
Culture Documents
10
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..
and
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