1394.1 overview (evolving slide set)

41
1394.1 Overview 1394.1 Overview (evolving slide set) (evolving slide set) December 13, 1999 December 13, 1999 Dr. David V. James, Sony Dr. David V. James, Sony [email protected] [email protected] (contains slide (contains slide animations) animations)

Upload: asa

Post on 31-Jan-2016

40 views

Category:

Documents


0 download

DESCRIPTION

1394.1 Overview (evolving slide set). December 13, 1999 Dr. David V. James, Sony [email protected] (contains slide animations). Bus bridge topologies. (selective routing between buses). Hierarchical bus bridges. b.1. b.4. b.2. a.0. a.1. c.0. c.1. Two portals, one on each bus - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 1394.1 Overview (evolving slide set)

1394.1 Overview1394.1 Overview(evolving slide set)(evolving slide set)

December 13, 1999December 13, 1999

Dr. David V. James, SonyDr. David V. James, [email protected]@alum.mit.edu

(contains slide animations)(contains slide animations)

Page 2: 1394.1 Overview (evolving slide set)

Bus bridge topologiesBus bridge topologies

(selective routing between buses)(selective routing between buses)

Page 3: 1394.1 Overview (evolving slide set)

Hierarchical bus bridgesHierarchical bus bridges

Two portals, one on each bus forwards async by destinationID async routing tables are stable forwards isoch by channel number isoch routing entries are dynamic

b.2b.4b.1

a.0 a.1 c.0 c.1

Page 4: 1394.1 Overview (evolving slide set)

Looped bus bridgesLooped bus bridges

During initialization, disable redundant bridge Active topology forms a spanning tree

b.2b.4b.1

a.0 a.1 c.0 c.1

disabled bridge

Page 5: 1394.1 Overview (evolving slide set)

Software route adjustmentsSoftware route adjustments

The redundant bridge can be partially activated.Shortest path routing is then enable.But, caution is necessary to avoid deadlocks.

b.2b.4b.1

a.0 a.1 c.0 c.1a/c

Page 6: 1394.1 Overview (evolving slide set)

Assigned busID addressesAssigned busID addresses

(net refresh after bus reset)(net refresh after bus reset)

Page 7: 1394.1 Overview (evolving slide set)

Bus reset resultsBus reset results

A bus reset does several things: a new bus number is assigned a courtesy notification is broadcast

b.2b.4b.1

a.0 a.1 d.0 d.1

(c.0) (c.1)

Page 8: 1394.1 Overview (evolving slide set)

Why new busID assignment? Why new busID assignment?

Primary objectives: correctness & simplicity secondary objective: efficient reset recoveryExisting (remapped) virtualIDs can be unsafeDirect local-node addressing (no alpha agent) more efficient; no caching concernsNo source_ID/destination_ID substitutionsNo localID accounts (DIRTY,FREE,...)Single bus rediscovery can be efficient

Page 9: 1394.1 Overview (evolving slide set)

Subnet disconnectionSubnet disconnection

Both subbuses get new busIdsDirty “victim” subnet is “scrubbed”

e.1e.2e.1

a.0 a.1 d.0 d.1

Page 10: 1394.1 Overview (evolving slide set)

Subnet reconnectionSubnet reconnection

New busIDs are assigned: To all merged (bus reset) nodes To unaffected victim buses (due to USED/DIRTY conflict)

f.2f.4f.1

a.0 a.1 g.0 g.1

Page 11: 1394.1 Overview (evolving slide set)

Isochronous connectionsIsochronous connections

(one talker & multiple listeners)(one talker & multiple listeners)

Page 12: 1394.1 Overview (evolving slide set)

Isochronous connection (A)Isochronous connection (A)

C

L

T

Connection assumptions: controller, talker, listener anywhere disconnect if any are “lost” async: channel but no bandwidth

Page 13: 1394.1 Overview (evolving slide set)

Isochronous connection (B)Isochronous connection (B)

C’T

L’

Common connection: same talkerEui/plugID distinct controller listener nodes

(example: common listener bus)

Page 14: 1394.1 Overview (evolving slide set)

Overlaid connectionsOverlaid connections

C

L

T C’T

L’

T C’

L’

C

L

Page 15: 1394.1 Overview (evolving slide set)

Persistent connections (NO!)Persistent connections (NO!)

C’T

L’

T C’

L’

C

L

T C’

L’

C

L

? ?

L”

C”

C

L

T C’

L’

C

L

Page 16: 1394.1 Overview (evolving slide set)

Source quarantineSource quarantine

(bridge-aware)(bridge-aware)

Page 17: 1394.1 Overview (evolving slide set)

