IP Library Granted Patent US 11,888,716
Granted Patent B1
US 11,888,716 · App. 17/448,338 · Granted Jan 30, 2024

Dynamic scheduling of data transmission from internet of things (IoT) devices based on density of IoT devices

Inventor: Kevin Russell Coates Lloyd (San Carlos, CA)
Assignee: Samsara Inc.
H04L43/0811G16Y10/75G16Y40/10H04L43/16
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,888,716
App. No.
17/448,338
Granted
Jan 30, 2024
Kind
B1
Abstract

Methods, systems, and apparatuses include evaluating a possibility of having more than a threshold number of connections with an access point of a network at a same time by multiple IoT devices that access the server through the network. In response to the evaluation, a determination of schedules for IoT devices is performed such that when the IoT devices operate according to the schedules the connections with the access point by the IoT devices that occur at the same time do not exceed the threshold number of connections. Configuration parameters are transmitted to the IoT devices causing the IoT devices to operate according to the schedules.

Claims (44)

1. A method in a server located in a cloud, the method comprising:

evaluating whether there is a possibility of having more than a threshold number of connections with an access point of a network at a same time by a plurality of Internet of Things (IoT) devices that access the server through the network wherein the server is separate from the access point; and

in response to evaluating that there is a possibility of having more than the threshold number of connections with the access point of the network at the same time by the plurality of IoT devices that access the server, performing the following:

determining one or more schedules for one or more IoT devices from the plurality of IoT devices such that when the one or more IoT devices operate according to the one or more schedules the connections with the access point by the plurality of IoT devices that occur at the same time do not exceed the threshold number of connections, wherein a schedule of the one or more schedules defines a timing of an IoT device from the plurality of IoT devices accessing the server through a connection with the access point, and

transmitting one or more configuration parameters to the one or more IoT devices from the plurality of IoT devices that cause the one or more IoT devices to operate according to the one or more schedules.

2. The method of claim 1 , wherein the evaluating whether there is a possibility of having more than the threshold number of connections with the access point of the network at the same time by the plurality of IoT devices that access the server includes:

estimating, based on geographic locations of the plurality of IoT devices, a number of IoT devices that will connect to the access point at the same time.

3. The method of claim 1 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server includes:

estimating, based at least in part on an identifier of the access point, a number of IoT devices that will connect to the access point at the same time.

4. The method of claim 1 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server is performed in response to an indication that an additional IoT device is going to connect to the access point of the network.

5. The method of claim 1 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server is performed in response to an indication that an IoT device is no longer going to connect to the access point of the network.

6. The method of claim 1 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server is performed according to a predetermined timing.

7. The method of claim 1 , wherein the determining one or more schedules for one or more IoT devices from the plurality of IoT devices is performed according to a number of the plurality of IoT devices, an amount of time needed for communication between the plurality of IoT devices and the server, requirements of an administrator of the plurality of IoT devices, or any combination thereof.

8. The method of claim 1 , wherein the one or more configuration parameters indicate a target period with which an IoT device is to check in with the server by accessing the access point and a random variance to apply to the target period.

9. A non-transitory machine-readable storage medium that provides instructions that, if executed by a processor of a server located in a cloud will cause said processor to perform operations comprising:

evaluating whether there is a possibility of having more than a threshold number of connections with an access point of a network at a same time by a plurality of Internet of Things (IoT) devices that access the server through the network wherein the server is separate from the access point; and

in response to evaluating that there is a possibility of having more than the threshold number of connections with the access point of the network at the same time by the plurality of IoT devices that access the server, performing the following:

determining one or more schedules for one or more IoT devices from the plurality of IoT devices such that when the one or more IoT devices operate according to the one or more schedules the connections with the access point by the plurality of IoT devices that occur at the same time do not exceed the threshold number of connections, wherein a schedule of the one or more schedules defines a timing of an IoT device from the plurality of IoT devices accessing the server through a connection with the access point, and

transmitting a configuration parameter to the one or more IoT devices from the plurality of IoT devices that cause the one or more IoT devices to operate according to the one or more schedules.

