240 likes | 348 Views
Non-bifurcated Routing in Wireless Multi-hop Mesh Networks by Abdullah-Al Mahmood and Ehab S. Elmallah Department of Computing Science University of Alberta Ahmed Kamal Department of Electrical and Computer Engineering Iowa State University. Research supported by NSERC. Outline Introduction
E N D
Non-bifurcated Routing in Wireless Multi-hop Mesh NetworksbyAbdullah-Al Mahmood and Ehab S. ElmallahDepartment of Computing ScienceUniversity of AlbertaAhmed KamalDepartment of Electrical and Computer EngineeringIowa State University Research supported by NSERC
Outline • Introduction • Problem Formulation • Flow Augmentation • Some Related Work • Simulation Results • Concluding Remarks
Internet Internet GW 1 GW 2 MR MR GW= Gateway MR = Mesh Router MR Subscribers MR Subscribers Introduction • General Objectives • Fixed wireless broadband access • Support applications with different service requirements (e.g., high data rate, low delay jitter etc.) Figure: A simple WMN
System Model • Wireless routers are fixed • A subset of routers act as gateways and connect to Internet or external wired network • Routers within communication range (RT) can communicate • Routers within interference range (RI) can interfere, and RT ≤ RI • Communication over orthogonal channels do not interfere • Interference follows protocol model (conforming to RTS-CTS-DATA-ACK sequence in 802.11)
System Model (contd.) • Non-bifurcated Flows • A sequence of uniquely identifiable packets • Indivisibly follows the same path without rerouting • Routers do not need synchronization • Communication is commutative • Goal • Modeling multi-channel problem is complex • Begin with single channel
Problem Formulation with Single Channel • n routers form a graph G=(V, ET,EI) • For routers x and y, edge (x, y)ÎET if distance(x, y)≤RT • A set GWÌ V act as gateways • Notations • D(x): vector of requested demands at x, supporting multiple flows at each node • S(x): vector of accepted demands at node x • f(x,y): flow value between routers over (x, y)ÎET • f(X,Y): aggregate flow between sets of routers X and Y • f(D(x)), f(S(x)): sum of flow values in the vectors D(x) and S(x) respectively
Notations (Contd.) • EintT(x): set of edges having one end within interference range of x • f(EintT(x)): sum of flow values along edges in EintT(x) • C(x): Available channel capacity at router x • Loading factor • l(x) = f(V,x) + f(x, V) + f(EintT(x))
Constraints • Channel capacity constraint: l(x) ≤ C(x) • Flow conservation constraint: f(x, V) = f(V, x) + f(S(x)) • Flow indivisibility constraint: di(x) D(x) is assigned a route from x to a gateway in G • Objective • Maximize f(V, GW) • Throughput maximization with arbitrary integer requested demands is NP-complete • Search for heuristic solutions
Network Flow and Augmenting Paths • Single source single destination scenario • Links have capacities • Find maximum flow from source to sink by repeatedly searching for augmenting paths
Interference Constrained Flow Augmenting Path (ICFAP) No polynomial time algorithm exists for finding ICFAPS
Heuristic algorithm for finding ICFAP • Input Parameters: • G: The directed graph of a WMN • flow: An array specifying for each directed edge (x, y) a flow value flow(x, y); the values constitute a feasible flow in the network G • cap: A vector specifying for each node x the residual channel capacity obtained by taking all flow values into consideration • Nforward: An array specifying for each node x two closest neighbors of x to the gateway t, x ≠ t; if x has one neighbor, the second node is set to null (zero value)
Heuristic algorithm for finding ICFAP • vreq: The required flow increment value of the sought after IC-FAP from demand node s to gateway t • s: A node with a required unsplittable flow demand of value vreq • t: A target gateway in G • Output: • P: an IC-FAP from s to t of the required value vreq, returned upon a successful search (else, the returned path P is empty)
Heuristic algorithm for finding ICFAP 1. For each node x in the WMN G, initialize table Tx to empty 2. Start the search from the current node x = s; 3. While (the gateway node t is not reached) { 3.1 for each neighbour y of the current node x (in a non-decreasing order of the distances from the gateway), and each index (ℓ1, ℓ2) in the table Tx { a. Let P = Tx[ℓ1, ℓ2] be the stored candidate IC-FAP from s to x along which a flow increment of vreq units is possible;
Heuristic algorithm for finding ICFAP b. If extending P by changing the flows on the directed edges (x, y) and/or (y, x) so as to obtain an IC-FAP from s to y is possible, then update table Ty accordingly; keep track of the first node y for which the above extension is possible; 3.2 If a marked node y has been identified in the above step, then set the current node x = y, and expand the search for an IC-FAP further by continuing the while loop. Else (if no such node y is marked) then exit the while-loop; } } 4. Return the IC-FAP stored at Tt[0, 0];
Some Related Work • [Draves et al.: MobiCom 2004]: “Routing in multi-radio, multi-hop wireless mesh networks” • Proposed a metric based on transmission delays • Chooses channel that is likely to decrease delay
Some Related Work • [Raniwala and Chiueh.: INFOCOM 2005]: “Architecture and algorithms for an IEEE 802.11-based multi-channel wireless mesh network” • A heuristic solution • Three stages : tree construction, node to interface binding and interface to channel binding • Key idea is balancing traffic load
Some Related Work • [Kodialam and Nandagopal: MobiCom 2005]: “Characterizing the capacity region in multi-radio multi-channel wireless mesh networks” • Models the problem as a linear program • Provides a framework for estimation of capacity region • Flows are allowed to split among multiple paths • Assumes synchronous operation of routers
Some Related Work • [Alicherry et al.: Journal on Selected Areas of communication 2006]: “Joint channel assignment and routing for throughput optimization in multiradio wireless mesh networks” • Assumes a synchronous model • Formulates solution as a linear programming relaxation • The algorithm works in stages of solution refinement • The final solution allows bifurcation of flows
Simulation Results Topology
Simulation Results • Findings: The average throughput is higher at different traffic loads. • Comparison with DSR : Throughput
Simulation Results • Findings: The minimum throughput is also higher at different traffic loads. • Comparison with DSR : Throughput
Simulation Results • Comparison with DSR : Delay-Jitter • Findings: The delay-jitter is comparatively less
Concluding Remarks • The