**2. Link-scheduling policies8**

The challenge in link scheduling is that the policies are highly complex. The scheduling problem in general is nondeterministic polynomial time (NP) hard [12]. Therefore, the research literature has focused on policies of lower complexity that are more amenable to implementation [7].

Most distributed scheduling policies that achieve provable efficiency ratios calculate, at the onset of every frame, a subset of links that is allowed to transmit data in the immediately following frame only. In this chapter, we refer to these policies as non-RBDS policies, i.e., they do not reserve any future frame but only the following one. On the other hand, RBDS policies [8, 11] select links to transmit data in any future frames by means of frame reservations. Since this framework considers reservations of any future frames, non-RBDS policies correspond to a special case within the RBDS framework, i.e., the case that links are allowed to reserve the next frame only.

It should be noticed that non-RBDS policies require the input queue only (i.e., (,) *i j Qi* ). They do not need the output queue (i.e., (,) *i j Qo* ) because data packets do not need to wait for future data subframes. In non-RBDS policies, once a data packet is scheduled at the onset of the data subframe, the packet is transmitted immediately.

#### **2.1. Non-RBDS policies**

The concept of optimal stability region and a centralized scheduling policy with efficiency ratio of unity were introduced in [10]. The centralized scheduling policy attempts to solve a complex global optimization problem so that the entire network is stable for the largest possible set of input data-packet rates. Under the 1-hop interference model9, the problem is

<sup>8</sup>The material presented in this section is based on the material presented in [8, 11].

<sup>9</sup>In the 1-hop interference model, only the links that the 1-hop neighbors of a node belong to interfere with the links that the node belongs to.

shown to correspond to a maximum weighted matching (MWM), where the weights of the links are determined from the length of their queues. The solution to MWM has complexity <sup>3</sup> *O N*( ) [13, 14], where *N* is the number of nodes. Under the *k* -hop interference model, the problem has been proven to be NP-Hard [12]. Therefore, the optimal scheduling policy is not convenient for implementation due to its high complexity. As a consequence, less complex scheduling policies that achieve only a fraction of the optimal stability region for general network topologies have been developed [12, 15-28].

The different suboptimal scheduling policies proposed in the literature can be classified according to the techniques they use to calculate the next schedule. These techniques usually depend on the interference model assumed for the network and the links' weights at the onset of every frame. Also, the suboptimal scheduling policies can be further classified according to their centralized or distributed mechanism (Unless otherwise specified, the scheduling policies reviewed in this section consider 1-hop traffic only, i.e., the data flows' paths have one link only.).

### *2.1.1. Centralized policies*

26 Wireless Mesh Networks – Efficient Link Scheduling, Channel Assignment and Network Planning Strategies

In the following, the operation and performance of the different link-scheduling policies is discussed. Special attention is given to reservation-based scheduling (RBDS) policies [8,11]. Then, based on the stability region of RBDS policies, the topology-control mechanisms are

The challenge in link scheduling is that the policies are highly complex. The scheduling problem in general is nondeterministic polynomial time (NP) hard [12]. Therefore, the research literature has focused on policies of lower complexity that are more amenable to

Most distributed scheduling policies that achieve provable efficiency ratios calculate, at the onset of every frame, a subset of links that is allowed to transmit data in the immediately following frame only. In this chapter, we refer to these policies as non-RBDS policies, i.e., they do not reserve any future frame but only the following one. On the other hand, RBDS policies [8, 11] select links to transmit data in any future frames by means of frame reservations. Since this framework considers reservations of any future frames, non-RBDS policies correspond to a special case within the RBDS framework, i.e., the case that links are allowed

It should be noticed that non-RBDS policies require the input queue only (i.e., (,) *i j Qi* ). They do not need the output queue (i.e., (,) *i j Qo* ) because data packets do not need to wait for future data subframes. In non-RBDS policies, once a data packet is scheduled at the onset of

The concept of optimal stability region and a centralized scheduling policy with efficiency ratio of unity were introduced in [10]. The centralized scheduling policy attempts to solve a complex global optimization problem so that the entire network is stable for the largest possible set of input data-packet rates. Under the 1-hop interference model9, the problem is

<sup>9</sup>In the 1-hop interference model, only the links that the 1-hop neighbors of a node belong to interfere with the links

**Figure 5.** An example of stability-region adaptation

**2. Link-scheduling policies8**

to reserve the next frame only.

**2.1. Non-RBDS policies** 

that the node belongs to.

the data subframe, the packet is transmitted immediately.

8The material presented in this section is based on the material presented in [8, 11].

discussed.

implementation [7].

In [15], a centralized scheduling approach known as pick-and-compare [17] that achieves the optimal efficiency ratio is defined. The pick-and-compare scheduling policy selects the optimal schedule at every frame with some probability greater than zero. First, the scheduling algorithm randomly picks a new schedule such that the links can satisfy the interference model constraints. Then, the newly picked schedule is compared with the current schedule. If the picked schedule reduces the total weight of the network (i.e., queue lengths) more than the current schedule, then the picked schedule is selected as the next schedule; otherwise the current schedule is used again. The pick-and-compare policy requires the calculation and comparison of the updated total weight for every frame. Therefore, the complexity of this technique grows linearly with *N* , which makes it difficult to implement in networks with a high number of nodes or in networks where nodes have low processing capabilities.

Greedy maximal scheduling (GMS) is a suboptimal, centralized scheduling policy. In GMS, the links of the network are ordered according to their weights, where the link with maximum weight is placed at the top of this globally ordered list. A valid schedule is found by selecting links from the list from top to bottom that do not interfere with each other. The complexity of GMS is *OL N* ( log( )) , where *L* is the number of links [29]. GMS has efficiency ratio of 1/2 under the 1-hop interference model [7], and under the *k* -hop interference model, GMS has efficiency ratio of 1, 1/6, and 1/49 for tree, geometric, and general network graphs respectively [12, 27].

### *2.1.2. Distributed policies*

A distributed version of the pick-and-compare scheduling policy was proposed in [19]. In this policy, a node is selected with some probability less than one to initiate the calculation of a schedule for the links in its neighborhood. The new schedule is selected for the next

frame if the new schedule reduces the neighborhood's weight by more than the current schedule. The algorithm has constant complexity, so it does not depend on the number of nodes of the network. It does depend, however, on the diameter of the neighborhood. The efficiency ratio increases as the diameter of the neighborhood increases. The algorithm assumes the 1-hop interference model, so it can only be directly used on networks with physical layers such as frequency-hopping code-division-multiple-access (FH-CDMA) that allow that assumption to be made.

Stability-Based Topology Control in Wireless Mesh Networks 29

election algorithm and the RBDS algorithm, whose roles are to avoid collisions and wasted

In this chapter we assume that the election algorithm is given, and we focus on the RBDS algorithm only. For example, in the IEEE 802.16 standard [31], the election algorithm is completely specified while the link-scheduling algorithm is not. The standard only specifies the control messages that can be used for the implementation of RBDS policies. We adopt the election algorithm of IEEE 802.16 wireless mesh networks with coordinated distributed scheduling. Also, it is assumed that the RBDS wireless network follows the 2-hop interfer-

In the IEEE-802.16 election algorithm, the nodes in every 2-hop neighborhood take turns by competing between them to access the control-time slots and transmit scheduling packets. Let the 2-hop neighborhood of node *i* , i.e., node *i* , its 1-hop neighbors, and its 2-hop

In order to avoid scheduling-packet collisions, no more than one node is selected in

*i*

When nodes *i* and *j* exchange scheduling messages to perform the three-way handshake, they schedule data packets on link (,) *i j* and multicast the negotiated schedule to all links in

1. Node *i* sends a request to node *j* for a certain number of data-time slots along with a

2. Node *j* sends a grant to node *i* for the requested number of data-time slots according

3. Node *i* confirms the successful reception of the grant by echoing the grant in its next

The reservation of the data-time slots takes place at steps 2 and 3. When node *j* transmits its scheduling packet, *j* 's 1-hop neighbors receive the grant and mark the granted data-time slots as unavailable. When node *i* confirms the grant, *i* 's 1-hop neighbors receive the grant and mark the granted data-time slots as unavailable too. Therefore, at the end of step 3, all

<sup>12</sup>The operation of the election algorithm for IEEE 802.16 mesh networks with coordinated distributed scheduling is

<sup>13</sup>It is assumed that in this handshake node *j* grants node *i* 's request and that the data-packet-slot reservation is

set of data-time slot numbers that are available for reservation at node *i* .

to its set of data-time slots available for reservation and those of node *i* .

order in which they are selected is uniformly distributed among all the possible orders

. We model the operation of this election algorithm as

are selected once and only once each. The

, where *i* can be any node in , are selected in cycles. We refer to

are selected is independent across scheduling cycles.

ence model, which is the model considered in the IEEE 802.16 standard [31].

time slots in the control and data subframes respectively.

*i*

*i*

(,) *i j* . The handshake consists of the following steps13.

at any control-time slot.

*i*

these cycles as scheduling cycles. Within a scheduling cycle, the nodes in 2

scheduling-packet transmission.

neighbors, be denoted by 2

follows12.

described in detail in [32, 33].

successful at both *i* and *j* .

every 2 *i*

The nodes in 2

of selection.

The order that nodes in 2

Greedy scheduling (GS) policies [29] have been developed that achieve the same efficiency ratio of GMS [17, 25, 28]. In the GS policies, nodes calculate locally the next schedule based on the links that have the maximum local weights.

