Open Access

A Novel Approach to Fair Routing in Wireless Mesh Networks

EURASIP Journal on Wireless Communications and Networking20082009:379059

DOI: 10.1155/2009/379059

Received: 2 June 2008

Accepted: 8 December 2008

Published: 24 December 2008


Multiradio wireless mesh network (WMN) is a feasible choice for several applications, as routers with multiple network interface cards have become cheaper. Routing in any network has a great impact on the overall network performance, thus a routing protocol or algorithm for WMN should be carefully designed taking into account the specific characteristics of the network. In addition, in wireless networks, serious unfairness can occur between users if the issue is not addressed in the network protocols or algorithms. In this paper, we are proposing a novel centralized routing algorithm, called Subscriber Aware Fair Routing in WMN (SAFARI), for multiradio WMN that assures fairness, leads to a feasible scheduling, and does not collapse the aggregate network throughput with a strict fairness criterion. We show that our protocol is feasible and practical, and exhaustive simulations show that the performance is improved compared to traditional routing algorithms.

1. Introduction

Wireless mesh network (WMN) [1] has recently appeared as a promising technology, which can increase coverage area and capacity of existing wireless networks. With the help of of-the-shelf wireless mesh routers, large, previously possibly unreachable, areas can have wireless access to, for example, the Internet. As these routers are becoming less expensive, the introduction of multiple radios to each router is becoming economically possible. multiradio concept with multiple noninterfering channels can significantly improve the overall network capacity, thus current WMN research has been concentrated to multiradio WMN.

In wireless networks, users or subscribers can experience unfairness depending on their location in the network. Users with multiple hops to destination are given less bandwidth than those with fewer hops. The unfairness stems from the shared wireless medium and unfair network protocols that are designed to maximize network capacity, that is, the aggregate throughput or do not take into account the fairness at all. Maximizing capacity and ensuring fairness are contradictory requirements and usually maximizing capacity has been preferred [2]. Unfairness is also present in multihop multichannel WMN. Users with multiple hops can be completely starved, while capacity, in terms of throughput, is maximized. This is naturally not fair, especially if the users pay the same amount for the service.

Usually routing in WMN has been seen from the point of view of the mesh routers (e.g., in [3]). As they are, mesh routers do not generate traffic, they only forward traffic of users and other routers. Thus, routing should be seen from the point of view of the users, who are also the paying customers. In addition, subscribers can be unevenly distributed in the network; the number of subscribers registered to a mesh router can vary significantly. This is neglected in most of capacity and routing studies, where one user per router is assumed (e.g., in [4]). Therefore, as the number of subscribers per router increase, so should its share to the limited network capacity. As discussed above, there is a need for a new or improved routing protocol or algorithm, which takes into account the special characteristics and applications of WMN as well as the distinct needs of users.

The rest of this paper is organized as follows. In Section 2 some related studies are discussed briefly. Section 3 presents needed concepts and definitions. Section 4 presents the SAFARI algorithm and shows simulation results. Section 5 interprets the simulation results and draws conclusions.

2. Related Work

Fairness in medium access control (MAC), scheduling and network layer has been studied to some extent (e.g., [57]). These papers observe fairness in the different layers of the protocol stack and propose their solutions. However, fairness is a cross-layer problem, and thus MAC-layer solutions are useless if higher layer protocols are unfair. This is not true vice versa; an ideal transport protocol can enforce fairness even if the underlying MAC protocol is unfair [7].

Several papers have appeared that have taken linear programming (LP) approach to routing and fairness. One of the benchmark paper in LP-based routing, with several linear constraints, is presented in [8]. The paper addresses two interrelated questions: what is the maximum throughput capacity of an arbitrary (ad hoc) network with given source-destination pairs can this maximum throughput capacity be achieved by jointly routing packets and scheduling transmissions?

The authors devise an LP formulation that maximizes aggregate rates and incorporates any requirements that can be modeled as linear constraints. The paper provides a proof that using their LP formulation, all needed packet transmissions can be feasibly scheduled and that their solution to the maximum concurrent flow problem is a constant factor away from the optimal. The problem in their proposed scheme is that the authors use an infinitesimally divisible flow model for data transmission. This means that data packet can be divided into pieces and transmitted along all possible paths between source and destination, which lead to very complex receiver structures and possibly to a long delay between the arrival of the first and the last data segment. In addition, storing and updating of all possible routing paths leads to large routing tables and network overhead.

In [3], optimized routing in WMN is considered with fairness constraints. The paper points out that past work can be categorized into two different strategies: heuristic and optimization problem. Heuristic methods lack the theoretical foundation to analyze how well the method is working, while optimization problems can be far too complex in practise or make too much simplified assumptions. The paper inspects and analyzes optimal routing with uncertain traffic demand and fairness constraints, thus the authors end up with a stochastic maximum concurrent flow optimization problem. Unfortunately, their LP-formulation seeks to maximize scaling factor , which defines the fraction of traffic that can be transmitted for each flow, instead of guaranteeing fairness.

