Applications and Abstractions
A Cautionary Tale
David S. Rosenblum
Felicitous Computing Institute School of Computing National University of Singapore
Applications and Abstractions A Cautionary Tale David S. - - PowerPoint PPT Presentation
Applications and Abstractions A Cautionary Tale David S. Rosenblum Felicitous Computing Institute School of Computing National University of Singapore My Net Cred S IENA Internet-scale publish/subscribe system Collaboration with Alex
David S. Rosenblum
Felicitous Computing Institute School of Computing National University of Singapore
Collaboration with Alex Wolf & Antonio Carzaniga
PhD of Costin Raiciu, collaboration with Mark Handley
General-purpose abstractions for building applications can lose their generality and/or abstractness once realized at Internet scale.
There may be many approaches for realizing an abstraction, but each one employs its own assumptions, algorithms, protocols,
Those choices can strongly constrain the set of applications able to use the realization naturally, effectively and efficiently.
signals, interrupts events notifications, alerts, updates events
asynchronous dissemination of data
brokers provide decoupling, anonymity, matching, caching, authentication, and many other services
Internet scale
publish subscribe publish publish
symbol = “AAPL” and price > 700.00 symbol = “AAPL”, price = 701.23, shares = 5000, [etc.]
bus = (10 or 30 or 51 or 143 or 188) and nextnextstop = 16069 bus = 143, capacity = 0.9, stop = 16089, nextstop = 16079, nextnextstop=16069
bus arrivals, taxi dispatching, traffic incidents, etc.
Su Subscriptio iptions Application Notific Notifications ns ...
Selectivity Churn
Application
Frequency Uniqueness
... ...
Stock Quotes
... ...
Software Updates
... ...
Travel Alerts
... ...
News Alerts
... ...
MMOGs
... ...
Battlefield Awareness
... ...
Location Updates
... ...
Social Network Alerts
... ...
Context Awareness
... ... ... ...
...
... ... ...
subscribe at Internet scale
subscriptions with best-effort delivery
types, predefined topic hierarchies, etc.
s1
s1:a s1:1 s1:2 s1:3 s1:2 s1:6 s1:3 s1:1 s1:5
s1: “price < 700”
s2: “price < 600”
s1:1 s1:2 s1:6 s1:3 s1:1
s2
s1:3 s1:2 s1:5 s1:1 s2:5 s1:2 s2:8 s1:5 s2:b
s1:a
s1:a s2:2
s1:1 s2:5 s1:2 s1:6 s1:3 s1:1 s1:3 s1:2 s2:8
s1:a s2:2 s1:5 s2:b
n1: “price = 550”
n1
To justify decentralized implementation
To justify subscription forwarding
To justify subscription forwarding and merging
To justify content-based matching in brokers
To justify subscription merging
not Stock Quotes
not Software Updates
not location-dependent applications
not Software Updates
not Stock Quotes, Software Updates, MMOGs, etc.
Traffic alerts Social interaction alerts
☞ Other approaches induce similar limitations
abstraction
scale
with the peculiarities of the Internet
ROAR’s partitioning/replication tradeoff Alex and Antonio’s content-based networking (CBN)
I would like to have better formal logical and probabilistic models ... ... for exploration of and reasoning about ... ... the design space induced by a network abstraction like publish/subscribe.