200 likes | 352 Views
E N D
1. Joint Routing and Scheduling in Multi-hop Wireless Networks with Directional Antennas*
Partha Dutta, IBM Research India
Vivek Mhatre, Motorola Inc
Debmalya Panigrahi, MIT
Rajeev Rastogi, Yahoo Research India
Infocom 2010
* Part of this work was done at Bell Labs India 1
2. Network Model Multi-hop Wireless Network
Directional Antennas
Long-distance vs
Local access links
Low-cost networking
in developing countries
Wireless backhaul for
3G cellular networks
2
3. Interference Constraint
Raman Chebrolu ’05
Dutta Jaiswal P Rastogi ’08 3
4. Schedules and Link Utilization Sequence of
bi-partitions of
nodes into
transmitters and
receivers
(Directed cuts)
Utilization of link
= Fraction of time for
which link is active 4
5. Demand Matrix
5
6. Routing Demands
6
7. Joint Routing-Scheduling Problem Input
Bi-directional capacitated graph G
Demand matrix D
Output
Schedulable flow f satisfying D
Optimization version
Maximize ? = 1 such that ?D is satisfied 7
8. Related Work [Kodialam Nandagopal ’05a, ’05b] joint routing-scheduling for omni-directional antennas with single and multi-radio nodes
high-level approach is similar
significant difference in problem structure
[Narlikar Wilfong Zhang ’06] joint routing-scheduling for directional antennas
no provable guarantees of proposed heuristics 8
9. Schedulable flows A flow f is schedulable if there exists a schedule S such that for each edge e,
utilization of e in S = fe/ce
A flow f is tenable if for each vertex v, and every pair of incoming and outgoing edges e, e’
fe/ce + fe’/ce’ = 1 9
10. Schedulable flows
Lemma: Every schedulable flow is tenable (but not vice-versa)
10
11. Relaxed Problem Input
Bi-directional capacitated graph G
Demand matrix D
Output
Schedulable flows f satisfying demands ?D, for max ? = 1
Is a solvable linear program! 11
12. Roadmap Solve the linear program to obtain tenable flow f satisfying ?0D demands
Design scheduling algorithm to schedule af flow (a = 1)
?0 = max ? for schedulable flows
? a-approx algorithm! 12
13. Goal Scheduling algorithm for flow f such that for each vertex v, and every pair of incoming and outgoing edges e, e’
fe/ce + fe’/ce’ = a
(a-tenable flows)
13
14. Schedule Split 1 second into t scheduling intervals
Schedule specifies directed cut for each interval
Utilization of edge e in schedule must be = fe/ce
Edge e must be in t(fe/ce) cuts 14
15. Notation Multiplicity of node = max mult. of incoming edge + max mult. of outgoing edge
Tight node: one having max mult. (?)
Almost simple graph: Simple graph + extra copy of each edge incident on a tight node with in/out-degree = 0
a-tenable flows: ? = at 15
16. The Scheduling Problem Input: Multi-graph with ? = at
Output: Partition edges into t sets s.t.
No two parallel edges in the same set
Every set of edges forms a directed cut 16
17. The Scheduling Problem Input: Multi-graph
Output: Partition edges into t sets s.t.
No two parallel edges in the same set
Every set of edges forms a directed cut 17
18. Scheduling Algorithm 18
19. Analysis ? decreases by 2 in each iteration
Thm: Multigraph can be partitioned into
? ?(K)/2 subsets of edges satisfying the two constraints
Recall: we wanted to partition into t subsets
So, if t = ? ?(K)/2 we can schedule the flow
i.e. ? = (2/?(K))t
? Approx factor a = 2/?(K) 19
20. ?(K)
In most practical networks, our algorithm provably achieves at least 40-50% of the best achievable throughput
20
21. Open Problems
Better approx factor?
Hardness
NP-hard?
Probably yes, and probably as hard as MAXCUT 21