Tags

, , ,

How do you manage allocating IP subnets for wireless clients where client numbers are rapidly growing over the time ? In my campus environment every year when students start their academic semester, we noticed few wireless subnets hits its capacity & had to increase the subnet size or add new subnets. But even doing this, cannot guaranteed we would have enough IPs in a given subnet. When users concentrate into particular geographical area depend on the time of the day, certain subnets will over utilized where other subnets are under utilized.

What’s  the proper solution for this sort of issue ? Cisco introduced a feature called “VLAN Select” in WLC software release 7.0.116.0 where we can combine multiple interfaces in to a single pool. In this way clients would get IPs in round-robin fashion where all interfaces will approximately equally utilized. In this way we can have different size of subnets (in my campus environment we have /21, /22, /23, /24) without worried about how to control number of clients connects to each vlans.

In software 7.0.116.0 release,  a round-robin algorithm used to load balane clients into different subnets. This results a new IP address to a client even when client is re-associating & thus depleting IP addresses faster. Refer Cisco Doc 112932 for more detail of “VLAN Select Deployment Guide” for software release 7.0.116.0  which is in the current CCIE wireless v2.0 lab exam.

In software release 7.2 onwards (only for the newer controller 5508, WiSM2, 7500, 2500) Cisco has modified the algorithm to based on client’s MAC address. In order to support this feature in legacy controllers (44xx series) cisco introduced this to 7.0.230.0 release where it can run on 44xx platforms.  Refer Cisco Doc 113465 for more detail of “VLAN Select Deployment Guide” in software release 7.2 onwards. This is how modified algorithm works.

1. When a client associates to a WLAN on a controller, an index is calculated based on the MAC address of client & the number of interfaces in the interface group using a hash algorithm.
2. Based on this index, an interface is assigned to the client
3. Whenever this client joins the controller, the hashing algorithm always returns the same index and client is assigned to the same interface.
4. If index is “dirty” then a random index is generated and the interface is assigned based on the random index.
5. If that interface is still “dirty” then a fallback to round robin implementation occurs.

This feature adds a challenge to optimize multicast traffic in wireless world. Once we enable “VLAN Select” feature it will allow clients of a given WLAN  to get IPs from multiple dynamic interfaces (in legacy mode given WLAN will allocate single dynamic interface IPs to its clients). Therefore when a given WLAN clients want to receive a multicast  stream, each interface on the vlan pool join to multicast group individually (ie Multiple MGIDs for same group). To avoid this “Multicast VLAN Feature” included where you can select a single interface to represent multicast traffic for all the dynamic interfaces in same vlan pool.

In the following section, I have described how to enable this feature on a WLC (I am running on 7.0.116 code on 4402 in my lab set up). First you need to create a interface group (Controller > Interface Groups)VlanSelect-01

Then you need to add interfaces to your interface group. In my case I have added 2 dynamic interfaces (Vlan 12 10.10.12.0/24 & Vlan 14 – 10.10.14.0/24) into this group.

VlanSelect-02

Final step is to assign this interface group into your WLAN where client get associated. In my example I have assigned this to WLAN ID# 2 (MRN-VOIP).VlanSelect-03

Now you can test with client association & ensure clients are getting IPs from both subnet when they join the WLAN.

(WLC1) >show client summary 
Number of Clients................................ 5
MAC Address       AP Name           Status        WLAN/GLAN      Auth Protocol         Port Wired
----------------- ----------------- ------------- -------------- ---- ---------------- ---- -----
00:1b:d4:58:e6:1a HQ-AP01           Associated    2              Yes  802.11a          1    No
00:22:fa:94:68:58 HQ-AP01           Associated    2              Yes  802.11a          1    No
04:f7:e4:ea:5b:66 HQ-AP01           Associated    2              Yes  802.11n(5 GHz)   1    No
64:20:0c:e0:23:75 HQ-AP01           Associated    2              Yes  802.11n(5 GHz)   1    No
a0:88:b4:35:c2:f0 HQ-AP01           Associated    2              Yes  802.11n(5 GHz)   1    No
20:02:af:12:e4:f7 HQ-AP01           Associated    2              Yes  802.11n(5 GHz)   1    No

