IP Library Granted Patent US 7,477,624
Granted Patent B2
US 7,477,624 · App. 11/397,443 · Granted Jan 13, 2009

Approach for managing the use of communications channels based on performance

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 7,477,624
App. No.
11/397,443
Granted
Jan 13, 2009
Kind
B2
Abstract

An approach for selecting sets of communications channels involves determining the performance of communications channels. A set of channels is selected based on the results of performance testing and specified criteria. The participant generates data that identifies the selected set of channels and provides that data to other participants of the communications network. The participants communicate over the set of channels, such as by using a frequency hopping protocol. When a specified time expires or monitoring of the performance of the channel set identifies poor performance of the set of channels, the participant selects another set of channels for use in communications based on additional performance testing. By selecting channels based on the initial performance testing and performance monitoring, the communications network adaptively avoids channels with poor performance.

Claims (134)

1. A communications device for use in a network of devices, comprising:

a memory for storing instructions;

a processor that is communicatively coupled to the memory, wherein the memory includes instructions which, when processed by the processor, causes:

selecting, based upon performance of a plurality of communications channels at a first time, a first set of two or more communications channels from the plurality of communications channels;

selecting, based upon performance of the plurality of communications channels at a second time that is later than the first time, a second set of two or more communications channels from the plurality of communications channels; and

a transceiver that is communicatively coupled to the memory and that is configured to transmit to and receive from another communications device, wherein:

for a first period of time, the first set of two or more communications channels is used to transmit to and receive from the other communications device; and

for a second period of time that is after the first period of time, the second set of two or more communications channels is used to transmit to and receive from the other communications device instead of the first set of two or more communications channels,

wherein the communications device is a first communications device, the other communications device is a second communications device, a default set of two or more communications channels is associated with a hopping sequence and is not changed based on the performance of the plurality of communications channels; and

the transceiver is configured to transmit to and receive from a third communications device over the default set of two or more communications channels while transmitting to and receiving from the second communications device over the first set of two or more communications channels and while transmitting to and receiving from the second communications device over the second set of two or more communications channels.

2. A communications device as recited in claim 1 , further comprising instructions, which when processed by the processor, causes the hopping sequence to be performed based on a frequency hopping protocol, wherein:

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the first set of two or more communications channels is used for communications between the communications device and the other communications device;

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the second set of two or more communications channels is used for communications between the communications device and the other communications device; and

the performance of the plurality of communications channels is based on channel performance data that is transmitted over one or more of the plurality of communications channels based on the hopping sequence according to the frequency hopping protocol.

3. A communications device as recited in claim 1 , wherein:

the instructions for selecting the first set of two or more communications channels further includes instructions which, when processed by the processor, causes selecting, based upon the performance of the plurality of communications channels at the first time and channel selection criteria, the first set of two or more communications channels from the plurality of communications channels;

the instructions for selecting the second set of two or more communications channels further includes instructions which, when processed by the processor, causes selecting, based upon the performance of the plurality of communications channels at the second time and the channel selection criteria, the second set of two or more communications channels from the plurality of communications channels; and

the channel selection criteria specifies that for a particular communications channel to be selected, the particular communications channel receives a specified number of votes to use the particular communications channel from among a plurality of votes.

4. A communications device as recited in claim 1 , wherein the memory further includes instructions which, when processed by the processor, causes:

after selecting the first set of two or more communications channels, causing the first set of two or more communications channels to be loaded into a first register of the communications device and a second register of the other communications device; and

after selecting the second set of two or more communications channels, causing the second set of two or more communications channels to be loaded into the first register of the communications device and the second register of the other communications device.

5. A communications apparatus comprising:

means for selecting, based upon performance of a plurality of communications channels at a first time, a first set of two or more communications channels from the plurality of communications channels;

means for causing the first set of two or more communications channels to be used for communications between a pair of participants;

means for selecting, based upon performance of the plurality of communications channels at a second time that is later than the first time, a second set of two or more communications channels from the plurality of communications channels; and

