Patent ID: 12231321

DETAILED DESCRIPTION

Described herein are techniques for an interference group creation system. In the following description, for purposes of explanation, numerous examples and specific details are set forth in order to provide a thorough understanding of some embodiments. Some embodiments as defined by the claims may include some or all of the features in these examples alone or in combination with other features described below, and may further include modifications and equivalents of the features and concepts described herein.

Some embodiments generate interference groups (IGs) for a network. An interference group is a collection of network devices, such as modems, that may have poor isolation between each other such that the upstream transmission of one modem may interfere with the downstream reception of a signal for another modem, or vice versa. A process may be used where modems to send beacon signals while other modems listen to the beacon signals and generate measurements, such as signal-to-noise ratios (SNR) or modulation error ratio (MER) measurements, before the beacon signal is transmitted and while the beacon signal is transmitting.

A system then uses the measurements to generate the interference groups. In some embodiments, a system sets a threshold over a frequency spectrum. For example, the threshold may be a fixed threshold that is fixed across the frequency spectrum or a variable threshold that varies in value across the frequency spectrum in which the modems transmit upstream and downstream signals. The system receives measurements that measure interference between a set of modems over the frequency spectrum. Then, the system compares a metric that is based on the measurements to the threshold at multiple points across the frequency spectrum. Based on the comparison, the system selects whether network devices are in a group that interferes with communications of each other.

Because the threshold is set across the frequency spectrum, the interference groups may be selected differently. For example, the system may select frequency groups based on comparisons over a sub-band, channel, sub-carriers, or other divisions of the frequency spectrum. This allows the creation of interference groups on a greater granularity across the frequency spectrum instead of creating an interference group for the entire frequency spectrum.

System Overview

FIG.1depicts a simplified system100for generating interference groups according to some embodiments. A network in system100includes a core106, a node108, taps114-1to114-N, and network devices112-1to112-N. Network devices112will be referred to as modems, such as cable modems (CM), but other types of network devices that can send and receive signals may be used, such as gateways, customer premise equipment (CPE), set top boxes, etc. Cable modems112are configured to receive data from core106, and provide the data to a subscriber device, such as a set-top box, television, smart phone, etc. Cable modem112may be an interface with the network outside of a subscriber's premises.

In some embodiments, the network provides data over a cable system according to a protocol, such as the DOCSIS protocol. The network may be based on different physical topologies, such as a hybrid fiber coaxial network, but other networks may be used. In some embodiments, the network may be a remote physical network (R-PHY) in which physical layer-related circuitry is located in node108, which is located closer to subscriber premises in the network than core106. In some embodiments, a converged cable access platform (CCAP) core may be located in a headend and node108may include a remote physical device (RPD) that interfaces between cable modems112and core106. Core106contains media access control (MAC) signaling functions.

Core106may send downstream signals through a digital network, such as a fiber network to node108. Node108may convert the digital signals to analog signals and send those signals to cable modems112-1to112-N.

Node108may be an optical node device that may be located at the junction of the fiber and coaxial plants. That is, node108may receive digital signals via optical fiber, convert those signals to analog, such as radio frequency, and send the analog signals via coaxial cable to cable modems112. Node108receives the digital signals over the fiber and converts those digital signals to analog radio frequency signals for transmission over the coaxial cable. Also, node108converts upstream analog signals, such as radio frequency signals, received over the coaxial cable from cable modems112to digital for transmission over the fiber network to core106.

As discussed above, a single-point to multi-point network may be used where modems connected to the same plant that are connected to node108transmit upstream signals and receive downstream signals in the same frequency spectrum. In some embodiments, node108includes an echo canceler110that may cancel the interference generated by node108where its transmitted downstream signal may leak and/or reflect from the plant and interfere with the upstream signals that node108is trying to receive. Since node108knows the characteristics of its transmitted signal, node108may be able to cancel the interference. Also, cable modems112cannot cancel the interference because a recipient cable modem112does not know the characteristics of the transmitted signal for the other modem that is causing the interference and cannot mitigate the signal. Although modems112may cancel their own interference signal if a modem wants to use same frequency for upstream and downstream, a modem112cannot remove/cancel interference caused by other modems112because this modem112does not know the characteristics of the transmitted signal from the other modems. In some embodiments, modems112are connected to taps114of the network plant and may have a greater chance to interfere with other modems112connected to the same tap114, but modems connected to different taps may also interfere with each other.