In [17, 20-23], a maximal scheduling (MS) approach is described. In this approach, maximum weight is not required to schedule a link. A link is eligible for the next schedule as long as it has enough packets in the queue to transmit during the entire duration of a frame. The efficiency ratio of MS scheduling policies is 1/ , where is the maximum number of non-interfering links in the interference set of any link in the network. MS policies have also been adapted to multi-hop flow scenarios10 in which a set of flows with their respective rates and routes are given [16, 20-23].

Lastly, distributed scheduling policies of complexity *O*(1) have been developed in [18, 24, 30]. These are known as constant time (CT) scheduling policies [17]. The CT approach differs from the MS approach in that when a link does not interfere with the links in a schedule, it is selected with probability less than one. Therefore, in CT scheduling policies, frames can be wasted with some probability greater than zero. In [30], CT policies are proposed for the 1 hop and 2-hop interference models11. The efficiency ratios of these policies were improved in

[18, 24]. In [25], the improved efficiency ratios are 1 1 <sup>2</sup> *<sup>m</sup>* and 21 1 *n*ˆ 2 *m* for the 1-hop

and 2-hop interference models respectively, where *n*ˆ is the maximum number of 1-hop neighboring links for any link of the network.

#### **2.2. Reservation-based distributed scheduling**

In an RBDS wireless network, the nodes negotiate with their neighbors the reservation of future data-time slots for their links. This negotiation is based on a three-way handshake that consists of a request, a grant, and a grant confirmation. Requests, grants, and grant confirmations are transmitted in scheduling packets. The nodes access the control-time slots for transmitting scheduling packets using an election algorithm. Therefore, in an RBDS wireless network, the nodes access the wireless channel using two different algorithms: the

<sup>10</sup>A multi-hop flow has a path that is at least 2 links long.

<sup>11</sup>In the 2-hop interference model, only the links that the 1-hop or 2-hop neighbors of a node belong to interfere with the links that the node belongs to. The 2-hop neighbors of a node are the nodes that have a shortest path to the node of length 2 links.

election algorithm and the RBDS algorithm, whose roles are to avoid collisions and wasted time slots in the control and data subframes respectively.

28 Wireless Mesh Networks – Efficient Link Scheduling, Channel Assignment and Network Planning Strategies

allow that assumption to be made.

on the links that have the maximum local weights.

frame. The efficiency ratio of MS scheduling policies is 1/

their respective rates and routes are given [16, 20-23].

[18, 24]. In [25], the improved efficiency ratios are 1 1

neighboring links for any link of the network.

<sup>10</sup>A multi-hop flow has a path that is at least 2 links long.

length 2 links.

**2.2. Reservation-based distributed scheduling** 

frame if the new schedule reduces the neighborhood's weight by more than the current schedule. The algorithm has constant complexity, so it does not depend on the number of nodes of the network. It does depend, however, on the diameter of the neighborhood. The efficiency ratio increases as the diameter of the neighborhood increases. The algorithm assumes the 1-hop interference model, so it can only be directly used on networks with physical layers such as frequency-hopping code-division-multiple-access (FH-CDMA) that

Greedy scheduling (GS) policies [29] have been developed that achieve the same efficiency ratio of GMS [17, 25, 28]. In the GS policies, nodes calculate locally the next schedule based

In [17, 20-23], a maximal scheduling (MS) approach is described. In this approach, maximum weight is not required to schedule a link. A link is eligible for the next schedule as long as it has enough packets in the queue to transmit during the entire duration of a

number of non-interfering links in the interference set of any link in the network. MS policies have also been adapted to multi-hop flow scenarios10 in which a set of flows with

Lastly, distributed scheduling policies of complexity *O*(1) have been developed in [18, 24, 30]. These are known as constant time (CT) scheduling policies [17]. The CT approach differs from the MS approach in that when a link does not interfere with the links in a schedule, it is selected with probability less than one. Therefore, in CT scheduling policies, frames can be wasted with some probability greater than zero. In [30], CT policies are proposed for the 1 hop and 2-hop interference models11. The efficiency ratios of these policies were improved in

and 2-hop interference models respectively, where *n*ˆ is the maximum number of 1-hop

In an RBDS wireless network, the nodes negotiate with their neighbors the reservation of future data-time slots for their links. This negotiation is based on a three-way handshake that consists of a request, a grant, and a grant confirmation. Requests, grants, and grant confirmations are transmitted in scheduling packets. The nodes access the control-time slots for transmitting scheduling packets using an election algorithm. Therefore, in an RBDS wireless network, the nodes access the wireless channel using two different algorithms: the

<sup>11</sup>In the 2-hop interference model, only the links that the 1-hop or 2-hop neighbors of a node belong to interfere with the links that the node belongs to. The 2-hop neighbors of a node are the nodes that have a shortest path to the node of

, where

<sup>2</sup> *<sup>m</sup>* and 21 1

*n*ˆ 2 *m* 

is the maximum

for the 1-hop

In this chapter we assume that the election algorithm is given, and we focus on the RBDS algorithm only. For example, in the IEEE 802.16 standard [31], the election algorithm is completely specified while the link-scheduling algorithm is not. The standard only specifies the control messages that can be used for the implementation of RBDS policies. We adopt the election algorithm of IEEE 802.16 wireless mesh networks with coordinated distributed scheduling. Also, it is assumed that the RBDS wireless network follows the 2-hop interference model, which is the model considered in the IEEE 802.16 standard [31].

In the IEEE-802.16 election algorithm, the nodes in every 2-hop neighborhood take turns by competing between them to access the control-time slots and transmit scheduling packets. Let the 2-hop neighborhood of node *i* , i.e., node *i* , its 1-hop neighbors, and its 2-hop neighbors, be denoted by 2 *i* . We model the operation of this election algorithm as follows12.


When nodes *i* and *j* exchange scheduling messages to perform the three-way handshake, they schedule data packets on link (,) *i j* and multicast the negotiated schedule to all links in (,) *i j* . The handshake consists of the following steps13.


The reservation of the data-time slots takes place at steps 2 and 3. When node *j* transmits its scheduling packet, *j* 's 1-hop neighbors receive the grant and mark the granted data-time slots as unavailable. When node *i* confirms the grant, *i* 's 1-hop neighbors receive the grant and mark the granted data-time slots as unavailable too. Therefore, at the end of step 3, all

<sup>12</sup>The operation of the election algorithm for IEEE 802.16 mesh networks with coordinated distributed scheduling is described in detail in [32, 33].

<sup>13</sup>It is assumed that in this handshake node *j* grants node *i* 's request and that the data-packet-slot reservation is successful at both *i* and *j* .

links in (,) *i j* have made the granted data-time slots unavailable (i.e., the grant has been multicast to all links in (,) *i j* ).

Stability-Based Topology Control in Wireless Mesh Networks 31

e

( ) { : ( ) , }) *i j ij ij g l lf m m g g f lm* .

(7)

(,) (,) ( ), ( ), ( ) : ( , ) , . *ij ij <sup>i</sup> Q m Q m M m ij i i o* (8)

*f* component at the frame following the interfering grant

*f* component at the

*g*

In an RBDS network, each link has an input-queue and an output-queue as described in Section 3. The length of an input-queue (i.e., (,)( ) *i j Q m <sup>i</sup>* ) is defined as the number of data packets in the queue. The length of an output-queue (i.e., (,)( ) *i j Q m <sup>o</sup>* ) corresponds to the number of data-subframes in the following frame range: from the current frame to the last frame scheduled for the packets in the output-queue. Therefore, the length of output-queues does not depend on the number of scheduled packets waiting to be transmitted but on the schedules of those packets. The length of output-queues is given by Equation 714, where (,) *i j*

