You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

This Page is under Development

Introduction

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,

  • Wireless Client Capacity
  • Signal Strength in current and target band
  • Bandwidth Utilization in current and target band
  • Steering History
  • Wireless Client Activity (Inactive Client/ Active Client)

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.

Design Considerations

Decision Overview

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-raspberypi layer.

WiFi HAL Changes

Modified Wifi Hal APIs related to Band Steering are as follows,

wifi_setBandSteeringEnable

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".

wifi_getBandSteeringEnable

Returns the Band Steering status of the device, this is done by using the syscfg get "band_steering_enable" variable.

wifi_getBandSteeringCapability

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.

Other Component Changes

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.


Architecture

  • Layout


  • Communication

          <Describe the communication between the sub-systems. (Diagrams may be used to illustrate communications). >

External Interfaces (Input/Output files or data sets)

< Identify input interfaces, function call protocol, and the nature of the data structures passed across the interface between the sub-modules>

< Identify output interfaces, function call protocol, and the nature of the data structures passed across the interface. >

Data Model

  • Device.WiFi.X_RDKCENTRAL-COM_BandSteering.Enable
  • Device.WiFi.X_RDKCENTRAL-COM_BandSteering.APGroup
  • Device.WiFi.X_RDKCENTRAL-COM_BandSteering.Capability
  • Device.WiFi.X_RDKCENTRAL-COM_BandSteering.History
  • Device.WiFi.X_RDKCENTRAL-COM_BandSteering.<radio-index>.UtilizationThreshold
  • Device.WiFi.X_RDKCENTRAL-COM_BandSteering.<radio-index>.RSSIThreshold
  • Device.WiFi.X_RDKCENTRAL-COM_BandSteering.<radio-index>.PhyRateThreshold
  • Device.WiFi.X_RDKCENTRAL-COM_BandSteering.<radio-index>.OverloadInactiveTime
  • Device.WiFi.X_RDKCENTRAL-COM_BandSteering.<radio-index>.IdleInactiveTime

Limitations

             < Describe the cases that are identified as problem but unable to report to it due to various factors. Describe the factors >

Future Enhancements

            < Describe how the current design is suitable for future enhancement without completely modifying existing design . >

  • No labels