Abstract

Cloud computing is becoming popular Buzzword today. Cloud computing provides opportunity to dynamically scale the computing resources for applications, which is shared among customers using virtualization technology. Infrastructure as a Service (IaaS) allows the cloud provider freely locate the infrastructure over the internet in cost-effective manner by migrating in the form of virtual machine. A resource monitoring system, monitors utilization of resources of host machine can be used as a base criteria for determining idle machine. Utilizing this types of idle machines results in effective utilization of machine, energy saving etc. Hence, proposed system uses collection of Virtual Machines (VMs) running on unused computers at the edge and allocate them dynamically, based on user demands. Proposed system is Designed and implemented as an inventory management system in which server manages heterogeneous system, handles end-user request and serve them effective virtual machine. There are three main issues discussed in this paper (I) Ã¢ÂÂResource monitoring and connection establishmentÃ¢ÂÂ (II) Ã¢ÂÂInventory management systemÃ¢ÂÂ i.e. finding efficient virtual machine and allocating them. (III) Ã¢ÂÂReallocation of the Virtual MachinesÃ¢ÂÂ, re-configuring the VM if required Machines configuration is not available on cloud side. This paper analyses problem from the perspective of an end-users like small and middle organization. Which uses cloud Services in order to achieve scalable provisioning with respect to Qos constraints.

Keywords

INTRODUCTION

Cloud computing is a fast growing area, known as service-driven business model as it providing ultimate solution in
business times. Business required hardware and platform level services, fulfilled on-demand basis allowing business
customers to scale their resource usage based on their requirements. It is a technology, which enables one to
accomplish aforementioned objective, leading towards improved business performance. Infrastructure as a Service is a
cloud computing model which provides infrastructure to different organizations according to their needs [1]. It
comprises of users requesting for the services of diverse applications from various distributed virtual servers. The cloud
should provide resources on demand to its clients with high availability, scalability and reduced cost [2]. To enhance
performance of service provider in distribute network load balancing is one of the essential factors. Cloud computing
has given the new face to the distributed field.

The success of IT organizations lies in acquiring the resources on demand. Cloud computing is a promising technology
to provide on demand services according to the clients requirements within a stipulated time. For dynamically sharing
of resources cloud computing provides break through using virtualization technology. In [4] author explained how to
creating virtual platform inside other operating system along with its detailed installation process of hypervisor and
virtual machines [5]. Handling of resources effectively is still an open challenge. Because of vast diversity in hardware
platform, different usage pattern, large number of resources, etc. testing these on real scenario is quite lengthy process.
Further, despite of high diversity in service platform cloud computing environment provides shared pool of resources
for end-users. Supervision of resources, dynamic handling of real time user request and providing it instantaneously on
user demand is becoming complex job. Cloud is a pay-go model where on every instance utilization there is separate
charge, dictates requirements of available resources requested on demand.

In this paper, we concentrate attention on IaaS, as main aim is to build an application which acts as an interface
between clouds and locally connected several idle client machines. To achieve the above mentioned objective, we are
implementing an inventory management system that supports virtual machine migration. In the cloud computing
environment the load refers to the number of requests that has to be serviced by VMs that are available in cloud. There
are three prime issues discussed (I) ―Resource monitoring and connection establishment‖ (II) ―Inventory management
system‖, i.e. the process of finding efficient virtual machine and allocating them. (III) ―Reallocation of the Virtual
Machines‖, re-configuring the VM if required Machines configuration is not available on cloud side. This paper focus
on how machines can be utilized cost effectively.

This paper is aligned as follows. Related work is given in section 2. The problem definition with system architecture is
describe in section 3. Module implementation and its result is explained in Section 4 and finally conclusion is in section
5.

II. RELATED WORK

Cloud computing is a vast concept. The interesting part is to consider, while migrating the VM and as per the second
issue, for allocating efficient VMs, large numbers of the algorithms were available for the load balancing but we are
more concern about different modules available for the migration of Virtual Machines from one source machine to the
other target machine [7] [15]. In this system, for transparent migration of virtual infrastructures between client and
server, involve many challenges such as IP address sharing, bandwidth sharing and isolation from local home network
traffic etc. [18][25]. They overcome the problem and provide variety of solutions on managing a personal Cloud. They
implement an optimal solution to the resource management problem, allowing peers to share VMs across their
individual Personal Clouds by specifying their resource offers, requests and verify its performance via detailed
simulations.

The main objective of the system is to use underutilized resources of idle client machines by making them available for
use for the cloud computing system, so machine are utilized. By this we can save energy and also give advantage of
dynamic resource allocation to the cloud users. Proposed system is designed and implemented as an inventory
management system in which server manages heterogeneous system having different configurations and used for
allocation of efficient virtual machine to the end-user. Our proposed method handle request, which arrives for the
requirement of VMs. And also suggest efficient and suitable VMs with their required configuration. There are
numerous algorithms, models and architectures has been proposed in order to adapt and handle bulk of cloud
[11][15][16]. But very few of them have succeed in their architectural perspective [14].

In cloud computing environment live immigration of VMs is a major issue [7][15]. When physical host’s machines are
loaded, some or all virtual machines moved to less loaded host in order to balance performance working of host
machine. This may imposes surplus challenges since these machine uses local persistent storage. Since whole disk state
get transferred to the destination host while the virtual machines are running. In [15] author propose several different
methods for synchronizing local storage during live migration. Cloud infrastructures enable users to migrate resources,
swap space, etc. In [14], author analyses the problem from the perspective of an application service provider, resulting
in good trade-off between the ASP control over the autonomic loop and scalability level guaranteed by a public IaaS
provider.

III. PROBLEM DEFINITION