In [4], a topology control algorithm (TCA) and a new routing metric suitable for WMN, namely, collision domain (CD), are presented. The term topology control refers to any set of network operations that lead to a connected topology, for example, node placement, channel assignment, power control, and routing. It is shown that the proposed TCA performs better than conventionally used metrics, that is, hop count and interference, in the terms of minimum collision domain. On the other hand, the paper makes simplified assumptions such as one user per router, absolute fairness is said to be enforced and only one radio per router is assumed.

Our work is mainly based on the work by Malekesmaeili et al. [4] and Kumar et al. [8]. From [4], the topology control concept and collision domain routing metric are taken as baseline for routing with modifications. From [8], linear programming-based approach to rout and rate maximization are adopted with modifications to constraints and routing path selection. The essence of this work is to develop a fair subscriber-aware routing algorithm for WMN, in which the positions of subscribers are taken into account in order to ensure fairness without crippling the network performance. The algorithm is called Subscriber Aware Fair Routing in WMN (SAFARI).

3. Preliminaries

In this section, basic definitions and concepts are introduced and explained. We consider multiradio WMN modeled as a graph , where is the set of nodes and the set of wireless links (edges). Each link has a certain amount of data to send, , and each has a set of interfering links , which is based on the transmitter-receiver (Tx-Rx) model [8].

3.1. Network Model

We consider WMN comprising of mesh users, mesh routers, and mesh gateway routers. Mesh users can be mobile and nomadic with stringent power constraints, mesh routers are considered to be stationary without power constraints, and mesh gateway routers are similar to mesh routers except that they have gateway properties, that is, they can connect to an external network. Our network model is illustrated in Figure 1.
Figure 1

Hybrid wireless mesh network architecture.

3.2. Fairness

In the context of wireless networks, fairness means that every user receives a fair share of the network resources (e.g., time and frequency), taking into account user's service requirements. Different services can have very different requirements, for example, voice calls have strict delay requirements and relatively low data rates, while file downloading has high bandwidth and low delay requirements. These different requirements should be taken into account, when designing a fair network protocol.

It is important to notice that assuring fairness is a cross-layer problem, since unfairness occurs in MAC (e.g., channel access and scheduling) and transport layers (e.g., congestion control). Current network protocols (e.g., IEEE 802.11) ensure user fairness only on one-hop communication or seek to maximize aggregate throughput of the network [4].

Three popular definitions of fairness are absolute, max-min, and proportional fairness. Absolute fairness is defined as equal rates among all users, max-min fairness is enforced if no user can increase its rate without decreasing some other users' smaller rate at the same time, and a set of allocated rates is proportionally fair if any other feasible rate allocation results in zero- or negative-aggregate change.

In this work, we use a simple fairness index :

where is the set of user rates, , where is the number of users. When , some user's rate are allowed to starve and when , absolute fairness is enforced. Together with linear programming-based rate allocation, our fairness index enforces proportional fairness when and also satisfies quality of service (QoS) requirements if minimum allowable rate is set to QoS threshold.

3.3. Collision Domain

In the work in [9], WMN capacity has been addressed in form of a bottleneck collision domain (BCD). In order to get a formal definition of BCD, we need to first define CD and the corresponding CD load. CD of link , , is the set of wireless links , which need to be silent due to the shared nature of the wireless medium, when link is active. The link itself is also included in , since it also contends over the medium. Indices i and j are the transmitting and receiving nodes, respectively. More formally, is defined as

where (e) is the set of edges interfering with edge , for all .

Each link for all has a certain amount of data to send, , and all the data is accumulated in the collision domain. Thus, CD load of link is defined as

where is the amount of data on link .

BCD is the collision domain that has the most data to forward in an arbitrary topology, thus limiting the capacity of the network. More formally, BCD of a network is defined as

where is the set of CD loads, that is, ,  is the number of edges in the network.

In Figure 2, collision domain of a link is illustrated with the two shaded circles. In other words, collision domain of a link is the set of links included or intersecting the two shaded circles. The consideration of collision domain models the performance degradation of multihop communication in contrast to single-hop, thus it captures essential properties of MAC protocol without actually making assumptions of the used MAC-layer protocol.
Figure 2

Illustration of collision domain of link .

The technology-dependent link capacity (theoretical maximum throughput (TMT)) is calculated in [10], and it was used in [9] to assess link capacity, which is also limiting the network capacity since the accumulated traffic of a link cannot exceed the link capacity. In Figure 2, the total load of the collision domain is 20 U since it is the accumulated traffic of links , , , , , and , where U is the amount of data that mesh user transmits and it is same to all users (Figure 2) for simplicity of notation. Thus, the throughput per node is bounded by [9]. Note that this is not necessarily the BCD of the network. The above calculation needs to be done to every link in order to find the BCD.

can be used as a cumulative routing metric, combined with Tx-Rx model, it reflects wireless interference, it takes into account network congestion in a certain area and models MAC-layer collisions since interfering nodes are not allowed to transmit simultaneously. The BCD can be used to estimate the maximum number of users in a network with a fixed data rate since if each user transmits at rate , then , where , and the link bandwidth is , the throughput per node will be bounded by [9]. Thus, the number of users the network can support is

where the required data rate for each user is .

3.4. Routing Metrics

