Title: Internet-Scale Interoperability
1Internet-Scale Interoperability
- ICS 123
- Richard N. Taylor and Eric M. Dashofy
- UC Irvine
- http//www.isr.uci.edu/classes/ics123s02/
With the usual thanks to David Rosenblum
2Distributed Applications on the Internet
3ExampleAn Arbitrage Application
Yen Traderin Zurich
125.92 per
Arbitrageur inNew York
125.90 per
Yen Traderin London
4Technologies for Event-Based Interaction
5Some Statistics from Network Wizards (www.nw.com)
- January 2002
- 147,344,723 hosts in DNS
- 236 active level 1 domains (e.g., .edu)
- Top 10 .com (24,863,331), .net (18,853,655),
.edu (6,085,137), .jp, .uk, .us, .mil, .de, .ca,
.au - 2,867,326 level 2 domains (e.g., .uci.edu)
- 35,967,238 level 3 domains (e.g., .ics.uci.edu)
- This probably does not include all the hidden
hosts on the internet (I.e. those behind
firewalls or with a 10.x.x.x address) - These numbers are
- Almost 100 higher than the January 2000 numbers,
which are - nearly 75 higher than the January 1999 numbers
- more than 2 times the January 1998 numbers
- about 4.5 times the January 1997 numbers
6Eight Fallacies of Distributed Computing (Peter
Deutch)
- 1. The network is reliable
- 2. Latency is zero
- 3. Bandwidth is infinite
- 4. The network is secure
- 5. Topology doesn't change
- 6. There is one administrator
- 7. Transport cost is zero
- 8. The network is homogeneous
Discuss Why were people able to make such
assumptions with relatively little risk in the
past?
7Attributes of Internet Scale
8Some Warning Signs That a Technology Is Not
Scalable
9Event Observation and Notification Terminology
interested party_at_ New York
invoker
object of interest_at_ Zurich
120.92 per
notification
pattern ofevents
120.90 per
object of interest_at_ London
Event Service
invoker
10Event Observation and Notification Activities
1. Making a class of events observable
2. Expressing interest in a pattern of events
3. Occurrence of an event
4. Observing an event
5. Relating observations with each other
6. Notifying an interested party
7. Receiving a notification
8. Responding to a notification
11SIENA Scalable Internet Event Notification
Architectures
Advertise
Publish
Subscribe
Service Access Points
Notifications
12Goals of SIENAResearch Project
- SIENA provides an event observation and
notification service... - Scalability
- vast dimensions, scarce connectivity,
heterogeneity, openness, decentralization - Expressiveness
- flexible data modeling
- accurate selection
- aggregation of events
13Interface of SIENA
- SIENA
- publish(notification n)
- subscribe(URI subscriber, pattern p)
- unsubscribe(URI subscriber, pattern p)
- advertise(URI publisher, filter p)
- unadvertise(URI publisher, filter p)
- Interested party
- notify(notification n)
14Notification Model in SIENA
- A notification is a list of attributes
attribute(type,name,value)
15Filters
- A filter is a list of attribute filters
attribute filter(type,name,operator,value)
16Patterns
- A pattern is an algebraic expression whose basic
elements are filters
and then
17Some Design Choices
18Simulation Studies
19Distributed Servers
20Centralized Server Architecture
Server
21Hierarchical Architecture
22General Graph Architecture
23Sample Simulation Outputs
- Cost per Service total cost of all messages
involved in a single service request - Delay per Service time delay between departure
of first message and arrival of last one for a
single service request - Cost per Site total cost of all messages
handled by a site - Cost per Link total cost of all messages
passing through one link
Both averages and totals computed for metrics
24Hierarchical Architecture with Subscription
Forwarding
25Hierarchical Architecture with Advertisement
Forwarding
26Side Topic Delivery without Routing
- We have had large-scale information delivery
without routing for 100 years. Where? How?
27Side Topic Delivery without Routing
- We have had large-scale information delivery
without routing for 100 years. Where? How?
Rabbit Ears
28What About Event Delivery Over Wireless Networks?
- Routing and distribution greatly simplified
- No need for sophisticated routing algorithms
- No need for carefully-designed server topology
- But reliability may become greatly complicated
- Simple wireless handheld devices, such as pagers
- One-way communication
- No guarantee of delivery
- Need sophisticated broadcast algorithms
29Approximate State Synchronization
30Approximate State Synchronization
31Approximate State Synchronization
32Approximate State Synchronization
33Approximate State Synchronization
34Middleware vs.Network Infrastructure
TodaySiena over TCP/IP
FutureSiena alongside TCP/IP
SIENA Client
SIENA Client
SIENA
TCP/IP
TCP/IP
CBR
- Wasted explicit addressing in IP
- Redundant, unused routing information in DNS
- Implicitly-addressed, content-based routing (CBR)
- Hardware routers with CBR routing tables and
algorithms