flow architecture: a cartoon guidedoyle/wiki/images/0/02/1archnotes.pdfjohn doyle john g braun...

167
Local Error/flow control Relay/MUX Global E/F control Relay/MUX Physical Application E/F control Relay/MUX Complex Network Architecture: A cartoon guide Flow Reactions Protein level Flow Reactions RNA level Flow DNA level John Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Upload: others

Post on 20-Aug-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Local

Error/flow control

Relay/MUX

Global

E/F control

Relay/MUX

Physical

Application

E/F control

Relay/MUX

Complex Network Architecture: A cartoon guide

Flow

Reactions

Protein level

Flow

Reactions

RNA level

Flow

Reactions

DNA level

John Doyle

John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering

Caltech

Page 2: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Outline

•  Not merely “complexity, networks, abstraction, recursion, modularity,…”

•  But very specific forms of these that are needed for networks

•  Emphasize fundamentals •  Illustrate with case studies and cartoons:

Internet versus bacterial biosphere Operating systems Global brain architecture Smartgrid and cyberphysical

Page 3: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Next steps?

•  New course this term? (CDS 213?) •  Discuss at 1pm •  Flesh out details •  Integrated control, comms, computing,

thermo/statmech, optimization, games, etc •  Motivated by very generic network challenges

Page 4: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Network Math and Engineering (NetME) Challenges

•  Predictive modeling, simulation, and analysis of complex systems in technology and nature

•  Theoretical foundation for design of network architectures

•  Balance rigor/relevance, integrative/coherent •  Model/simulate is critical but limited

–  Predicting rare but catastrophic events –  Design, not merely analysis –  Managing complexity and uncertainty

Page 5: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Local

Error/flow control

Relay/MUX

Global

E/F control

Relay/MUX

Physical

Application

E/F control

Relay/MUX

Flow

Reactions

Protein level

Flow

Reactions

RNA level

Flow

Reactions

DNA level

Huge range of dynamics •  Spatial •  Temporal

Bewildering w/out clear

grasp of layered

architecture

Page 6: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

“Architecture”

•  Most persistent, ubiquitous, and global features of organization

•  Constrains what is possible for good or bad •  Platform that enables (or prevents) innovation,

sustainability, etc, •  Internet, biology, energy, manufacturing,

transportation, water, food, waste, law, etc •  Existing architectures are unsustainable •  Theoretical foundation is fragmented,

incoherent, incomplete

Page 7: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Lots of Influences Not Referenced Properly in These Notes

•  Biology/Medicine (Savageau, G&K, Mattick, Csete, Arkin, Alon, Caporale, de Duve, Exerc Physio, Acute Care, etc etc…)

•  Internet (Kelly/Low, Willinger, Clark, Wroclawski, Day, Chang, etc etc)

•  Architecture (Alexander, Salingeros,…) •  Aerospace (many, Maier is a good book) •  Philosophy/History (Fox Keller, Jablonka&Lamb) •  Physics/ecology (Carlson) •  Management (Baldwin,…) •  Resilience/Safety/Security Engineering/Economics (Wood,

Anderson, Leveson, …)

Page 8: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Infrastructure networks?

•  Power •  Transportation •  Water •  Waste •  Food •  Healthcare •  Finance

All examples of “bad” architectures: •  Unsustainable •  Hard to fix

Where do we look for “good” examples?

Page 9: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Informative case studies in architecture

•  Internet and related technology (OS) •  Systems biology (particularly, bacterial biosphere) •  System medicine and physiology •  Ecosystems (e.g. So Cal wildfire ecology) •  Aerospace systems •  Electronic Design Autom. (Platform Based Design)

•  Multiscale physics (turbulence, stat mech) •  Misc: buildings/cities, Lego, clothing/fashion, barter/

markets/money/finance, social/political

Page 10: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Simplest case studies

•  Successful architectures •  Robust, evolvable •  Universal, foundational •  Accessible, familiar •  Unresolved challenges •  New theoretical frameworks •  Boringly retro?

Internet Bacteria

Page 11: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

•  Universal, foundational

Techno- sphere

Internet Bacteria

Bio- sphere

Page 12: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

•  Universal, foundational

Techno- sphere

Internet

Bio- sphere

Bacteria

