Class UnmanagedApAwareChannelOptimizer
- java.lang.Object
-
- com.facebook.openwifi.rrm.optimizers.channel.ChannelOptimizer
-
- com.facebook.openwifi.rrm.optimizers.channel.LeastUsedChannelOptimizer
-
- com.facebook.openwifi.rrm.optimizers.channel.UnmanagedApAwareChannelOptimizer
-
public class UnmanagedApAwareChannelOptimizer extends LeastUsedChannelOptimizer
Unmanaged AP aware least used channel optimizer.Randomly assign APs to the channel with the least channel weight, where channel weight = DEFAULT_WEIGHT * (number of unmanaged APs) + (number of managed APs).
-
-
Field Summary
Fields Modifier and Type Field Description static StringALGORITHM_IDThe RRM algorithm ID.-
Fields inherited from class com.facebook.openwifi.rrm.optimizers.channel.LeastUsedChannelOptimizer
OVERLAP_WINDOW, rng
-
Fields inherited from class com.facebook.openwifi.rrm.optimizers.channel.ChannelOptimizer
AVAILABLE_CHANNELS_WIDTH, deviceConfigs, MIN_CHANNEL_WIDTH, model, PRIORITY_CHANNELS_2G, zone
-
-
Constructor Summary
Constructors Constructor Description UnmanagedApAwareChannelOptimizer(Modeler.DataModel model, String zone, DeviceDataManager deviceDataManager)Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Map<Integer,Integer>getOccupiedChannels(String band, String serialNumber, int channelWidth, List<Integer> availableChannelsList, Map<String,List<WifiScanEntry>> deviceToWifiScans, Map<String,Map<String,Integer>> channelMap, Map<String,String> bssidsMap)Get the current occupied channel info of the device.static UnmanagedApAwareChannelOptimizermakeWithArgs(Modeler.DataModel model, String zone, DeviceDataManager deviceDataManager, Map<String,String> args)Factory method to parse generic args map into the proper constructor-
Methods inherited from class com.facebook.openwifi.rrm.optimizers.channel.LeastUsedChannelOptimizer
computeChannelMap, getNewChannel, getOccupiedOverlapChannels, getScanRespsByBandwidth, getSortedAPs
-
Methods inherited from class com.facebook.openwifi.rrm.optimizers.channel.ChannelOptimizer
calculatePerfMetrics, getChannelWidthFromWiFiScan, getCoveredChannels, getCurrentChannel, getDeviceToWiFiScans, getPrimaryChannel, logPerfMetrics, updateAvailableChannelsList, updateDeviceApConfig
-
-
-
-
Field Detail
-
ALGORITHM_ID
public static final String ALGORITHM_ID
The RRM algorithm ID.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
UnmanagedApAwareChannelOptimizer
public UnmanagedApAwareChannelOptimizer(Modeler.DataModel model, String zone, DeviceDataManager deviceDataManager)
Constructor.
-
-
Method Detail
-
makeWithArgs
public static UnmanagedApAwareChannelOptimizer makeWithArgs(Modeler.DataModel model, String zone, DeviceDataManager deviceDataManager, Map<String,String> args)
Factory method to parse generic args map into the proper constructor
-
getOccupiedChannels
protected Map<Integer,Integer> getOccupiedChannels(String band, String serialNumber, int channelWidth, List<Integer> availableChannelsList, Map<String,List<WifiScanEntry>> deviceToWifiScans, Map<String,Map<String,Integer>> channelMap, Map<String,String> bssidsMap)
Description copied from class:LeastUsedChannelOptimizerGet the current occupied channel info of the device.- Overrides:
getOccupiedChannelsin classLeastUsedChannelOptimizer- Parameters:
band- the operational bandserialNumber- the devicechannelWidth- the channel bandwidth (MHz)availableChannelsList- the available channels of the devicedeviceToWifiScans- the filtered and reorganized wifiscan results- Returns:
- map of channel to score/weight/# APs
-
-