Tuesday, July 05, 2011

Multi-AP Roaming Network Background

There's no magic to making multiple-AP (roaming) 802.11 networks work. Wireless clients just assume that all APs with the same SSID are configured similarly and are all just different points of access to the same underlying wired network. A client will scan all channels looking for APs publishing the SSID it wants, and will pick whichever one suits it needs best (usually that means whichever one shows the highest signal strength).
Once on the network, clients stay with the same AP as long as it's meeting the client's needs (i.e. as long as it's signal strength is above a "good enough" threshold). If the client later thinks it could be better off with another AP on that network, it'll do periodic scans of all channels looking for other APs publishing that SSID. If a scan turns up a candidate AP that's enough better than the AP it's currently on, it'll automatically roam to the other AP, usually without so much as a missed frame.
Assuming both APs are configured similarly and are connected to the same underlying network, roaming is seamless and invisible to the user (except nerds like me who run tools to watch for these things). Roaming events are invisible to applications using the network, although some low-level parts of the network stack might be notified of the event, so that, for example, your DHCP client can double-check that this new AP really is connected to the same network, so it can be sure your DHCP lease is still valid on this network.
Some other users' Answers and Comments on this question erroneously suggested that wireless protocols or features like wireless relay or WDS might be needed for roaming, but this is absolutely incorrect. Those features are just ways to replace a wired Ethernet backhaul with a wireless one.
For the sake of completeness, I should mention that there is a set of technologies, some proprietary, some standardized in IEEE 802.11F, known generally as Inter-Access Point Protocol. IAPP is a method by which generally enterprise-class APs can communicate with each other over the backhaul to optimize client roaming. But that's just an optimization, not a prerequisite for roaming. Roaming works "well enough" on networks both small and large without any IAPP going on.

Configuration Suggestions

Give both APs the same network name (SSID), the same security type (WPA2-PSK recommended), and the same wireless security passphrase. Many clients assume that these kinds of settings will be the same across all APs with the same SSID.
Since you already have the cabling in place, use wired Ethernet as your backhaul. This saves your wireless bandwidth for your portable/mobile devices that actually need it, instead of wasting in on stationary devices like APs that could reasonably be cabled up.
If you have another device on the network, such as a broadband home gateway, providing NAT and DHCP service, then put both APs in bridge mode (turn off NAT and DHCP service). You generally only want one box on your network acting as a NAT gateway or serving DHCP. If you don't already have another device on your network doing NAT and DHCP, and you need those services, then you can have one of your APs do it. Have the more "upstream" AP (the one that's closer, topologically, to your broadband modem) do NAT and DHCP, and make sure that the wired Ethernet connection to the other AP comes from the first AP's LAN port. Also make sure that the "downstream" AP is in bridge mode. I call this out because I've seen people make the mistake of leaving NAT and DHCP enabled on both their APs, and I've seen clients that aren't smart enough to realize that, say, the 192.168.1.x/24 network they're on now is not the same 192.168.1.x/24 network they were on a moment ago in the other room. I've also seen users get confused in this situation where two laptops in the same house had 192.168.1.x addresses, but couldn't ping each other because they really on two separate IP networks behind two separate NATs.
Channel is one key setting you do want to vary from AP to AP in a roaming (multiple AP) 802.11 network. To maximize bandwidth, leave your APs to automatically select the channel to use, or you can manually pick different, non-overlapping, and hopefully unoccupied channels to use. You don't want transmissions to/from one AP to compete for bandwidth with transmissions to/from the other AP.

Additional Considerations

The rest of this answer is just a bunch of general "how to maximize your home 802.11 network bandwidth" tips, not specific to your question of two APs with the same SSID.

Consider taking this opportunity to fully modernize

If you're already buying a new AP and taking the time to reconfigure things, I'd recommend using this opportunity to replace your existing AP as well, by buying two of the latest APs that support simultaneous dual-band 802.11n technology. That way you can support both the 2.4GHz band for older clients that are 2.4GHz only, as well as the less busy 5GHz band for more bandwidth. It's becoming a "best practice" to set your 2.4GHz 802.11n radio to 20MHz (HT20) channels so that it leaves some of the band free for things like Bluetooth to use. This limits your 802.11n transmission rates in 2.4GHz to ~130mbps instead of 300mbps, but allows other non-802.11 2.4GHz devices to still work okay. In 5GHz, where there are many more channels available and they're all generally much less busy, you're encouraged to use 40MHz (HT40) channels to get maximum throughput.
I know that Apple's latest AirPort Extreme and Time Capsule (but not AirPort Express) are simultaneous dual-band 802.11n, and they also support 3-stream (a.k.a. "3x3") 802.11n, for transmission rates up to 450mbps once you get if you have 3-stream clients that can do it (Apple's clients are currently still on 2x2, so 300mbps max Apple's March 2011 "Thunderbolt" renewal of the MacBook Pro line quietly added 3x3 radios).

If you're stuck with older single-band-at-a-time APs

If you don't need to support any older 2.4GHz-only devices, use the 5GHz band since it is generally less busy, and you can use HT40 without starving Bluetooth and other uses.
If you're stuck supporting 2.4GHz-only devices with single-band-at-a-time APs, be careful of your channel selection. In the 2.4GHz band, the channels overlap to a great degree. However, channels 1, 6, and 11 don't overlap at all, so those are good choices to pick manually. You could use a Wi-Fi network scanner like NetStumbler, iStumbler, many "war driving" tools, etc. to see which channels are in use by other APs visible from where you are. If you suspect you have non-802.11 2.4GHz interferers in your area, such as Bluetooth, microwave ovens, and many (but not all) cordless phones, baby monitors, wireless webcams, and wireless room-to-room A/V senders, you could go all-out and get a spectrum analyzer like a Metageek Wi-Spy to find which channels are the least noisy where you are.