How Mesh Works
Mesh is a fairly complex feature that relies on a wireless routing protocol, Cisco Adaptive Wireless Path Protocol (AWPP), that allows the MAPs to determine the best parent to relay their traffic to the RAP.
AWPP is designed specifically for wireless mesh networking in that its path decisions are based on link quality and number of hops. AWPP is also designed to provide ease of deployment, fast convergence, and minimal resource consumption. AWPP takes advantage of the LWAPP/CAPWAP wireless LAN (WLAN), where client traffic is tunneled to the controller and hidden from the AWPP process. Also, the advanced radio management features in the LWAPP/CAPWAP WLAN solution are available to the wireless mesh network and do not have to be built into AWPP.
When a MAP comes up in a mesh network, the AP is authenticated (bridge authentication). Two possible security modes are available for the bridge authentication: Extensible Authentication Protocol (EAP) and Pre-Shared Key. There is a four-way handshake using this primary key to establish an Advanced Encryption Standard (AES) session. Next, the new AP establishes an LWAPP/CAPWAP tunnel to the controller and is authenticated against the MAC filter list of the controller.
The controller then pushes the bridge shared secret key to the AP via LWAPP/CAPWAP, after which it re-establishes the AES session with the parent AP.
As previously described, the wireless mesh bridges traffic between the MAPs and the RAPs. The traffic can be from wired devices being bridged by the wireless mesh or wireless client traffic that is encapsulated in LWAPP/CAPWAP-Data and LWAPP/CAPWAP-Control traffic from the MAPs.
The AES encryption is established as part of the MAP establishing neighbor relationships with other MAPs (bridge authentication). The bridge shared secret is used to establish unique encryption keys between mesh neighbors. All APs establish an LWAPP/CAPWAP connection to the controller through AES-encrypted backhaul tunnels between the APs.
Mesh Bootup and Join Process
When a mesh AP first boots up, it must determine whether it is a RAP. This decision-making process is as follows:
- Step 1. Upon boot, an AP checks its state; if it is a RAP, it enters the Maintain state.
- Step 2. If it is not a RAP, the AP scans all the channels for Bridge Group Names (BGN).
- Step 3. The AP actively solicits neighboring APs (Seek state).
- Step 4. The AP selects the best parent from the available list.
- Step 5. The AP authenticates to the Mesh network.
- Step 6. The AP then enters the Maintain state and is willing to respond to solicitations. Solicitation allows for faster convergence, leaving more time for data transfer.
Figure 15-4 illustrates the Mesh Machine state.
Figure 15-4 Mesh Machine State
A mesh AP become a RAP if it can communicate with an LWAPP/CAPWAP controller through its Ethernet interface. All 1500 and 1520 series mesh APs ship as MAPs. If the mesh AP is a RAP, it can go straight to the Maintain state. In the Maintain state, the mesh AP has established an LWAPP/CAPWAP connection to the controller, so it does not need to seek other APs; rather, it simply responds to solicitations. If the mesh AP is not a RAP, it starts a scan process where it scans all available channels and solicits information from other mesh APs.
This behavior has two main implications:
- The RAP does not change channels; therefore, the channel used to build the mesh from a RAP is defined in the RAP configuration. By default, the RAP uses channel 161 if it is an outdoor AP.
- The mesh is built from the RAP out, because initially only the RAP can respond to solicitations.
If the AP is not a RAP, it follows the state diagram in Figure 15-4 in the following modes:
Scan: The AP scans all the backhaul channels using mesh beaconing. This mechanism is similar to the 802.11 beaconing mechanisms used by wireless access networks, except the protocol frames conform to the AWPP frames on the backhaul. The frame used for beaconing is a broadcast NEIGHBOR_RESPONSE called NEIGHBOR_UPDATE and is sent unsolicited.
Essentially, the network advertises NEIGHBOR_UPDATE frames so that new nodes can scan and quickly discover neighbors. The generation rule is that each RAP and MAP broadcast NEIGHBOR_UPDATE frames after being connected to the network (via a controller). Any neighbor updates with signal-to-noise ratios (SNR) lower than 10 dB are discarded. This process is called passive scanning.
The AP looks for mesh beacons advertising the same BGN as what was configured on the AP when you primed it.
If the AP hasn't been preconfigured or primed (joined to the controller on the wire, AP role, BGN set, and so on), or if the BGN it has been configured to is not seen in mesh beacons, the AP goes into default mode and proceeds with joining. This allows you to "catch" an AP in case of a config issue. Nevertheless, Cisco recommends that you always prime the APs with the BGN.
- Seek: After the AP decides to join a mesh network it has located, bridge authentication takes place. This is done based on PSK or EAP. The AP solicits members of the mesh network. Successful responses to these solicitations become neighbors. These neighbors must have the same bridge group name and same shared secret.
- Sync: The MAP learns the path information from each of its neighbors, and the neighbor with the greatest ease becomes the parent of the soliciting MAP. If the neighbors report multiple RAPs, the RAP with the greatest ease is chosen.
- Authenticate: The MAP authenticates to the controller through a connection established through its parent AP. This AP authentication is standard LWAPP/CAPWAP AP authentication, and the MAP is already part of the mesh and using the mesh to communicate with its controller. Because MAPs are always in bridge mode, in addition to the standard LWAPP/CAPWAP authentication (bridge authentication during the Seek state), the controller requires mandatory MAC address authorization. Should you fail to add the AP's MAC address to the controller's MAC filter list (see Figure 15-6), the AP will not be able to proceed beyond the Authenticate state.
- Maintain: The MAP responds to other MAP solicitations and regularly solicits to determine any changes in the mesh. It is only after entering the Maintain state that the MAP is visible to the controller and Wireless Control System (WCS). Note that in the Maintain state, the solicitations occur only on the channel defined by the RAP, whereas a MAP in seek mode solicits on all channels, only stopping when it has found a parent AP.
AWPP uses ease to determine the best path. Ease can be considered the opposite of cost, and the preferred path is the path with the higher ease.
Ease is calculated using the SNR and hop value of each neighbor and applying a multiplier based on various SNR thresholds. The purpose of this multiplier is to apply a spreading function to the SNRs that reflects various link qualities.
In Figure 15-5, MAP2 prefers the path through MAP1 because the adjusted ease (436906) though this path is greater than the ease value (262144) of the direct path from MAP2 to RAP.
Figure 15-5 Mesh Parent Selection
A parent AP is chosen by using the adjusted ease, which is the ease of each neighbor divided by the number of hops to the RAP:
So in Figure 15-5, the adjusted case for MAP2 through MAP1 is 873812/2 = 436906.
Configuring the controller to support mesh is quite simple. All you need to do is add the MAC address of the mesh AP to the MAC Filter list of the controller (see Figure 15-6). For 152x outdoor mesh APs, use the Bridge-Group Virtual Interface (BVI) MAC address of the mesh AP. For 1130 and 1240 series indoor mesh APs, you would use the Ethernet MAC address. If you do not know the MAC of the AP and it is not on the exterior of the unit, you can use the console to determine the BVI and Ethernet MAC addresses using the command sh int | i Hardware. You can also run debug pm pki enable from the controller command-line interface (CLI) to see the MAC address of the AP that is trying to join, as demonstrated in Example 15-1. The description for the AP in the MAC filter list is simply a text string you enter; it has nothing to do with actually configuring the AP.
Figure 15-6 MAC Filter List for MAPs
Example 15-1. debug pm pki enable Command Output
Fri Jul 10 17:55:37 2009: spamMeshRadiusProcessResponse: AP Authorization failure for 00:0b:85:6f:9b:90
If the APs' MAC address is not listed, the AP fails authentication and cannot join the controller. This is true for both the indoor and outdoor mesh APs. When the AP rejoins the controller, set its role to be either a RAP or MAP (see Figure 15-7) using the Mesh tab. For the indoor APs, change the AP mode to Bridge and reboot it (see Figure 15-8) before you can configure the mesh-specific settings. When the AP reboots in bridge mode, you see the Mesh tab on the AP configuration page.
Figure 15-7 Mesh AP Role
Figure 15-8 Indoor Mesh Bridge Setting
The Mesh tab is where you will set the AP role as well as the BGN and backhaul data rates. This is true for both outdoor and indoor MAPs.
You can use the BGN to break large mesh deployments into sectors so that only certain APs will form parent-child relationships.
By default, the security mode for bridge authentication is EAP. This is done using manufacturer-installed certificates and therefore does not need configuring. Should you want to change the security mode to PSK or use a RADIUS server to authenticate the mesh APs, you can configure those settings from the controller GUI under Wireless > Mesh, as shown in Figure 15-9.
Figure 15-9 Mesh Bridge Security Configuration