440 likes | 676 Views
Graph Theory in Networks. Lecture 4, 9/9/04 EE 228A, Fall 2004 Rajarshi Gupta University of California, Berkeley. Plan for Graph Segment. Lecture 2 – Thu (Sep 2, 2004) Paths and Routing Cycles and Protection Matching and Switching Lecture 3 – Tue (Sep 7, 2004) Coloring and Capacity
E N D
Graph Theory in Networks Lecture 4, 9/9/04 EE 228A, Fall 2004 Rajarshi Gupta University of California, Berkeley
Plan for Graph Segment • Lecture 2 – Thu (Sep 2, 2004) • Paths and Routing • Cycles and Protection • Matching and Switching • Lecture 3 – Tue (Sep 7, 2004) • Coloring and Capacity • Trees and Broadcast, Multicast • Lecture 4 – Thu (Sep 9, 2004) • Complete example: Capacity in Ad-Hoc Networks • Lectures 8 & 9 – (Sep 23 & 28, 2004) • Student Presentations (have you signed up ?)
Goal Support quality of service for flows over ad-hoc networks Collaborators: • John Musacchio • Zhanfeng Jia • Prof. Jean Walrand
Ad-Hoc Networks • No base station • Multi-hop transmissions • Distributed and dynamic operations
Application Scenarios Disaster Relief Convention Center
Overview • Introduction and Motivation • QoS in Ad-Hoc Networks • Model and Related Work • Row Constraints • Clique Constraints • Computing Cliques • Implementation of Algorithms • Interference-based QoS Routing
QoS for Flows • Want to support flows with quality (bandwidth) requirements • Aspects of the problem • Maximum capacity in a network • Feasibility of a given set of flows • Available capacity once flows are assigned • Routing a given set of flows
Random vs Arbitrary Network • Capacity of ad-hoc networks • Random/homogenous topology, traffic matrix • Asymptotic bounds on capacity • Our Approach • Arbitrary topology, traffic matrix • Graph theoretic model • Feasibility of given set of flows • Distributed, localized and dynamic algorithm Gupta+Kumar (2000), Grossglauser+Tse (2002), El Gamal et. al. (2003)
What’s the problem with ad-hoc networks ? Ans: Interference • In wired networks, all links may be used simultaneously • In Ad-Hoc networks, neighboring links interfere • Interference Range (Ix) > Transmission Range (Tx)
Conflict Graph: L1 L1 Interference Radius L2 L2 L3 L3 Conflict Graph Three Links: F1 + F2 <= C and F2 + F3 <= C Two Links: F1 + F2 <= C Single Link: F1 <= C
L2 L1 L3 L5 L4 Independent Set Solution • Construct Conflict Graph • Identify All Maximal Independent Sets • {L1, L3} , {L1, L4} {L2, L4} , {L2, L5} , {L3, L5} • Write Constraints such that • Only one Independent Set “on” at a time • QoS requirements met for flow at each link “A New Model forPacketScheduling in Multihop Wireless Networks”, H. Luo, S. Lu, and V. Bhargavan, ACM Mobicom 2000.
Issues with Independent Sets • Shown to be necessary and sufficientfor existence of global feasible schedule • But scales poorly • Need centralized information • Finding all maximal independent sets is exponential • Takes 10’s of minutes for simple graph (<100 links) • Want distributed and sufficient constraints that can be computed quickly in a large network "Impact of Interference on Multi-hop Wireless Network Performance”, K. Jain, J. Padhye, V. N. Padmanabhan, and L. Qiu, ACM Mobicom 2003.
Overview • Introduction and Motivation • QoS in Ad-Hoc Networks • Model and Related Work • Row Constraints • Clique Constraints • Computing Cliques • Implementation of Algorithms • Interference-based QoS Routing
Conflict Graph: L1 L1 Interference Radius L2 L2 L3 L3 Conflict Graph Three Links: F1 + F2 <= C and F2 + F3 <= C Two Links: F1 + F2 <= C Single Link: F1 <= C Alternatively: F1 + F2 + F3 <= C
Row Constraints • At Node 2: F2 + F1 <= C • At Node 1: F1 + F2 + F3 + F4 + F5 <= C • Each row in the Conflict Graph incidence matrix yields a constraint • Proved to be sufficient for existence of feasible schedule • Often too pessimistic • F2 = F3 = F4 = F5 = C possible • Row constraints allow only F2 = F3 = F4 = F5 = C/4
Sufficiency of Row Constraints: Proof • Assume each weight Fi is integral (else take ) where T is number of slots • Transform CG CGF • Replace each node i with Ki fully connected nodes • Color this graph • Each node will be scheduled for requisite number of slots • Neighboring nodes will be scheduled for disjoint slots • Need to achieve coloring in T colors/slots • Greedy algorithm • Color each node with smallest available color • Can always find such a color since sum of colors of all neighbors (row constraints) < T
Overview • Introduction and Motivation • QoS in Ad-Hoc Networks • Model and Related Work • Row Constraints • Clique Constraints • Computing Cliques • Implementation of Algorithms • Interference-based QoS Routing
Cliques • Observe • Cliques in CG are local structures (IS are global) • Only one node in a clique may be active at once • Definitions • Clique = Complete Subgraph • Maximal Clique = Clique not a subset of any other Maximal Cliques: ABC, BCEF, CDF
L2 L1 L3 L5 L4 Clique Constraints Clique • Identify All Maximal Cliques • {L1, L2}, {L1, L5} , {L2, L3}, {L3, L4}, {L4, L5} • Write Constraints • Only one member of a Clique can be on at once • F1+ F2 <= C, F1+ F5 <= C, ... • Necessary conditions for a feasible schedule [MSR 2003]
L2 L1 L3 L5 L4 Insufficiency of Clique Constraints • But, clique constraints are not sufficient • F1=F2=F3=F4=F5 = C/2 satisfy clique constraints • But, we see that only 2 of 5 nodes may be on at once • F1=F2=F3=F4=F5 = 2C/5 is the max possible allocation • Sufficient only for ‘Perfect Graphs’
Sufficiency using Cliques: Proof • Equivalent weighted coloring problem • Transform CG CGF (as with Row Constraints) • Replace each node i by clique of size Fi • Color CGf with fewest colors • Observe • Schedule of a clique = color allocation for nodes in it • Capacity of a clique = total number of colors used (T) • Chromatic number Clique number • is the largest clique in CGF
Imperfection Ratio • Imperfection Ratio is the ratio between the weighted Chromatic and Clique numbers • Supremum over all weight (flow) vectors • Bounded when the underlying graph is UDG • Feasible schedule exists if scaled clique constraints are satisfied on a conflict graph • Scale capacity of each link by • So, “Graph Imperfection I”, S. Gerke and C. McDiarmid, Journal of Combinatorial Theory, Series B, vol. 83 (2001), pp. 58-78.
Extensions to Realistic Networks • Earlier results valid for CG that are unit disk graph • Variance in interference range • Model interference range varying between [x,1] • Then, need to scale the clique constraints by • Obstructions in network • Consider virtual CGV without obstructions • Feasible schedule in CGV implies schedule in CG • Satisfy scaled clique constraints in CGV
Constraint-based Algorithms • Background Computation • Local link state exchange (position, flows) • Distributedly compute maximal cliques in CG • Constraint-based approach • Check sufficiency with row constraints • Estimate capacity using scaled clique constraints • Useful for • Admission Control • Clustering • Routing
Overview • Introduction and Motivation • QoS in Ad-Hoc Networks • Model and Related Work • Row Constraints • Clique Constraints • Computing Cliques [time ?] • Implementation of Algorithms • Interference-based QoS Routing
Approximate the interference of a link by a circle centred at mid-point Since Ix > Tx, the extra area is small Representing a Link by its Center
Computing Cliques • General algorithms are centralized and exponential • Propose computationally simple heuristic approximation (for ad-hoc networks) • Key observations for an interference CG • All links sharing cliques with this link must lie within a circle of radius Ix (interference range) • All links that lie within a circle of diameter Ix must form a clique Harary+Ross (1957), Bierstone (1960s), Augustson et. al. (1970), Bron+Kerbosch (1973)
Heuristic Clique Algorithm • Use a disk of radius Ix/2 to scan a disk of radius Ix around link • Each position of scanning disk generates a clique • Heuristically shrink set of cliques • Only remember previous clique • Check containment • Can further shrink to set of maximal cliques • Brute force check against all existing cliques
Overview • Introduction and Motivation • QoS in Ad-Hoc Networks • Model and Related Work • Row Constraints • Clique Constraints • Computing Cliques • Implementation of Algorithms • Interference-based QoS Routing
0 kbps 500 kbps 1000 kbps 0 33 18 27 4 10 14 3 11 46 17 48 100% 0.5 43 15 20 37 38 23 6 1 39 41 47 21 40 50% 5 22 44 36 16 29 9 49 1.5 28 7 1 26 12 42 13 34 0% 45 2 35 50 25 31 8 2 24 19 30 32 2.5 0 0.5 1 1.5 2 2.5 Choose Destination Routing… Click on bar to choose flow rate Choose Source Y position in km X position in km
0 kbps 500 kbps 1000 kbps Choose Next Source Choose Destination Click on bar to choose flow rate Routing…
0 kbps 500 kbps 1000 kbps Choose Next Source Choose Destination Click on bar to choose flow rate Flow Rejected. Insufficient Resources
Overview • Introduction and Motivation • QoS in Ad-Hoc Networks • Model and Related Work • Row Constraints • Clique Constraints • Computing Cliques • Implementation of Algorithms • Simulations of 802.11b • Interference-based QoS Routing
Shortest Path Methods ?? • 1-3 is widest path from node 1 to 3 • Consider path from 1 to 5 • Path 1-3-4-5: FA+FD+FE<=C, so f<=C/3 • Path 1-2-3-4-5: FB+FC<=C, FC+FD<=C, FD+FE<=C, so f<=C/2 • Violates Bellman’s principle of optimality • Does not conform to distributed algorithm extending path hop by hop • Distributed algorithm unlikely to be optimal • Work with distributed heuristic algorithms
Ad-Hoc Shortest Widest Path • Recall Lec 2: distributed SWP is sub-optimal • Solution • At each node, remember every possible combination of path length and width • Exponential algoritm :-( • Approximation • Remember a few sets of optimal paths • ASWP (remembers only best set) • 2-ASWP (remembers two) • -ASWP (optimal solution)
SWP Tradeoffs • Width vs Resource utilization • Denote width of a path as the max flow possible on that path • When introducing a new flow, clearly width -ASWP 4-ASWP 2-ASWP ASWP SP • But consider resources utilized by path. Then, -ASWP 4-ASWP 2-ASWP ASWP SP • -ASWP may not be best in the long run
SWP Tradeoffs (contd) • Short Paths • Take least resources • Tend to crowd middle of network • Wide Paths • Use up too much resources • Computation intensive • Turns out (simulations) that ASWP is typically good enough to provide long term benefits
Source Routing Heuristic • Link state exchange allows src to know • Topology • Available capacity on all links i • New flow (src, dest, bw) arrives • Choose several candidate paths by source routing • Shortest Path (SP) • SP compliment • Shortest Feasible Path • Shortest Widest Path (SWP) • Weighted Path Cost (OSPF) • Send probe packets along each path • Final path chosen and confirmed by destination
4 6 3 5 7 2 8 1 Distributed Path Evaluation • Paths compared via suitable (monotone) metrics • Probe packets • Evaluate clique constraints along path • Check for violated constraints • Accumulate path metric • Destination chooses amongst multiple viable paths • Once path confirmed, avlbw updated in network F23+F34+F45 <= avlbw F45+F56+F67 <= avlbw
4 6 3 5 7 2 8 1 Row Constraints • Keep everything same • Except evaluate row constraints along path • Guaranteed to find distributed schedule • Could be employed only for high priority flows F23 + F34 + F45+ F56 + F67 <= avlbw
Measurement-based • Link state protocol used to compute cliques as before • But measurement-based avlbw instead of clique-based • avlbw = Idle / (Transmitting + Listening + Noisy + Idle) • Accounts for • distributed scheduling • invisible interference • Cliques still used by probe packets to estimate effect of new flow on avlbw • e.g. new flow uses 3 links on my worst clique, so need 3 x flowbw • Once flow admitted, true effect recallibrated by avlbw measurements
Lessons from this lecture • Important to model critical phenomenon as appropriate graph (CG) • Map physical behavior to graph feature • Utilize graph theory and results – Cliques, IS • Opens up many other related avenues, e.g. routing (ASWP)