Bridge-aware quarantine Bridge-aware quarantine detection/removaldetection/removal

res

req

Quarantined requester: request accepted, response returned distinct rcode/scode identifies problemQuarantine release: FirstSwap transaction clears quarantine (sequence number possible)

res

req

Page 18: 1394.1 Overview (evolving slide set)

Bridge-awareBridge-awarequarantine recoveryquarantine recovery

Quarantine recovery: Discard EUI-to-nodeID translations (or ignore, based on sequence number)

res

req

res

req

(discard)

Page 19: 1394.1 Overview (evolving slide set)

Legacy source quarantineLegacy source quarantine

Page 20: 1394.1 Overview (evolving slide set)

Legacy quarantine detectionLegacy quarantine detection

res

req

Quarantined requester (the same): request accepted (ack_complete), discarded controller’s response-frame timeout occurs

C

Page 21: 1394.1 Overview (evolving slide set)

Legacy quarantine recoveryLegacy quarantine recovery

Quarantine recovery: FinalSwap transaction clears quarantine Consumer reactivates the talker

list

talk C

list

talk C

Page 22: 1394.1 Overview (evolving slide set)

Net initializationNet initialization

Net refresh - assigns new busIDsNet refresh - assigns new busIDsNet restart - slowly recycles busIDsNet restart - slowly recycles busIDsNet reset - quickly recycles busIDsNet reset - quickly recycles busIDs

Page 23: 1394.1 Overview (evolving slide set)

Initial configurationInitial configuration

net’s primary-alpha portal

bus’s secondary-alpha portal

isolating bus-bridge portal

Page 24: 1394.1 Overview (evolving slide set)

Node attachment resultsNode attachment results(animated sequence)(animated sequence)

Page 25: 1394.1 Overview (evolving slide set)

Net refresh messagesNet refresh messages

Page 26: 1394.1 Overview (evolving slide set)

Bus reset (node attached)Bus reset (node attached)

Bus reset invalidates node’s busIDsReset portals becomes prime-portal candidates Cross-bridge traffic is disabled

bus reset

Page 27: 1394.1 Overview (evolving slide set)

Primary bus acquisitionPrimary bus acquisition

Acquisition messages are sent by each portal Acquisition messages sent to “next” portalThe “next” portal is defined to be stable

Page 28: 1394.1 Overview (evolving slide set)

Primary bus acquisitionedPrimary bus acquisitioned

Largest portalID acquisition survivesMessages “pass through” victim portalsCompletes when candidate’s message return

Page 29: 1394.1 Overview (evolving slide set)

Adjacent bus acquistionAdjacent bus acquistion

“Breach” packets sent from current candidateReceipt of breach packets initiates breach Adjacent bus acquisition begins...

Page 30: 1394.1 Overview (evolving slide set)

Remote bus acquisitionRemote bus acquisition

After acquisition, breach packets sentBreach packets start remote-bus acquisition

Page 31: 1394.1 Overview (evolving slide set)

Bus acquisition completesBus acquisition completes

Breach packets avoid acquired territoryNet acquisition completes when breach returnsTentative busID/route assignments determined

Page 32: 1394.1 Overview (evolving slide set)

Commit phase beginsCommit phase begins

Commit begins after breach packets return bridge routing tables are changed busID assignment removes barriers

Page 33: 1394.1 Overview (evolving slide set)

Commit phase completesCommit phase completes

Commit completes when commit packets returnNormal operation is possible at this time

Page 34: 1394.1 Overview (evolving slide set)

Refresh sequence reviewRefresh sequence review

Bus resetBus reset

AcquisitionAcquisition

CommitCommit

Page 35: 1394.1 Overview (evolving slide set)

Node attachment resultsNode attachment results(animated sequence)(animated sequence)

Page 36: 1394.1 Overview (evolving slide set)

Net refresh messagesNet refresh messages(animated sequence)(animated sequence)

Page 37: 1394.1 Overview (evolving slide set)

Isochronous BW averagingIsochronous BW averaging

Page 38: 1394.1 Overview (evolving slide set)

Peak bandwidth creditsPeak bandwidth credits

time

BW

average

maximum

credits

Page 39: 1394.1 Overview (evolving slide set)

Event mergingEvent merging

(if local events are insufficient...)(if local events are insufficient...)

Page 40: 1394.1 Overview (evolving slide set)

GASP event overloadGASP event overload

tgt

src

4 input with one output, so something is lost

src

srcsrc

Page 41: 1394.1 Overview (evolving slide set)

Merged event parametersMerged event parameters

source

timeOfBirth

events

source

timeOfBirth

events

source

timeOfBirth

events

merge point OR’d

newest time