Cloud computing is a ideal for enabling convenient, on-demand web admission to a public pool of configurable computing resources. To furnish cloud computing services frugally, it is vital to optimize resource allocation below assumption that the wanted resource can be seized from a public resource pool. In supplement, to be able to furnish processing ability and storage capacity, it is vital to allocate bandwidth to admission them at the alike time. This paper proposes an optimal resource allocation process for cloud computing environments.