Although a remote physical (RPHY) network is described, any multi-point-to-a single point system may experience the interference described and may be used in the generation of interference groups as described. The system may be one-to-multi point system where the devices (e.g., taps114) that connect the sub devices (e.g., modems112) have finite amount of isolation between the ports causing interference between the sub devices. Accordingly, a modem does not have to be a cable modem, such as if the physical medium is different than cable (e.g., twisted pair), then the device may be a twisted pair modem. The sub device depends on the medium.

To avoid the interference between cable modems112, a processing engine102includes an interference group engine104that generates interference groups that include different sets of cable modems112. In some embodiments, an interference group may include two or more cable modems112. Cable modems112in an interference group may have limited isolation between them and thus may interfere with each other when one cable modem112transmits a signal while another cable modem receives a signal. A cable modem may be in just one interference group. The opposite may also be formed where modems112in an interference group do not interfere with each other.

As will be described in more detail below, interference group engine104may generate interference groups based on a threshold that is applied over a frequency spectrum. The following will describe the frequency spectrum and then how to generate the interference groups.

Frequency Spectrum

FIG.2depicts a frequency spectrum200according to some embodiments. Frequency spectrum200may be a range of frequencies in which downstream signals are received at cable modems112and upstream signals are sent from cable modems112. Frequency spectrum200may be broken into different granularities of frequency ranges, such as sub-bands, channels, and sub-carriers. A sub-band may be a fixed portion of spectrum. A channel may be a portion of electromagnetic spectrum within a sub-band that is used to convey one or more radio frequency signals. A sub-carrier may be one of a large number of closely-spaced or overlapping orthogonal narrow-band width data signals within a channel, such as an OFDM channel.

In some embodiments, frequency spectrum200is broken into sub-bands206-1to206-3, which are a first division of the frequency spectrum (e.g., a range of frequencies). A different number of sub-bands may be used and the number is not limited to three sub-bands. A sub-band206may be broken into channels. For example, a channel may include a downstream (DS) channels202-1,202-2, . . .202-N in which downstream signals are sent. Also, a channel may include upstream (US) channels204-1to204-N in which upstream signals can be sent.

Each channel may be a second division of frequencies in frequency spectrum200. For example, each channel may have a frequency spectrum that is equal to or less than the frequency spectrum of a sub-band. As shown, a sub-band includes one downstream channel202and two upstream channels204; however, a sub-band may include different numbers of downstream channels202and upstream channels204. But, at least one downstream channel and at least one upstream channel overlap in frequency in a sub-band206. For example, downstream channel202-1is in a first frequency range in which downstream signals are sent from core106to cable modems112. In some embodiments, downstream channel202-1uses the same frequency range as sub-band #1. Within downstream channel202-1, upstream channels204-1and204-2are used by cable modems112to transmit upstream signals to core106. In some embodiments, upstream channels204may occupy different subsets of the frequency spectrum in downstream channel202-2. For example, upstream channel204-1is included in a first subset of frequencies in sub-band #1 and upstream channel204-2is included in a second subset of frequencies in sub-band #1. However, other configurations may be used. For example, an upstream channel may have the same or less than the frequency spectrum of a downstream channel. In other examples, any number of upstream channels204may be found in a downstream channel202.

Frequency spectrum200may also be broken into other granularities, such as sub-carrier frequencies. For example, downstream channel202and upstream channel204may be broken into sub-carriers that are of a smaller range frequency. The sub-carriers are used to carry a signal in the upstream direction and the downstream direction. Accordingly, downstream channels202and upstream channels204may include multiple sub-carriers that are subsets of frequency spectrum200within the respective channel.

Interface Group Generation

FIG.3depicts a simplified flowchart300of a method for generating interference groups according to some embodiments. The following process may be a general process that interference group engine104performs to generate interference groups and more details will be described thereafter. At302, interference group engine104configures a threshold over a frequency spectrum. For example, the threshold may cover a range of frequencies in frequency spectrum200that was described inFIG.2in which modems112send and receive signals. As will be discussed in more detail below, a fixed threshold and a variable threshold over the frequency spectrum may be used.

