leiden; dec 06gossip-based networking workshop1 epidemic algorithms and emergent shape ken birman

61
Leiden; Dec 06 Gossip-Based Networking Workshop 1 Epidemic Algorithms and Emergent Shape Ken Birman

Upload: kristina-gordon

Post on 05-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 1

Epidemic Algorithms and Emergent Shape

Ken Birman

Page 2: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 2

On Gossip and Shape

Why is gossip interesting? Powerful convergence properties?

Especially in support of epidemics Mathematical elegance?

But only if the system model cooperates New forms of consistency?

But here, connection to randomness stands out as a particularly important challenge

Page 3: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 3

On Gossip and Shape

Convergence around a materialized “graph” or “network topology” illustrates several of these points Contrasts convergence with logical

determinism of traditional protocols Opens the door to interesting analysis But poses deeper questions about

biased gossip and randomness

Page 4: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 4

Value of convergence

Many gossip/epidemic protocols converge exponentially quickly Giving rise to “probability 1.0”

outcomes Even model simplifications (such as

idealized network) are washed away! A rarity: a theory that manages to

predict what we see in practice!

Page 5: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 5

Convergence

I’ll use the term to refer to protocols that approach a desired outcome exponentially quickly

Implies that new information mixes (travels) with at most log(N) delay

Page 6: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 6

Consistency A term to capture the idea that if A and

B could compare their states, no contradiction is evident In systems with “logical” consistency, we

say things like “A’s history is a closed prefix of B’s history under causality”

With probabilistic systems we seek exponentially decreasing probability (as time elapses) that A knows “x” but B doesn’t

Gossip systems are usually probabilistic

Page 7: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 7

Convergent consistency

To illustrate our point, contrast Cornell’s Kelips system with MIT’s Chord Chord: The McDonald’s of DHTs Kelips: DHT by Birman, Gupta, Linga. Prakash Linga is extending Kelips to

support multi-dimensional indexing, range queries, self-rebalancing

Kelips is convergent. Chord isn’t

Page 8: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 8

Kelips

30

110

230 202

Take a a collection of

“nodes”

Page 9: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 9

Kelips

0 1 2

30

110

230 202

1N

N

members per affinity group

Map nodes to affinity

groups

Affinity Groups:peer membership thru

consistent hash

Page 10: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 10

Kelips

0 1 2

30

110

230 202

Affinity Groups:peer membership thru

consistent hash

1N

Affinity group pointers

N

members per affinity group

id hbeat rtt

30 234 90ms

230 322 30ms

Affinity group view

110 knows about other members – 230, 30…

Page 11: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 11

Affinity Groups:peer membership thru

consistent hash

Kelips

0 1 2

30

110

230 202

1N

Contact pointers

N

members per affinity group

id hbeat rtt

30 234 90ms

230 322 30ms

Affinity group view

group contactNode

… …

2 202

Contacts

202 is a “contact” for 110 in group

2

Page 12: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 12

Affinity Groups:peer membership thru

consistent hash

Kelips

0 1 2

30

110

230 202

1N

Gossip protocol replicates data

cheaply

N

members per affinity group

id hbeat rtt

30 234 90ms

230 322 30ms

Affinity group view

group contactNode

… …

2 202

Contacts

resource info

… …

cnn.com 110

Resource Tuples

“cnn.com” maps to group 2. So 110 tells group 2 to

“route” inquiries about cnn.com to it.

Page 13: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 13

How it works

Kelips is entirely gossip based! Gossip about membership Gossip to replicate and repair data Gossip about “last heard from” time

used to discard failed nodes Gossip “channel” uses fixed

bandwidth … fixed rate, packets of limited size

Page 14: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 14

How it works

Basically… A stream of gossip data passes by

each node, containing information on various kinds of replicated data

Node “sips” from the stream, for example exchanging a questionable contact in some group for a better one

Based on RTT, “last heard from” time, etc

Page 15: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 15

How it works

Heuristic: periodically ping contacts to check liveness, RTT… swap so-so ones for better ones.

Hmm…Node 19 looks like a great contact in

