1. Introduction

This document describes the software and procedures to set up and use Optimized Link State Routing Protocol (OLSR) with IPv6 for Linux.

1.1. Why Ad-Hoc network?

An English translation of ad-hoc is "For a particular purpose (improvised, made up in an instant)" (source: Wikipedia). An Ad-hoc network, or "spontaneous network", is especially useful when dealing with wireless devices in which some of the devices are part of the network only for the duration of a communications session and the need for a dynamic network topology is eminent. A "Mobile Ad hoc Network" is usually called a MANET.

1.2. What is a MANET?

" A MANET consists of mobile platforms (e.g., a router with multiple hosts and wireless communications devices)--herein simply referred to as 'nodes'--which are free to move about arbitrarily. The nodes may be located in or on airplanes, ships, trucks, cars, perhaps even on people or very small devices, and there may be multiple hosts per router. A MANET is an autonomous system of mobile nodes. The system may operate in isolation, or may have gateways to and interface with a fixed network." --- RFC2501: Mobile Ad hoc Networking (MANET), section 3 (page 3).

1.3. What is Optimized Link State Routing (OLSR)?

"OLSR is a proactive routing protocol for mobile ad hoc networks. The protocol inherits the stability of a link state algorithm and has the advantage of having routes immediately available when needed due to its proactive nature. OLSR is an optimization over the classical link state protocol, tailored for mobile ad hoc networks."

"OLSR is designed to work in a completely distributed manner and does not depend on any central entity. The protocol does NOT REQUIRE reliable transmission of control messages: each node sends control messages periodically, and can therefore sustain a reasonable loss of some such messages. Such losses occur frequently in radio networks due to collisions or other transmission problems." --- RFC3626: OLSR, section 1.3 (page 8)

1.4. How does OLSR work?

"The Optimized Link State Routing Protocol (OLSR) is developed for mobile ad hoc networks. It operates as a table driven, proactive protocol, i.e., exchanges topology information with other nodes of the network regularly. Each node selects a set of its neighbor nodes as 'multi-point relays' (MPR). In OLSR, only nodes, selected as such MPRs, are responsible for forwarding control traffic, intended for diffusion into the entire network. MPRs provide an efficient mechanism for flooding control traffic by reducing the number of transmissions required." --- RFC3626: OLSR, section 1 (page 4)

1.5. What about IBSS (IEEE ad-hoc mode)?

The IEEE 802.11 standard defines two modes:

IEEE 802.11 standard

  1. Infrastructure mode: The wireless network consist of at least one access point (AP) connected to the wired network and a set of wireless nodes (WN). This configuration is called a Basic Service Set (BSS). Extended Service Set (ESS) is a set of two or more BSSs (multiple cells).

  2. Ad hoc mode: Also called "IEEE ad-hoc mode" or "peer-to-peer mode". This configuration is called Independent Basic Service Set (IBSS) and is useful for establishing a network where wireless infrastructure does not exist or where services are not required.

So why use OLSR when we can use "IEEE ad-hoc mode"? IEEE ad-hoc mode does NOT support multi-hop. See figure below

"IEEE 8102.11 Ad hoc" mode has no support for multihop, something OLSR does have.