means for causing the second set of two or more communications channels to be used for communications between the pair of participants instead of the first set of two or more communications channels, wherein at each hop in a hopping sequence based on a frequency hopping protocol, only one communications channel of the second set of two or more communications channels is used for communications between the pair of participants,

wherein the pair of participants includes a first participant and a second participant, wherein a default set of two or more communications channels is associated with the hopping sequence and is not changed based on the performance of the plurality of communications channels, and the communications channel selector apparatus further comprises:

means fro the first participant to communicate with a third participant over the default set of two or more communications channels while communicating with the second participant over the first set of two or more communications channels and while communicating with the second participant over the second set of two or more communications channels.

6. A communications apparatus as recited in claim 5 , further comprising means for performing the hopping sequence based on a frequency hopping protocol, wherein:

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the first set of two or more communications channels is used for communications between the pair of participants;

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the second set of two or more communications channels is used for communications between the pair of participants; and

the performance of the plurality of communications channels is based on channel performance data that is transmitted over one or more of the plurality of communications channels based on the hopping sequence according to the frequency hopping protocol.

7. A communications apparatus as recited in claim 5 , wherein:

the means for selecting the first set of two or more communications channels includes means for selecting, based upon the performance of the plurality of communications channels at the first time and channel selection criteria, the first set of two or more communications channels from the plurality of communications channels;

the means for selecting the second set of two or more communications channels includes means for selecting, based upon the performance of the plurality of communications channels at the second time and the channel selection criteria, the second set of two or more communications channels from the plurality of communications channels; and

the channel selection criteria specifies that for a particular communications channel to be selected, the particular communications channel receives a specified number of votes to use the particular communications channel from among a plurality of votes.

8. A communications apparatus as recited in claim 5 , further comprising:

means for, after selecting the first set of two or more communications channels, causing the first set of two or more communications channels to be loaded into a register of each participant of the pair of participants; and

means for, after selecting the second set of two or more communications channels, causing the second set of two or more communications channels to be loaded into the register of each participant of the pair of participants.

9. A computer-readable medium carrying instructions for managing the use of communications channels for a communications system, wherein processing of the instructions by one or more processors causes:

selecting, based upon performance of a plurality of communications channels at a first time, a first set of two or more communications channels from the plurality of communications channels;

the first set of two or more communications channels to be used for communications between a pair of participants;

selecting, based upon performance of the plurality of communications channels at a second time that is later than the first time, a second set of two or more communications channels from the plurality of communications channels; and

the second set of two or more communications channels to be used for communications between the pair of participants instead of the first set of two or more communications channels,

wherein the pair of participants includes a first participant and a participant, wherein a default set of two or more communications channels is associated with a hopping sequence and is not changed based on the performance of the plurality of communications channels, and the computer-readable medium further comprising instructions, which when processed by the one or more processors, cause:

the first participant communicating with a third participant over the default set of two or more communications channels while communicating with the second participant over the first set of two or more communications channels and while communicating with the second participant over the second set of two or more communications channels.

10. A computer-readable medium as recited in claim 9 , further comprising instructions, which when processed by the one or more processors, cause the hopping sequence to be performed based on a frequency hopping protocol, wherein:

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the first set of two or more communications channels is used for communications between the pair of participants;

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the second set of two or more communications channels is used for communications between the pair of participants; and

the performance of the plurality of communications channels is based on channel performance data that is transmitted over one or more of the plurality of communications channels based on the hopping sequence according to the frequency hopping protocol.

11. A computer-readable medium as recited in claim 9 , wherein:

the instructions for selecting the first set of two or more communications channels comprise instructions which, when processed by the one or more processors, cause selecting, based upon the performance of the plurality of communications channels at the first time and channel selection criteria, the first set of two or more communications channels from the plurality of communications channels;

