1. A method for optimizing resource utilization in a collection of devices having a plurality of hierarchical network layers, the method comprising: identifying a plurality of packets exchanged between a plurality of processes executed on collections of server computers, wherein the plurality of hierarchical network layers couple the collections of server computers; determining a plurality of virtual machine groups based on the identified plurality of packets, wherein each of the plurality of virtual machine groups identifies one or more virtual machines configured on the collections of server computers to execute one or more of the plurality of processes, and wherein the plurality of virtual machine groups are configured to increase data traffic in a lower layer in the plurality of hierarchical network layers and to decrease the data traffic in a higher layer in the plurality of hierarchical network layers; and relocating the virtual machines between the collections of server computers according to the plurality of virtual machine groups.