tutorial
tutorial
Networks
Rajmohan Rajaraman
Northeastern University
Partly based on a tutorial, joint with Torsten Suel, at the DIMACS Summer
School on Foundations of Wireless Networks and Applications, August 2000
Focus of this Tutorial
“We are interested in computing and maintaining
various sorts of global/local structures in
dynamic distributed/multi-hop/wireless networks”
• routing tables
• spanning subgraphs
• spanning trees, broadcast trees
• clusters, dominating sets
• hierarchical network decomposition
What is Missing?
• Specific ad hoc network routing protocols
– Ad Hoc Networking [Perkins 01]
– Tutorial by Nitin Vaidya
http://www.crhc.uiuc.edu/~nhv/presentations.html
• Physical and MAC layer issues
– Capacity of wireless networks [Gupta-Kumar
00, Grossglauser-Tse 01]
• Fault-tolerance and wireless security
Overview
• Introduction (network model, problems, performance measures)
• Part I:
- basics and examples
- routing & routing tables
- topology control
• Part II:
- spanning trees
- dominating sets & clustering
- hierarchical clustering
Multi-Hop Network Model
• dynamic network
• undirected
• sort-of-almost planar?
What is a Hop?
• Broadcast within a certain range
– Variable range depending on power control capabilities
• Interference among contending transmissions
– MAC layer contention resolution protocols, e.g., IEEE
802.11, Bluetooth
• Packet radio network model (PRN)
– Model each hop as a “broadcast hop” and consider
interference in analysis
• Multihop network model
– Assume an underlying MAC layer protocol
– The network is a dynamic interconnection network
• In practice, both views important
Literature
• Time
path length
• Communication { number of messages
• Memory requirements
correlation
• Adaptability }
• Energy consumption
• Other QoS measures
Degrees of Mobility/Adaptability
• Static
• Limited mobility
- a few nodes may fail, recover, or be moved (sensor networks)
- tough example: “throw a million nodes out of an airplane”
• Highly adaptive/mobile
- tough example: “a hundred airplanes/vehicles moving at high speed”
- impossible (?): “a million mosquitoes with wireless links”
• “Nomadic/viral” model:
- disconnected network of highly mobile users
- example: “virus transmission in a population of bluetooth users”
Main Problems Considered
Routing:
destination
source
K-Dominating Sets:
• defines partition of
the network into zones 1-dominating set
Clustering:
• disjoint or overlapping
• flat or hierarchical
• internal and border nodes and edges Flat Clustering
Hierarchical Clustering
Basic Routing Schemes
• Proactive Routing:
- “keep routing information current at all times”
- good for static networks
- examples: distance vector (DV), link state (LS) algorithms
• Reactive Routing:
- “find a route to the destination only after a request comes in”
- good for more dynamic networks
- examples: AODV, dynamic source routing (DSR), TORA
• Hybrid Schemes:
- “keep some information current”
- example: Zone Routing Protocol (ZRP)
- example: Use spanning trees for non-optimal routing
Proactive Routing (Distance Vector)
source
destination
root
source destination
• Distance Vector: O(n log n) bits per node, O(n^2 log n) total
• Routing via spanning tree: O(n log n) total, very non-optimal
• Optimal (i.e., shortest path) routing requires Theta(n^2)
bits total on almost all graphs
[Buhrman-Hoepman-Vitanyi 00]
• Almost optimal routing (with stretch < 3) requires Theta(n^2)
on some graphs
[Fraigniaud-Gavoille 95, Gavoille-Gengler 97, Gavoille-Perennes 96]
• Tradeoff between stretch and space: [Peleg-Upfal 89]
- upper bound: O(n 1+1/k ) memory with stretch O(k)
- lower bound: Theta(n1+1/(2k+4) ) bits with stretch O(k)
- about O(n 3/2 ) with stretch 5 [Eilam-Gavoille-Peleg 00]
Note:
source
destination destination
(3,3) 0105641
Geographical Routing
• Use of geography to achieve scalability
– Proactive algorithms need to maintain state proportional
to number of nodes
– Reactive algorithms, with aggressive caching, also
stores large state information at some nodes
• Nodes only maintain information about local
neighborhoods
– Requires reasonably accurate geographic positioning
systems (GPS)
– Assume bidirectional radio reachability
• Example protocols:
– Location-Aided Routing [Ko-Vaidya 98], Routing in
the Plane [Hassin-Peleg 96], GPSR [Karp-Kung 00]
Greedy Perimeter Stateless Routing
D
S
GPSR: Perimeter Forwarding
• Given:
– A collection of nodes in the plane
– Transmission range of the nodes (assumed
equal)
• Goal: To determine a subgraph of the
transmission graph G that is
– Connected
– Low-degree
– Small stretch, hop-stretch, and power-stretch
The Yao Graph
• Global structures:
– Minimum spanning trees & minimum broadcast trees
• Local structures:
– Dominating sets: distributed algorithms and tradeoffs
• Hierarchical structures:
– Sparse neighborhood covers
Model Assumptions
Level 1
Level 1
A Sublinear Time Distributed
Algorithm
• Facility location
– A set of k-dominating centers can be selected to locate
servers or copies of a distributed directory
– Dominating sets can serve as location database for
storing routing information in ad hoc networks [Liang
Haas 00]
• Used in distributed construction of minimum
spanning tree [Kutten-Peleg 98]
An Adaptive Diameter-2 Clustering
3
2 4
1 5
6
8 7
Properties of the Clustering
• Each node sends at most one message
– A node u sends a message only when it has decided its
cluster leader
• The running time of the algorithm is O(Diam(G))
• The cluster centers together form a 2-dominating set
• The best upper bound on the number of clusters is
O(V)
Dynamic Maintenance Heuristic
• Each node maintains the ids of nodes in its cluster
• When a node u moves, each node v in the cluster
does the following:
– If u has the highest connectivity in the cluster, then v
changes cluster by forming a new one or merging with a
neighboring one
– Otherwise, v remains in its old cluster
• Aimed toward maintaining low diameter
The Minimum Dominating Set
Problem
• NP-hard for general graphs
• Admits a PTAS for planar graphs [Baker 94]
• Reduces to the minimum set cover problem
• The best possible poly-time approximation ratio
(to within a lower order additive term) for MSC
and MDS, unless NP has nO (log log n )-time
deterministic algorithms [Feige’96]
• A simple greedy algorithm achieves H∆ = O(log ∆)
approximation ratio, ∆ is 1 plus the maximum
degree [Johnson 74, Chvatal 79]
Greedy Algorithm
• An Example
Distributed Greedy Implementation
• [Liang-Haas 00]
– Achieves the same approximation ratio as the
centralized greedy algorithm.
– Algorithm proceeds in rounds
• Calculate the span for each node u , which is the number of
uncovered nodes that u covers.
• Compare spans between nodes within distance 2 of each other.
• Any node selects itself as a dominator, breaking tie by node
ID , if it has the maximum span within distance 2.
Distributed Greedy
Span Calculation – Round 1
4 3
2 3
5 4
5 3
2
3
Distributed Greedy
Candidate selection – Round 1
4 3
2 3
5 4
5 3
2
3
Distributed Greedy
Dominator selection – Round 1
Distributed Greedy
Span calculation – Round 2
4 3
2 3
3
2
Distributed Greedy
Candidate selection – Round 2
4 3
2 3
3
2
Distributed Greedy
Dominator selection – Round 2
Distributed Greedy
Span calculation – Round 3
1 1
1
Distributed Greedy
Candidate selection – Round 3
1 1
1
Distributed Greedy
Dominator selection – Round 3
Lower Bound on Running Time of
Distributed Greedy
Running time is Ω( n )
for the “caterpillar
graph”, which has a
chain of nodes with
decreasing span.
root
2-level partitioning
of a spanning tree
Bubbles (cont.)