Block lectures on Gossip-based protocols

Size: px
Start display at page:

Download "Block lectures on Gossip-based protocols"

Transcription

1 Block lectures on Gossip-based protocols Lecture 1: dissemination, randomness and aggregation Dr. Etienne Rivière University of Neuchâtel Lectures funded by the EU commission as part of the H2020 Twinning project EBSIS

2 2 Introduction and context Unprecedented scale for distributed systems Peer-to-peer systems for file sharing, telephony, etc. The blockchain and emergent consensus Ad-hoc systems and mesh networks Support infrastructure for Cloud computing Nodes are not necessarily under the control of a single administrative domain Cannot use traditional client-server solutions

3 3 Example: peer-to-peer networks Peers run on normal users machines Application typically tied to the needs and available resources of the user Autonomous systems must implement some form ` of self-management Low level of trust and typically low nodes involvement Typical applications: file sharing, IP telephony,... a view of the Gnutella file sharing network Large-Scale Distributed Systems E. Rivière

4 4 Impact of scale on system design Large size (thousands, millions nodes) No global knowledge of the system Each node knows only a small subset of the system This subset is called the node s view Dynamic: nodes are leaving and joining all the time Consider failures as the common case and not as an exceptional event; use self-organizing designs Large-Scale Distributed Systems E. Rivière

5 5 Gossip-based protocols Simple yet powerful protocols for large-scale and dynamic distributed systems Based on simple interactions between pairs of peers Each peer knows a small subset of the system Peers exchange about what they know and update their local information as a result No complex protocol involving multiple nodes or distributed coordination Robustness based on randomness and diversity Ensure self-organizing properties The system continuously evolves towards a correct state regardless of its starting state Correction of faults is intrinsic to self organization

6 6 Objective of these block lectures Introduce the gossip-based paradigm and its applications Data dissemination Overlay creation and maintenance Aggregation computation Discuss implementation algorithmic tradeoffs made when implementing gossip-based protocols Present an example of a system composing multiple gossip-based protocols Publish/subscribe system

7 7 Outline Today Introduction Gossip-based data dissemination The Peer Sampling Service Gossip-based Aggregation Tomorrow Gossip-based overlay construction Introduction to publish/subscribe Case study: building a publish/subscribe network with combined Gossip-based protocols Conclusion

8 8 Gossip-based dissemination

9 9 Gossip-based dissemination Goal: spread a message to all peers Pair-wise exchange of information between peers Repeated, periodic interactions... with a random choice of communication partner... such that eventually, all peers have the message (with high probability) Coming next: 1. Case study: database replicas synchronization 2. Large-scale systems and random interactions

10 10 Demers et al s database replication and synchronization Considered as the first instance of gossip protocol Context: geo-distributed (medium scale) collection of database servers ClearingHouse system (for Xerox s corporate intranet) Database fully replicated to each of the servers Update from clients applied to a single (closest) replica Problem: how to propagate the updates to all other copies efficiently and for a low cost? Solution 1 (naive): Direct mail Solution 2: Anti-entropy Solution 3: Rumor mongering Combination

11 11 Direct mail (the naive idea) Each update has a timestamp Upon update u, notify all other sites immediately Update value if local timestamp < received timestamp Conflicts resolution is left to the application (also the case for other protocols) B D G I x No guarantees on message delivery Destination unreachable temporarily Incorrect destinations list (membership) x Generates n messages (1 per Site) for each update A C E F H

12 12 First gossip-based mechanism: Anti-entropy Each server lazily maintains the list of all other servers Periodically, each server Selects a partner at random in the list of all servers and perform a pair-wise sync of the entire DB with that server Period is a parameter e.g., every 60 minutes (depends on the rate of updates vs. risk of inconsistency) All server eventually see all updates Can be modeled using theory of epidemics Like a disease in the human population, the information spreads by pair-wise infections between individuals Infected = the server with a new/updated version of a row Virgin = the server with an old/previous/inexistent version

13 Anti-entropy 13 B D G I A E H C F A selects G at random A and G synchronize their database

14 Anti-entropy 14 B D G I A E H no effect! C F D selects A at random A and D synchronize their database C selects G at random C and G synchronize their database G selects F at random G and F synchronize their database

15 Anti-entropy 15 B D G I A no effect! E no effect! H no effect! C no effect! no effect! F no updates --> useless anti-entropy requests! (constant network traffic)

16 16 Anti-entropy (continued) How to synchronize databases using updates timestamps? Push: if local item is more recent, tell remote copy to update Good when most sites are virgin need the update Pull: ask remote node if its copy is newer. If so, update local copy Good when most sites are already up-to-date Push-pull: do both For each item keeps the newest version on any of the two machines All nodes get all updates even if membership lists are incomplete x Dissemination delay is high due to slow initial propagation, and depends on the gossip frequency x Gossiping more frequently results in many useless requests

17 Second gossip-based mechanism: Rumor mongering 17 When receiving an update, propagate it to f other sites These f nodes then propagate the update further Exponential growth of the number of infected nodes This is not a periodic protocol (but can be modeled as one) Also referred to as (controlled) flooding Similar to the spread of a rumor in a human population Requires a stop condition When must a node stop propagating a message it has received? No stop condition = the number of messages will grow exponentially

18 18 Rumor mongering: stop conditions (1/2) Stateless conditions Probability-based: stop with probability 1/k Feedback-based: stop with prob. 1/k if a destination site is already infected Simple and stateless x Setting k appropriately requires knowing the size of the network Condition based on node s state Maintain a memory of messages delivered to the application Only further propagate a message when received for the first time Simple x State can grow indefinitely (should we keep all messages identifiers?) x Effectiveness of the dissemination highly dependent on random choices at first peers

19 19 Rumor mongering: stop conditions (2/2) Conditions based on message state Hops-to-Live: messages start with a counter Each propagation decreases the counter, stop when counter = 0 Helps limit the number of messages x Fraction of the network reached depends on initial counter values x Difficult to decide on counter value without knowing the number of nodes A mix of these techniques

20 Rumor mongering (with hops-to-live stop condition) 20 B D G I HTL=2 A HTL=2 E H C F A initiates the mongering by selecting f=2 peers which will in turn propagate the value

21 Rumor mongering (with hops-to-live stop condition) 21 B D G I HTL=1 HTL=1 A HTL=1 E H C HTL=1 F C and D propagate further with a HTL decreased by 1 Useless communication to already informed nodes

22 Rumor mongering (with hops-to-live stop condition) 22 B D G I HTL=0 HTL=0 A E HTL=0 H C HTL=0 F E and F propagate further with a HTL of 0; only 1 message is useful Useless communication to already informed nodes

23 Rumor mongering (with hops-to-live stop condition) 23 B D G I A E H C F Rumor mongering has stopped but G and H are never notified

24 Rumor mongering: what is the cost of full coverage? Stop condition: Hops-to-Live Simulation of the dissemination of messages to nodes Coverage plot Average %age of peers that receive the message Complete plot %age of all dissemination that reached all peers Redundant plot Ratio between #sends to infected vs. #sends to virgins = overhead HTL Coverage HTL f HTL Redundant Complete f f 24

25 25 To recap Direct mail is ineffective and expensive Anti-entropy Ensures all nodes get the update x Slow and expensive: constant traffic even when no updates Rumor mongering x No insurance that 100% of the nodes receive the update Fast propagation of updates initially but then lots of useless propagations to notified nodes!

26 26 The best of both worlds Rumor mongering in a first phase Efficient in seeding the network initially Stops before there are too many duplicates Stop condition can be adapted based on autonomous selfobservation Anti-entropy as a complementary mechanism More source nodes from the initial rumor mongering: more efficient anti-entropy Ensures reliability even if membership lists not up-to-date

27 27 Large-scale systems and random interactions

28 Large-scale systems and random interactions Gossip-based dissemination good properties based on possibility of establishing random interactions Xerox medium-scale setting Each server knows all other servers The addition/deletion of a server is broadcasted to all servers by the maintenance team Lazy maintenance but full membership at all node Large-scale setting: impossible to maintain the full list of peers in the system at each node Still need the ability to pick nodes at random From the complete set of nodes Create and maintain a random overlay Each node should have only a local, small size view The view corresponds to the node s neighbors overlay IP network Logical links A Physical nodes B Logical nodes Physical links overlay network principle 28

29 29 The ideal random overlay The overlay is a directed graph V vertices (N nodes), E edges (links) Define c as the out-degree of a node n Number of edges from n ideal = Erdös-Rényi model: for each node n, create c vertices (n, m) with m selected uniformly at random in V \ {n} a random graph The Peer Sampling Service: maintain a random overlay in a large, decentralized distributed system

30 30 Use of the Peer Sampling Service Some node Outside world Gossip-based dissemination gossip-based interactions getpeer () returns a random peer from the entire network Peer Sampling Service gossip-based interactions

31 31 The Peer Sampling Service and its implementations

32 32 Goals of the PSS Maintain a small, dynamic, partial view of the network at each node The overlay between nodes should be as close to a random graph as possible Manages peers additions A new peer is eventually available in the view of some other peers A new peer is provided with its own view of random peers Manages peers deletions A deleted peer is eventually removed from the views of all other peers The Peer Sampling can itself be implemented using gossip

33 33 How to measure the quality of randomness? Compare with the Erdös-Rényi random graph Each node linked with c other nodes random picked at random Expected graph properties for the overlay Low diameter No clustering Balanced in-degree What do these properties mean?

34 How to measure the quality of randomness? 1. path length and diameter 34 Path length p(n,m) between two nodes n and m = smaller number of hops (consecutive links to follow) to reach m starting from n Directed graph: p(n,m) and p(m,n) can differ Diameter = maximal path length max(p(n,m)) Impact on dissemination x Large diameter: more exchanges for the last node to get the message (longest path) x Large average path length: more exchanges on average between the the creation at the source and the reception at any destination x Partition (diameter = + ): some nodes never get the message Objective: small diameter A random graph has both a small average path length and diameter, both in O(log N) hops

35 How to measure the quality of randomness? 2. clustering 35 Clustering: measure the presence of structures of aggregates Social network: high clustering Random graph: very low clustering Informally: are my neighbors neighbors themselves? Expressed as a ratio for each node: (directed) pairs of neighbors that are neighbors themselves = total possible (directed) pairs of neighbors Consider the average or the distribution of the ratio

36 How to measure the quality of randomness? 2. clustering D x1 B 36 x2 x2 A x2 H E G x1 x1 F x2 C x1 I Neighbors of A : B C D F G H 6 x 5 = 30 possible pairs clustering for A = 12 / 30 = 0.4

37 37 A social network has a high avg. clustering image by Brendan Griffen

38 How to measure the quality of randomness? 2. clustering 38 Impact on dissemination x High clustering: many redundant messages with rumor mongering x High clustering: less chance to choose a peer owning a new message with anti-entropy x High clustering: more risk of leading to large path length and to partitions if part of the system fails Low clustering: robustness to partitions, optimal spread Objective: minimal clustering (maximize randomness)

39 How to measure the quality of randomness? 3. in-degree distribution In-degree of a node n = how many nodes have n in their views (i.e. have links to n) Out-degree: by definition, fixed to the size of the view, c Random graph: Gaussian in-degree distribution around c Average in-degree is always c but distribution can vary between nodes 39 Impact on dissemination x Nodes with small in-degree: less chances to receive message in dissemination x Nodes with high in-degree: with rumor mongering, receive lots of replicates x In-degree imbalance: general load imbalance and impair convergence properties Objective: balanced distribution of in-degrees around c

40 40 PSS: basic operation Periodically picks a neighbor in the local view (selectpartner()) The information exchanged is a subset of the view itself selecttosend() to know what entries/links to send, selecttokeep() to decide what entries to keep from the union Active thread (peer P): while (true) { wait(gossip_period) Q = selectpartner() buf = selecttosend(local view) send buf to Q (wait) receive bufr from Q local view = selecttokeep() [ process local view ] } Passive thread (peer Q) while (true) { } receive bufr from any P buf = selecttosend(local view) send buf to P local view = selecttokeep() [ process local view ]

41 40 PSS: basic operation Periodically picks a neighbor in the local view (selectpartner()) The information exchanged is a subset of the view itself selecttosend() to know what entries/links to send, selecttokeep() to decide what entries to keep from the union Active thread (peer P): while (true) { wait(gossip_period) Q = selectpartner() buf = selecttosend(local view) send buf to Q (wait) receive bufr from Q local view = selecttokeep() [ process local view ] } Passive thread (peer Q) while (true) { } receive bufr from any P buf = selecttosend(local view) send buf to P local view = selecttokeep() [ process local view ] what is exchanged are links towards other nodes (view entries)

42 41 PSS: view entries and creation View composed of c entries IP:port (contact information for a peer) -- forming a link p q Each entry/link is associated with an age Entries are created with an age of 0 The protocol exchanges and copies view entries Each cycle increases the age of all entries in the view by 1 Creation of entries At each exchange, the 2 peers create entries with their identity and age 0 There is no other link creation During each cycle, each peer gets on average 1-2 new link(s) towards itself x Requires that the period of gossiping is the same for all peers, or peers with higher frequency may get higher in-degrees

43 42 selectpartner() The gossip partner is selected in the view itself RAND policy Select an entry uniformly at random TAIL policy Select the entry with the highest age Rationale: an entry will be tested to check if the peer is alive no later than c cycles after its creation

44 43 View exchange selecttosend() and selecttokeep() decide on which entries to send and which entries to keep from the union of the current view and the received entries Behavior controlled by two parameters H and S Exchange exch entries with H + S exch Typically, exch = c/2

45 44 View exchange: H (for Heal) Controls how many old entries (highest ages) should be discarded after each gossip exchange A higher value of H allows entries to stay in the system for a shorter time A dead peer is no longer creating entries to itself, and existing entries will die out faster H controls the ability to the system to quickly discard failed nodes from other nodes views x Both peers keep same entries that have lowest age Entry duplication In-degree of peers in these entries incremented (+1), and decremented (-1) in discarded entries: in-degree inbalance Creates clustering G age = 0 A H = exch = c / 2 = 1 entry to A created and sent to B B replies with entry to itself and newest entry D A combines, removes H=1 oldest entry (D) A increases ages G age = 1 age = 0 A H age = 2 age = 1 age = 0 age = 1 H B B D age = 1 D

46 45 View exchange: S (for Swap or Shuffle) H Controls the number of links that will be definitely swapped A swapped link is kept by the partner but not kept by the sender The age of entries is not relevant for swapping links x Links to failed peers may stay longer in the system The in-degree stays the same for all peers (since each peer creates one incoming link to itself per exchange) G age = 0 G A S = exch = c / 2 = 1 entry to A created and sent to B entry to H swapped from B to A A increases ages age = 0 A age = 3 age = 2 age = 1 H age = 0 age = 1 B B D age = 1 D age = 1

47 46 Wrapping it up Gossip-based conception framework for the Peer Sampling Pseudo-code of the algorithm provided in handout Based on simple table manipulations based on the values of H and S Implements the policies seen in previous slides Let s follow an example

48 On node P c = 8 ; exch = 4 S = 2 ; H = 1 ; TAIL On node Q 47 selectpartner() R L Z Q A M W E TAIL selects Q N L V B U F D S M W E A 1 L Q Z R 2 shuffle view selecttosend() M W E A 1 P 0 L Z R Q oldest H item to end of view M W E M W E P 0 tosend buffer of exch=4 entries exch-1 first entries, append self D S U N B F V L D S 3 4 U 5 Q 0 shuffle view, move H item to end of view D S 3 4 U 5 Q 0 tosend buffer of exch=4 entries exch-1 first entries, append self selecttosend()

49 On node P c = 8 ; exch = 4 S = 2 ; H = 1 ; TAIL On node Q 48 M W E A L Z R Q D S U Q D S U N B F V L M W E P append received items to view append received items to view selecttokeep() M W E A L Z R D S remove duplicates M W A L Z R D S U remove H=1 oldest item U 5 Q 0 Q 0 D S 3 4 U N B F V M W E remove H=1 oldest item P 0 selecttokeep() A L Z R D S U Q remove S=2 head items U N B F V U 5 M W E remove S=2 head items N B V M W E trim randomly to c=8 P 0 P 0 A 2 L Z R D S U increment ages Q 1

50 49 Examples of instances Blind: exch=c/2, H=0, S=0 Peers keep blindly a random set No aging mechanism Healer: exch=c, H=c, S=0 RAND partner selection Peers exchange their complete views On both sides, keep the c freshest entries out of the 2c entries Newscast protocol Swapper: exch=c/2, H=0, S=c/2 TAIL partner selection Exchange subset of views (c/2) Swap links between peers Cyclon protocol

51 50 Example 1: blind (the naive protocol)

52 Blind: example (the naive protocol) 51 B D G I A E H C F id B G E F

53 Blind: example (the naive protocol) 52 B D G I A E H C F id B G E F id D C I H A selectpeer() RAND policy

54 Blind: example (the naive protocol) 53 B D G I A E H C F id B G E F id D C I H A and E selecttosend H=0 S=0 peers chosen randomly

55 Blind: example (the naive protocol) 54 B D G I A E B C A E H C F id B G E F id D C I H A and E exchange

56 Blind: example (the naive protocol) 55 B D G I A E H C id B E F C id D I B A F random selection of 4 peers in the union of the view and received entries

57 56 Example I1: Healer (the NewsCast protocol)

58 Healer: example (the NewsCast protocol) 57 B D G I A E H C F id D H C B age

59 Healer: example (the NewsCast protocol) 58 B D G I A E H C F id age D 3 H 4 C 2 B 1 id age E 4 D 3 F 1 G 2 A selectpeer() RAND policy A selects C

60 Healer: example (the NewsCast protocol) 59 B D G I A E H C F id age D 3 H 4 B 1 C 0 E 4 D 3 F 1 G 2 selecttosend() exchange complete views + own fresh link (only shown for C)

61 Healer: example (the NewsCast protocol) 60 B D G I A E H C F id age C 0 F 1 B 1 G 2 selecttokeep() A keeps the freshest entries

62 Healer: example (the NewsCast protocol) 61 B D G I A E H C F id age C 0 F 1 B 1 G 2 id age A 0 B 1 F 1 G 2 selecttokeep() C keeps the freshest entries (details omitted)

63 Healer: example (the NewsCast protocol) 62 B D G I A E H C F id age C 1 F 2 B 2 G 3 id age A 0 B 1 F 1 G 2 Increase Ages increase the age of all entries in the active peer view

64 63 Example 1II: Swapper (the Cyclon protocol)

65 Swapper: example (the Cyclon protocol) 64 B D G I A E H C F id D H C B age

66 Swapper: example (the Cyclon protocol) 65 B D G I A E H C F id age D 3 H 4 C 2 B 1 A selectpeer() TAIL policy H has oldest age id age I 1 E 2 G 1 F 3

67 Swapper: example (the Cyclon protocol) 66 B D G I A E H C id age D 3 H 4 C 2 B 1 selecttosend() S=exch=c/2=2 H=0 A chooses one peer and sends its identity with age 0 H chooses randomly 2 entries -> shuffle links F id age I 1 E 2 G 1 F 3

68 Swapper: example (the Cyclon protocol) 67 B D G I D 3 A 0 A E H C I 1 H 0 F id D H C B Exchange id I E G F age age

69 Swapper: example (the Cyclon protocol) 68 B D G I A E H C F id age C 2 B 1 I 1 H 0 selecttokeep() replace sent links and partner with received links id age G 1 F 3 D 3 A 0

70 Swapper: example (the Cyclon protocol) 69 B D G I A E H C F id age C 3 B 2 I 2 H 1 Increase Ages increase the age of all entries in the active peer view id age G 1 F 3 D 3 A 0

71 70 Evaluation Experimental evaluation using simulations nodes View size c = 20 entries exch = 10 entries exchanged for each gossip exchange Metrics path lengths clustering in-degree distribution and convergence self-healing behavior and dynamic membership Compared to the random graph

72 Average path length 71 Swapper/Cyclon Healer/NewsCast Random/uniform

73 Clustering 72 Healer/NewsCast Swapper/Cyclon

74 In-degree distribution 73 Most concentrated in-degrees = Swapper/Cyclon Healer/Newscast is unbalanced Blind is the worst

75 Robustness / #partitions 74 Swapper/Cyclon Healer/NewsCast Random/uniform

76 Self-healing behavior 75 At some point, we kill half of the network Measure the % of dead links in nodes views and # of cycles to remove all dead links Depends mostly on the H parameter (how many age-based drops) Selection with rand or tail has a small impact

77 Self-healing behavior: real-world churn 76 Traces from the Gnutella file sharing system H=0 is bad, always even H=1 makes a difference

78 77 blind H=0, S=0 Swapper(Cyclon) H=0 S=c/2* healer(newscast) H=c/2* S=0 average path length small small (eq. to random) small clustering small small (eq. to random) high in-degree distribution very unbalanced balanced (eq. to random) unbalanced but balanced over time self-healing very bad bad good * : c/2 means half of the view

79 78 Gossip-based aggregation

80 79 Aggregation protocols Collective estimation of system-wide properties Each node holds an initial value Nodes exchange information though gossiping Eventually, all nodes are in possession of an aggregate of all local values Minimum value Maximal value Average value Variance Sum Product (these ones based on average) Large-Scale Distributed Systems E. Rivière

81 80 Assumptions Nodes contact each other at random Using the Peer Sampling Service Nodes update their local value based on its previous value and the received value from the other peer Large-Scale Distributed Systems E. Rivière

82 81 Computing min, max Consider the min / the max as the latest update and use gossip-based dissemination Use anti-entropy (maybe with rumor mongering) Nodes keep the minimal / maximal value after each exchange, and this value eventually replaces all higher / smaller values Large-Scale Distributed Systems E. Rivière

83 82 Computing the average Base operation for other computations Principle: P has a some value a[p] P selects Q, Q has value a[q] P and Q keeps (a[p] + a[q]) / Large-Scale Distributed Systems E. Rivière

84 83 Operation After each exchange The average over all nodes is not changed The variance is reduced If the graph is connected Each node converges towards the global average The variance converges to 0 The more you gossip, the closer to the real value How fast do we converge? Large-Scale Distributed Systems E. Rivière

85 84 A run of the protocol Large-Scale Distributed Systems E. Rivière

86 85 Computing other functions Min/Max: update(a,b) = min/max(a,b) Averages arithmetic avg: update(a,b) = (a+b)/2 geometric avg: update(a,b) = (a.b) ½ Others derived from averages Sum = average * N Product = (geometric mean) N Variance = average(x 2 ) - (average (x)) 2 But how do we know N??? Large-Scale Distributed Systems E. Rivière

87 86 Decentralized size estimation Large-Scale Distributed Systems E. Rivière

88 87 Motivation Estimating the size is often required for other protocols Setting the initial values of HTL and f for rumor mongering in the gossip-based dissemination protocol so as to effectively seed the network while avoiding duplicates For some aggregations System size can be estimated using gossipbased aggregation Large-Scale Distributed Systems E. Rivière

89 88 Estimating system size using gossip-based aggregation One node starts with 1, the others with 0 Compute the average using gossip-based aggregation Expected average: 1/N Let s consider that we can decide on the starting node for now Large-Scale Distributed Systems E. Rivière

90 Effect of massive failure ( nodes network) 89 x axis: time since the start of the epoch where 50% of the network is killed Large-Scale Distributed Systems E. Rivière

91 Effect of link failures ( nodes network) 90 Large-Scale Distributed Systems E. Rivière

92 Effect of message omissions ( nodes network) 91 Large-Scale Distributed Systems E. Rivière

93 92 Selecting the aggregation source Problem 1: how to select the node starting the aggregation? Problem 2: how to reduce the impact of aggregation being influenced by churn or early termination? Two birds with the same stone: run concurrent instances of the counting protocol each instance is led by a different node exchanged messages feature several ongoing aggregations aggregations have a limited lifespan (similar to HTL) control the number of ongoing aggregations: peers decide to start a new aggregation with a probability depending on previous size estimation Large-Scale Distributed Systems E. Rivière

94 Nodes failures and multiple instances ( nodes network) 93 Large-Scale Distributed Systems E. Rivière

95 Nodes failures and message omissions ( nodes network) 94 Large-Scale Distributed Systems E. Rivière

96 95 Varying size Large-Scale Distributed Systems E. Rivière

97 96 Intermediate conclusion Gossip-based protocols allow autonomous, self-organizing behaviors Randomness required for convergence/termination Role of the Peer Sampling Service Calculate global statistics and network size using gossip Tomorrow Constructing overlay using a gossip-based approach Application of all protocols covered to the problem of providing topic-based publish/subscribe

98 97 References Alan J. Demers, Daniel H. Greene, Carl Hauser, Wes Irish, John Larson, Scott Shenker, Howard E. Sturgis, Daniel C. Swinehart, Douglas B. Terry: Epidemic Algorithms for Replicated Database Maintenance. PODC 1987: 1-12 Norbert Tölgyesi, Márk Jelasity: Adaptive Peer Sampling with Newscast. Euro-Par 2009: Spyros Voulgaris, Daniela Gavidia, Maarten van Steen: CYCLON: Inexpensive Membership Management for Unstructured P2P Overlays. J. Network Syst. Manage. 13(2): (2005) Márk Jelasity, Spyros Voulgaris, Rachid Guerraoui, Anne-Marie Kermarrec, Maarten van Steen: Gossip-based peer sampling. ACM Trans. Comput. Syst. 25(3): 8 (2007) Márk Jelasity, Alberto Montresor, Özalp Babaoglu: Gossip-based aggregation in large dynamic networks. ACM Trans. Comput. Syst. 23(3): (2005)

99 98 Additional slides

100 99 Peer insertion How to insert a new peer p new? Create a new view for that peer Let other know about its existence Contact one existing peer p insert Perform a random walk from that peer c steps: p insert - p p i - - p c at each step, insert p new in the view of the peer p i get one peer from p i s view

Gossiping in Distributed Systems Foundations

Gossiping in Distributed Systems Foundations Gossiping in Distributed Systems Foundations Maarten van Steen 2 of 41 2 of 41 Introduction Observation: We continue to face hard scalability problems in distributed systems: Systems continue to grow in

More information

Gossip-based Networking for Internet-Scale Distributed Systems

Gossip-based Networking for Internet-Scale Distributed Systems Gossip-based Networking for Internet-Scale Distributed Systems Etienne Rivière 1 and Spyros Voulgaris 2 1 Computer Science Department, Université de Neuchâtel, Switzerland. 2 Vrije Universiteit Amsterdam,

More information

Fast Topology Management in Large Overlay Networks

Fast Topology Management in Large Overlay Networks Topology as a key abstraction Fast Topology Management in Large Overlay Networks Ozalp Babaoglu Márk Jelasity Alberto Montresor Dipartimento di Scienze dell Informazione Università di Bologna! Topology

More information

Cloud Computing: "network access to shared pool of configurable computing resources"

Cloud Computing: network access to shared pool of configurable computing resources Large-Scale Networks Gossip-based Protocols Consistency for Large-Scale Data Replication Uwe Roehm / Vincent Gramoli School of Information Technologies The University of Sydney Page 1 Cloud Computing:

More information

Cloudy Weather for P2P

Cloudy Weather for P2P Cloudy Weather for P2P with a Chance of Gossip Alberto Montresor Luca Abeni Best paper award in P2P'11 Presented by: amir@sics.se 1 Introduction 2 Cloud Computing vs. P2P Similarity: Providing the infinite

More information

Gossip Protocols. Márk Jelasity. Hungarian Academy of Sciences and University of Szeged, Hungary

Gossip Protocols. Márk Jelasity. Hungarian Academy of Sciences and University of Szeged, Hungary Gossip Protocols Márk Jelasity Hungarian Academy of Sciences and University of Szeged, Hungary Introduction Gossip-like phenomena are commonplace human gossip epidemics (virus spreading, etc) computer

More information

Anti-entropy works as follows: periodically, a server P randomly chooses a server Q and then the two exchange databases. Three modes of anti-entropy a

Anti-entropy works as follows: periodically, a server P randomly chooses a server Q and then the two exchange databases. Three modes of anti-entropy a Anti-entropy works as follows: periodically, a server P randomly chooses a server Q and then the two exchange databases. Three modes of anti-entropy are possible. In push mode, P pushes its database to

More information

Anti-entropy works as follows: periodically, a server P randomly chooses a server Q and then the two exchange databases. Three modes of anti-entropy a

Anti-entropy works as follows: periodically, a server P randomly chooses a server Q and then the two exchange databases. Three modes of anti-entropy a Anti-entropy works as follows: periodically, a server P randomly chooses a server Q and then the two exchange databases. Three modes of anti-entropy are possible. In push mode, P pushes its database to

More information

Constructing Overlay Networks through Gossip

Constructing Overlay Networks through Gossip Constructing Overlay Networks through Gossip Márk Jelasity Università di Bologna Project funded by the Future and Emerging Technologies arm of the IST Programme The Four Main Theses 1: Topology (network

More information

Gossip Protocols. Márk Jelasity. Hungarian Academy of Sciences and University of Szeged, Hungary

Gossip Protocols. Márk Jelasity. Hungarian Academy of Sciences and University of Szeged, Hungary Gossip Protocols Márk Jelasity Hungarian Academy of Sciences and University of Szeged, Hungary Introduction Gossip-like phenomena are commonplace human gossip epidemics (virus spreading, etc) computer

More information

Kleinberg s Small-World Networks. Normalization constant have to be calculated:

Kleinberg s Small-World Networks. Normalization constant have to be calculated: Kleinberg s Small-World Networks Normalization constant have to be calculated: r v u d v u P ), ( 1 ~ ) ( Z v u d v u P r 1 ), ( 1 ) ( u i r i u d Z ), ( 1 Example Choose among 3 friends (1-dimension)

More information

T-Man: Gossip-Based Overlay Topology Management

T-Man: Gossip-Based Overlay Topology Management T-Man: Gossip-Based Overlay Topology Management Márk Jelasity and Ozalp Babaoglu University of Bologna, Dipartimento di Scienze dell Informazione, Mura Anteo Zamboni 7, 4026 Bologna, Italy {jelasity, babaoglu}@cs.unibo.it

More information

T-Man: Gossip-based Overlay Topology Management

T-Man: Gossip-based Overlay Topology Management T-Man: Gossip-based Overlay Topology Management Márk Jelasity and Ozalp Babaoglu University of Bologna, Dipartimento di Scienze dell Informazione Mura Anteo Zamboni 7, 4026 Bologna, Italy jelasity,babaoglu@cs.unibo.it

More information

Last Class: Web Caching. Today: More on Consistency

Last Class: Web Caching. Today: More on Consistency Last Class: Web Caching Use web caching as an illustrative example Distribution protocols Invalidate versus updates Push versus Pull Cooperation between replicas Lecture 16, page 1 Today: More on Consistency

More information

Gozar: NAT friendly Peer Sampling with One Hop Distributed NAT Traversal

Gozar: NAT friendly Peer Sampling with One Hop Distributed NAT Traversal Gozar: NAT friendly Peer Sampling with One Hop Distributed NAT Traversal Amir H. Payberah Jim Dowling Seif Haridi {amir,jdowling,seif}@sics.se 1 Introduction 2 Gossip based Peer Sampling Service Gossip

More information

Towards a Decentralized Architecture for Optimization

Towards a Decentralized Architecture for Optimization Towards a Decentralized Architecture for Optimization Marco Biazzini, Mauro Brunato and Alberto Montresor University of Trento Dipartimento di Ingegneria e Scienza dell Informazione via Sommarive 1, 381

More information

Replication in Distributed Systems

Replication in Distributed Systems Replication in Distributed Systems Replication Basics Multiple copies of data kept in different nodes A set of replicas holding copies of a data Nodes can be physically very close or distributed all over

More information

A Middleware for Gossip Protocols

A Middleware for Gossip Protocols A Middleware for Gossip Protocols Michael Chow Cornell University mcc59@cornell.edu Robbert van Renesse Cornell University rvr@cs.cornell.edu Gossip protocols are known to be highly robust in scenarios

More information

An Analytical Model of Information Dissemination for a Gossip-based Protocol

An Analytical Model of Information Dissemination for a Gossip-based Protocol An Analytical Model of Information Dissemination for a Gossip-based Protocol Rena Bakhshi, Daniela Gavidia, Wan Fokkink, and Maarten van Steen Department of Computer Science, Vrije Universiteit Amsterdam,

More information

DIMPLE-II: Dynamic Membership Protocol for Epidemic Protocols 1

DIMPLE-II: Dynamic Membership Protocol for Epidemic Protocols 1 DIMPLE-II: Dynamic Membership Protocol for Epidemic Protocols 1 Jin Sun and Byung K. Choi Departments of Computer Science Michigan Technological University, Houghton, MI, USA 49931 {jinsun, bkchoi}@mtu.edu

More information

Consistency and Replication. Why replicate?

Consistency and Replication. Why replicate? Consistency and Replication Today: Consistency models Data-centric consistency models Client-centric consistency models Lecture 15, page 1 Why replicate? Data replication versus compute replication Data

More information

Computing Parable. The Archery Teacher. Courtesy: S. Keshav, U. Waterloo. Computer Science. Lecture 16, page 1

Computing Parable. The Archery Teacher. Courtesy: S. Keshav, U. Waterloo. Computer Science. Lecture 16, page 1 Computing Parable The Archery Teacher Courtesy: S. Keshav, U. Waterloo Lecture 16, page 1 Consistency and Replication Today: Consistency models Data-centric consistency models Client-centric consistency

More information

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University CS 555: DISTRIBUTED SYSTEMS [P2P SYSTEMS] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Byzantine failures vs malicious nodes

More information

Scalable overlay Networks

Scalable overlay Networks overlay Networks Dr. Samu Varjonen 1 Lectures MO 15.01. C122 Introduction. Exercises. Motivation. TH 18.01. DK117 Unstructured networks I MO 22.01. C122 Unstructured networks II TH 25.01. DK117 Bittorrent

More information

Chapter 2 ARCHITECTURES

Chapter 2 ARCHITECTURES DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 2 ARCHITECTURES Plan Software architecture Architectural styles System architectures Centralized

More information

Eventual Consistency. Eventual Consistency

Eventual Consistency. Eventual Consistency Eventual Consistency Many systems: one or few processes perform updates How frequently should these updates be made available to other read-only processes? Examples: DNS: single naming authority per domain

More information

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University CS 555: DISTRIBUTED SYSTEMS [MESSAGING SYSTEMS] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Distributed Servers Security risks

More information

Cloudy Weather for P2P, with a Chance of Gossip

Cloudy Weather for P2P, with a Chance of Gossip Cloudy Weather for P2P, with a Chance of Gossip Alberto Montresor University of Trento, Italy alberto.montresor@unitn.it Luca Abeni University of Trento, Italy luca.abeni@unitn.it Abstract Peer-to-peer

More information

Replica Placement. Replica Placement

Replica Placement. Replica Placement Replica Placement Model: We consider objects (and don t worry whether they contain just data or code, or both) Distinguish different processes: A process is capable of hosting a replica of an object or

More information

Peer-to-peer systems and overlay networks

Peer-to-peer systems and overlay networks Complex Adaptive Systems C.d.L. Informatica Università di Bologna Peer-to-peer systems and overlay networks Fabio Picconi Dipartimento di Scienze dell Informazione 1 Outline Introduction to P2P systems

More information

Gossiping in Distributed Systems

Gossiping in Distributed Systems Gossiping in Distributed Systems Anne-Marie Kermarrec INRIA, Rennes, France Anne-Marie.Kermarrec@irisa.fr Maarten van Steen Vrije Universiteit Amsterdam, Netherlands steen@cs.vu.nl ABSTRACT Gossip-based

More information

A Robust and Scalable Peer-to-Peer Gossiping Protocol

A Robust and Scalable Peer-to-Peer Gossiping Protocol A Robust and Scalable Peer-to-Peer Gossiping Protocol Spyros Voulgaris 1, Márk Jelasity 2, and Maarten van Steen 1 1 Department Computer Science, Faculty of Sciences, Vrije Universiteit Amsterdam, The

More information

References. Introduction. Publish/Subscribe paradigm. In a wireless sensor network, a node is often interested in some information, but

References. Introduction. Publish/Subscribe paradigm. In a wireless sensor network, a node is often interested in some information, but References Content-based Networking H. Karl and A. Willing. Protocols and Architectures t for Wireless Sensor Networks. John Wiley & Sons, 2005. (Chapter 12) P. Th. Eugster, P. A. Felber, R. Guerraoui,

More information

Lightweight Gossip-based Distribution Estimation

Lightweight Gossip-based Distribution Estimation Lightweight Gossip-based Distribution Estimation Amir H. Payberah, Hanna Kavalionak, Alberto Montresor, Jim Dowling, Seif Haridi Swedish Institute of Computer Science (SICS) University of Trento, Italy

More information

Chapter 4 Communication

Chapter 4 Communication DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 4 Communication Layered Protocols (1) Figure 4-1. Layers, interfaces, and protocols in the OSI

More information

The Peer Sampling Service: Experimental Evaluation of Unstructured Gossip-Based Implementations

The Peer Sampling Service: Experimental Evaluation of Unstructured Gossip-Based Implementations The Peer Sampling Service: Experimental Evaluation of Unstructured Gossip-Based Implementations Márk Jelasity 1, Rachid Guerraoui 2, Anne-Marie Kermarrec 3, and Maarten van Steen 4 1 University of Bologna,

More information

DS-Means: Distributed Data Stream Clustering

DS-Means: Distributed Data Stream Clustering DS-Means: Distributed Data Stream Clustering Alessio Guerrieri and Alberto Montresor University of Trento, Italy Abstract. This paper proposes DS-means, a novel algorithm for clustering distributed data

More information

Stochastic Models of Pull-Based Data Replication in P2P Systems

Stochastic Models of Pull-Based Data Replication in P2P Systems Stochastic Models of Pull-Based Data Replication in P2P Systems Xiaoyong Li and Dmitri Loguinov Presented by Zhongmei Yao Internet Research Lab Department of Computer Science and Engineering Texas A&M

More information

Federated Array of Bricks Y Saito et al HP Labs. CS 6464 Presented by Avinash Kulkarni

Federated Array of Bricks Y Saito et al HP Labs. CS 6464 Presented by Avinash Kulkarni Federated Array of Bricks Y Saito et al HP Labs CS 6464 Presented by Avinash Kulkarni Agenda Motivation Current Approaches FAB Design Protocols, Implementation, Optimizations Evaluation SSDs in enterprise

More information

Intuitive distributed algorithms. with F#

Intuitive distributed algorithms. with F# Intuitive distributed algorithms with F# Natallia Dzenisenka Alena Hall @nata_dzen @lenadroid A tour of a variety of intuitivedistributed algorithms used in practical distributed systems. and how to prototype

More information

Dynamo. Smruti R. Sarangi. Department of Computer Science Indian Institute of Technology New Delhi, India. Motivation System Architecture Evaluation

Dynamo. Smruti R. Sarangi. Department of Computer Science Indian Institute of Technology New Delhi, India. Motivation System Architecture Evaluation Dynamo Smruti R. Sarangi Department of Computer Science Indian Institute of Technology New Delhi, India Smruti R. Sarangi Leader Election 1/20 Outline Motivation 1 Motivation 2 3 Smruti R. Sarangi Leader

More information

An Approach to Massively Distributed Aggregate Computing on Peer-to-Peer Networks

An Approach to Massively Distributed Aggregate Computing on Peer-to-Peer Networks An Approach to Massively Distributed Aggregate Computing on Peer-to-Peer Networks Márk Jelasity University of Bologna, Italy, and RGAI, University of Szeged, Hungary jelasity@cs.vu.nl Wojtek Kowalczyk

More information

Introduction to Peer-to-Peer Systems

Introduction to Peer-to-Peer Systems Introduction Introduction to Peer-to-Peer Systems Peer-to-peer (PP) systems have become extremely popular and contribute to vast amounts of Internet traffic PP basic definition: A PP system is a distributed

More information

Module 7 - Replication

Module 7 - Replication Module 7 - Replication Replication Why replicate? Reliability Avoid single points of failure Performance Scalability in numbers and geographic area Why not replicate? Replication transparency Consistency

More information

Gossip and Epidemic Protocols

Gossip and Epidemic Protocols Gossip and Epidemic Protocols Alberto Montresor Abstract A gossip protocol is a distributed communication paradigm inspired by the gossip phenomenon that can be observed in social networks. Initially born

More information

Pulp: an Adaptive Gossip-Based Dissemination Protocol for Multi-Source Message Streams

Pulp: an Adaptive Gossip-Based Dissemination Protocol for Multi-Source Message Streams Noname manuscript No. (will be inserted by the editor) Pulp: an Adaptive Gossip-Based Dissemination Protocol for Multi-Source Message Streams Pascal Felber Anne-Marie Kermarrec Lorenzo Leonini Etienne

More information

Peer-to-Peer Systems. Network Science: Introduction. P2P History: P2P History: 1999 today

Peer-to-Peer Systems. Network Science: Introduction. P2P History: P2P History: 1999 today Network Science: Peer-to-Peer Systems Ozalp Babaoglu Dipartimento di Informatica Scienza e Ingegneria Università di Bologna www.cs.unibo.it/babaoglu/ Introduction Peer-to-peer (PP) systems have become

More information

Gossip Based Information Dissemination in a Distributed System

Gossip Based Information Dissemination in a Distributed System 5 Gossip Based Information Dissemination in a Distributed System 1 Navaraj Chettri, 2 Dhruba Ningombam 1, 2 Computer Science & Engineering, Sikkim Manipal Institute of Technology Gantok, India Abstract-

More information

Data-Centric Query in Sensor Networks

Data-Centric Query in Sensor Networks Data-Centric Query in Sensor Networks Jie Gao Computer Science Department Stony Brook University 10/27/05 Jie Gao, CSE590-fall05 1 Papers Chalermek Intanagonwiwat, Ramesh Govindan and Deborah Estrin, Directed

More information

Robust Aggregation Protocols for Large-Scale Overlay Networks

Robust Aggregation Protocols for Large-Scale Overlay Networks Robust Aggregation Protocols for Large-Scale Overlay Networks Alberto Montresor Dept. of Computer Science University of Bologna, Italy montreso@cs.unibo.it Márk Jelasity Dept. of Computer Science University

More information

Security for Structured Peer-to-peer Overlay Networks. Acknowledgement. Outline. By Miguel Castro et al. OSDI 02 Presented by Shiping Chen in IT818

Security for Structured Peer-to-peer Overlay Networks. Acknowledgement. Outline. By Miguel Castro et al. OSDI 02 Presented by Shiping Chen in IT818 Security for Structured Peer-to-peer Overlay Networks By Miguel Castro et al. OSDI 02 Presented by Shiping Chen in IT818 1 Acknowledgement Some of the following slides are borrowed from talks by Yun Mao

More information

A P2P REcommender system based on Gossip Overlays (PREGO)

A P2P REcommender system based on Gossip Overlays (PREGO) 10 th IEEE INTERNATIONAL CONFERENCE ON COMPUTER AND INFORMATION TECHNOLOGY Bradford,UK, 29 June - 1 July, 2010 Ranieri Baraglia, Patrizio Dazzi, Matteo Mordacchini ISTI,CNR, Pisa,Italy Laura Ricci University

More information

CS514: Intermediate Course in Computer Systems

CS514: Intermediate Course in Computer Systems Distributed Hash Tables (DHT) Overview and Issues Paul Francis CS514: Intermediate Course in Computer Systems Lecture 26: Nov 19, 2003 Distributed Hash Tables (DHT): Overview and Issues What is a Distributed

More information

Heterogeneous Gossip. Davide Frey Rachid Guerraoui Anne-Marie Kermarrec Boris Koldehofe Maxime Monod Martin Mogensen Vivien Quéma

Heterogeneous Gossip. Davide Frey Rachid Guerraoui Anne-Marie Kermarrec Boris Koldehofe Maxime Monod Martin Mogensen Vivien Quéma Heterogeneous Gossip Davide Frey Rachid Guerraoui Anne-Marie Kermarrec Boris Koldehofe Maxime Monod Martin Mogensen Vivien Quéma Outline Context Live Streaming Gossip Limitations Heterogeneous Gossip Protocol

More information

Horizontal or vertical scalability? Horizontal scaling is challenging. Today. Scaling Out Key-Value Storage

Horizontal or vertical scalability? Horizontal scaling is challenging. Today. Scaling Out Key-Value Storage Horizontal or vertical scalability? Scaling Out Key-Value Storage COS 418: Distributed Systems Lecture 8 Kyle Jamieson Vertical Scaling Horizontal Scaling [Selected content adapted from M. Freedman, B.

More information

G Bayou: A Weakly Connected Replicated Storage System. Robert Grimm New York University

G Bayou: A Weakly Connected Replicated Storage System. Robert Grimm New York University G22.3250-001 Bayou: A Weakly Connected Replicated Storage System Robert Grimm New York University Altogether Now: The Three Questions! What is the problem?! What is new or different?! What are the contributions

More information

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 1 Introduction Modified by: Dr. Ramzi Saifan Definition of a Distributed System (1) A distributed

More information

PUBLISHER Subscriber system is an event notification service

PUBLISHER Subscriber system is an event notification service A Bandwidth Aware Topology Generation Mechanism for Peer-to-Peer based Publish-Subscribe Systems Abhigyan, Joydeep Chandra, Niloy Ganguly Department of Computer Science & Engineering, Indian Institute

More information

WSN Routing Protocols

WSN Routing Protocols WSN Routing Protocols 1 Routing Challenges and Design Issues in WSNs 2 Overview The design of routing protocols in WSNs is influenced by many challenging factors. These factors must be overcome before

More information

Mobile and Sensor Systems. Lecture 3: Infrastructure, Ad-hoc and Delay Tolerant Mobile Networks Dr Cecilia Mascolo

Mobile and Sensor Systems. Lecture 3: Infrastructure, Ad-hoc and Delay Tolerant Mobile Networks Dr Cecilia Mascolo Mobile and Sensor Systems Lecture 3: Infrastructure, Ad-hoc and Delay Tolerant Mobile Networks Dr Cecilia Mascolo In this lecture In this lecture we will describe the difference in infrastructure and ad

More information

Peer-to-peer Sender Authentication for . Vivek Pathak and Liviu Iftode Rutgers University

Peer-to-peer Sender Authentication for  . Vivek Pathak and Liviu Iftode Rutgers University Peer-to-peer Sender Authentication for Email Vivek Pathak and Liviu Iftode Rutgers University Email Trustworthiness Sender can be spoofed Need for Sender Authentication Importance depends on sender Update

More information

Scaling Out Key-Value Storage

Scaling Out Key-Value Storage Scaling Out Key-Value Storage COS 418: Distributed Systems Logan Stafman [Adapted from K. Jamieson, M. Freedman, B. Karp] Horizontal or vertical scalability? Vertical Scaling Horizontal Scaling 2 Horizontal

More information

CYCLON: Inexpensive Membership Management for Unstructured P2P Overlays

CYCLON: Inexpensive Membership Management for Unstructured P2P Overlays Journal of Network and Systems Management, Vol. 13, No. 2, June 2005 ( C 2005) DOI: 10.1007/s10922-005-4441-x CYCLON: Inexpensive Membership Management for Unstructured P2P Overlays Spyros Voulgaris, 1,2

More information

Hybrid Dissemination: Adding Determinism to Probabilistic Multicasting in Large-Scale P2P Systems

Hybrid Dissemination: Adding Determinism to Probabilistic Multicasting in Large-Scale P2P Systems Hybrid Dissemination: Adding Determinism to Probabilistic Multicasting in Large-Scale P2P Systems Spyros Voulgaris and Maarten van Steen 2 Dept. of Computer Science, ETH Zurich, Switzerland, spyros@inf.ethz.ch

More information

Replication architecture

Replication architecture Replication INF 5040 autumn 2008 lecturer: Roman Vitenberg INF5040, Roman Vitenberg 1 Replication architecture Client Front end Replica Client Front end Server Replica INF5040, Roman Vitenberg 2 INF 5040

More information

Information Retrieval in Peer to Peer Systems. Sharif University of Technology. Fall Dr Hassan Abolhassani. Author: Seyyed Mohsen Jamali

Information Retrieval in Peer to Peer Systems. Sharif University of Technology. Fall Dr Hassan Abolhassani. Author: Seyyed Mohsen Jamali Information Retrieval in Peer to Peer Systems Sharif University of Technology Fall 2005 Dr Hassan Abolhassani Author: Seyyed Mohsen Jamali [Slide 2] Introduction Peer-to-Peer systems are application layer

More information

Consistency and Replication (part b)

Consistency and Replication (part b) Consistency and Replication (part b) EECS 591 Farnam Jahanian University of Michigan Tanenbaum Chapter 6.1-6.5 Eventual Consistency A very weak consistency model characterized by the lack of simultaneous

More information

Distributed Systems Principles and Paradigms. Chapter 07: Consistency & Replication

Distributed Systems Principles and Paradigms. Chapter 07: Consistency & Replication Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science Room R4.20, steen@cs.vu.nl Chapter 07: Consistency & Replication Version: November 19, 2009 2 / 42 Contents

More information

10. Replication. CSEP 545 Transaction Processing Philip A. Bernstein. Copyright 2003 Philip A. Bernstein. Outline

10. Replication. CSEP 545 Transaction Processing Philip A. Bernstein. Copyright 2003 Philip A. Bernstein. Outline 10. Replication CSEP 545 Transaction Processing Philip A. Bernstein Copyright 2003 Philip A. Bernstein 1 Outline 1. Introduction 2. Primary-Copy Replication 3. Multi-Master Replication 4. Other Approaches

More information

Ossification of the Internet

Ossification of the Internet Ossification of the Internet The Internet evolved as an experimental packet-switched network Today, many aspects appear to be set in stone - Witness difficulty in getting IP multicast deployed - Major

More information

Wireless Mesh Networks

Wireless Mesh Networks Wireless Mesh Networks COS 463: Wireless Networks Lecture 6 Kyle Jamieson [Parts adapted from I. F. Akyildiz, B. Karp] Wireless Mesh Networks Describes wireless networks in which each node can communicate

More information

Efficient Hybrid Multicast Routing Protocol for Ad-Hoc Wireless Networks

Efficient Hybrid Multicast Routing Protocol for Ad-Hoc Wireless Networks Efficient Hybrid Multicast Routing Protocol for Ad-Hoc Wireless Networks Jayanta Biswas and Mukti Barai and S. K. Nandy CAD Lab, Indian Institute of Science Bangalore, 56, India {jayanta@cadl, mbarai@cadl,

More information

Distributed Data Management Replication

Distributed Data Management Replication Felix Naumann F-2.03/F-2.04, Campus II Hasso Plattner Institut Distributing Data Motivation Scalability (Elasticity) If data volume, processing, or access exhausts one machine, you might want to spread

More information

Dynamo: Amazon s Highly Available Key-value Store. ID2210-VT13 Slides by Tallat M. Shafaat

Dynamo: Amazon s Highly Available Key-value Store. ID2210-VT13 Slides by Tallat M. Shafaat Dynamo: Amazon s Highly Available Key-value Store ID2210-VT13 Slides by Tallat M. Shafaat Dynamo An infrastructure to host services Reliability and fault-tolerance at massive scale Availability providing

More information

Scalable Information Dissemination for Pervasive Systems: Implementation and Evaluation

Scalable Information Dissemination for Pervasive Systems: Implementation and Evaluation Scalable Information Dissemination for Pervasive Systems: Implementation and Evaluation Graham Williamson, Graeme Stevenson, Steve Neely, Lorcan Coyle, Paddy Nixon Systems Research Group School of Computer

More information

A Survey of Peer-to-Peer Systems

A Survey of Peer-to-Peer Systems A Survey of Peer-to-Peer Systems Kostas Stefanidis Department of Computer Science, University of Ioannina, Greece kstef@cs.uoi.gr Abstract Peer-to-Peer systems have become, in a short period of time, one

More information

Making Gnutella-like P2P Systems Scalable

Making Gnutella-like P2P Systems Scalable Making Gnutella-like P2P Systems Scalable Y. Chawathe, S. Ratnasamy, L. Breslau, N. Lanham, S. Shenker Presented by: Herman Li Mar 2, 2005 Outline What are peer-to-peer (P2P) systems? Early P2P systems

More information

Distributed Systems (5DV147)

Distributed Systems (5DV147) Distributed Systems (5DV147) Replication and consistency Fall 2013 1 Replication 2 What is replication? Introduction Make different copies of data ensuring that all copies are identical Immutable data

More information

Important Lessons. Today's Lecture. Two Views of Distributed Systems

Important Lessons. Today's Lecture. Two Views of Distributed Systems Important Lessons Replication good for performance/ reliability Key challenge keeping replicas up-to-date Wide range of consistency models Will see more next lecture Range of correctness properties L-10

More information

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 2 ARCHITECTURES

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 2 ARCHITECTURES DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 2 ARCHITECTURES Architectural Styles Important styles of architecture for distributed systems Layered

More information

T-Man: Gossip-based Fast Overlay Topology Construction

T-Man: Gossip-based Fast Overlay Topology Construction T-Man: Gossip-based Fast Overlay Topology Construction Márk Jelasity Research Group on AI, University of Szeged and HAS, PO Box 652, H-6701 Szeged, Hungary Alberto Montresor University of Trento, Italy

More information

Gossip-Based Dissemination of Time

Gossip-Based Dissemination of Time Warsaw University Faculty of Mathematics, Informatics and Mechanics Vrije Universiteit Amsterdam Faculty of Sciences Konrad Iwanicki Student id. no.: 189391 (WU), 1493817 (VU) Gossip-Based Dissemination

More information

Consistency & Replication

Consistency & Replication Objectives Consistency & Replication Instructor: Dr. Tongping Liu To understand replication and related issues in distributed systems" To learn about how to keep multiple replicas consistent with each

More information

CS551 Ad-hoc Routing

CS551 Ad-hoc Routing CS551 Ad-hoc Routing Bill Cheng http://merlot.usc.edu/cs551-f12 1 Mobile Routing Alternatives Why not just assume a base station? good for many cases, but not some (military, disaster recovery, sensor

More information

Chapter 4: Distributed Systems: Replication and Consistency. Fall 2013 Jussi Kangasharju

Chapter 4: Distributed Systems: Replication and Consistency. Fall 2013 Jussi Kangasharju Chapter 4: Distributed Systems: Replication and Consistency Fall 2013 Jussi Kangasharju Chapter Outline n Replication n Consistency models n Distribution protocols n Consistency protocols 2 Data Replication

More information

CS 425 / ECE 428 Distributed Systems Fall 2015

CS 425 / ECE 428 Distributed Systems Fall 2015 CS 425 / ECE 428 Distributed Systems Fall 2015 Indranil Gupta (Indy) Sep 24, 2015 Lecture 10: Gossiping All slides IG Multicast Fault-tolerance and Scalability Needs: 1. Reliability (Atomicity) 100% receipt

More information

Large-Scale Data Stores and Probabilistic Protocols

Large-Scale Data Stores and Probabilistic Protocols Distributed Systems 600.437 Large-Scale Data Stores & Probabilistic Protocols Department of Computer Science The Johns Hopkins University 1 Large-Scale Data Stores and Probabilistic Protocols Lecture 11

More information

March 10, Distributed Hash-based Lookup. for Peer-to-Peer Systems. Sandeep Shelke Shrirang Shirodkar MTech I CSE

March 10, Distributed Hash-based Lookup. for Peer-to-Peer Systems. Sandeep Shelke Shrirang Shirodkar MTech I CSE for for March 10, 2006 Agenda for Peer-to-Peer Sytems Initial approaches to Their Limitations CAN - Applications of CAN Design Details Benefits for Distributed and a decentralized architecture No centralized

More information

Chapter 11 Chapter 6

Chapter 11 Chapter 6 Routing Protocols References H. Karl and A. Willing. Protocols and Architectures for Wireless Sensor Networks. John Wiley & Sons, 2005. (Chapter 11) K. Sohraby, D. Minoli, and T. Znati. Wireless Sensor

More information

References. Forwarding. Introduction...

References. Forwarding. Introduction... References Routing Protocols H. Karl and A. Willing. Protocols and Architectures for Wireless Sensor Networks. John Wiley & Sons, 005. (Chapter 11) K. Sohraby, D. Minoli, and T. Znati. Wireless Sensor

More information

Simple, Fast and Deterministic Gossip and Rumor Spreading. Main paper by: B. Haeupler, MIT Talk by: Alessandro Dovis, ETH

Simple, Fast and Deterministic Gossip and Rumor Spreading. Main paper by: B. Haeupler, MIT Talk by: Alessandro Dovis, ETH Simple, Fast and Deterministic Gossip and Rumor Spreading Main paper by: B. Haeupler, MIT Talk by: Alessandro Dovis, ETH Presentation Outline What is gossip? Applications Basic Algorithms Advanced Algorithms

More information

ECE 598HH: Special Topics in Wireless Networks and Mobile Systems

ECE 598HH: Special Topics in Wireless Networks and Mobile Systems ECE 598HH: Special Topics in Wireless Networks and Mobile Systems Lecture 21: Opportunistic Routing Haitham Hassanieh *These slides are courtesy of Dina Katabi 1 Lecture Outline Single Path Routing Opportunistic

More information

Epidemic-style Management of Semantic Overlays for Content-Based Searching

Epidemic-style Management of Semantic Overlays for Content-Based Searching Epidemic-style Management of Semantic Overlays for Content-Based Searching Spyros Voulgaris Vrije Universiteit Amsterdam spyros@cs.vu.nl Maarten van Steen Vrije Universiteit Amsterdam steen@cs.vu.nl Abstract

More information

Performance Evaluation of Mesh - Based Multicast Routing Protocols in MANET s

Performance Evaluation of Mesh - Based Multicast Routing Protocols in MANET s Performance Evaluation of Mesh - Based Multicast Routing Protocols in MANET s M. Nagaratna Assistant Professor Dept. of CSE JNTUH, Hyderabad, India V. Kamakshi Prasad Prof & Additional Cont. of. Examinations

More information

Consistency and Replication

Consistency and Replication Consistency and Replication Introduction Data-centric consistency Client-centric consistency Distribution protocols Consistency protocols 1 Goal: Reliability Performance Problem: Consistency Replication

More information

Information Brokerage

Information Brokerage Information Brokerage Sensing Networking Leonidas Guibas Stanford University Computation CS321 Information Brokerage Services in Dynamic Environments Information Brokerage Information providers (sources,

More information

Peer-to-Peer Systems and Distributed Hash Tables

Peer-to-Peer Systems and Distributed Hash Tables Peer-to-Peer Systems and Distributed Hash Tables CS 240: Computing Systems and Concurrency Lecture 8 Marco Canini Credits: Michael Freedman and Kyle Jamieson developed much of the original material. Selected

More information

Epidemic-Style Management of Semantic Overlays for Content-Based Searching

Epidemic-Style Management of Semantic Overlays for Content-Based Searching Epidemic-Style Management of Semantic Overlays for Content-Based Searching Spyros Voulgaris and Maarten van Steen Vrije Universiteit Amsterdam Department of Computer Science De Boelelaan 1081a, 1081HV

More information

Replication and Consistency. Fall 2010 Jussi Kangasharju

Replication and Consistency. Fall 2010 Jussi Kangasharju Replication and Consistency Fall 2010 Jussi Kangasharju Chapter Outline Replication Consistency models Distribution protocols Consistency protocols 2 Data Replication user B user C user A object object

More information

Chapter 11 - Data Replication Middleware

Chapter 11 - Data Replication Middleware Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 11 - Data Replication Middleware Motivation Replication: controlled

More information