is the set of unexpired grants of link (,) *i j* (i.e., (,) (,) (,)

scheduling control-time slots of all the nodes. That is,

links, and sets the grant's s

that expires the latest.

unavailable-data-time-slots table.

is the positive-part operator.

x

 14 [ ] 

( ) *M mi* .

 (,) (,) e ( ) [max ( ) : ( ) 1] *i j i j Qm g g m f <sup>o</sup> fg m*

A node transmits scheduling packets by accessing control-time slots according to the election algorithm. The next control-time slot that node *i* is going to access is determined by this algorithm. This control-time slot is denoted by ( ) *M mi* , i.e., at control-time slot *m* , the future control-time slot that node *i* transmits a scheduling packet is control-time slot

Based on the previous definitions, RBDS wireless network =( , ) , where and are the sets of nodes and links respectively, can be represented as a Markovian system whose state is given by the lengths of the input and output queues of all the links and the

Within this framework for RBDS networks, the stability analysis of different RBDS policies

The GM-RBDS policy is as follows. When any node *i* in transmits a scheduling packet, It grants the longest request among all the unexpired requests made by its incoming

For every of its outgoing links, it requests as many consecutive data-subframes as

frame following the interfering grant that expires the latest, and sets every request's

*f* component at the frame scheduled for its next scheduling-packet transmission.

When any node *i* in receives a scheduling packet, it checks whether there is a grant in the packet and whether the grant is directed to one of its outgoing links. If that is the case, it confirms the grant only if the grant does not overlap with any of the grants in the link's

can be performed. In the following, a greedy-maximal RBDS policy is considered.

unscheduled data packets cover entirely, sets every request's s

*2.2.2. The greedy-maximal RBDS policy and its stability region* 

The requests and grants transmitted by the nodes are defined as follows.

**Definition 1.** Request (,) s x ( , ,) *i j m r ffz* , where <sup>3</sup> s x ( , ,) *ffz N* , is the request transmitted by node *i* at control-time slot *m* that requests for link (,) *i j* the data-time slots of *z* consecutive data-subframes starting at frame s *f* or any other frame after s *f* . Request (,) *i j m r* expires at the onset of frame x *f* .

**Definition 2.** Grant (,) s e (,) *i j mg f f* , where <sup>2</sup> s e (,) *f f* **N** , is the grant transmitted by node *j* at control-time slot *m* that assigns to link (,) *i j* the data-time slots of the series of frames that starts and ends with frames s *f* and e *f* respectively. Grant (,) *i j mg* expires at the end of frame e *f* .

**Definition 3.** The length of grant (,) *i j mg* , denoted by (,) | | *i j mg* , is the number of data-subframes assigned in the grant. Therefore,

$$|\lg\_m^{(i,j)}| \stackrel{\triangle}{=} f\_\mathbf{e} - f\_\mathbf{s} + \mathbf{1}.$$

In order to implement RBDS policies, each node maintains two tables per link that the node belongs to. These are the unavailable-data-time-slots table and the requested-data-time-slots table. The tables are updated with the grants and requests exchanged with the node's 1-hop neighbors. An unavailable-data-time-slots table contains the set of unexpired grants that interfere with the link that the table belongs to. This set is denoted by (,)( ) *i j <sup>u</sup> <sup>m</sup>* for link (,) *i j* and is given by Equation 5, where (,) e ( ) *x y m f g* is the e *f* component of (,) *x y mg* , and *<sup>m</sup> f* is the current frame number (i.e., the frame that control-time slot *m* belongs to). The requesteddata-time-slots table contains the set of unexpired requests made for the link the table belongs to. This set is denoted by (,)( ) *i j <sup>r</sup> <sup>m</sup>* for link (,) *i j* and is given by Equation 6, where (,) x ( ) *i j m f r* is the x *f* component of (,) *i j m <sup>r</sup>* . (,)( ) *i j <sup>u</sup> <sup>m</sup>* and (,)( ) *i j <sup>r</sup> <sup>m</sup>* are functions of *m* given that the tables are updated with the grants and requests transmitted at every control-time slot.

$$\mathcal{T}^{(i,j)}\_{\
u}(m) \triangleq \{ \mathbf{g}^{(\mathbf{x},y)}\_{l} : \left( \mathbf{g}^{(\mathbf{x},y)}\_{l} \right)\_{\not{f}\_{\mathbf{e}}} \geq f\_{m}, \langle \mathbf{x}, y \rangle \in \mathcal{T}^{(i,j)}, l \leq m \} \tag{5}$$

$$\mathcal{T}\_r^{(i,j)}(m) \triangleq \left\{ r\_l^{(i,j)} : \left( r\_l^{(i,j)} \right)\_{f\_\chi} > f\_{m'} \ l \le m \right\} \tag{6}$$

In RBDS policies, two grants overlap with each other if the frame ranges given by their respective s *f* and e *f* frame numbers have one or more frame numbers in common.

#### *2.2.1. RBDS Markovian system model*

In order for RBDS policies to be mathematically characterized under the framework of network stability proposed in [10], it is necessary to show how networks that use RBDS policies can be modeled as Markovian systems [9].

In an RBDS network, each link has an input-queue and an output-queue as described in Section 3. The length of an input-queue (i.e., (,)( ) *i j Q m <sup>i</sup>* ) is defined as the number of data packets in the queue. The length of an output-queue (i.e., (,)( ) *i j Q m <sup>o</sup>* ) corresponds to the number of data-subframes in the following frame range: from the current frame to the last frame scheduled for the packets in the output-queue. Therefore, the length of output-queues does not depend on the number of scheduled packets waiting to be transmitted but on the schedules of those packets. The length of output-queues is given by Equation 714, where (,) *i j g* is the set of unexpired grants of link (,) *i j* (i.e., (,) (,) (,) e ( ) { : ( ) , }) *i j ij ij g l lf m m g g f lm* .

$$Q\_o^{(i,j)}(m) \triangleq \max\left( \left\langle \left( \mathbf{g} \right)\_{f\_\mathbf{e}} : \mathbf{g} \in \mathcal{T}\_{\mathbf{g}}^{(i,j)}(m) \right\rangle \right) - f\_m + 1\mathbf{1} \tag{7}$$

A node transmits scheduling packets by accessing control-time slots according to the election algorithm. The next control-time slot that node *i* is going to access is determined by this algorithm. This control-time slot is denoted by ( ) *M mi* , i.e., at control-time slot *m* , the future control-time slot that node *i* transmits a scheduling packet is control-time slot ( ) *M mi* .

Based on the previous definitions, RBDS wireless network =( , ) , where and are the sets of nodes and links respectively, can be represented as a Markovian system whose state is given by the lengths of the input and output queues of all the links and the scheduling control-time slots of all the nodes. That is,

$$\mathcal{S}^{\mathcal{G}} \triangleq \left| Q\_i^{(i,j)}(m)\_\prime Q\_\prime^{(i,j)}(m)\_\prime M^i(m) : (i,j) \in \mathcal{L}, i \in \mathcal{N} \right|. \tag{8}$$

Within this framework for RBDS networks, the stability analysis of different RBDS policies can be performed. In the following, a greedy-maximal RBDS policy is considered.

#### *2.2.2. The greedy-maximal RBDS policy and its stability region*

The GM-RBDS policy is as follows. When any node *i* in transmits a scheduling packet,


When any node *i* in receives a scheduling packet, it checks whether there is a grant in the packet and whether the grant is directed to one of its outgoing links. If that is the case, it confirms the grant only if the grant does not overlap with any of the grants in the link's unavailable-data-time-slots table.

30 Wireless Mesh Networks – Efficient Link Scheduling, Channel Assignment and Network Planning Strategies

*r ffz* , where <sup>3</sup>

The requests and grants transmitted by the nodes are defined as follows.

*mg f f* , where <sup>2</sup>

*f* and e

(,)

s x ( , ,) *i j*

*f* .

s e (,) *i j*

*m*

consecutive data-subframes starting at frame s

multicast to all links in (,) *i j* ).

**Definition 1.** Request (,)

expires at the onset of frame x

that starts and ends with frames s

**Definition 3.** The length of grant (,) *i j*

and is given by Equation 5, where (,)

*f* component of (,) *i j*

assigned in the grant. Therefore,

**Definition 2.** Grant (,)

frame e *f* .

(,) x ( ) *i j m f*

*r* is the x

respective s

*f* and e

*2.2.1. RBDS Markovian system model* 

can be modeled as Markovian systems [9].

links in (,) *i j* have made the granted data-time slots unavailable (i.e., the grant has been

node *i* at control-time slot *m* that requests for link (,) *i j* the data-time slots of *z*

at control-time slot *m* that assigns to link (,) *i j* the data-time slots of the series of frames

*mg* , denoted by (,) | | *i j*

e s | | 1. *i j mg ff*

In order to implement RBDS policies, each node maintains two tables per link that the node belongs to. These are the unavailable-data-time-slots table and the requested-data-time-slots table. The tables are updated with the grants and requests exchanged with the node's 1-hop neighbors. An unavailable-data-time-slots table contains the set of unexpired grants that interfere with the link that the table belongs to. This set is denoted by (,)( ) *i j <sup>u</sup> <sup>m</sup>* for link (,) *i j*

e

the tables are updated with the grants and requests transmitted at every control-time slot.

In RBDS policies, two grants overlap with each other if the frame ranges given by their

In order for RBDS policies to be mathematically characterized under the framework of network stability proposed in [10], it is necessary to show how networks that use RBDS policies

(,) ( , ) ( , ) (,) e

(,) (,) (,)

*m f g* is the e

current frame number (i.e., the frame that control-time slot *m* belongs to). The requesteddata-time-slots table contains the set of unexpired requests made for the link the table belongs to. This set is denoted by (,)( ) *i j <sup>r</sup> <sup>m</sup>* for link (,) *i j* and is given by Equation 6, where

( ) *x y*

*m*

s x ( , ,) *ffz N* , is the request transmitted by

s e (,) *f f* **N** , is the grant transmitted by node *j*

*f* component of (,) *x y*

*<sup>r</sup>* . (,)( ) *i j <sup>u</sup> <sup>m</sup>* and (,)( ) *i j <sup>r</sup> <sup>m</sup>* are functions of *m* given that

( ) { :( ) ,( , ) , } *i j xy xy i j u l lf m m g g f xy l m* (5)

( ) { :( ) > , } *i j ij ij r l lf m m r r flm* (6)

x

*f* frame numbers have one or more frame numbers in common.

*f* . Request (,) *i j*

*mg* expires at the end of

*mg* , and *<sup>m</sup>*

*f* is the

*mg* , is the number of data-subframes

*m r*

*f* or any other frame after s

*f* respectively. Grant (,) *i j*

<sup>14</sup> [ ] is the positive-part operator.

The GM-RBDS policy is greedy maximal in the sense that the requests that are granted are the longest requests and each request corresponds to the maximum integer number of datasubframes that are covered by a link's unscheduled data packets (i.e., each request corresponds to (,) ds *i j Qi m* , where (,) *i j Qi* is the number of unscheduled data packets to be transmitted on link (,) *i j* , and *m*ds is the number of data-time slots per data-subframe).

Stability-Based Topology Control in Wireless Mesh Networks 33

according to Equation 9 (i.e.,

*jp f* (10)

*f* is the th *n* flow

is the

*f* , and max *j* 

for the greedy policies

Therefore, in order to guarantee stability under shortest-path routing and GM-RBDS, the data-packet rate of a flow must be less than the following rate: the minimum packet rate among all the packet rates that nodes along the flow's path can assign to the flow. This is

> *j*

**Remark.** Notice that the sufficient condition for stability given by Equation 9 is of the same form of the condition for the non-RBDS greedy policies analyzed in [23] (Equation 4 in [23]). That is, the total packet-arrival rate of a set of interfering links needs to be lower than some constant in order to guarantee stability, and the constant depends on some characteristic of

*<sup>i</sup> <sup>j</sup>* for the GM-RBDS policy, and

in [23]). Other policies have the same behavior as well. For example, the stability properties of GMS [27] and the bipartite simulation (BP-SIM) [24] policies depend on the local-pooling factor16 and the maximum node degree17 of the network respectively, and these are

In this section, we look at the problem of topology control for adapting the stability region of the backbone of the wireless mesh network to a given set of flows such that the total throughput is improved. This topology-control framework was originally studied in [34-36]. Specifically, we ask the question of what are the nodes' transmission powers (TP) that adapt the stability region to the flows in the network when a set of source-destination pairs, the routing algorithm, and the link-scheduling policy are given. Notice that by adapting the TPs of the nodes (i.e., wireless mesh routers and gateways), the topology of the network is being controlled due to the creation and elimination of links. Also, notice that the flows correspond to the traffic established across the wireless mesh routers and gateways of the network.

By adapting the stability region of the network, the queue lengths across the network are decreased in average for a given set of flows' data-packet rates. In this way, the flows among the source-destination pairs are able to maintain higher levels of end-to-end throughput and lower levels of end-to-end delay while guaranteeing queue stability. Therefore, the problem considered in this chapter is of particular interest for applications that establish non-bursty

<sup>16</sup> The local-pooling factor is a topological property of the network that indicates how different the effectiveness of the different maximal link schedules is from each other [27]. When the different maximal link schedules are similarly effective, GMS policies are able to support packet rates that are closer to the boundaries of the optimal stability region.

sessions between source-destination pairs such as audio/video calls.

<sup>17</sup> The node degree is defined as the number of links that the node belongs to. 18 The material presented in this section is based on the material presented in [34, 36].

is the data-packet rate of flow *<sup>n</sup>*

shown in Equation 10, where is the set of data flows in the network, *<sup>n</sup>*

*f* , *<sup>n</sup>* 

max < min{ : } *<sup>j</sup> n n n*

 

in , *<sup>n</sup> p* is the path followed by *<sup>n</sup>*

max a a <sup>d</sup> (5 | \ |) *<sup>j</sup> ij j <sup>i</sup> <sup>j</sup> <sup>i</sup>*

 *<sup>d</sup>* ).

the network topology (i.e., a a \

determined by the network topology.

**3. Stability-based topology control18**

upper-bound for node *j* 's rate f

(,) 1

The size of the stability region of the GM-RBDS policy depends on the ability of the links to perform the three-way handshakes successfully. If the probability that a link finishes successfully a three-way handshake is low, the link's queue will decrease at a lower rate. Therefore, the link's ability to forward data packets within some time range is going to be lower (i.e., the highest packet rate supported by the link is lowered), and this reduces the size of the stability region. In [8], it was shown that the probability that a three-way handshake of link (,) *i j* is successful depends on the following aspects of the 2-hop neighborhoods of nodes *i* and *j* .


Based on the probability of successful three-way handshakes, sufficient conditions that guarantee queue stability under the GM-RBDS policy are given as follows15.

**Theorem 1.** Let =( , ) be a wireless mesh network that operates under GM-RBDS, shortest-path routing, and the 2-hop interference model, where and are the sets of nodes and links of the network respectively. Let f *j* be the maximum packet rate that node *j* can support for each of the flows for which it is an intermediate or destination node. is stable if the packet rate f *j* supported by every node *j* in satisfies Equation 9.

$$\mathcal{L}\_{\mathbf{i}}^{j} < \frac{1}{5 \sum\_{i \in \mathcal{S}\_{\mathbf{d}}^{j}} d^{(i,j)} \mid \mathcal{S}\_{\mathbf{a}}^{i} \backslash \mathcal{S}\_{\mathbf{a}}^{j} \mid \tag{9}} \quad \forall \ j \in \mathcal{N} \tag{9}$$

<sup>15</sup>The proof of Theorem 1 is given in [34].

Therefore, in order to guarantee stability under shortest-path routing and GM-RBDS, the data-packet rate of a flow must be less than the following rate: the minimum packet rate among all the packet rates that nodes along the flow's path can assign to the flow. This is shown in Equation 10, where is the set of data flows in the network, *<sup>n</sup> f* is the th *n* flow in , *<sup>n</sup> p* is the path followed by *<sup>n</sup> f* , *<sup>n</sup>* is the data-packet rate of flow *<sup>n</sup> f* , and max *j* is the upper-bound for node *j* 's rate f *j* according to Equation 9 (i.e., (,) 1 max a a <sup>d</sup> (5 | \ |) *<sup>j</sup> ij j <sup>i</sup> <sup>j</sup> <sup>i</sup> <sup>d</sup>* ).

$$
\mathcal{A}\_n \prec \min \{ \mathcal{A}\_{\max}^j : j \in p\_n \} \quad \forall \ f\_n \in \mathcal{F} \tag{10}
$$

**Remark.** Notice that the sufficient condition for stability given by Equation 9 is of the same form of the condition for the non-RBDS greedy policies analyzed in [23] (Equation 4 in [23]). That is, the total packet-arrival rate of a set of interfering links needs to be lower than some constant in order to guarantee stability, and the constant depends on some characteristic of the network topology (i.e., a a \ *<sup>i</sup> <sup>j</sup>* for the GM-RBDS policy, and for the greedy policies in [23]). Other policies have the same behavior as well. For example, the stability properties of GMS [27] and the bipartite simulation (BP-SIM) [24] policies depend on the local-pooling factor16 and the maximum node degree17 of the network respectively, and these are determined by the network topology.

#### **3. Stability-based topology control18**

32 Wireless Mesh Networks – Efficient Link Scheduling, Channel Assignment and Network Planning Strategies

transmitted on link (,) *i j* , and *m*ds is the number of data-time slots per data-subframe).

The size of the stability region of the GM-RBDS policy depends on the ability of the links to perform the three-way handshakes successfully. If the probability that a link finishes successfully a three-way handshake is low, the link's queue will decrease at a lower rate. Therefore, the link's ability to forward data packets within some time range is going to be lower (i.e., the highest packet rate supported by the link is lowered), and this reduces the size of the stability region. In [8], it was shown that the probability that a three-way handshake of link (,) *i j* is successful depends on the following aspects of the 2-hop

 The set of active nodes that *i* can listen to but *j* cannot, where an active node is a node that either forwards data-packets or is the destination node for at least one flow. This

The degree (,) *i j d* of link (,) *i j* , which is defined as the number flows that traverse link

 The direct 1-hop neighborhood of a node which is defined as the set of 1-hop neighbors that send data packets to the node. Therefore, the direct 1-hop neighbors of a node always precede the node in at least one flow's path. Node *j* 's direct 1-hop neighborhood

Based on the probability of successful three-way handshakes, sufficient conditions that

**Theorem 1.** Let =( , ) be a wireless mesh network that operates under GM-RBDS, shortest-path routing, and the 2-hop interference model, where and are the sets of

*j* can support for each of the flows for which it is an intermediate or destination node. is

1

5 |\|

*ij j i*

a a

*<sup>j</sup> <sup>d</sup>*

*j* 

supported by every node *j* in satisfies Equation 9.

corresponds to

(,)

ds *i j Qi m* 

neighborhoods of nodes *i* and *j* .

set is given by a a \

is denoted by d

stable if the packet rate f

<sup>15</sup>The proof of Theorem 1 is given in [34].

*<sup>j</sup>* .

nodes and links of the network respectively. Let f

*j* 

(,) *i j* .

*<sup>i</sup> <sup>j</sup>* , where a

refers to the relative complement, i.e., aa a a \{ : }

guarantee queue stability under the GM-RBDS policy are given as follows15.

f (,)

 

*<sup>j</sup> <sup>i</sup>*

<

*j*

d

The GM-RBDS policy is greedy maximal in the sense that the requests that are granted are the longest requests and each request corresponds to the maximum integer number of datasubframes that are covered by a link's unscheduled data packets (i.e., each request

, where (,) *i j Qi* is the number of unscheduled data packets to be

*<sup>i</sup>* is the set of active 1-hop neighbors of node *i* , and \

be the maximum packet rate that node

(9)

*i i <sup>j</sup> <sup>j</sup> k k* .

In this section, we look at the problem of topology control for adapting the stability region of the backbone of the wireless mesh network to a given set of flows such that the total throughput is improved. This topology-control framework was originally studied in [34-36]. Specifically, we ask the question of what are the nodes' transmission powers (TP) that adapt the stability region to the flows in the network when a set of source-destination pairs, the routing algorithm, and the link-scheduling policy are given. Notice that by adapting the TPs of the nodes (i.e., wireless mesh routers and gateways), the topology of the network is being controlled due to the creation and elimination of links. Also, notice that the flows correspond to the traffic established across the wireless mesh routers and gateways of the network.

By adapting the stability region of the network, the queue lengths across the network are decreased in average for a given set of flows' data-packet rates. In this way, the flows among the source-destination pairs are able to maintain higher levels of end-to-end throughput and lower levels of end-to-end delay while guaranteeing queue stability. Therefore, the problem considered in this chapter is of particular interest for applications that establish non-bursty sessions between source-destination pairs such as audio/video calls.

<sup>16</sup> The local-pooling factor is a topological property of the network that indicates how different the effectiveness of the different maximal link schedules is from each other [27]. When the different maximal link schedules are similarly effective, GMS policies are able to support packet rates that are closer to the boundaries of the optimal stability region. <sup>17</sup> The node degree is defined as the number of links that the node belongs to.

<sup>18</sup> The material presented in this section is based on the material presented in [34, 36].

Stability-Based Topology Control in Wireless Mesh Networks 35

[40], a random-power-selection algorithm for random-access scheduling policies was proposed. It is shown that it achieves maximal throughput in the following sense: the throughput achieved by any fixed power selection is at most equal to the throughput achieved by the

Our approach is built upon the idea of [37, 38] that under certain topologies a link scheduling policy performs better. We modify realistically the network topology using TP control to adapt the policy's stability region to the flows. The algorithm receives any set of end-to-end paths, node locations, and scheduling policy, and adapts the policy's stability region to the paths. Such an approach is beneficial because it improves the end-to-end throughput and delay without the restrictions previously discussed. In this chapter, we consider the case of shortest-path routing, GM-RBDS scheduling, and randomly chosen source-destination pairs

Other heuristic algorithms have been proposed in the literature that improve the performance of the link-scheduling policy in terms of throughput by means of TP control. These algorithms include the ones reported in [41-43] whose basic idea is to increase the total throughput in the network by means of spatial reuse. The spatial reuse is increased by reducing the TP of the nodes. The algorithms differ between them in the way they are adapted to request-to-send (RTS)/clear-to-send (CTS) based protocols. In [44, 45], it is shown that better throughput improvements can be achieved not only by decreasing the TP to increase the spatial reuse but also by considering the hidden and exposed nodes. The algorithms proposed in [44] perform TP control with the objective of avoiding hidden nodes. In this way, the links in the network are able to sustain higher data-packet rates. In [46], a TP control algorithm for RTS/CTS-based protocols is proposed that decreases the area occupied by links during their transmissions, which is defined as the area in which other nodes must remain silent during the time the link is active. Then, it is shown that with this scheme, routing algorithms that favor short hops achieve higher levels of throughput. The goal of our algorithm is similar to the goal of the previous algorithms [41-46], i.e., to increase the data-packet rates that a given link-scheduling policy can support by means of TP control. However, our approach differs in that it is directly based on a quantitative metric which is the stability region. It is not based on qualitative observations of the operation of the link-scheduling policy such as the hidden and exposed nodes in RTS/CTS-based policies. Therefore, it can be readily adapted to any link-scheduling policy whose stability region has

A different type of TP control algorithms, which are based on optimization techniques, are discussed in [47, 48]. In [47], the problem of integrated link scheduling and TP control for throughput optimization is shown to be nondeterministic polynomial time (NP) complete. Therefore, a heuristic algorithm is developed. The goal of the algorithm is to minimize the schedule length necessary to satisfy all the link loads determined by a given routing algorithm. By minimizing the schedule length, the total throughput of the network is increased because more scheduling cycles can be performed per time unit. In [48], the problem of jointly optimizing the flow routes, link schedules, TP, modulation and coding schemes is addressed. This is a more general problem than the one considered in [47] given that it does

random-power-selection algorithm.

of nodes in IEEE 802.16 mesh networks.

been characterized such as the ones discussed in Section 4.

In order to adapt the stability region, we propose an algorithm that is executed by the flows established between the source-destination pairs. The idea behind the algorithm is to adapt a lower-bound region of the stability region (i.e., a region covered by the stability region) by modifying the TPs. The lower-bound region is a widely accepted theoretical performance metric used for comparing different link-scheduling policies [23]19. In the algorithm, once the flows' paths are determined by the routing algorithm, the flows calculate the maximum data-packet rate they can support within the lower-bound region; then, each flow tries to stretch the lower-bound region by modifying the TP of nodes surrounding it. The effect that the stretch of the lower-bound region has on the stability region is another stretch on this region. Therefore, the result is a stability region adapted to the flows that allows them to support higher data-packet rates while guaranteeing the stability of the network. A graphical example of this adaptation was shown in Figure 5.

We consider IEEE 802.16 wireless mesh networks that operate under shortest-path routing and the GM-RBDS policy. However, our results can be readily extended to other networks, routing algorithms, and link-scheduling policies.

#### **3.1. Stability-region expansion algorithms**

The main idea presented in this chapter (i.e., adapting the stability region of a given linkscheduling policy by means of TP control) is based on the results obtained in [37, 38, 39]. In [37], the network is partitioned based on the notion of local pooling, and each partition is assigned to a channel of the network. In this way, the GMS policy is guaranteed to achieve the optimal stability region in each channel. In [38, 39], network topologies are identified for which distributed link-scheduling policies achieve the optimal stability region. However, these network topologies are not suitable for real scenarios [27] because of their sufficient conditions that guarantee the optimal stability region. These conditions include [38] 1-hop interference, 1 hop traffic, and a topology that is a graph that belongs to one of the following perfect-graph classes: chordal graphs, chordal bipartite graphs, cographs, and a subgroup of cocomparability graphs. In real scenarios, these conditions limit the suitability of wireless mesh networks. For example, only a few physical-layer technologies such as code-division-multipleaccess (CDMA) can be approximated with the 1-hop interference model, and the traffic in wireless mesh networks is multihop by definition. Also, making the topology fall within the previous graph families imposes constraints on the locations and TPs of the nodes and the available routes. The multihop traffic case was considered in [38], and it was shown that only a subset of the previous graph families guarantee the optimal stability region in the multihoptraffic scenario. These were identified as forest of stars, where every connected component of the network graph is a star graph. Also, the results in [37, 38] are valid only for GMS policies under 1-hop traffic or backpressure routing-scheduling policies under multihop traffic20. In

<sup>19</sup>The reason for this is that the exact formulation of the stability region is not actually available. The stability region is usually characterized with the lower-bound region because its exact characterization is not feasible due to its complexity. See [8, 10, 11, 16, 18, 19, 23-25, 29, 30] for the literature on the problem of characterizing the stability region of link-scheduling policies.

<sup>20</sup>It should be noted that the objective in [37, 38] was mainly to identify the topologies that enable the optimality of the GMS policy, and not to design topology-control algorithms.

[40], a random-power-selection algorithm for random-access scheduling policies was proposed. It is shown that it achieves maximal throughput in the following sense: the throughput achieved by any fixed power selection is at most equal to the throughput achieved by the random-power-selection algorithm.

34 Wireless Mesh Networks – Efficient Link Scheduling, Channel Assignment and Network Planning Strategies

ical example of this adaptation was shown in Figure 5.

routing algorithms, and link-scheduling policies.

**3.1. Stability-region expansion algorithms** 

of link-scheduling policies.

GMS policy, and not to design topology-control algorithms.

In order to adapt the stability region, we propose an algorithm that is executed by the flows established between the source-destination pairs. The idea behind the algorithm is to adapt a lower-bound region of the stability region (i.e., a region covered by the stability region) by modifying the TPs. The lower-bound region is a widely accepted theoretical performance metric used for comparing different link-scheduling policies [23]19. In the algorithm, once the flows' paths are determined by the routing algorithm, the flows calculate the maximum data-packet rate they can support within the lower-bound region; then, each flow tries to stretch the lower-bound region by modifying the TP of nodes surrounding it. The effect that the stretch of the lower-bound region has on the stability region is another stretch on this region. Therefore, the result is a stability region adapted to the flows that allows them to support higher data-packet rates while guaranteeing the stability of the network. A graph-

We consider IEEE 802.16 wireless mesh networks that operate under shortest-path routing and the GM-RBDS policy. However, our results can be readily extended to other networks,

The main idea presented in this chapter (i.e., adapting the stability region of a given linkscheduling policy by means of TP control) is based on the results obtained in [37, 38, 39]. In [37], the network is partitioned based on the notion of local pooling, and each partition is assigned to a channel of the network. In this way, the GMS policy is guaranteed to achieve the optimal stability region in each channel. In [38, 39], network topologies are identified for which distributed link-scheduling policies achieve the optimal stability region. However, these network topologies are not suitable for real scenarios [27] because of their sufficient conditions that guarantee the optimal stability region. These conditions include [38] 1-hop interference, 1 hop traffic, and a topology that is a graph that belongs to one of the following perfect-graph classes: chordal graphs, chordal bipartite graphs, cographs, and a subgroup of cocomparability graphs. In real scenarios, these conditions limit the suitability of wireless mesh networks. For example, only a few physical-layer technologies such as code-division-multipleaccess (CDMA) can be approximated with the 1-hop interference model, and the traffic in wireless mesh networks is multihop by definition. Also, making the topology fall within the previous graph families imposes constraints on the locations and TPs of the nodes and the available routes. The multihop traffic case was considered in [38], and it was shown that only a subset of the previous graph families guarantee the optimal stability region in the multihoptraffic scenario. These were identified as forest of stars, where every connected component of the network graph is a star graph. Also, the results in [37, 38] are valid only for GMS policies under 1-hop traffic or backpressure routing-scheduling policies under multihop traffic20. In

<sup>19</sup>The reason for this is that the exact formulation of the stability region is not actually available. The stability region is usually characterized with the lower-bound region because its exact characterization is not feasible due to its complexity. See [8, 10, 11, 16, 18, 19, 23-25, 29, 30] for the literature on the problem of characterizing the stability region

<sup>20</sup>It should be noted that the objective in [37, 38] was mainly to identify the topologies that enable the optimality of the

Our approach is built upon the idea of [37, 38] that under certain topologies a link scheduling policy performs better. We modify realistically the network topology using TP control to adapt the policy's stability region to the flows. The algorithm receives any set of end-to-end paths, node locations, and scheduling policy, and adapts the policy's stability region to the paths. Such an approach is beneficial because it improves the end-to-end throughput and delay without the restrictions previously discussed. In this chapter, we consider the case of shortest-path routing, GM-RBDS scheduling, and randomly chosen source-destination pairs of nodes in IEEE 802.16 mesh networks.

Other heuristic algorithms have been proposed in the literature that improve the performance of the link-scheduling policy in terms of throughput by means of TP control. These algorithms include the ones reported in [41-43] whose basic idea is to increase the total throughput in the network by means of spatial reuse. The spatial reuse is increased by reducing the TP of the nodes. The algorithms differ between them in the way they are adapted to request-to-send (RTS)/clear-to-send (CTS) based protocols. In [44, 45], it is shown that better throughput improvements can be achieved not only by decreasing the TP to increase the spatial reuse but also by considering the hidden and exposed nodes. The algorithms proposed in [44] perform TP control with the objective of avoiding hidden nodes. In this way, the links in the network are able to sustain higher data-packet rates. In [46], a TP control algorithm for RTS/CTS-based protocols is proposed that decreases the area occupied by links during their transmissions, which is defined as the area in which other nodes must remain silent during the time the link is active. Then, it is shown that with this scheme, routing algorithms that favor short hops achieve higher levels of throughput. The goal of our algorithm is similar to the goal of the previous algorithms [41-46], i.e., to increase the data-packet rates that a given link-scheduling policy can support by means of TP control. However, our approach differs in that it is directly based on a quantitative metric which is the stability region. It is not based on qualitative observations of the operation of the link-scheduling policy such as the hidden and exposed nodes in RTS/CTS-based policies. Therefore, it can be readily adapted to any link-scheduling policy whose stability region has been characterized such as the ones discussed in Section 4.

A different type of TP control algorithms, which are based on optimization techniques, are discussed in [47, 48]. In [47], the problem of integrated link scheduling and TP control for throughput optimization is shown to be nondeterministic polynomial time (NP) complete. Therefore, a heuristic algorithm is developed. The goal of the algorithm is to minimize the schedule length necessary to satisfy all the link loads determined by a given routing algorithm. By minimizing the schedule length, the total throughput of the network is increased because more scheduling cycles can be performed per time unit. In [48], the problem of jointly optimizing the flow routes, link schedules, TP, modulation and coding schemes is addressed. This is a more general problem than the one considered in [47] given that it does not only include the calculation of TPs and link schedules but also includes the routing and physical layers (i.e., flow routes, modulation, and coding schemes). In our algorithm, we are only concerned in the TP control problem when the flows and link-scheduling policy are given. That is, for a given set of flows, we determine TPs that improve the performance of the link-scheduling policy in terms of throughput and end-to-end delay.

#### **3.2. The HSRA-topology-control algorithm**

The goal of our TP control algorithm is to expand the lower-bound region given by Equation 10. By expanding this region, the flow rates *<sup>n</sup>* can take higher values while guaranteeing stability, and therefore, the maximum total throughput the network can support for the given flows is increased. Let the maximum total throughput be denoted by T and defined in terms of the lower-bound region for the flows' data-packet rates given by Equation 10 as follows.

$$\mathcal{Z}\_{\Gamma} \stackrel{\Delta}{=} \sum\_{p\_n \in \mathcal{F}} \min \{ \mathcal{Z}\_{\text{max}}^j : j \in p\_n \} \tag{11}$$

Stability-Based Topology Control in Wireless Mesh Networks 37

.

*r* is the transmission radius of node *i* , max *r* is the maximum transmission radius,

could be achieved if the flow paths were modified by including them as

**Remark.** In the SRA-TM problem, the flow paths are given and left unmodified. Higher

decision variables. For example, a routing scheme can uniformly distribute the traffic loads across the links of the network so that links with high levels of congestion are avoided. This problem corresponds to a joint optimization of the topology and flow paths based on the stability region. This problem can be further studied due to its potential benefits on T

However, this chapter deals only with the stability-region-based topology control as a first step towards the problem of stability-region-based joint topology and routing control.

**Remark.** If the data traffic in the network changes dynamically, the flow paths may change as well. In this scenario, the SRA-TM problem needs to be solved for every flow-path change. Therefore, the speed of convergence of algorithms that solve the SRA-TM problem is an important metric for such a scenario. The algorithms should be able to keep up with the rate of change of the flow paths. On the other hand, if the data-traffic levels of a set of flows change but the flow paths do not change, the SRA-TM problem does not need to be solved again. The reason is that the solution of the SRA-TM problem is the topology that allows those flows to support the maximum level of data traffic while guaranteeing stability. This means that the data-traffic levels in the flows may vary as long as they do not exceed

*n n*

In order to solve the SRA-TM problem, the following TP algorithm is proposed. It is called

among all the intermediate and destination nodes of the flow, i.e., let *j* be the bottleneck

**Definition 7.** The MinPower setup is the set of minimum TPs whose transmission ranges

according to the MinPower setup (line 2 of the HSRA Algorithm). By reducing the TPs (Definition 7), the spatial reuse in the network is increased, and as a consequence, the total throughput is increased as well22. Then, the maximum throughput that intermediate and

<sup>21</sup>The SRA-TM problem is formulated as a mixed integer program with non-linear constraints in [34]. This formulation

The following definitions are necessary for the operation of the HSRA algorithm.

The operation of the algorithm is as follows. First, the nodes' TPs (i.e., {: } *<sup>i</sup>*

is used in Section 6 for calculating the optimal solution of the simulated instances of the SRA-TM problem.

*jp f* ), and this can be guaranteed by

, where *<sup>n</sup> p* is the set of nodes in the path of flow

*f* is the node with the lowest maximum rate

*<sup>i</sup> <sup>j</sup> <sup>h</sup>* for some d

*<sup>j</sup> i* .

*r i* ) are set

