IP Library Granted Patent US 10,776,158
Granted Patent B2
US 10,776,158 · App. 16/263,449 · Granted Sep 15, 2020

Management of application deployment across multiple provisioning layers

Inventors: Robert Randall Cleave (Half Moon Bay, CA); John Edward Metzger (Campbell, CA); Shaun B. Coleman (San Jose, CA)
Assignee: Lockheed Martin Corporation
G06F9/4856G06F9/45558G06F9/5077G06F9/5088H04B7/18504H04H20/74H04L67/1004H04L67/1095H04L67/148H04L67/34G06F2009/4557G06F2009/45591
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 10,776,158
App. No.
16/263,449
Filed
Jan 31, 2019
Granted
Sep 15, 2020
Kind
B2
Art Unit
2457
USPC
709/226
Abstract

Systems, methods, and software described herein manage the deployment of applications across multiple provisioning layers. In managing the applications, a management service may monitor resource usage by the applications that are executing in a first provisioning layer, wherein the first provisioning layer comprises physical nodes such as airborne or spaceborne nodes. While monitoring the resource usage, the management service may determine when the resource usage by the applications satisfies migration criteria and, when the applications satisfy the migration criteria, select one or more of the applications to be offloaded to another provisioning layer. Once selected, the management service may initiate deployment of the one or more applications in the other provisioning layer.

Claims (62)

1. A method comprising:

monitoring resource usage for a plurality of applications executing across a first plurality of physical nodes comprising airborne nodes or spaceborne nodes, wherein a first application of the plurality of applications is configured to monitor an object of interest using one or more sensors of the first plurality of physical nodes;

determining when the resource usage by the plurality of applications satisfies migration criteria;

when the resource usage by the plurality of applications satisfies the migration criteria, identifying at least the first application to be offloaded to a second plurality of physical nodes comprising airborne nodes or spaceborne nodes different than the first plurality of physical nodes;

determining if the second plurality of physical nodes can accommodate sensor requirements of the first application before transitioning the first application; and

based at least on the second plurality of physical nodes determined to be unable to accommodate the sensor requirements, transitioning a data processing portion of the first application to the second plurality of physical nodes and maintaining a sensor portion of the first application on the first plurality of physical nodes by at least determining state information resultant from execution of the first application, and providing the state information to associated ones of the second plurality of physical nodes for execution of the first application based at least on the state information.

2. The method of claim 1 , wherein the resource usage comprises at least one among communication bandwidth usage, processing resource usage, and storage usage.

3. The method of claim 1 , further comprising determining an anticipated time for the resource usage to meet the migration criteria based at least on monitored trends in the resource usage over time that indicate predicted intervals for which the resource usage meets the migration criteria.

4. The method of claim 1 further comprising, for at least the first application, converting a first resource configuration associated with the first plurality of physical nodes to a second resource configuration associated with the second plurality of physical nodes, wherein the first resource configuration and the second resource configuration each comprise protocol configurations.

5. The method of claim 1 further comprising, transitioning at least the first application to the second plurality of physical nodes by at least generating a software image configuration compatible with the second plurality of physical nodes, wherein the software image configuration is different than used for the first plurality of physical nodes.

6. The method of claim 1 , further comprising:

based at least on the second plurality of physical nodes determined to be unable to accommodate the sensor requirements, determining at least a second application of the plurality of applications for transition to the second plurality of physical nodes.

7. The method of claim 1 further comprising:

based at least on the second plurality of physical nodes determined to be able to accommodate the sensor requirements, transitioning the data processing portion and the sensor portion of the first application to the second plurality of physical nodes.

8. The method of claim 1 , further comprising identifying at least the first application to be offloaded to the second plurality of physical nodes based on a quality of service associated with at least the first application.

9. The method of claim 1 , wherein identifying at least the first application to be offloaded to the second plurality of physical nodes comprises:

(a) identifying the first application to be offloaded based on a quality of service associated with the first application;

(b) in response to deployment of the first application, determining whether the deployment of the first application satisfies migration criteria;

(c) when the deployment of the first application fails to satisfy the migration criteria, repeating steps (a) and (b) to identify another application to be offloaded.

10. An apparatus comprising:

one or more non-transitory computer readable storage media;

a processing system operatively coupled to the one or more non-transitory computer readable storage media; and

program instructions stored on the one or more non-transitory computer readable storage media that, when executed by the processing system, direct the processing system to:

monitor resource usage for a plurality of applications executing across a first plurality of physical nodes comprising airborne nodes or spaceborne nodes, wherein a first application of the plurality of applications is configured to monitor an object of interest using one or more sensors of the first plurality of physical nodes;

determine when the resource usage by the plurality of applications satisfies migration criteria;

when the resource usage by the plurality of applications satisfies the migration criteria, identify at least the first application to be offloaded to a second plurality of physical nodes comprising airborne nodes or spaceborne nodes different than the first plurality of physical nodes;

determine if the second plurality of physical nodes can accommodate sensor requirements of the first application before transitioning the first application; and

