IP Library Granted Patent US 11,888,929
Granted Patent B1
US 11,888,929 · App. 18/055,652 · Granted Jan 30, 2024

Load balancing device connections

Inventor: Nathan Wilfert (Wellesley, MA)
Assignee: SimpliSafe, Inc.
H04L67/1014H04L67/1012H04L67/14
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,929
App. No.
18/055,652
Granted
Jan 30, 2024
Kind
B1
Abstract

A computing device including a memory and a processor is provided. The processor is configured to receive, from a device configured to communicate data generated by at least one sensor disposed in a location being monitored, a request to establish a bi-directional connection between the device and a computing environment; identify a structure of data storing a uniform resource locator (URL) and a set of identifiers, the set of identifiers being representative of a group of connections with the computing environment; and respond, to the device, with a response specifying the URL, thereby enabling the device to establish the bi-directional connection.

Claims (51)

1. A method comprising:

transmitting, by a device, a request to assign the device to a group of connections to a first server of a computing environment comprising the first server, the device being configured to communicate data generated by at least one sensor disposed in a location being monitored;

receiving, by the device, a uniform resource locator (URL) representative of the group of connections to which the device is assigned;

transmitting, by the device, the URL to the first server to initiate establishment of a first bi-directional connection between the device and the first server;

establishing the first bi-directional connection between the device and the first server;

generating, by the device, an ingress message including the data generated by the at least one sensor;

transmitting, by the device, the ingress message to the first server via the first bi-directional connection;

evaluating one or more rules to determine satisfaction of one or more performance priorities:

adding, in response to at least one rule of the one or more rules indicating that the computing environment does not meet at least one performance priority of the one or more performance priorities, a second server to the computing environment;

moving, in response to at least one rule of the one or more rules indicating that the computing environment does not meet performance priorities, the group of connections from the first server to the second server, thereby establishing a second bi-directional connection between the device and the second server;

receiving, by the device, an egress message from the second server via the second bi-directional connection; and

parsing, by the device, the egress message.

2. The method of claim 1 , wherein:

establishing the first bi-directional connection between the device and the first server comprises establishing a TCP socket.

3. The method of claim 1 , wherein:

transmitting, by the device, the request to assign comprises transmitting the request from one or more of a camera or another computing device within the location.

4. A system configured to communicate data generated by at least one sensor disposed in a location being monitored, the system comprising:

at least one memory;

at least one network interface; and

at least one processor coupled with the at least one memory and the at least one network interface and configured to:

transmit, via the at least one network interface, a request to assign a device to a group of connections with a first server within a computing environment,

receive, via the at least one network interface, a uniform resource locator (URL) representative of the group of connections to which the device is assigned,

transmit, via the at least one network interface, the URL to the first server to initiate establishment of a first bi-directional connection between the device and the first server,

establish the first bi-directional connection with the first server,

generate an ingress message including data generated by the at least one sensor,

transmit the ingress message to the first server via the first bi-directional connection,

evaluate one or more rules to determine satisfaction of one or more performance priorities,

add, in response to at least one rule of the one or more rules indicating that the computing environment does not meet at least one performance priority of the one or more performance priorities, a second server to the computing environment,

move, in response to at least one rule of the one or more rules indicating that the computing environment does not meet performance priorities, the group of connections from the first server to the second server, thereby establishing a second bi-directional connection with the second server within the computing environment,

receive an egress message from the second server within the computing environment via the second bi-directional connection, and

parse the egress message.

5. The system of claim 4 , wherein:

the first bi-directional connection comprises a TCP socket.

6. The system of claim 4 , wherein:

the device comprises one or more of a camera or another computing device within the location.

7. One or more non-transitory computer readable storage media storing sequences of instructions executable by one or more processors to communicate data generated by at least one sensor disposed in a location being monitored, the sequences of instructions comprising instructions to:

transmit, via a network interface, a request to assign a device to a group of connections with a first server within a computing environment;

receive, via the network interface, a uniform resource locator (URL) representative of the group of connections to which the device is assigned;

transmit, via the network interface, the URL to the first server to initiate establishment of a first bi-directional connection between the device and the first server;

establish the first bi-directional connection with the first server;

generate an ingress message including data generated by the at least one sensor;

transmit the ingress message to the first server via the first bi-directional connection;

evaluate one or more rules to determine satisfaction of one or more performance priorities;

add, in response to at least one rule of the one or more rules indicating that the computing environment does not meet at least one performance priority of the one or more performance priorities, a second server to the computing environment;

move, in response to at least one rule of the one or more rules indicating that the computing environment does not meet performance priorities, the group of connections from the first server to the second server, thereby establishing a second bi-directional connection with the second server within the computing environment;

receive an egress message from the second server within the computing environment via the second bi-directional connection; and

parse the egress message.

8. The one or more non-transitory computer readable storage media of claim 7 , wherein:

the first bi-directional connection comprises a TCP socket.

9. The one or non-transitory more computer readable storage media of claim 7 , wherein:

the device comprises one or more of a camera or another computing device within the location.

Assignments (2)
SECURITY INTEREST Recorded Nov 12, 2025
From: SIMPLISAFE, INC.
To: CAPITAL ONE, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 073579/0854 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 16, 2022
From: WILFERT, NATHAN
To: SIMPLISAFE, INC.
Reel/Frame 061788/0206 →
Cited By (1)
US 12,200,046