ABR has three phases. The first phase is the route discovery phase. When a user initiates to transmit data, the protocol will intercept the request and broadcast a search packet over the wireless interfaces. As the search packet propagates node to node, node identity and stability information are appended to the packet. When the packet eventually reaches the destination node, it would have received all the information describing the path from source to destination. When that happens, the destination then chose the best route and send a REPLY back to the source node, over the chosen path. Note that when the packet transits backwards from destination to the source, each intermediate nodes will update their routing table, signifying that it will now know how to route when it receives data from the upstream node. When the source node receives the REPLY, the route is successfully discovered and established. This process is done in real-time and only takes a few milli-seconds.
Route reconstruction phase
ABR establishes routes that are long-lived or associativity-stable, thus most routes established will seldom experience link breaks; however, if one or more links are broken, their ABR will immediately invoke the RRC – route reconstruction phase. The RRC basically repairs the broken link by having the upstream node perform a localized route repair. The localized route repair is performed by carrying out a localized broadcast query that searches for an alternative long-lived partial route to the destination. ABR route maintenance consists of:
partial route discovery,
invalid route erasure,
valid route update, and
new route discovery.
Route deletion phase
When a discovered route is no longer needed, a RD packet will be initiated by the source node so that all intermediate nodes in the route will update their routing table entries and stopped relay data packets associated with this deleted route. In addition to using RD to delete a route, ABR can also implement a soft state approach where route entries are expired or invalidated after timed out, when there is no traffic activity related to the route over a period of time.
Practicality
In 1998, ABR was successfully implemented into the Linux kernel, in various different branded laptops that are equipped with WaveLAN 802.11a PCMCIA wireless adapters. A working 6-node wide wireless ad hoc network spanning a distance of over 600 meters was achieved and the successful event was published in Mobile Computing Magazine in 1999. Various tests were performed with the network:
Transmission of up to 500MBytes of data from source to destination over 3-hop route.
Link breaks and automatic link repairs proven to be working
Impact of beaconing interval on throughput and remaining battery life
An enhanced version of the protocol has been implemented in the field by defense contractor TRW Inc. in 2002. The enhancement made to the protocol include: network-layer QoS additions and route precedence capabilities.
Patent and work extensions
ABR was granted a US patent 5987011 and the assignee being King's College Cambridge, UK. A few other mobile ad hocrouting protocols have incorporated ABR's stability concept or have done extensions of the ABR protocol, including:
Signal Stability-based Adaptive Routing Protocol
Enhanced Associativity Based Routing Protocol
Alternative Enhancement of Associativity-Based Routing