a comparative analysis of precision time ... - ieee sa...tim e adjustment (ns) time(s) offset from...

25
Speaker: Ong Boon Leong [email protected] Co-authors: Anil Kumar [email protected] Usman Sarwar [email protected] 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 9-10 October 2018 London, UK A comparative analysis of Precision Time Protocol in native, virtual machines and container-based environments for consolidating automotive workloads

Upload: others

Post on 22-May-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Speaker: Ong Boon Leong [email protected]

Co-authors: Anil Kumar [email protected] Sarwar [email protected]

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

9-10 October 2018 London, UK

A comparative analysis of Precision Time Protocol in native,

virtual machines and container-based environments for

consolidating automotive workloads

Page 2: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 2

Agenda

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

• Overview of Linuxptp• PTP Synchronization Scenarios:-

• Inter Native Machine• Inter Virtual Machine• VM to Local Machine• VM to Remote Machine

• ACRN Project: Consolidating Automotive Workloads

Page 3: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 3

Overview of Linuxptp Projectptp4l & phc2sys

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

ptp4l adjusts

PTP HW Clock (PHC)

phc2sysadjusts system clock with PHC

ptp4l adjusts

System Clock

Ha

rdw

are

T/S

So

ftw

are

T/SLinuxptp Project provides software daemons:

• ptp4l• PTP Message over L2, UDP (IPv4 or IPv6)• Hardware & Software Timestamping• Synchronize distributed PHC clocks• IEEE1588 and compatible with IEEE 802.1AS

gPTP daemon (daemon_cl of Avnu)

• phc2sys• Synchronize System Clock (CLOCK_REALTIME)

to PTP Hardware Clock (PHC)

Machine A

ETH

PTP ClockSystem Clock

Machine B

ETH

PTP ClockSystem Clock

SwitchMSM S

Boundary ClockGrand Master Clock Slave Clock

Page 4: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

Intel Copyrights

4

T1

T2

T3

T4

Path Delay (known to Slave Clock) PD = [(T2-T1) + (T4-T3)]/2

Ta

TbOffset from Master Clock (master offset) = Tb – Ta - PD

Master Clock Slave Clock

Tc

New Time at Slave Clock= Tc – Master Offset

Overview of Linuxptp Projectoffset from master clock (master offset)

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

timetime

Page 5: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 5

Overview of Linuxptp Projectptp4l log at slave clock

2 31

1

2

4

3

4

Offset from Master Clock

S0: unlock S1: clock stepS2: locked

PHC Frequency Adjustment (pbb)

Path Delay valuesbetween Master andSlave Clocks

$ ptp4l –i <eth devname> –H|S -2|4|6 -s -m

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

Page 6: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 6

Inter Native Machinestest setup

Objective:

• To obtain baseline PTP synchronization performance for native environment under direct end to end connection.

• PTP message timestamping mode: Hardware Vs Software.

• Cross check ptp4l (linuxptp under gPTP mode) works with daemon_cl (openavnu).

Ubuntu OSUbuntu OS

Linux kernel

ptp4l

Local MachineI210ETH

ptp4l

Remote Machine

daemon_cl

igb igb Linux kernel

PTP Clock

HWTimestamp

I210ETH

PTP Clock

HWTimestamp

OR

Page 7: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 7

Inter Native Machinestest result: hardware timestamping (L2 & L4)

-300

-200

-100

0

100

200

300

400

500

600

8 58 108 158 208 258 308 358 408 458 508

Tim

e A

dju

stm

en

t (n

s)

Time(s)

Offset From Master Clock

802.1AS (native - ptp4l)

802.1AS (native - ptp4l & daemon_cl)

1588 (native - ptp4l L2)

1588 (native - ptp4l L4)

01234567

108 158 208 258 308Tim

e A

dju

stm

en

t (n

s)

Time(s)

-20

-10

0

10

20

108 158 208 258 308

Tim

e A

dju

stm

en

t (n

s)

Time(s)

Sync variation: nsSynch spike: ns

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

540ns

-285ns

Page 8: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 8

Inter Native Machines

-300000

-200000

-100000

0

100000

200000

300000

18 68 118 168 218 268 318 368 418 468 518

Tim

e A

dju

stm

en

t (n

s)

Time (s)

Offset From Master Clock1588 (native - L2 SW) 1588 (native - L4 SW)

1588 (native - L2 HW) 1588 (native - L4 HW)

