1. Mesh Networks
A wireless mesh network consists of multiple nodes that can communicate with each other without depending on a central access point. In a traditional Wi-Fi network, wireless devices normally communicate through an access point. In a mesh network, nodes can establish links with neighboring nodes and traffic can be forwarded through intermediate nodes.- Traditional Wi-Fi
- Mesh Network
2. IBSS
IBSS (Independent Basic Service Set) is an IEEE 802.11 ad-hoc operating mode. Unlike a normal Wi-Fi network, IBSS does not require an access point. Wireless devices join the same IBSS cell and communicate directly with other devices that are within wireless range. In this project, every T3 Gemstone O1 node joins the same IBSS cell. The shared wireless parameters used in the tested configuration are:
This guide uses
wlan0 on the tested T3 Gemstone O1 boards. On another system, the interface name may differ; the important requirement is to configure a suitable IBSS-capable wireless interface with the same cell parameters.
IBSS provides the direct wireless link between nodes. However, IBSS itself does not provide automatic multi-hop forwarding between nodes that cannot communicate directly.
In this example, Node 1 may communicate directly with Node 2, and Node 2 may communicate directly with Node 3. Without an additional forwarding mechanism, Node 2 does not automatically relay traffic between Node 1 and Node 3.
This is the role of BATMAN-adv.
3. BATMAN-adv
BATMAN-adv is a Layer 2 mesh networking component implemented in the Linux kernel. It operates on top of network interfaces such aswlan0 and creates a virtual mesh interface named bat0. The physical wireless interface provides connectivity to neighboring nodes, while BATMAN-adv determines how Ethernet frames should be forwarded through the mesh.
The bat0 interface is used for communication over the resulting mesh network. The routing algorithm used in this project is BATMAN_V.
The following commands are useful for inspecting the mesh:
batctl n displays directly reachable BATMAN-adv neighbors. batctl o displays known originators and the selected next hop toward each destination.
4. Architecture
IBSS and BATMAN-adv perform different tasks in the network. The applications running on the nodes use thebat0 interface, while BATMAN-adv handles the forwarding path over the underlying IBSS links.
This project does not use IEEE 802.11s mesh mode. The wireless interface operates in IBSS mode, and multi-hop forwarding is provided separately by BATMAN-adv.
5. Tested Configuration
The mesh architecture is not limited to three nodes. Multiple T3 Gemstone O1 boards can participate in the same mesh when they use compatible wireless and BATMAN-adv settings. The configuration documented in this guide was verified using three boards.
The three-node verification topology was:
During the captured test, direct IBSS/IP reachability was observed between Node 1 and Node 2 and between Node 3 and Node 2. Direct IBSS/IP reachability between Node 1 and Node 3 was not observed.
After BATMAN-adv was enabled, Node 1 and Node 3 successfully communicated through their
bat0 addresses. The neighbor and originator tables showed Node 2 as the intermediate forwarding node.
The next section explains how to configure the IBSS wireless links and create the BATMAN-adv mesh.
