This document is a slide presentation about content-based publish-subscribe systems. It discusses the evolution of networking from telephone systems to packet switching and then to content-based publish-subscribe. It describes key concepts of publish-subscribe like publishers, subscribers, events, and brokers. It also covers content-based matching and routing approaches and challenges like reusing matching results. Finally, it introduces Bloom filter-based routing techniques.
XSiena: The Content-Based Publish/Subscribe System
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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides
Challenges II
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
68. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides
Challenges II
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
69. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides
Challenges II
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
70. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides
Challenges II
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
71. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides
Challenges II
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
72. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides
Challenges II
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
73. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides
Challenges II
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
74. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides
Challenges II
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
75. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides
Challenges II
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
76. Introduction Matching and Routing Surviving Failure Summary 17 of 25 slides
Challenges II
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
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. 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. 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. 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. 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. 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. 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. 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. 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. 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. Introduction Matching and Routing Surviving Failure Summary 22 of 25 slides
Thank You!
XSiena: The Content-Based Publish/Subscribe System Zbigniew Jerzak
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. 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. 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