Upload
brandi
View
14
Download
0
Embed Size (px)
DESCRIPTION
Internet-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. Distributed Applications on the Internet. Example: An Arbitrage Application. Yen Trader in Zurich. 125.92 per $. - PowerPoint PPT Presentation
Citation preview
ICS 123
Internet-Scale Interoperability
ICS 123Richard N. Taylor and Eric M.
Dashofy*UC Irvine
http://www.isr.uci.edu/classes/ics123s02/
* With the usual thanks to David Rosenblum
ICS 123
2
Topic 15Internet-ScaleInteroperability
Distributed Applications on the Internet
A natural paradigm:Asynchronous Event-Driven Interaction
A natural paradigm:Asynchronous Event-Driven Interaction
The Internet as a platform for buildingdistributed systems
Multinational corporate workflow
Worldwide software deployment
Monitoring of global financial markets
ICS 123
3
Topic 15Internet-ScaleInteroperability
Example:An Arbitrage Application
Yen Trader
in Zurich
Yen Traderin London
Arbitrageur in
New York
125.92 per $
125.90 per $
ICS 123
4
Topic 15Internet-ScaleInteroperability
Technologies for Event-Based Interaction
Many relevant technologies for LANsTheoretical models
Communication andCollaboration Systems
Low-level eventmanagers
Tool IntegrationFrameworks
Implicit invocation
Software buses
Event-based specification,analysis, debugging
Active database systems
Software agent technology
Event-action systems
New technologies are needed thatoperate at Internet scale
New technologies are needed thatoperate at Internet scale
ICS 123
5
Topic 15Internet-ScaleInteroperability
Some 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
ICS 123
6
Topic 15Internet-ScaleInteroperability
Eight 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?
ICS 123
7
Topic 15Internet-ScaleInteroperability
Attributes of Internet Scale
Huge numbers of users
Vast numbers of events
Network latency
Autonomy
Resource accounting
Security
Mobility
ICS 123
8
Topic 15Internet-ScaleInteroperability
Some Warning Signs That a Technology Is Not Scalable
Extrapolating the success of a LAN-basedtechnology
Objects that manage their own set of "eventlisteners"
JavaBeans
"... the server ..."
Roll-your-own frameworksCORBA Event Service
ICS 123
9
Topic 15Internet-ScaleInteroperability
Event Observation and Notification Terminology
invoker
object of interest
@ London
object of interest@ Zurich
Event Service
pattern ofevents
invoker
notification
120.92 per $
120.90 per $
interested party
@ New York
ICS 123
10
Topic 15Internet-ScaleInteroperability
Event Observation and Notification Activities
1. Making a class of events observable1. Making a class of events observable
2. Expressing interest in a pattern of events2. Expressing interest in a pattern of events
3. Occurrence of an event3. Occurrence of an event
4. Observing an event4. Observing an event
5. Relating observations with each other5. Relating observations with each other
6. Notifying an interested party6. Notifying an interested party
7. Receiving a notification7. Receiving a notification
8. Responding to a notification8. Responding to a notification
ICS 123
11
Topic 15Internet-ScaleInteroperability
SIENA: Scalable Internet Event Notification Architectures
Event Notification
Service
Advertise
Publish Subscribe
Service Access Points
Notifications
ICS 123
12
Topic 15Internet-ScaleInteroperability
Goals of SIENA
Research 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
ICS 123
13
Topic 15Internet-ScaleInteroperability
Interface 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)
ICS 123
14
Topic 15Internet-ScaleInteroperability
Notification Model in SIENA
•A notification is a list of attributes
string class = travel/airlines/offersdate starts = Jun 99date expires = Aug 99string origin = DENstring destination = MXPstring carrier = BAfloat price = 850string currency = USD
string class = travel/airlines/offersdate starts = Jun 99date expires = Aug 99string origin = DENstring destination = MXPstring carrier = BAfloat price = 850string currency = USD
attribute=(type,name,value)
ICS 123
15
Topic 15Internet-ScaleInteroperability
Filters
•A filter is a list of attribute filters
string class >* travel/airlines/date starts < Jul 99date expires > Jul 99string origin = DENstring destination = MXP
string class >* travel/airlines/date starts < Jul 99date expires > Jul 99string origin = DENstring destination = MXP
attribute filter=(type,name,operator,value)
ICS 123
16
Topic 15Internet-ScaleInteroperability
Patterns
•A pattern is an algebraic expression whose basic elements are filters
string class >* system/files/writestring file = /etc/passwdint userid > 0
string class >* system/files/writestring file = /etc/passwdint userid > 0
string class >* system/files/writestring file = /var/adm/utmpint userid > 0
string class >* system/files/writestring file = /var/adm/utmpint userid > 0
and then
ICS 123
17
Topic 15Internet-ScaleInteroperability
Some Design Choices
Advertisementsnone vs. required vs. optional
Notificationstyped vs. untyped
What to Broadcastnotifications, subscriptions and/or advertisements
Pattern Languagesequences vs. REs vs. REs with negation vs. ...
ICS 123
18
Topic 15Internet-ScaleInteroperability
Simulation StudiesSimulation Variables
Routing Algorithms
Sites (of Service Access Points)
number, inter-site cost
Servers
site locations, topologies
Objects of Interest
number, message rates, site locations, server connections
Interested Parties
number, patterns, message rates, site locations, server connections
Event service simulated on top of generated Internettopologies
GT-ITM (Georgia Tech)
ICS 123
19
Topic 15Internet-ScaleInteroperability
Distributed Servers
Maintain Local State InformationKnown Advertisements
Known Subscriptions
Maintain Links with Neighboring Servers inService Topology
Which neighbors provide notifications
Which neighbors need notifications
Perform Matching of Notifications to LocalSubscriptions
ICS 123
20
Topic 15Internet-ScaleInteroperability
Centralized Server Architecture
ServerServer
ICS 123
21
Topic 15Internet-ScaleInteroperability
Hierarchical Architecture
… ……
…
…
ICS 123
22
Topic 15Internet-ScaleInteroperability
General Graph Architecture
ICS 123
23
Topic 15Internet-ScaleInteroperability
Sample 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
ICS 123
24
Topic 15Internet-ScaleInteroperability
Hierarchical Architecture with Subscription Forwarding
…
…
…
All subscriptions propagate upwards
Notifications propagate only alongactively subscribed paths
ICS 123
25
Topic 15Internet-ScaleInteroperability
Hierarchical Architecture with Advertisement Forwarding
…
…
…
All advertisements propagateupwards
Subscriptions propagate upwardsonly as far as necessary
Notifications propagate only alongactively subscribed paths
ICS 123
26
Topic 15Internet-ScaleInteroperability
Side Topic: Delivery without Routing
•We have had large-scale information delivery without routing for ~100 years. Where? How?
ICS 123
27
Topic 15Internet-ScaleInteroperability
Side Topic: Delivery without Routing
•We have had large-scale information delivery without routing for ~100 years. Where? How?
Rabbit Ears
ICS 123
28
Topic 15Internet-ScaleInteroperability
What 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
ICS 123
29
Topic 15Internet-ScaleInteroperability
Approximate State Synchronization
ICS 123
30
Topic 15Internet-ScaleInteroperability
Approximate State Synchronization
ICS 123
31
Topic 15Internet-ScaleInteroperability
Approximate State Synchronization
ICS 123
32
Topic 15Internet-ScaleInteroperability
Approximate State Synchronization
ICS 123
33
Topic 15Internet-ScaleInteroperability
Approximate State Synchronization
ICS 123
34
Topic 15Internet-ScaleInteroperability
Middleware vs.Network Infrastructure
• 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
Today:Siena over TCP/IP
Future:Siena alongside TCP/IP
SIENA
SIENA Client
TCP/IP
SIENA Client
TCP/IPCBR