A good routing metric for WMN is aware of network topology, takes into account network characteristics, and is isotonic [11]. Isotonicity means that the order of path lengths of two paths is preserved if they are appended or prefixed by a common third path. An isotonic metric assures loop-free routing, simple implementation, and minimum weight paths using Dijkstra's algorithm.

Proposed routing metrics for WMN are hop count, distance, weighted cumulative expected transmission time (WCETT), and CD. Hop count is used in AODV [12], but it fails to address WMN characteristics and network congestion. Distance-based metric is usually used with modified Dijkstra's algorithm and it suffers from same things as hop count-based metric. WCETT was proposed by Draves et al. [13] and it is a combination of loss rate with a priori-known packet loss probability, bandwidth, and interference of a link. Unfortunately, WCETT is not isotonic as shown in [11]. CD was proposed as a routing metric by [4], which is an excellent choice since it models wireless interference, MAC layer collisions, and is isotonic. Based on the above discussion, CD is used in this work as a routing metric.

3.5. Linear Programming

LP is a mathematical optimization method that seeks to optimize (i.e., minimize or maximize) a linear objective function subject to equality and inequality constraints. In our work, we are using LP to maximize the user rates with capacity and fairness constraints with a selected path. Our LP is modified from [8] and is formulated as follows:

where is the rate of user i and is the theoretical maximum throughput (i.e., physical data rate a link can transmit [10]), is the minimum required rate, and is the maximum feasible rate. However, (7)) is the capacity constraint, (8) is the fairness constraint, and (9) is constraining the rates. Solving this optimization problem leads to a rate allocation that can be feasibly scheduled, as shown later on.

The obtained rate allocation is dependent on the random positions of the users. Thus, the obtained aggregate throughput varies significantly with different user positions and there is a need for statistical processing. For this reason, standard deviation, , is introduced as
where is the number of random drop of users to the network area, the k th rate allocation, is the sum of user rates on k th random drop:
where is the rate allocation of k th random drop of users, and is the average of all rate allocations with certain number of users:

3.6. Channel Assignment

The main purpose of any channel assignment (CA) algorithm is to minimize interference, maximize aggregate throughput, as well as capacity or fairness. The assignment of radios and channels to mesh nodes is far from trivial. In [14], it is proved that simply assigning first channel to the first node and second channel to second node, and so forth, is far from optimal.

In [15], a taxonomy of CA schemes is presented and a new CA algorithm, called mesh-based traffic and interference aware channel assignment (MeshTiC), is introduced and evaluated. The MeshTiC assigns channels to links in decreasing order based on a link's rank

where is the aggregate traffic that traverses through a certain node , is the minimum number of hops from node that needs to be done in order to reach a gateway, and is the number of radios in node . MeshTiC has been chosen here since it takes into account the traffic load on links, can be modified to incorporate interference, and has low complexity.

4. Proposed Algorithm: SAFARI

Next, the centralized SAFARI algorithm is explained in detail, pseudocode and simulation results are presented. The SAFARI algorithm uses CD as a cumulative routing metric, assigns channels to links using a modified version of the MeshTiC algorithm, and uses a linear programming framework to assign rates to users taking into account capacity, fairness, and rate constraints, see (6), (7), (8), (9).

MeshTiC algorithm is modified such that in (13), is estimated by using CD of link based on the initial geographical positions of users and is estimated as distance to the nearest gateway. This way CA is fixed until user positions change dramatically, and channels can be assigned before routing and rate allocation.

Next, a high-level pseudocode of the SAFARI algorithm is presented in Algorithm 1. In Table 1, the used abbreviations in the pseudocode are explained. In Algorithm 1, on line 1, necessary network information is collected, that is, router, gateway router, and user positioning , and the set of wireless links . This serves as a basis for the whole algorithm to work. The positions of routers and gateways are easy-to-obtain since they are stationary, and they are handled by a centralized entity. The positions of users can be obtained by multilateration or simply modeling the position by the routers the user can reach.
Table 1

Abbreviations used in the pseudocode.




Collision domain

Set of edges


Floyd-Warshall's algorithm

A graph representing


on each link for all

Set of mesh users (i.e., sources)

New routing order based on


to which router each user is


connected to

Set of all nodes in the network

Algorithm 1: SAFARI.
  1. (1)

    Collect network information: and .

  2. (2)

    Compute initial estimate of .

  3. (3)

    Assign channels to , update accordingly.

  4. (4)

    Solve best known paths using and FW.

  5. (5)

    for to do

  6. (6)

      For user , choose the router from which the

      best known path
  1. (7)

      to any gateway is shortest.

  2. (8)

      Connect to this router.

  3. (9)

    end for

  4. (10)

    Sort users such that users in low CD regions are

    routed first.
  1. (11)

    Store the order in .

  2. (12)

    for to do

  3. (13)

      Calculate paths from to all gateway

        routers using FW.
  1. (14)

      Choose optimal gateway router and select the

        corresponding path.
  1. (15)

      Update .

  2. (16)

    end for

  3. (17)

    Solve the LP-problem in order to find optimized



On line 2, link weight matrix is calculated based on the initial positions of users, CD and Tx-Rx models. The ultimately determines the routing path selection and it is modified several times in SAFARI so that it always reflects the current network condition. The first calculation of does not take into account CA, since the used MeshTiC CA algorithm needs an estimate of the traffic demand and it is estimated using CD based on the initial positions of users.

