Problem:
Why is bandwidth contract not working for some of the SSID's configured on an Aruba Instant.
Diagnostics:Bandwidth contracts can be configured on an Aruba Instant deployment for the SSID's or per User basis. Suddenly the user may see that the bandwidth contract is not applied which means the user will experience unlimited speed regardless of the contract.
The reason that the bandwidth contract is not working because the contract ID's with respect to the SSID will be missing from the AP datapath for that specific ACL which can be found using below commands.
Output from VC:
ArubaInstant-VC# sho datapath bwm-table
Received BWM Config:
--------------------
ACL DIR Contract-ID PerUser UseCount Rate
--- --- ----------- ------- -------- ----
131 up 2 0 1 3000000
131 down 1 0 1 5000000
139 up 4 0 179 3000000
139 down 3 0 179 5000000
141 up 6 0 108 3000000
141 down 5 0 108 5000000
Allocated Contracts:
--------------------
Contract-ID Rate UseCount ACL Available-Bytes Max-Bytes Policed-Bytes Queued-Bytes Queued-Pkts Dropped-pkts
----------- ---- -------- --- --------------- --------- ------------- ------------ ----------- ------------
1 5000000 1 0/0 19532 19532 0 0 0 0
2 3000000 1 0/0 11719 11719 0 0 0 0
3 5000000 2 0/0 19532 19532 3591 0 0 0
4 3000000 2 0/0 11719 11719 1099 0 0 0
5 5000000 1 0/0 19532 19532 941 0 0 0
6 3000000 1 0/0 11719 11719 3142 0 0 0
Bandwidth Contracts for cpu type 0 has 6 contracts
BWM divisor for type:0 : 32(32)
1(cpu:0): flags 0, 5000192 bps, policed 0, dropped 0 queued 0/0, avail 19532, pktq 0/0 0/0 r:5000000 t:0
2(cpu:0): flags 0, 3000064 bps, policed 0, dropped 0 queued 0/0, avail 11719, pktq 0/0 0/0 r:3000000 t:0
3(cpu:0): flags 0, 5000192 bps, policed 3591, dropped 0 queued 0/0, avail 19532, pktq 0/0 0/0 r:5000000 t:1187215949
4(cpu:0): flags 0, 3000064 bps, policed 1099, dropped 0 queued 0/0, avail 11719, pktq 0/0 0/0 r:3000000 t:673355543
5(cpu:0): flags 0, 5000192 bps, policed 941, dropped 0 queued 0/0, avail 19532, pktq 0/0 0/0 r:5000000 t:4154951200
6(cpu:0): flags 0, 3000064 bps, policed 3142, dropped 0 queued 0/0, avail 11719, pktq 0/0 0/0 r:3000000 t:811765261
Bandwidth Contracts for cpu type 0 has 0 cp contracts total queued in CPU 0 total queing fail 0
Queued pkts in cpus:
ArubaInstant-VC#
Output from Slave which has missing Contract ID:
In the below output we can see that the contract ID "3&4" is missing to which the users associated to an SSID which has this bandwidth contract assigned to the WLAN access rule, bandwidth throttle will not work.
ArubaInstant-Slave1# sho datapath bwm-table
Received BWM Config:
--------------------
ACL DIR Contract-ID PerUser UseCount Rate
--- --- ----------- ------- -------- ----
131 up 2 0 1 3000000
131 down 1 0 1 5000000
139 up 4 0 63 3000000
139 down 3 0 63 5000000
141 up 6 0 0 3000000
141 down 5 0 0 5000000
Allocated Contracts:
--------------------
Contract-ID Rate UseCount ACL Available-Bytes Max-Bytes Policed-Bytes Queued-Bytes Queued-Pkts Dropped-pkts
----------- ---- -------- --- --------------- --------- ------------- ------------ ----------- ------------
1 5000000 1 0/0 19532 19532 0 0 0 0
2 3000000 1 0/0 11719 11719 0 0 0 0
5 5000000 1 0/0 19532 19532 0 0 0 0
6 3000000 1 0/0 11719 11719 0 0 0 0
Bandwidth Contracts for cpu type 0 has 6 contracts
BWM divisor for type:0 : 32(32)
1(cpu:0): flags 0, 5000192 bps, policed 0, dropped 0 queued 0/0, avail 19532, pktq 0/0 0/0 r:5000000 t:0
2(cpu:0): flags 0, 3000064 bps, policed 0, dropped 0 queued 0/0, avail 11719, pktq 0/0 0/0 r:3000000 t:0
3(cpu:0): flags 0, 5000192 bps, policed 0, dropped 0 queued 0/0, avail 19532, pktq 0/0 0/0 r:5000000 t:0
4(cpu:0): flags 0, 3000064 bps, policed 0, dropped 0 queued 0/0, avail 11719, pktq 0/0 0/0 r:3000000 t:0
5(cpu:0): flags 0, 5000192 bps, policed 0, dropped 0 queued 0/0, avail 19532, pktq 0/0 0/0 r:5000000 t:0
6(cpu:0): flags 0, 3000064 bps, policed 0, dropped 0 queued 0/0, avail 11719, pktq 0/0 0/0 r:3000000 t:0
Bandwidth Contracts for cpu type 0 has 0 cp contracts total queued in CPU 0 total queing fail 0
Queued pkts in cpus:
ArubaInstant-Slave-1#
SolutionTemporary workaround is to restart the IAP which has missing Contract ID or restart the STM module with below command.
ArubaInstant-Slave1#process restart stm
This issue has been fixed in the latest version of 6.5.4.4.
Bug#172058