affinity group 2

Node 102

Gossip data stream

Page 16: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 16

Convergent consistency

Exponential wave of infection overwhelms disruptions Within logarithmic time, reconverges Data structure emerges from gossip

exchange of data. Any connectivity at all suffices….

Page 17: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 17

… subject to a small caveat

To bound the load, Kelips Gossips at a constant rate Limits the size of packets …Kelips has limited incoming “info

rate” Behavior when the limit is

continuously exceeded is not well understood.

Page 18: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 18

What about Chord?

Chord is a “true” data structure mapped into the network Ring of nodes (hashed id’s) Superimposed binary lookup trees Other cached “hints” for fast lookups

Chord is not convergently consistent

Page 19: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 19

… so, who cares? Chord lookups can fail… and it suffers

from high overheads when nodes churn Loads surge just when things are already

disrupted… quite often, because of loads And can’t predict how long Chord might

remain disrupted once it gets that way Worst case scenario: Chord can become

inconsistent and stay that way

Page 20: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 20

Chord picture0

123

199

202

241

255

248

108

177

64

30

Cach

ed

link

Finger links

Page 21: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 21

Chord picture

0

123

199

202

241

255

248

108177

64

30

EuropeUSA

0

123

199

202

241

255

248

108177

64

30

Transient Network Partition

Page 22: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 22

The problem?

Chord can enter abnormal states in which it can’t repair itself Chord never states the global invariant…

in some partitioned states, the local heuristics that trigger repair won’t detect a problem

If there are two or more Chord rings, perhaps with finger pointers between them, Chord will malfunction badly!

The Fin

e Prin

t

The scenario

you h

ave b

een shown is

of l

ow pro

bability

. In

all

likelih

ood, Chord

would

repair

itself

after a

ny part

itionin

g failu

re th

at mig

ht really

aris

e. Cave

at em

ptor a

nd all

that.

Page 23: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 23

So… can Chord be fixed?

Epichord doesn’t have this problem Uses gossip to share membership data If the rings have any contact with each

other, they will heal Similarly, Kelips would heal itself

rapidly after partition Gossip is a remedy for what ails

Chord!

Page 24: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 24

Insight?

Perhaps large systems shouldn’t try to “implement” conceptually centralized data structures!

Instead seek emergent shape using decentralized algorithms

Page 25: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 25

Emergent shape We know a lot about a related question

Given a connected graph, cost function Nodes have bounded degree Use a gossip protocol to swap links until

some desired graph emerges Another related question

Given a gossip overlay, improve it by selecting “better” links (usually, lower RTT)

Example: The “Anthill” framework of Alberto Montresor, Ozalp Babaoglu, Hein Meling and Francesco Russo

Page 26: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 26

Problem description

Given a description of a data structure (for example, a balanced tree) … design a gossip protocol such that the

system will rapidly converge towards that structure even if disrupted

Do it with bounced per-node message rates, sizes (network load less important)

Use aggregation to test tree quality?

Page 27: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 27

Connection to self-stabilization

Self-stabilization theory Describe a system and a desired property Assume a failure in which code remains

correct but node states are corrupted Proof obligation: property reestablished

within bounded time Kelips is self-stabilizing. Chord isn’t.

Page 28: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 28

Let’s look at a second example

Astrolabe system uses a different emergent data structure – a tree

Nodes are given an initial location – each knows its “leaf domain”

Inner nodes are elected using gossip and aggregation

Page 29: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Astrolabe

Astrolabe Intended as help

for applications adrift in a sea of information

Structure emerges from a randomized gossip protocol

This approach is robust and scalable even under stress that cripples traditional systems

Developed at RNS, Cornell

By Robbert van Renesse, with many others helping…

Today used extensively within Amazon.com

Page 30: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 30

Astrolabe is a flexible monitoring overlay

Name Time Load Weblogic?

SMTP? Word Version

swift 2003 .67 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

Name Time Load Weblogic?

SMTP? Word Versi

on

swift 2011 2.0 0 1 6.2

