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 String
ALGORITHM_ID
The 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 UnmanagedApAwareChannelOptimizer
makeWithArgs(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:LeastUsedChannelOptimizer
Get the current occupied channel info of the device.- Overrides:
getOccupiedChannels
in 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
-
-