Spam Viruses

Page 13: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Two lines of research: 1.  Patch the existing Internet architecture

so it handles its new roles

Techno- sphere

Internet

•  Real time •  Control over (not just of)

networks •  Action in the physical world •  Human collaborators and

adversaries •  Net-centric everything

Page 14: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Modern theory and the Internet

Verbal/cartoon

Data and statistics

Modeling and simulation

Analysis

Synthesis

Levels of understanding

Traffic

Topology

Control and dynamics

Layering

Architecture

Topics

Page 15: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Recent progress (1995-)

Traffic Topology C&D Layering Architect.

Cartoon ? Data/stat

Mod/sim

Analysis

Synthesis

Page 16: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Recent progress

Traffic Topology C&D Layering Architect.

Cartoon

Data/stat

Mod/sim

Analysis

Synthesis

Page 17: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Physical

IP

TCP

Application Architecture is not graph topology.

Architecture facilitates arbitrary graphs.

Page 18: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Diverse hardware

Operating systems

Diverse applications

Layers (Net) Computer

Ancient network architecture: “Bell-heads

versus Net-heads”

Pathways (Bell) Communications

Phone systems

Page 19: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Recent progress (1995-)

Traffic Topology C&D Layering Architect.

Cartoon

Data/stat

Mod/sim

Analysis

Synthesis

Page 20: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCP IP

Physical

MAC Switch

MAC MAC Pt to Pt Pt to Pt

telephony

Diverse applications

telephony

Page 21: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Resources Deconstrained

Applications Deconstrained

Theoretical framework: Constraints that deconstrain

•  Layering as optimization decomposition

•  Optimal control •  Robust control •  Game theory •  Network coding •  Recursive layers?

Page 22: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Cyber-Physical Theories

•  Thermodynamics •  Communications •  Control •  Computation

Page 23: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Physical

•  Thermodynamics •  Communications •  Control •  Computation

Cyber

•  Thermodynamics •  Communications •  Control •  Computation

Internet Bacteria

Case studies

Page 24: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Physical

•  Thermodynamics •  Communications •  Control •  Computation

Cyber

•  Thermodynamics •  Communications •  Control •  Computation

Promising unifications

Page 25: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Techno- sphere

Internet

Two lines of research: 1.  Patch the existing Internet architecture 2.  Fundamentally rethink network architecture

?

Page 26: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Architecture?

Traffic Topology C&D Layering Architect.

Cartoon ? Data/stat

Mod/sim

Analysis

Synthesis

Page 27: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

1.  2.  Fundamentally rethink network architecture

Techno- sphere

Internet Bacteria

Bio- sphere

Case studies

Page 28: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Biology versus the Internet

Similarities •  Evolvable architecture •  Robust yet fragile •  Constraints/deconstrain •  Layering, modularity •  Hourglass with bowties •  Feedback •  Dynamic, stochastic •  Distributed/decentralized •  Not scale-free, edge-of-chaos, self-

organized criticality, etc

Differences •  Metabolism •  Materials and energy •  Autocatalytic feedback •  Feedback complexity •  Development and

regeneration •  >4B years of evolution •  How the parts work?

Page 29: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Biology versus the Internet

Similarities •  Evolvable architecture •  Robust yet fragile •  Constraints/deconstrain •  Layering, modularity •  Hourglass with bowties •  Feedback •  Dynamics •  Distributed/decentralized •  Not scale-free, edge-of-chaos, self-

organized criticality, etc

Differences •  Metabolism •  Materials and energy •  Autocatalytic feedback •  Feedback complexity •  Development and

regeneration •  >4B years of evolution

Focus on bacterial biosphere

Page 30: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

RNA DNA Protein

From Pathways

Metabolic pathways

“Central dogma” Network architecture?

To Layers?

Page 31: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Local

Error/flow control

Relay/MUX

Global

E/F control

Relay/MUX

Physical

Application

E/F control

Relay/MUX

Recursive control structure

Flow

Reactions

Protein level

Flow

Reactions

RNA level

Flow

Reactions

DNA level

Page 32: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

In the real (vs virtual) world

What matters: •  Action

What doesn’t: •  Data •  Information •  Computation •  Learning •  Decision •  …

Page 33: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Techno- sphere

