dynamic/adaptive QoS

Dynamic Bandwidth Management (DBM)

Dynamic bandwidth management (also known as per user bandwidth allocation) is an advanced feature of per user bandwidth control (see details).

With this feature, instead of statically fixed a per user bandwidth, mbox correlates the subscribed backhaul bandwidth and actual usage (no. of active devices) to efficiently and fairly allocate per device/user access speed, so that we can fully utilize the available backhaul bandwidth.

E.g.: Assume a subscribed backhaul of 100 Mbps,

In order for this dynamic access speed allocation to work accurately, there are two key measurements:

    • Measuring backhaul bandwidth. Backhaul speed is the numerator in above equation, and its value must be equivalent to the available upstream link capacity in order for theoretical results to be consistent with actual experiences. Using mbox network-based QoS techniques, we can accurately provision backhaul bandwidth to match the subscribed speed.
    • Measuring of “Active” devices. This is the denominator in above equation, and it’s very important to be accurate. Particularly in the case of open public Wi-Fi network, many phones/devices are auto associated to the Wi-Fi SSID without users’ awareness (without users actively using the network). If we count all the associated devices as “Active” devices, the total device nos. will be falsely high, and allocated per device access speed will be falsely low, ending up with inefficient use of backhaul again. mbox only counts the users who have started browsing as “active” users.

Configuration of dynamic bandwidth allocation is done under hotspot configuration. Each instance is mapped to a VLAN or network, with the allocated upstream backhaul bandwidth. PS: below command is applicable to both HSG and HSA.

-----------------------------------------------------------------------!security hotstpot vlan10 client-bandwidth dynamic <backhaul_download> <backhaul_upload> minimum <min_download> <min_upload> maximum <max_download> <max_upload> .................!-----------------------------------------------------------------------
    • <min_download> <min_upload> is the min guaranteed per user bandwidth. However, do note that if the backhaul is extremely congested, no user can be guaranteed. eg. for a 100Mbps link, if we configured min 2Mbps per user, but if there’re more than 50 active users, they will not be able to have guaranteed bandwidth.
    • <max_download> <max_upload> is the maximum capped bandwidth during burst. This is an optional entry. Sometimes it’s desirable to cap per user bandwidth when the usage is low. For example, if there’s only 1 user with a 100Mbps backhaul, without maximum cap the user will be dynamically allocated with 100Mbps bandwidth, which can be a potential risk, eg. one user could use the network (with huge backhaul) to launch DDoS attack to bring down some target office networks, many of which are still using 10, 20 or 50Mbps link speed.

Adaptive User Bandwidth Control (AUBC)

AUBC is to be a more advanced technique targeting at public hotspot networks or visitor based networks, such as public WiFi network, eg. shopping malls, cafes, retail outlets, and hospitalities network eg. hotels, hostels, hospitals, etc.

mbox correlates the actual ISP link usage with its subscribed capacity and adaptively adjusts per user speed, so that each user can burst to an allowable speed/bandwidth when the Internet link usage is low, and slow down when the Internet link is reaching congestion.

This technique will fully utilize ISP link capacity to maximize user experience. There are two techniques used in the AUBC process:

  • Real-time monitoring of ISP link utilization
  • Controlling per user bandwidth based on proprietary algorithms.

AUBC can be applied globally, or apply to a particular hotspot instance only.

  1. when it's applied globally, mbox tracks the total upstream bandwidth usage and applies the bandwidth control to all hotspot users (across all VLANs/instances)
  2. when it's applied to a particular VLAN/instance only, mbox tracks the bandwidth usage for the instance only and applies the bandwidth control to users within the instance.

Below command apply to global control:

-----------------------------------------------------------------------!security hotspot adaptive eth0 10000000 10000000 1 maximum 5000000 5000000 minimum 2048000 2048000!-----------------------------------------------------------------------

where:

10000000 is the total backhaul (ISP link) upload/download speed

1 is the tracking interval (in minute)

5000000 is the maximum per user speed (upload/download)

2048000 is the minimum per user speed (upload/download). Note this is not guaranteed if the back-haul is congested.