On line 3, channels are assigned using modified MeshTiC and is updated to match CA. Channels can be now assigned to , since we have an estimate of traffic in the network. needs now to be updated to match CA. In other words, the Tx-Rx model takes into account the CA, that is, links interfere only if links are within the interference range and use the same channel.

On line 4, the best known paths are solved using and FW's algorithm. In this context, the best-known paths are the "shortest" paths to gateways and they are used in the determination of the best router for each user to attach to (lines 6–8). Modified FW is used, since it can be made to incorporate CD metric and performs necessary routing with relatively short time, that is, running time of FW is . The determination of the router each user attaches to is decided now by simply selecting the router from which the path to any gateway is "shortest". With this kind of router selection, the randomness of user positions is diminished and overall network throughput is increased, since in most cases, the router selection procedure leads to smaller number of hops for user to reach destination.

The routing order is decided on line 10. Low CD areas, that is, links and corresponding nodes with low are routed first since these areas are usually at the border of a network, thus their routing is essential. This comes from the fact that when the users are far away from gateways, the number of hops increases. Now, if far away users are routed last, their number of hops increases even more. Keep in mind that as the number of hops increase, the capacity constraints become stricter and the throughput decreases while delay increases. Thus, the aggregate number of hops in the network should be minimized, and routing far-away-users first is one way to do it.

On lines 13–15, every user is routed in the decided order to the best gateway and is updated to reflect current network condition. Each user is routed individually using FW's algorithm and the best gateway is selected according to cumulative CD metric. The main reason for using FW is that even a large number of gateways does not increase running time of the algorithm. This is the final routing path selection. After every user's routing, is updated according to and along the chosen path.

Line 17 executes LP-problem, which allocates the highest possible rates subject to capacity and fairness constraints. Solving the LP-problem (6), (7), (8), (9), optimal rate allocation with chosen paths is performed.

The original contributions of SAFARI are as follows.
  1. (1)
    Positions of users are taken into account in
    1. (i)

      CA by traffic load estimation with the help of CD,

    2. (ii)

      determination of which router each user attaches to.

  2. (2)

    Determination of routing order.


The positions of users are taken into account in CA so that in the rank calculation (13), the traffic load is estimated with CD. In addition, the positions of users help to determine the router each user attaches to. This is determined by finding the best-known paths to the best gateways using FW's algorithm with CD estimated by user positions. With our router selection scheme, the number of users attached to each router is not random, as in cases where simply the closest router is chosen, but determined by considering transmit powers, available gateways, and other users' positions.

4.1. Feasibility of the Algorithm

When comparing the SAFARI algorithm to any wireless network routing algorithm, several similarities and differences arise. Every routing algorithm needs to collect network information, at least and , in order to be able to route data from source to destination. Also, every routing algorithm should have at least an estimate of link weights, that is, hop count, distance, interference, bandwidth, or CD, in order to compute . Finally, every routing algorithm needs a path selection algorithm (e.g., Dijkstra or FW). These properties are also implemented in SAFARI, and thus there is no extra complexity in that regard.

There are a few factors that increase SAFARI's complexity compared to, for example, a simple distance-based routing algorithm. The calculation of best-known paths and the following router selection for each user increases complexity compared to algorithms where simply the closest or the farthest router is selected. Sorting users so that low CD regions are routed first increases complexity only slightly since all the necessary information is already calculated and stored in . The biggest factor increasing complexity is the recursive path selection with FW and updating . This recursion is done because it allows the routing algorithm to adapt to changing traffic conditions. In addition, rate allocation by LP-problem solving increases the complexity and running time especially with a large number of users. Based on the above discussion, it can be stated that the performance gain of SAFARI, as shown later, comes with the cost of increased complexity. Nevertheless, this increase in complexity is not too great to make SAFARI infeasible for practical implementation since FW's algorithm is the most complex with a running time proportional to . Thus, SAFARI can be solved in polynomial time.

Since SAFARI's rate allocation is based on the LP-formulation by Kumar et al. [8], it can be shown that this rate allocation leads to feasible scheduling. The feasible scheduling of SAFARI is formalized in Theorem 1.

Theorem 1.

The LP formulation (6), (7), (8), (9) (i.e., rate allocation) used in the SAFARI algorithm results in a stable schedule, that is, flows are given enough transmission opportunities in a finite period of time. In addition, the rate allocation is a constant factor away from the optimal solution to the corresponding flow problem.

The proof of feasible scheduling in a TDMA-based system is based on [8, Lemma 1]. The intuition behind the proof is that link flows can only be scheduled in finite time if there are enough transmission opportunities for each flow, that is, there is enough bandwidth on the link. The detailed proof is available in [8].

Lemma 1.

A sufficient condition for link flow stability,

where , is a subset of edges in which are greater than or equal to in length.

4.2. Simulations

The simulations are performed using MATLAB software version R2007b. In Table 2, the most important simulation parameters are presented. The communication range is fixed and set to  m, since routers are 100 m and  m apart as shown in Figures 3(a) and 3(b). Thus, most of the routers can reach eight other routers. The interference range is fixed and set to  m, which is twice the communication range. The number of users in simulations varies between 1–20. This choice allows the observation of the effect of number of users on throughput and fairness, and keeps simulation times bearable. Number of random drop of users, , into the simulation area is set to 750, since the achieved throughput varies significantly with different user positions. Users are dropped following a uniform distribution into the simulation area. The step size of is set to and it defines the incremental value is given in simulations. This choice allows for observing the tradeoff between throughput and fairness. The step size of users is set to the minimum (i.e., one) in order to observe the effect of users on throughput. Link capacity is set to 43 Mbps, as one of the options for link capacity defined and calculated in [10], and is assumed to be constant. The lower and upper bounds for user rates, and , respectively, are set such that total starvation of users is enabled and that user rates have a realistic upper bound enabled by the physical layer data rate.
Table 2

Simulation parameters.



Communications range


Interference range


Link capacity (TMT)

43 Mbps

Number of radios

1, 3 and 12

Number of users



0 Mbps

3 Mbps

Step size


Step size users



Figure 3

Figure 3

Two reference topologies used in simulations. Reference topology 1 used in simulationsReference topology 2 used in simulations

In the simulations, it is assumed that each user has the same QoS requirement and the corresponding data rate is tried to achieve with limitations from the LP constraints. The number of routers is kept relatively low since when there is too many routers leads to very long simulation times. On the other hand, using only a few routers is not practical, since then the routing algorithm is tied to only a couple of possible paths. In the simulations, defined numbers of users are dropped uniformly into an area covered by a certain predefined topology (e.g., Figures 3(a) and 3(b)), are allowed to exceed this area by 100 m, and routed to destinations using the algorithm in question. This is done several hundred times since the distribution of users has a significant effect on performance.

There are three algorithms that are used throughout the following simulations. The first one implements SAFARI algorithm and is referred to as SAFARI in the following. The second one implements the TCA proposed in [4] and is referred to as CD metric in what follows. The third one is a simple distance-based algorithm that uses Dijkstra's algorithm, and is referred to as distance metric in what follows.

The following simulation results are obtained in a grid topology with four gateways and 45 routers as shown in Figure 3(a) (see [4]), and a grid topology with one gateway and 48 routers as shown in Figure 3(b), where red circles are gateways and green diamonds are routers.

4.2.1. Comparison

In Figures 46 and Table 3, comparison of the three used routing schemes by illustrating routing paths, corresponding throughputs, and BCD are presented with 30 users, 12 channels, and . The red circles are gateways, green diamonds routers, blue dots users, red lines router-to-router routing paths, and blue lines user-to-router hops. Figure 4 shows how each user, using SAFARI, selects the best router for itself and how two paths, for two different users, are separated at a node in order to avoid congestion on that link. In other words, the two users are guided now along noninterfering paths. It is obvious that using SAFARI leads to higher transmit powers on users, see the blue lines, while the number of hops is diminished. The increased transmit power can be unwanted in some scenarios but if power consumption is not a crucial issue, higher data rates are achieved.
Table 3

Corresponding-achieved throughput and BCD from Figures 46.


Throughput (Mbps)

BCD (Mbps)




CD metric



Distance metric



Figure 4

Routing done with SAFARI.

Figure 5

Routing done with CD metric .

Figure 6

Routing done with distance metric .

Figure 5 shows the corresponding routing paths with the same user positions. Now, users are connected to the nearest router and are then routed using CD as a metric. It is obvious that using CD metric leads to lower power consumption while the number of hops is increased. Similar to SAFARI, CD metric also guides users to noninterfering paths. The main difference between these two schemes is that with CD metric, the number of hops is greater, thus finding noninterfering paths is harder. This is shown so that a fewer number of noninterfering paths are selected.

Figure 6 illustrates the path selection with distance metric scheme. It can be seen that also this scheme selects the nearest router for each user to attach to. Then, the paths are selected blindly without considering CA and link congestion. This leads to shorter paths than using CD metric scheme but some links are heavily congested, and thus limiting the network capacity. The distance metric scheme is the simplest scheme while worst on the performance, as seen later on.

Table 3 shows the achieved throughput and BCD using SAFARI, CD metric, and distance metric schemes with the shown user positions in Figures 46. SAFARI achieves almost twice as much throughput than the two others and has significantly lower-average BCD. CD metric performs slightly better than distance metric. As mentioned before, this performance gain comes with the cost of increased transmit power and algorithmic complexity.

Figures 79 show the average traffic distribution on each gateway and router using the three models with topology shown in Figure 3(a), 12 channels,   , 20 users, and 1000 random drop or users. The traffic distribution is obtained so that the number of users attached or passing a router/gateway is summed up in each random drop, and after 1000 drops, it is divided by the number of users and number of random drops. Horizontal axis shows the router/gateway indices as presented in Figure 3(a). It can be seen that using SAFARI in Figure 7, some routers are used rarely, especially the ones far away from gateways. This is due to the fact that SAFARI selects routers to users so that routers close to gateways are preferred. This location-dependent router starvation should be taken into account in the deployment of routers, that is, sometimes network deployment cost can be reduced by deploying less routers. Another remark is that besides the starved routers, SAFARI performs load balancing to some extent, that is, traffic is divided evenly among routers that are at equivalent network positions (e.g., routers next to gateways).
Figure 7