Internet

Two lines of research: 1.  Patch the existing Internet architecture 2.  Fundamentally rethink network architecture

?

Page 34: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

PNA

“return to fundamentals”

Page 35: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Ring 0

“Rings” are HW defined levels of “protection”

“Ring -1”

“Ring -2”

Ring 1

Ring 2

Etc…

Etc…

Page 36: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Ring 0

Platform Based Design

Ring -1

Ring -2

•  Negative rings don’t mean the same thing •  They would correspond to abstraction layers in hardware design •  We will temporarily defer HW, but.. •  PBD (Platform Based Design) is very compatible •  Often a key design issue in PBD is where to put the HW/SW boundary •  The PNA view of layering can be viewed as a special case of PBD

Etc…

Page 37: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Ring 0

Design heuristics (KISS or E2E)

Ring -1

Ring -2

Ring 1

Ring 2

•  Keep what goes in lower rings as simple as possible (but not simpler) and •  Reuse verified lower ring components… •  This helps robustness (more flexible, verifiable, secure, evolvable, etc…) •  There is a price to pay in efficiency •  Good design balances the tradeoff

• These are nearly universal heuristics •  It would be nice to make these heuristics more rigorous

Etc…

Etc…

Page 38: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Ring 0

My first mistake…

Ring 1

Ring 2

•  I’m not going to do a very good job of drawing the HW •  Actually I won’t do a good job of drawing anything but I think the hardware will be really bad. •  No rings of hardware.

I’m only going to draw 3 rings of software and I’m not going to put things in the right rings, but I’m going to try to get in the ballpark…

Page 39: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Lib Lib

Router

App

DIF

Lib

App IPC

DIF

DIF DIF

Lib Lib DIF

Leading to a picture like this

Want to explore the fundamentals of layering

Page 40: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

Hardward

App1 App2

local

lib

IPC= InterProcess Communication

A function call can be

•  Local •  Library (system) •  IPC

user IPC

Within a single processor

Page 41: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

HW

Xfer Ctrl Mgmt

The kernel functions are •  Data transfer (fastest) •  Control (middle) •  Management (slowest) App1

lib

user

Page 42: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

The kernel functions are •  Data transfer (fastest time scale)

–  Within memory (and memory hierarchies) –  Between devices and memory –  Between memory and computing elements

•  Control (middle time scales) –  Scheduling/Multiplexing resources –  In time and space

•  Management (slowest time scale) –  What resources are available? –  Where are they?

Page 43: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

HW

App1

lib Xfer Ctrl Mgmt

Layers have sublayers

… but it’s not clear how to draw them.

Page 44: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

HW

lib

system

App1

lib

“user”

The process is naturally recursive

(“hypervisor”)

Page 45: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

HW

system

App1

“user”

The process is naturally recursive

Xfer Ctrl Mgmt

Xfer Ctrl Mgmt

Page 46: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Layers are naturally recursive

Xfer Ctrl Mgmt

Xfer Ctrl Mgmt

Layers have sublayers

Page 47: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

App1 App2 IPC

InterProcess Communications

•  Local call •  Library

(system) call •  IPC

local

system

Want them all to behave similarly.

Page 48: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC facility kernel

HW

App1 App2

IPC

? ?

Page 49: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC facility kernel

HW

App1 App2

IPC

Xfe

r

Ctrl

Mgmt

Xfe

r

Page 50: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC facility kernel

Xfe

r

Ctrl

Mgmt

Xfe

r

Layers have sublayers

… but it’s not clear how to draw them.

Page 51: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

HW

Lib1 Lib2 IPC

? ?

Mgmt, Control, DataX

system

App1 App2 IPC

“user”

IPC is naturally recursive

Page 52: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC facility

HW

App1 App2 IPC

Xfe

r Mgmt/Ctrl

Xfe

r

IPC facility Xfe

r Mgmt/Ctrl

Xfe

r

kernel

system

“user” IP

C is

na

tura

lly

recu

rsiv

e

Page 53: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

HW

Driver2

lib

Driver2

system

App1 App3

lib

“user”

Driver1

Driver1

Design choices effect

performance/ robustness

Page 54: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

HW

Lib1 Lib2

Driver3

lib

IPC

