# US 8,542,643 B2 · Approach for managing the use of communications channels based on performance

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,542,643 B2
- Document ID: US8542643B2
- Status: Granted
- Kind: B2
- Application number: 13/043,419
- Filed: 2011-03-08
- Published: 2011-09-08
- Granted: 2013-09-24
- Earliest claimed: 2001-01-25
- Assignees: Bandspeed, Inc.
- Applicants: Hongbing Gan; Bijan Treister; Efstratios Skafidas
- Inventors: Hongbing Gan; Bijan Treister; Efstratios Skafidas
- Web page: https://patentgrep.com/patent/US8542643B2

## CPC

- H04W 72/542: using measured or perceived quality
- H04B 1/7136: Arrangements for generation of hop frequencies, e.g. using a bank of frequency sources, using continuous tuning or using a transform
- H04B 1/715: Interference-related aspects
- H04L 5/006: {Quality of the received signal, e.g. BER, SNR, water filling}
- H04L 69/28: Timers or timing mechanisms used in protocols
- H04W 4/80: Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
- H04W 24/08: Testing, {supervising or monitoring} using real traffic
- H04W 72/0446: Resources in time domain, e.g. slots or frames
- H04W 84/20: Leader-follower arrangements
- H04B 2001/7154: {with means for preventing interference}
- H04L 2101/622: Layer-2 addresses, e.g. medium access control [MAC] addresses
- H04W 84/12: WLAN [Wireless Local Area Networks]
- H04W 84/18: Self-organising networks, e.g. ad-hoc networks or sensor networks
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- H04B: TRANSMISSION
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## 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

### Claim 1

A method, comprising:
loading a set of default channels into a default channel register;
loading a set of good channels into a good channel register;
if a selection kernel addresses a bad channel stored in a particular location of the default channel register, then replacing, by the selection kernel, the bad channel stored in the particular location of the default channel register with a good channel selected from the set of good channels loaded in the good channel register;
wherein the method is performed using one or more computing devices.

### Claim 2 (depends on 1)

The method of claim 1, wherein the good channel is randomly selected from the set of good channels loaded in the good channel register.

### Claim 3 (depends on 1)

The method of claim 1, further comprising: performing a channel hopping sequence in an order determined by the order of default channels stored in the default channel register.

### Claim 4 (depends on 1)

The method of claim 1, further comprising: removing a particular good channel from the good channel register, based at least in part on a good channel usage timeout value.

### Claim 5 (depends on 1)

The method of claim 1, further comprising: rescanning the default channels, based at least in part on the number of good channels.

### Claim 6

A non-transitory computer-readable medium storing instructions for managing the use of communications channels for a communications system, wherein processing of the instructions by one or more processors causes:
loading a set of default channels into a default channel register;
loading a set of good channels into a good channel register;
if a selection kernel addresses a bad channel stored in a particular location of the default channel register, then replacing, by the selection kernel, the bad channel stored in the particular location of the default channel register with a good channel selected from the set of good channels loaded in the good channel register.

### Claim 7 (depends on 6)

The non-transitory computer-readable medium of claim 6, further comprising instructions, which when processed by the one or more processors, cause: randomly selecting the good channel from the set of good channels loaded in the good channel register.

### Claim 8 (depends on 6)

The non-transitory computer-readable medium of claim 6, further comprising instructions, which when processed by the one or more processors, cause: performing a channel hopping sequence in an order determined by the order of default channels stored in the default channel register.

### Claim 9 (depends on 6)

The non-transitory computer-readable medium of claim 6, further comprising instructions, which when processed by the one or more processors, cause: removal of a particular good channel from the good channel register, based at least in part on a good channel usage timeout value.

### Claim 10 (depends on 6)

The non-transitory computer-readable medium of claim 6, further comprising instructions, which when processed by the one or more processors, cause: rescanning the default channels, based at least in part on the number of good channels.

### Claim 11

An apparatus, comprising:
one or more processors; and
a memory storing instructions which, when processed by the one or more processors, causes:
loading a set of default channels into a default channel register,
loading a set of good channels into a good channel register,
if a selection kernel addresses a bad channel stored in a particular location of the default channel register, then replacing, by the selection kernel, the bad channel stored in the particular location of the default channel register with a good channel selected from the set of good channels loaded in the good channel register.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the good channel is randomly selected from the set of good channels loaded in the good channel register.

### Claim 13 (depends on 11)

The apparatus of claim 11, wherein the memory stores additional instructions which, when processed by the one or more processors, cause performing a channel hopping sequence in an order determined by the order of default channels stored in the default channel register.

### Claim 14 (depends on 11)

The apparatus of claim 11, wherein the memory stores additional instructions which, when processed by the one or more processors, cause removing a particular good channel from the good channel register, based at least in part on a good channel usage timeout value.

### Claim 15 (depends on 11)

The apparatus of claim 11, wherein the memory stores additional instructions which, when processed by the one or more processors, cause rescanning the default channels, based at least in part on the number of good channels.