and || , || *i j* is the Euclidean distance between nodes *i* and *j* .

such maximum levels (i.e., min{ : } max

heuristic stability region adaptation (HSRA)21.

**Definition 5.** The bottleneck node of flow *<sup>n</sup>*

*j argmin*

*<sup>f</sup>* , then { ( ):2 | |} f <sup>=</sup> *<sup>i</sup>*

means of call-admission-control algorithms.

*j*

*i p m mp n n*

**Definition 6.** Node *h* is hidden from node *j* if and only if a a \

22This spatial-reuse-based TP control is the basis of the algorithms proposed [39-43, 46].

guarantee that none of the links of the flows in is broken.

*<sup>f</sup>* , ( ) *<sup>n</sup> p m* is the th *<sup>m</sup>* node in *<sup>n</sup> <sup>p</sup>* , and | |*<sup>n</sup> <sup>p</sup>* is the number of nodes in *<sup>n</sup> <sup>p</sup>* .

where *<sup>i</sup>*

values for T

node of *<sup>n</sup>*

*n*

According to Equations 11, 10, and 9, T depends on the direct 1-hop neighborhoods (i.e., <sup>d</sup> {: } *<sup>j</sup> <sup>j</sup>* ), the link degrees (i.e., (,) { :( , ) } *i j d ij* ), and the active 1-hop neighborhoods (i.e., a {: } *<sup>j</sup> <sup>j</sup>* ) as follows.

$$\mathcal{A}\_{\mathbf{T}} = \sum\_{p\_n \in \mathcal{F}} \left( \min\_{j \in p\_n} \frac{1}{\mathbf{5} \sum\_{i \in \mathcal{S}\_{\mathbf{d}}^j} d^{(i,j)} \mid \mathcal{S}\_{\mathbf{a}}^i \mid \mathcal{S}\_{\mathbf{a}}^j \mid} \right) \tag{12}$$

Given that the flows are determined by the shortest-path routing algorithm, the following parameters in Equation 12 are fixed: { } *<sup>n</sup> <sup>p</sup>* , d {: } *<sup>j</sup> <sup>j</sup>* , and (,) { :( , ) } *i j d ij* . Therefore, in order to increase T , the only parameters that can be modified are the active 1-hop neighborhoods (i.e., a {: } *<sup>j</sup> <sup>j</sup>* ). They can be modified by means of TP control such that T is maximized. This optimization problem, which we call stability region adaptation for throughput maximization (SRA-TM), is given as follows.

**Definition 4.** Given a set of flows calculated by the shortest-path routing algorithm, the SRA-TM problem consists of the maximization of T by means of TP control such that none of the nodes exceed the maximum TP and none of the paths are broken. That is,

$$\begin{aligned} \text{maximize} \quad & \sum\_{p\_n \circ \mathcal{F}} \left( \min\_{j \circ p\_n} \frac{1}{5 \sum\_{i \in \mathcal{S}\_{\mathbf{d}}^j} d^{(i,j)} \mid \mathcal{S}\_{\mathbf{a}}^j \mid \mathcal{S}\_{\mathbf{a}}^j \mid} \right) \\ \text{subject to} \quad & 0 \le r^i \le r^{\text{max}} \quad \forall \ i \in \mathcal{N} \\ & r^i, r^j \ge \mathbb{N}, j \mid \mid \quad \forall \ i \in \mathcal{S}\_{\mathbf{d}}^j, j \in \mathcal{N} \end{aligned} \tag{13}$$

where *<sup>i</sup> r* is the transmission radius of node *i* , max *r* is the maximum transmission radius, and || , || *i j* is the Euclidean distance between nodes *i* and *j* .

36 Wireless Mesh Networks – Efficient Link Scheduling, Channel Assignment and Network Planning Strategies

the link-scheduling policy in terms of throughput and end-to-end delay.

flows is increased. Let the maximum total throughput be denoted by T

throughput maximization (SRA-TM), is given as follows.

subject to 0

SRA-TM problem consists of the maximization of T

*p n* T (,)

<sup>1</sup> <sup>=</sup> min

**3.2. The HSRA-topology-control algorithm** 

10. By expanding this region, the flow rates *<sup>n</sup>*

According to Equations 11, 10, and 9, T

(i.e., a {: } *<sup>j</sup> <sup>j</sup>* ) as follows.

in order to increase T

T

not only include the calculation of TPs and link schedules but also includes the routing and physical layers (i.e., flow routes, modulation, and coding schemes). In our algorithm, we are only concerned in the TP control problem when the flows and link-scheduling policy are given. That is, for a given set of flows, we determine TPs that improve the performance of

The goal of our TP control algorithm is to expand the lower-bound region given by Equation

stability, and therefore, the maximum total throughput the network can support for the given

<sup>T</sup> min{ : } max *j*

<sup>d</sup> {: } *<sup>j</sup> <sup>j</sup>* ), the link degrees (i.e., (,) { :( , ) } *i j d ij* ), and the active 1-hop neighborhoods