1588 L2 HW 1588 L4 HW 1588 L2 SW 1588 L4 SW 1588 L2 SW+HW 1588 L4 SW+HW

Mean 0.88 -0.91 -6,068.86 -7,206.24 -12,280.36 -21,737.50

Std. Dev. 28 6 65,881 25,086 63,306 61,330

Max 531 13 217,991 43,634 158,221 104,007

Min -254 -18 -194,514 -172,642 -228,450 -264,095

-300000

-200000

-100000

0

100000

200000

18 68 118 168 218 268 318 368 418 468 518

Tim

e A

dju

stm

en

t (n

s)

Time (s)

Offset From Master Clock1588 (native - L2 SW & HW) 1588 (native - L4 SW & HW)

1588 (native - L2 HW) 1588 (native - L4 HW)

Sync variation: usSynch spike: us

test result: software timestamping (L2 & L4)

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

-200us -280us

Page 9: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 9

Inter Virtual Machinestest setup: VNET SWITCH + NAT networking between VM’s

Objective:

• To obtain PTP synchronization performance for Virtual Machine to Virtual Machine under the same machine.

Facts:

• For VM, we used VMPlayer with “NAT”

• For “VM to VM” is within vnet switch. “VM to Internet” is over NAT server.

• Inside a VM, we see e1000 driver loaded for intel 82540 virtual card.

• No PTP hardware time-stamping mode.

• This configuration supports L2 & L4 PTP messages.

Objective (revised):

• To obtain default PTP synchronization performance for VM to VM under the same machine for software time-stamping only.

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

Ubuntu OS

Linux kernel

Ubuntu OS

ptp4l

VMP

Local Machine I210

82540

igb

Ubuntu OS

VMP 82540

vnet switch

e1000

kernel

ptp4l

e1000

kernel

PTP Clock

HWTimestamp

dhcpserver

NATserver

TCP/IP

Page 10: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 10

Inter Virtual MachinesTest result: software timestamping (L2 & L4)

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

-2000000

0

2000000

4000000

6000000

8000000

10000000

12000000

18 68 118 168 218 268 318 368 418 468 518

Tim

e A

dju

stm

en

t (n

s)

Time(s)

Offset From Master Clock

1588 (Inter-VM L2)Sample 1 Sample 2 Sample 3

-40000000

-20000000

0

20000000

40000000

60000000

80000000

100000000

120000000

140000000

160000000

180000000

19 69 119 169 219 269 319 369 419 469 519

Tim

e A

dju

stm

en

t (n

s)

Time(s)

Offset From Master Clock

1588 (Inter-VM L4)

Sample 1 Sample 2 Sample 3

16ms 166ms

27ms 39ms

Sync variation: µsSynch spike: ms

Page 11: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 11

Inter Virtual Machinesbridged networking (TAP) between qemus

Facts:

• For Qemu, we used qemu-kvm option.

• Inside a Qemu, we see e1000 driver loaded for intel 82540 virtual card (no PTP hardware time-stamping)

• In Host, Qemu is connected to tap/tun driver.

• We connect tap0 and tap1 to br0 (software bridge).

• Under software bridge, L2 PTP message sent out from tap interface contains Ethernet FCS error. So, L2 PTPsynchronization fails.

Objective:

• To obtain PTP synchronization performance for Qemu to Qemu under the same machine for software time-stamping only over in-kernel L2 software bridge

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

Objective (revised):

• To obtain default PTP synchronization performance for Qemu to Qemu under the same machine for software time-stamping only over in-kernel L2 software bridge for L4 PTP message only.

Ubuntu OS

Linux kernel

Yocto Projectptp4l

qemu

Local Machine I210

82540

igb

br0

e1000

kernel

PTP Clock

HWTimestamp

tap0 tap1

Yocto Projectptp4l

qemu 82540

e1000

kernel

Page 12: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 12

Inter Virtual Machinestest result: software timestamping (L4 only)

-4000000

-2000000

0

2000000

4000000

6000000

8000000

10000000

12000000

14000000

16000000

18 68 118 168 218 268 318 368 418 468 518

Tim

e A

dju

stm

en

t (n

s)

Time(s)

Offset From Master Clock1588 (Inter-Qemu L4)

Sample 1 Sample 2 Sample 3 Sample 4 Sample 5

-600000

-400000

-200000

0

200000

400000

600000

800000

1000000

344 394 444 494 544

Tim

e A

dju

stm

en

t (n

s)

Time(s)

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

15ms

8.5ms