At304, interference group engine104receives measurements that measure signals being received between modems112. In some embodiments, as discussed above, a modem112may send a series of beacon signals and other modems112may take measurements during a time before the beacon signals are sent and then take measurements while the beacon signals are sent. The measurements may measure characteristics of the signal, such as signal-to-noise ratio or modulation error ratio, but other measurements may be used. The measurements may be determined by comparing the measurements before the signals are transmitted to measurements when the signals are sent. For example, the comparison may detect any interference that results when another modem sends a beacon signal. Once performing the measurements, modems112send the measurements to interference group engine104. In other examples, network components in the network other than modems112may make the measurements. In some embodiments, the measurements may be based on continuous wave form (CW) tone or Orthogonal Frequency Division Multiplexing Access (OFDMA) upstream data profile methods. The tone or data profile methods use the tone or data profile signals to measure characteristics of the signals.

Once receiving the measurements, at306, interference group engine104compares a metric based on the measurements to the threshold. In some embodiments, the metric may be the same as the measurement that was taken, such as the signal-to-noise ratio or modulation error ratio. In other examples, interference group engine104may calculate the metric from the measurements, such as a modulation error ratio degradation due to interference, an interference level, or some combination of the measurements and/or metrics can be used. The threshold is set based on the metric that will be used in the comparison. That is, if a modulation error ratio is being used as the metric, then the threshold may be a level of modulation error ratio.

At308, interference group engine104calculates the interference groups. As will be described in more detail below, interference group engine104may calculate the interference groups across the frequency spectrum and/or based on different granularities in the frequency spectrum. The following will describe the process of generating the interference groups in more detail.

Threshold Selection

Before calculating the interference groups, interference group engine104sets the threshold.FIG.4depicts a simplified flowchart400of a method for selecting the threshold according to some embodiments. At402, interference group engine104selects a metric for the threshold. The metric may be based on the measurements that are taken, such as modulation error ratio, modulation error ratio degradation, interference level, other metrics, or any combinations of the above metrics. In some embodiments, modems112take measurements at the sub-carrier level, such as the modulation error ratio may be measured at the sub-carrier level. That is, a first modem112sends a signal in a sub-carrier, and a second modem112receives a signal that is measured in the same sub-carrier. A direct metric comparison against the threshold may be performed at the sub-carrier level. However, when using metrics at the channel level or sub-band, the sub-carrier measurements may need to be processed to form metrics at the channel level or sub-band level. For example, an average of modulation error ratios or interference levels at sub-carrier frequencies in each channel may be used when comparing errors at the channel level.

Another metric may be the standard deviation/variation of modulation error ratios or interference levels at the sub-carrier frequencies in the channel. The standard deviation may be used with the average modulation error ratio to compare the metric that is configured per channel. Other metrics may also be used along with the average standard deviation.

At404, interference group engine104determines if a variable threshold should be used. For example, a fixed threshold or a variable threshold may be used across the frequency spectrum. The fixed threshold does not change across the entire frequency spectrum being tested. However, the variable threshold changes values at different points across the frequency spectrum.

If a variable threshold is selected, interference group engine104varies the threshold over the frequency spectrum. Interference group engine104may vary the threshold based on different factors. For example, the threshold may be changed at different frequencies to account for different tolerance levels of interference at different frequencies. Also, the thresholds, both fixed and variable, may be dynamically changed, such as based on time, temperature, or other operating conditions.

At408, interference group engine104selects the resolution of the threshold. The resolution of the threshold may be per channel, per sub-band, per sub-carrier, or some other combination. The resolution is selected because multiple comparisons across the frequency spectrum may be made based on the resolution.

At410, interference group engine104sets the threshold over the resolution selected. For example, interference group engine104may set the threshold of values over the frequency spectrum based on the resolution. In some embodiments, for each sub-carrier, channel, etc., interference group engine104sets a value for different segments of the frequency spectrum based on the resolution.

If a fixed threshold is being used, at412, interference group engine104sets a fixed threshold over the entire frequency spectrum. That is, the same threshold applies no matter what the resolution is or what frequency in the frequency spectrum is being compared.

Metric Processing

As described above, different metrics may be used for the threshold. In some cases, the measurements taken may be different from the metrics used for the threshold.FIG.5depicts a simplified flowchart500for generating metrics to compare to the threshold according to some embodiments. At502, interference group engine104collects measurements. The measurements may be taken at the sub-carrier level by modems112, but other resolutions may be used.

