IP Library Granted Patent US 9,277,442
Granted Patent B2
US 9,277,442 · App. 14/535,515 · Granted Mar 1, 2016

Multiple concurrent data link management

Inventors: Sanigepalli V. Praveenkumar (San Diego, CA); Ritwik Dubey (Gainesville, FL); Manish Bansal (Sunrise, FL)
Assignee: BlackBerry Limited
H04W28/0231H04W76/026H04W88/06
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 9,277,442
App. No.
14/535,515
Filed
Nov 7, 2014
Granted
Mar 1, 2016
Kind
B2
Art Unit
2411
USPC
370/235
Abstract

An apparatus and method of determining an allocation of data across multiple data communications networks. A respective characteristic of the first data communications network and the second data communication network are determined based on receiving a respective first and second portion of a data set sent through respective channels to a receiver. Based on determining these respective characteristics and based upon the respective characteristics, an allocation of data between the first data communications network and the second communications network is determined such that the allocation satisfies at least one data transfer performance requirement associated with the data set.

Claims (60)

1. A method for determining allocation of data across multiple data communications networks, comprising:

determining, based on receiving a first data set sent from a transmitter through a first data communications network to a data receiver, a first characteristic of the first data communications network, the transmitter being remote from the data receiver;

determining, based on receiving a second data set sent from the transmitter through a second data communications network to the data receiver, a second characteristic of the second data communication network;

determining, at the data receiver based on determining the first characteristic and the second characteristic, an allocation of data between the first data communications network and the second communications network for sending data from the transmitter to the receiver, the allocation satisfying at least one data transfer performance requirement associated with a third data set; and

sending, from the data receiver to the transmitter, an indication of the allocation.

2. The method of claim 1 , wherein the indication comprises a respective specification of an amount of data to transfer over the first data communications network and a respective specification of an amount of data to transfer over the second data communications network.

3. The method of claim 1 , wherein the first characteristic and the second characteristic comprise at least one of received data throughput rate, transmission latency, and availability.

4. The method of claim 1 , wherein the at least one data transfer performance requirement comprises one of data set buffering speed, data transmission latency, data set streaming quality of service, and data transfer speed.

5. The method of claim 1 , further comprising determining, prior to determining the second characteristic, an availability of the second data communications network,

wherein the determining the second characteristic is performed based on determining the second characteristic.

6. The method of claim 1 , further comprising:

detecting, subsequent to the determining the allocation of data, a change in at least one of the first characteristic and the second characteristic;

determining, based on detecting the change in at least one of the first characteristic and the second characteristic, a reallocation of data between the first data communications network and the second communications network, the reallocation satisfying the at least one data transfer performance requirement associated with the third data set; and

sending, to a transmitter of the third data set, an indication of the reallocation.

7. The method of claim 1 , the first data communications network using a first data communications protocol, and the second data communications network using a second data communications protocol that is different from the first data communications protocol.

8. The method of claim 7 , further comprising:

determining, prior to determining the allocation of data, an availability of a third data communications network for communications, the third data communications network being different than the first data communications network and the second data communications network and using a third data communications protocol that is different than the first data communications protocol and the second data communications protocol; and

determining a third characteristic of the third data communication network,

wherein the determining the allocation of data is further performed based on determining the third characteristic,

wherein the determining the allocation of data is further based upon the third characteristic.

9. An apparatus for determining allocation of data across multiple data communications networks, the apparatus comprising:

a data link analyzer configured to:

determine, based on receiving a first data set sent through a first data communications network to a data receiver from a transmitter that is remote from the data receiver, a first characteristic of the first data communications network;

determine, based on receiving a second data set sent through a second data communications network to the data receiver from the transmitter, a second characteristic of the second data communication network;

determine, based on the first characteristic and the second characteristic, an allocation of data between the first data communications network and the second communications network for sending data from the transmitter to the data receiver, the allocation satisfying at least one data transfer performance requirement associated with a third data set; and

send, to the transmitter of the third data set, an indication of the allocation.

10. The apparatus of claim 9 , wherein the indication comprises a respective specification of an amount of data to transfer over the first data communications network and a respective specification of an amount of data to transfer over the second data communications network.

11. The apparatus of claim 9 , wherein the first characteristic and the second characteristic comprise at least one of received data throughput rate, transmission latency, and availability.

