IP Library Granted Patent US 10,594,606
Granted Patent B2
US 10,594,606 · App. 15/483,853 · Granted Mar 17, 2020

Wired data-connection aggregation

Inventor: Kevin Ross (Saratoga Springs, UT)
Assignee: Vivint, Inc.
H04L47/12H04L45/22
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,594,606
App. No.
15/483,853
Granted
Mar 17, 2020
Kind
B2
Abstract

According to at least one embodiment, a computer-implemented method to transmit data is described. The data being transmitted over a wired data-connection may be identified. The identified data may be parsed into two or more parts. A first part of the identified data may be transmitted over a primary wired data-connection. A second part of the identified data may be transmitted over an auxiliary wired data-connection. The auxiliary wired data-connection may be connected to the primary wired data-connection via a wireless data-connection.

Claims (56)

1. A method for electronic communication, comprising:

identifying, by a first computing device, data to be transmitted from the first computing device to a server via a first wired connection between the first computing device and the server;

identifying, by the first computing device, an availability of a second device having capacity to transmit at least some of the data from the second device to the server via a second wired connection between the second device and the server;

determining, by the first computing device, a bandwidth availability of the first wired connection between the first computing device and the server and a bandwidth availability of the second wired connection between the second device and the server based at least in part on identifying the availability of the second device;

dividing, by the first computing device, the data into a first portion to be transmitted to the server via the first wired connection and a second portion to be transmitted to the server via a wireless connection between the first computing device and the second device and the second wired connection between the second device and the server;

comparing a size of the data to a transfer rate of the first wired connection to determine an estimated transfer time of transmitting the data over the first wired connection; and

transmitting, by the first computing device, the first portion of the data to the server via the first wired connection and the second portion of the data to the second device via the wireless connection.

2. The method of claim 1 , further comprising:

determining that the size of the data exceeds a size threshold associated with the first wired connection of the first computing device, wherein identifying the second device is based at least in part on determining that the size exceeds the size threshold.

3. The method of claim 1 , further comprising:

determining that the estimated transfer time of transmitting the data via the first wired connection exceeds a transfer time threshold associated with the first wired connection of the first computing device, wherein identifying the second device is based at least in part on determining that the estimated transfer time exceeds the transfer time threshold.

4. The method of claim 3 ,

wherein determining that the estimated transfer time exceeds the transfer time threshold is based on the comparison.

5. The method of claim 1 , wherein:

the first portion of the data is transmitted over the first wired connection at the same time that the second portion of the data is transmitted over the wireless connection.

6. The method of claim 1 , further comprising:

identifying a plurality of devices having wired communication resources for use by the first computing device, the plurality of devices being connected to the first computing device via the wireless connection, wherein the data is divided into a number of portions that includes the first portion and the second portion based at least in part on a number of the plurality of devices with available communication resources.

7. The method of claim 1 , further comprising:

identifying a third device having capacity to transmit at least some of the data to the server via a third wired connection between the third device and the server;

wherein dividing the data further comprises: dividing, by the first computing device, the data into the first portion, the second portion, and a third portion, the third portion to be transmitted to the server via the wireless connection between the first computing device and the third device and the third wired connection between the third device and the server, wherein the third portion of the data is transmitted simultaneously with the first portion and the second portion of the data.

8. The method of claim 1 , further comprising:

prioritizing the data of the first computing device data based at least in part on the estimated transfer time exceeding a threshold.

9. The method of claim 1 , further comprising:

determining what communication resources of the second wired connection of the second device are available for use by the first computing device.

10. The method of claim 9 , further comprising:

transmitting a request to the second device via the wireless connection inquiring what communication resources of the second device are available for use by the first computing device; and

receiving a response from the second device via the wireless connection indicating what communication resources are available for use by the first computing device.

11. The method of claim 1 , further comprising:

establishing the wireless connection using a device-to-device mesh network.

12. An apparatus for electronic communication, comprising:

a processor;

memory in electronic communication with the processor; and

instructions stored in the memory and operable, when executed by the processor, to cause the apparatus to:

identify, by a first computing device, data to be transmitted from the first computing device to a server via a first wired connection between the first computing device and the server;

identify, by the first computing device, an availability of a second device having capacity to transmit at least some of the data from the second device to the server via a second wired connection between the second device and the server;

