IP Library › Granted Patent US 11,296,935
Granted Patent B2
US 11,296,935 · App. 16/467,002 · Granted Apr 5, 2022

Service provision to IoT devices

Inventors: Keith Nolan (Mullingar, IE); Mark Kelly (Leixlip, IE); Michael Nolan (Maynooth, IE); Davide Carboni (London, GB); Cliodhna Ni Scanaill (Broadford, IE); Eugene Ryan (Glasnevin, IE); Richard Davies (Dublin, IE); John Brady (Celbridge, IE)
Assignee: INTEL CORPORATION
H04L41/0806G06F16/1824G06F16/1834H04L9/0825H04L9/3239H04L41/12H04L45/20H04L61/1505H04L61/2069H04L67/10H04L67/104H04L67/1046H04L67/1093H04L67/12H04L67/2809H04L69/18H04L69/22H04W4/08H04W4/70H04W12/69H04W84/22H04L2209/38H04L2209/56H04W84/18
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,296,935
App. No.
16/467,002
Filed
Jun 6, 2019
Granted
Apr 5, 2022
Kind
B2
Art Unit
2445
USPC
709/220
Abstract

An Internet of Things (IoT) network includes an orchestrator to issue service management requests, a service coordinator to identify components to participate in the service, and a component to perform a network service element. An IoT network includes an IoT device with service enumerator, contract enumerator, and join contract function. An IoT network apparatus includes permissions guide drafter for discovered peers, and permissions guide action executor. An IoT network apparatus includes floating service permissions guide drafter for discovered hosts, host hardware selector, floating service permissions guide executor, and service wallet value transferor. An IoT network apparatus includes permissions guide drafter for first and second discovered peers, parameter weight calculator, permissions guide term generator, and permissions guide action executor. An IoT network includes an IoT device with resource hardware component identifier, processor to process a received indication of an external module hardware requirement, an external module comparer, and deactivation signal transmitter.

Claims (74)

1. An apparatus for completing service requests, the apparatus comprising:

an orchestrator to issue a service management request to form a service;

a service coordinator including:

a shared virtual repository to store a network service element to be performed, the network service element to execute one or more portions of the service; and

a machine learning engine to select a component to participate in the service; and

a client to, in response to obtaining a network service overlay from the shared virtual repository, execute the network service overlay on the component to execute the network service element for the service.

2. The apparatus of claim 1 , wherein the orchestrator is to manage a plurality of network service overlays to perform tasks, the plurality of the network service overlays including the network service overlay.

3. The apparatus of claim 2 , wherein the shared virtual repository includes the plurality of the network service overlays.

4. The apparatus of claim 1 , wherein the network service overlay includes a code segment to cause the component to perform execute the network service element.

5. The apparatus of claim 1 , wherein the service coordinator includes a database to store at least one of data from the component or metadata from the component.

6. The apparatus of claim 1 , wherein the shared virtual repository is to store an identity of the component assigned to the network service element.

7. The apparatus of claim 1 , wherein the service includes a plurality of network service elements including the network service element, ones of the plurality of network service elements to be completed by the component.

8. The apparatus of claim 1 , wherein the service includes a fog device, the fog device including a plurality of components, the plurality of components including the component.

9. The apparatus of claim 1 , wherein the service coordinator includes a network domain controller.

10. The apparatus of claim 1 , wherein the component is a device including the client, the client to register the device with the service coordinator.

11. The apparatus of claim 10 , wherein the client is to send a message to the service coordinator, the message including peripheral data corresponding to at least one of attached sensors, actuators, or devices.

12. The apparatus of claim 1 , wherein the machine learning engine is to select the component from one or more domains.

13. A method for completing service requests, the method comprising:

in response to receiving an orchestration request to form a service, determining whether the orchestration request is for an existing service;

in response to determining that the orchestration request is for the existing service, sending the orchestration request to a service coordinator;

identifying a network service element to be performed, the network service element to execute one or more portions of the service;

selecting a component with a machine learning engine, the component to participate in the service; and

in response to obtaining a network service overlay from a shared virtual repository, executing the network service overlay on the component to execute the network service element for the service.

14. The method of claim 13 , further including, in response to determining that the orchestration request is a new request:

preparing a service model including the network service element;

preparing the network service element;

identifying the component to perform the network service element; and

