IP Library › Granted Patent US 11,792,113
Granted Patent B2
US 11,792,113 · App. 17/598,115 · Granted Oct 17, 2023

Information centric network dynamic compute orchestration

Inventors: Nageen Himayat (Fremont, CA); Srikathyayani Srikanteswara (Portland, OR); Krishna Bhuyan (Sammamish, WA); Daojing Guo (Santa Clara, CA); Rustam Pirmagomedov (Oulu, FI); Gabriel Arrobo Vidal (Hillsboro, OR); Yi Zhang (Portland, OR); Dmitri Moltchanov (Tampere, FI)
Assignee: Intel Corporation
H04L45/26H04L45/745H04L47/28H04L47/31
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 11,792,113
App. No.
17/598,115
Granted
Oct 17, 2023
Kind
B2
Abstract

Systems and methods for dynamic compute orchestration include receiving, at a network node of an information centric network, a first interest packet comprising a name field indicating a named function and one or more constraints specifying compute requirements for a computing node to execute the named function, the first interest packet received from a client node. A plurality of computing nodes are identified that satisfy the compute requirements for executing the named function. The first interest packet is forwarded to at least some of the plurality of computing nodes. Data packets are received from at least some of the plurality of computing nodes in response to the first interest packet. One of the plurality of computing nodes is selected based on the received data packets, and a second interest packet is sent to the selected one of the plurality of computing nodes instructing the selected one of the plurality of compute nodes to execute the named function.

Claims (64)

1. A system for enabling dynamic compute in information centric networking (ICN), the system comprising:

a client node configured to generate a first interest packet to request execution of a named function, the first interest packet comprising a name field indicating the named function and one or more constraints specifying compute requirements for a computing node to execute the named function;

a network node configured to:

receive the first interest packet;

identify a plurality of computing nodes that satisfy the compute requirements for executing the named function;

forward the first interest packet to at least some of the plurality of computing nodes;

receive data packets from at least some of the plurality of computing nodes in response to the first interest packet;

forwarding each of the received data packets to the client node; and

receiving, from the client node, a second interest packet specifying a selected one of the plurality of computing nodes for execution of the named function.

2. The system of claim 1 , wherein the network node is configured to forward the first interest packet to each of the plurality of computing nodes by:

storing an entry for the first interest packet in a discovery prefixes table of the network node, the entry including a count of responses and a timeout period specified by the first interest packet; and

decrementing the count of responses in the discovery prefixes table of the network node upon receipt of a data packet in response to the first interest packet.

3. The system of claim 2 , wherein the network node is further configured to delete the entry in the discovery prefixes table if the count reaches zero or the timeout period has elapsed.

4. The system of any of claim 1 , wherein the network node is configured to receive the first interest packet by:

checking at least one field of the first interest packet to determine whether the interest packet is a discovery interest packet; and

identifying the interest packet as a discovery interest packet based on a value of at least one field, wherein identification of the interest packet as a discovery interest packet enables the network node to receive and forward the data packets in response to the first interest packet.

5. The system of claim 4 , wherein the at least one field is the name field, and wherein the value is a predefined keyword within the name field.

6. The system of claim 4 , wherein the at least one field is a discovery packet field comprising a single bit, and wherein identifying the first interest packet as a discovery interest packet comprises identifying the first interest packet as a discovery interest packet if the single bit indicates that the first interest packet is a discovery packet.

7. The system of any of claim 1 , wherein the network node is further configured to receive, in response to the second interest packet, a result data packet specifying a name for retrieving results of the executed named function and forward the result data packet to the client node.

8. At least one non-transitory machine readable medium including instructions that, when executed by processing circuitry, cause the processing circuitry to perform operations comprising:

receiving, at a network node of an information centric network (ICN) network, a first interest packet comprising a name field indicating a named function and one or more constraints specifying compute requirements for a computing node to execute the named function, the first interest packet received from a client node;

identifying a plurality of computing nodes that satisfy the compute requirements for executing the named function;

forwarding the first interest packet to at least some of the plurality of computing nodes;

receiving data packets from at least some of the plurality of computing nodes in response to the first interest packet;

selecting one of the plurality of computing nodes based on the received data packets; and

sending a second interest packet to the selected one of the plurality of computing nodes instructing the selected one of the plurality of compute nodes to execute the named function.

9. The at least one non-transitory machine readable medium of claim 8 , wherein selecting the one of the plurality of computing nodes that satisfy the compute requirements comprises:

forwarding each of the received data packets to the client node; and

receiving, from the client node, the second interest packet specifying the selected one of the plurality of computing nodes.

