6.3 Selective Greedy Forwarding (SelG): Protocol Design
6.3.1 Stage 1: Construction of the Set of Potential Forwarders
The proactive method of the HWMP protocol is used to find out the set of PNCs of a mesh STA from its one-hop neighborhood. As discussed earlier, the proactive tree rooted at the mesh gates are constructed through periodic PPREQ message broadcast. For the
nb
Set V (Set of Interfaces)ifbp
Set V (Set of Neighbors)bp
Figure 6.1: Bipartite graph model for finding minimum set of interfaces required to broadcast PPREQ messages
conventional HWMP protocol, PPREQ messages are broadcast through every interfaces of each mesh STA. However, it increases control overhead in the network. This chapter proposes to limit the broadcast of the PPREQ messages through a set of interfaces, such that every neighbor receives at least one copy of the PPREQ message. To find out the minimal set of interfaces that suffices the above purpose, every mesh STA should have sufficient knowledge of all peer neighbors through each interface. This can be accomplished by IEEE 802.11s mesh peer management (MPM) Protocol [25], where every mesh STA broadcast peering beacons through every interfaces periodically to keep aware of the local network connectivity. With this information, finding minimal set of interfaces for PPREQ broadcast can be modeled as a graph theoretic problem as follows.
Construction of the Minimal Set of Interfaces for PPREQ Broadcast
Let ST Ai and ST Aj be the two mesh STAs, each have Γi and Γj set of interfaces. Let Xij = {(Iim, Ijn) | Iim ∈ Γi, Ijn ∈ Γj, Iim and Ijn are tuned to the same channel}. Then communication is possible between ST Ai and ST Aj through any (Iim, Ijn) ∈ Xij. Let, Ni1 denotes the set of one-hop neighbors for ST Ai. A bipartite graph Gbp(Vbp,Ebp) is constructed as follows, whereVbp is the set of vertices, andEbp is the set of edges.
Every interfaceIik∈Γi and everyST A` ∈Ni1 is represented as a vertex inVbp.
There exists an undirected edge fromIik toST A` if (Iik, I`n)∈Xil, i.e. ST A` has at least one interface which is tuned to the same channel as of Iik.
Let the vertex set is divided into two subsets, Vifbp ⊂Vbp and Vnbbp ⊂Vbp, where the set Vifbp contains the vertices from Γi and the set Vnbbp contains the vertices from Ni1. An example of this construction is shown in Figure 6.1. The term,‘Interface cover’ is defined as follows.
Algorithm 6.1 Find minimum set of interfaces to cover all neighbors
1: Sort the vertices in the set Vifbp according to their degree
2: while SetVnbbp is non-empty do
3: Select the vertex v ∈ Vifbp with the highest degree, and delete all the edges and the corresponding vertices in Vnbbp that are incident tov.
4: Add the interface corresponding to the vertex v to the set of required interfaces, and deletev from Vifbp
5: end while
Definition 6.1. The interface cover of ST Ai, denoted as Hi, is the subset of Vifbp, such that every vertex of the set Vnbbp is incident to at-least one edge(Iik, ST A`)∈Ebp with the following constraints;
(C-1) Iik∈ Hi, and (C-2) ST A`∈Vnbbp
LetMi ⊆Γi denotes the minimum set of interfaces required for PPREQ broadcast atST Ai, ensuring that every ST A` ∈Ni1 receives at least one copy of the message. Then then the following axiom holds true.
Axiom 6.1. Mi = min
Hi |Hi|, where |Hi|denotes the cardinality of the set Hi.
Proof. The proof is trivial and can be directly derived from the definition of the interface cover.
Based on the Axiom 6.1, a greedy strategy is presented in Algorithm 6.1 to solve this problem. Algorithm 6.1 repeatedly finds out the interfaces that can broadcast the PPREQ messages to the maximum number of neighbors (the corresponding vertex in Vifbp with maximum degree), and includes that interface to the set of required interfaces. The computation is local and requires O(|Γi|) rounds where|Γi|denotes the cardinality of the set Γi, and thus linear in nature.
Set of Potential Forwarders
The set of PNCs are constructed using the proactive approach through the receipt of the PPREQ broadcast at different interfaces. On receiving a PPREQ message from ST Aj at interface Iik, ST Ai decides whether to include hST Aj, Iiki to the set of PNCs. It can be
noted that for multi-interface mesh network, the mesh path is decided by the next-hop mesh STA as well as the interface that should be used to communicate with that mesh STA. Therefore, the (MP,interface) pair is stored in the set of PNCs. Further it can be noted that because of the assumption of static channel assignment, the associated interface to communicate with a neighboring mesh STA remains valid for the entire duration of the network operations.
Letξ denotes the maximum number of PNCs for a mesh STA. The value ofξdepends on the flexibility of the mesh path selection architecture, and the effect of ξ is discussed later in this chapter. Ifξ= 1, the proposed scheme is reduced to the conventional proactive path selection mechanism. On receiving the PPREQ messages from its neighbors, a mesh STA stores the firstξ number of candidates, based on the path metric value, as the set of PNCs. An iterative process is used for this purpose. Let Fi denote the set of PNCs for ST Ai. Every entry in Fi has three tuples hST Aj, Iik,Pkiji, where Pkij is the path metric value1 betweenST Ai and ST Aj, when the corresponding PPREQ message from ST Aj is received through interface Iik ∈Γi. Let Cki` denote the airtime link metric betweenST Ai
and ST A`, using interface Iik ∈Γi. On receiving a PPREQ message from ST Aj through interfaceIik, with path metric value Pkij,ST Ai executes Algorithm 6.2.
According to the algorithm, when a mesh STA receives a PPREQ message, if the entry is already in the set of PNCs, then it updates the corresponding path metric value with the value received. If not, then it checks whether the sender of the PPREQ message can be elected as a candidate for the next-hop, by comparing the received path metric value with the existing values. If the path metric value for the PPREQ sender is less, then the entry with the highest path metric value is replaced with the metric value of the PPREQ sender. When there is a change in the set of PNCs, the mesh STA broadcast a new PPREQ message with the minimum updated path metric value, from the set of PNCs. Otherwise, the PPREQ messages is broadcast if another PPREQ message with the same sequence number is not broadcast earlier (to avoid the path loops).
1The difference between the link metric and the path metric should be noted. The link metric is the airtime link value between two mesh STAs (using a specific interface for communication). The path metric is the aggregate of the link metric values for all the links in the path. The aggregation depends on the properties of the link metric values. Airtime link metric is additive in nature, and therefore the path metric is the sum of the individual link metrics.
Algorithm 6.2 On receiving a PPREQ from ST Aj through interface Iik of ST Ai, with the path metric value Pkij
1: if hST Aj, Iiki ∈Fi then
2: UpdatePkij inFi 3: else
4: Find a candidatehST A`, Iiqi with maximum Pqi` from Fi 5: if Pqi`>Pkij then
6: Replace the entryhST A`, Iiq,Pqi`i withhST Aj, Iik,Pkiji
7: Find the candidate hST Am, Iiri with the minimum (Prim+Crim) fromFi.
8: Broadcast a PPREQ message with the metric value (Prim+Crim) through the set of interfaces calculated using Algorithm 6.1.
9: end if
10: end if
11: if PPREQ with same sequence number is NOT broadcastedthen
12: Find a candidatehST Am, Iiri with the minimum (Prim+Crim) from Fi.
13: Broadcast a PPREQ message with the metric value (Prim+Crim) through the set of interfaces calculated using Algorithm 6.1.
14: end if
Information Collection During Stage 1
It can be noted that the path metric values are stored along with the candidates in the set of PNC. Additionally, everyST Ai maintains another table Li, where the rows correspond to the candidates in the PNC set of ST Ai, and the columns correspond to the interfaces of ST Ai. Every entry Li[ST Aj, Iik] stores the airtime link value for the link to the PNC ST Aj through the interface Iik. Whenever a candidate is inserted or updated in the PNC set, the corresponding row in L is updated also. If ST Aj is not reachable through Iik, then corresponding entry is∞. ThusLstores the link metric information during the time when a mesh STA is selected as a PNC.
The path metric and the link metrics are used in the second stage to analyze the effect of the link metric deviation (the deviation of the link metric at the time of its use for the calculation of the set of potential next-hops, and the current value during communication) over the path metrics. This reflects the variability in the network and the channel conditions. This measure of the network and the channel variability is used to decide the most stable and optimal route using a local greedy selection, as described in
the next subsection.