### Network model

We consider a WMN as an undirected physical topology graph *G*(*V*, *E*), where *V* = {*v*
_{1}, *v*
_{2}, …, *v*
_{
i,}
*v*
_{i+1},…, *v*
_{n}} is the set of *n* vertices, i.e., routers, and *E* = {*e*
_{
ij
}} is the set of all edges. The involved links are symmetric for simplicity, i.e., for *v*
_{
i
} and *v*
_{
j
} in an obstacle-free environment; if there exists a link between them, then the channel is reciprocal. Each node is equipped with an omnidirectional antenna and the same maximum transmit power *p*
_{max}, associated with the maximum transmit range *r*
_{max}(*p*
_{max}). Let *d*(*v*
_{
i
},*v*
_{
j
}) be the distance between *v*
_{
i
} and *v*
_{
j
}. If *d*(*v*
_{
i
},*v*
_{
j
}) ≤ *r*(*p*
_{
i
}), where *r*(*p*
_{
i
}) is the transmit range of *v*
_{
i
} with power *p*
_{
i
} (0 ≤ *p*
_{
i
} ≤ *p*
_{max}), then a link *e*
_{
ij
} exists from *v*
_{
i
} to *v*
_{
j
}. Meanwhile, we use the unit disk graph (UDG) to model our topology, i.e., all nodes have the same transmit range. It is noted that UDG is a topology derived via the maximum transmit radius, which corresponds to a transmit power of 0.28183815 W under free space propagation model.

### Interference model

Interference reduction is one of the major goals in topology control, and most algorithms achieve so by minimizing the node degree, as small node degree leads low interference. However, [26] found the minimum node degree does not imply the minimum interference. Existing interference models are divided into physical interference models and protocol interference ones [25, 30, 31]. Physical interference model is defined by formula (1), where *β* is the minimum signal to noise ratio (SNR) for successful receptions, *N* is the ambient noise power level, and *a* denotes the signal power decays with respect to *d*(*v*
_{
i
},*v*
_{
j
}), *p*
_{
k
} and *p*
_{
i
} denote the power level chosen by node *v*
_{
k
} and *v*
_{
i
}, respectively.

$$ \frac{p_id{\left({v}_i,{v}_j\right)}^{-a}}{N+{\displaystyle \sum k\in V{p}_kd{\left({v}_k,{v}_j\right)}^{-a}}}\ge \beta $$

(1)

Although physical interference model is convenient for analysis, it is affected by *β*, *N*, *a*, and *p*
_{
k
} [30]. We thus need to have these parameters to calculate the interference; in turn, the parameters need to be adjusted by minimizing the interference. In this regard, it is extremely difficult to calculate the interference. In this work, we use protocol model to describe interference [30, 32].

Before introducing the interference model, we present the concept of transmission range and interference range. Transmission range and interference range are two important radio ranges in wireless networks. Transmission range represents the range within which a packet is successfully received if there is no interference from other radios. The transmission range is mainly determined by transmission power and radio propagation properties (i.e., attenuation). Interference range (Ri) is the range within which stations in receive mode will be “interfered with” by an unrelated transmitter and thus suffer a loss [31]. For a node *v*
_{
i
} with a transmit range *r*(*v*
_{
i
}, *v*
_{
j
}) and interference range *r*
_{
I
}(*v*
_{
i
}, *v*
_{
j
}), *v*
_{
i
} sends data to *v*
_{
j
}, then the number of nodes within *r*
_{
I
}(*v*
_{
i
}, *v*
_{
j
}) is called *unidirectional link interference set*, denoted as *ULIS*(*v*
_{
i
}, *v*
_{
j
}):

$$ ULIS\left({v}_i,{v}_j\right)=\left\{{v}_w\in V\Big|d\left({v}_i,{v}_w\right)\le {r}_I\left({v}_i,{v}_j\right)\right\} $$

(2)

Since link (*u*, *v*) is bidirectional, *ULIS*(*v*, *u*) can be defined as

$$ ULIS\left({v}_j,{v}_i\right)=\left\{{v}_w\in V\Big|d\left({v}_j,{v}_w\right)\le {r}_I\left({v}_j,{v}_i\right)\right\} $$

(3)

Therefore, the interference set of (*u*, *v*) is

$$ LIS\left({v}_i,{v}_j\right)= ULIS\left({v}_i,{v}_j\right)+ ULIS\left({v}_j,{v}_i\right) $$

(4)

where *LIS*(*v*
_{
i
}, *v*
_{
j
}) is the interference level. In order to build an interference efficient spanning sub-graph, *LIS*(*v*
_{
i
}, *v*
_{
j
}) is used as the weight of edge (*v*
_{
i
}, *v*
_{
j
}). Moreover, we define the *LIS*(*G*) as interference matrix, i.e., the *LIS*(*G*) = { *LIS*(*v*
_{1}, *v*
_{1}), *LIS*(*v*
_{1}, *v*
_{2}), *LIS*(*v*
_{1}, *v*
_{3}),…, *LIS*(*v*
_{1}, *v*
_{
n
}); *LIS*(*v*
_{2}, *v*
_{1}), *LIS*(*v*
_{2}, *v*
_{2}), *LIS*(*v*
_{2}, *v*
_{3}),…, *LIS*(*v*
_{2}, *v*
_{
n
});…; *LIS*(*v*
_{
n
}, *v*
_{1}), *LIS*(*v*
_{
n
}, *v*
_{2}), *LIS*(*v*
_{
n
}, *v*
_{3}),…, *LIS*(*v*
_{
n
}, *v*
_{
n
})}.