10. The non-transitory machine-readable storage medium of claim 9 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server includes:

estimating, based on geographic locations of the plurality of IoT devices, a number of IoT devices that will connect to the access point at the same time.

11. The non-transitory machine-readable storage medium of claim 9 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server includes:

estimating, based at least in part on an identifier of the access point, a number of IoT devices that will connect to the access point at the same time.

12. The non-transitory machine-readable storage medium of claim 9 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server is performed in response to an indication that an additional IoT device is going to connect to the access point of the network.

13. The non-transitory machine-readable storage medium of claim 9 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server is performed in response to an indication that an IoT device is no longer going to connect to the access point of the network.

14. The non-transitory machine-readable storage medium of claim 9 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server is performed according to a predetermined timing.

15. The non-transitory machine-readable storage medium of claim 9 , wherein the determining one or more schedules for one or more IoT devices from the plurality of IoT devices is performed according to a number of the plurality of IoT devices, an amount of time needed for communication between the plurality of IoT devices and the server, requirements of an administrator of the plurality of IoT devices, or any combination thereof.

16. The non-transitory machine-readable storage medium of claim 9 , wherein the one or more configuration parameters indicate a target period with which an IoT device is to check in with the server by accessing the access point and a random variance to apply to the target period.

17. A system comprising:

one or more processors; and

a non-transitory machine-readable storage medium that stores instructions, which when executed by the one or more processors cause the system to perform operations including:

evaluating whether there is a possibility of having more than a threshold number of connections with an access point of a network at a same time by a plurality of Internet of Things (IoT) devices that access a server through the network, wherein the server is separate from the access point, and

in response to evaluating that there is a possibility of having more than the threshold number of connections with the access point of the network at the same time by the plurality of IoT devices that access the server, performing the following:

determining one or more schedules for one or more IoT devices from the plurality of IoT devices such that when the one or more IoT devices operate according to the one or more schedules the connections with the access point by the plurality of IoT devices that occur at the same time do not exceed the threshold number of connections, wherein a schedule of the one or more schedules defines a timing of an IoT device from the plurality of IoT devices accessing the server through a connection with the access point, and

transmitting a configuration parameter to the one or more IoT devices from the plurality of IoT devices that cause the one or more IoT devices to operate according to the one or more schedules.

18. The system of claim 17 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server includes:

estimating, based on geographic locations of the plurality of IoT devices, a number of IoT devices that will connect to the access point at the same time.

19. The system of claim 17 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server includes:

estimating, based at least in part on an identifier of the access point, a number of IoT devices that will connect to the access point at the same time.

20. The system of claim 17 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server is performed in response to an indication that an additional IoT device is going to connect to the access point of the network.

21. The system of claim 17 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server is performed in response to an indication that an IoT device is no longer going to connect to the access point of the network.

22. The system of claim 17 , wherein the evaluating whether there is a possibility of having more than a threshold number of connections with an access point of the network at a same time by the plurality of IoT devices that access the server is performed according to a predetermined timing.

23. The system of claim 17 , wherein the determining one or more schedules for one or more IoT devices from the plurality of IoT devices is performed according to a number of the plurality of IoT devices, an amount of time needed for communication between the plurality of IoT devices and the server, requirements of an administrator of the plurality of IoT devices, or any combination thereof.

24. The system of claim 17 , wherein the one or more configuration parameters indicate a target period with which an IoT device is to check in with the server by accessing the access point and a random variance to apply to the target period.

Assignments (3)
UPDATED ADDRESS OF ASSIGNEE Recorded Dec 18, 2023
From: SAMSARA INC.
To: SAMSARA INC.
Reel/Frame 066059/0766 →
CHANGE OF NAME Recorded Jul 15, 2022
From: SAMSARA NETWORKS INC.
To: SAMSARA INC.
Reel/Frame 060679/0009 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2021
From: LLOYD, KEVIN RUSSELL COATES
To: SAMSARA NETWORKS INC.
Reel/Frame 057551/0947 →
Continuity (1)
Provisional Application 63140737 · Jan 22, 2021