IP Library Granted Patent US 10,693,973
Granted Patent B2
US 10,693,973 · App. 15/647,250 · Granted Jun 23, 2020

System and method for work distribution in a fog network via code offloading

Inventor: Shunge Li (Duluth, GA)
Assignee: Wistron AiEDGE Corporation
H04L67/148H04L67/10H04L67/12H04W4/70
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,693,973
App. No.
15/647,250
Granted
Jun 23, 2020
Kind
B2
Abstract

A fog network includes a first fog network node configured to execute an application program, and a second fog network node configured to host a container. The first fog network node is configured to determine a need to offload at least a portion of the application program for execution in the second fog network node, access a registry to identify and locate a container image created from executable code of the application program stored in the fog network, and load the identified container image in the second fog network node. The second fog network node is configured to start the container in response to the container image being loaded, execute the executable code of the application program, and return a result from executing the executable code of the application program to the first fog network node.

Claims (38)

1. A method comprising:

determining whether resources are available at a second fog network node for code offloading;

granting a token in response to determining resources are available;

creating a container for the second fog network node in response to grant of an unexpired token;

attaching the unexpired token to the created container;

designating an application program for execution on a first fog network node;

determining a need to offload execution of at least one portion of the application program for execution in the second fog network node;

accessing a registry to identify and locate a container image;

loading the identified container image in the second fog network node;

starting a container hosted by the second fog network node in response to the container image being loaded;

executing a second executable of the application program in the second fog network node; and

returning a result from executing the second executable in the second fog network node to the first fog network node.

2. The method of claim 1 , wherein determining a need to offload execution comprises monitoring operating status of the first fog network node.

3. The method of claim 1 , further comprising creating a bi-directional communication channel between the first and second fog network nodes for exchanging execution control and the result.

4. The method of claim 1 , wherein determining a need to offload execution comprises monitoring operating status of the bi-directional communication channel and resource utilization status of the first fog network node.

5. The method of claim 1 , further comprising using a stub and skeleton configured for creating a bi-directional communication channel between the first and second fog network nodes for exchanging execution control and the result.

6. The method of claim 1 , further comprising creating the container ahead of determining the need for offloading execution of the at least one portion of the application program.

7. The method of claim 1 , further comprising creating a container dynamically in response to determining the need for offloading execution of the at least one portion of the application program.

8. A method comprising:

determining a need to offload execution of at least one portion of an application program for execution in a first fog network node to a second fog network node;

accessing a registry to identify and locate a container image created from an executable code of the at least one portion of the application program;

loading the identified container image in the second fog network node;

starting a container hosted by the second fog network node in response to the container image being loaded;

executing the executable code of the application program in the second fog network node; and

returning a result from executing the executable code in the second fog network node to the first fog network node;

creating a container for the second fog network node in response to grant of an unexpired token; and

attaching the unexpired token to the created container.

9. The method of claim 8 , comprising:

designating the at least one portion of the application program for execution on the first fog network node that is ideal candidate for execution in the second fog network node;

creating a first executable of the application program for execution on the first fog network node and a second executable of the at least one portion of the application program for execution on the second fog network node;

creating the container image from the second executable for an operating system on the second fog network node; and

registering the container image in the registry.

10. The method of claim 9 , further comprising creating a container ahead of determining the need for offloading execution of the at least one portion of the application program.

11. The method of claim 9 , further comprising creating a container dynamically in response to determining the need for offloading execution of the at least one portion of the application program.

12. The method of claim 8 , wherein determining a need to offload execution comprises monitoring resource utilization of the first fog network node.

13. The method of claim 8 , further comprising creating a bi-directional communication channel between the first and second fog network nodes for exchanging execution control and the result.

14. The method of claim 13 , wherein determining a need to offload execution comprises monitoring operating status of the bi-directional communication channel.

15. The method of claim 8 , further comprising using a stub and skeleton configured for creating a bi-directional communication channel between the first and second fog network nodes for exchanging execution control and the result.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2023
From: WISTRON AIEDGE CORPORATION
To: WISTRON CORPORATION
Reel/Frame 063383/0381 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 13, 2020
From: SMARTIPLY, INC.
To: WISTRON AIEDGE CORPORATION
Reel/Frame 052103/0737 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2019
From: LI, SHUNGE
To: SMARTIPLY, INC.
Reel/Frame 050898/0573 →
Continuity (2)
Provisional Application 62363385 · Jul 18, 2016
Related Publication 20180020062A1 · Jan 18, 2018