Sir John Tenniel; Alice’s Adventures in Wonderland,Lewis Carroll Chap_16 David L. Mills University...

12
Sir John Tenniel; Alice’s Adventures in Wonderland, Lewis Carroll Chap_16 David L. Mills University of Delaware http://www.eecis.udel.edu/~mills mailto:[email protected] Mar 25, 2022 1
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    220
  • download

    1

Transcript of Sir John Tenniel; Alice’s Adventures in Wonderland,Lewis Carroll Chap_16 David L. Mills University...

Sir John Tenniel; Alice’s Adventures in Wonderland,Lewis Carroll

Chap_16

David L. MillsUniversity of Delawarehttp://www.eecis.udel.edu/~millsmailto:[email protected]

Apr 18, 2023 1

Name State Variable

rec Receive timestamp

dst Destination timestamp

aorg A origin timestamp

borg B origin timestamp

x Transmit interleave switch

h Hold-off counter

Name Packet Variable

torg Orgin timestamp

trec Receive timestamp

txmt Transmit timestamp

Name Peer Variable

Clock offset

Roundtrip delay

Unicast/broadcast offset

fig_16_1

torg = rectrec = dstIf (x == 0) {/* basic mode */ aorg = clock txmt = aorg} else { /* interleaved mode */ if (x > 0) { aorg = clock txmt = borg } else { borg = clock txmt = aorg } x = -x}

Transmit Process. - Basic and Interleaved

Apr 18, 2023 3

if (x == 0) { /* basic mode */ txmt = clock torg = 0} else { /* interleaved mode */ if (x > 0) { aorg = clock txmt = aorg torg = borg } else { borg = clock txmt = borg torg = aorg }}trec = 0

Transmit Process.- Broadcast

fig_16_2

rxproc. Receive proc and receive basic routine

Apr 18, 2023 4

T1 = torg

T2 = trec

T3 = txmt

T4 = dstIf (T1 == 0 || T2 == 0 || T3 == 0) SYNCelse if (T1 != aorg) BOGUS} else { = [(T2 – T1) + (T3 – T4)] / 2 = (T4 – T1) – (T3 – T2)}

Basic Symmetric Mode

if (txmt != 0 && txmt == xmt) { DUPE} else if (x == 0) { rec = txmt

dst = clock If (mode == BROADCAST) Broadcast else Basic Symmetric} else { Interleaved Symmrytric rec = trec

dst = clock}if (h > 0) h- -xmt = txmt

Receive Process

fig_16_3

rxout . Receive interleaved and receive broadcast routines

If (x > 0) T1 = aorgelse T1 = borgT2 = recT3 = txmt

T4 = dstif (torg == 0 || T1 == 0 || T2 == 0 || T3 == 0) { SYNC} else if (torg != 0 && torg != T4) { h = 2 BOGUS} else if (h == 0) { = [(T2 – T1) + (T3 – T4)] / 2 = (T4 – T1) – (T3 – T2)}

Interleaved Symmetric Mode

Apr 18, 2023 5

if (torg == 0) { /* basic mode */ = txmt – dst + d / 2} else { /* interleaved mode */ T1 = torg – borg T2 = torg – aorg aorg = txmt

borg = dst if (T2 > 1) BOGUS else = T1 + d / 2}

Broadcas Modet

fig_16_4

NTP basic on-wire protocol operations (1step)

0

0

T2

T5*

T6

T7*

rec

dst

T3*

T4

T7*

T5*

T6

T5*rec

dst

T1*

T2

T1*

T4

T3*

0

0 T1*

T2

T3*

T3*

T4

T3T2

T1 T5

T6

T8

T7

T6

T1* T5*

T4 T8

T3* T7*

B

A

T3*aorg 0

t1*

aorg

T5*

T5*T1*

torgtrectxmt

Sync

Valid Valid

Valid

Apr 18, 2023 6

fig_16_5

Interleaved on-wire protocol operations (2step)

0

T1 T9

0

borg

dst

0

T2

T2

T4

T5

T6

rec T2 T6

0

T4

T1

T4

T2

0

0

0

T1

T5

T4 T8

0

T10

T6

T8