At504, interference group engine104calculates metric values based on the measurements. As discussed above, different metrics may be used and may be different from the measurements taken. For example, interference group engine104may convert modulation error ratio measurements to a standard deviation of modulation error ratio measurements.

At506, interference group engine104determines whether to process the metrics. For example, if a direct comparison is being performed on the sub-carrier level, then the metric does not need to be processed. Accordingly, at508, interference group engine104compares the metric values to the threshold. For example, interference group engine104may compare the modulation error ratio to the threshold on a per sub-carrier basis.

However, if the metric values need to be processed, at510, interference group engine104processes the metric values. The processed metrics may be an average of modulation error ratios or interference levels at sub-carriers in the channel or the sub-band and may be compared to a metric that is configured per channel or per sub-band. A standard deviation or variance of the modulation error ratios at sub-carrier frequencies in the channel or the sub-band can be used with the average modulation error ratio to compare to the metric that is configured per channel or per sub-band. A sub-carrier based comparison may also be used. The comparison may determine a certain percentage of sub-carriers that pass the comparison. The results of the comparisons may be summarized and then interference group engine104determines whether or not the cable modems interfere on the channel or the sub-band level. Accordingly, the decisions at the sub-carrier level may need to be processed to determine interference groups at the channel or the sub-band level.

A threshold may be processed also. For example, if a threshold is at the sub-carrier level, then interference group engine104may calculate the threshold over a different resolution, such as at the channel, the sub-band, or another frequency range resolution. At512, interference group engine104then compares the processed metric values to the threshold.

FIG.6depicts a simplified flowchart600for a more detailed method of processing the measurements according to some embodiments. At602, interference group engine104determines the resolution for the comparison. For example, the resolution may be per sub-carrier or another frequency range, such as per channel or per sub-band. At604, interference group engine104determines if the resolution is at the sub-carrier resolution. The measurements may be taken at the sub-carrier resolution and thus may or may not need to be processed depending on the resolution for the upcoming comparison. If the resolution for the comparison is at the sub-carrier level, then at606, interference group engine104calculates a metric value for each sub-carrier. For example, if the measurements were taken by cable modems112at the sub-carrier level, interference group engine104may determine the metric value for each sub-carrier from the measurements. At608, interference group engine104calculates interference groups based on comparison results for the sub-carriers. For example, interference group engine104may compare a sub-carrier measurement with a sub-carrier threshold value for each sub-carrier.

If the resolution is not at the sub-carrier level, at610, interference group engine104calculates a result for a resolution. The resolution may be for a spectrum frequency range greater than the sub-carrier, such as at the channel level, sub-band level, multiple sub-carrier groups, etc., or some variable frequency range. For example, one metric value may be based on a sub-carrier, another metric value may be based on a channel, etc. Also, a combination of using metric values at the sub-carrier level and another level (e.g., sub-band or channel) may be used. At612, interference group engine104calculates the interference groups based on comparison results over the resolution. The interference groups may be determined in different ways. For example, interference group engine104processes the metrics and thresholds and one decision is made based on a comparison. Or, interference group engine104determines multiple decisions and interference group engine104processes the decisions to determine one decision.

Metric Comparison Examples

FIG.7shows an example700of measurements across a frequency spectrum (f) according to some embodiments. At702, the modulation error ratio (MER) at a cable modem CM1resulting from interference from a signal from cable modem CM3. Also, at702-2, the modulation error ratio at a cable modem CM2resulting from a signal from a cable modem CM3is shown. In this example, the modulation error ratio is used as the metric, but other metrics may be used. To measure the modulation error ratio, cable modem CM3may send a signal and cable modems CM1and CM2measure the interference as a result of the signal. In this case, cable modems CM1and CM2measure the modulation error ratio. As shown, over the frequency spectrum, the modulation error ratio may vary. In the case of using modulation error ratio, the higher the value means the less interference is measured and thus, less interference. Accordingly, the modem is experiencing less interference as the modulation error ratio values increase.

FIG.8shows an example800of applying different thresholds to the metrics according to some embodiments. At802, a fixed threshold is shown, and at804, a variable threshold is shown. As shown, the fixed threshold is the same value across the entire frequency spectrum. However, the variable threshold changes values across the frequency spectrum.

