J Supercomput DOI 10.1007/s11227-014-1221-y
PGSW-OS: a novel approach for resource management in a semantic web operating system based on a P2P grid architecture Saeed Javanmardi · Mohammad Shojafar · Shahdad Shariatmadari · Jemal H. Abawajy · Mukesh Singhal
© Springer Science+Business Media New York 2014
Abstract A web operating system is an operating system that users can access from any hardware at any location. A peer-to-peer (P2P) grid uses P2P communication for resource management and communication between nodes in a grid and manages resources locally in each cluster, and this provides a proper architecture for a web operating system. Use of semantic technology in web operating systems is an emerging field that improves the management and discovery of resources and services. In this paper, we propose PGSW-OS (P2P grid semantic Web OS), a model based on a P2P grid architecture and semantic technology to improve resource management in a web operating system through resource discovery with the aid of semantic features. Our approach integrates distributed hash tables (DHTs) and semantic overlay networks
S. Javanmardi Department of Computer Engineering, Dezful Branch, Islamic Azad University, Dezful, Iran e-mail:
[email protected] M. Shojafar (B) Department of Information Engineering, Electronic and Telecommunication (DIET), Sapienza University of Rome, Rome, Italy e-mail:
[email protected];
[email protected] S. Shariatmadari Department of Computer Engineering, Shiraz Branch, Islamic Azad University, Shiraz, Iran e-mail:
[email protected] J. H. Abawajy School of Information Technologies, Deakin University, Geelong, Australia e-mail:
[email protected] M. Singhal Electrical Engineering and Computer Science, University of California, Merced, USA e-mail:
[email protected]
123
S. Javanmardi et al.
to enable semantic-based resource management by advertising resources in the DHT based upon their annotations to enable semantic-based resource matchmaking. Our model includes ontologies and virtual organizations. Our technique decreases the computational complexity of searching in a web operating system environment. We perform a simulation study using the Gridsim simulator, and our experiments show that our model provides enhanced utilization of resources, better search expressiveness, scalability, and precision. Keywords Web operating systems (Web OS) · Ontology · P2P grid · Cloud, resource management · Semantic overlay network (SON)
1 Introduction A web operating system (Web OS) at is a virtual OS that users can access from any hardware any location. Currently, Web OS combines different features of distributed OSs [1,2] and the Internet to make the OS accessible wherever possible [3,4]. The major difference between a Web OS and a traditional OS is its independence from hardware and location. Web OS is located on the Internet which enables users to access it from anywhere with a browser. Note that a Web OS is different from remote PC; in the case of remote PC, the users only access their computers through a network. The term “WebOS” was coined by Vahdat et al. [5] for a research project at the University of California at Berkeley that became a commercial project in 1999. However, we use the term “Web OS” only as an abbreviation of “web operating system”. Glide OS [6] is one of the well-known Web OSs that use cloud computing [7] for accessing shared information. It has the similar user interface to the traditional computer operating systems like Windows or linux, but it does not rely on the user computer. The user must still have a traditional OS on his or her computer [8]. Currently, there are different methods of resource management in grid and peer-to-peer (P2P) environments which can be used in Web OSs. The objective of grid networks is to share processing power (memory and CPU time that is applied in [9,10]), while the objective of P2P networks is to support file sharing and manage access to shared data. Recently, a lot of attention has been paid to the artificial intelligent approaches such as semantic in distributed systems [11–13]. The Semantic Web is an extension of the Web in which information is given well-defined meanings; it is a new approach that adds semantic metadata to regular data, so that machines can understand the data. The principal goal of the Semantic Web is to drive the development of the Web by enabling users to find, share, and unify data and information more easily [14]. Metadata, the data about data, is the major part of semantic approaches, which is represented by semantic service descriptions annotated. Efficient metadata requires a semantic representations of knowledge from which metadata statements are declared. Ontology, a shared and common understanding of services, is destined for use in the shared understanding services. Therefore, ontologies are used to represent resource metadata semantics. In another word, ontology is the principal component of a semantic web; it provides the capability to define concepts and relations between objects. Ontologies were developed to make knowledge easier to share and reuse with the aid of semantic languages such
123
PGSW-OS: a novel approach for resource management
as RDFS and OWL [15,16]. Using semantic technology in a Web OS is one of the hottest areas of research [17] which uses the capabilities of semantic technology to provide better organization, navigation, and search capabilities and also to strengthen fault tolerance. The focus of the proposed approach is to present an intelligent semantic search to overcome the problem of keyword based search. The new approach employs ontology domain knowledge in the search process, so that queries can be correctly and fittingly clarified based on their meanings in a definite domain whose natural (ordinary) relations between concepts are considered. A semantic overlay network (SON) is an overlay intended to link peers that are semantically related [18]. In other words, their corresponding components, resource descriptions in our case, are semantically similar. SONs are used to resolve resource requests efficiently, by promising that messages will be routed between semantically relevant nodes. The integrated use of distributed hash tables (DHTs) and SON methods, together with a semantic similarity function for resource descriptions, enables our model to carry out semantic discovery and management with a high degree of recall and search accuracy. The new approach uses semantic annotations that enrich service specifications to advertise services in the DHT based upon their annotations. DHT is a well-known paradigm for data distribution and indexing. It has good scalability properties and also efficiency in retrieving data. The used DHT protocol promotes semantic service descriptions, annotated by applying ontology concepts. These semantic descriptions overcome the exact term search limitations of DHT. In this paper, we study the use of a P2P grid to provide resource management in a semantic Web OS and, following some previous approaches such as [19] to improve resource management in a Web OS. Our approach is the combination of pre-existing techniques in P2P, grid and semantic fields in a new manner to introduce a novel approach in web OS field; Furthermore, it is different from “typical semantic web OS”. In fact, we add P2P properties to the semantic web OS to improve scalability and efficiency [20]. The remainder of this paper is organized as follows. In Sect. 2, we discuss related work and take a brief look at Web OSs and semantic Web OSs. In Sect. 3, we present our proposed model. In Sect. 4, we present performance evaluation and experimental results on the proposed model. Finally, in Sect. 5, we conclude this study and discuss future work. 2 Related work In this section, we discuss related research on distributed OSs and the use of semantic technology for this kind of OSs. The use of a grid and a cloud in a Web OS is described in [21], which presents a simple Web OS framework with the aid of cloud computing. A cloud operating system [22] is an OS which runs in a web browser. This kind of OS prepares an entry for a diverse set of web-based applications and permits the user to carry out many tasks with no need to start up a real OS. A method based on a cloud Web OS that enables users to access virtual computing resources is proposed in [23], which implements the “On Demand Virtual Cluster” system in a cloud Web OS. A Linuxbased cloud OS is proposed in [24], which provides an approach for bringing the OS to a network environment in order to present a meaningful set of resource management options and criteria to applications to make programming easy in the cloud.
123
S. Javanmardi et al.
Wu et al. [25] propose the “Diskless Remote Booting” (DRB) framework for a cloud OS, which has the advantages of scalability, low maintenance cost, and low energy consumption. In this framework, nodes have no disks, and each node uses the server’s local disks over the network to boot its OS. A prototype of a P2P OS with decentralized control of users’ data but which gives each user a coherent view of a single machine with a single file system is proposed in [26]. An open-source grid OS is proposed in [27], which unites grid computing and enterprise resource modeling for cloud computing. Different structures in a grid environment can be used for the resource management. For example, a central server controls the management of resources in [28], while Chen et al. [19] consider the total resources as a peer-to-peer model. Ejarque et al. [29] propose a model in which it is assumed that there is no central server. In this model, agents such as resource and job agents are used for resource management, and semantically improved historical data is used to predict the types of tasks and uses of resources in the cloud environment. In [30], the benefits of using semantic technology in a grid network are discussed. A semantic grid facilitates knowledge discovery and knowledge management in a grid environment. The ontology offers high-level support for managing grid resources to obtain well-defined meaningful metadata. As discussed in [30], semantic technology can be very useful for grid resource management and discovery. The P2P grid model proposed by Chen et al. [19] combines the two technologies, grid and P2P, for resource management in a grid network using P2P communication to locate the desired resource. In some P2P grid models [31,32], nodes can freely connect to the network or leave it. These models use P2P communications to manage resources in the grid environment. “OurGrid” [33] and the “Self-organizing Flock of Condors” [34] are examples of systems that make use of a P2P grid. In each node in the P2P grid, a scheduler manages the resources. Users obtain their desired resources by making requests to the scheduler through a resource broker. The broker is the interface between the user and the system, and its task is to receive user requests and find the system that is best able to respond to those requests.
2.1 Web operating systems A Web OS [3,35] is an interface between users and a distributed OS. In this type of OS, a corporation provides computer services to users through the Internet, including access to nearly any application they can run on a computer desktop, such as file management, spreadsheet programs, and word processing programs. Usually, users access their programs through a Web browser, and these programs are stored on the Web in a distributed manner [36,37]. Thus, a Web OS is an implementation of a virtual desktop. It is different from a cloud. Cloud computing is the delivery of computing, storage, and a network as a service to a heterogeneous community of end recipients. Although a Web OS and a cloud Web OS are different, we can integrate a Web OS into a cloud environment through, for example, the Ezilla toolkit project [38,39]. The Ezilla project has three components: a Web OS for the user interface, cloud middleware
123
PGSW-OS: a novel approach for resource management
(OpenNebula [40] and OpenQRM [41]), and an infrastructure which includes the distributed file system. By using a Web OS, users can access their programs from any device connected to the Internet and run the Web applications. They can connect to the Web OS from their computers, create documents, and save them, and later have access to those documents using another device. Thus, the Web OS improves the accessibility of data. A Web OS is composed of three principal parts [42]: the warehouse, resources, and an educative engine. “Educative engine” is a typical term that is used in web OS; it is something like a super peer in P2P environment. User requests are sent to the closest educative engine. The educative engine searches in its resource warehouses to decide whether it has the requested resource. The engine might decline the service or transfer the request to one or more other educative engines until an engine finally finds the most adequate warehouse. A resource control unit (RCU) and remote resource control unit (RRCU) are subsections which are placed in the educative engine. Garg et al. [43] proposed an XML-based framework for a Web OS whose main parts are a web browser, a web application, and a web server. The languages which can be used for developing a Web OS include PHP, XML, and MySql [43]. Ostrowski [44] proposed a scalable framework for a Web OS which is used as a middleware application. This framework uses open source technologies such as node.js [45] and couchDB [46] to achieve fast prototyping, scalability, and maintainability.
2.2 Semantic web operating systems Combining the capability of the Semantic Web with a Web OS improves resource management. Grouping warehouses according to their semantics enables resources to be allocated through clusters that have similar resources. Our previous work [17] studies the effects of using semantic technology to improve resource management in common Web OSs. Riad et al. [47,48] proposed a framework that combines a Web OS and a semantic web, which they call a “semantic web operating system”. They use the ontology to annotate users’ resources and present a semantic overlay architecture (SOA) structure for the Web OS. This architecture chiefly consists of three layers: the application layer, service layer, and data layer. Whenever a user logs into the system using a portal, the application layer passes the request to a transaction manager, which first authenticates and permits the user to enter the system and then works together with a personalization manager to re-create the user’s personalized desktop. Any time a user requests a resource, the application layer passes the request to a transaction manager which initializes an application and also requests the resource from a resource locator, whose job is to work together with the resource manager to allocate and regain resources. It is important to note that a semantic web’s success relies on the availability of web pages annotated with metadata. These metadata are related keywords associated with a piece of information depicting the content. In this design, every file is a resource (images, etc.), and all resources are recognized using uniform resource identifiers (URIs). Each resource is annotated based on its related ontology. This annotation facilitates better indexing and restoration of resources.
123
S. Javanmardi et al.
The following are examples of Resource Description Framework (RDF) triples based on a defined Web OS ontology: (a) Person → has an → Event (b) Person → Creates → File (c) File → is a → Image The following diagram represents the sematic relations of the P2P grid ontology.
Rdf:ID=”Person”/>
Rdf:ID=”Event”>
Rdf:ID=”Person”/>
Rdf:ID=”File”>
Rdf:ID=”File”>
It is possible to create the ontology based on the user’s activities, so that the architecture of the ontology includes the resources used by each user, keywords related to each resource, and the number of times that resource was used by the user. By using the user’s behavior and annotating these data, a collection of semantic data which is understandable by the machine will be produced. In this way, we have resource management based on process/resource content and its users. 2.3 Comparison between semantic web OSs and web OSs A semantic Web OS has some promising features in terms of access to desirable resources based on recent behavior, retrieval speed for similar files, the precision of selecting a warehouse for similar resources, and fault tolerance. Warehouse resources are annotated by semantic annotation methods, and warehouses can be placed inside virtual organizations (VOs) based on related (similar) resources available in the warehouses (based on their degree of semantic similarity). In a Web OS, knowing and identifying users’ activity based on their profiles or their log files or, in other words, assigning well-defined meanings to the resources, can have important effects for the management of users’ access to their desired resources. The overhead cost of adding semantic data has a specific impact on efficiency and speed. This is one of the known problems of semantic technology, although
123
PGSW-OS: a novel approach for resource management Table 1 Comparison between two Web OSs Operating system
Properties Access to desirable resource based on last behavior
Speed of retrieve of similar files
Precision of selecting warehouse for similar resource manage
Fault tolerant
Web OS
No
Medium
Typical
Typical
Semantic web OS
Yes
Medium
Optimized
Optimized
some solutions have been proposed. A Web OS with grouping of warehouses based on their resources’ semantic similarity has advantages for selecting and querying resources, thus overcoming this problem. This is because in a semantic Web OS, there is a way to access relevant resources which are similar to one another from a semantic point of view, so that if an error occurs in a resource, another relevant resource can be used. This will increase fault tolerance. Table 1 summarizes this point. 3 Our proposed approach Our model involves a Distributed Hash Table (DHT) protocol [49], a SON, and a semantic similarity function. The system uses user-driven ontology; each user uses its own ontology. Our model can be used in an environment where a large number of resources published by different warehouses need to be discovered and managed for integration into distributed Web OS applications. In this paper, we use the Chord [49] protocol as a routing algorithm in an SON. Our focus is on developing a model to facilitate semantic descriptions and resource discovery for a Web OS. This work is a continuation of our previous work in [17]. Our model in the present work, which we call PGSW-OS, is based on a semantic P2P grid. We add P2P grid features to our previous work to improve the search expressiveness, efficiency, and scalability. Chord provides effective lookup and routing functionalities with fast-distributed calculation of the hash function [50]. By using a DHT, nodes can discover other nodes with semantically similar components in the P2P communication that occurs during the component publishing activity in the DHT. Thus, semantic links can be recognized as a usual network activity. These can be used not only to enhance search performance, but also to execute semantic-based similarity searches, because nodes can ask their instantaneous (or immediate) semantic neighbors if they are responsible for a component that is semantically similar to one that has been requested. In our scheme, the warehouses with resources are like peers in a P2P grid. Indeed, in this paper we consider a warehouse and a node as the same concept. An agent is used in each educative engine, which is responsible for resource management. A DHT is a new efficient mechanism which is in charge of resource management in our model. It is responsible for determining which repository holds what kind of resources. The resources of Web OSs are very diverse and relatively varied, and they are located across warehouses and servers around the world. These features have persuaded us to
123
S. Javanmardi et al.
use a decentralized resource management approach. This type of operating system is scalable, which means that warehouses can be added to or removed from the network. So use of a P2P grid is very efficient due to its high degree of scalability. As we mentioned earlier, in this paper we combine Chord DHT and SON for improving service discovery in Web OS. We use a Chord DHT protocol to promote semantic service descriptions and SON for clustering the warehouses which have semantically similar services; SON is constructed via chord DHT protocol. In a P2P based Web OS environment, by using the Chord DHT protocol, warehouses can discover other warehouses which have semantically similar services. So, semantic links are used via Chord DHT protocol for semantic-based service discovery. The DHT protocol is used for service publishing based on service annotations. This published and spread of similar services are the basis of constructing SON between warehouses. Warehouses publish semantic services on the Chord DHT protocol via semantic overlay networks which are in practice implemented by DHT links. In a P2P grid, each host has a node for local management which is responsible for local scheduling. For example, if a host is a supercluster, the local management node is responsible for the management of nodes within the cluster. If a host is a PC, the local management node is the PC itself. The information about resources within a VO is stored in the resource management agent. Each resource manager node gives its service information to resource management agents which it connects to. Information about resources is published in the network through peer-to-peer communication. Here we use the same idea that is presented in [19,51]. In our model, warehouses are nodes in a P2P grid environment. Based on our technique, some VOs are created, and warehouses are located within the VOs and share their resources and ontology. It should be noted that an agent is not the same as a node (warehouse); it is a program that is located in the node and named according to its responsibility. To organize the routing table of these agents, the Chord algorithm is used. We classify agents into two categories: Request Agent (RA) andBroker Agent (BA). An RA is responsible for querying the warehouse in the Web OS. When a user makes a request, the request is sent to the closest educative engine. The educative engine then looks up the resources in its warehouses (the RA is responsible for this task). If an educative engine does not find a suitable warehouse, it sends the request to the other educative engines; this task is done by a BA. BA is the interface between warehouses and requests. After a suitable educative engine is identified, the request is sent to the management node for its group, and the management node sends the request to the warehouses it manages. The request first goes to a warehouse’s RA. If the requested service is in the warehouse, the RA gives a positive answer; otherwise, it sends the request to the BA, which sends this request to the other warehouses within the VO. If the requested resource is not found in the VO, the request will be sent to the other warehouses in the VO by the BA. The BA knows all the ontologies in the warehouses and it can complete its ontology through communication with other warehouses. It contains a database of service information to be discovered from other warehouses. The following algorithm represents the steps of resource discovery in a pseudo code:
123
PGSW-OS: a novel approach for resource management Algorithm 1 PGSW-OS Algorithm Input: User request for services Output: Some warehouses which contains the suitable services. Begin 1Make Request //A user makes a request. 2//The request is sent to the closest educative engine. 3The educative engine looks up in its underlying resources warehouses. //RA is responsible for this task 4if the educative engine does not find a suitable warehouse then // It is be obtained with the aid of Sim(A,B) 5{ 6It sends the request to the other educative engines // this task is done by BA. 7Go to line 19 //it should seek the suitable resources for the request in other warehouses 8}//if 9else 10{ 11The request will be sent to the management node of a group. //super cluster of a VO 12The management node sends the request to its underlying warehouses. 13The request is first sent to the warehouse’s RA 14if the requested service is within the warehouse then // It is be obtained with the aid of Sim(A,B) 15RA gives a positive answer 16}//if 17else 18{ 19It sends the request to BA 20Send (BA,VO) //BA sends this request to the other warehouses within the VO. 21if this request is not within the VO then // It is be obtained with the aid of Sim(A,B) 22It will be sent to the other warehouses in the virtual organization by the BA 23}//if
End
Our proposed architecture contains three layers: the physical layer, VO layer, and application layer, as illustrated in Fig. 1. As shown in Fig. 1, the lowest layer is the physical layer, which contains the available resources in the semantic Web OS. Each of the warehouses has a local
Fig. 1 Our proposed architecture (PGSW-OS)
123
S. Javanmardi et al.
Fig. 2 P2P-like architecture in the PGSW-OS scheme
resource manager which is responsible for locally managing access to resources. The next layer, the VO layer, is divided into two parts: the collaboration service layer and the distributed resource coupling service layer. The distributed resource coupling service layer is a distributed system with a high degree of transparency which is implemented as middleware and represents a single integrated virtual machine (VM) to access all the underlying resources. All of the basic and core services such as security and quality of service (QOS) assurance mechanisms in the semantic Web OS will be defined and implemented in this layer. Warehouses in our model work together directly, without any central management, and are the exact opposite of a Web OS which uses the educative engine centrally. This is the reason for using DHT. A transaction manager controls the user requests and with the help of the application layer provides a virtual OS page for users. A personalization manager is responsible for preparing users’ accounts based on their personal resources. The user interface is in the application layer. Our model is a semantic Web OS resource management scheme based on the P2P grid infrastructure. The educative engines, the manager node of the groups, and the warehouses are the major components of our architecture, as illustrated in Fig. 2. Warehouses are clustered based on the semantic similarity between their resources. The semantic characterization of each warehouse resource is used to derive the warehouse’s position in the P2P environment. The similarity of concepts shows the degree of commonality between nodes’ concepts. There are so many similarity functions for
123
PGSW-OS: a novel approach for resource management
calculating the similarity between entities. For a detailed study of various similarity functions, the readers are referred to [52]. Andreasen et al. extract conceptual similarity using the opinion of a “similarity graph” [53]. They initiate the similarities with Eq. (1), where sim (x,y) estimates the degree of similarity between concepts x and y: sim(x, y) = p
|α(x) ∩ α(y)| |α(x) ∩ α(y)| + (1 − p) |α(x)| |α(y)|
(1)
The factor p determines the degree of influence of the generalization of ontology concepts; we set this value to 0.67 as used in [53]. α(x) is the set of warehouses reachable fromx, α(y) is the set of warehouse reachable from y and α(x) ∩ α(y) is the reachable warehouse shared by x and y. We used this equation to compute degrees of semantic similarity. Our model has three groups based on the semantic similarity that the resources y of the warehouse bears to the concept x: • the high semantic similarity group: sim(x, y) = 1, • the medium semantic similarity group: sim(x, y) > t, and • the low semantic similarity group: sim(x, y) < t, where t, 0 < t < 1, is a predefined semantic similarity threshold for x. For example, in Fig. 2, we have a high semantic similarity group and a medium semantic similarity group in the VO. Nodes P1, P2, P3, and P4 are in the high semantic similarity group, and all of P1, …, P7 are in the medium semantic similarity group. In comparison to nodes P1, …, P7, any warehouses that exist outside of the cloud, are placed in the low semantic similarity group. We call P4 and P5 the “underlying manager nodes” which are connected to elements in the educative engine layer. This tripartite grouping is used for developing warehouses and educative engines. Warehouses and educative engines in our model employ their ontology to represent their semantic characterization of resources (expertise). A user sends a query (a request for service) to the educative engines of those groups whose warehouse resources have a computed semantic similarity to the request that is higher than the semantic similarity threshold. Semantic threshold determines the search accuracy. The optimization procedure of determining threshold is based on the environment assumptions and users’ requirements. This model uses a semantic threshold value of 0.7. However, the value of threshold is flexible and can be selected according to the administrator policies. Figure 3 shows our PGSW-OS system’s process diagram. A user sends a request to the nearest educative engine, and then the educative engine whose underlying warehouses’ semantic similarity to the request is higher than the predefined threshold will be chosen. That educative engine then broadcasts the request to all its underlying manager nodes, and a manager node whose semantic similarity to the request is higher than the predefined threshold will be chosen. Each manager node broadcasts the request to all the warehouses belonging to its group. We should note that each educative engine has the T-Boxes (defined below) of all its underlying manager nodes and therefore knows about the expertise of those underlying manager nodes; moreover, each manager node has the T-Boxes of all its underlying warehouses and thus knows about the expertise of its underlying warehouses. Each warehouse calculates the semantic
123
S. Javanmardi et al.
Fig. 3 Our model’s process diagram
similarity between the request and the resources it offers with the aid of Eq. (1). If the semantic similarity is higher than the predefined threshold, it forwards the resource description to the requesting user. In Fig. 3, warehouse 1 finds a resource matching the query, so it forwards the resource description to the requester. The educative engine is actually a supercluster node. It forwards the resource requests and returns the results by searching the underlying manager nodes of the groups. The manager node of a group is actually a warehouse that has the underlying warehouse T-boxes. Each educative engine has a knowledge base, which is composed of its common underlying warehouse T-Boxes. We use the Chord algorithm [49] as a routing algorithm to find the best educative engine. We also use this routing algorithm in each underlying cluster node of the educative engine. Each manager node of a group submits its underlying warehouses’ resource information to its corresponding educative engine. The educative engines are arranged into a P2P overlay network, where the available resource information provided by each warehouse can be published throughout the overlay and educative engines can work together to discover relevant resources. Each warehouse has its own ontology, which will be completed by the knowledge distributed over the VOs. This provides excellent resource discovery and selections even if the warehouses and educative engines do not know the concepts and ontologies of the other warehouses and educative engines. Our technique uses the same idea that is presented in [54,55]. The resources of each warehouse are annotated by a semantic language such as OWL-DL [55]. A resource ontology establishes relationships between different taxonomies of resources that might possibly be in the warehouses. We have assumed that there is no centralized ontology for the nodes and that each node has its own ontology. Nodes complete their own ontologies through the ontologies of other nodes in the VO. As an example, consider a Web OS network with two
123
PGSW-OS: a novel approach for resource management
Fig. 4 The ontology used in the first warehouse, which is based on the companies’ program names
Fig. 5 The ontology used in the second warehouse, which is based on the program types
warehouses. The first warehouse classifies its ontology based on the companies that published the programs, and it uses its own ontology. The second warehouse classifies its programs based on their type, e.g., graphic program or word processor. Thus, no matter which of these two ontologies the educative engine chooses, each warehouse will be unable to understand the queries of the other warehouse. It is therefore clear that there is a need for warehouses to complete their ontologies using the ontologies of other existing warehouses in the VO, and it is illustrated in Figs. 4, 5, 6. In description logic systems, the annotated resources are divided into two parts, the terminological box (T-Box) and the assertion box (A-Box). The T-Box is a finite set of terminological premises which includes all premises for concept explanations and descriptions of the domain structure. The A-Box is a finite set of assertion premises which includes premises for the descriptions of concrete data and relations. The resource ID is stored in the A-Box as a bit vector. The mentioned bit vector constructs an ID for the instances of the A-Box. Figure 7 shows the ontological view of a warehouse. Warehouses contain both A-Box and T-Box.
123
S. Javanmardi et al.
Fig. 6 The state of the ontologies when each is completed using the other warehouse’s ontology Fig. 7 The ontological view of a warehouse
4 Performance evaluation 4.1 Experimental setup and performance metrics Our research goal is to improve resource management in a semantic Web OS by improving resource utilization and search efficiency. As we mentioned earlier, the implementation of Web OS can be based on a cloud or a grid. We used the GridSim simulator [56] to simulate our semantic resource discovery model. We mapped grid resource ontology concepts and their semantic similarity threshold values in GridSim. We used a Protege ontology editor and framework [57] to develop the ontologies. The grid resource ontology is used with the aid of protege OWL APIs. For semantically describing services OWL-s is used in our model. We then measured the semantic distances between the ontology concepts with the aid of Eq. (1). To define the similarity values in our GridSim model, we merged a .csv file with our matching class and then chose the semantic threshold value under the node specification, such as node resource architecture. We used the following parameters for the experiments: • Number of resources = 500
123
PGSW-OS: a novel approach for resource management
• Total concepts = 10 • Semantic threshold = 0.7. We use recall, the numbers of related and unrelated warehouses contacted, the clustering coefficient, and computational complexity as the metrics for the performance evaluation of our technique. Recall is defined as the number of results returned divided by the number of results practically available in the network. We say a warehouse is relevant if it provides a resource matching the request, and non-relevant if it has been contacted but does not have any resources matching the request. The clustering coefficient (CC) [58,59] shows how well connected a node’s neighbors are, and computational complexity classifies efficiency. 4.2 Experimental results In the first scenario, our model was evaluated in terms of recall. In this experiment, the semantic discovery capability of our model was compared with a Web OS which uses an exact-matching strategy and a semantic Web OS with a semantic features capability. Based on this experiment, it can be observed that the model with the semantic features capability obtained significantly higher recall values than those obtained by the model which uses the exact-matching strategy. The simulation results show that resource utilization is increased by adding semantic characteristics. Since the non-semantic Web OS chooses resources on the basis of extremely accurate keyword matching, it does not properly perform discovery. Figure 8 illustrates this point. We observe that the recall of our model and the semantic Web OS are very similar. In fact, our model is slightly better than the semantic Web OS model; this is because both models use the same semantic features. In the second scenario, the numbers of relevant and non-relevant warehouses contacted were measured. In Figs. 9, 10, 11, for each query (a request for service), the numbers of relevant and non-relevant warehouses out of all visited warehouses are
Fig. 8 Recall rate vs. number of nodes
123
S. Javanmardi et al.
Fig. 9 Relevant vs. non-relevant peers in PGSW-OS
Fig. 10 Relevant vs. non-relevant peers in a typical semantic Web OS
shown separately for our technique, a typical semantic Web OS, and a typical Web OS. In this experiment, there are 400 warehouses. The difference between a semantic Web OS and a Web OS lies in selecting appropriate warehouses accurately. Moreover, neither of them uses clustering; they attach to the educative engine based on the geographic environment. Therefore, there is no difference in the number of warehouses visited, and the difference lies solely in the number of relevant and non-relevant warehouses. As our model is based on the SON architecture and the warehouses are clustered based on the semantic similarity between their resources, unlike a typical semantic Web OS, we can see that the number of all visited warehouses and nonrelevant warehouses decrease in our model, while there is no difference in the number of relevant warehouses.
123
PGSW-OS: a novel approach for resource management
Fig. 11 Relevant vs. non-relevant peers in a typical Web OS
Fig. 12 Comparison of clustering coefficients
Moreover, in our model, compared to a typical Web OS, there are significant improvements in the three metrics: the number of all warehouses visited, the number of non-relevant warehouses, and the number of relevant warehouses. The number of relevant warehouses is greater, and both the numbers of all visited warehouses and of non-relevant visited warehouses have decreased. The topology of the nodes is a decisive factor affecting the competence of the search system. The clustering coefficient of a node is the proportional relation of the number of existing edges to the maximum number of possible edges linking its neighbors. The clustering coefficient of the network is the average over all nodes. In the third scenario, the clustering coefficient (CC) was measured. Figure 12 shows the clustering coefficients as a function of the number of nodes. This experiment confirms that because of our use of semantic similarity for clustering
123
S. Javanmardi et al.
Fig. 13 Computational complexity
and grouping nodes, we have well-connected clusters in our model compared to the techniques which do not use grouping which is explained and tested in [60], recently. As we mentioned earlier, resource management in our model is based on DHT. Since the Chord algorithm [49], the computational complexity is our scheme uses 1+(Log(k)∗Log(n)) . Here, n is the number of warehouses in the network and k O 2 is the number of educative engines. The computational complexity using educative 1+(n∗k) . In computing and comparing the computational complexities, engines isO 2 we have passed over the semantic overhead of semantics-based models. That is why the computational complexity of the Web OS and semantic Web OS techniques are the same. As can be seen in Fig. 13, they are much higher than for our model. Figure 13 shows the computational complexity of our model versus a Web OS and a semantic Web OS. The search cost in DHT is O (log N) [19], but it is variable in SON. Concerning the number of messages used to carry out the search, we can say that our technique has an upper bound given by O (log n), where n is the number of nodes. The reason is that we use Chord in conjunction with SON; and this is an advantage of our technique.
5 Conclusion and future work In this paper, by combining two technologies, grid and P2P networks, we proposed a new approach for resource management in a semantic Web OS that provides greater distribution and scalability. Our technique focuses on resource discovery. Grid networks provide a technology which can be used in a Web OS as an infrastructure. Our Web OS model integrates grid and semantic P2P networks. Ontologies are used for annotating each warehouse component and organizing users’ profiles, while P2P is responsible for arranging and coordinating the warehouse resources in a P2P-based grid infrastructure. The P2P infrastructure provides efficient optimized computational complexity. We compared our model with semantic and non-semantic Web OS mod-
123
PGSW-OS: a novel approach for resource management
els. Our simulation results showed that our proposed model, which uses a combination of DHT and SON, has better performance in terms of utilization of resources, accuracy of search, scalability, and efficiency. Our next plan is to employ cellular learning automata in a P2P environment for resource management in a semantic Web OS. Each warehouse in the network can be modeled as a cell of cellular learning automata. The system will learn semantic annotated resources and can be used to consider resource load balancing between peers. Acknowledgments The authors of this paper would like to thank Miroslaw Korzeniowski at Wroclaw University of Technology, Damià Castellà (researcher and research fellow at the University of Lleida), and Yunjia Li (Ph.D. candidate and research fellow at the University of Southampton) for their kind comments and advice.
References 1. Tanenbaum A (1992) Modern operating systems. Prentice Hall PTR, Upper Saddle River 2. Tanenbaum A (2002) Distributed system: principles and paradigms. Prentice Hall, New Jersey 3. Mufti A, Salah K (2002) Web operating system. In: Workshop on information and computer science, pp 279–287 4. Shamshirband Sh (2012) A distributed approach for coordination between traffic lights based on game theory. Intern Arab J Info Technol (IAJIT) 9(2):148–153 5. Vahdat A, Anderson Th, Dahlia M et al (1998) WebOS: operating system services for wide-area applications. In: Proceedings of the seventh IEEE symposium on high performance distributed computing (HPDC), Chicago, pp 52–63 6. Glose OS: http://www.glidedigital.com 7. Armbrust M, Fox A, Griffith R et al (2009) Above the clouds: a Berkeley view of cloud computing. UC Berkeley Reliable Adaptive Distributed Systems Laboratory, University of California, Berkeley 8. Rana S (2014) Technology and artitecture design of web based operating system. Intern J Info Technol Comput Sci Persp 2(4):741–743 9. Baccarelli E, Cordeschi N, Polli V (2013) Optimal self-adaptive QoS resource management in interference-affected multicast wireless networks. IEEE/ACM Trans Netw 21(6):1750–1759 10. Pooranian Z, Shojafar M, Abawajy JH, Abraham A (2013) An efficient meta-heuristic algorithm for grid computing. Spring J Combinat Optim (JOCO). doi:10.1007/s10878-013-9644-6 11. Coppens S et al (2014) A semantic workflow engine powered by grid reasoning. In: Proceedings of the international workshop on managing ubiquitous communications and services 12. Kourtesis D Jose, María AR, Iraklis P (2014) Semantic-based QoS management in cloud systems: current status and future challenges. Fut Gener Comput Syst 32:307–323 13. Javanmardi S, Shariatmadari S, Mosleh M (2013) A novel decentralized fuzzy based approach for grid resource discovery. Intern J Innov Comput 1(1):23–32 14. Berners-Lee T, Hendler J, Lassila O (2001) The Semantic Web. Scient Amer 284(5):34–43 15. Shadbolt N, Berners-Lee T, Hall W (2006) The semantic web revisited. IEEE Intell Syst 21(3):96–101 16. McGuinness DL, Van Harmelen F (2004) OWL web ontology language overview, W3C recommendation, 10 17. Mosleh M, Shariatmadari Sh, Javanmardi S (2012) Resource management in web OS based on semantic web technology. Glob J Technol Optim 3:54–58 18. Doulkeridis Ch, Vlachou A, Norvag K, Vazirgiannis M (2010) Distributed semantic overlay networks. Handb Peer-to-Peer Netw 4:463–494 19. Chen Sh, Du X, Ma F, Shen J (2005) A grid resource management approach based on P2P technology. In: Proceedings of the eighth international conference on high-performance computing in Asia-Pacific region (HPCASIA’05), pp 362–369 20. Shamshirband S, Patel A, Anuar NB, Kiah MLM (2014) Cooperative game theoretic approach using fuzzy Q-learning for detecting and preventing intrusions in wireless sensor networks. Eng Appl Artif Intell. doi:10.1016/j.engappai.2014.02.001
123
S. Javanmardi et al. 21. Gendai G, Xindong L (2010) Simple web OS system based on Ext framework and cloud computing. Intern Forum Info Technol Appl (IFITA) 1:448–450 22. Chandra DG, Malaya DB (2012) A study on cloud OS. In: International conference on communication systems and network technologies, Rajkot, 11–13 May, pp 692–697 23. Wu Ch, Pan Y, Yu H, Chen H, Yu Ch (2011) One click to build an on demand virtual cluster in cloud web-based operating system with dynamic loading prediction scheduling algorithm, In: The second international conference on cloud computing, GRIDs, and virtualization, pp 13–19 24. Patel L, Singh G, Gupta R (2012) LINUX based cloud operating system. IJEIR 1(1):18–22 25. Jin-Neng W et al (2013) Heterogeneous diskless remote booting system on cloud operating system., Grid and pervasive computingSpringer, Berlin 26. Anudeep M (2012) Design and analysis of peer 2 peer operating system, Master thesis. Jawaharlal Nehru Technological University, Hyderabad 27. Smets-Solanes JP, Cerin C (2011) SlapOS: a multi-purpose distributed cloud operating system based on an ERP billing model. In: IEEE international conference services computing (CSC), Washington 4–9 July, pp 765–766 28. Dai YS, Wang XL (2006) Optimal resource allocation on grid systems for maximizing service reliability using a genetic algorithms. Reliabil Eng Syst Safe 91(9):1071–1082 29. Ejarque J, Micsik A, Sirvent R, Pallinger P, Kovacs L, Badia R (2010) Semantic resource allocation with historical data based predictions. In: The first international conference on cloud computing, GRIDs, and virtualization, pp 104–109 30. Mario C, Talia D (2004) Semantics and knowledge grids: building the next-generation grid. IEEE Intell Syst 19(1):56–63 31. Andrade N, Santos-Neto E, Brasileiro F (2008) Scalable resource annotation in peer-to-peer grids, In: 18th International conference on peer-to-peer computing, (P2P ’08), Aachen, 8–11 September, pp 231–234 32. Di S, Wang CL (2012) Decentralized proactive resource allocation for maximizing throughput of P2P grid. Elsev J Parallel Distrib Comput 72(2):308–321 33. Andrade N, Cirne W, Brasileiro F (2003) OurGrid: an approach to easily assemble grids with equitable resource sharing. Job scheduling strategies for parallel processing. Springer-Verlag, Berlin, pp 61–86 34. Butt A, Zhang R, Hu Y (2006) A self-organizing flock of condors. Elsev J Parallel Distrib Comput 66(1):145–161 35. Lawton G (2008) Moving the OS to the Web. Comput IEEE Comput Soc 41(3):16–19 36. Sanchez F, García R, Bejar RF, Breis J (2009) An ontology, intelligent agent-based framework for the provision of semantic web services. Exp Syst Appl 36(2):3167–3187 37. Cordeschi N, Shojafar M, Baccarelli E (2013) Energy-saving self-configuring networked data centers. Comput Netw 57(17):3479–3491 38. http://ezilla.info/ 39. http://www.ezilla-nchc.sourceforge.net/ 40. Sotomayor B, Montero R, Llorente I, Foster I (2009) Resource leasing and the art of suspending virtual machines, In: 11th IEEE inter-national conference on HPCC ’09, pp 59–68 41. Halinka T (2008) The openQRM user’s guide. http://www.openqrm.com/ 42. Krone O, Schubiger S (1999) WEBRES: towards a web operating system. Springer, KiVS 43. Kapil G, et al (2012) Xml based lucid web operating system, In: IEEE international conference on engineering education: innovative practices and future trends (AICERA), pp 1–3 44. Ostrowski DA (2012) A scalable, lightweight webOS application framework, In: IEEE first international conference on internet operating systems (ICIOS), Irvin, 10–12 December, pp 5–8 45. Stefan T, Vinoski S (2010) Node.js: using JavaScript to build high-performance network programs. IEEE Inter Comput 14(6):80–83 46. Anderson JC, Lehnardt J, Slater N (2010) CouchDB: the definitive guide. O’Reilly Media Inc, USA 47. Riad AM, Elminir HK, ElSoud MA, Sabbeh SF (2010) Sewos: a framework for semantic web operating system. Intern J Electr Comput Sci IJECS-IJENS 10(1):1–12 48. Riad AM, Elminir HK, ElSoud MA, Sabbeh SF (2011) SEWOS: bringing semantics into web operating system. IJCSI 8(3):16–19 49. Jun G, Chen Ch (2012) Research on chord searching algorithm base on cache strategy. Elsev Phys Procedia 25:905–910 50. Stoica I, Morris R, Liben-Nowell D, Karger DR, Kaashoek MF, Dabek F, Balakrishnan H (2003) Chord: a scalable peer-to-peer lookup protocol for internet applications. IEEE/ACM Trans Netw 11(1):17–32
123
PGSW-OS: a novel approach for resource management 51. Pooranian Z, Harounabadi A, Shojafar M, Hedayat N (2011) New hybrid algorithm for task scheduling in grid computing to decrease missed task. World Acad Sci Eng Technol 55:5–9 52. Meditskos G, Bassiliades N (2010) Structural and role-oriented web service discovery with taxonomies in OWL-S. IEEE Trans Knowl Data Eng (TKDE) 22(2):278–290 53. Andreasen T, Bulskov H, Knappe R (2003) From ontology over similarity to query evaluation, In: 2nd CoLogNET-ElsNET symposium—questions and answers: theoretical and applied, perspectives, pp 39–50 54. Pooranian Z, Shojafar M, Javadi B (2012) Independent task scheduling in grid computing based on queen bee algorithm. IAES Int J Artif Intell 1(4):171–181. doi:10.11591/ij-ai.v1i4.1229 55. Heine F, Hovestadt M, Kao O (2004) Towards ontology-driven P2P grid resource discovery, In: International IEEE/ACM workshop on grid computing, pp 76–83 56. Qureshi K, Rehman A, Manuel P (2011) Enhanced GridSim architecture with load balancing. Spring J Supercomput 57(3):265–275 57. Lasbleiz J, Brillet E, Decaux O, Duvauferrier R (2011) Staging disease with Protégé 4: example of multiple myeloma. IRBM 32(6):329–331 58. Eggemann N, Noble S (2011) The clustering coefficient of a scale free random graph. Discr Appl Math 159(10):953–965 59. Baccarelli E, Cordeschi N, Patriarca T (2012) QoS stochastic traffic engineering for the wireless support of real-time streaming applications. Comput Netw 56(1):287–302 60. Javanmardi S, Shojafar M, Shariatmadari Sh, Ahrabi SS (2014) FR TRUST: a fuzzy reputation based model for trust management in semantic P2P grids, inderscience. Intern J Grid Util Comput. http:// arxiv.org/abs/1404.2632
123