d

Given that the flows are determined by the shortest-path routing algorithm, the following parameters in Equation 12 are fixed: { } *<sup>n</sup> <sup>p</sup>* , d {: } *<sup>j</sup> <sup>j</sup>* , and (,) { :( , ) } *i j d ij* . Therefore,

neighborhoods (i.e., a {: } *<sup>j</sup> <sup>j</sup>* ). They can be modified by means of TP control such that

**Definition 4.** Given a set of flows calculated by the shortest-path routing algorithm, the

of the nodes exceed the maximum TP and none of the paths are broken. That is,

<sup>1</sup> maximize min

*i*

is maximized. This optimization problem, which we call stability region adaptation for

(,)

 

5 |\|

d

*d*

*ij j <sup>i</sup> j p <sup>p</sup> <sup>n</sup> <sup>n</sup> <sup>j</sup> <sup>i</sup>*

, || , || , ,

max

*rr i r r ij i j*

*i j j*

a a

d

5 |\| *ij j <sup>i</sup> j p <sup>p</sup> <sup>n</sup> <sup>n</sup> <sup>j</sup> <sup>i</sup> d*

 

 *j p*

*n*

a a

, the only parameters that can be modified are the active 1-hop

(11)

depends on the direct 1-hop neighborhoods (i.e.,

of the lower-bound region for the flows' data-packet rates given by Equation 10 as follows.

can take higher values while guaranteeing

and defined in terms

(12)

by means of TP control such that none

(13)

**Remark.** In the SRA-TM problem, the flow paths are given and left unmodified. Higher values for T could be achieved if the flow paths were modified by including them as decision variables. For example, a routing scheme can uniformly distribute the traffic loads across the links of the network so that links with high levels of congestion are avoided. This problem corresponds to a joint optimization of the topology and flow paths based on the stability region. This problem can be further studied due to its potential benefits on T . However, this chapter deals only with the stability-region-based topology control as a first step towards the problem of stability-region-based joint topology and routing control.

**Remark.** If the data traffic in the network changes dynamically, the flow paths may change as well. In this scenario, the SRA-TM problem needs to be solved for every flow-path change. Therefore, the speed of convergence of algorithms that solve the SRA-TM problem is an important metric for such a scenario. The algorithms should be able to keep up with the rate of change of the flow paths. On the other hand, if the data-traffic levels of a set of flows change but the flow paths do not change, the SRA-TM problem does not need to be solved again. The reason is that the solution of the SRA-TM problem is the topology that allows those flows to support the maximum level of data traffic while guaranteeing stability. This means that the data-traffic levels in the flows may vary as long as they do not exceed such maximum levels (i.e., min{ : } max *j n n jp f* ), and this can be guaranteed by means of call-admission-control algorithms.

In order to solve the SRA-TM problem, the following TP algorithm is proposed. It is called heuristic stability region adaptation (HSRA)21.

The following definitions are necessary for the operation of the HSRA algorithm.

**Definition 5.** The bottleneck node of flow *<sup>n</sup> f* is the node with the lowest maximum rate among all the intermediate and destination nodes of the flow, i.e., let *j* be the bottleneck node of *<sup>n</sup> <sup>f</sup>* , then { ( ):2 | |} f <sup>=</sup> *<sup>i</sup> i p m mp n n j argmin* , where *<sup>n</sup> p* is the set of nodes in the path of flow *n <sup>f</sup>* , ( ) *<sup>n</sup> p m* is the th *<sup>m</sup>* node in *<sup>n</sup> <sup>p</sup>* , and | |*<sup>n</sup> <sup>p</sup>* is the number of nodes in *<sup>n</sup> <sup>p</sup>* .

**Definition 6.** Node *h* is hidden from node *j* if and only if a a \ *<sup>i</sup> <sup>j</sup> <sup>h</sup>* for some d *<sup>j</sup> i* .

**Definition 7.** The MinPower setup is the set of minimum TPs whose transmission ranges guarantee that none of the links of the flows in is broken.

The operation of the algorithm is as follows. First, the nodes' TPs (i.e., {: } *<sup>i</sup> r i* ) are set according to the MinPower setup (line 2 of the HSRA Algorithm). By reducing the TPs (Definition 7), the spatial reuse in the network is increased, and as a consequence, the total throughput is increased as well22. Then, the maximum throughput that intermediate and

<sup>21</sup>The SRA-TM problem is formulated as a mixed integer program with non-linear constraints in [34]. This formulation is used in Section 6 for calculating the optimal solution of the simulated instances of the SRA-TM problem.

<sup>22</sup>This spatial-reuse-based TP control is the basis of the algorithms proposed [39-43, 46].

Stability-Based Topology Control in Wireless Mesh Networks 39

is decreased (Equation 9). Qualitatively, this

*<sup>j</sup>* ). Let *i* be one of these nodes, and