the instructions for selecting the second set of two or more communications channels comprise instructions, which when processed by the one or more processors, cause selecting, based upon the performance of the plurality of communications channels at the second time and the channel selection criteria, the second set of two or more communications channels from the plurality of communications channels; and

the channel selection criteria specifies that for a particular communications channel to be selected, the particular communications channel receives a specified number of votes to use the particular communications channel from among a plurality of votes.

12. A computer-readable medium as recited in claim 9 , further comprising instructions, which when processed by the one or more processors, causes:

after selecting the first set of two or more communications channels, causing the first set of two or more communications channels to be loaded into a register of each participant of the pair of participants; and

after selecting the second set of two or more communications channels, causing the second set of two or more communications channels to be loaded into the register of each participant of the pair of participants.

13. A communications device for use in a network of devices, comprising:

a memory for storing instructions;

a processor that is communicatively coupled to the memory, wherein the memory includes instructions which, when processed by the processor, causes:

selecting, based upon performance of a plurality of communications channels at a first time, a first set of two or more communications channels from the plurality of communications channels;

selecting, based upon performance of the plurality of communications channels at a second time that is later than the first time, a second set of two or more communications channels from the plurality of communications channels; and

a transceiver that is communicatively coupled to the memory and that is configured to transmit to and receive from another communications device, wherein:

for a first period of time, the first set of two or more communications channels is used to transmit to and receive from the other communications device; and

for a second period of time that is after the first period of time, the second set of two or more communications channels is used to transmit to and receive from the other communications device instead of the first set of two or more communications channels, and

wherein the memory further includes instructions, which when processed by the processor, causes:

after selecting the first set of two or more communications channels, causing the first set of two or more communications channels to be loaded into a first register of the communications device and a second register of the other communications device; and

after selecting the second set of two or more communications channels, causing the second set of two or more communications channels to be loaded into the first register of the communications device and the second register of the other communications device.

14. A communications device as recited in claim 13 , further comprising instructions, which when processed by the processor, cause the hopping sequence to be performed based on a frequency hopping protocol, wherein:

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the first set of two or more communications channels is used for communications between the communications device and the other communications device;

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the second set of two or more communications channels is used for communications between the communications device and the other communications device; and

the performance of the plurality of communications channels is based on channel performance data that is transmitted over one or more of the plurality of communications channels based on the hopping sequence according to the frequency hopping protocol.

15. A communications device as recited in claim 13 , wherein:

the instructions for selecting the first set of two or more communications channels further includes instructions which, when processed by the processor, cause selecting, based upon the performance of the plurality of communications channels at the first time and channel selection criteria, the first set of two or more communications channels from the plurality of communications channels;

the instructions for selecting the second set of two or more communications channels further includes instructions which, when processed by the processor, cause selecting, based upon the performance of the plurality of communications channels at the second time and the channel selection criteria, the second set of two or more communications channels from the plurality of communications channels; and

the channel selection criteria specifies that for a particular communications channel to be selected, the particular communications channel receives a specified number of votes to use the particular communications channel from among a plurality of votes.

16. A communications device as recited in claim 13 , wherein the communications device is a first communications device, the other communications device is a second communications device, a default set of two or more communications channels is associated with the hopping sequence and is not changed based on the performance of the plurality of communications channels; and

the transceiver is configured to transmit to and receive from a third communications device over the default set of two or more communications channels while transmitting to and receiving from the second communications device over the first set of two or more communications channels and while transmitting to and receiving from the second communications device over the second set of two or more communications channels.

17. A communications apparatus comprising:

means for selecting, based upon performance of a plurality of communications channels at a first time, a first set of two or more communications channels from the plurality of communications channels;

means for, after selecting the first set of two or more communications channels, causing the first set of two or more communications channels to be loaded into a register of each participant of the pair of participants;

means for causing the first set of two or more communications channels to be used for communications between a pair of participants;

means for selecting, based upon performance of the plurality of communications channels at a second time that is later than the first time, a second set of two or more communications channels from the plurality of communications channels

