Controller Based WLANs

How do bandwidth contracts work?

by on ‎07-02-2014 04:38 PM

Product and Software: This article applies to all Aruba controllers and ArubaOS versions.


To find out whether a bandwidth contract will be applied to a particular role, issue the 'show rights' command:


(arub) #show rights

RoleTable
---------
Name          ACL Bandwidth                 ACL List  Type
----          --- ---------                 --------  ----
ap-role         4 Up: No Limit,Dn: No Limit           System
cpbase         12 Up: No Limit,Dn: No Limit cpbase    System
denyall        10 Up: No Limit,Dn: No Limit denyall   System
guest           3 Up: No Limit,Dn: No Limit           System
guest-logon     7 Up: No Limit,Dn: No Limit           System
logon           1 Up: No Limit,Dn: No Limit           System
stateful-dot1x  5 Up: No Limit,Dn: No Limit           System
trusted-ap      6 Up: No Limit,Dn: No Limit           System



To find out whether a bandwidth contract is being applied to a specific user, issue the 'show user' command:

(Aruba800) #show user ip 10.100.119.92

Name: localuser, IP: 10.100.119.92, MAC: 00:30:65:28:3f:a7, Role:authenticated, ACL:17, Age: 00:00:01

Authentication: Yes, status: successful, method: 802.1x, protocol: EAP-TTLS, server: apang

Bandwidth contract = 20m (20000000 bits/sec)

Role Derivation: default for authentication type 802.1x

Idle timeouts: 0, ICMP requests sent: 0, replies received: 0

Mobility state - Home Agent: Yes, Proxy ARP: No, Tunnel ID: 0

Flags: internal=0, trusted_ap=0, delete=0, roaming=0

Flags: innerip=0, outerip=0, guest=0, station=0, download=1

Auth fails: 0, phy_type: 2, reauth: 0, Bwm Contract: 1

Vlan default: 1, Assigned: 0, Current: 0
Mobility Messages: L2=0, Move=0, Inter=0, Intra=0, ProxyArp=0, Flags=0x0

Tunnel=0, SlotPort=0x1021, Port=4169

Role assigned: n/a, VPN: n/a, Dot1x: n/a


To find out the statistics for a particular contract, first find out what contracts have been configured by issuing the 'show aaa bandwidth-contracts' command:

(Aruba800) #show aaa bandwidth-contracts

Contract Id  Rate (bits/second)
-------- --  ------------------
20m       1  20000000


Total contracts = 1 (user configured = 1)


Then to find out the statistics on that particular contract ID, issue the 'show datapath bwm table' command:

(aruba) #show datapath bwm table

Datapath Bandwidth Management Table Entries
-------------------------------------------
CPU  Contract Bits/sec   Policed    Avail Bytes Queued Bytes/Pkts
---  -------- ---------  ---------- ----------- -----------------
0    1        200000000      0       781136           0/0
0    2        200000000 565327        78125           0/0
0    3        20000000       0        78125           0/0
0    4        10000128       0        39063           0/0
0    5        500000000      0      1953125           0/0
0    6        5000192        0        19532           0/0

 

When the controller is under stress, use the 'show datapath bwm table' command to check the type of traffic that is consuming a lot of CPU. If the Policed and Queued Bytes/Pkts columns have non-zero values and they continue to increment, the network may have a lot of that specific type of traffic. This information helps to narrow down the problem.

#show datapath bwm

Datapath Bandwidth Management Table Entries
-------------------------------------------
CPU Contract Bits/sec   Policed   Avail Bytes Queued Bytes/Pkts
--- -------- --------- ---------- ----------- -----------------
0    1       20000000   0           78125         0/0
0    2        4000000   0           15625         0/0
0    3      160000000   0          625000         0/0
0    4        4000000   0           15625         0/0
0    5        2000128   0            7813         0/0
0    6        2000128   0            7813         0/0
0    7        2000128   0            7813         0/0
1    1        5000192   0           19532         0/0
1    2         256000   0            1000         0/0


Bandwidth contract 1 to contract 7 for CPU 0 are built in to the system:

  • Contract 1: untrusted unicast
  • Contract 2: untrusted multicast
  • Contract 3: trusted unicast
  • Contract 4: trusted multicast, that is, BPDU packets
  • Contract 5: frames that need to be routed
  • Contract 6: session mirror packets
  • Contract 7: user miss frames

Bandwidth contracts for CPU 1 are the user-defined bandwidth contracts.

The best practice is to apply bandwidth contracts to user VLANs to reduce the amount of broadcast and multicast traffic. This contract also drops good broadcast traffic. When the same contract is applied to multiple VLANs, the resources are shared by a single buffer. A separate contract should be used when the resources are low. Review the following example.

"test1" has a contract ID of 3 and it only has 100 bytes of buffer free. The buffer could also go to zero. Assign some user VLANs to a new bandwidth contract. In the following example, "test2" is the new contract.


Sample Output

(SanLeandro2400) #show aaa bandwidth-contracts

Bandwidth Contracts
-------------------
Contract Id Rate (bits/second)
-------- -- ------------------
test     1   100000000
test1    3   256000       <<<< "test1" with ID of 3
test2    2   256000

Total contracts = 3
Per-user contract total = 4096
Per-user contract usage = 0


(SanLeandro2400) #
(SanLeandro2400) #
(SanLeandro2400) #show datapath bwm table

Datapath Bandwidth Management Table Entries
-------------------------------------------
CPU Contract Bits/sec  Policed     Avail Bytes Queued Bytes/Pkts
--- -------- --------- ---------- ----------- -----------------
0      1     10000000         0     312500          0/0
0      2      2000000         0      62500          0/0
0      3     80000000         0    2499886          0/0
0      4      2000000    687313      61798          0/0
0      5      1000000         0      31250          0/0
0      6      1000000         0      31250          0/0
0      7      1000000         0      31250          0/0
1      1    100000000         0    3125000          0/0
1      2       256000         0       8000          0/0
1      3       256000  12384848        100          0/0 <<< Contract ID #3

Search Airheads
Showing results for 
Search instead for 
Did you mean: 
Is this a frequent problem?

Request an official Aruba knowledge base article to be written by our experts.