# Estimation of the Achievable Performance of Mobile Ad Hoc Networks with Optimal Link State Routing
## 2 Models and Restrictions
### OLSR Routing Protocol  
One of the most effective and commonly used proactive routing protocols for dynamically organized networks with high node density and low node mobility is the Optimized Link State Routing (OLSR) protocol. OLSR performs well in large and dense mobile networks. The protocol is documented in IETF RFC 3626 [13] and RFC 7181 [32]. OLSR is \begin{table}
\begin{tabular}{c c} \hline \hline
**Notation** & **Meaning** \\ \hline CCMP & Counter Mode with Cipher Block Chaining \\  & Message Authentication Code Protocol \\ UDP & User Datagram Protocol \\ LOS & Line of sight \\ NLOS & Non-line-of-sight \\ L & Loss \\ dB & Decibel \\ \hline \hline \end{tabular}
\end{table} 
Table 1: _Cont._  
Figure 1: Network section diagram. managed with tables and utilizes an optimization called MultiPoint Relay (MPR) for traffic control. The larger and denser the network, the greater optimization that can be achieved compared to the classical Link State Routing (LSR) algorithm. OLSR is based on the collection and dissemination of service information about the state of the network. As a result of processing this information, each node can build a model of the current network state in the form of a formal description of the graph, the vertices of which correspond to the network nodes, the edges (or arcs) to the communication lines (links). Having such a graph, any node can calculate the \"lengths\" of the shortest paths to all addressees in the network and choose the \"optimal\" route leading to any particular node in the network. This algorithm reacts well to many unforeseen events, which, first of all, should include spontaneous failures and the recovery of nodes and lines; aggressive effects of the \"external environment\", leading to the blocking of individual elements of the system; and connections and disconnections of nodes and lines during the operational redeployment of subscribers. The OLSR protocol employs step-by-step routing, meaning that each node uses its own information for packet routing. Therefore, it is suitable for networks with random and sporadic traffic [33] among a large set of nodes rather than deterministic traffic between a small specific set of nodes. OLSR is also well suited for scenarios where communicating nodes change over time, as no additional control traffic is generated since routes are maintained for all known destinations at all times. Additionally, the protocol provides the advantage of immediate route availability when needed. To obtain information about the network topology, the OLSR protocol utilizes Hello and control message exchanges. Nodes use this information to determine the next hop in the path of the routed data packet. The OLSR protocol is based on the concept of MultiPoint Relay (MPR). Each node in the network selects several nodes from its neighbors (i.e., nodes with which it has a connection). Consequently, a set of MPR nodes is formed in the network. This set is created in such a way that all nodes within a radius of two hops from a given node (neighbors of neighbors) have symmetric links with the MPR nodes. This means that MPR nodes are connected to all nodes within a two-hop radius (see Figure 2). The information about MPR is updated whenever changes are detected in nodes that are one or two hops away from the node. Each node in the network maintains its routing table, which is formed based on the network topology information. It is distributed throughout the network via topology control (TC) route selection service packets. Only MPR nodes participate in forward  
Figure 2: Route construction using MPR in the OLSR protocol. ing TC packets, while other nodes receive and process such packets but do not forward them further. For each MPR node, a list of neighboring nodes that have selected it as an MPR, called the MPR Selectors (MPRS) list, is created. Information about MPRS is transmitted in special Hello packets that are transmitted only between two neighboring nodes.