Introduction            Matching and Routing         Surviving Failure   Summary     1 of 25 slides




                  ...
Introduction            Matching and Routing         Surviving Failure   Summary     2 of 25 slides



Outline


       In...
Introduction            Matching and Routing         Surviving Failure       Summary        3 of 25 slides


Telephone Sys...
Introduction            Matching and Routing         Surviving Failure       Summary        3 of 25 slides


Telephone Sys...
Introduction            Matching and Routing         Surviving Failure     Summary             4 of 25 slides



Packet Sw...
Introduction            Matching and Routing         Surviving Failure     Summary             4 of 25 slides



Packet Sw...
Introduction            Matching and Routing         Surviving Failure   Summary     5 of 25 slides



Content-Based Publi...
Introduction            Matching and Routing         Surviving Failure   Summary     5 of 25 slides



Content-Based Publi...
Introduction            Matching and Routing         Surviving Failure   Summary     6 of 25 slides



Publish/Subscribe S...
Introduction            Matching and Routing         Surviving Failure   Summary     6 of 25 slides



Publish/Subscribe S...
Introduction            Matching and Routing         Surviving Failure   Summary     6 of 25 slides



Publish/Subscribe S...
Introduction            Matching and Routing         Surviving Failure   Summary     6 of 25 slides



Publish/Subscribe S...
Introduction            Matching and Routing         Surviving Failure   Summary     6 of 25 slides



Publish/Subscribe S...
Introduction            Matching and Routing         Surviving Failure   Summary     6 of 25 slides



Publish/Subscribe S...
Introduction              Matching and Routing               Surviving Failure   Summary     7 of 25 slides



Subscriptio...
Introduction              Matching and Routing               Surviving Failure   Summary     7 of 25 slides



Subscriptio...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     8 of 25 slides



Content-Based Match...
Introduction            Matching and Routing         Surviving Failure   Summary     9 of 25 slides



Matching and Routin...
Introduction            Matching and Routing         Surviving Failure   Summary     9 of 25 slides



Matching and Routin...
Introduction            Matching and Routing         Surviving Failure   Summary     9 of 25 slides



Matching and Routin...
Introduction            Matching and Routing         Surviving Failure   Summary    10 of 25 slides



Bloom Filter-Based ...
Introduction            Matching and Routing         Surviving Failure   Summary    10 of 25 slides



Bloom Filter-Based ...
Introduction            Matching and Routing         Surviving Failure   Summary    10 of 25 slides



Bloom Filter-Based ...
Introduction            Matching and Routing         Surviving Failure   Summary    10 of 25 slides



Bloom Filter-Based ...
Introduction            Matching and Routing         Surviving Failure   Summary    10 of 25 slides



Bloom Filter-Based ...
Introduction            Matching and Routing         Surviving Failure   Summary    10 of 25 slides



Bloom Filter-Based ...
Introduction            Matching and Routing         Surviving Failure   Summary    10 of 25 slides



Bloom Filter-Based ...
Introduction            Matching and Routing         Surviving Failure   Summary    10 of 25 slides



Bloom Filter-Based ...
Introduction            Matching and Routing         Surviving Failure   Summary    10 of 25 slides



Bloom Filter-Based ...
Introduction            Matching and Routing                   Surviving Failure       Summary        11 of 25 slides



M...
Introduction            Matching and Routing                   Surviving Failure       Summary        11 of 25 slides



M...
Introduction                       Matching and Routing            Surviving Failure           Summary                    ...
Introduction            Matching and Routing         Surviving Failure   Summary    13 of 25 slides



The Need for the So...
Introduction            Matching and Routing         Surviving Failure   Summary    14 of 25 slides



Goal of the Soft St...
Introduction            Matching and Routing         Surviving Failure   Summary    14 of 25 slides



Goal of the Soft St...
Introduction            Matching and Routing         Surviving Failure   Summary    14 of 25 slides



Goal of the Soft St...
Introduction            Matching and Routing         Surviving Failure   Summary    15 of 25 slides


Our Approach
based o...
Introduction            Matching and Routing         Surviving Failure   Summary    15 of 25 slides


Our Approach
based o...
Introduction            Matching and Routing         Surviving Failure   Summary    15 of 25 slides


Our Approach
based o...
Introduction            Matching and Routing         Surviving Failure   Summary    15 of 25 slides


Our Approach
based o...
Introduction            Matching and Routing         Surviving Failure   Summary    15 of 25 slides


Our Approach
based o...
Introduction            Matching and Routing         Surviving Failure   Summary    15 of 25 slides


Our Approach
based o...
Introduction            Matching and Routing         Surviving Failure   Summary    15 of 25 slides


Our Approach
based o...
Introduction            Matching and Routing         Surviving Failure   Summary    15 of 25 slides


Our Approach
based o...
Introduction            Matching and Routing         Surviving Failure   Summary    15 of 25 slides


Our Approach
based o...
Introduction             Matching and Routing         Surviving Failure       Summary          16 of 25 slides



Challeng...
Introduction             Matching and Routing           Surviving Failure         Summary          16 of 25 slides



Chal...
Introduction            Matching and Routing         Surviving Failure   Summary    17 of 25 slides



Challenges II




X...
Introduction            Matching and Routing         Surviving Failure   Summary    17 of 25 slides



Challenges II




X...
Introduction            Matching and Routing         Surviving Failure   Summary    17 of 25 slides



Challenges II




X...
Introduction            Matching and Routing         Surviving Failure   Summary    17 of 25 slides



Challenges II




X...
Introduction            Matching and Routing         Surviving Failure   Summary    17 of 25 slides



Challenges II




X...
Introduction            Matching and Routing         Surviving Failure   Summary    17 of 25 slides



Challenges II




X...
Introduction            Matching and Routing         Surviving Failure   Summary    17 of 25 slides



Challenges II




X...
Introduction            Matching and Routing         Surviving Failure   Summary    17 of 25 slides



Challenges II




X...
Introduction            Matching and Routing         Surviving Failure   Summary    17 of 25 slides



Challenges II




X...
Introduction            Matching and Routing         Surviving Failure   Summary    17 of 25 slides



Challenges II




X...
Introduction            Matching and Routing         Surviving Failure   Summary    18 of 25 slides



Solution



       ...
Introduction            Matching and Routing         Surviving Failure   Summary    18 of 25 slides



Solution



       ...
Introduction            Matching and Routing         Surviving Failure   Summary    18 of 25 slides



Solution



       ...
Introduction            Matching and Routing         Surviving Failure   Summary    19 of 25 slides



Extending the Lease...
Introduction            Matching and Routing         Surviving Failure   Summary    19 of 25 slides



Extending the Lease...
Introduction            Matching and Routing         Surviving Failure   Summary    19 of 25 slides



Extending the Lease...
Introduction            Matching and Routing         Surviving Failure   Summary    19 of 25 slides



Extending the Lease...
Introduction            Matching and Routing         Surviving Failure   Summary    19 of 25 slides



Extending the Lease...
Introduction                                            Matching and Routing        Surviving Failure               Summar...
Introduction            Matching and Routing         Surviving Failure   Summary    21 of 25 slides



Summary




       ...
Introduction            Matching and Routing         Surviving Failure   Summary    22 of 25 slides




                  ...
Introduction              Matching and Routing                Surviving Failure           Summary           23 of 25 slide...
Introduction              Matching and Routing               Surviving Failure             Summary                  24 of ...
Introduction              Matching and Routing               Surviving Failure             Summary                25 of 25...
Upcoming SlideShare
Loading in...5
×

XSiena: The Content-Based Publish/Subscribe System

2,055

Published on