*<sup>i</sup> <sup>j</sup>* factor of other bottleneck nodes.

decrease the maximum rate of other bottleneck nodes in the network, and this maximum-

The 2-hop neighbor of node *j* whose TP is increased is selected so that the factor a a |\| *<sup>i</sup> <sup>j</sup>*

*j* 

TP increase can be explained as follows. Node *j* (i.e., the bottleneck node) has a set of 1-hop

consider the link (,) *i j* and the input and output queues (,) *i j Qi* and (,) *i j Qo* of node *i* as shown in Figure 3. In order for *i* to transmit packets to *j* , a reservation of future data-time slots is required. When nodes *i* and *j* finish this reservation successfully, data packets in node *i* 's input-queue (i.e., (,) *i j Qi* ) are moved to node *<sup>i</sup>* 's output-queue (i.e., (,) *i j Qo* ), and these packets are later pulled from (,) *i j Qo* for their transmission. Therefore, for the queues (,) *i j Qi* and (,) *i j Qo* to have their lengths decreased, the reservation performed by nodes *i* and *j* needs to be successful, i.e., the three-way handshake for scheduling data-packet transmissions on link (,) *i j* needs to be successful. The probability that the handshake is successful and that the queues decrease their length depends on the grants received by node *i* and not received by node *j* . In the following, we refer to these grants as hidden-grants. If *i* requests future data-time slots to *j* and a hidden grant is received by *i* before *j* transmits its grant to *i* , *j* 's grant may not be confirmed by *i* . This is because the hidden grant may interfere with *j* 's grant. On the other hand, if *j* is able to listen to the hidden grant, *j* is able to generate its grant such that it does not interfere with the hidden grant, and *i* will be able to confirm *j* 's grant23. Therefore, in order to increase the probability of handshake success and queue decrease, the TP of the node that transmits the hidden grant (i.e., the node hidden from *j* )