Traffic distribution among routers with SAFARI scheme.

Figure 8

Traffic distribution among routers with CD metric scheme.

Figure 9

Traffic distribution among routers with distance metric scheme.

In Figure 8, the same traffic profile is presented with CD metric. This scheme performs load balancing, which is shown especially in gateways, indices 1–4, as the number of users per gateway is equal in the long run. With CD metric, routers are not starved in any location and the traffic is divided smoothly among routers. This is another advantage of CD as a routing metric, it inherently performs load balancing. The difference to SAFARI, which also uses CD as a metric, is the router-selection procedure and routing order, which disables full-load balancing among routers.

In Figure 9, the traffic profile using distance metric model is shown. It is obvious that this model fails to achieve load balancing, which is shown in uneven gateway utilization and heavy congestion in some routers. This illustrates the effect of using blind distance-based routing and not taking into account network condition.

These results show that SAFARI is superior to the two other schemes with this topology, number of users, , and number of channels. Next, the performance of SAFARI is shown in scenarios where several parameters are changed.

4.2.2. Number of Hops and Starved Flows

First, the average number of hops users need to make in order to reach a gateway, and the percentage and positions of starved users are observed in topologies presented in Figures 3 with 1 and 12 channels, , 20 users, and 1000 random drops. In Table 4, the average number of hops users need to make in order to reach a gateway are presented. It can be seen that SAFARI has the lowest number of hops in all the four simulated cases, on the average approximately hops less than the other simulation cases. With one channel, the CD metric and distance metric have the same number of hops, while with 12 channels, the CD metric has more hops. This stems from the fact that CD metric avoids congested areas, which inevitably leads to more hops. In addition, the number of hops is lower with 4-gateway case, since now there is a gateway closer to more users than in 1-gateway case (see Figures 3(a) and 3(b)).
Table 4

Average number of hops using the three simulation models.


1 gateway,

1 gateway,

4 gateways,

4 gateways,


1 channel

12 channels

1 channel

12 channels






CD metric





Distance metric





In Table 5, the percentage of starved users (i.e., when  bps) are presented with the same parameters as in Table 4. It is obvious that severe unfairness occurs especially with low number of channels and gateways. Blocking 90% of users in order to maximize the aggregate throughput is very unfair and noneconomical to service providers as users will not tolerate such blocking percentages. The SAFARI has the lowest percentage in all the cases, even though it only guarantees reasonable performance with 4 gateways and 12 channels with 14.8 % blocking rate. CD metric is better than distance metric and they both have a poor performance in all the four cases. The results in Table 5 points out why is not a good choice even though it maximizes the aggregate throughput.
Table 5

Percentage of starved users.


1 gateway,

1 gateway,

4 gateways,

4 gateways,


1 channel

12 channels

1 channel

12 channels






CD metric





Distance metric





In Table 6, the average distance to nearest gateway of starved users are presented. One should know that the maximum distance to a gateway is  m since users are allowed to be dropped 100 m outside the routers. It is obvious that the starvation distance does not depend on the number of channels rather it depends on the availability of gateways nearby. SAFARI has the lowest starvation distance value in all the cases, which means that users that are far away are not that easily starved. CD metric and distance metric have starvation distances of same magnitude.
Table 6

Average distance in meters to gateway of starved users.


1 gateway,

1 gateway,

4 gateways,

4 gateways,


1 channel

12 channels

1 channel

12 channels






CD metric





Distance metric





4.2.3. Effect of Number of Channels

Next, the number of channels is limited to one in order to see how the three considered models perform in a single-channel environment. Naturally, there is no need for a CA in this case and all links that are within each other's interference range interfere with each other.

Figure 10 shows how throughput behaves as a function of number of users in a network defined by Figure 3(b), with one channel and . It can be seen that when there is only a few users in the network, all of the users can transmit at their peak rate. After 2-3 users, the network becomes crowded and all the users rates need to be constrained, which results in a steady decrease in the overall throughput. As the number of users grow, the throughput starts to saturate. SAFARI achieves the best performance when the number of users is greater than two, and CD metric is slightly better than distance metric.
Figure 10

Throughput versus number of users with 1 channel and .

In Figure 11, the standard deviation (see (10)) of the three models is plotted in the same case as in Figure 10. In these simulations, the standard deviation measures the variation in the aggregate throughput between each random drop of users. It is apparent that all the three models have a large standard deviation when compared to the corresponding throughput. This reflects the fact that user positions have a significant effect on the throughput, thus taking into account the user positions can lead to performance gain. The standard deviation of CD metric and distance metric are almost identical conforming the superiority of CD to distance as a path metric. SAFARI has the highest standard deviation, which can be explained by considering the following two cases.
Figure 11

Standard deviation versus number of users with 1 channel and .

  1. (1)

    Users are positioned so that it can be exploited, for example, near gateways or far away from each other, thus using SAFARI leads to high throughput.

  2. (2)

    Users are poorly positioned, for example, forming clusters, and taking into account their positions, does not lead to a significant performance gain.

