Building a Wireless Mesh Network

Choosing the Mesh Routing Protocol

Mesh routing protocols

At the very core of a mesh node, the routing protocols handle the route discovery and route maintenance. Route discovery finds the path between a source and destination while route maintenance responds to changes in network topology.

Routing protocols are generally classified into the following three genres:

Type Proactive (table-driven) Reactive (on-demand) Hybrid (Proactive + Reactive)
MechanismThese protocols maintain fresh lists of destinations and their routes by periodically distributing routing tables throughout the network.These protocols find a route on demand by flooding the network with Route Request packets.This type of protocol combines the advantages of proactive and reactive routing. The routing is initially established with some proactively prospected routes and then serves the demand from additionally activated nodes through reactive flooding.
DisadvantagesThe amount of data can be huge if network is big and this leads to resource depletion on mesh nodes.Potential high latency in path-finding which increase the latency between source and destination.
ProtocolsOLSR, DSDV, Babel, B.A.T.M.A.N-Adv, BMX6, R.O.B.I.NAODV, DSR ZRP

After much research on routing protocol, I chose to experiment proactive mesh routing protocols. I continued to research on routing protocols that are well supported on OpenWRT platform.

I shortlisted the following protocols as they have more success stories on OpenWRT:

ProtocolB.A.T.M.A.N-Advopen80211sBMX6OLSR
OS SupportOpenWRT
Linux
OpenWRT
Linux
OpenWRT
Linux
OpenWRT
Linux
Operating Layer2
(Essentially working like a ethernet switch)
333
AuthSAEYesYesUnstableYes

After much researching, I decided to try both B.A.T.M.A.N-Adv and BMX6.