B.A.T.M.A.N.
B.A.T.M.A.N. は古典的ルーティングプロトコルの要素を備えている。他の B.A.T.M.A.N. ノードを検知し、そこに到達するのに最適な経路(ルート)を探索する。また、新たなノードの追跡も行い、近隣ノードにその存在を通知する。
静的ネットワークにおいては、ネットワーク管理者および技術者がどのコンピュータにどの経路・ケーブルを通じて到達すべきかを決定する。しかし、無線ネットワークは常に変化をしておりかつ参入障壁も低いため、"Freifunk" ネットワークの基礎の重要な一部として、このタスクをできるかぎり自動化する必要がある。
各ノードはある一定の間隔でブロードキャストを行い、これによってその存在を全ての近隣ノードに通知する。近隣ノードはこのメッセージを自ノードの近隣ノードに中継し、これが繰り返される。このようにして、ネットワーク内の全ノードに情報が拡散される。特定ノードへの最適経路の探索時のために、B.A.T.M.A.N. ではこのオリジネーターメッセージが計数され、どの近隣ノードからそのメッセージが届いたかが記録される。
距離ベクトルプロトコルと同じように、B.A.T.M.A.N. では経路全体を決定するのではなく、前述のオリジネーターメッセージを用いてパケットの一歩目を正しい方向へと送り出すことのみを行う。データはその方向の次の近隣ノードに受け渡され、今度はそのノードで同じ仕組みが使われる。この過程が宛先にデータが到達するまで繰替えされる。
B.A.T.M.A.N. は無線ネットワークの他にも、イーサネットなどの一般的な有線接続でも使うことができる。