ryad ben-el-kezadri, giovanni pau network research lab, ucla timeremap: stable & accurate time...
TRANSCRIPT
Ryad Ben-El-Kezadri, Giovanni PauNetwork Research Lab, UCLA
TimeRemap: Stable & Accurate Time in Vehicular Networks
REVE Workshop - 2010
2
Outline
• Problem & Application
• Available clocks on nodes
• TimeRemap algorithm
• Testbed & Results
3
Outline
• Problem & Application– Problem
– Application & constraints
– Scenarios
• Available clocks on nodes
• TimeRemap algorithm
• Testbed & Results
4
Problem & Application > Problem
• General Problem
Vehicular nets Comm. : Off-the-shelf HW
– 802.11 NIC
Sync. : No extra HW – GPS receiver
Synch. clocks
Environment & constraints
5
Problem & Application > Appli.
Network functioning
Contextualization/Distributed Sensing :
Evt ↔Time & Place
Network monitoring
Pollution monitoring
Time constraints >
Comm. constraints >
Synchronization
6
Problem & Application > Constraints
• Time constraints– Inter-packet/2 : ~100 s
– Slot/2 : ~5 sPkt
Sync signalingimpossible
• Comm. constraints– No contact between
trackers
Nodes to track
Tracker
8
Outline
• Problem & Application
• Available clocks on nodes
– Packet timestamping
– OS & NIC characterization
– Key idea
• TimeRemap algorithm
• Testbed & Results
9
Available clocks > Timestamping
• A packet event e, a timestamping system S– When did e come at the antenna twalle / fS(twalle) ?
• Clock model
– fS(twalle) = a twalle + b + error
• Available systems : OS, NIC
OS
e
NIC
e
GPS
Probabilistic errorEx. Time to read the clock
Wallclock time modified
- fOS(twalle) = twalle + errorant-OS
- fNIC(twalle) = at twalle + bt
No good
No good
10
Available clocks > OS characterization
1) Difference between OS time and wallclock for each e (phase)
0) Generate periodic e
Stable but,…
Bad precision
11σ
Available clocks > OS characterization
1) Difference between OS time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
0) Generate periodic e
12
Available clocks > OS characterization
1) Difference between OS time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
0) Generate periodic e
σσ
Allan variation plot
13
Available clocks > OS characterization
1) Difference between OS time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
0) Generate periodic e
2σ
14
Available clocks > OS characterization
1) Difference between OS time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
0) Generate periodic e
2σσ
Allan variation plot
2σ
15
Available clocks > OS characterization
1) Difference between OS time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
0) Generate periodic e
3σ
16
Available clocks > OS characterization
1) Difference between OS time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
0) Generate periodic e
3σσ
Allan variation plot
2σ 3σ
17
Available clocks > NIC characterization
1) Difference between NIC time and wallclock for each e (phase)
Good precision but,…
Drift
18
Available clocks > NIC characterization
1) Difference between NIC time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
σ
19
Available clocks > NIC characterization
1) Difference between NIC time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
σ
Allan variation plot
2σ 3σ
σ
20
Available clocks > NIC characterization
1) Difference between NIC time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
21
Available clocks > NIC characterization
1) Difference between NIC time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
σ
Allan variation plot
2σ 3σ2σ
22
Available clocks > NIC characterization
1) Difference between NIC time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
23
Available clocks > NIC characterization
1) Difference between NIC time and wallclock for each e (phase)
2) Compute phase variations over interval (freq.) & observe freq variations
σ
Allan variation plot
2σ 3σ3σ
24
Available clocks > Summary & Idea
OS-stable-not precise
Construct a 3rd clockwhich leverages : -the stability of the OS -the precision of the NIC
NIC-not stable-precise
25
Outline
• Problem & Application
• Available clocks on nodes
• TimeRemap algorithm
– Steps
– Zoom on regression
– Detection of group of outliers
– The TimeRemap “clock”
• Testbed & Results
26
TimeRemap Algo > Steps
Capture OS & NIC timestamps
e’s
NIC tstampsOS tstamps
e’s
NIC tstampsOS tstamps
Data segmentation1 2
27
TimeRemap Algo > Steps
e’s
NIC tstampsOS tstamps
Extract NIC & OS supports (regression)
for each segment3
e’s
NIC tstampsOS tstamps
Remap NIC tstamps to OSsupport for each segment
4
supports
28
TimeRemap Algo > Regression
1st Regression line (for selection)
NIC tstamps
OS tstamps
2nd Regression line y=ax+b (for remapping)
NIC tstamps
OS tstamps
☻☻
☻
Outlier suppression
3.a Compute support conversion parameters (a,b)
3.b
A two step regression over each segment
☻
☻☻
Timestampingdelay (probablistic)
29
TimeRemap Algo > Group of outliers
Error between OS tstamps :
Error b/w remapped NIC tstamps :
Error b/w remapped NIC tstamps with detection of group of outliers:
e’s OS NIC
GPS
OS NIC
GPS
Group of outliers (GPS fix loss,…)
Reuse the support conversion parameters of previous segment
30
TimeRemap Algo >Timeremap clock
TimeRemap service
NIC clock
TimeRemap “clock”
What time is it?
Global time (GT)
Local time (LT)
The TimeRemap “clock” can be used by
the OS to convert the NIC tsamps to GT
the NICs to convert a LT to GT & share it with other NICs
31
Outline
• Problem & Application
• Available clocks on nodes
• TimeRemap algorithm
• Testbed & Results
32
Testbed & Results > Testbed
GPS/PPS electric pulse
Internet NTP time
C C C C C C C C C C
Chrony+shmpps
OLSR ‘VANET’ +Madwifi NIC
Comm.
Sync.
See http://sites.google.com/site/gpssync/for our GPS/PPS multiplexer specs
GPS receiver Garmin 18 LVC
33
Testbed & Results > Results
3 scenarios No car stressed All cars stressed Half cars stressed, Half cars not stressed
Compare timestamps b/w cars (nodes)• OS vs TimeRemap tstamps• Performance metrics
Mean sync error Std dev Outlier ratio (Outlier if error>30 s)
Some cars are stressed with the stressed linux command
35
Conclusion
• TimeRemap leverages – the stability of the OS – the precision of the NIC
• Performance Mean sync error reduced to 3sec
No outlier