## 3 FLARoute: Fair Locality Aware Routing
### Overview of FLARoute  
FLARoute is focused on increasing routing fairness in encounter-based routing protocols without significant degradations in throughput. The basic idea behind FLARoute is as follows. Popular nodes experience the highest number of encounters, thereby subjecting them to relatively higher burden and making them network bottlenecks. Although popular nodes contribute significantly to routing, the possibility of achieving significant fairness lies in the ability of less popular nodes to forward messages without the aid of popular nodes. Hence, FLARoute aims to achieve fairness without compromising throughput by sparingly utilizing nodes prone to overburden while maximizing the participation of less burdened nodes. This requires nodes to: determine more suitable relays with a fair forwarding utility; locally determine the burden on them without using buffer information; be able to know how their burden compares with those of neighbouring nodes; and forward messages accordingly. Therefore, the task of achieving fairness with acceptable throughput can be divided into four subtasks:  
1. Determining a fair forwarding utility that can allow less burdened nodes to forward messages with minimal requirement of popular nodes;
2. Determining and keeping account of the relative burden incurred from forwarding messages;
3. Estimating the maximum burden on neighbouring nodes; and
4. Forwarding messages with the fair forwarding utility and making decisions based on available burden information. Phase 1. As shown in Figure 6, the subtasks are addressed in four phases. The first phase is concerned with computing the fair forwarding utility, namely PoiUtility. PoiUtility is determined from the combination of an existing encounter-based forwarding utility and a location-based forwarding utility. Basically, the location-based utility is determined from geographical closeness to the location of the destination node, while the encounter-based utility maintains encounter history of only nodes that share the same point-of-interest (POI). Fairness is increased by selectively maintaining encounter history of encountered nodes, since the popularity of nodes is not spread across multiple hops. Due to the limited amount of encounter information on nodes, messages are first forwarded to nodes moving towards the destination's location through the location-based utility. When nodes whose POI corresponds to the destination's location are encountered, messages are then forwarded based on the encounter-based utility. This approach allows less popular nodes to contribute in routing as well. \begin{table}
\begin{tabular}{c c c c c c c} \hline \hline \multirow{2}{*}{**Solution for** **Improving** **Fairness**} & \multirow{2}{*}{**Allows**} & \multicolumn{2}{c}{**Improves Delivery Guarantees through**} & \multicolumn{3}{c}{**Burden Measure Is Suitable under**} \\ \cline{3-7}  & & **Awareness of** & \multirow{2}{*}{**Maximizing Less**} & \multirow{2}{*}{**Changes in**} & \multirow{2}{*}{**Unequal Buffer**} & \multirow{2}{*}{**Dynamic User**} \\  & & & **Spatial Locality** & & **Contribution** & \\ \hline FOG [19] & \(\surd\) & \(\times\) & \(\times\) & \(\times\) & \(\times\) & \(\times\) \\ FairRoute [23] & \(\surd\) & \(\times\) & \(\times\) & \(\times\) & \(\times\) & \(\times\) \\ CAFE [60] & \(\surd\) & \(\times\) & \(\times\) & \(\times\) & \(\times\) & \(\times\) \\ CCAF [61] & \(\surd\) & \(\times\) & \(\times\) & \(\times\) & \(\times\) & \(\times\) \\ Our proposal (FLARoute) & \(\surd\) & \(\surd\) & \(\surd\) & \(\surd\) & \(\surd\) & \(\surd\) \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Solutions for improving OppNet routing fairness, their main features and the novelty of FLARoute. Phase 2. The second phase is focused on locally determining the burden incurred in forwarding messages and keeping record of it. The major challenge in this phase is how to increase and decrease burden according to node contribution, without relying on buffer information.