Sync variation: µsSynch spike: ms

Page 13: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 13

VM to Local Machinetest setup

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

Facts:

• netfilter intercepts PTP message exchange (multicast) and forward them between VirtualBox and Host Machine.

• This configuration supports both L2 & L4 PTP messages.

Objective:

• To obtain PTP synchronization performance for Virtual Machine to Host Machine for software time-stamping onlyover bridged networking.

• Configurations:-

• Grandmaster clock in Host Machine + Slave Clock in VM.

• Grandmaster clock in VM + Slave Clock in Host Machine.

Ubuntu OS

Linux kernel

Ubuntu OS

ptp4l

vm

Local Machine I210

82540 ptp4l

igb

netfilter driver

e1000

kernel

PTP Clock

HWTimestamp

Page 14: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 14

VM to Local Machinetest result: software timestamping (L2 & L4)

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

GM at Virtual Machine GM at Local Host

-4E+09

-3E+09

-2E+09

-1E+09

0

1E+09

2E+09

3E+09

18 68 118 168 218 268 318 368 418 468 518

TIM

E A

DJU

ST

ME

NT

(N

S)

TIME (S)

Offset From Master Clock1588 (GMC-VM & SC-LM L2 SW) S1

1588 (GMC-VM & SC-LM L2 SW) S2

1588 (GMC-VM & SC-LM L4 SW) S1

1588 (GMC-VM & SC-LM L4 SW) S2

-3E+09

-2E+09

-1E+09

0

1E+09

2E+09

3E+09

18 68 118 168 218 268 318 368 418 468 518T

IME

AD

JU

ST

ME

NT

(N

S)

TIME (S)

Offset From Master Clock1588 (SC-VM & GMC-LM L2 SW) S1

1588 (SC-VM & GMC-LM L2 SW) S2

1588 (SC-VM & GMC-LM L4 SW) S1

1588 (SC-VM & GMC-LM L4 SW) S2

Sync variation: sSynch spike: s

Page 15: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

Ubuntu OS

Ubuntu OS

Linux kernel

15

VM to Remote Machine

Ubuntu OS

ptp4l

vm

Local Machine I210

82540

ptp4l

Remote Machine

igb

netfilter driver

e1000

kernel

igb Linux kernel

PTP Clock

HWTimestamp

I210

PTP Clock

HWTimestamp

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

test setupObjective:

• To obtain PTP synchronization performance for Virtual Machine to Remote Machine for software time-stamping onlyover bridged networking.

• Configurations:-

• Grandmaster clock in Remote Machine + Slave Clock in VM.

• Grandmaster clock in VM + Slave Clock in Remote Machine.

Page 16: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 16

VM to Remote Machinetest result: software timestamping (L2 & L4)

-4E+09

-3E+09

-2E+09

-1E+09

0

1E+09

2E+09

3E+09

18 68 118 168 218 268 318 368 418 468 518

TIM

E A

DJ

US

TM

EN

T (

NS

)

TIME (S)

Offset From Master Clock1588 (GMC-VM & SC-RM L2 SW) S11588 (GMC-VM & SC-RM L2 SW) S21588 (GMC-VM & SC-RM L4 SW) S11588 (GMC-VM & SC-RM L4 SW) S2

-3E+09

-2E+09

-1E+09

0

1E+09

2E+09

3E+09

4E+09

18 68 118 168 218 268 318 368 418 468 518

TIM

E A

DJ

US

TM

EN

T (

NS

)

TIME (S)

Offset From Master Clock1588 (SC-VM & GMC-RM L2 SW) S11588 (SC-VM & GMC-RM L2 SW) S21588 (SC-VM & GMC-RM L4 SW) S11588 (SC-VM & GMC-RM L4 SW) S2

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

Sync variation: sSynch spike: s

Page 17: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 17

Summary of Results

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

Sync Variation Sync Spike/Stray

Inter-machine (HW timestamping) +/- 20 ns -200ns to +550ns spike

Inter-machine (SW timestamping) +/- 200 us Not Observed

Inter VM (Qemu + L2 bridge) +/- 400 us -2ms to +15ms spike

Inter VM (VMP + vnet switch) +/- 400 us -1ms to +160ms spike

VM to Local or Remote Machine Synchronization Fault Error

Key Points:

• Hardware time-stamping gives best time sync accuracy.

• Virtual switch introduces additional PTP time synchronization jitter.

Page 18: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

ACRN Project:

Consolidating Automotive