falcon 1971 1.5 1 0 4.1

cardinal 2004 4.5 1 0 6.0

swift.cs.cornell.edu

cardinal.cs.cornell.edu

Periodically, pull data from monitored systems

Name Time Load Weblogic?

SMTP? Word Versi

on

swift 2271 1.8 0 1 6.2

falcon 1971 1.5 1 0 4.1

cardinal 2004 4.5 1 0 6.0

Name Time Load Weblogic?

SMTP? Word Version

swift 2003 .67 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2231 1.7 1 1 6.0

Page 31: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 31

Astrolabe in a single domain Each node owns a single tuple, like the

management information base (MIB) Nodes discover one-another through a

simple broadcast scheme (“anyone out there?”) and gossip about membership Nodes also keep replicas of one-another’s

rows Periodically (uniformly at random) merge

your state with some else…

Page 32: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 32

State Merge: Core of Astrolabe epidemic

Name Time Load Weblogic?

SMTP? Word Version

swift 2003 .67 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

Name Time Load Weblogic?

SMTP? Word Versi

on

swift 2011 2.0 0 1 6.2

falcon 1971 1.5 1 0 4.1

cardinal 2004 4.5 1 0 6.0

swift.cs.cornell.edu

cardinal.cs.cornell.edu

Page 33: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 33

State Merge: Core of Astrolabe epidemic

Name Time Load Weblogic?

SMTP? Word Version

swift 2003 .67 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

Name Time Load Weblogic?

SMTP? Word Versi

on

swift 2011 2.0 0 1 6.2

falcon 1971 1.5 1 0 4.1

cardinal 2004 4.5 1 0 6.0

swift.cs.cornell.edu

cardinal.cs.cornell.edu

swift 2011 2.0

cardinal 2201 3.5

Page 34: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 34

State Merge: Core of Astrolabe epidemic

Name Time Load Weblogic?

SMTP? Word Version

swift 2011 2.0 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

Name Time Load Weblogic?

SMTP? Word Versi

on

swift 2011 2.0 0 1 6.2

falcon 1971 1.5 1 0 4.1

cardinal 2201 3.5 1 0 6.0

swift.cs.cornell.edu

cardinal.cs.cornell.edu

Page 35: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 35

Observations Merge protocol has constant cost

One message sent, received (on avg) per unit time.

The data changes slowly, so no need to run it quickly – we usually run it every five seconds or so

Information spreads in O(log N) time But this assumes bounded region size

In Astrolabe, we limit them to 50-100 rows

Page 36: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 36

Big systems…

A big system could have many regions Looks like a pile of spreadsheets A node only replicates data from its

neighbors within its own region

Page 37: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 37

Scaling up… and up…

With a stack of domains, we don’t want every system to “see” every domain Cost would be huge

So instead, we’ll see a summaryName Time Load Weblogic?

SMTP? Word Version

swift 2011 2.0 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

cardinal.cs.cornell.edu

Name Time Load Weblogic?

SMTP? Word Version

swift 2011 2.0 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

Name Time Load Weblogic?

SMTP? Word Version

swift 2011 2.0 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

Name Time Load Weblogic?

SMTP? Word Version

swift 2011 2.0 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

Name Time Load Weblogic?

SMTP? Word Version

swift 2011 2.0 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

Name Time Load Weblogic?

SMTP? Word Version

swift 2011 2.0 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

Name Time Load Weblogic?

SMTP? Word Version

swift 2011 2.0 0 1 6.2

falcon 1976 2.7 1 0 4.1

cardinal 2201 3.5 1 1 6.0

Page 38: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 38

Astrolabe builds a hierarchy using a P2P protocol that “assembles the puzzle” without any servers

Name Load Weblogic? SMTP? Word Version

swift 2.0 0 1 6.2

falcon 1.5 1 0 4.1

cardinal 4.5 1 0 6.0

Name Load Weblogic? SMTP? Word Version

gazelle 1.7 0 0 4.5

zebra 3.2 0 1 6.2

gnu .5 1 0 6.2

Name Avg Load

WL contact SMTP contact

