WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
Prefix Forwarding for Publish/Subscribe
1. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 1 of 28 slides
Prefix Forwarding for Publish/Subscribe
DEBS 2007
Zbigniew Jerzak, Christof Fetzer
Dresden University of Technology
Friday 22nd June, 2007
{Zbigniew.Jerzak, Christof.Fetzer}@tu-dresden.de
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
2. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 2 of 28 slides
Event forwarding in SIENA [CRW01]
103
siena poset
102
time [ms]
101
100
0 5000 10000 15000 20000 25000
filter count
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
3. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 3 of 28 slides
Filter insertion in SIENA
103
siena poset
102
time [ms]
101
0
10
10-1
0 5000 10000 15000 20000 25000
filter count
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
4. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 4 of 28 slides
Background
Decoupled [EFGK03] communication...
...between publishers and subscribers via routers
...using filters (subscriptions)
...and events (notification)
...based on their content
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
5. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 4 of 28 slides
Background
Decoupled [EFGK03] communication...
...between publishers and subscribers via routers
...using filters (subscriptions)
...and events (notification)
...based on their content
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
6. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 4 of 28 slides
Background
Decoupled [EFGK03] communication...
...between publishers and subscribers via routers
...using filters (subscriptions)
{movie=”star wars” AND price<15}
...and events (notification)
...based on their content
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
7. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 4 of 28 slides
Background
Decoupled [EFGK03] communication...
...between publishers and subscribers via routers
...using filters (subscriptions)
...and events (notification)
{movie=”indiana jones” format=”DVD” price=30}
...based on their content
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
8. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 4 of 28 slides
Background
Decoupled [EFGK03] communication...
...between publishers and subscribers via routers
...using filters (subscriptions)
...and events (notification)
...based on their content
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
9. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 5 of 28 slides
Our Approach
Match event only once
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
10. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 6 of 28 slides
Our Contributions
New routing structure and algorithms
Routing Tree (matching)
Forwarding Prefix Tree (forwarding)
Content and forwarding decoupling
No false negatives
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
11. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 7 of 28 slides
Outline – Subscribing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
12. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 7 of 28 slides
Outline – Subscribing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
13. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 7 of 28 slides
Outline – Subscribing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
14. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 7 of 28 slides
Outline – Subscribing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
15. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 8 of 28 slides
Outline – Publishing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
16. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 8 of 28 slides
Outline – Publishing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
17. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 8 of 28 slides
Outline – Publishing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
18. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 8 of 28 slides
Outline – Publishing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
19. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 8 of 28 slides
Outline – Publishing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
20. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 8 of 28 slides
Outline – Publishing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
21. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 8 of 28 slides
Outline – Publishing
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
22. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 9 of 28 slides
Routing Tree
stores filters
used for event matching and forwarding
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
23. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 10 of 28 slides
Routing Tree – Filter Insertion
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
24. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 10 of 28 slides
Routing Tree – Filter Insertion
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
25. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 10 of 28 slides
Routing Tree – Filter Insertion
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
26. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 10 of 28 slides
Routing Tree – Filter Insertion
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
27. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 10 of 28 slides
Routing Tree – Filter Insertion
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
28. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 10 of 28 slides
Routing Tree – Filter Insertion
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
29. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 10 of 28 slides
Routing Tree – Filter Insertion
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
30. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 11 of 28 slides
Forwarding Prefix Tree
Represents the prefix
Assigned by the Edge Router
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
31. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 12 of 28 slides
Event Matching
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
32. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 12 of 28 slides
Event Matching
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
33. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 12 of 28 slides
Event Matching
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
34. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 12 of 28 slides
Event Matching
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
35. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 12 of 28 slides
Event Matching
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
36. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 12 of 28 slides
Event Matching
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
37. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 13 of 28 slides
Event Forwarding
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
38. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 13 of 28 slides
Event Forwarding
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
39. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 13 of 28 slides
Event Forwarding
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
40. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 13 of 28 slides
Event Forwarding
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
41. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 13 of 28 slides
Event Forwarding
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
42. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 14 of 28 slides
The Problem
Routing Trees are not deterministic
...but we could fix it
The whole system is non deterministic
...and we want 0 false-positives
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
43. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 14 of 28 slides
The Problem
Routing Trees are not deterministic
...but we could fix it
The whole system is non deterministic
...and we want 0 false-positives
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
44. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 15 of 28 slides
Updating TO
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
45. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 15 of 28 slides
Updating TO
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
46. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 15 of 28 slides
Updating TO
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
47. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 15 of 28 slides
Updating TO
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
48. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 15 of 28 slides
Updating TO
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
49. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 16 of 28 slides
Updating RT
Push update from the TO the RT
Hey, and what about decoupling?
TO maintains the content of the filters
More precisely - insertion order
Routers associate their view of network with received RT
TO serializes subscriptions
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
50. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 16 of 28 slides
Updating RT
Push update from the TO the RT
Hey, and what about decoupling?
TO maintains the content of the filters
More precisely - insertion order
Routers associate their view of network with received RT
TO serializes subscriptions
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
51. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 16 of 28 slides
Updating RT
Push update from the TO the RT
Hey, and what about decoupling?
TO maintains the content of the filters
More precisely - insertion order
Routers associate their view of network with received RT
TO serializes subscriptions
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
52. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 16 of 28 slides
Updating RT
Push update from the TO the RT
Hey, and what about decoupling?
TO maintains the content of the filters
More precisely - insertion order
Routers associate their view of network with received RT
TO serializes subscriptions
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
53. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 16 of 28 slides
Updating RT
Push update from the TO the RT
Hey, and what about decoupling?
TO maintains the content of the filters
More precisely - insertion order
Routers associate their view of network with received RT
TO serializes subscriptions
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
54. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 17 of 28 slides
Evaluation Environment
SIENA 1.5.4
Stochastic Simulation in Java (SSJ) library
AOL 500k User Session Collection
Google stats collected on 28th May 2007
Large Graph Layout (LGL)
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
55. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 17 of 28 slides
Evaluation Environment
SIENA 1.5.4
Stochastic Simulation in Java (SSJ) library
umontreal.iro.lecuyer.randvar.*
umontreal.iro.lecuyer.rng.*
AOL 500k User Session Collection
Google stats collected on 28th May 2007
Large Graph Layout (LGL)
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
56. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 17 of 28 slides
Evaluation Environment
SIENA 1.5.4
Stochastic Simulation in Java (SSJ) library
AOL 500k User Session Collection
∼20M web queries
∼650k users
3 months
Google stats collected on 28th May 2007
Large Graph Layout (LGL)
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
57. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 17 of 28 slides
Evaluation Environment
SIENA 1.5.4
Stochastic Simulation in Java (SSJ) library
AOL 500k User Session Collection
Google stats collected on 28th May 2007
Large Graph Layout (LGL)
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
58. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 17 of 28 slides
Evaluation Environment
SIENA 1.5.4
Stochastic Simulation in Java (SSJ) library
AOL 500k User Session Collection
Google stats collected on 28th May 2007
Large Graph Layout (LGL)
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
59. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 18 of 28 slides
Using AOL 500K – Subscriptions
AOL log line:
AnonID | Query | QueryTime | <ItemRank> | <ClickURL>
Subscriptions:
{q Op.SS Query}
{q Op.PF Query}
LocalSubscriber≡AnonID
Publications?
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
60. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 18 of 28 slides
Using AOL 500K – Subscriptions
AOL log line:
AnonID | Query | QueryTime | <ItemRank> | <ClickURL>
Subscriptions:
{q Op.SS Query}
{q Op.PF Query}
LocalSubscriber≡AnonID
Publications?
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
61. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 18 of 28 slides
Using AOL 500K – Subscriptions
AOL log line:
AnonID | Query | QueryTime | <ItemRank> | <ClickURL>
Subscriptions:
{q Op.SS Query}
{q Op.PF Query}
LocalSubscriber≡AnonID
Publications?
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
62. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 19 of 28 slides
Using AOL 500K – Publications
google results(sub)
P1 (sub) =
total indexed pages
1 f o r ( sub : a l l S u b s c r i p t i o n s ) {
2 i f ( P1 ( sub )>Random . n e x t D o u b l e ( ) ) {
3 p u b l i c a t i o n s t r i n g+=sub . a t t r i b u t e V a l u e ( ) ;
4 }
5 }
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
63. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 20 of 28 slides
Test Data
40k queries
1010 1010
hits for query hits for query
109 109
8 8
10 10
107 107
6
106
hits count
hits count
10
105 105
104 104
103 103
102 102
101 101
100 100
0 10000 20000 30000 40000 50000 60000 70000 80000 0 5000 1000015000200002500030000350004000045000
query # query #
Figure 1: 10 queries/user Figure 2: ≥ 4k queries/user
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
64. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 21 of 28 slides
Routing Tree
Figure 3: RT – Op.SS, 10 q/u
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
65. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 22 of 28 slides
Forwarding Prefix Tree (FPT)
140
FPT 10 queries (246 nodes)
FPT >=4k queries (175 nodes)
120
100
80
nodes #
60
40
20
0
1 2 3 4 5 6
level
Figure 4: FPT – Op.SS
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
66. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 23 of 28 slides
Event forwarding in SIENA vs Prefix Tree
103
prefix tree
siena poset
102
time [ms]
101
0
10
10-1
0 5000 10000 15000 20000 25000
filter count
Figure 5: Op.SS, 10 queries/user
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
67. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 24 of 28 slides
Filter storage in SIENA vs Prefix Tree
103
prefix tree
siena poset
102
time [ms]
101
0
10
10-1
0 5000 10000 15000 20000 25000
filter count
Figure 6: Op.SS, 10 queries/user
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
68. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 25 of 28 slides
Summary
Match only once per event
Prefix to decouple content and routing
Tree Optimizer to handle indeterminism
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
69. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 26 of 28 slides
Cool stuff to do
RT deltas
Forwarding efficiency
Autonomic configuration
FPT accuracy & false positives
Publish/Subscribe Testing System
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
70. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 27 of 28 slides
Thank You!
http://wwwse.inf.tu-dresden.de/zib/
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
71. Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 28 of 28 slides
References
Antonio Carzaniga, David S. Rosenblum, and Alexander L. Wolf.
Design and evaluation of a wide-area event notification service.
ACM Trans. Comput. Syst., 19(3):332–383, 2001.
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.
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer