I. Introduction
Cloud computing is a network-based environment that focuses on sharing computations and resources. Basically, clouds are Internet-based and try to disguise complexity for clients. Cloud providers use virtualization technologies combined with self-service abilities for computing resources via network infrastructure especially the Internet. In cloud environments multiple VMs (VM) hosted on the same physical server as infrastructure. In cloud, costumers only have to pay for what they use. Cloud computing refers to both the applications delivered as services over the Internet and the hardware and systems software in the datacenters that provide those services.