? ?

Mgmt, Control, DataX Driver3

Driver2

system

App1 App2

App3 IPC

lib

“user”

layers are naturally recursive

Page 55: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Mgmt, Ctrl, DataX, IPC

driv

er1

buses

Main processor I/O

processor

App1 App2

IPC

What happens in a computer system?

Mgmt Control DataX

Mgmt Control DataX

DIPC facility

Distributed IPC.

Page 56: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

I/O processor

Mgmt/Cntrl DataX

Mgmt Control DataX

DIPC facility

•  Data transfer (fastest time scale) •  Between “processors”

•  Control (middle time scales) •  Scheduling/Multiplexing in time

•  Management (slowest time scale) •  What? Where?

Mgmt and Ctrl become more

complex

Page 57: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Any layer’s functions are •  Data transfer (fastest time scale)

–  Within memory (and memory hierarchies) –  Between devices and memory –  Between memory and computing elements –  Between virtualized resources (in higher layers)

•  Control (middle time scales) –  Scheduling/Multiplexing resources –  In time and space –  Real and virtualized

•  Management (slowest time scale) –  What resources are available? –  Where are they?

Page 58: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

App Might be all in the

same “box”.

I/O processor

Mgmt Control DataX

Main processor

Page 59: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC facility

HW

App1 App2 IPC

Xfe

r Mgmt/Ctrl

Xfe

r

IPC facility Xfe

r Mgmt/Ctrl

Xfe

r

kernel

system

“user”

Black box, virtualization

Page 60: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC facility

HW

App1 App2 IPC

IPC facility

kernel

system

“user”

Black box, virtualization

Page 61: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

All these signals are

“virtual”

The only “real” signals are not shown

Page 62: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

HW

Lib1 Lib2

Driver3

lib

IPC

? ?

Mgmt, Control, DataX Driver3

Driver2

system

App1 App2

App3 IPC

lib

“user”

Essential tradeoffs appear

even here

Higher layer

Design choice

Lower layer

Page 63: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow, Wasteful

Fast, Efficient

Log(

was

te)

Higher layer

Lower layer

Page 64: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow, Wasteful

Fast, Efficient

Expand dimensions

Slow Fast

Wasteful

Efficient

log

log

Page 65: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

Design tradeoffs

Page 66: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

SW

HW

DNA

RNA

protein

Tradeoffs are universal, but the details are not.

Page 67: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

DNA

Neurons

CMOS

Computational hardware substrates

Page 68: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

HARD HARD HARD E S Y for computers

for us

Slow Fast

Wasteful

Efficient

log

log

DNA

Neurons

CMOS

Brains

Some tasks:

Page 69: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

DNA

Neurons

CMOS

Brains

What makes this possible?

Network architecture

Cells

Page 70: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

DNA

RNA

Protein Network architecture

Cells

Page 71: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

gap

Page 72: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

Page 73: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

bad

Page 74: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Existing hard limits have restrictive assumptions and few dimensions

•  Thermodynamics (Carnot) •  Communications (Shannon) •  Control (Bode) •  Computation (Turing)

New, promising unifications but need much more

Page 75: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

bad

Page 76: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow, Wasteful

Collapse dimensions

Fast, Efficient

Page 77: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Fast, Efficient Fundamental

Log(

dela

y)

Collapse dimensions

Tech

nolo

gy

trad

eoffs

Slow, Wasteful

Page 78: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow, Wasteful

Fast, Efficient

Log(

was

te)

Waste •  time •  energy •  materials •  …

Page 79: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Log(

was

te)

Log(fragility)

Higher layer

Lower layer

Page 80: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

[a system] can be robust for a given [property] and a set of [perturbations]

Yet be fragile for a different [property] or [perturbation]

Log(fragility) Log(robustness)

Page 81: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Robust Yet Fragile

Question: Human complexity

  Efficient, flexible metabolism   Regeneration & renewal   Rich microbial symbionts and   Immune systems   Complex societies   Advanced technologies

  Obesity and diabetes   Cancer   Parasites, infection   Inflammation, Auto-Im.   Epidemics, war, …   Catastrophic failures

Page 82: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Robust Yet Fragile