In this example, the metric values at702-1for cable modem CM1from interference from cable modem CM3are above the fixed threshold. In this case, cable modem CM1and cable modem CM3experience low interference and may be in different interference groups. However, cable modem CM2and cable modem CM3may be in the same interference group because these modems experience a high level of interference. That is, the metric values found at702-2are below the fixed threshold and thus these modems may experience interference that is greater than desired. In this case, interference group engine104adds cable modem CM2and cable modem CM3to the same interference group such that these modems cannot transmit at the same time in the frequency spectrum.

Using the variable threshold, the same results occur. For example, at702-1, the metric values measured at cable modem CM1are above the variable threshold. Also, at702-2, the metric values measured at cable modem CM2are all below the variable threshold. Accordingly, the same interference groups are determined using the variable threshold.

In the above example, both types of thresholds resulted in the same interference groups. However, it is possible that different interference groups may be calculated based on the threshold used.FIG.9depicts an example900of how different interference groups are calculated using the different thresholds according to some embodiments. The metric values for cable modem CM1from interference by cable modem CM3are shown where the fixed threshold and variable threshold have the same value up to a point902in the frequency spectrum. After this point, the variable threshold decreases in value as the frequency increases, but the value of the fixed threshold stays the same. The metric values are always above the fixed threshold at frequencies before point902, and then at the point902, metric values go below the fixed threshold for frequencies after point902. In some embodiments, because the metric values go below the fixed threshold, interference group engine104determines that cable modem CM1and cable modem CM3are in the same interference group. However, because the metric values are always above the variable threshold throughout the frequency spectrum and interference is low, interference group engine104determines that cable modem CM1and cable modem CM3are in different interference groups. The isolation of the ports of taps may variable across frequency. It is normally specified with a single high value. However, the actual performance may be below the specified value, but will be variable across frequency. In the above, interference group engine104determined the interference groups across the entire frequency spectrum based on a comparison. That is, the interference group decision is the same for all sub-bands, channels, and sub-carriers. However, interference group engine104may make interference group decisions based on frequency ranges that are smaller than the frequency spectrum, such as at the sub-band level, sub-carrier level, or other frequency ranges.FIG.10depicts an example of a graph1000for determining interference groups using frequency ranges smaller than the frequency spectrum according to some embodiments. The frequency spectrum has been broken up into three sub-bands1002-1,1002-2, and1002-3. Each sub-band is associated with a different frequency range in the frequency spectrum. Interference group engine104may perform the comparisons per sub-band. For example, in first sub-band1002-1, interference group engine104compares the metric values from702-2to the fixed threshold and the variable threshold. In first sub-band1002-1, the metric values for cable modem CM1from interference from cable modem CM3are all above both the fixed threshold and the variable threshold.

For second sub-band1002-2, interference group engine104compares the metric values at frequencies within second sub-band1002-2to the fixed threshold and the variable threshold. Similar to first sub-band1002-1, the metric values are above both the fixed threshold and the variable threshold in second sub-band1002-2.

In the third sub-band1002-3, interference group engine104determines that the metric values are above the variable frequency threshold for all of the frequency values in third sub-band1002-3. However, the metric values go below the fixed threshold at a point1004in third sub-band1002-3and continue below the fixed threshold for the frequencies after point1004.

Interference group engine104may determine different interference groups based on different methodologies based on the above scenario. For example, interference group engine104may use a least common denominator across all sub-bands1002. That is, if one sub-band fails the comparison, then all sub-bands are considered to have interference, and interference group engine104determines that the respective cable modems112are in the same interference group. Using this methodology, interference group engine104determines that cable modem CM1and cable modem CM3are in different interference groups if the variable threshold is used because the metric values are always above the variable threshold. However, interference group engine104determines that cable modem CM1and cable modem CM3are in the same interference group when using the fixed threshold because the metric values went below the fixed threshold in third sub-band1002-3.

Interference group engine104may also use another methodology, such as applying a threshold per sub-band. Using this methodology, interference group engine104may determine that cable modem CM1and cable modem CM3are in different interference groups for first sub-band1002-1and second sub-band1002-2when using the fixed threshold, but in the same interference group for third sub-band1002-3when using the fixed threshold. Using the above interference group determination, cable modem CM1and cable modem CM3may communicate at the same time without restrictions when using first sub-band1002-1and second sub-band1002-2. However, when using third sub-band1002-3, cable modem CM1and cable modem CM3are restricted from communicating in different directions at the same time in the same frequency range. For example, when one cable modem is communicating using third channel1000-3in one direction, other cable modems in the same interference group are restricted from communicating using third channel1002-3in the other direction in the same frequency range. cable modem CM1and cable modem CM3may communicate at the same time if transmitting together without receiving any signals in the same frequency range or receiving together without transmitting in the same frequency range. Using the per sub-band comparison may create an optimal interference group configuration that provides more flexibility in traffic scheduling because only specific sub-band that may have interference include restrictions on traffic scheduling.

In other examples, a combination of the least common denominator and the per sub-band may be used. A subset of the sub-band may use the least common denominator method while other sub-band may use the per sub-band method. Other resolutions may also be used, such as the decision may be made on a channel, a sub-carrier, or another frequency range.

Conclusion

Accordingly, by using a threshold across a frequency spectrum, interference group engine104can determine the interference groups in different ways. The determination of the interference group may minimize the interference experienced by cable modems while limiting the restrictions on traffic scheduling. For example, the calculation on which cable modems are in the interference groups may be determined on different granularities of the frequency spectrum, such as on the sub-band, channel, or sub-carrier granularities.

EMBODIMENTS

In some embodiments, a method includes: setting, by a computing device, a threshold over a frequency spectrum; receiving, by the computing device, a set of measurements that measures interference between a set of network devices over the frequency spectrum; comparing, by the computing device, a set of metric values based on the set of measurements to the threshold at a plurality of points over the frequency spectrum; and selecting, by the computing device, whether the set of network devices are in a group that interfere with communications of each other based on the comparing.

In some embodiments, the threshold includes a fixed threshold across the frequency spectrum, and comparing the metric includes: comparing the set of metric values to the fixed threshold at the plurality of points.

In some embodiments, the threshold comprises a variable threshold across the frequency spectrum, and comparing the metric includes: comparing the set of metric values to the variable threshold at the plurality of points.

In some embodiments, receiving the set of measurements includes: receiving the set of measurements from one or more signals received from one or more network devices while another network device transmits a signal.

In some embodiments, the set of measurements are used to measure interference in the one or more signals received by the one or more network devices from the signal transmitted by the another network device.

In some embodiments, the method includes processing the set of measurements are received at a first granularity and the set of metric values are calculated at a second granularity.

In some embodiments, the first granularity is a sub-carrier level, and the second granularity is a level that includes a plurality of sub-carriers.

In some embodiments, a value at the second granularity in the set of metric values is calculated using a plurality of measurements at the first granularity.

In some embodiments, selecting whether the set of network devices are in the group that interfere with communications of each other includes: calculating a first set of results at a first granularity; calculating a second set of results at a second granularity using the first set of results at the first granularity; and using the second set of results at the second granularity to determine whether the set of network devices are in the group that interfere with communications of each other.

In some embodiments, the first granularity is a sub-carrier level, the second granularity is a channel level or sub-band level, wherein the channel level or sub-band level include a plurality of sub-carriers, and the second set of results are compared to the threshold.

In some embodiments, selecting whether the set of network devices are in the group that interfere with communications of each other includes: processing the set of metric values at a first granularity to generate a set of metric values at a second granularity; and using the set of metric values at the second granularity to determine whether the set of network devices are in the group that interfere with communications of each other.

In some embodiments, selecting whether the set of network devices are in the group that interfere with communications of each other includes: wherein the group is included in a plurality of groups associated with a plurality of frequency ranges, wherein the set of network devices are placed in the plurality of groups per frequency range in the plurality of frequency ranges.

In some embodiments, the plurality of frequency ranges are one or more of a plurality of channels or a plurality of sub-bands in which the set of network devices communicate.

In some embodiments, the plurality of frequency ranges are one or more frequency ranges in which the set of network devices communicate.

In some embodiments, a non-transitory computer-readable storage medium containing instructions that, when executed, control a computer system to be operable for: setting a threshold over a frequency spectrum; receiving a set of measurements that measures interference between a set of network devices over the frequency spectrum; comparing a set of metric values based on the set of measurements to the threshold at a plurality of points over the frequency spectrum; and selecting whether the set of network devices are in a group that interfere with communications of each other based on the comparing.

