IP Library Granted Patent US 10,616,751
Granted Patent B1
US 10,616,751 · App. 15/898,443 · Granted Apr 7, 2020

Ad-hoc mobile computing

Inventors: Kelly G. Kanellakis (Toronto, CA); Said Tabet (Sherborn, MA); Dragan Savic (Brookline, MA); Adrian Michaud (Carlisle, MA)
Assignee: EMC IP Holding Company LLC
H04W8/005H04W4/02H04W84/18H04W4/40
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,616,751
App. No.
15/898,443
Granted
Apr 7, 2020
Kind
B1
Abstract

Systems and methods are provided for generating and managing ad-hoc mobile computing networks. For example, a method includes discovering, by a first mobile compute node, an existence of a second mobile compute node within a geographic location monitored by the first mobile compute node, and exchanging data between the first and second mobile compute nodes to negotiate conditions for forming a cluster of a mobile ad-hoc network. The conditions include, for example, a target purpose for forming the cluster, criteria for compute node membership within the cluster, and designation of one of the first and second mobile compute nodes as a master compute node for the cluster. The cluster including the first and second mobile compute nodes is then formed based on the negotiated conditions.

Claims (55)

1. A method, comprising:

exchanging data between first and second mobile compute nodes to negotiate conditions for forming a local cluster of a mobile ad-hoc network, wherein the conditions comprise (i) a target purpose for forming the local cluster, wherein the target purpose comprises executing a workload, (ii) criteria for compute node membership within the local cluster, and (iii) designation of one of the first and second mobile compute nodes as a master compute node for the local cluster;

forming the local cluster comprising the first and second mobile compute nodes based on the negotiated conditions, wherein the first mobile compute node is designated as the master compute node, wherein the local cluster is associated with a plurality of zones, wherein each zone comprises an area that is defined at least in part by a spatial proximity to the master compute node, the plurality of zones comprising at least a first zone in which the master compute node and at least a subset of compute nodes comprising at least one of the second mobile compute node and one or more additional compute nodes, which are located within the first zone of the local cluster, are configured to form a computing cluster in which computing resources of member compute nodes within the computing cluster are shared and aggregated to form a distributed computing platform that is configured to execute the workload; and

controlling, by the master compute node, membership of the computing cluster by one of (i) dynamically adding a new member compute node to the computing cluster and (ii) dynamically removing an existing member compute node from the computing cluster.

2. The method of claim 1 , wherein exchanging data comprises exchanging data regarding data security conditions and computing capabilities of the first and second mobile compute nodes.

3. The method of claim 1 , wherein the target purpose further comprises providing network connectivity of the local cluster to an information network, and wherein the method further comprises:

establishing a cluster link between the master compute node and a wireless base station to wirelessly connect the local cluster to the information network;

establishing a local link between the master compute node and a non-master compute node within the local cluster; and

providing the non-master compute node network connectivity to the information network through the local link with the master compute node and the cluster link between the master compute node and the wireless base station.

4. The method of claim 3 , further comprising:

establishing a second cluster link between the master compute node of the local cluster and a second master compute node of a second local cluster within the mobile ad-hoc network; and

providing the second master compute node network connectivity to the information network through the second cluster link to the master compute node of the local cluster and the cluster link between the master compute node and the wireless base station.

5. The method of claim 3 , further comprising:

the master compute node compressing data received from the non-master compute node over the local link; and

the master compute node transmitting the compressed data on the cluster link to the wireless base station.

6. The method of claim 1 , wherein:

the plurality of zones associated with the local cluster further comprises a second zone and a third zone;

the second zone comprises a cluster connectivity zone in which the master compute node controls network connectivity between the master compute node and a given compute node within the second zone to enable at least one of (i) network connectivity of the given compute node to an information network through the master compute node and (ii) network connectivity of the given compute node to other compute nodes of the local cluster;

the third zone comprises a discovery and monitoring zone in which the master compute node (i) determines an existence of a candidate compute node requesting membership in the local cluster and (ii) commences negotiation with the candidate compute node to determine whether to accept or deny membership of the candidate compute node in the local cluster;

the first zone subsumes functions of the second zone and the third zone; and

the second zone subsumes functions of the third zone.

7. The method of claim 6 , further comprising:

determining, by the master compute node, an estimated amount of time that the candidate mobile compute node may be located within at least one of the first zone and the second zone of the local cluster; and

denying, by the master compute node, membership of the candidate compute node in the local cluster in response to the master compute node determining that the estimated amount of time that the candidate mobile compute node may be located within at least one of the first zone and the second zone is insufficient to assist in effectuation of the target purpose.

8. The method of claim 1 , further comprising terminating the local cluster upon an occurrence of a predefined event as negotiated by the first and second mobile compute nodes.

9. The method of claim 8 , wherein the predefined event comprises at least one of (i) the master compute node leaving the local cluster, (ii) a completion of the target purpose for forming the local cluster, and (iii) the local cluster being merged into a second local cluster.

10. The method of claim 1 , wherein the first and second mobile compute nodes comprise motor vehicles.

11. The method of claim 10 , wherein the first and second mobile compute nodes are configured to communicate using light-modulated signals that are emitted and received from head lights and tail lights of the motor vehicles.

12. The method of claim 1 , wherein controlling, by the master compute node, membership of the computing cluster by one of (i) dynamically adding a new member compute node to the computing cluster and (ii) dynamically removing an existing member compute node from the computing cluster comprises:

determining, by the master compute node, an estimated amount of time that a given mobile compute node may be located within the first zone; and

adding the given mobile compute node as a member of the computing cluster in response to determining that the estimated amount of time is sufficient to aggregate and utilize the computing resources of the given mobile compute node as part of the distributed computing platform for executing the workload.

13. An article of manufacture comprising a non-transitory processor-readable storage medium having stored program code of one or more software programs, wherein the program code is executable by one or more processors to implement method steps comprising:

exchanging data between first and second mobile compute nodes to negotiate conditions for forming a local cluster of a mobile ad-hoc network, wherein the conditions comprise (i) a target purpose for forming the local cluster, wherein the target purpose comprises executing a workload, (ii) criteria for compute node membership within the local cluster, and (iii) designation of one of the first and second mobile compute nodes as a master compute node for the local cluster;

forming the local cluster comprising the first and second mobile compute nodes based on the negotiated conditions, wherein the first mobile compute node is designated as the master compute node, wherein the local cluster is associated with a plurality of zones, wherein each zone comprises an area that is defined at least in part by a spatial proximity to the master compute node, the plurality of zones comprising at least a first zone in which the master compute node and at least a subset of compute nodes comprising at least one of the second mobile compute node and one or more additional compute nodes, which are located within the first zone of the local cluster, are configured to form a computing cluster in which computing resources of member compute nodes within the computing cluster are shared and aggregated to form a distributed computing platform that is configured to execute the workload; and

controlling, by the master compute node, membership of the computing cluster by one of (i) dynamically adding a new member compute node to the computing cluster and (ii) dynamically removing an existing member compute node from the computing cluster.

14. The article of manufacture of claim 13 , wherein exchanging data comprises exchanging data regarding data security conditions and computing capabilities of the first and second mobile compute nodes.

15. The article of manufacture of claim 13 , wherein the target purpose further comprises providing network connectivity of the local cluster to an information network, and wherein the method further comprises:

establishing a cluster link between the master compute node and a wireless base station to wirelessly connect the local cluster to the information network;

establishing a local link between the master compute node and a non-master compute node within the local cluster; and

providing the non-master compute node network connectivity to the information network through the local link with the master compute node and the cluster link between the master compute node and the wireless base station.

16. The article of manufacture of claim 15 , further comprising:

establishing a second cluster link between the master compute node of the local cluster and a second master compute node of a second local cluster within the mobile ad-hoc network; and

providing the second master compute node network connectivity to the information network through the second cluster link to the master compute node of the local cluster and the cluster link between the master compute node and the wireless base station.

17. The article of manufacture of claim 13 , further comprising terminating the local cluster upon an occurrence of a predefined event as negotiated by the first and second mobile compute nodes, wherein the predefined event comprises at least one of (i) the master compute node leaving the local cluster, (ii) a completion of the target purpose for forming the local cluster, and (iii) the local cluster being merged into a second local cluster.

18. A mobile compute node, comprising:

system memory configured to store program code; and

at least one processor configured to execute the stored program code to instantiate an ad-hoc system management module which executes on the mobile compute node and is configured to perform a process comprising:

exchanging data with a second mobile compute node to negotiate conditions for forming a local cluster of a mobile ad-hoc network, wherein the conditions comprise (i) a target purpose for forming the local cluster, wherein the target purpose comprises executing a workload, (ii) criteria for compute node membership within the local cluster, and (iii) designation of one of the mobile compute node and the second mobile compute node as a master compute node for the local cluster;

forming the local cluster comprising the mobile compute node and the second mobile compute node based on the negotiated conditions, wherein the mobile compute node is designated as the master compute node, wherein the local cluster is associated with a plurality of zones, wherein each zone comprises an area that is defined at least in part by a spatial proximity to the master compute node, the plurality of zones comprising at least a first zone in which the master compute node and at least a subset of compute nodes comprising at least one of the second mobile compute node and one or more additional compute nodes, which are located within the first zone of the local cluster, are configured to form a computing cluster in which computing resources of member compute nodes within the computing cluster are shared and aggregated to form a distributed computing platform that is configured to execute the workload; and

controlling, by the master compute node, membership of the computing cluster by one of (i) dynamically adding a new member compute node to the computing cluster and (ii) dynamically removing an existing member compute node from the computing cluster.

19. The mobile compute node of claim 18 , wherein exchanging data comprises exchanging data regarding data security conditions and computing capabilities of the mobile compute node and the second mobile compute node.

20. The mobile compute node of claim 18 , wherein the target purpose further comprises providing network connectivity of the local cluster to an information network, and wherein the method further comprises:

establishing a cluster link between the master compute node and a wireless base station to wirelessly connect the local cluster to the information network;

establishing a local link between the master compute node and a non-master compute node within the local cluster; and

providing the non-master compute node network connectivity to the information network through the local link with the master compute node and the cluster link between the master compute node and the wireless base station.

Assignments (7)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (046366/0014) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060450/0306 →
RELEASE OF SECURITY INTEREST AT REEL 046286 FRAME 0653 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058298/0093 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Jun 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046286/0653 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jun 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 046366/0014 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2018
From: KANELLAKIS, KELLY G.; TABET, SAID; SAVIC, DRAGAN; MICHAUD, ADRIAN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 045291/0905 →