Workloads

Page 19: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 19

Overview of ACRN Project

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

ACRN Project Value Proposition• Small Code Size / Lightweight• Open Source Project• Real Time• Safety Criticality In Mind• Support Multi OS

https://projectacrn.org/wp-content/uploads/sites/59/2018/07/ACRN-Overview_v14_Web.pdf

ACRN Hypervisor• Type 1 Hypervisor (bare-metal)• Service OS (VM0) [Dom0 in Xen]• User OS (VM1) [DomU in Xen]• Reference I/O Mediation

Page 20: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 20

Ethernet Networking between VMs: virtio-based I/O

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

Ethernet Connectivity between UOSand SOS:-• Virtio driver pairs (FE & BE)• Shared memory virtqueues

between SOS & UOS: 1x Tx ring and 1x Rx ring (current design).

• UOS: standard Linux virtual NICdriver (discovered as PCI device)

• SOS: tap/tun driver + SW bridge +native Ethernet driver

• Native Ethernet Driver owns the PTP clock.

virtio framework lacks TSN support

Page 21: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 21

Overview of Clock Source Technology in x86

• Typical clock sources available for system clock:-• HPET (High Precision Event Timer) : 10MHz = one tick every 100ns• ACPI PM Timer : 3.58MHz = one tick every 279ns• TSC (Time Stamp Counter) : Same as CPU frequency

• TSC is commonly chosen due to high accuracy and low overhead.• Advancement in TSC (check your CPU flags /proc/cpuinfo):-

• rdtscp : atomic operation. 32-bit counter value & 32-bit auxiliary data (CPU ID)• constant_tsc : TSC counter synchronized across all sockets/cores.• nonstop_tsc : constant rate across PM states a.k.a. invariant TSC.

Page 22: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 22

Clocks in both Service OS & Guest OS

• In ACRN, both Service OS and Guest OS are virtual machines (VM). • Currently, ACRN hypervisor fixed the CPU that VM runs on.• ACRN VM depend on below sources to calculate its system clock:-

• System-wide TSC (constant_tsc, nonstop_tsnc, rdtscp without VM Exit)• virtual RTC (vRTC) – Port I/O mediation for actual RTC device.

• RTC does not provide accurate real-time (temperature factor).• To obtain more accurate real-time, use NTP or PTP.• Under ACRN environment, Service OS has sole right to PTP hardware clock

in Ethernet card. Its system time accuracy achieves PTP synchronization accurancy in nano-second range.

• Best to run time-sensitive application on Service OS.

Page 23: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 23

High Precision System Time in Service OS

ACRNHypervisor

ptp4l

Local Machine

I210

kernel

HWTimestamp

igb

PTP Clock

SystemClock

phc2sys

TSC TSC TSC TSC

Native Driver

1

2

VHM

DMvirtio-net BE

tap/tun

virtual switch

Time-aware APP

3

Service OS

4

Time Sync with External PTP (Grand Master Clock)

vrtc

5

1

1 Hardware Time-stamping used for PTP messages

2

2 phc2sys waits for ptp4l to enter locked state in PTPsynchronization with master clock

33 phc2sys uses clock_settime(CLOCK_REALTIME) to

update system clock. Note: system clock depends on TSC and vRTC.

4

4 Time-aware app uses clock_gettime(CLOCK_REALTIME) to schedule itself for time-sensitive workload processing

5

5 Time-aware app interacts with native Ethernet directly

Page 24: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group 2018 IEEE-SA Ethernet & IP @ Automotive Technology Day 24

Conclusion

• ACRN is FuSA certified, lightweight, real-time reference hypervisor and workloads (time-sensitive and not) can be consolidated on its VMs.

• Service OS has native Ethernet driver that solely owns PTP hardware clock.

• Hardware time-stamping achieves PTP clock synchronization accuracy in nano-second range. System clock time of SOS is synchronized to PTP clock.

• Virtio framework and virtual Ethernet do not have time-sensitive infrastructure.

• Therefore, for real-time workload, use SOS and direct the TSN traffics out of native Ethernet directly without going through virtual switch.

2018 IEEE-SA Ethernet & IP @ Automotive Technology Day

Page 25: A comparative analysis of Precision Time ... - IEEE SA...Tim e Adjustment (ns) Time(s) Offset From Master Clock 1588 (Inter-Qemu L4) Sample 1 Sample 2 Sample 3 Sample 4 Sample 5-600000-400000-200000

Internet of Things Group