can be increased such that node *j* is able to listen to the hidden node's transmissions.

are bottleneck nodes, higher improvements on the total throughput can be achieved.

the hidden node may also cause an increase on the a a \

based distributed scheduling policies. This problem is studied in detail in [8, 11].

Node *j* may have more than 1 hidden nodes in every incoming link from the nodes in its direct 1-hop neighborhood. The HSRA algorithm chooses only one of those hidden nodes for increasing its TP. The node that is chosen is the node that is hidden from the highest number of nodes (i.e., node *j* and all the other intermediate or destination nodes unable to listen to the hidden node). This is performed in lines 8 to 12 of the HSRA Algorithm. In this way, the maximum rate is increased for all those nodes so that, if one or more of those nodes

The role that the objective function of the SRA-TM problem (Equation 13) plays in the HSRA Algorithm is the quantification of the throughput improvement by the TP increase on hidden nodes. By increasing the TP of a node hidden from a bottleneck node, the factor

*<sup>i</sup> <sup>j</sup>* in the denominator of Equation 13 is decreased for the bottleneck node, and as a consequence the bottleneck node's maximum rate is increased. However, the TP increase on

Therefore, the objective function allows the algorithm to trade off between decreasing the number of hidden nodes by increasing TP and maintaining spatial reuse by not increasing

