Utility-based Allocation of Resources to Virtual Machines in Cloud Computing