IP Library Granted Patent US 9,722,930
Granted Patent B2
US 9,722,930 · App. 14/075,727 · Granted Aug 1, 2017

Exploiting probabilistic latency expressions for placing cloud applications

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,722,930
App. No.
14/075,727
Granted
Aug 1, 2017
Kind
B2
Abstract

Various exemplary embodiments relate to a method for placing components of a plurality of instances of a cloud application on nodes in a cloud infrastructure, the method including: receiving scenario probabilities of a plurality of cloud application scenarios, wherein the plurality of cloud application scenarios define the modes of operation of the cloud application; receiving cloud infrastructure performance data; defining a performance metric of the cloud application based upon cloud infrastructure performance data; defining constraints on the placement of the application components; receiving a service level agreement performance requirement based upon a probability; optimizing the placement of the components of the plurality of instances of the cloud application on nodes in the cloud infrastructure based upon the scenario probabilities, cloud infrastructure performance data, the performance metric, and the constraints on the placement of the application components to meet the service level agreement performance requirement.

Claims (40)

1. A method for placing components of a plurality of instances of a cloud application on nodes in a cloud infrastructure, the method comprising:

receiving by a cloud controller scenario probabilities of a plurality of cloud application scenarios, wherein the plurality of cloud application scenarios define which of a plurality of application components to use and an order of operation for the plurality of application components;

receiving by a cloud controller cloud infrastructure performance data;

defining a performance metric of the cloud application based upon cloud infrastructure performance data;

defining constraints on the placement of the plurality of application components;

receiving a service level agreement performance requirement based upon a probability of meeting a specified performance requirement;

optimizing the placement of the plurality of application components of the plurality of instances of the cloud application on nodes in the cloud infrastructure based upon the scenario probabilities, cloud infrastructure performance data, the performance metric, and the constraints on the placement of the plurality of application components to meet the service level agreement performance requirement.

2. The method of claim 1 , wherein performance metric is an end-to-end latency of the cloud application and the service level agreement performance requirement is an application response time.

3. The method of claim 2 , wherein end-to-end latency of the cloud application includes a message transmission latency.

4. The method of claim 2 , wherein end-to-end latency of the cloud application includes a computation latency.

5. The method of claim 2 , wherein end-to-end latency of the cloud application includes a storage latency.

6. The method of claim 1 , wherein the cloud infrastructure performance data includes a network latency matrix defining the latency between each available node in the cloud computing infrastructure.

7. The method of claim 1 , wherein the constraints on the placement of the application components includes one of computing constraints, bandwidth constraints, and storage constraints.

8. The method of claim 1 , further comprising receiving computation times and probabilities for a cloud computing application component wherein the optimizing the placement of the components is further based upon the computation times and probabilities for the cloud computing application.

9. A cloud controller method for placing components of a plurality of instances of a cloud application on nodes in a cloud infrastructure the cloud controller comprising:

a network interface;

a memory; and

a processor in communication with the memory, the processor being configured to:

receive scenario probabilities of a plurality of cloud application scenarios, wherein the plurality of cloud application scenarios define which of a plurality of application components to use and an order of operation of the plurality for application components;

define a performance metric of the cloud application based upon cloud infrastructure performance data;

define constraints on the placement of the plurality of application components;

receive a service level agreement performance requirement based upon a probability of meeting a specified performance requirement;

optimize the placement of the components of the plurality of instances of the cloud application on nodes in the cloud infrastructure based upon the scenario probabilities, cloud infrastructure performance data, the performance metric, and the constraints on the placement of the plurality of application components to meet the service level agreement performance requirement.

10. The cloud controller of claim 9 , wherein performance metric is an end-to-end latency of the cloud application and the service level agreement performance requirement is an application response time.

11. The cloud controller of claim 10 , wherein end-to-end latency of the cloud application includes one of a message transmission latency, a computation latency, and a storage latency.

12. The cloud controller of claim 9 , wherein the cloud infrastructure performance data includes a network latency matrix defining the latency between each available node in the cloud computing infrastructure.

13. The cloud controller of claim 9 , wherein the constraints on the placement of the application components includes one of computing constraints, bandwidth constraints, and storage constraints.

14. A non-transitory machine-readable storage medium encoded with instructions for execution by a cloud controller for placing components of a plurality of instances of a cloud application on nodes in a cloud infrastructure, the medium comprising:

instructions for receiving scenario probabilities of a plurality of cloud application scenarios, wherein the plurality of cloud application scenarios define which of a plurality of application components to use and an order of operation for the plurality of application components;

instructions for receiving cloud infrastructure performance data;

instructions for defining a performance metric of the cloud application based upon cloud infrastructure performance data;

instructions for defining constraints on the placement of the plurality of application components;

receiving a service level agreement performance requirement based upon a probability of meeting a specified performance requirement;

instructions for optimizing the placement of the components of the plurality of instances of the cloud application on nodes in the cloud infrastructure based upon the scenario probabilities, cloud infrastructure performance data, the performance metric, and the constraints on the placement of the plurality of application components to meet the service level agreement performance requirement.

15. The non-transitory machine-readable storage medium of claim 14 , wherein performance metric is an end-to-end latency of the cloud application and the service level agreement performance requirement is an application response time.

16. The non-transitory machine-readable storage medium of claim 15 , wherein end-to-end latency of the cloud application includes a message transmission latency.

17. The non-transitory machine-readable storage medium of claim 15 , wherein end-to-end latency of the cloud application includes a computation latency.

18. The non-transitory machine-readable storage medium of claim 15 , wherein end-to-end latency of the cloud application includes a storage latency.

19. The non-transitory machine-readable storage medium of claim 14 , wherein the cloud infrastructure performance data includes a network latency matrix defining the latency between each available node in the cloud computing infrastructure.

20. The non-transitory machine-readable storage medium of claim 14 , wherein the constraints on the placement of the application components includes one of computing constraints, bandwidth constraints, and storage constraints.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Sep 2, 2014
From: CREDIT SUISSE AG
To: ALCATEL LUCENT
Reel/Frame 033677/0531 →
SECURITY AGREEMENT Recorded Feb 10, 2014
From: ALCATEL LUCENT
To: CREDIT SUISSE AG
Reel/Frame 032189/0799 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2013
From: CUCINOTTA, TOMMASO; CHANG, FANGZHE; VISWANATHAN, RAMESH
To: ALCATEL-LUCENT
Reel/Frame 031571/0126 →