12. The apparatus of claim 9 , wherein the at least one data transfer performance requirement comprises one of data set buffering speed, data transmission latency, data set streaming quality of service, and data transfer speed.

13. The apparatus of claim 9 , wherein the data link analyzer is further configured to determine, prior to determining the second characteristic, an availability of the second data communications network,

wherein the determining the second characteristic is performed based on determining the second characteristic.

14. The apparatus of claim 9 , wherein the data link analyzer is further configured to:

detect, subsequent to the determining the allocation of data, a change in at least one of the first characteristic and the second characteristic;

determine, based on detecting the change in at least one of the first characteristic and the second characteristic, a reallocation of data between the first data communications network and the second communications network, the reallocation satisfying the at least one data transfer performance requirement associated with the third data set; and

send, to a transmitter of the third data set, an indication of the reallocation.

15. The apparatus of claim 9 , wherein the first data communications network uses a first data communications protocol, and wherein the second data communications network uses a second data communications protocol that is different from the first data communications protocol.

16. The apparatus of claim 15 , wherein the data receiver is further configured to:

determine, prior to determining the allocation of data, an availability of a third data communications network for communications, the third data communications network being different than the first data communications network and the second data communications network and using a third data communications protocol that is different than the first data communications protocol and the second data communications protocol; and

determine a third characteristic of the third data communication network, and

wherein the data link analyzer is further configured to determine the allocation of data in further response to determining the third characteristic, and

wherein the determining the allocation of data is further based upon the third characteristic.

17. A computer program product for determining allocation of data across multiple data communications networks, the computer program product comprising:

a non-transitory computer readable storage medium having computer readable program code embedded therewith, the computer readable program code comprising instructions for:

determining, based on receiving a first data set sent from a transmitter through a first data communications network to a data receiver, a first characteristic of the first data communications network, the transmitter being remote from the data receiver;

determining, based on receiving a second data set sent from the transmitter through a second data communications network to the data receiver, a second characteristic of the second data communication network;

determining, at the data receiver based on determining the first characteristic and the second characteristic, an allocation of data between the first data communications network and the second communications network for sending data from the transmitter to the receiver, the allocation satisfying at least one data transfer performance requirement associated with a third data set; and

sending, from the data receiver to the transmitter, an indication of the allocation.

18. The computer program product of claim 17 , the computer readable program code further comprising instructions for:

determining, prior to determining the second characteristic, an availability of the second data communications network,

wherein the determining the second characteristic is performed based on determining the second characteristic.

19. The computer program product of claim 17 , the computer readable program code further comprising instructions for:

detecting, subsequent to the determining the allocation of data, a change in at least one of the first characteristic and the second characteristic; and

determining, based on detecting the change in at least one of the first characteristic and the second characteristic, a reallocation of data between the first data communications network and the second communications network, the reallocation satisfying the at least one data transfer performance requirement associated with the third data set; and

sending, to a transmitter of the third data set, an indication of the reallocation.

20. The computer program product of claim 17 , the first data communications network using a first data communications protocol, and the second data communications network using a second data communications protocol that is different from the first data communications protocol,

the computer readable program code further comprising instructions for:

determining, prior to determining the allocation of data, an availability of a third data communications network for communications, the third data communications network being different than the first data communications network and the second data communications network and using a third data communications protocol that is different than the first data communications protocol and the second data communications protocol; and

determining, a third characteristic of the third data communication network,

wherein the determining the allocation of data is further performed based on determining the third characteristic,

wherein the determining the allocation of data is further based upon the third characteristic.

Assignments (5)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064271/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Dec 8, 2014
From: RESEARCH IN MOTION CORPORATION
To: BLACKBERRY CORPORATION
Reel/Frame 034539/0575 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2014
From: PRAVEENKUMAR, SANIGEPALLI V. PRAVEENKUMAR V.; DUBEY, RITWIK; BANSAL, MANISH
To: RESEARCH IN MOTION CORPORATION
Reel/Frame 034163/0434 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2014
From: BLACKBERRY CORPORATION
To: BLACKBERRY LIMITED
Reel/Frame 034226/0691 →
Continuity (2)
Continuation 13307601 · Nov 30, 2011
Related Publication 20150063114A1 · Mar 5, 2015