Patent ID: 7426570

Claim:
A method of determining a placement of services of a distributed application onto nodes of a distributed resource infrastructure comprising the steps of: establishing an application model of the services comprising transport demands between the services; establishing an infrastructure model of the nodes comprising transport capacities between the nodes; forming an integer program that comprises: a set of placement variables for a combination of the services and the nodes, each of the placement variables indicating whether a particular service is located on a particular node; communication constraints between node pairs which ensure that a sum of the transport demands between a particular node pair does not exceed the transport capacity between to particular node pair, each term of the sum comprising a product of a first placement variable, a second placement variable, and the transport demand between the services associated with the first and second placement variables; and an objective; and employing a local search solution to solve the integer program which determines the placement of the services onto the nodes, wherein the services are assigned to the nodes according to a previous assignment and further comprising assessing reassignment penalties for placements of the services that differ from the previous assignments.