determine, by the first computing device, a bandwidth availability of the first wired connection between the first computing device and the server and a bandwidth availability of the second wired connection between the second device and the server based at least in part on identifying the availability of the second device;

divide, by the first computing device, the data into a first portion to be transmitted to the server via the first wired connection and a second portion to be transmitted to the server via a wireless connection between the first computing device and the second device and the second wired connection between the second device and the server;

compare a size of the data to a transfer rate of the first wired connection to determine an estimated transfer time of transmitting the data over the first wired connection; and

transmit, by the first computing device, the first portion of the data to the server via the first wired connection and the second portion of the data to the second device via the wireless connection.

13. The apparatus of claim 12 , wherein the instructions are further executable by the processor to:

determine that the size of the data exceeds a size threshold associated with the first wired connection of the first computing device, wherein identifying the second device is based at least in part on determining that the size exceeds the size threshold.

14. The apparatus of claim 12 , wherein the instructions are further executable by the processor to:

determine that the estimated transfer time of transmitting the data via the first wired connection exceeds a transfer time threshold associated with the first wired connection of the first computing device, wherein identifying the second device is based at least in part on determining that the estimated transfer time exceeds the transfer time threshold.

15. The apparatus of claim 14 ,

wherein determining that the estimated transfer time exceeds the transfer time threshold is based on the comparison.

16. The apparatus of claim 12 , wherein:

the first portion of the data is transmitted over the first wired connection at the same time that the second portion of the data is transmitted over the wireless connection.

17. The apparatus of claim 12 , wherein the instructions are further executable by the processor to:

identify a plurality of devices having wired communication resources for use by the first computing device, the plurality of devices being connected to the first computing device via the wireless connection, wherein the data is divided into a number of portions that includes the first portion and the second portion based at least in part on a number of the plurality of devices with available communication resources.

18. A non-transitory computer readable medium storing code for electronic communication, the code comprising instructions executable by a processor to:

identify, by a first computing device, data to be transmitted from the first computing device to a server via a first wired connection between the first computing device and the server;

identify, by the first computing device, an availability of a second device having capacity to transmit at least some of the data from the second device to the server via a second wired connection between the second device and the server;

determine, by the first computing device, a bandwidth availability of the first wired connection between the first computing device and the server and a bandwidth availability of the second wired connection between the second device and the server based at least in part on identifying the availability of the second device;

divide, by the first computing device, the data into a first portion to be transmitted to the server via the first wired connection and a second portion to be transmitted to the server via a wireless connection between the first computing device and the second device and the second wired connection between the second device and the server;

compare a size of the data to a transfer rate of the first wired connection to determine an estimated transfer time of transmitting the data over the first wired connection; and

transmit, by the first computing device, the first portion of the data to the server via the first wired connection and the second portion of the data to the second device via the wireless connection.

Assignments (9)
AFTER-ACQUIRED INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 27, 2025
From: VIVINT LLC; SMART HOME PROS, INC.; VIVINT AMIGO, INC.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS PRIORITY COLLATERAL TRUSTEE
Reel/Frame 070349/0816 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2025
From: VIVINT, INC.
To: VIVINT LLC
Reel/Frame 069767/0343 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT REEL 049283, FRAME 0566 Recorded Nov 11, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VIVINT, INC.
Reel/Frame 069334/0137 →
RELEASE (REEL 047029/ FRAME 0304) Recorded Nov 1, 2024
From: BANK OF AMERICA, N.A.
To: VIVINT LLC (F/K/A VIVINT, INC.)
Reel/Frame 069289/0468 →
RELEASE OF SECURITY INTEREST Recorded Jul 12, 2021
From: BANK OF AMERICA, N.A.
To: VIVINT, INC.
Reel/Frame 056832/0824 →
SECURITY AGREEMENT Recorded May 23, 2019
From: VIVINT, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 049283/0566 →
SUPPL. NO. 2 SECURITY AGREEMENT Recorded Sep 6, 2018
From: VIVINT, INC.
To: BANK OF AMERICA N.A.
Reel/Frame 047024/0048 →
SECURITY AGREEMENT Recorded Sep 6, 2018
From: VIVINT, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 047029/0304 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2017
From: ROSS, KEVIN
To: VIVINT, INC.
Reel/Frame 041949/0762 →
Continuity (2)
Continuation 14522489 · Oct 23, 2014
Related Publication 20170279721A1 · Sep 28, 2017