RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
...
Table of Contents | ||
---|---|---|
|
Band Steering is a solution ensures that clients are connected to the best radio. Dual Band supported Gateway can transmit SSIDs in both 2.4GHz and 5GHz frequency band. Band Steering solution does upgrade steering ( from 2.4 GHz to 5 GHz) and downgrade steering (5 GHz to 2.4 GHz) which allows optimal utilization of both bands. The Steering of the Wireless clients are based on the following parameter,
...
The purpose of Band Steering feature is to maintain Wireless Clients in band best suited to them. For instance, a 5GHz capable client would be maintained in faster & wider-channeled 5GHz band but if the Received Signal Strength is lesser than the threshold value, the Client is moved to a wider-range 2.4GHz band.
The most basic prerequisite of Band Steering is both the 2.4GHz and the 5GHz frequency band must have the same SSID and passphrase. The wireless Clients will be steered to a better band only if SSID and password are same. So before performing Band Steering operations, same SSID, Authentication Mechanism and passphrase are set to both 2.4GHz and 5GHz band. The enable & disabling of the Band Steering feature is done by dmcli command. Changes are done in WiFiHal and meta-cmf-raspberrypi layer.
Modified Wifi Hal APIs related to Band Steering are as follows,
On Enabling, checks if the Device is dual band capable and makes sure that the SSID, passphrase and Authentication mechanism is same in both 2.4GHz and 5GHz. Sets syscfg value for "band_steering_enable" as "1"
When disabled, resets the configured SSIDs, passphrase and Authentication Mechanism in 5GHz band. Also sets syscfg value for "band_steering_enable" as "0".
Returns the Band Steering status of the device, this is done by using the syscfg get "band_steering_enable" variable.
Returns true if the device can transmit SSID in both 2.4GHz and 5GHz band, else return false. The return type is the device capability to support Band Steering Feature.
A compilation flag is defined to include WiFi Band Steering related calls in the CcspWifiAgent component.
System default is added with name "band_steering_enable" to track band steering status, whether enabled/disbaled.
...
a. Client has associated with a non-preferred band, RSSI is checked if it is above threshold. If it is above threshold, client is disassociated from the band and Steered to preferred band using Pre-association procedure.
RSSI is the Received Signal Strength of the probe request sent by the Client to the APs for connection establishment. RSSI will always be a negative value when converted to dbm.
...
For this, the events generated when the clients probe requests to gateway have to be captured. If the clients probe request to 2.4GHz band always, they are considered to be capable of connecting only to 2.4GHz. If the clients are found to be probing requests on both 2.4GHz and 5GHz band, then they are capable of connecting to 5GHz network.
Command to obtain Signal Level value for multiple client:
...
The above command will check if client has probed any request to gateway in 5GHz band. If the value is NULL, it will remain connected in 2.4GHz.
draw.io Diagram | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Band Utilization is the number of channel bands occupied by clients. The Utilization threshold is set to a default value. When the Number of Clients connected to 5GHz band are more than the threshold value, the clients have to be steered to 2.4GHz band. This is done to improve the network quality to the connected clients.
...
Hence, the RSSI threshold and Utilization threshold implementations have to be combined to achieve a better Band Steering.
a. Density/Number of Clients in the Band
...
Need the information from driver
draw.io Diagram | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Layout
draw.io Diagram | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Frequency Band Client is connected to | Client capability for 5GHz | Expected behavior | Current behavior | |
RSSI signal < RSSI Threshold | RSSI signal >= RSSI Threshold | |||
5GHz | Y | Switch to 2.4GHz | Remain in 5GHz | Pass |
2.4GHz | Y | Remain in 2.4GHz | Switch to 5GHz | Pass |
2.4GHz | N | Remain in 2.4GHz | Remain in 2.4GHz | Pass |
Please refer to User Manual for Band Steering for further details.
S.no | Module | dmcli command | Description |
---|---|---|---|
1 | WiFi - TR181-WiFi-USGv2.XML | Device.WiFi.X_RDKCENTRAL-COM_BandSteering.Enable | used to enabled/disbaled Band Steering |
2 | WiFi - TR181-WiFi-USGv2.XML | Device.WiFi.X_RDKCENTRAL-COM_BandSteering.APGroup | sets/returns AP Group name |
3 | WiFi - TR181-WiFi-USGv2.XML | Device.WiFi.X_RDKCENTRAL-COM_BandSteering.Capability | returns Band Steering Device level capability |
4 | WiFi - TR181-WiFi-USGv2.XML | Device.WiFi.X_RDKCENTRAL-COM_BandSteering.History | History of Clients Steered across bands |
5 | WiFi - TR181-WiFi-USGv2.XML | Device.WiFi.X_RDKCENTRAL-COM_BandSteering.<radio-index>.UtilizationThreshold | Bandwidth Utilization threshold for 2.4/5 GHz |
6 | WiFi - TR181-WiFi-USGv2.XML | Device.WiFi.X_RDKCENTRAL-COM_BandSteering.<radio-index>.RSSIThreshold | Signal Strength threshold for 2.4/5 GHz |
7 | WiFi - TR181-WiFi-USGv2.XML | Device.WiFi.X_RDKCENTRAL-COM_BandSteering.<radio-index>.PhyRateThreshold | Physical Transmit rate thresholdrate for a Client in a band |
8 | WiFi - TR181-WiFi-USGv2.XML | Device.WiFi.X_RDKCENTRAL-COM_BandSteering.<radio-index>.OverloadInactiveTime | Threshold inactive time of a client during band overload condiiton |
9 | WiFi - TR181-WiFi-USGv2.XML | Device.WiFi.X_RDKCENTRAL-COM_BandSteering.<radio-index>.IdleInactiveTime | Threshold inactive time of a client during Idle condiiton |
...