## 6 Simulation Environment and Results
### Simulations Results  
#### 6.2.1 Network Overhead  
First of all, we compare the service discovery mechanism over OLSRv2 with the one defined over OLSRv1, in terms of packet overhead in several scenarios, with several numbers of nodes: 10, 20, 30 and 50. In OLSRv1, we distinguished between HELLO, TC and SDM messages, because we wanted to know the overhead of SDM messages compared to HELLO and TC messages. In OLSRv2, we do not add any new messages, but we integrate the new TLV structure into HELLO and TC messages. Therefore, the comparison between both versions of the service discovery mechanism, will be based on the total number of transmitted packets. In terms of power consumption, minimizing the number of transmissions allows reducing battery consumption in limited nodes, although the packet size is greater [57].  
We run simulations in three different scenarios. In each one, we modify the user-configurable parameter SDM INTERVAL_TIME to: (1) one second; (2) five seconds; and (3) ten seconds.  
In Figure 11, we can see that OLSRv2 incurs less overhead in the network than OLSRv1 when services are announced. We also see that the difference is bigger as the number of nodes increases. Furthermore, the difference is greater as the announcement of services becomes less frequent. This result was expected because in OLSRv1, all of the HELLO, TC and SDM messages have the OLSR header, while in OLSRv2, the service announcement is integrated as a TLV structure in HELLO and TC messages. Anyway, for both OLSRv1 and OLSRv2, the smaller the SDM INTERVAL_TIME parameter is, the more overhead is introduced to the network. Although the overhead increment is more significant as the size of the network increases, in small networks, the SDM INTERVAL_TIME user-configurable parameter is not critical in terms of network overhead.  
On the other hand, in order to compare network overhead introduced by service discovery in OLSRv2 and AODV, we use the total number of packets transmitted over the network. We vary node mobility from 2 m/s to 10 m/s in order to simulate networks with different mobility patterns. As we explained before, we simulate two different scenarios for AODV, one for broadcasting SREQs and the other one with a limited flooding scope for SREQs set to two hops.  
As we can observe from Figure 12, OLSRv2 service discovery (SD-OLSRv2) introduces more overhead than AODV service discovery (SD-AODV) in any of the scenarios simulated, except for the one without a flooding limited scope for SREQs and node average speed set to 10 m/s. OLSRv2 sends periodically route and service update information throughout the entire network. Although it uses MPRs to broadcast control messages within the network, this increases the network overhead. We also observe that in SD-OLSRv2, no additional overhead occurs as the network mobility becomes higher. The network overhead comes from periodic route and service updates and is independent of the traffic mobility patterns. On the contrary, SD-AODV introduces lower overhead than SD-OLSRv2 in networks with a low number of nodes with low mobility. As the size of the network increases and the nodes move faster, SD-AODV suffers more network overhead. If SREQs are broadcast throughout the entire network with node average speed set to 10 m/s, SD-AODV behaves worse than SD-OLSRv2 in terms of packet overhead. As we can observe in networks with 100 nodes, this fact becomes more significant as the size of the network increases.  
Figure 11: Network overhead in OLSRv1 and OLSRv2 with service discovery.  
Figure 12: Network overhead in OLSRv2 and AODV with service discovery.