means for, after selecting the second set of two or more communications channels, causing the second set of two or more communications channels to be loaded into the register of each participant of the pair of participants; and

means for causing the second set of two or more communications channels to be used for communications between the pair of participants instead of the first set of two or more communications channels, wherein at each hop in a hopping sequence based on a frequency hopping protocol, only one communications channel of the second set of two or more communications channels is used for communications between the pair of participants.

18. A communications apparatus as recited in claim 17 , further comprising means for performing the hopping sequence based on the frequency hopping protocol, wherein:

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the first set of two or more communications channels is used for communications between the pair of participants;

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the second set of two or more communications channels is used for communications between the pair of participants; and

the performance of the plurality of communications channels is based on channel performance data that is transmitted over one or more of the plurality of communications channels based on the hopping sequence according to the frequency hopping protocol.

19. A communications apparatus as recited in claim 17 , wherein:

the means for selecting the first set of two or more communications channels includes means for selecting, based upon the performance of the plurality of communications channels at the first time and channel selection criteria, the first set of two or more communications channels from the plurality of communications channels;

the means for selecting the second set of two or more communications channels includes means for selecting, based upon the performance of the plurality of communications channels at the second time and the channel selection criteria, the second set of two or more communications channels from the plurality of communications channels; and

the channel selection criteria specifies that for a particular communications channel to be selected, the particular communications channel receives a specified number of votes to use the particular communications channel from among a plurality of votes.

20. A communications apparatus as recited in claim 17 , wherein the pair of participants includes a first participant and a second participant, wherein a default set of two or more communications channels is associated with the hopping sequence and is not changed based on the performance of the plurality of communications channels, and the communications channel selector apparatus further comprises:

means for the first participant to communicate with a third participant over the default set of two or more communications channels while communicating with the second participant over the first set of two or more communications channels and while communicating with the second participant over the second set of two or more communications channels.

21. A computer-readable medium carrying instructions for managing the use of communications channels for a communications system, wherein processing of the instructions by one or more processors causes:

selecting, based upon performance of a plurality of communications channels at a first time, a first set of two or more communications channels from the plurality of communications channels;

after selecting the first set of two or more communications channels, causing the first set of two or more communications channels to be loaded into a register of each participant of the pair of participants

the first set of two or more communications channels to be used for communications between a pair of participants;

selecting, based upon performance of the plurality of communications channels at a second time that is later than the first time, a second set of two or more communications channels from the plurality of communications channels;

after selecting the second set of two or more communications channels, causing the second set of two or more communications channels to be loaded into the register of each participant of the pair of participants; and

the second set of two or more communications channels to be used for communications between the pair of participants instead of the first set of two or more communications channels.

22. A computer-readable medium as recited in claim 21 , further comprising instructions, which when processed by the one or more processors, cause the hopping sequence to be performed based on a frequency hopping protocol, wherein:

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the first set of two or more communications channels is used for communications between the pair of participants;

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the second set of two or more communications channels is used for communications between the pair of participants; and

the performance of the plurality of communications channels is based on channel performance data that is transmitted over one or more of the plurality of communications channels based on the hopping sequence according to the frequency hopping protocol.

23. A computer-readable medium as recited in claim 21 , wherein:

the instructions for selecting the first set of two or more communications channels comprises instructions, which when processed by the one or more processors, causes selecting, based upon the performance of the plurality of communications channels at the first time and channel selection criteria, the first set of two or more communications channels from the plurality of communications channels;

the instructions for selecting the second set of two or more communications channels comprises instructions, which when processed by the one or more processors, causes selecting, based upon the performance of the plurality of communications channels at the second time and the channel selection criteria, the second set of two or more communications channels from the plurality of communications channels; and

the channel selection criteria specifies that for a particular communications channel to be selected, the particular communications channel receives a specified number of votes to use the particular communications channel from among a plurality of votes.