Mechanism?

  Efficient, flexible metabolism   Regeneration & renewal

  Fat accumulation   Insulin resistance   Inflammation

  Obesity and diabetes   Cancer

  Fat accumulation   Insulin resistance   Inflammation

Fluctuating energy

Static energy

Page 83: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Robust Yet Fragile Implications/

Generalizations   Efficient, flexible metabolism   Rich microbial symbionts and   Immune systems   Regeneration & renewal   Complex societies   Advanced technologies

  Obesity and diabetes   Parasites, infection   Inflammation, Auto-Im.   Cancer   Epidemics, war, …   Catastrophic failures

•  Fragility = Hijacking, side effects, unintended… of mechanisms evolved for robustness •  Complexity is driven by control, robust/fragile tradeoffs •  Math: New robust/fragile conservation laws

•  Resilience/safety/security Engineering/Economics: “Human error” and “human nature” is often a symptom of bad system architecture

Page 84: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Log(fragility)

Robust •  Secure •  Scalable •  Verifiable •  Evolvable •  Maintainable •  Designable •  …

Fragile •  Insecure •  Not scalable •  Unverifiable •  Frozen • …

Other dimensions

Page 85: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Log(fragility)

Robust •  Secure •  Scalable •  Verifiable •  Evolvable •  Maintainable •  Designable •  …

Fragile •  Not … •  Unverifiable •  Frozen • …

Collapse other dimensions

Page 86: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Log(fragility)

Page 87: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Log(

was

te)

Log(fragility)

HW only (fragile, fast)

SW/HW mix (robust, slow)

bad

Page 88: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Log(fragility)

Robust •  Scalable •  Verifiable •  Evolvable •  Maintainable •  Designable •  …

Fragile •  Not scalable •  Unverifiable •  Frozen • …

Higher layer

Lower layer

Page 89: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Log(

was

te)

Log(fragility)

Higher layer

Lower layer

Mix

Page 90: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Log(

was

te)

Log(fragility)

Higher layer

Lower layer

Good Mix

bad

Page 91: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Log(

was

te)

Log(fragility)

Higher layer

Lower layer

???

Example?

Page 92: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

HW

lib

App1 user

Don’t cross layers

Direct access to

physical memory

Robust •  Secure •  Scalable •  Verifiable •  Evolvable •  Maintainable •  Designable •  …

???

Page 93: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

kernel

HW

lib

App1 user

Direct access to

physical memory

Robust •  Secure •  Scalable •  Verifiable •  Evolvable •  Maintainable •  Designable •  …

??? Separate logical names and physical addresses

Page 94: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Separate logical names and physical addresses

Naming and addressing are important topics in OS

Needs to be an even richer topic in networking

So, finally, let’s look at a minimal network

Page 95: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

App Might be all in the

same “box”.

I/O processor

Mgmt Control DataX

Main processor

Page 96: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Network cable

App App

IPC

D-IPC-F

A network with another “box”…

I/O processor

Mgmt Control DataX

Main processor

Page 97: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Network cable

App App IPC

A minimal network without a NIC.

DIF= D-IPC-F =Distributed

IPC Facility

Page 98: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Xfer

Network cable

Xfer

App App IPC

D-IPC-F Ctrl

Mgmt

Ctrl

Mgmt

Mgmt and Cntrl become even more complex

And layers have sublayers

… but it’s not clear how to draw them.

Page 99: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

What is a NIC?

Mgmt, Ctrl, DataX, IPC

driver1

buses

Main processor Network Interface

Card (NIC)

App1

Mgmt Control DataX

Mgmt Control DataX

DIPC facility

Network cable

Page 100: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

NIC

Lib

Network cable

Lib DIF

App App IPC

DIF

A minimal network with a NIC

Page 101: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Lib Lib DIF

App App IPC

DIF

More layers

Different scopes

DIF

DIF= Distributed IPC Facility

Page 102: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Lib Lib

Router

App

DIF

Lib

App IPC

DIF

DIF DIF

Host Host

Page 103: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Lib Lib

Router

App

DIF

Lib

App IPC

DIF

DIF DIF

Lib Lib DIF

Page 104: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Lib Lib

DIF

Lib

DIF

DIF DIF

Lib Lib DIF

How many layers?

Page 105: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

App App IPC

How many layers?

