Placement of Integration Points in Multi-hop Community Networks Ranveer Chandra (Cornell University) Lili Qiu, Kamal Jain and Mohammad Mahdian (Microsoft Research) Motivation Community networks (Houses cooperate in multi-hop network for Internet access) Internet ITAP (Expensive!) How many ITAPs will satisfy demands of a neighborhood? 2 Related Work • Placement of server replicas, proxies – Web servers, internet measurement, file servers – Facility location problem Handles locality without link capacity constraints Does not consider impact of wireless interference • Clustering Approach (Bejerano ’02) Only works for a TDMA MAC 3 Our Contributions We propose placement algorithms that: – – – – – Are close to optimal Work with a general MAC Take wireless interference into account Are optimized for changing workload Provide fault tolerance to ITAP and link failures 4 Outline • Motivation and Related Work • Problem Formulation – Three link models with increasing realism • Placement Algorithms • Advanced Features 5 Mapping to a Graph Nodes: houses and possible ITAP locations Edges determined by either: – A connectivity graph given by Internet provider – Supplied signal and propagation characteristics – Simplified wireless connectivity model • edge (i, j) if and only if distance (i, j) CR, where CR is the communication range 6 Reducing Search Space The entire search space for ITAPs is intractable Our Approach: • Form equivalence classes – Locations covering the same houses are equivalent • Prune redundant classes – Prune class if another class covers all its houses E1 E3 E2 H1 E6 H2 E7 E4 Since E7 covers all the houses, prune all other equivalence classes H3 E5 Use a node for each remaining equivalence class 7 Problem Formulation Given: – – – – – A community with N houses House demand: dh h Link capacity : Cape e House capacity: Caph h ITAP capacity : Capi i Internet A CapA C B CapC CapCD ITAP X CapX CapB Goal: Minimize num ITAPs to serve all demands 8 Simple Interference Models Ideal link model: – Throughput unaffected by path length (# hops) – Possible by using smart antennas, multiple radios f 1 f 2 f 3 4 Flow from 1 to 4, f bps < Cap12 9 Simple Interference Models Ideal link model: – Throughput unaffected by path length (# hops) – Possible by using smart antennas, multiple radios General link model: – Throughput depends path length (# hops) – Simplifications of current day radios – Bounded Hop-count Model • Throughput unaffected if path length < thresh, else 0 f 1 f 2 f 3 4 Flow from 1 to 4, f bps < Cap12 and thresh = 4 0 0 0 1 2 3 4 Flow from 1 to 4, f bps < Cap12 and thresh = 2 10 Simple Interference Models Ideal link model: – Throughput unaffected by path length (# hops) – Possible by using smart antennas, multiple radios General link model: – Throughput depends path length (# hops) – Simplifications of current day radios – Bounded Hop-count Model • Throughput unaffected if path length < thresh, else 0 – Smooth Degradation Model • Throughput degrades by 1/k for path of length k f/3 1 f/3 2 f/3 3 4 Flow from 1 to 4, f bps < Cap12 11 Outline • Motivation and Related Work • Problem Formulation • Placement Algorithms – Placement algorithms: Ideal Link Model – Placement algorithms: General Link Model • Advanced Features 12 Ideal Link Model Goal Find minimum number of ITAPs that satisfies all demands Results • The above problem is NP-hard • The best polynomial approximation algorithm – ln(N) worst-case unless P=NP 13 Greedy Algorithm Main Idea 1. Initial set of opened ITAPs is null 2. Iterate over all ITAPs, and apply greedy step – Select ITAP satisfying the greatest demand 3. 4. Add selected ITAP to set of opened ITAPs Loop through steps 2 and 3 until all demands satisfied A All possible ITAP locations B 1 1 2 C Set of houses Opened ITAP locations 14 Greedy Algorithm Main Idea 1. Initial set of opened ITAPs is null 2. Iterate over all ITAPs, and apply greedy step – Select ITAP satisfying the greatest demand 3. 4. Add selected ITAP to set of opened ITAPs Loop through steps 2 and 3 until all demands satisfied A All possible ITAP locations B 1 C 2 Set of houses Opened ITAP locations 1 2 15 Greedy Step Can be mapped to a max flow min cut problem • Handle house demands: Add a virtual source • Handle ITAP capacities: Add a virtual sink A 1 S B T 2 C 16 Greedy Step Can be mapped to a max flow min cut problem • Handle house demands: Add a virtual source • Handle ITAP capacities: Add a virtual sink • Handle house capacities: Split the house nodes CapA AAOUT IN 1 S CapB BBOUT IN T 2 CCOUT IN Cap C Select ITAP that gives max flow from S to T 17 Ideal Link Model: Algorithms • Greedy placement – ln(N) worst-case bound (best possible in worst-case) • Cluster-based placement – Partition network nodes into minimum number of disjoint clusters – Place an ITAP in each cluster • Random placement – Randomly open an ITAP iteratively until all demands are satisfied • Lower bound – Relax the integer constraints and solve the relaxed LP problem 18 Varying communication radius 100 nodes, Cape 6 Mbps, Capi 100 Mbps, dh 1 Mbps 100 # ITAPs 80 60 40 20 0 0 10 20 30 40 50 Communication Radius (m) greedy cluster random lower bound 19 General Link Model Problem is NP-Hard. Use Greedy heuristic • Main idea – iteratively open ITAP to maximize satisfied demand • The Greedy step – Formulate a linear program (not efficient) – Develop better algorithms for two special cases: • bounded hop-count • smoothed throughput degradation 20 Greedy Step • Bounded hop-count – Modify Ford-Fulkerson method for max-flow – ignore augmenting paths > hop-count threshold • Smooth throughput model (throughput = 1/L) – Goal: max piP 1/|pi|, where • P is the set of all the augmenting paths in the graph – Observation: prefer imbalance in path lengths – Approach: iteratively pick shortest augmenting path 21 Bounded-hop count 100 nodes, Cape 6 Mbps, Capi 100 Mbps, dh 1 Mbps, CR 10 m 100 # ITAPs 80 60 40 20 0 0 5 10 15 20 hop-count threshold greedy cluster random lower bound 22 Smooth degradation 100 nodes, Cape 6 Mbps, Capi 100 Mbps, dh 1 Mbps 100 # ITAPs 80 60 40 20 0 0 10 20 30 40 50 communication radius (m) greedy random lower bound 23 Outline • • • • Motivation and Related Work Problem Formulation Placement Algorithms Advanced Features 24 Changing Demands • Problem – Place ITAPs to handle changing demands • User demands exhibit periodicity (e.g. diurnal pattern) • Greedy algorithm – max(Xi/ Yi), where • Xi is satisfied demand in period i, and • Yi is the total demand in period i – ln(kN) worst-case bound, where k is number of periods 25 Fault Tolerance Considerations • Problem – Ensure Internet connectivity when nodes and link fail • Approach – Control parameters • Number of independent paths: p • Over-provisioning factor: all paths allocate f/d capacity – Compute satisfied demands using LP – Greedy algorithm gives good results 26 Conclusion • First ITAP placement study for general MAC • Design ITAP placement algorithms for – Three wireless throughput models – handling periodically changing demands – providing fault-tolerance • Showed efficiency using simulations, analyses • Greedy algorithms are near optimal in all cases 27 Thank you 28 29