dispatching a subscription request to the component to perform an action for the network service element.

15. The method of claim 14 , further including identifying the service coordinator.

16. The method of claim 14 , wherein identifying the component includes accessing data associated with historic performance of a plurality of components, the plurality of components including the component.

17. The method of claim 14 , further including:

validating the subscription request at the component; and

sending a confirmation to the service coordinator in response to validating the subscription request.

18. The method of claim 17 , further including sending a denial to the service coordinator in response to not validating the subscription request.

19. The method of claim 17 , wherein validating the subscription request includes determining whether the subscription request is supported by the component.

20. The method of claim 14 , wherein the component downloads the network service overlay from a shared repository in a cloud.

21. The method of claim 13 , further including:

performing the network service element in the component; and

returning data from the component to the service coordinator.

22. The method of claim 13 , wherein the component downloads the network service overlay from a virtual shared repository.

23. The method of claim 13 , further including sending a message to the service coordinator to register the component, the message including capabilities of the component.

24. A non-transitory machine readable medium comprising instructions that, when executed, direct one or more processors to:

issue a service management request to a service coordinator to form a service;

identify one or more network service elements to be performed, the one or more network service elements to execute one or more portions of the service;

identify one or more service components with a machine learning engine, the one or more service components to participate in the service;

send one or more subscription requests to the one or more service components;

in response to the one or more subscription service requests, obtain a network service overlay from a shared virtual repository; and

execute the network service overlay on a first one of the one or more service components to execute the network service element for the service.

25. The non-transitory machine readable medium of claim 24 , wherein the instructions, when executed, direct the one or more processors to:

validate the one or more subscription requests;

cause the one or more service components to perform the one or more network service elements for the service; and

send data to the service coordinator.

26. The non-transitory machine readable medium of claim 24 , wherein the instructions, when executed, direct the one or more processors to:

send a connection request to the service coordinator; and

send device peripheral data to the service coordinator.

27. An apparatus for completing service requests, the apparatus comprising:

at least one memory;

instructions in the apparatus; and

at least one processor to execute the instructions to:

store a network service element to be performed for a service and a network service overlay to execute the network service element;

select a component with a machine learning model to participate in the service; and

provide the network service overlay to the component to cause the component to execute the network service overlay to perform a portion of the service.

28. The apparatus of claim 27 , wherein the network service element is a first network service element, the component is a first component, and the at least one processor is to:

generate a service model based on a service management request to form the service, the service model including at least one of (i) one or more second network service elements or (ii) one or more second components, the one or more second network service elements including the first network service element, the one or more second components including the first component; and

transmit a subscription request to a client on the component in response to an identification of the component, the subscription request to request the client to execute the first network service element.

29. The apparatus of claim 28 , wherein the at least one processor is to:

receive a confirmation message from the client in response to a first determination that the network service overlay is not stored in the component and a second determination that the component is capable of executing the network service overlay; and

assign the first network service element to the component based on the confirmation message, the providing of the network service overlay to the component in response to the assignment of the first network service element to the component.

30. The apparatus of claim 27 , wherein the network service element is a first network service element, the component is a first component, and the at least one processor is to:

determine that a second component failed to execute a second network service element; and

assign the first network service element to the first component based on a determination that the second component failed to execute the second network service element.

31. The apparatus of claim 27 , wherein the at least one processor is to provide a client to the component, the client to:

determine whether a performance threshold associated with an execution of the network service element is satisfied in response to the execution of the network service overlay by the component with a first configuration of the component; and

in response to a determination that the performance threshold is not satisfied, modify the first configuration to a second configuration of the component, the performance threshold to be satisfied in response to the execution of the network service overlay by the component with the second configuration, the component to execute the network service overlay with the second configuration.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2020
From: NOLAN, KEITH; KELLY, MARK; NOLAN, MICHAEL; CARBONI, DAVIDE; NI SCANAILL, CLIODHNA; RYAN, EUGENE; BRADY, JOHN
To: INTEL CORPORATION
Reel/Frame 053515/0174 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2020
From: DAVIES, RICHARD
To: INTEL CORPORATION
Reel/Frame 053515/0087 →
Continuity (2)
Provisional Application 62441070 · Dec 30, 2016
Related Publication 20190349254A1 · Nov 14, 2019
Cited By (2)
US 12,218,795 US 12,720,289