(WLC1) >show client detail 00:1b:d4:58:e6:1a
Client MAC Address............................... 00:1b:d4:58:e6:1a
AP MAC Address................................... a0:cf:5b:9e:e8:20
AP Name.......................................... HQ-AP01           
Client State..................................... Associated     
Wireless LAN Id.................................. 2  
BSSID............................................ a0:cf:5b:9e:e8:2e  
IP Address....................................... 10.10.14.51

(WLC1) >show client detail 00:22:fa:94:68:58
Client MAC Address............................... 00:22:fa:94:68:58
AP MAC Address................................... a0:cf:5b:9e:e8:20
AP Name.......................................... HQ-AP01           
Client State..................................... Associated     
Wireless LAN Id.................................. 2  
BSSID............................................ a0:cf:5b:9e:e8:2e  
IP Address....................................... 10.10.12.54

(WLC1) >show client detail 04:f7:e4:ea:5b:66
Client MAC Address............................... 04:f7:e4:ea:5b:66
AP MAC Address................................... a0:cf:5b:9e:e8:20
AP Name.......................................... HQ-AP01           
Client State..................................... Associated     
Wireless LAN Id.................................. 2  
BSSID............................................ a0:cf:5b:9e:e8:2e  
IP Address....................................... 10.10.12.52

(WLC1) >show client detail 64:20:0c:e0:23:75
Client MAC Address............................... 64:20:0c:e0:23:75
AP MAC Address................................... a0:cf:5b:9e:e8:20
AP Name.......................................... HQ-AP01           
Client State..................................... Associated     
Wireless LAN Id.................................. 2  
BSSID............................................ a0:cf:5b:9e:e8:2e  
IP Address....................................... 10.10.14.55

(WLC1) >show client detail a0:88:b4:35:c2:f0
Client MAC Address............................... a0:88:b4:35:c2:f0
AP MAC Address................................... a0:cf:5b:9e:e8:20
AP Name.......................................... HQ-AP01           
Client State..................................... Associated     
Wireless LAN Id.................................. 2  
BSSID............................................ a0:cf:5b:9e:e8:2e  
IP Address....................................... 10.10.12.53

(WLC1) >show client detail 20:02:af:12:e4:f7
Client MAC Address............................... 20:02:af:12:e4:f7
AP MAC Address................................... a0:cf:5b:9e:e8:20
AP Name.......................................... HQ-AP01           
Client State..................................... Associated     
Wireless LAN Id.................................. 2  
BSSID............................................ a0:cf:5b:9e:e8:2e  
IP Address....................................... 10.10.14.56

As you can see clients are distributed evenly in subnet 12 & 14  as we expected. Now if you look at multicast groups (Monitor > Multicast ) to see how multicast traffic handle by the WLC. I have used multicast group address 239.255.255.199 to stream a video to wireless clients.VlanSelect-04

As you can see, there are two MGID for the each multicast group (one for Vlan 12 & one for Vlan 14). If my interface group have 10 dynamic interfaces, I should see 10 different MGID for the same multicast group address. To remove this inefficiency (duplicate stream for same wlan associated interfaces) you can enable “multicast vlan” feature under WLAN. I have selected vlan 12 as multicast vlan for this interface group.VlanSelect-05

Once you do this, you will only see vlan 12 in the MGID list. Therefore there won’t be  multiple copies of multicast traffic for each vlan on same interface group. (See below)

VlanSelect-06

Similar to layer 3 multicast as shown in the above, layer 2 multicast/broadcast optimization also important with this “VLAN select” feature. Additional CLI commands were introduced in 7.0.116.0 onwards to optimize layer 2 multicast & broadcast. L2 multicast/broadcast uses L2 MGID to forward the packets to AP. L2 multicast/broadcast from all the VLANs in the group will be sent on WLAN. This causes duplication packets on air. In order to limit these duplicate L2 multicast/broadcast enabling or disabling per interface is introduced. You can use following CLI command on newer controller (5508,2500, 7500 & WiSM-2). Since I have 4402 in my lab I could not able to  test this feature at this time.

<WLC> config network multicast l2mcast <enable|disable> <interface-name>

Note that GUI support is not yet introduced for this L2 multicast feature.