SF 2.6 123.45.61.3

123.45.61.17

NJ 1.8 127.16.77.6

127.16.77.11

Paris 3.1 14.66.71.8 14.66.71.12

San Francisco

New Jersey

SQL query “summarizes”

data

Dynamically changing query output is visible system-wide

Name Load Weblogic? SMTP? Word Version

swift 1.7 0 1 6.2

falcon 2.1 1 0 4.1

cardinal 3.9 1 0 6.0

Name Load Weblogic? SMTP? Word Version

gazelle 4.1 0 0 4.5

zebra 0.9 0 1 6.2

gnu 2.2 1 0 6.2

Name Avg Load

WL contact SMTP contact

SF 2.2 123.45.61.3

123.45.61.17

NJ 1.6 127.16.77.6

127.16.77.11

Paris 2.7 14.66.71.8 14.66.71.12

Page 39: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 39

Large scale: “fake” regions These are

Computed by queries that summarize a whole region as a single row

Gossiped in a read-only manner within a leaf region

But who runs the gossip? Each region elects “k” members to run

gossip at the next level up. Can play with selection criteria and “k”

Page 40: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 40

Hierarchy is virtual… data is replicated

Name Load Weblogic? SMTP? Word Version

swift 2.0 0 1 6.2

falcon 1.5 1 0 4.1

cardinal 4.5 1 0 6.0

Name Load Weblogic? SMTP? Word Version

gazelle 1.7 0 0 4.5

zebra 3.2 0 1 6.2

gnu .5 1 0 6.2

Name Avg Load

WL contact SMTP contact

SF 2.6 123.45.61.3

123.45.61.17

NJ 1.8 127.16.77.6

127.16.77.11

Paris 3.1 14.66.71.8 14.66.71.12

San Francisco

New Jersey

Yellow leaf node “sees” its neighbors and the domains on the path to the

root.

Falcon runs level 2 epidemic because it has

lowest load

Gnu runs level 2 epidemic because it has lowest load

Page 41: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 41

Hierarchy is virtual… data is replicated

Name Load Weblogic? SMTP? Word Version

swift 2.0 0 1 6.2

falcon 1.5 1 0 4.1

cardinal 4.5 1 0 6.0

Name Load Weblogic? SMTP? Word Version

gazelle 1.7 0 0 4.5

zebra 3.2 0 1 6.2

gnu .5 1 0 6.2

Name Avg Load

WL contact SMTP contact

SF 2.6 123.45.61.3

123.45.61.17

NJ 1.8 127.16.77.6

127.16.77.11

Paris 3.1 14.66.71.8 14.66.71.12

San Francisco

New Jersey

Green node sees different leaf domain but has a consistent view of the inner

domain

Page 42: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 42

Worst case load? A small number of nodes end up

participating in O(logfanoutN) epidemics Here the fanout is something like 50 In each epidemic, a message is sent and

received roughly every 5 seconds We limit message size so even during

periods of turbulence, no message can become huge. Instead, data would just propagate slowly Robbert has recently been working on this case

Page 43: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 43

Emergent shapes

Kelips: Nodes start with a-priori assignment to affinity groups, end up with a superimposed pointer structure

Astrolabe: Nodes start with a-priori leaf domain assignments, build the tree

What other kinds of data structures can be achieved with emergent protocols?

Page 44: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 44

Van Renesse’s dreadful aggregation tree

A B C D E F G H I J K L M N O P

A C E G I K M O

B F J N

D L

An event e occurs at H

P learns O(N) time units

later!

G gossips with H and

learns e

Page 45: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 45

What went wrong?

In Robbert’s horrendous tree, each node has equal “work to do” but the information-space diameter is larger!

Astrolabe benefits from “instant” knowledge because the epidemic at each level is run by someone elected from the level below

Page 46: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 46

Insight: Two kinds of shape

We’ve focused on the aggregation tree

But in fact should also think about the information flow tree

Page 47: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 47

Information space perspective

Bad aggregation graph: diameter O(n)

Astrolabe version: diameterO(log(n))