based at least on the second plurality of physical nodes determined to be unable to accommodate the sensor requirements, transition a data processing portion of the first application to the second plurality of physical nodes and maintain a sensor portion of the first application on the first plurality of physical nodes by at least determining state information resultant from execution of the first application, and providing the state information to associated ones of the second plurality of physical nodes for execution of the first application based at least on the state information.

11. The apparatus of claim 10 , wherein the resource usage comprises at least one among communication bandwidth usage, processing resource usage, and storage usage.

12. The apparatus of claim 10 , wherein the program instructions further direct the processing system to:

determine an anticipated time for the resource usage to meet the migration criteria based at least on monitored trends in the resource usage over time that indicate predicted intervals for which the resource usage meets the migration criteria.

13. The apparatus of claim 12 , wherein the program instructions further direct the processing system to:

for at least the first application, convert a first resource configuration associated with the first plurality of physical nodes to a second resource configuration associated with the second plurality of physical nodes, wherein the first resource configuration and the second resource configuration each comprise protocol configurations.

14. The apparatus of claim 10 , wherein the program instructions further direct the processing system to:

transition at least the first application to the second plurality of physical nodes by at least generating a software image configuration compatible with the second plurality of physical nodes, wherein the software image configuration is different than used in the first plurality of physical nodes.

15. The apparatus of claim 10 , wherein the program instructions further direct the processing system to:

based at least on the second plurality of physical nodes determined to be unable to accommodate the sensor requirements, determine at least a second application of the plurality of applications for transition to the second plurality of physical nodes.

16. The apparatus of claim 10 , wherein the program instructions further direct the processing system to:

based at least on the second plurality of physical nodes determined to be able to accommodate the sensor requirements, transition the data processing portion and the sensor portion of the first application to the second plurality of physical nodes.

17. The apparatus of claim 10 , wherein the program instructions further direct the processing system to:

identify at least the first application to be offloaded to the second plurality of physical nodes based on a quality of service associated with at least the first application.

18. The apparatus of claim 10 , wherein identifying at least the first application to be offloaded to the second plurality of physical nodes comprises:

(a) identifying the first application to be offloaded based on a quality of service associated with the first application;

(b) in response to deployment of the first application, determining whether the deployment of the first application satisfies migration criteria;

(c) when the deployment of the first application fails to satisfy the migration criteria, repeating steps (a) and (b) to identify another application to be offloaded.

19. A system comprising:

a first provisioning layer formed across a plurality of first physical nodes comprising airborne nodes or spaceborne nodes;

a management service computing system configured to:

monitor resource usage for a plurality of applications executing in the first provisioning layer, wherein a first application of the plurality of applications is configured to monitor an object of interest using one or more sensors of the first physical nodes;

determine when the resource usage by the plurality of applications satisfies migration criteria;

based on the resource usage by the plurality of applications satisfying the migration criteria, identify at least processing portions of at least the first application to be offloaded to a second provisioning layer while maintaining sensing portions of at least the first application in the first provisioning layer; and

initiate deployment of at least the processing portions of the one or more applications in the second provisioning layer.

20. The system of claim 19 , wherein the management service computing system is configured to identify at least the first application to be offloaded to the second provisioning layer based on a quality of service associated with at least the first application.

21. A method comprising:

monitoring resource usage for a plurality of applications executing across a first plurality of physical nodes comprising airborne nodes or spaceborne nodes, wherein a first application of the plurality of applications is configured to monitor an object of interest using one or more sensors of the first plurality of physical nodes;

identifying an anticipated time that the resource usage will meet migration criteria based at least on monitored trends in the resource usage that indicate predicted intervals for which the resource usage meets the migration criteria;

identifying at least the first application to be offloaded to a second plurality of physical nodes; and

initiating deployment of at least the first application in the second plurality of physical nodes in accordance with the anticipated time by at least transitioning a processing portion of the first application to the second plurality of physical nodes and maintaining a sensor portion of the first application on the first plurality of physical nodes.

22. The method of claim 21 , wherein the resource usage comprises at least one among communication usage, processing resource usage, and storage usage.

23. The method of claim 21 further comprising, for the first application, converting a first resource configuration associated with the first plurality of physical nodes to a second resource configuration associated with the second plurality of physical nodes.

24. The method of claim 21 further comprising initiating deployment of at least the first application to the second plurality of physical nodes by at least generating a software image configuration compatible with the second plurality of physical nodes, wherein the software image configuration is different than used in the first plurality of physical nodes.

25. The method of claim 21 , further comprising identifying at least the first application to be offloaded to the second plurality of physical nodes based on a quality of service associated with at least the first application.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2020
From: VECTOR LAUNCH INC,; GARVEY SPACECRAFT CORPORATION
To: LOCKHEED MARTIN CORPORATION
Reel/Frame 052916/0236 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2019
From: CLEAVE, ROBERT RANDALL; METZGER, JOHN EDWARD; COLEMAN, SHAUN B.
To: VECTOR LAUNCH INC.
Reel/Frame 048204/0873 →
Continuity (1)
Related Publication 20200250008A1 · Aug 6, 2020