As the main aim of cloud computing is to provide resources as a service on demand to the user. In this research paper
we are going to deal with three main problems.

1. Identifying unused (idle) machines.

2. Allocation of virtual machines.

3. Reallocation of virtual machines.

A. Identifying unused (idle) machines

In this phase, status of currently running machines of particular group or organization connected in network is being
monitored. Based on percentage of utilization of resources it is declared as idle (available) and automatically connected
to the server. While connection is establishment with the server, it pass details of its own machine configuration,
number of VM (if it has) along with its VMs configuration. Based on requirement request like RAM size, Hard Disk
size of end user, server will allocate access of best possible machine configuration. But if it is not present then server
automatically re-size the existing machine configuration making them available to the end user. In this way efficient
utilization of unused machines can be done.

B. Allocation of virtual machines

As per user requirement, Cloud provider should allocate an efficient virtual machine to the end user. When the user
request arrives for the virtual machine and the cloud provider is available with the number of free virtual machines,
then allocating an efficient virtual machine is the main goal of cloud provider.

Allocating efficient virtual machines is also one of the big challenge. For example if the request arrives at the cloud
provider for the VM and if more than 1 virtual machines are available, then the load balancing algorithm will be used
for finding an efficient VM for the allocation. Moreover if arrived request does not match with the configuration of the
available virtual machine then reconfiguration will be done for the suitable virtual machines so they are able to fulfill
end user needs.

C. Reallocation of virtual machines

The foremost goal of cloud computing is to provide better service as per requirement on demand to end-user. Now
suppose if we are having two physical machines and both the machines are idle and already connected with server, each
having one virtual machine with the processor of 1 GHz, 80 GB and 100 GB hard disk respectively. If the request
arrives for the virtual machine having processor of 2 GHz and 80 GB, at that time the concept of reallocation of virtual
machine take place. For such situation we dynamically reconfigure one of the virtual machine from one physical
machine and then make it available with the configuration of 2GHz, 80 GB hard disk so providing a better service to
the end user.

The system architecture is shown in figure 1 representing working of inventory system overcoming the above stated
problem. Whenever user send request to the inventory server systemfor a machine with specific configuration,
inventory system identifies suitable and efficient Virtual machine from set of idle host machine. Since mapping table is
maintained inside server database representing host connection and its equivalent available virtual machines.The
matched VM is made available by runtime executing VM control command as shown in figure 2 and 3. That virtual machine access is provided as a response in returned with required parameters such as remote VM username and its
password details as shown in figure 5. Switch is internally controlled by server for providing remote access.

III. MODULE IMPLEMENTATION AND RESULT

Resource Monitoring on client (Host) machines:

Using hardware API, system monitor the status of current running machine in network. Based on percentage of
utilization of resources as shown in figure 4, system automatically establish the connection between host and server
using socket programming concept, certain DOTNET packages.

Network Connectivity:

Server and client connected to each other using some logical link, as shown in figure 1. This logical link is called as
―SOCKET‖. For socket programming Winsock 6.0 control is used which allow two different machines to communicate
through the functions like Listen (), Connect (), Accept (), SendData () and GetData (). Figure 1 shows how connection
is established between client and server.

End-user Application:

End-user first establish connection to the server and after connection is established user provides its input request for
specific configuration of machine to master server which act as inventory manager as shown in figure 5. Master will
analyze the request and finds efficient and suitable VM machine, provide access to the end-user by providing remote
system information such as user-ID and its password.

Inventory management system:

Server manages record of connected idle client along with its own connected host machines as shown in figure 6. It
allocates relevant and efficient VM to the requesting end-user if request is matched and machine available. Server
allocates user-ID, password to the end-user as shown in figure 6. It also keep records of allocation of VM to end-user
and also manages configuration and re-configuration of Virtual Machines. The general test case scenario of overall
system is shown in Table I. Using Remote Desktop Protocol the connection is established between end user and its
requested VM. RDP internally uses Microsoft Desktop terminal service allowing remote access of VM to the end-user.

With Remote Desktop Connection, one machine running Windows can connect to another computer running Windows
that's connected to the same network or to the Internet. For example, like we are using resources from our home
computer.

For connection with the remote computer, computer must be turned on, Remote Desktop must be enabled, it must have
network access to the remote computer (this could be through the Internet), and should have permission to connect. For
permission to connect, machine must be on the list of users. Before starting a connection, it's a good idea to look up the
name of the computer connecting to and to make sure Remote Desktop connections are allowed through its firewall.

There are different scenario identified while considering inventory management is as shown in table 1. The each
column entry in table represent status of entities involved in provisioning of VM on demand.

V. CONCLUSION AND FUTURE WORK

This paper, discussed about cost effective scheme for effective utilization of VM by implementation of an inventory
management system in which server manages heterogeneous system having different configurations which are used for
allocation of efficient virtual machine to the end-user. This system handles dynamic request, for the requirement of
VMs, suggest efficient and suitable VMs with their configuration, but if the required VM is not available then we are
going to find machine with at least any one requirement matching i.e. either RAM or HardDisk while re-configuring
other. And providing that machine access to the end-user with minimum time delay. If neither of this happen in that
case user will be in waiting state.

The expected outcome of the system is to save unused energy and resources by making it available for use to the cloud
computing system, so it get utilized. This is advantages to the small as well as large organizations such as for
establishing their own infrastructure without investing too much of cost by simply donating their machine access. So
that Institutions/ Enterprises can effectively utilize their resources by controlling the VM state i.e. on demand activation
without investing large expenses. As CSP will include charges for only managing and transferring the resource
instances, to required places within that organization itself. For the future use we will try for making highly configured
virtual machine by utilizing resources of two or more activated virtual machine.