T10

T10

T8

T7

T5

T9

T8

T6

T12

T5

T4

T3T2

T1 T5

T6

T8

T7

T12

T11T10

T9

torg

T3

Round 1Round 2

Round 3

T9

T12

T10

T10

T12

T9

T13

T14

T13

aorg

trectxmt

T14

borg

dst

T4

0

rec 0 T4

0

T6

T3 T3

T2

0

T3

0 T8

T7

T8

T10

T7

T11

T12

T11aorg 0

T7

T2 T6 T10

Apr 18, 2023 7

Valid

Sync Valid

Sync Valid Valid

Valid

T3

T7

T1

T5

B

A

fig_16_6

Interleaved broadcast on-wire protocol (3step)

T1

aorg

dst

T3*

0

T4

T5*

rec

0

T40

0

T3*

T5*

T4 T8

T5*T1*

T4

T3

T5

T6

T8

T7

torg

T7*

trectxmt

borg T1

T1*

T3 T3T3aorg

T2

Valid

Broadcast Stateless

T2

T1

0

T12

T3

T11*

T12

T11

T3

T11

T11*

T1 T1

Broadcast Broadcast

T1

T3* T3* T11*

T3*

T6

T5*

borg T12

T1*

T2 T4 T4 T4

T7*

Apr 18, 2023 8

B

A

Valid

0

T14

T11

T13*

t14

t13

t11

T13

T13*

Broadcast

T13*

T14

fig_16_7

Automatic protocol detection example (4step)

T1* T9*

0

borg

dst

0

T2

0

T4

0

T6

rec 0 T3

0

T4

0

T5*

T4

0

0

0 0

T3

0

T4

t5*t1*

T8

0

T5*T1*

T3

T8

0

T10

T11*

T8

T11*

0

T9*

T8

T3

T12

T9*

T4

T3T2

T1 T5

T6

T8

T7

T12

T11T10

T9

torg

T3

Bogus

T13*

T12

T11*

T11*

T12

T13*

0

T14

T13

aorg

trectxmt

T14

borg

dst

T4

0

rec 0 T4

0

T6

T3 T3

T2

0

T3

0 T8

T7

T8

T10

T7 T7

T11*

T13*

t11*aorg 0

T7

T2 T6 T10

T13*

T16

T15*

T13*

T14

T15*

0

T14

T7

T15*

T13*

T16

T15

Bogus

Sync Sync Bogus

Valid

Valid

Sync

Apr 18, 2023 9

B

A

Basic

Basic Basic

t5*T5*T1*

Basic Basic Basic

Xleave Xleave

fig_16_8

backroom

Mort .001.100 .046 .015

Macabre .003 .108 .042 .015

GPS .015 .276 .024

GPS .021 .280 .040

Macabre Mort

Macabre .017 .261 .029 .025 .121

Mort .041 .204 .017 .035 .126

Howland

Switch

Switch

GPS

fig_16_9

campus

Bridgeprt .022 .311 .031 .224

Baldwin .040 .359 .096 .176

Rackety .028 .478 .014

Rackety .017 .442 .021

Baldwin Bridgeport

PPS .000 .000.004

Pogo .163 .615 .031 .119

Rackety

PPS .000 .000 .004

Rackety .181 .612 .020 .211

Pogo

Switch

fig_16_10

machines

Name CPU Ethernet NIC Operating System

Baldwin Sun UltraSPARC III 10/100/1000 Mb/s Solaris 5.10

bridgeport Sun UltraSPARC III 10/100/1000 Mb/s Solaris 5.10

Howland Intel P4 1.0 GHz RealTek 8139 10/100 Mb/s FreeBSD 6.1

Macabre InteI P4x2 2.8 GHz Broadcom BCM5751 10/100/1000 Mb/s FreeBSD 6.1

mort InteI P4x2 2.8 GHz Broadcom BCM5751 10/100/1000 Mb/s FreeBSD 6.1

Pogo Sun Ultra-5.10 10/100 Mb/s Solaris 5.10

Rackety Intel Pentium II 300 MHz 3Com 3C905B 10/100 Mb/x FreeBSD 6.1

tbl_16_1