Upload
zbigniew-jerzak
View
1.037
Download
1
Embed Size (px)
Citation preview
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 1 of 28 slides
Prefix Forwarding for Publish/SubscribeDEBS 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
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 2 of 28 slides
Event forwarding in SIENA [CRW01]
100
101
102
103
0 5000 10000 15000 20000 25000
tim
e [m
s]
filter count
siena poset
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 3 of 28 slides
Filter insertion in SIENA
10-1
100
101
102
103
0 5000 10000 15000 20000 25000
tim
e [m
s]
filter count
siena poset
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 4 of 28 slides
Background
I Decoupled [EFGK03] communication...I ...between publishers and subscribers via routersI ...using filters (subscriptions)I ...and events (notification)I ...based on their content
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 4 of 28 slides
Background
I Decoupled [EFGK03] communication...I ...between publishers and subscribers via routersI ...using filters (subscriptions)I ...and events (notification)I ...based on their content
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 4 of 28 slides
Background
I Decoupled [EFGK03] communication...I ...between publishers and subscribers via routersI ...using filters (subscriptions)
I {movie=”star wars” AND price<15}I ...and events (notification)I ...based on their content
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 4 of 28 slides
Background
I Decoupled [EFGK03] communication...I ...between publishers and subscribers via routersI ...using filters (subscriptions)I ...and events (notification)
I {movie=”indiana jones” format=”DVD” price=30}I ...based on their content
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 4 of 28 slides
Background
I Decoupled [EFGK03] communication...I ...between publishers and subscribers via routersI ...using filters (subscriptions)I ...and events (notification)I ...based on their content
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
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
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 6 of 28 slides
Our Contributions
I New routing structure and algorithmsI Routing Tree (matching)I Forwarding Prefix Tree (forwarding)
I Content and forwarding decouplingI No false negatives
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
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
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
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
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
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
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
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
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
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
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
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
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 9 of 28 slides
Routing Tree
I stores filtersI used for event matching and forwarding
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
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
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
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
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
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
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
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
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 11 of 28 slides
Forwarding Prefix Tree
I Represents the prefixI Assigned by the Edge Router
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
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
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
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
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
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
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
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
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
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
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
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
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 14 of 28 slides
The Problem
I Routing Trees are not deterministicI ...but we could fix it
I The whole system is non deterministicI ...and we want 0 false-positives
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 14 of 28 slides
The Problem
I Routing Trees are not deterministicI ...but we could fix it
I The whole system is non deterministicI ...and we want 0 false-positives
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
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
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
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
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
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
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 16 of 28 slides
Updating RT
I Push update from the TO the RTI Hey, and what about decoupling?
I TO maintains the content of the filtersI More precisely - insertion order
I Routers associate their view of network with received RT
TO serializes subscriptions
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 16 of 28 slides
Updating RT
I Push update from the TO the RTI Hey, and what about decoupling?
I TO maintains the content of the filtersI More precisely - insertion order
I Routers associate their view of network with received RT
TO serializes subscriptions
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 16 of 28 slides
Updating RT
I Push update from the TO the RTI Hey, and what about decoupling?
I TO maintains the content of the filtersI More precisely - insertion order
I Routers associate their view of network with received RT
TO serializes subscriptions
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 16 of 28 slides
Updating RT
I Push update from the TO the RTI Hey, and what about decoupling?
I TO maintains the content of the filtersI More precisely - insertion order
I Routers associate their view of network with received RT
TO serializes subscriptions
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 16 of 28 slides
Updating RT
I Push update from the TO the RTI Hey, and what about decoupling?
I TO maintains the content of the filtersI More precisely - insertion order
I Routers associate their view of network with received RT
TO serializes subscriptions
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 17 of 28 slides
Evaluation Environment
I SIENA 1.5.4I Stochastic Simulation in Java (SSJ) libraryI AOL 500k User Session CollectionI Google stats collected on 28th May 2007I Large Graph Layout (LGL)
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 17 of 28 slides
Evaluation Environment
I SIENA 1.5.4I Stochastic Simulation in Java (SSJ) library
I umontreal.iro.lecuyer.randvar.*I umontreal.iro.lecuyer.rng.*
I AOL 500k User Session CollectionI Google stats collected on 28th May 2007I Large Graph Layout (LGL)
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 17 of 28 slides
Evaluation Environment
I SIENA 1.5.4I Stochastic Simulation in Java (SSJ) libraryI AOL 500k User Session Collection
I ∼20M web queriesI ∼650k usersI 3 months
I Google stats collected on 28th May 2007I Large Graph Layout (LGL)
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 17 of 28 slides
Evaluation Environment
I SIENA 1.5.4I Stochastic Simulation in Java (SSJ) libraryI AOL 500k User Session CollectionI Google stats collected on 28th May 2007I Large Graph Layout (LGL)
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 17 of 28 slides
Evaluation Environment
I SIENA 1.5.4I Stochastic Simulation in Java (SSJ) libraryI AOL 500k User Session CollectionI Google stats collected on 28th May 2007I Large Graph Layout (LGL)
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 18 of 28 slides
Using AOL 500K – Subscriptions
I AOL log line:AnonID | Query | QueryTime | <ItemRank> | <ClickURL>
I Subscriptions:I {q Op.SS Query}I {q Op.PF Query}I LocalSubscriber≡AnonID
I Publications?
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 18 of 28 slides
Using AOL 500K – Subscriptions
I AOL log line:AnonID | Query | QueryTime | <ItemRank> | <ClickURL>
I Subscriptions:I {q Op.SS Query}I {q Op.PF Query}I LocalSubscriber≡AnonID
I Publications?
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 18 of 28 slides
Using AOL 500K – Subscriptions
I AOL log line:AnonID | Query | QueryTime | <ItemRank> | <ClickURL>
I Subscriptions:I {q Op.SS Query}I {q Op.PF Query}I LocalSubscriber≡AnonID
I Publications?
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 19 of 28 slides
Using AOL 500K – Publications
P1(sub) =google results(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 . nextDoub le ( ) ){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 eV a l u e ( ) ;4 }5 }
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 20 of 28 slides
Test Data
I 40k queries
100
101
102
103
104
105
106
107
108
109
1010
0 10000 20000 30000 40000 50000 60000 70000 80000
hit
s co
unt
query #
hits for query
Figure 1: 10 queries/user
100
101
102
103
104
105
106
107
108
109
1010
0 5000 10000 15000 20000 25000 30000 35000 40000 45000hit
s co
unt
query #
hits for query
Figure 2: ≥ 4k queries/user
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
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
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 22 of 28 slides
Forwarding Prefix Tree (FPT)
0
20
40
60
80
100
120
140
1 2 3 4 5 6
nodes
#
level
FPT 10 queries (246 nodes)FPT >=4k queries (175 nodes)
Figure 4: FPT – Op.SS
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 23 of 28 slides
Event forwarding in SIENA vs Prefix Tree
10-1
100
101
102
103
0 5000 10000 15000 20000 25000
tim
e [m
s]
filter count
prefix treesiena poset
Figure 5: Op.SS, 10 queries/userPrefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 24 of 28 slides
Filter storage in SIENA vs Prefix Tree
10-1
100
101
102
103
0 5000 10000 15000 20000 25000
tim
e [m
s]
filter count
prefix treesiena poset
Figure 6: Op.SS, 10 queries/userPrefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 25 of 28 slides
Summary
I Match only once per eventI Prefix to decouple content and routingI Tree Optimizer to handle indeterminism
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
Motivation Overview Routing Tree Forwarding Prefix Tree TO Evaluation Summary 26 of 28 slides
Cool stuff to do
I RT deltasI Forwarding efficiencyI Autonomic configurationI FPT accuracy & false positivesI Publish/Subscribe Testing System
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer
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
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-MarieKermarrec.The many faces of publish/subscribe.ACM Comput. Surv., 35(2):114–131, 2003.
Prefix Forwarding for Publish/Subscribe Zbigniew Jerzak, Christof Fetzer