As many as you need to map distribute applications

Onto distributed resources

Page 106: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Lib Lib

Router

App

DIF

Lib

App IPC

DIF

DIF DIF

Lib Lib DIF

Mgmt and Cntrl become increasingly

complex Tradeoffs become

increasingly complex

It gets harder to draw the

right pictures

Page 107: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Lib Lib

Router

App

DIF

Lib

App IPC

DIF

DIF DIF

Lib Lib DIF

Mgmt and Cntrl become increasingly

complex

Tradeoffs become

increasingly complex

It gets harder to draw the

right pictures

And matches our “layering as

optimal control” much better.

This PNA framework clarifies

flaws in existing architecture.

Page 108: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Log(

was

te)

Log(fragility)

Higher layer

Lower layer

???

This PNA framework clarifies

flaws in existing architecture.

Page 109: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IP and MAC address

both name interfaces

App App IPC

Global and direct access to

physical address!

Robust? •  Secure •  Scalable •  Verifiable •  Evolvable •  Maintainable •  Designable •  …

Page 110: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Nodes have no addresses

Page 111: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Lib Lib

Router

App

DIF

Lib

App IPC

DIF

DIF DIF

Lib Lib DIF

Naming and addressing •  need to match their layer •  translate/resolve between layers •  not be exposed outside layer

Page 112: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Physical

IP

TCP

Application

Naming and addressing •  need to match their layer •  translate/resolve between layers •  not be exposed outside layer

Architecture issues •  DNS •  NATS •  Firewalls •  Multihoming •  Mobility •  Routing table size •  Overlays •  …

Page 113: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Architecture issues •  DNS •  NATS •  Firewalls •  Multihoming •  Mobility •  Routing table size •  … Lo

g(w

aste

)

Log(fragility)

???

Page 114: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Next steps?

•  New course this term? (CDS 213?) •  Discuss at 1pm •  Flesh out details •  Integrated control, comms, computing,

thermo/statmech, optimization, games, etc •  Motivated by very generic network challenges

Page 115: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC Transfer

IPC Control IPC Management

Delimiting Transfer

Relaying/ Muxing PDU Protection Common Application

Protocol

Applications, e.g., routing, resource allocation, access control, etc.

Start with this picture from PNA

Next steps?

Page 116: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

And categorize these •  Delimiting •  Initial State Synch •  Policy Selection •  Addressing •  Flow/Connection

Identifier •  Relaying •  Multiplexing •  Ordering •  Frag./Reassembly •  Combining/Separation •  Data Corruption

•  Lost /Duplicate Detection

•  Flow Control •  Forward Error Cor. •  Ack/Retran Control •  Compression •  Authentication •  Access Control •  Integrity •  Confidentiality •  Nonrepudiation •  Activity

Page 117: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC Xfer Transfer

SDU Protection

Delimiting

Addressing Ordering Frag./Reassembly Combining/Separation Lost /Duplicate Detection

Data Corruption Integrity Confidentiality Compression

Relaying Multiplexing

Page 118: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC Mgmt

Common Application Protocol

Applications, e.g., routing, resource allocation, access control, etc.

Routing Policy Selection Flow/Connection Identifier Access Control

Page 119: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC Cntrl

Flow Control Ack/Retran Control

Page 120: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

IPC Cntrl

Flow Control Ack/Retran Control

Data Corruption TTL Forward Error Cor.

IPC Xfer

SDU Protection

Delimiting

Addressing Ordering Frag./Reassembly Combining/Separation Lost /Duplicate Detection

Data Corruption? Integrity Confidentiality Compression

Relaying Multiplexing

IPC Mgmt

Policy Selection Flow/Connection Identifier Access Control

summary

Page 121: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

In the real (vs virtual) world

What matters: •  Action

What doesn’t: •  Data •  Information •  Computation •  Learning •  Decision •  …

Page 122: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Embedded

Physical plant Embedded

Page 123: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Embedded virtual

actuator/ sensor

Network cable

Controller

Lib

App

DIF

Networked embedded

Lib

Physical plant

Page 124: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Embedded virtual

actuator/ sensor

Network cable

Controller

DIF

Physical plant

Meta-layering of cyber-phys control

Page 125: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Xfer Xfer D-IPC-F

