Virtual Mobility to Improve Cooperation in Mobile Ad hoc Networks

We study the impact of mobility on the level of cooperation between mobile nodes in a mobile ad hoc network. In a mobile ad hoc network, if the nodes are static or have a reduced mobility and if some nodes adopt a selfish behaviour, the performance of the network is affected. This is because the same nodes that are relaying the packets. On the other hand, nodes with a significant mobility affect the network topology, hence the traffic often changes routes and the probability that nodes that are not selfish relay packets is better. We exploit the advantage that the mobility provides on cooperation to propose a solution with mechanisms that generate virtual mobility in a static network or with a reduced mobility, so it seems like a dynamic network.


INTRODUCTION
Cooperation in mobile ad hoc networks is essential for the survival of the network [1][2][3][4] . Due to the lack of infrastructure in mobile ad hoc networks, the nodes themselves must make network management functions such as packet relaying and routing process. A consistent management of the network is a direct consequence of the existence of cooperation between the nodes. Thus, if the level of cooperation is high the network is doing well, but on the other hand, if the level of cooperation is low, the network itself is threatened. A node that is not cooperating is said selfish. A packet must be relayed through intermediate nodes between the source node and the destination node, if the intermediate nodes behave selfishly (they do not relay other's packets) to save their energy resource, packets never successfully reach their destination.
In this study, we will study the effect of mobility on the level of cooperation of nodes in mobile ad hoc networks. We will show that the mobility increases the phenomenon of cooperation between the nodes that adopt a rational behaviour that is based on the principle of I cooperate if others help me. We will also present a practical solution to augment the level of cooperation in static networks.

Problem of static networks:
In static mobile ad hoc networks or with a reduced mobility, the route between the source node and the destination node remains almost unchanged during a communication session between these two nodes. Having a selfish intermediate node on the route, it may disrupt the flow of packets between source and destination. Even if the intermediate nodes do not behave so selfish at the beginning of the communication session, they will surely become if they are much requested, or if they exhaust their energy resources faster than others do, they are no longer active. In both cases, there will be no delivery of packets.
The idea is to change periodically the route between the source and destination to discharge intermediate nodes. Consequently, avoid these nodes to behave selfishly or delay them as long as possible before initiating this behaviour.
The easiest way to achieve different routes between a source node and destination node requires a frequent mobility of the different nodes. Such mobility acts on the network topology and hence, intermediate nodes will no longer be the same and the load of communication is distributed on the different nodes of the network.
we show by simulation results that cooperation is inherent between nodes when they are in motion.

Mobility impact on cooperation:
To highlight the impact of mobility on cooperation and on the network's performance, we compare some performance indicators between an ad hoc mobile network with static nodes and another with dynamic nodes. To enhance our testing, we make simulation for two different scenarios: • The selfish scenario: In this scenario, we use some selfish nodes that do not cooperate in relaying packets. The aim of this scenario is to demonstrate that mobility inhibits selfish behaviour • The Naive scenario: In this scenario, all the nodes cooperate one hundred percent. The aim of this scenario is to demonstrate that mobility increases the life of intermediate nodes when the load of communication is distributed over different nodes The simulation is achieved on a sample of 20 mobile nodes uniformly randomly distributed over an area of 1000×1000 m, with a transmission range of 250 m for each node. The node mobility follows the random waypoint mobility models. Initially, each source node has a random destination node with which it establishes a communication session. We use a reactive shortest path-based routing protocol for ad hoc mobile network [5] . We divide the simulation time into N periods. During a period, each node may emit an average of 1000 packet and relay 2000 packet, for a total of 100000 packet for the whole simulation time. The total energy of the node does not allow it to transmit more than 100000 packets. In other words, if the node reaches the threshold of 100000 packets, it is inactive.
Among the performance indicators that we have considered, we calculated the number of participating nodes to cooperation. The Fig. 1 shows that the number of participating nodes to cooperation is greater in the dynamic network than in the static network and this for the two scenarios. Table 1 shows the difference (in percentage) between the dynamic solution and the static solution. We note that in the selfish scenario the difference is clearly significant.
Among the performance indicators, we calculated the load indicator, which reflects the distribution of the network management load over the different nodes. In a network where cooperation is perfect, this load is almost identical for all the nodes and it is close to the value 1/N (N the number of nodes of the network). On the other hand, the load will be different if cooperation is ensured only by a limited set of nodes. In our case, the perfect load is close to the value 0.05 (for N = 20). We can see in the Fig. 2 that the dynamic network provides a load per node lower than the static network and this for the two scenarios. We also note that the gain in the selfish scenario is greater than the one in the Naive scenario (Table 2). Therefore, we can say that the dynamic model offers better performance than the static model and the improvement is clearly visible in the selfish scenario.
Virtual mobility: If mobility offers interesting results in dynamic networks, why not create some mobility in the static networks or networks with a reduced mobility. The purpose of the mobility is to deliver   packets by different routes. Thus, we can achieve this goal by frequently changing the route between the source and destination. This aspect of re-routing traffic from time to time, we call it virtual mobility.
To create the virtual mobility, we need mechanisms that will allow us to re-route traffic on different routes. Of course, the result of re-routing traffic requires a modification in the routing protocol. The selection of these routes must not be arbitrary, but rather, in accordance with criteria that will enable us to achieve the best performance.
Routing protocol: The routing protocols for mobile ad hoc networks use the principle of the shortest path. However, if the intermediate nodes, forming the route, are not willing to cooperate, surely a delivery problem appears. To avoid this, we can calculate the routes, not based on the shortest path, but rather on a nodes' predisposition to cooperate. Of course, this solution is applied to rational nodes. We must make the difference between a node that adopts a selfish behaviour from the beginning and that does not change it regardless of the situation and a node that adopts this behaviour in reaction to events suffered. In the first case, the node adopts a negative behaviour and its presence in a network is negative whatever the resolution done against it. In the second case, the node becomes selfish if its packets do not arrive to destination or if it spends a lot of energy to deliver the packets of other nodes. On the other hand, if the node finds that there is a positive reaction from the rest of the network against it, it reacts with the same behaviour. We define these nodes as rational nodes. The goal is to find the conditions that do not offer to rational nodes the reason to become selfish. To this end, we introduce a new mechanism for calculating route between the pairs source-destination.
For every available route between source and destination, we calculate the factor of cooperation. This factor is based on the degree of cooperation of intermediate nodes forming the established route. The chosen route is the one with the greatest cooperation factor. The degree of cooperation of a node is its willingness to cooperate.
Let l (s, d) be the route between the source node s and the destination node d and passing through intermediate nodes i for i = 1. N where N is the number of intermediate nodes between the source s and the destination d, we define the factor of cooperation for the route l (s, d) : where Ψ i is the degree of cooperation of the node, which we define later. We use the term "emitted by a node" to indicate packets generated and emitted by the node itself (packets that are specific to the node), the term relayed by a node to indicate the packets "transmitted by the node" but that are not their own packets. It only relays them. In addition, the expression transmitted by a node to indicate the emitted and the relayed packets by the node (packets from all sources).
Each node maintains three variables: • P emitted : number of packets emitted by a node • P received : number of packets emitted by a node and actually arrived at their destination, {P received }⊂ {P emitted } • P relayed : number of packets relayed by a node • P transmitted : number of packets transmitted by a node (P transmitted = P emitted +P relayed ) We define success rate δ of a node by the ratio between the number of packets arrived at their destination P received and the number of packets emitted P emitted received emitted P P δ =

(2)
And the rate of contribution σ for a node by the ratio between the number of packets relayed P relayed and the number of packets transmitted by that node: The values δ and σ are respectively the average rate of success and the average rate of contribution of all the nodes.
The degree of cooperation of the node i is calculated by the following formula: where n is the number of nodes in the mobile ad hoc network.
We define the term i n k k 1 = δ δ ∑ as the engaging factor of the node compared to its success rate. This factor determines the percentage of success of the node compared to the success of the other nodes. The node undertakes to cooperate in proportion to its success rate.
We define i n k k 1 = σ σ ∑ as the contribution factor of the node compared to its contribution rate in the network. This factor determines the percentage of contribution of the node compared to the contributions of other nodes. The node will cooperate inversely proportional to its cooperation rate. Periodically, each node broadcasts its values δ and σ to the rest of the nodes, so each one can calculate its degree of cooperation Ψ i . When the source node emits the route request packet to reach its destination node, each intermediate node adds to the route request packet its degree of cooperation. Thus, the destination node can elect the route with the greatest factor of cooperation i i F = ∏ ψ from a set of possible routes.

RESULTS AND DISCUSSION
To test our proposal, we add to the previously scenarios a third one which represents our solution and which we call VirMob scenario (virtual mobility scenario).
We get the same performance evaluation that we have previously calculated. The Fig. 3 show that the number of participating nodes in relaying packets is greater in the dynamic network than in the static network and this is for the three scenarios.
While we note that the Selfish and Naive scenarios present a significant difference between the two solutions, the VirMob scenario shows a slight difference (the values are almost identical), as shown in Table 3. This difference in the Selfish and Naive scenarios between the dynamic solution and the static solution is due to the nodes' mobility, which is the only parameter that distinguishes the two solutions. However, the VirMob scenario does present no difference, it is due to the implementation of the proposed routing protocol, mobility is inherent in the static solution.
For the load indicator, we note that the VirMob scenario for both dynamic and static solutions, offers a value close to 0.05, as shown in the Fig. 4, which proves that the load is more uniformly distributed in this scenario. However, in Selfish and Naive scenarios,   we note that the dynamic solution offers a load better than the static solution. The load in these two scenarios is more evenly distributed in the dynamic solution than in the static solution. We can better see the difference in Table 4.

CONCLUSION
The obtained results show that the nodes in the dynamic solution perform better than in the static solution, specifically in the Selfish and Naive scenarios.
Note that in these scenarios, we use a routing protocol based on the principle of shortest path. We also note that, in the VirMob scenario, performance is not as important as in the other scenario and we justify this to the fact of using our protocol. This leads us to conclude that the implementation of our routing protocol in a static network causes some semblance of movement (virtual mobility) in the network. This is because the chosen routes vary depending on the ability of the nodes to cooperate, while the implementation of protocols based on the principle of shortest path generate the same routes. In conclusion, the mobility, whether real or virtual, increases the cooperation performance between nodes in an ad hoc mobile network.