Figure 12 plots throughput as a function of the fairness index (1) with 1 channel, 20 users, and in the topology shown in Figure 3(b). This simulation result points out the tradeoff between throughput and user fairness. When , some users are allowed to completely starve and other users, who are usually near gateways, are given the whole bandwidth. This leads to high throughput but is very unfair and undesirable. When the fairness index increases, the throughput decreases, which stems from the fact that now user rates are restricted to or near the smallest user rate. In addition, in this simulation scenario, SAFARI achieves the highest throughput, it can provide consistently twice as much throughputs than the other two models, which achieve throughput of same magnitude. It should be pointed out that since throughput saturates quickly as fairness index increases, even a relatively low fairness criterion is able to lower the overall throughput; but as pointed out earlier, cases with low are unfair and most of the attention should be focused near .
Figure 12

Throughput versus farness index with 1 channel and 20 users.

Standard deviation, in the same simulation case as in Figure 12, is presented in Figure 13. As expected, the highest standard deviation occurs with , since with this fairness index value, the aggregate throughput is also highest, and CD metric and distance metric cases have a very similar standard deviation curves. SAFARI has again the highest standard deviation which stems from the above enumerated reasons.
Figure 13

Standard deviation versus farness index with 1 channel and 20 users.

Figure 14 plots the average BCD with respect to the number of users with 1 channel, and in a topology illustrated in Figure 3(b). Now, rate allocation is not used since user rates are fixed beforehand. Using (5), it is obvious that the average BCD should be as low as possible in order to have maximum number of users in a network. Considering this fact, the SAFARI is once again the best one and CD metric the second best. SAFARI's dominance starts show with 4 users, and CD metric starts to outperform distance metric after ten users. Average BCD versus fairness index is not plotted here since with fixed equal user rates (i.e., the BCD versus fairness index plot would be meaningless.
Figure 14

BCD versus number of users with 1 channel and = 1.

In the following, the results presented in Figures 1014 are referred to as baseline simulation set. Next, the number of channels is increased to 12 and the corresponding results as in the baseline simulation set are presented in Figures 1519. Once again, SAFARI achieves the best performance measured in throughput and average BCD. Now, the performance gain compared to distance metric is almost 100% and compared to CD metric it is approximately 40% (see Figures 15-16). One should notice that with increasing number of channels, CD metric starts to outperform distance metric. This stems from the fact that with many channels, CD metric can choose noninterfering paths for different flows, which leads to smaller CD loads on links, thus throughput increases.
Figure 15

Throughput versus number of users with 12 channels and = 1.

Figure 16

Throughput versus fairness index with 12 channels and 20 users.

Figure 17

Standard deviation versus number of users with 12 channels and  

Figure 18

Standard deviation versus fairness index with 12 channels and 20 users.

Figure 19

BCD versus number of users with 12 channels and = 1.

It can bee seen by comparing Figures 15-16 to Figures 10, 12, that using 12 channels instead of one results in 500% throughput increase when . This shows the benefit of multiradio concept (i.e., with increasing cost comes increased performance). One should notice that even though the number of orthogonal channels is increased from one to 12, the throughput is not increased with the same ratio. This stems from the fact that 12 channels does not result in empty , that is, some links still interfere with each other which leads to strict capacity constraints and lower throughput enhancement.

Figures 17 and 18 point out that the higher throughputs of SAFARI and CD metric, in Figures 15 and 16, compared to distance metric come with the cost of increased . One might notice that the standard deviations of SAFARI and CD metric fluctuate somewhat, while distance metric results in smooth curves. The fluctuation illustrates the significant effect on user positions within the network, even averaging over 750 random drop of users (Table 2) it cannot completely average the achieved throughput.

Figure 19 shows that SAFARI has the lowest average BCD, and CD metric increases gap to distance metric. This result reassures the benefit of CD as a routing metric compared to simple distance-based metric. Comparing Figures 14 and 19, it is clear that increasing the number of channels from one to 12 decreases the average BCD to one third with SAFARI and CD metric. Distance metric case does not decrease its average BCD as much as the others.

5. Conclusions and Summary

The simulation results show that the proposed routing algorithm SAFARI outperforms CD and distance-based routing algorithms in terms of the increased network throughput and the number of admitted users. The performance gain comes mainly from the fact that users positions are taken into account instead of neglecting them, as in the CD and distance-based routing. The information of user position is exploited in the CA and in the selection of the best router to each user to attach to. The second factor that contributes to the performance gain is the routing order. By first routing the users in low CD regions (i.e., usually users far away from the gateways), shorter paths are obtained and which leads to less strict capacity constraint and fairness is easier to achieve. The CD metric is shown to be a suitable metric for WMN and its inherent capability to avoid congested areas in the network is a very useful quality. In addition, SAFARI's LP-based rate allocation leads to user rates that can be scheduled.

The performance gain comes with the cost of increased complexity, transmit power, and statistical variation of the achieved throughput. The increase in complexity can be remarkable when compared to a simple hop count-based routing with fixed rates. Factors effecting the complexity are the router selection procedure, LP-based rate allocation, and the recursive calling of FW's algorithm and CD estimate update in the final routing phase. The increased complexity and the need for more transmit power can be too much for some systems or users. Nevertheless, SAFARI can be solved in polynomial time. If the increased complexity of SAFARI is too much for a system, CD metric-based routing can be used with reasonable performance. An estimate of the CD of each link can be obtained by a centralized entity or by spectrum sensing at each node.

