1. A system for implementing a virtualization congestion control framework, comprising: a host system connected to a service provider network, said host system comprising one or more processors, one or more hardware components, and a non-transitory computer readable medium having encoded thereon a set of instructions executable by the one or more processors to perform one or more operations, the set of instructions comprising: instructions for establishing a virtual machine environment on the host system; instructions for running an application congestion controller within the virtual machine environment; instructions for establishing one or more interfaces mapping the virtual machine environment with the one or more hardware components of the host system; instructions for establishing a resource usage state module running within the virtual machine environment; instructions for monitoring, with the resource usage state module, hardware resource usage of the one or more hardware components; instructions for establishing an orchestrator operatively coupled to the application congestion controller and to the resource usage state module; instructions for controlling, with the orchestrator, congestion of hardware resources used by one or more applications running on one or more virtual machines in the virtual machine environment; instructions for establishing, with the orchestrator, two-way communications between the virtual machine environment and the one or more applications running on the one or more virtual machines; and instructions for modifying, with the orchestrator, an allocation of hardware resources to the one or more applications or recovering hardware resources from the one or more applications.