H – G – E – F – B – A – C – D – L – K – I – J – N – M – O – P

A B C D E F G H I J K L M N O P

A C E G I K M O

A E I M

A I

A – B

C –

DE – F

G –

H

I –

J

K –

L

M –

N

O –

P

A B C D E F G H I J K L M N O P

A C E G I K M O

B F J N

D L

Page 48: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 48

Gossip and bias

Often useful to “bias” gossip, particularly if some links are fast and others are very slow

AC

D

FZ

E

YB

XRoughly half

the gossip will cross this link!

Demers: Shows how to adjust probabilities to even the load. Ziao later showed that must also fine-tune gossip

rate

Page 49: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 49

How does bias impact information-flow graph

Earlier, all links were the same Now, some links carry

Less information And may have longer delays

Open question: Model bias in information flow graphs and explore implications

Page 50: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 50

Gossip and bias Biased systems adjust gossip

probabilities to accomplish some goal Kate Jenkins: “Gravitational gossip” (ICDCS

‘01) illustrates how far this can be carried A world of multicast groups in which processes

subscribe to x % of the traffic in each group Kate showed how to set probabilities from a set

of such subscriptions… resulting protocol was intuitively similar to a simulation of a gravitational well…

Page 51: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 51

Gravitational Gossip

Page 52: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 52

Gravitational Gossip

a

b

Inner ring: Nodes want 100% of the traffic

Middle ring: Nodes want 75% of the traffic

Outer ring: Nodes want 20% of the traffic

Jenkins: When a gossips to b, includes information about

topic t in a way weighted by b’s level of interest in topic t

Page 53: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 53

Questions about bias

When does the biasing of gossip target selection break analytic results? Example: Alves and Hopcroft show that with

fanout too small, gossip epidemics can die out, logically partitioning a system

Question: Can we relate the question to flooding on an an expander graph?

Page 54: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 54

… more questions

Notice that Astrolabe forces participants to agree on what the aggregation hierarchy should contain In effect, we need to “share interest” in

the aggregation hierarchy This allows us to bound the size of

messages (expected constant) and the rate (expected constant per epidemic)

Page 55: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 55

The question

Could we design a gossip-based system for “self-centered” state monitoring?

Each node poses a query, Astrolabe style, on the state of the system We dynamically construct an overlay for

each of these queries The “system” is the union of these

overlays

Page 56: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 56

Self-centered monitoring

Page 57: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 57

Self-centered queries…

Offhand, looks like a bad idea If everyone has an independent query And everyone is iid in all the obvious

ways Than everyone must invest work

proportional to the number of nodes monitored by each query

In particular if queries touch O(n) nodes, global workload is O(n2)

Page 58: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 58

Aggregation … but in practice, it seems unlikely that

queries would look this way More plausible is something Zipf-like

A few queries look at broad state of system Most look at relatively few nodes And a small set of aggregates might be shared

by the majority of queries Assuming this is so, can one build a

scalable gossip overlay / monitoring infrastructure?

Page 59: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 59

Questions about shape

Can a system learn its own shape? Obviously we can do this by gossiping the

full connectivity graph But are there ways to gossip constant

amounts of information at a constant rate and still learn a reasonable approximation to the topology of the system?

Related topic: “sketches” in databases

Page 60: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 60

… yet another idea Today, “structural” gossip protocols usually

Put nodes into some random initial graph Nodes know where they would “like” to be

Biological systems: Huge collections of nodes (cells) know roles Then they optimize (against something: what?)

to better play those roles Create gossip systems for very large numbers

of nodes that behave like biological systems?

Page 61: Leiden; Dec 06Gossip-Based Networking Workshop1 Epidemic Algorithms and Emergent Shape Ken Birman

Leiden; Dec 06 Gossip-Based Networking

Workshop 61

Emergent Shape: Topics Consistency models Necessary conditions

for convergentconsistency

Role of randomness Implications of bias Emergent structures

Self-centered aggregation

Bandwidth-limited systems; “sketches”

Using aggregation to fine-tune a shape with constant costs