10. The at least one non-transitory machine readable medium of claim 8 , wherein selecting the one of the plurality of computing nodes further comprises:

selecting, by the network node, the one of the plurality of computing nodes based on the received data packets and a stored policy of the network node.

11. The at least one non-transitory machine readable medium of any of claim 8 , wherein forwarding the first interest packet to each of the plurality of computing nodes comprises:

storing an entry for the first interest packet in a discovery prefixes table of the network node, the entry including a count of responses and a timeout period specified by the first interest packet; and

decrementing the count of responses in the discovery prefixes table of the network node upon receipt of a data packet in response to the first interest packet.

12. The at least one non-transitory machine readable medium of claim 11 , wherein the operations comprise:

deleting the entry in the discovery prefixes table if the count reaches zero or the timeout period has elapsed.

13. The at least one non-transitory machine readable medium of any of claim 8 , wherein receiving the first interest packet comprises:

checking at least one field of the first interest packet to determine whether the interest packet is a discovery interest packet; and

identifying the interest packet as a discovery interest packet based on a value of at least one field, wherein identification of the interest packet as a discovery interest packet enables the network node to receive and forward the data packets in response to the first interest packet.

14. The at least one non-transitory machine readable medium of claim 13 , wherein the at least one field is the name field, and wherein the value is a predefined keyword within the name field.

15. The at least one non-transitory machine readable medium of claim 13 , wherein the at least one field is a discovery packet field comprising a single bit, and wherein identifying the first interest packet as a discovery interest packet comprises identifying the first interest packet as a discovery interest packet if the single bit indicates that the first interest packet is a discovery packet.

16. A method for enabling dynamic compute in information centric networking (ICN), the method comprising:

receiving, at a network node of an ICN network, a first interest packet comprising a name field indicating a named function and one or more constraints specifying compute requirements for a computing node to execute the named function, the first interest packet received from a client node;

identifying a plurality of computing nodes that satisfy the compute requirements for executing the named function;

forwarding the first interest packet to at least some of the plurality of computing nodes;

receiving data packets from at least some of the plurality of computing nodes in response to the first interest packet;

selecting one of the plurality of computing nodes based on the received data packets; and

sending a second interest packet to the selected one of the plurality of computing nodes instructing the selected one of the plurality of compute nodes to execute the named function.

17. The method of claim 16 , wherein selecting the one of the plurality of computing nodes that satisfy the compute requirements comprises:

forwarding each of the received data packets to the client node; and

receiving, from the client node, the second interest packet specifying the selected one of the plurality of computing nodes.

18. The method of claim 16 , wherein selecting the one of the plurality of computing nodes further comprises:

selecting, by the network node, the one of the plurality of computing nodes based on the received data packets and a stored policy of the network node.

19. The method of any of claim 16 , wherein forwarding the first interest packet to each of the plurality of computing nodes comprises:

storing an entry for the first interest packet in a discovery prefixes table of the network node, the entry including a count of responses and a timeout period specified by the first interest packet; and

decrementing the count of responses in the discovery prefixes table of the network node upon receipt of a data packet in response to the first interest packet.

20. The method of claim 19 , further comprising:

deleting the entry in the discovery prefixes table if the count reaches zero or the timeout period has elapsed.

21. The method of any of claim 16 , wherein receiving the first interest packet comprises:

checking at least one field of the first interest packet to determine whether the interest packet is a discovery interest packet; and

identifying the interest packet as a discovery interest packet based on a value of at least one field, wherein identification of the interest packet as a discovery interest packet enables the network node to receive and forward the data packets in response to the first interest packet.

22. The method of claim 20 , wherein the at least one field is the name field, and wherein the value is a predefined keyword within the name field.

23. The method of claim 20 , wherein the at least one field is a discovery packet field comprising a single bit, and wherein identifying the first interest packet as a discovery interest packet comprises identifying the first interest packet as a discovery interest packet if the single bit indicates that the first interest packet is a discovery packet.

24. The method of any of claim 16 , further comprising receiving, in response to the second interest packet, a result data packet specifying a name for retrieving results of the executed named function.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2023
From: HIMAYAT, NAGEEN; SRIKANTESWARA, SRIKATHYAYANI; BHUYAN, KRISHNA; GUO, DAOJING; PIRMAGOMEDOV, RUSTAM; ARROBO VIDAL, GABRIEL; ZHANG, YI; MOLTCHANOV, DMITRI
To: INTEL CORPORATION
Reel/Frame 064022/0028 →
Continuity (3)
Provisional Application 63046952 · Jul 1, 2020
Provisional Application 62870971 · Jul 5, 2019
Related Publication 20220158934A1 · May 19, 2022
Cited By (1)
US 12,381,814