24. A computer-readable medium as recited in claim 21 , wherein the pair of participants includes a first participant and a second participant, wherein a default set of two or more communications channels is associated with the hopping sequence and is not changed based on the performance of the plurality of communications channels, and the computer-readable medium further comprising instructions, which when processed by the one or more processors, causes:

the first participant communicating with a third participant over the default set of two or more communications channels while communicating with the second participant over the first set of two or more communications channels and while communicating with the second participant over the second set of two or more communications channels.

25. A communications device for use in a network of devices, comprising:

a memory for storing instructions;

a processor that is communicatively coupled to the memory, wherein the memory includes instructions which, when processed by the processor, causes:

selecting, based upon performance of a plurality of communications channels at a first time, a first set of two or more communications channels from the plurality of communications channels;

selecting, based upon performance of the plurality of communications channels at a second time that is later than the first time, a second set of two or more communications channels from the plurality of communications channels; and

a transceiver that is communicatively coupled to the memory and that is configured to transmit to and receive from another communications device, wherein:

for a first period of time, the first set of two or more communications channels is used to transmit to and receive from the other communications device; and

for a second period of time that is after the first period of time, the second set of two or more communications channels is used to transmit to and receive from the other communications device instead of the first set of two or more communications channels, and

wherein the number of channels in the first set of two or more communications channels varies from the number of channels in the second set of two or more communications channels.

26. A communications device as recited in claim 25 , further comprising instructions, which when processed by the processor, causes the hopping sequence to be performed based on a frequency hopping protocol, wherein:

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the first set of two or more communications channels is used for communications between the communications device and the other communications device;

at each hop in the hopping sequence based on the frequency hopping protocol, only one communications channel of the second set of two or more communications channels is used for communications between the communications device and the other communications device; and

the performance of the plurality of communications channels is based on channel performance data that is transmitted over one or more of the plurality of communications channels based on the hopping sequence according to the frequency hopping protocol.

27. A communications device as recited in claim 25 , wherein:

the instructions for selecting the first set of two or more communications channels further includes instructions which, when processed by the processor, causes selecting, based upon the performance of the plurality of communications channels at the first time and channel selection criteria, the first set of two or more communications channels from the plurality of communications channels;

the instructions for selecting the second set of two or more communications channels further includes instructions which, when processed by the processor, causes selecting, based upon the performance of the plurality of communications channels at the second time and the channel selection criteria, the second set of two or more communications channels from the plurality of communications channels; and

the channel selection criteria specifies that for a particular communications channel to be selected, the particular communications channel receives a specified number of votes to use the particular communications channel from among a plurality of votes.

28. A communications device as recited in claim 25 , wherein the communications device is a first communications device, the other communications device is a second communications device, a default set of two or more communications channels is associated with the hopping sequence and is not changed based on the performance of the plurality of communications channels; and

the transceiver is configured to transmit to and receive from a third communications device over the default set of two or more communications channels while transmitting to and receiving from the second communications device over the first set of two or more communications channels and while transmitting to and receiving from the second communications device over the second set of two or more communications channels.

29. A communications device as recited in claim 25 , wherein the memory further includes instructions, which when processed by the processor, causes:

after selecting the first set of two or more communications channels, causing the first set of two or more communications channels to be loaded into a first register of the communications device and a second register of the other communications device; and

after selecting the second set of two or more communications channels, causing the second set of two or more communications channels to be loaded into the first register of the communications device and the second register of the other communications device.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2018
From: ULTRAMARINE GROUP II, LLC
To: BANDSPEED, LLC
Reel/Frame 046167/0884 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2018
From: BANDSPEED, INC.
To: ULTRAMARINE GROUP II, LLC
Reel/Frame 046352/0923 →
RELEASE OF SECURITY INTEREST Recorded Jul 5, 2012
From: DAFFER MCDANIEL, L.L.P.
To: BANDSPEED, INC.
Reel/Frame 028503/0142 →