380 likes | 503 Views
Time Synchronization in 802.11-based MANETs. Ten H. Lai Ohio State University. Out-of-sync problem in MANETs. More sever than in IBSS because of hidden terminals . Recall: causes of out-of-sync Unidirectional clocks Equal beacon opportunity
E N D
Time Synchronization in 802.11-based MANETs Ten H. Lai Ohio State University
Out-of-sync problem in MANETs • More sever than in IBSS because of hidden terminals. • Recall: causes of out-of-sync • Unidirectional clocks • Equal beacon opportunity • Single beacon per interval • Beacon contention(collision)
Select a subset of nodes to generate beacons more frequently than the rest. What subset? Basic Ideas fastest node+ (connected) dominating set
Dominating Sets • A set of nodes that covers the entire graph. connected dominating set
Constructing CDS’s • Many existing algorithms. • Layer 3 algorithms – useful for routing, useless for our purpose.
A New CDS Algorithm • Embedded in TSF (time sync function) • Node exchanging info via beacons • Overhead: 3 bitsper beacon (550 bits) beacon interval window
Constructing a CDS: basic idea • Initially, DS contains a single node. • The fastest node enters DS. • Bridgeskeep entering DSuntilno more bridges. DS
Design Issue #1 • How to recognize the fastest node, bridges, DS nodes, covered nodes, uncovered nodes thru beacons? SA Timestamp Beacon
Design Issue #2 • How to minimize the number of bridges entering DS?
Design Issue #3 • Cope with topology change and node mobility. B A A B
Design Issue #4 • How to merge two subnets? Easy & hard. ?
Design Issue #5: MANET Formation • How to form a MANET from scratch? ?
Assumptions • Formation: MANET initiated by a single node. • Connectivity: MANET remains connected.
Summary of Design Issues • How to recognize the fastest node and bridges? • How to control the number of bridges entering DS? • How to cope with topology change and node mobility? • How to merge subnets?
Rule 1: Let the starting node enter the DS. Initialization
Rule 2: A node x recognizes itself as the fastest if T(beacons) < T(x) for the last k received beacons. The fastest enters DS Am I the Fastest? 1:31 12:01 1.00 1:31 1.01 7:59 1:33 1:00 1.00 1:35 10:01 0:59 1:30 3:45 8.16 1:32 1.01
Solution for Design Issue #1 • How to recognize fastest node and bridges, DS nodes, covered nodes, uncovered nodes thru beacons? SA Timestamp Beacon
Adding Bridges to DS Rule 3: • In each beacon interval, let bridgei enter DS with probability P(i). • Desired properties of P(i)? DS
Does it construct a CDS? R1. The starting node enters DS. R2. The fastest node enters DS. R3.Each bridge enters DS with a probability. DS, yes. CDS, not necessarily.
How to make it connected? • Gateway: a covered node receiving a beacon from a DS node with a far smaller timing. Rule 4: • Let gateways enter DS. 12:05 12:04 12:03 12:32 12:30 12:20
How fast can gateways be recognized? • Depends on the drift rate between fastest node and A. • The higher the drift rate, the easier and faster to recognize gateways. A
Is the resulting DS always connected? • Not necessarily Not a problem as far as clock sync is concerned.
What if we do need a connected DS? • Is it possible to always construct a CDS using only beacons? • Yes.
A problem: entrance only, no exit. R1. The starting node enters DS. R2. The fastest node enters DS. R3.Each bridge enters DS with a probability. R4. Each gateway enters DS.
Exit Rules R1. The starting node enters DS. R2. The fastest node enters DS. R3.Each bridge enters DSwith a probability. R4. Each gateway enters DS. R2’. If no longer the fastest, leaves the DS.
Exit Rules R1. The starting node enters DS. R2. Thefastest node enters DS. R3.Each bridge enters DS with a probability. R4. Each gateway enters DS. R3’ & R4’. Leaves DS after a random amount of time.
Maximum Clock Drift – 802.11b vs. DS-based 802.11b DS-based
A different approach • A Clock Synchronization Algorithm for Multihop Wireless Ad Hoc networks • J.P. Sheu, C.M. Chao, C.W. Sun, NCU • ICDCS’04
Basic Idea 1 • Adjust C(x) according x’s rank in speed in its neighborhood. • N(x) = number of neighbors • Slower(x) = number of slower neighbors • C(x) = {max(1, N(x)) / max(1, Slower(x))}^α x
Basic Idea 2 • Automatic self-time-correcting • Suppose t2-t1 > t2’-t1’ (T > T’) • B falls behind A by T-T’ per T’ μs, or 1 μs per k = T’ / T-T’ μs • B moves its clock 1 μs ahead per each k μs t1 t2 T Clock A T’ Clock B t2’ t1’
A subtle detail • In measuring T, A should not be synchronized between t1 and t2. Same for B? • Variable SyncNum • Carries SyncNum in beacon t1 t2 T Clock A T’ Clock B t2’ t1’
Summary • Proposed: a DS-based clock sync protocol • By-product: an algorithm for constructing DS. • DS: mostly connected, occasionally not. • A different approach • What’s next?