Patent ID: 8700800

Claim:
A method of allowing client roaming between gateways of a wireless mesh network, the gateways being connected to an aggregation router across a layer three network through tunnels, the method comprising: a first gateway of the wireless mesh network sending a first client route update of a first client route to the aggregation router when a client joins a first cluster of the first gateway, wherein the first cluster includes a first plurality of access nodes, and the first client route includes at least one wireless access node of the first client route between the first gateway and the client device; the first gateway assigning a first cost function corresponding with the first client route an initial value when the first gateway sends the first client route update to the aggregation router; the first gateway aging the first client route by incrementing the first cost function over time, and periodically updating the aggregation router with the incremented first cost function; a second gateway of the wireless mesh network sending a second client route update of a second client route to the aggregation router when the client roams to a second cluster of the second gateway, wherein the second cluster includes a second plurality of access nodes, and the second client route includes at least one wireless access node of the second client route between the second gateway and the client device; the second gateway assigning a second cost function corresponding with the second client route an initial value when the second gateway sends the second client route update to the aggregation router; the second gateway aging the second client route by incrementing the second cost function over time, and periodically updating the aggregation router with the incremented second cost function; the aggregation router using the first and second incremented cost functions of the first and second routes of the first gateway and the second gateway to determine which of the first gateway or the second gateway corresponds with a current client route.