In some embodiments, the threshold comprises a fixed threshold across the frequency spectrum, and comparing the metric includes: comparing the set of metric values to the fixed threshold at the plurality of points.

In some embodiments, the threshold comprises a variable threshold across the frequency spectrum, and comparing the metric includes: comparing the set of metric values to the variable threshold at the plurality of points.

In some embodiments, processing the set of measurements are received at a first granularity and the set of metric values are calculated at a second granularity

In some embodiments, selecting whether the set of network devices are in the group that interfere with communications of each other includes: wherein the group is included in a plurality of groups associated with a plurality of frequency ranges, wherein the set of network devices are placed in the plurality of groups per frequency range in the plurality of frequency ranges.

In some embodiments, an apparatus includes: one or more computer processors; and a non-transitory computer-readable storage medium comprising instructions, that when executed, control the one or more computer processors to be operable for: setting a threshold over a frequency spectrum; receiving a set of measurements that measures interference between a set of network devices over the frequency spectrum; comparing a set of metric values based on the set of measurements to the threshold at a plurality of points over the frequency spectrum; and selecting whether the set of network devices are in a group that interfere with communications of each other based on the comparing.

System

FIG.11illustrates an example of special purpose computer systems1100according to some embodiments. Computer system1100includes a bus1102, network interface1104, a computer processor1106, a memory1108, a storage device1110, and a display1112.

Bus1102may be a communication mechanism for communicating information. Computer processor1106may execute computer programs stored in memory1108or storage device1110. Any suitable programming language can be used to implement the routines of some embodiments including C, C++, Java, assembly language, etc. Different programming techniques can be employed such as procedural or object oriented. The routines can execute on a single computer system1100or multiple computer systems1100. Further, multiple computer processors1106may be used.

Memory1108may store instructions, such as source code or binary code, for performing the techniques described above. Memory1108may also be used for storing variables or other intermediate information during execution of instructions to be executed by processor1106. Examples of memory1108include random access memory (RAM), read only memory (ROM), or both.

Storage device1110may also store instructions, such as source code or binary code, for performing the techniques described above. Storage device1110may additionally store data used and manipulated by computer processor1106. For example, storage device1110may be a database that is accessed by computer system1100. Other examples of storage device1110include random access memory (RAM), read only memory (ROM), a hard drive, a magnetic disk, an optical disk, a CD-ROM, a DVD, a flash memory, a USB memory card, or any other medium from which a computer can read.

Memory1108or storage device1110may be an example of a non-transitory computer-readable storage medium for use by or in connection with computer system1100. The non-transitory computer-readable storage medium contains instructions for controlling a computer system1100to be configured to perform functions described by some embodiments. The instructions, when executed by one or more computer processors1106, may be configured to perform that which is described in some embodiments.

Computer system1100includes a display1112for displaying information to a computer user. Display1112may display a user interface used by a user to interact with computer system1100.

Computer system1100also includes a network interface1104to provide data communication connection over a network, such as a local area network (LAN) or wide area network (WAN). Wireless networks may also be used. In any such implementation, network interface1104sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information.

Computer system1100can send and receive information through network interface1104across a network1114, which may be an Intranet or the Internet. Computer system1100may interact with other computer systems1100through network1114. In some examples, client-server communications occur through network1114. Also, implementations of some embodiments may be distributed across computer systems1100through network1114.

Some embodiments may be implemented in a non-transitory computer-readable storage medium for use by or in connection with the instruction execution system, apparatus, system, or machine. The computer-readable storage medium contains instructions for controlling a computer system to perform a method described by some embodiments. The computer system may include one or more computing devices. The instructions, when executed by one or more computer processors, may be configured to perform that which is described in some embodiments.

As used in the description herein and throughout the claims that follow, “a”, “an”, and “the” includes plural references unless the context clearly dictates otherwise. Also, as used in the description herein and throughout the claims that follow, the meaning of “in” includes “in” and “on” unless the context clearly dictates otherwise.

The above description illustrates various embodiments along with examples of how aspects of some embodiments may be implemented. The above examples and embodiments should not be deemed to be the only embodiments, and are presented to illustrate the flexibility and advantages of some embodiments as defined by the following claims. Based on the above disclosure and the following claims, other arrangements, embodiments, implementations and equivalents may be employed without departing from the scope hereof as defined by the claims.