Furthermore, to ensure different weights between any two edges, we use the *id* of the nodes [13]. The meaning of *id* is the node number, such as, in Fig. 1, the *id* of node *v*
_{
i
} is *i*. Specifically, given four different edges (*v*
_{1}, *v*
_{2}), (*v*
_{3}, *v*
_{4}), (*v*
_{1}, *v*
_{3}) and (*v*
_{2}, *v*
_{3}), the rules for comparing the weight size of edges (*v*
_{1}, *v*
_{2}), (*v*
_{3}, *v*
_{4}) and edges (*v*
_{1}, *v*
_{3}), (*v*
_{2}, *v*
_{3}) are defined as

$$ \begin{array}{l}w\left({v}_3,{v}_4\right)>w\left({v}_1,{v}_2\right)\\ {}\iff LIS\left({v}_3,{v}_4\right)>LIS\left({v}_1,{v}_2\right)\\ {} or\kern3.5em LIS\left({v}_3,{v}_4\right)=LIS\left({v}_1,{v}_2\right)\\ {}\&\&\left\{ \max \left\{ id\left({v}_3\right), id\left({v}_4\right)\right\}=4\right\}>\left\{ \max \left\{ id\left({v}_2\right), id\left({v}_1\right)\right\}=2\right\}\\ {}w\left({v}_2,{v}_3\right)>w\left({v}_1,{v}_3\right)\\ {}\iff LIS\left({v}_2,{v}_3\right)>LIS\left({v}_1,{v}_3\right)\\ {} or\kern3em LIS\left({v}_2,{v}_3\right)=LIS\left({v}_1,{v}_3\right)\\ {}\&\&\left\{ \max \left\{ id\left({v}_2\right), id\left({v}_3\right)\right\}=3\right\}=\left\{ \max \left\{ id\left({v}_1\right), id\left({v}_3\right)\right\}=3\right\}\\ {}\&\&\left\{ \min \left\{ id\left({v}_2\right), id\left({v}_3\right)\right\}=2\right\}>\left\{ \min \left\{ id\left({v}_1\right), id\left({v}_3\right)\right\}=1\right\}\end{array} $$

If the *ids* of end-nodes for each edge are different, then each edge has different weight. Therefore, the weight function will ensure the uniqueness in process of adding edges.

### Problem formulation

Preserving network connectivity or *k*-connectivity may not meet network performance. For example, in Fig. 2a, b, both networks are 2-connected graphs, while with different fault-tolerant requirements. Furthermore, transmit powers of *v*
_{1}, *v*
_{3}, *v*
_{4}, and *v*
_{5} are different, causing different interference. If we select Fig. 2b as the optimal topology, then the link interference between *v*
_{1} and *v*
_{5} is stronger than that of Fig. 2a. Thus, for *k*-connectivity requirement, it is a coarse-grained fault-tolerant constraint, i.e., *k*-connectivity may not meet specific fault-tolerant requirement. In some cases, there are different fault-tolerant requirements between two nodes. Taking a 6-node network as an example, when the fault-tolerance for *v*
_{1}, *v*
_{4}, *v*
_{3}, and *v*
_{5} is 3-connectivity and the fault-tolerance between *v*
_{2} and *v*
_{6} is 2-connectivity, then the topology in Fig. 3 both work, while with different performance.

As mentioned, the *k*-connectivity requirement may not satisfy specific topology fault tolerance. We thus need to consider different connectivity requirement for any two node pair. We use *k*
_{
ij
} connectivity between any two nodes to measure the specific fault tolerance.

We define *k*
_{
ij
} connectivity as fault-tolerant requirement between *v*
_{
i
} and *v*
_{
j
}. Then, the fault-tolerant constraint *N*
_{
ft
}(*v*
_{
i
},*v*
_{j}) is

$$ {N}_{ft}\left({v}_i,{v}_j\right)\ge {k}_{i,j}\kern2.5em \left(i,j\in V,i\ne j,1\le {k}_{i,j}\le {k}_{ij}\left( \max \right)\right) $$

(5)

In a fully connected network with *n* nodes, there are *n*-1 disjoint paths between any two nodes. Thus, *k*
_{
ij
}(max) is *n*-1.

Furthermore, the optimization objective of network generally is to maximize the network capacity. Since the interference level is the important factor of affecting network capacity. As we know, radio channel capacity decreases as the wanted signal carrier power to interference ratio (C/I) decreases. The expected values of C/I also determine network capacity and data throughput per node [33]. Therefore, the optimization problem of topology control with fault-tolerant constraints for WMNs can be defined as

$$ \min \cdot \max \left\{LIS\left({v}_i,{v}_j\right),{v}_i\in V(G),{v}_j\in ND\left({v}_i\right)\right\} $$

(6)

$$ \mathrm{subject}\kern0.4em \mathrm{t}\mathrm{o}: $$

$$ {N}_{ft}\left({v}_i,{v}_j\right)\ge {k}_{i,j}\kern2.5em \left(i,j\in V,i\ne j,1\le {k}_{i,j}\le {k}_{ij}\left( \max \right)\right) $$

(7)

The objective (6) is to minimize the maximum link interference, where *ND*(*v*
_{
i
}) denotes the neighboring set of *v*
_{
i
}. Fault-tolerant constraints in (7) emphasize the topology requirement between a specified node pair, which provides the flexibility for topology fault-tolerant requirement, and *k*
_{
ij
} is the value of specific fault-tolerant requirement.