Ctrl

Mgmt

Ctrl

Mgmt

Micro-layering of D-IPC-F

Network cable

Page 126: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Biology versus the Internet

Similarities •  Evolvable architecture •  Robust yet fragile •  Constraints/deconstrain •  Layering, modularity •  Hourglass with bowties •  Feedback •  Dynamics •  Distributed/decentralized •  Not scale-free, edge-of-chaos, self-

organized criticality, etc

Differences •  Metabolism •  Materials and energy •  Autocatalytic feedback •  Feedback complexity •  Development and

regeneration •  >4B years of evolution

Focus on bacterial biosphere

Page 127: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Control of the Internet

source receiver

Packets

control packets

Page 128: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

source receiver

signaling gene expression

metabolism lineage

Biological pathways

Page 129: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

source receiver

control

energy

materials

signaling gene expression

metabolism lineage

More complex

feedback

Page 130: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

source receiver

control

energy materials

Autocatalytic feedback

Page 131: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

source receiver

control

energy

materials

signaling gene expression

metabolism lineage

More complex

feedback

What theory is relevant to these more complex feedback systems?

Page 132: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

source receiver

control

energy materials

More complex

feedback

What theory is relevant to these more complex feedback systems?

signaling gene expression

metabolism lineage

Page 133: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Catabolism

Prec

urso

rs

Carriers

Fatty acids

Nucleotides Amino Acids

Inside every cell

Core metabolic bowtie

Skipping the “OS” story, right to networks

Page 134: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Catabolism

Prec

urso

rs

Carriers

Fatty acids

Nucleotides Amino Acids

Core metabolism

Inside every cell (≈1030)

Page 135: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Catabolism

Prec

urso

rs

Carriers

Page 136: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Catabolism

TCA Pyr

Oxa

Cit

ACA

Gly G1P

G6P

F6P

F1-6BP

PEP

Gly3p

13BPG

3PG

2PG

ATP

NADH

Page 137: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCA Pyr

Oxa

Cit

ACA

Gly

G1P

G6P

F6P

F1-6BP

PEP

Gly3p

13BPG

3PG

2PG

Page 138: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCA Pyr

Oxa

Cit

ACA

Gly

G1P

G6P

F6P

F1-6BP

PEP

Gly3p

13BPG

3PG

2PG

Prec

urso

rs

metabolites

Page 139: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Enzymatically catalyzed reactions

TCA

Gly

G1P

G6P

F6P

F1-6BP

PEP Pyr

Gly3p

13BPG

3PG

2PG

Oxa

Cit

ACA

Page 140: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCA Pyr

Oxa

Cit

ACA

Gly

G1P

G6P

F6P

F1-6BP

PEP

Gly3p

13BPG

3PG

2PG

ATP

Autocatalytic

NADH

Prec

urso

rs

Carriers

Page 141: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCA Pyr

Oxa

Cit

ACA

Gly

G1P

G6P

F6P

F1-6BP

PEP

Gly3p

13BPG

3PG

2PG

ATP

Autocatalytic

NADH

produced

consumed Rest of cell

Page 142: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Carriers

TCA Pyr

Oxa

Cit

ACA

Gly

G1P

G6P

F6P

F1-6BP

PEP

Gly3p

13BPG

3PG

2PG

ATP

NADH

Reactions

Proteins

Control?

Page 143: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCA

Gly

G1P

G6P

F6P

F1-6BP

PEP Pyr

Gly3p

13BPG

3PG

2PG

ATP

NADH

Oxa

Cit

ACA

Control

Page 144: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCA Pyr

Oxa

Cit

ACA

Gly

G1P

G6P

F6P

F1-6BP

PEP

Gly3p

13BPG

3PG

2PG

Page 145: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCA

Gly

G1P

G6P

F6P

F1-6BP

PEP Pyr

Gly3p

13BPG

3PG

2PG

ATP

NADH

Oxa

Cit

ACA

If we drew the feedback loops the diagram would be unreadable.

Page 146: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCA

Gly

G1P

G6P

F6P

F1-6BP

PEP Pyr

Gly3p

13BPG

3PG

2PG

ATP

NADH

Oxa

Cit

ACA

Stoichiometry matrix

S