23The problem of node *j* not being able to listen to hidden grants is the hidden-node problem version for reservation-

rate decrease may be higher than the increase on *j* 's maximum rate.

on the denominator of the upper-bound for f

a a \

neighbors that are sending data packets to it (i.e., d


destination nodes can support for the flows they belong to is calculated (line 3 of the HSRA Algorithm). This is done using Equation 9, which defines the nodes' maximum throughput. Based on these maximums, the total throughput the network can support is calculated (line 4 of the HSRA Algorithm).

Once the total throughput under the MinPower setup is known, flows are selected randomly one-by-one for a number of *M* times (line 5 of the HSRA Algorithm). Every time a flow is selected, the maximum throughput the flow can support is increased if this causes that the total throughput be increased as well. Otherwise, the flow is left unmodified. The throughput of the selected flow is increased as follows.

Let the selected flow be denoted by *<sup>n</sup> f* (line 6 of the HSRA Algorithm). The bottleneck node of *<sup>n</sup> f* is found first by tracking the node of the flow with the lowest maximum throughput (Equation 10). Let this node be denoted by *j* (line 7 of the HSRA Algorithm). The maximum rate of *j* (i.e., f *j* ) is increased by increasing the TP of one of *j* 's 2-hop neighbors (lines 8 to 15 of the HSRA Algorithm). However, this TP increase is confirmed only if the total throughput (i.e., T ) is increased as well (lines 16 to 20 of the HSRA Algorithm). Otherwise, the TP of *j* 's 2-hop neighbor is left unmodified (line 22 of the HSRA Algorithm). The total throughput may be decreased given that the TP increase of *j* 's 2-hop neighbor may decrease the maximum rate of other bottleneck nodes in the network, and this maximumrate decrease may be higher than the increase on *j* 's maximum rate.

38 Wireless Mesh Networks – Efficient Link Scheduling, Channel Assignment and Network Planning Strategies

destination nodes can support for the flows they belong to is calculated (line 3 of the HSRA Algorithm). This is done using Equation 9, which defines the nodes' maximum throughput. Based on these maximums, the total throughput the network can support is calculated (line

Once the total throughput under the MinPower setup is known, flows are selected randomly one-by-one for a number of *M* times (line 5 of the HSRA Algorithm). Every time a flow is selected, the maximum throughput the flow can support is increased if this causes that the total throughput be increased as well. Otherwise, the flow is left unmodified. The through-

*f* is found first by tracking the node of the flow with the lowest maximum throughput (Equation 10). Let this node be denoted by *j* (line 7 of the HSRA Algorithm). The maximum

15 of the HSRA Algorithm). However, this TP increase is confirmed only if the total

the TP of *j* 's 2-hop neighbor is left unmodified (line 22 of the HSRA Algorithm). The total throughput may be decreased given that the TP increase of *j* 's 2-hop neighbor may

) is increased by increasing the TP of one of *j* 's 2-hop neighbors (lines 8 to

) is increased as well (lines 16 to 20 of the HSRA Algorithm). Otherwise,

*f* (line 6 of the HSRA Algorithm). The bottleneck node

4 of the HSRA Algorithm).

of *<sup>n</sup>*

rate of *j* (i.e., f

throughput (i.e., T

put of the selected flow is increased as follows.

Let the selected flow be denoted by *<sup>n</sup>*

*j* 

The 2-hop neighbor of node *j* whose TP is increased is selected so that the factor a a |\| *<sup>i</sup> <sup>j</sup>* on the denominator of the upper-bound for f *j* is decreased (Equation 9). Qualitatively, this TP increase can be explained as follows. Node *j* (i.e., the bottleneck node) has a set of 1-hop neighbors that are sending data packets to it (i.e., d *<sup>j</sup>* ). Let *i* be one of these nodes, and consider the link (,) *i j* and the input and output queues (,) *i j Qi* and (,) *i j Qo* of node *i* as shown in Figure 3. In order for *i* to transmit packets to *j* , a reservation of future data-time slots is required. When nodes *i* and *j* finish this reservation successfully, data packets in node *i* 's input-queue (i.e., (,) *i j Qi* ) are moved to node *<sup>i</sup>* 's output-queue (i.e., (,) *i j Qo* ), and these packets are later pulled from (,) *i j Qo* for their transmission. Therefore, for the queues (,) *i j Qi* and (,) *i j Qo* to have their lengths decreased, the reservation performed by nodes *i* and *j* needs to be successful, i.e., the three-way handshake for scheduling data-packet transmissions on link (,) *i j* needs to be successful. The probability that the handshake is successful and that the queues decrease their length depends on the grants received by node *i* and not received by node *j* . In the following, we refer to these grants as hidden-grants. If *i* requests future data-time slots to *j* and a hidden grant is received by *i* before *j* transmits its grant to *i* , *j* 's grant may not be confirmed by *i* . This is because the hidden grant may interfere with *j* 's grant. On the other hand, if *j* is able to listen to the hidden grant, *j* is able to generate its grant such that it does not interfere with the hidden grant, and *i* will be able to confirm *j* 's grant23. Therefore, in order to increase the probability of handshake success and queue decrease, the TP of the node that transmits the hidden grant (i.e., the node hidden from *j* ) can be increased such that node *j* is able to listen to the hidden node's transmissions.

Node *j* may have more than 1 hidden nodes in every incoming link from the nodes in its direct 1-hop neighborhood. The HSRA algorithm chooses only one of those hidden nodes for increasing its TP. The node that is chosen is the node that is hidden from the highest number of nodes (i.e., node *j* and all the other intermediate or destination nodes unable to listen to the hidden node). This is performed in lines 8 to 12 of the HSRA Algorithm. In this way, the maximum rate is increased for all those nodes so that, if one or more of those nodes are bottleneck nodes, higher improvements on the total throughput can be achieved.

The role that the objective function of the SRA-TM problem (Equation 13) plays in the HSRA Algorithm is the quantification of the throughput improvement by the TP increase on hidden nodes. By increasing the TP of a node hidden from a bottleneck node, the factor a a \ *<sup>i</sup> <sup>j</sup>* in the denominator of Equation 13 is decreased for the bottleneck node, and as a consequence the bottleneck node's maximum rate is increased. However, the TP increase on the hidden node may also cause an increase on the a a \ *<sup>i</sup> <sup>j</sup>* factor of other bottleneck nodes. Therefore, the objective function allows the algorithm to trade off between decreasing the number of hidden nodes by increasing TP and maintaining spatial reuse by not increasing

<sup>23</sup>The problem of node *j* not being able to listen to hidden grants is the hidden-node problem version for reservationbased distributed scheduling policies. This problem is studied in detail in [8, 11].

TP. In the algorithm, this tradeoff is achieved by testing the improvement on the total throughput (lines 14 to 23 of the HSRA Algorithm).

Stability-Based Topology Control in Wireless Mesh Networks 41

Figure 6c). The input-queues have been omitted because they are guaranteed to always be stable [8, 11]. The flow rates in each network were all set at the same value. These are 8, 6, and 5 packets per frame for the networks in Figures 6a, 6b, and 6c respectively. These values were set so that their corresponding HSRA network became unstable if they were increased by at least one point. In this way, the network operates at a point inside the stability region and close to its boundary. Therefore, when any of the rates is increased by at least one point,

the network operates outside the stability region, and therefore, it is unstable.

a. 10 Flows b. 15 Flows

configurations

c. 20 Flows **Figure 6.** Average output-queue comparison for the HSRA, MinPower, MaxPower, and OptPower

Close to the end of the simulation time, when the transient behavior of the queues is over, the average queue lengths of the different power setups (i.e., MaxPower, MinPower, OptPower, and HSRA) can be compared. In Figure 6a, the MaxPower setup has the worst performance (i.e., the largest average queue length), and the MinPower, OptPower, and HSRA have similar performance. Therefore, when the number of flows is low (i.e., 10 flows), the MinPower and the HSRA algorithms are able to achieve queue lengths that are close to the lengths achieved by the optimal solution (i.e., OptPower). On the other hand, when the number of flows increases, the MinPower algorithm does not achieve a performance close to the optimal one while the HSRA algorithm does. This is shown in Figures 6b and 6c. The MaxPower and MinPower algorithms have similar performance which is worse when compared with the HSRA algorithm. The HSRA algorithm achieves average queue lengths that are close to the lengths achieved by the optimal solution. Therefore, the HSRA algorithm enables the flows to carry more traffic while guaranteeing stability than the MaxPower and
