Grid computing is a convoluted component which has progressed by means of earlier advancements in parallel, dispersed and high-performance computing (HPC) [9, 10].
The real and specific problem that underlies the Grid concept is coordinated resource sharing and problem solving in dynamic, multi-institutional virtual organizations. The sharing that we are concerned with is not primarily file exchange but rather direct access to computers, software, data, and other resources, as is required by a range of collaborative problem-solving and resource-brokering strategies emerging in industry, science, and engineering. This sharing is, necessarily, highly controlled, with resource providers and consumers defining clearly and carefully just what is shared, who is allowed to share, and the conditions under which sharing occurs. A set of individuals and/or institutions defined by such sharing rules form what we call a virtual organization (VO) [2].
Computing grids are conceptually and logically like electrical grids. In an electrical grid, wall outlets allow us to connect to an infrastructure of resources which generate and distribute the electricity. When we connect to the electrical grid, we don’t even need to know where the power plant is situated or how the electricity gets to us. Likewise, in the IT industry, grid computing uses middleware to coordinate distinct IT resources over the network, allowing them to function and work as a virtual whole. The goal of a computing grid, like that of the electrical grid, is to provide users with access to the resources they need when they need them, and to provide remote access to IT assets, and aggregating processing power.
According to Zhang et al. [8], grid provides a series of distributed computing resources via LAN or WAN to the terminal user’s application, as if he/she is using a super virtual computer. This basic idea will realize safe and secure use and coordinate and organize resource sharing among the person, business group, organization and resources, and will produce virtual and dynamic organization. Grid computing is a technique of distributed computing. It also includes location and organization software and hardware to provide unlimited power. Its goal is to allow anyone in the grid to cooperate and access each other’s information. But cloud computing is better; it has many advantages over grid computing. Cloud computing grows from grid computing and provides the users with on-demand resources that are provisioned according to their application.
1.3.1 Grid-Related Technologies
Grid computing engages in linking different geographically remote machines and servers into one individual network to create (from client’s perspective) a virtual supercomputer aided by joining the resource and computational control of all computers on the grid. A system of geologically and physically distributed resources having machines, switches, devices, connecting cables, appliances and data make up the grid computing environment. Every resource can be utilized by every user with only one login account. Diverse artifaces may possess the physical artifaces. The related terminologies in grid computing are distributed computing and peer-to-peer computing [9].
Distributed Computing (DC): Distributed computing uses the procedure of dispersing the workload of a program across at least two procedures. The prime goal of distributed computing is separating and dealing with issues in various computers associated through a typical network. A distributing system involves different selfgoverning computers, self-communicating with each other by means of a personal computer network. The personal computer cooperates keeping in mind the end goal to attain a shared objective. A few characteristics of a distributed system are given below:
Fault Tolerance: All personal computers inside the shared system have to cope with crashes, i.e., the system needs to tolerate the faults.
Heterogeneous Atmosphere: The disseminated framework (network latency, network topology, network associations and several involved personal computers) isn’t predefined. The disseminated framework may incorporate specific types of personal computers and heterogeneous network joins. When running a program, framework structure could change with a specific end goal to achieve that goal. This is known as “heterogeneous atmosphere.”
Separate Participation: Separate participation is an instance where each and every personal computer has its particular participation and has a constrained perspective of the final system. All personal computers may just know a few modules or a few parts of the entire program or information.
Figure 1.3: Schematic diagram of distributed system.
The above Figure 1.3 shows disseminated frameworks as a group of personal computers connected with each other by a correspondence network with all personal computers having a processor and memory with a similar kind of end goal for the work. Depending upon the workload and the execution time, the network topology and aggregate number of contributing personal computers can be progressively orchestrated.
Peer-to-Peer Computing (P2P): In this strategy, every personal computer shares the physical resources and services by specifically interchanging among the systems and every personal computer could perform as servers and client for other personal computers associated with the network. Which personal computer could perform as a client or server depends upon which part is more dependable and proficient for that network. In P2P, data is commonly interchanged immediately and maintain the basic internet protocol (IP) network. The main priority of P2P is decentralized coordination which avoids single dependency.
Figure 1.4 below shows 6 nodes, Node A, B, C, D, E, and F. Every node speaks for itself in a machine and could distribute the physical artifacts and organizations specifically trading between the nodes and communicating with all others. Every node could act as server and client for alternate nodes associated with the system.
Figure 1.4: Peer-to-peer communication scenario.
In P2P frameworks, resources such as storage, estimations and bandwidth are given by clients. The main advantage of P2P network is the decentralized system. Subsequently, there is an arrangement of information and framework backup among the nodes. In any case, the fundamental proviso of P2P framework is the security issue. A node can download an infection document that could contaminate alternate frameworks; in that worry, P2P framework is powerless against unsigned and unsecured codes which prompt unsecured conditions because of the absence of a unified executive.
1.3.2 Levels of Deployment
Cluster grids, enterprise grids, and global grids are three logical levels in the deployment of grid computing environment [10]:
Cluster Grids: The cluster grids are the basic form of a grid environment which consists of multiple computer systems interrelated by means of a network. Cluster grids might include distributed workstations and servers, and also contain centralized physical resources in a datacenter environment. High-performance jobs and high throughput is supported by cluster grid. Some examples of the cluster grid framework are