Page 147: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Regulation of enzyme levels by transcription/translation/degradation

TCA

Gly

G1P

G6P

F6P

F1-6BP

PEP Pyr

Gly3p

13BPG

3PG

2PG

Oxa

Cit

ACA

Mgmt

Page 148: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCA

Gly

G1P

G6P

F6P

F1-6BP

PEP Pyr

Gly3p

13BPG

3PG

2PG

ATP

NADH

Oxa

Cit

ACA

Allosteric regulation of enzymes

Error/flow Ctrl

Page 149: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

TCA

Gly

G1P

G6P

F6P

F1-6BP

PEP Pyr

Gly3p

13BPG

3PG

2PG

ATP

NADH

Oxa

Cit

ACA

Mgmt

Err/flow ctrl

Reaction

Page 150: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Mature red blood cells live 120 days

Running only the top layers

products S reactions P

Enz1 reaction3 Enzyme form/activity

Reaction rate

Enz2

“metabolism first” origins of life?

Page 151: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Flow/error Reactions

Protein level

Flow/error Reactions

RNA level

Flow/error Reactions

DNA level

Page 152: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Flow/error Reactions

Protein level

Flow/error Reactions

RNA level

Flow/error Reactions

DNA level

Protein

RNA

DNA

Translation

Transcription

Page 153: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Flow/error Reactions

Protein level

Flow/error Translation

RNA level

Flow/error Transcription

DNA level

Page 154: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Diverse Reactions

DNA DNA DNA Diverse Genomes

Flow/error

Protein level

Flow/error Reactions

RNA level

Flow/error Reactions

Translation

Transcription

Conserved core

control

Page 155: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Flow/error

Reactions

Protein level

Flow/error

Reactions

RNA level

Flow/error

Reactions

DNA level

Top to bottom •  Metabolically costly but

fast to cheap but slow •  Special enzymes to

general polymerases •  Allostery to regulated

recruitment •  Analog to digital •  High molecule count to

low (noise)

Rich Tradeoffs

Page 156: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

DNA

RNA

Protein Network architecture

Cells

Page 157: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

DNA

RNA

Protein

Cells

???

Page 158: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Flow

Reactions

Protein level

Flow

Reactions

RNA level

Flow

Reactions

DNA level

Fragility example: Viruses

Viruses exploit the universal bowtie/hourglass structure to hijack the cell machinery.

Viral genes

Viral proteins

Page 159: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Layered Brain (Hawkins)?

Diverse Physiological Resources

Global, universal control

Page 160: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Slow Fast

Wasteful

Efficient

log

log

DNA

Neurons

CMOS

Brains

What makes this possible?

Network architecture

Cells

Page 161: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Embedded virtual

actuator/ sensor

Network cable

Controller

Lib

App

DIF

Networked embedded

Lib

Physical plant

Page 162: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Embedded virtual

actuator/ sensor

Network cable

Controller

DIF

Physical plant

Meta-layering of cyber-phys control

Page 163: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Physiology

Organs

Cells

Meta-layers

Page 164: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Physiology

Organs

Meta-layers

Prediction Goals

Actions

errors

Actions Cor

tex

Page 165: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Physiology

Organs

Meta-layers

Prediction Goals

Actions

errors

Actions From Information to “Outformation” to “Actformation”?

Page 166: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

“Architecture” in practice •  Internet, biology, energy, manufacturing,

transportation, water, food, waste, law, etc •  Many architectures are unsustainable/hard to fix What does “architecture” mean here? •  Persistent, ubiquitous, global features •  Constrains the possible (for good or bad) •  Enables/prevents innovation, sustainability, etc, •  Theory is fragmented, incoherent, incomplete •  Needs rigor and relevance •  “Constraints that deconstrain” and “facilitated

variation” (Gerhart and Kirschner)

Page 167: Flow Architecture: A cartoon guidedoyle/wiki/images/0/02/1ArchNotes.pdfJohn Doyle John G Braun Professor Control and Dynamical Systems BioEngineering, Electrical Engineering Caltech

Next steps?

•  New course this term? (CDS 213?) •  Discuss at 1pm •  Flesh out details •  Integrated control, comms, computing,

thermo/statmech, optimization, games, etc •  Motivated by very generic network challenges