The scientific contribution of this work is the developed SAFARI algorithm. The novelty of SAFARI comes from the usage of the information of user positions in CA, router selection, and routing. Another new feature is the routing order selection that is based on the network congestion so that users in low-congestion areas are routed first. This routing order selection leads to higher throughput, mainly since users in low-congested areas are usually at the edge of a network and thus routing them first leads to shorter routing paths on the average.

Since our rate allocation is based on the one proposed in [8], the assigned rates can be feasibly scheduled. On a more widespread scope for future research, the overall feasibility and practicality of SAFARI needs to be investigated in more detail.



This work was supported by the Finnish Funding Agency for Technology and Innovation (Tekes), Nokia, Nokia Siemens Networks, Elektrobit, and the Centre for Wireless Communications.

Authors’ Affiliations

Centre for Wireless Communications, University of Oulu


  1. Akyildiz IF, Wang X, Wang W: Wireless mesh networks: a survey. Computer Networks 2005, 47(4):445-487.View ArticleMATHGoogle Scholar
  2. Radunović B, Boudec J-YL: Rate performance objectives of multihop wireless networks. IEEE Transactions on Mobile Computing 2004, 3(4):334-349. 10.1109/TMC.2004.45View ArticleGoogle Scholar
  3. Dai L, Xue Y, Chang B, Cui Y: Throughput optimization routing under uncertain demand for wireless mesh networks. Proceedings of IEEE International Conference on Mobile Ad Hoc and Sensor Systems (MASS '07), October 2007, Pisa, Italy 1-11.Google Scholar
  4. Malekesmaeili M, Shiva M, Soltan M: Topology optimization for backbone wireless mesh networks. Proceedings of the 5th Annual Conference on Communication Networks and Services Research (CNSR '07), May 2007, Fredericton, Canada 221-230.View ArticleGoogle Scholar
  5. Duffy K, Leith DJ, Li T, Malone D: Improving fairness in multi-hop mesh networks using 802.11e. Proceedings of 4th IEEE International Symposium on Modelling and Optimization in Mobile, Ad Hoc and Wireless Networks (WiOpt '06), April 2006, Boston, Mass, USA 1-8.Google Scholar
  6. Park E-C, Kim D-Y, Choi C-H, So J: Improving quality of service and assuring fairness in WLAN access networks. IEEE Transactions on Mobile Computing 2007, 6(4):337-350.View ArticleGoogle Scholar
  7. Raniwala A, De P, Sharma S, Krishnan R, Chiueh T-C: End-to-end flow fairness over IEEE 802.11-based wireless mesh networks. Proceedings of the 26th IEEE International Conference on Computer Communications (INFOCOM '07), May 2007, Anchorage, Alaska, USA 2361-2365.Google Scholar
  8. Kumar VSA, Marathe MV, Parthasarathy S, Srinivasan A: Algorithmic aspects of capacity in wireless networks. Proceedings of the ACM International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS '05), June 2005, Banff, Canada 133-144.Google Scholar
  9. Jun J, Sichitiu ML: The nominal capacity of wireless mesh networks. IEEE Wireless Communications 2003, 10(5):8-14. 10.1109/MWC.2003.1241089View ArticleGoogle Scholar
  10. Jun J, Paddabachagari P, Sichitiu M: Theoretical maximum throughput of IEEE 802.11 and its applications. Proceedings of the 2nd International Symposium on Network Computing and Applications (NCA '03), April 2003, Cambridge, Mass, USA 249-256.Google Scholar
  11. Yang Y, Wang J, Kraves R: Designing routing metrics for mesh networks. Proceedings of the 1st IEEE Workshop on Wireless Mesh Networks (WiMesh '05), September 2005, Santa Clara, Calif, USAGoogle Scholar
  12. Perkins C, Belding-Royer E, Das S: Ad hoc on-demand distance vector (AODV) routing. Internet Engineering Task Force, Fremont, Calif, USA; 2003.View ArticleGoogle Scholar
  13. Draves R, Padhye J, Zill B: Routing in multi-radio, multi-hop wireless mesh networks. Proceedings of the 10th Annual International Conference on Mobile Computing and Networking (MOBICOM '04), September-October 2004, Philadelphia, Pa, USA 114-128.View ArticleGoogle Scholar
  14. Raniwala A, Gopalan K, Chiueh TC: Centralized channel assignment and routing algorithms for multi-channel wireless mesh networks. ACM Mobile Computing and Communications Review 2004, 8(2):50-65. 10.1145/997122.997130View ArticleGoogle Scholar
  15. Skalli H, Ghosh S, Das SK, Lenzini L, Conti M: Channel assignment strategies for multiradio wireless mesh networks: issues and solutions. IEEE Communications Magazine 2007, 45(11):86-93.View ArticleGoogle Scholar


© J. Määttä and T. Bräysy. 2009

This article is published under license to BioMed Central Ltd. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.