1. A method for providing a cloud-based computing service to a user, said method comprising: receiving a request for the computing service to be performed for the user, wherein the request includes a selection of at least one flow-slice, said at least one flow-slice comprising a network abstraction of a network pay-per-use unit; estimating workloads to be performed by a plurality of infrastructure components to satisfy the at least one flow-slice; and determining, using a processor, a provisioning scheme for the plurality of infrastructure components to implement the estimated workloads on the plurality of infrastructure components.