This thesis shows the design and implementation of routing algorithms based on the end-to-end
systems design principle. Proposed routing algorithms obsolete the need to
perform content-based routing within the publish/subscribe network, pushing
this task to the edge of the system. Moreover, this thesis presents a fail-aware
approach towards construction of the content-based publish/subscribe system
along with its application to the creation of the soft state publish/subscribe
system. A soft state publish/subscribe system exposes the self stabilizing
behavior as far as transient timing, link and node failures are concerned. The
result of this thesis is a family of the XSiena content-based publish/subscribe
systems, implementing the proposed concepts and algorithms. The family
of the XSiena content-based publish/subscribe systems has been a subject to
rigorous evaluation, which confirms the claims made in this thesis.

Published in: Technology, News & Politics
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,055
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
76
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

XSiena: The Content-Based Publish/Subscribe System

  1. 1. Introduction Matching and Routing Surviving Failure Summary 1 of 25 slides XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak Technisches Universit¨t Dresden, Fakult¨t Informatik a a Wednesday 30th September, 2009 XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  2. 2. Introduction Matching and Routing Surviving Failure Summary 2 of 25 slides Outline Introduction Evolution of Networking Introduction to Publish/Subscribe Systems Matching and Routing Selection and Delivery of Events Surviving Failure Soft State Content-based Publish/Subscribe Systems Summary Contributions of this Thesis and Dissemination XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  3. 3. Introduction Matching and Routing Surviving Failure Summary 3 of 25 slides Telephone System based on: [Jac06] Almon B. Strowger (1891) Implications: no transmission possible prior to path set up path setup costs dominate transmission costs high probability of failure Figure 1: The Strowger Switch – source: US patent 447918 XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  4. 4. Introduction Matching and Routing Surviving Failure Summary 3 of 25 slides Telephone System based on: [Jac06] Almon B. Strowger (1891) Implications: no transmission possible prior to path set up path setup costs dominate transmission costs high probability of failure Figure 1: The Strowger Switch – source: US patent 447918 XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  5. 5. Introduction Matching and Routing Surviving Failure Summary 4 of 25 slides Packet Switching The ideas of packet and switching [Bar64] TCP/IP [CK74] Implications: no support for the N-to-M communication data has a location not a Figure 2: Donald Davies (left) and Paul Baran (right) – source: Making The content Modern World: The Early Internet XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  6. 6. Introduction Matching and Routing Surviving Failure Summary 4 of 25 slides Packet Switching The ideas of packet and switching [Bar64] TCP/IP [CK74] Implications: no support for the N-to-M communication data has a location not a Figure 2: Donald Davies (left) and Paul Baran (right) – source: Making The content Modern World: The Early Internet XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  7. 7. Introduction Matching and Routing Surviving Failure Summary 5 of 25 slides Content-Based Publish/Subscribe [RW97] No explicit addressing (data is the address) Decoupling: space, time and synchronization [EFGK03] Implications: No duplication of data flows Dynamism and agility XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  8. 8. Introduction Matching and Routing Surviving Failure Summary 5 of 25 slides Content-Based Publish/Subscribe [RW97] No explicit addressing (data is the address) Decoupling: space, time and synchronization [EFGK03] Implications: No duplication of data flows Dynamism and agility XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  9. 9. Introduction Matching and Routing Surviving Failure Summary 6 of 25 slides Publish/Subscribe Systems Instantiation of the content-based networking Concepts: Publishers: produce data Subscribers: register for data Events: data Brokers: network XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  10. 10. Introduction Matching and Routing Surviving Failure Summary 6 of 25 slides Publish/Subscribe Systems Instantiation of the content-based networking Concepts: Publishers: produce data Subscribers: register for data Events: data Brokers: network XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  11. 11. Introduction Matching and Routing Surviving Failure Summary 6 of 25 slides Publish/Subscribe Systems Instantiation of the content-based networking Concepts: Publishers: produce data Subscribers: register for data Events: data Brokers: network XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  12. 12. Introduction Matching and Routing Surviving Failure Summary 6 of 25 slides Publish/Subscribe Systems Instantiation of the content-based networking Concepts: Publishers: produce data Subscribers: register for data Events: data Brokers: network XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  13. 13. Introduction Matching and Routing Surviving Failure Summary 6 of 25 slides Publish/Subscribe Systems Instantiation of the content-based networking Concepts: Publishers: produce data Subscribers: register for data Events: data Brokers: network XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  14. 14. Introduction Matching and Routing Surviving Failure Summary 6 of 25 slides Publish/Subscribe Systems Instantiation of the content-based networking Concepts: Publishers: produce data Subscribers: register for data Events: data Brokers: network XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  15. 15. Introduction Matching and Routing Surviving Failure Summary 7 of 25 slides Subscriptions and Events Event: a set of values ani = avi     temp = 20 ; press = 1025   an0 av0 an1 av1 Subscription: a conjunction of predicates pi () temp > 30 AND press < 900 p0 () p1 () XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  16. 16. Introduction Matching and Routing Surviving Failure Summary 7 of 25 slides Subscriptions and Events Event: a set of values ani = avi     temp = 20 ; press = 1025   an0 av0 an1 av1 Subscription: a conjunction of predicates pi () temp > 30 AND press < 900 p0 () p1 () XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  17. 17. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  18. 18. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  19. 19. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  20. 20. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  21. 21. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  22. 22. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  23. 23. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  24. 24. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  25. 25. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  26. 26. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  27. 27. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  28. 28. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  29. 29. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  30. 30. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  31. 31. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  32. 32. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  33. 33. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  34. 34. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  35. 35. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  36. 36. Introduction Matching and Routing Surviving Failure Summary 8 of 25 slides Content-Based Matching and Routing Two main routing schemes: subscription-based advertisement-based XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  37. 37. Introduction Matching and Routing Surviving Failure Summary 9 of 25 slides Matching and Routing Issues Problem: evaluate every subscription/advertisement with every event at every broker Solution: reuse matching results [JF07, JF08] Only one content-based match per event 1. Disseminate subscriptions 2. Match events against subscriptions in the 1st broker 3. Piggyback (and reuse) match results on the event XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  38. 38. Introduction Matching and Routing Surviving Failure Summary 9 of 25 slides Matching and Routing Issues Problem: evaluate every subscription/advertisement with every event at every broker Solution: reuse matching results [JF07, JF08] Only one content-based match per event 1. Disseminate subscriptions 2. Match events against subscriptions in the 1st broker 3. Piggyback (and reuse) match results on the event XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  39. 39. Introduction Matching and Routing Surviving Failure Summary 9 of 25 slides Matching and Routing Issues Problem: evaluate every subscription/advertisement with every event at every broker Solution: reuse matching results [JF07, JF08] Only one content-based match per event 1. Disseminate subscriptions 2. Match events against subscriptions in the 1st broker 3. Piggyback (and reuse) match results on the event XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  40. 40. Introduction Matching and Routing Surviving Failure Summary 10 of 25 slides Bloom Filter-Based Routing 1. Subscription routing 2. Event publication 3. Content-based matching 4. Match results encoding 5. Event forwarding 6. Encoding-based matching 7. Delivery XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  41. 41. Introduction Matching and Routing Surviving Failure Summary 10 of 25 slides Bloom Filter-Based Routing 1. Subscription routing 2. Event publication 3. Content-based matching 4. Match results encoding 5. Event forwarding 6. Encoding-based matching 7. Delivery XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  42. 42. Introduction Matching and Routing Surviving Failure Summary 10 of 25 slides Bloom Filter-Based Routing 1. Subscription routing 2. Event publication 3. Content-based matching 4. Match results encoding 5. Event forwarding 6. Encoding-based matching 7. Delivery XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  43. 43. Introduction Matching and Routing Surviving Failure Summary 10 of 25 slides Bloom Filter-Based Routing 1. Subscription routing 2. Event publication 3. Content-based matching 4. Match results encoding 5. Event forwarding 6. Encoding-based matching 7. Delivery XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  44. 44. Introduction Matching and Routing Surviving Failure Summary 10 of 25 slides Bloom Filter-Based Routing 1. Subscription routing 2. Event publication 3. Content-based matching 4. Match results encoding 5. Event forwarding 6. Encoding-based matching 7. Delivery XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  45. 45. Introduction Matching and Routing Surviving Failure Summary 10 of 25 slides Bloom Filter-Based Routing 1. Subscription routing 2. Event publication 3. Content-based matching 4. Match results encoding 5. Event forwarding 6. Encoding-based matching 7. Delivery XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  46. 46. Introduction Matching and Routing Surviving Failure Summary 10 of 25 slides Bloom Filter-Based Routing 1. Subscription routing 2. Event publication 3. Content-based matching 4. Match results encoding 5. Event forwarding 6. Encoding-based matching 7. Delivery XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  47. 47. Introduction Matching and Routing Surviving Failure Summary 10 of 25 slides Bloom Filter-Based Routing 1. Subscription routing 2. Event publication 3. Content-based matching 4. Match results encoding 5. Event forwarding 6. Encoding-based matching 7. Delivery XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  48. 48. Introduction Matching and Routing Surviving Failure Summary 10 of 25 slides Bloom Filter-Based Routing 1. Subscription routing 2. Event publication 3. Content-based matching 4. Match results encoding 5. Event forwarding 6. Encoding-based matching 7. Delivery XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  49. 49. Introduction Matching and Routing Surviving Failure Summary 11 of 25 slides Matching with Bloom Filters [Blo70] Two phase approach: 1. Encode matching result for every predicate: ∀{ani ,avj }∈e,pk ∈S : pk ({ani , avj }) = 1 ⇒ bf e ← h(pk ) 2. Check if matching predicates form a subscription ∀pk ∈bf e ,si inS : si = {pk } ⇒ select si XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  50. 50. Introduction Matching and Routing Surviving Failure Summary 11 of 25 slides Matching with Bloom Filters [Blo70] Two phase approach: 1. Encode matching result for every predicate: ∀{ani ,avj }∈e,pk ∈S : pk ({ani , avj }) = 1 ⇒ bf e ← h(pk ) 2. Check if matching predicates form a subscription ∀pk ∈bf e ,si inS : si = {pk } ⇒ select si XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  51. 51. Introduction Matching and Routing Surviving Failure Summary 12 of 25 slides Result 1200 450 match speed (counting) match speed (sbstree) avg bits / event (counting) 1000 avg bits / event (sbstree) 440 800 match time [ms] avg bits / event 430 600 420 400 410 200 0 400 2 4 6 8 10 12 14 16 18 20 number of filters (1000s) Figure 3: Matching does not depend on the number of filters XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  52. 52. Introduction Matching and Routing Surviving Failure Summary 13 of 25 slides The Need for the Soft State Problem: transient failures in a distributed system Solution: soft state can be lost without permanent disruption of system features [Cla88] broker crash =⇒ loss only of the state owned by it XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  53. 53. Introduction Matching and Routing Surviving Failure Summary 14 of 25 slides Goal of the Soft State [JF09] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  54. 54. Introduction Matching and Routing Surviving Failure Summary 14 of 25 slides Goal of the Soft State [JF09] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  55. 55. Introduction Matching and Routing Surviving Failure Summary 14 of 25 slides Goal of the Soft State [JF09] Problem: existing approaches are not realistic Solution: use a practical system model [CF99]: realistic assumptions about the type and frequency of failures implementation in a real, distributed environment (PlanetLab) XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  56. 56. Introduction Matching and Routing Surviving Failure Summary 15 of 25 slides Our Approach based on: [MJH+ 05] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  57. 57. Introduction Matching and Routing Surviving Failure Summary 15 of 25 slides Our Approach based on: [MJH+ 05] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  58. 58. Introduction Matching and Routing Surviving Failure Summary 15 of 25 slides Our Approach based on: [MJH+ 05] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  59. 59. Introduction Matching and Routing Surviving Failure Summary 15 of 25 slides Our Approach based on: [MJH+ 05] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  60. 60. Introduction Matching and Routing Surviving Failure Summary 15 of 25 slides Our Approach based on: [MJH+ 05] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  61. 61. Introduction Matching and Routing Surviving Failure Summary 15 of 25 slides Our Approach based on: [MJH+ 05] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  62. 62. Introduction Matching and Routing Surviving Failure Summary 15 of 25 slides Our Approach based on: [MJH+ 05] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  63. 63. Introduction Matching and Routing Surviving Failure Summary 15 of 25 slides Our Approach based on: [MJH+ 05] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  64. 64. Introduction Matching and Routing Surviving Failure Summary 15 of 25 slides Our Approach based on: [MJH+ 05] XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  65. 65. Introduction Matching and Routing Surviving Failure Summary 16 of 25 slides Challenges I LAN: inf.tu-dresden.de MAN: tu-dresden.de WAN: tu-dresden->tu-berlin 1 0.75 CDF 0.5 0.25 10-1 100 101 102 103 104 rtt [ms] Figure 4: Network latencies cannot be predicted, nor bounded! XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  66. 66. Introduction Matching and Routing Surviving Failure Summary 16 of 25 slides Challenges I Lab PC PlanetLab node 1 0.75 CDF 0.5 0.25 100 101 102 103 104 105 request processing time [µs] Figure 4: Request processing times cannot be predicted, nor bounded! XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  67. 67. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides Challenges II XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  68. 68. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides Challenges II XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  69. 69. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides Challenges II XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  70. 70. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides Challenges II XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  71. 71. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides Challenges II XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  72. 72. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides Challenges II XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  73. 73. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides Challenges II XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  74. 74. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides Challenges II XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  75. 75. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides Challenges II XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  76. 76. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides Challenges II XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  77. 77. Introduction Matching and Routing Surviving Failure Summary 18 of 25 slides Solution Use upper bound on message propagation delay to estimate the link uncertainty Link uncertainty: a measure of the link latency variation calculated using upper bound on propagation delay [JFF07] [ubmax − ubmin ]window Extend the advertisement/subscription validity using calculated link uncertainty XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  78. 78. Introduction Matching and Routing Surviving Failure Summary 18 of 25 slides Solution Use upper bound on message propagation delay to estimate the link uncertainty Link uncertainty: a measure of the link latency variation calculated using upper bound on propagation delay [JFF07] [ubmax − ubmin ]window Extend the advertisement/subscription validity using calculated link uncertainty XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  79. 79. Introduction Matching and Routing Surviving Failure Summary 18 of 25 slides Solution Use upper bound on message propagation delay to estimate the link uncertainty Link uncertainty: a measure of the link latency variation calculated using upper bound on propagation delay [JFF07] [ubmax − ubmin ]window Extend the advertisement/subscription validity using calculated link uncertainty XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  80. 80. Introduction Matching and Routing Surviving Failure Summary 19 of 25 slides Extending the Lease Time XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  81. 81. Introduction Matching and Routing Surviving Failure Summary 19 of 25 slides Extending the Lease Time XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  82. 82. Introduction Matching and Routing Surviving Failure Summary 19 of 25 slides Extending the Lease Time XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  83. 83. Introduction Matching and Routing Surviving Failure Summary 19 of 25 slides Extending the Lease Time XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  84. 84. Introduction Matching and Routing Surviving Failure Summary 19 of 25 slides Extending the Lease Time XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  85. 85. Introduction Matching and Routing Surviving Failure Summary 20 of 25 slides Result uoit.ca - ext hiit.fi - ext uoit.ca - noext hiit.fi - noext total time without advertisement [%] 100 80 60 40 20 0 1 10 100 time [s] Figure 5: Decreased total time without advertisement XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  86. 86. Introduction Matching and Routing Surviving Failure Summary 21 of 25 slides Summary Content-based matching in the application layer [JF07, JF08] Fail-aware soft state system [JFF07, JF09] Contributed to StreamMine [FBFJ] XSiena: http://wwwse.inf.tu-dresden.de/xsiena/ XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  87. 87. Introduction Matching and Routing Surviving Failure Summary 22 of 25 slides Thank You! XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  88. 88. Introduction Matching and Routing Surviving Failure Summary 23 of 25 slides References I Paul Baran. On distributed communications networks. IEEE Transactions on Communications Systems, 12(1):1–9, March 1964. Burton H. Bloom. Space/time trade-offs in hash coding with allowable errors. Communications of the ACM, 13(7):422–426, 1970. Flaviu Cristian and Christof Fetzer. The timed asynchronous distributed system model. IEEE Transactions on Parallel and Distributed Systems, 10(6):642–657, June 1999. Vinton G. Cerf and Robert E. Kahn. A protocol for packet network intercommunication. IEEE Transactions on Communications, 22(5):637–648, May 1974. D. Clark. The design philosophy of the DARPA internet protocols. In SIGCOMM ’88: Symposium proceedings on Communications architectures and protocols, pages 106–114, New York, NY, USA, 1988. ACM. Patrick Th. Eugster, Pascal A. Felber, Rachid Guerraoui, and Anne-Marie Kermarrec. The many faces of publish/subscribe. ACM Comput. Surv., 35(2):114–131, 2003. XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  89. 89. Introduction Matching and Routing Surviving Failure Summary 24 of 25 slides References II Christof Fetzer, Andrey Brito, Robert Fach, and Zbigniew Jerzak. To appear in: Handbook of Research on Advanced Distributed Event-Based Systems, Publish/Subscribe and Message Filtering Technologies, chapter StreamMine. IGI Global. Van Jacobson. A new way to look at networking. In Google Tech Talk, August 2006. Zbigniew Jerzak and Christof Fetzer. Prefix forwarding for publish/subscribe. In Hans-Arno Jacobsen, Gero M¨hl, and Michael A. Jaeger, editors, DEBS ’07: Proceedings of the 2007 u Inaugural International Conference on Distributed Event-Based Systems, volume 233 of ACM International Conference Proceeding Series, pages 238–249, Toronto, Ontario, Canada, June 2007. ACM. Zbigniew Jerzak and Christof Fetzer. Bloom filter based routing for content-based publish/subscribe. In Roberto Baldoni, editor, DEBS ’08: Proceedings of the second international conference on Distributed event-based systems, volume 332 of ACM International Conference Proceeding Series, pages 71–81, Rome, Italy, July 2008. ACM. Zbigniew Jerzak and Christof Fetzer. Soft state in publish/subscribe. In DEBS ’09: Proceedings of the third international conference on Distributed Event-Based Systems, Nashville, TN, USA, July 2009. ACM. XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  90. 90. Introduction Matching and Routing Surviving Failure Summary 25 of 25 slides References III Zbigniew Jerzak, Robert Fach, and Christof Fetzer. Fail-aware publish/subscribe. In NCA ’07: Proceedings of the Sixth IEEE International Symposium on Network Computing and Applications, pages 113–125, Cambridge, MA, USA, July 2007. IEEE Computer Society. Gero M¨hl, Michael A. Jaeger, Klaus Herrmann, Torben Weis, Andreas Ulbrich, and Ludger Fiege. u Self-stabilizing publish/subscribe systems: Algorithms and evaluation. In Euro-Par 2005 Parallel Processing, volume 3648/2005, pages 664–674. Springer Berlin / Heidelberg, 2005. David S. Rosenblum and Alexander L. Wolf. A design framework for internet-scale event observation and notification. In Mehdi Jazayeri and Helmut Schauer, editors, 6th European Software Engineering Conference Held Jointly with the 5th ACM SIGSOFT Symposium on Foundations of Software Engineering, volume 1301 of Lecture Notes in Computer Science, pages 344–360, Zurich, Switzerland, September 1997. ACM. XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×