the evolution of internet-scale event notification services adam rifkin rohit khare workshop on...

47
The Evolution of Internet- Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California, Irvine July 13, 1998 Past, Present, and Future

Upload: derek-flowers

Post on 13-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

The Evolution of Internet-ScaleEvent Notification Services

Adam RifkinRohit KhareWorkshop on Internet-Scale Event NotificationUniversity of California, IrvineJuly 13, 1998

Past, Present, and Future

Page 2: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 2

The Evolution of Internet-Scale Event Notification Services

Past Event-Based Integration (EBI) occupied application

niches, adapted to loosely-coupled systems Event Notification Services (ENS) expanded their

range, from hosts to LANs to WANs

Present Crossing trust domains raises new ‘Internet’

concerns

Future Explosion of diverse, competing protocol proposals Selection criteria likely to lead toward convergence

Page 3: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 3

Goals of this Presentation

“You can’t tell the players without a scorecard!” Over a hundred systems and eighty more papers

“What are the design choices?” Identifying primary axes of classification

“What’s new research here?” Issues which are truly unique to Internet-scale ENSs

“What’s going on in the marketplace?” New players have wider ambitions than past ISENSs

“How can we select more principled designs?” Lessons from software architecture for ISENSs

Page 4: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 4

Who We Are

Adam Rifkin Seventh-year at Caltech with K. Mani Chandy Microsoft Research, HP Labs, Rome Labs, NASA Studying the semantics of event models

Can formal specification help explain the behavior and performance of distributed systems?

Rohit Khare Second-year at UC Irvine with Richard Taylor W3C, Web Journal, MCI Internet Architecture Studying the design of application-layer protocols

How did all these TPs evolve? Are they converging?

Page 5: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

Past, Present, Future

Adapting to niche applicationsExpanding range

Page 6: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 6

The Evolution of Event Systems

Defining Events, Notifications, and Handlers Enumerating and clustering existing systems

Evolution into new niches and widening range

Archetypal applications and notification services

Taxonomy of ENS design space Evaluating models from the literature

Page 7: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 7

Defining our terms

People have called lots of things event systems: graphical interfaces, physical simulations, collaborative

workflow, programming with callbacks...

Events are Notifications to be Handled Events, as in physics, are abstract and instantaneous Notifications are messages with definite semantics Handlers implement synchronization and semantic

constraints of a pattern of notifications

Events are not: RPC, Blackboards, Pipes, Documents, or FYI Messages

Page 8: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 8

Things that go “notify” in the night:

ACA (Digital)Active DatabasesActive Software

ActorsAmalgame

Amiga REXXAppleEvents

AtlantisBackweb

BartBEA/Tuxedo

BLIPBOF/BOCKC2 Style

CISCO Pub & SubCOM+ Events

ConsulCORBA NotificationCORBA Transaction

CronusDesert

DCE RPCDEEDSDHCP

DIS (IEEE 1278)Discrete Event SimDNS Notifications

DRP (Marimba)DSN (mail)

Easte-cast (Lucent)

ElvinENP (Oracle)

EnsembleFieldfinger

GENA (MS)FUSE

HORUSHTTPICQ

iFlameInformation Bus

InfospheresIntermind

Iona OrbixTalkIP Multicast

IRCISIS

Java AWTJava Beans

Java Distr. EventsJava InfoBus

Java OS events

Java TransactionsJavaSpaces

JEDIJFC (Swing)Keryx (HP)

LeasesLogical Clocks

MaisieMajordomoMariposa

Mediator PatternMentatMFTPMMS

MSMQMQ*Series

MTPMTSNNTPNSTP

OpenDocPIPRPLAN

PointcastPOLYLITH

RIPRMP

RPCRVPSGAP

SIMNETSIENA

SIPSMTP

SNMP TrapsSoftBench (HP)

SRMSWAP

SwitchWareTalarianTaligentTalkd

TeamwaveTibco

ToolTalk (Sun)UbiqueVitriaVMTP

WhoDPWin32 eventsX Windows

Yahoo PagerYeast

Zephyr

Page 9: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 9

Clustering by Application Context

MessagingBackweb

DRP (Marimba)DSN (mail)

e-cast (Lucent)HTTP

IntermindMajordomo

MFTPMSMQ

MQ*SeriesNNTP

PointcastSMTP

SNMP TrapsTalarian

TeamwaveTibcoVMTP

PresenceBlip

fingerICQ

NSTPPIPRRVPSGAPSIP

WhoDP

ChatiFlame

IRCTalkd

UbiqueYahoo Pager

Zephyr

Simulation/ GraphicsActors

DIS (IEEE 1278)Discrete Event Sim.

Java AWTJFC (Swing)

Living Worlds (HP)Logical Clocks

MaisieMentatSIMNETTaligent

Win32 eventsX Windows

Application IntegrationACA (Digital)

Active SoftwareAmalgame

Amiga REXXAppleEventsBEA/Tuxedo

EastField

HORUSInformation BusIona OrbixTalk

Java BeansJava InfoBusKeryx (HP)OpenDocPOLYLITH

SoftBench (HP)SWAP

ToolTalk (Sun)VitriaYeast

Page 10: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 10

Low LatencyCOM+ EventsAmiga REXXAppleEventsSNMP Traps

IRelay Chat (IRC)

High LatencySMTP

MajordomoDSN (mail)

DNS NotificationsNNTP

PollingBackwebFingerICQ

PointcastYahoo Pager

InvocationCORBA Notification

FieldSoftBench (HP)ToolTalk (Sun)

Zephyr

MulticastIP Multicast

RMPSIPSRMTibco

UDP ModeBackWebWhoDP

ReliableBEA/Tuxedo

CORBA TransactionMSMQ

MQ*Series

LeasesDHCP

AFS CachingWebDAV

Dead-reckoningDIS (IEEE 1278)

SIMNETWhoDP

Clustering by Notification Features

Myriad ways to slice and dice this survey set…

1 N

1

TalkDWin32 eventsX Windows

BackwebPointcast

DRP (Marimba)Finger

N

ZephyrSMTP

ICQYahoo Pager

WhoDPSGAPNNTP

K

1

C2 StyleDNS Notifications

DHCPSMTP

SNMP TrapsTibco

K iFlameMajordomo

Page 11: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 11

The Evolutionary March of Progress:New niches and widening range…

News (NNTP),channels

Rendezvous(RVP), WhoDP,

NSTP, SGAP

Internet RelayChat (IRC)

VRMLEnvironments

CORBANotifications,

HP KeryxWAN

reliable mcast(Tibco, MFTP)

SessionInvitation (SIP)

Zephyr, iFlameDistributed

Interactive Sim(DIS /IEEE)

WebBroker,Beans, Horus

Ensemble

LAN eMail

(SMTP)finger Netshow

Discrete EventSimulation(Maisie)

Field, ISIS,HP SoftBench,Sun ToolTalk

Simple NetManagementTraps (SNMP)

TalkDX Windows

SystemAppleEvents,COM+ Events

Host Mach IPC who(1) write(1)

MacOS eventloop, Language

exceptions

Cut-n-paste,Pub-n-sub,Exceptions

Sca

le

OS

Logininformation

(utmp)

GUI eventqueue

Pipe-and-filter

Messaging Presence Chat Simulation/Graphics

ToolIntegration

Page 12: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 12

Exploring the Fossil Record

Our evolutionary map is only descriptive as yet These five applications are not a privileged frame of

reference; merely popular clusters

To evaluate EBI styles, outline orthogonal axes: Rate of event occurrence Topology of notification distribution Content model of notifications Naming model: sources, sinks, queues, subscriptions Event transformations: filtering, aggregation, etc. Security and Privacy requirements

Page 13: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 13

Application: Messaging

Goal: Delivering “human-actionable” content News occurs at O(minutes) to O(days) Sample event: “Today’s lunch menu is…”

Distributed 1-N (many) or 1-K (known set)Notifications range from text to multimediaNames: mailboxes, newsgroups, topics, etc.Transformations: compression, batch

deliveryAuthenticated senders, content integrity &

confidentiality

Page 14: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 14

Systems: Messaging

E-mail and mailing lists Mail can be queued at relays; reliable, but O(days) Mlists require subscriber verification; allows digests

USENET News Articles, named by message-ID, can be posted to a set

of groups within a distribution region until expiry

Publish & Subscribe Topic selection can be more specific than “group”,

such as selection of characteristics of the messages

Web Push / “Channels” Poll for updated content; could be bundled, cached

Page 15: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 15

Application: Presence

Goal: maintaining awareness of people, devices Changes in state occur on O(minutes) Sample Event: “Elvis has left the building…”

Monitor “buddies” or “editors” (1-K) Infrastructure typically designed for N-N, though

Notifications can be lightweight (text)Names: users-from-directories, groupsTransformations: batch update; state timeoutPrivacy requires knowing who’s watching

Page 16: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 16

Systems: Presence

who (1), utmp Multiuser OSes log and report current logins

finger Returns last-seen, last-read, and .plan for username

WhoDP Switchboards maintain directory of clients; actual

presence traffic redirected peer-to-peer

AOL Instant Messenger Centralized state server; client holds connection

open

Page 17: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 17

Application: Chat

Goal: Delivering units of (human) conversation Interaction occurs on O(seconds) Sample event: “[Duke] smells a Wumpus…”

Distributed 1-1, 1-K (lecture), or K-K (forum)Notifications range from text to multimediaNames: email addrs, handles, channelsSecurity: speaker authentication,

confidentiality through content encryptionPrivacy: audience enumeration

Page 18: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 18

Systems: Chat

write (1) Displays to all users (except users blocking all

writes)

TalkD Binary session request; requires active confirmation

Zephyr Delivers messagegrams with Kerberos authentication

Internet Relay Chat (IRC) Directed acyclic graph of servers using a ‘gossip’ alg. Weak confidentiality of forum content (passwords) Robots can automatically trigger events (invitations)

Page 19: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 19

Application: Simulation

Goal: Maintaining consistent (physical) state Interaction occurs on O(milliseconds) Sample event: “[Duke] fires 9mm at the

Wumpus…” Sample event: “Mouse button 2 clicked twice…”

Distribution limited to 1-1 or small K-K groupsNotifications are usually small and stateful

(for example, delta updates)Transformations: event aggregation, masking

(filtering), batching, and dead-reckoning

Page 20: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 20

Systems: Simulation

GUI event queues Hardware devices deliver interrupts or are scanned,

foreshadowing the invoke vs. poll options Event queue can select events by bounds, type, etc. Events can be updated, coalesced in the queue

Distributed Interactive Simulation (DIS) IEEE Standard 1278.1 (1995) Physical and synthetic players in a wargame Myriad specific update message formats Lost updates replaced by predictions

Page 21: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 21

Application: Integration

Goal: wiring together component software Data flows from O(milliseconds) to O(hours) This wide range can be problemmatic Sample Event: “Compiler finished foo.c as foo.o”

1-K; source usually unaware of consumersNotifications typically machine-readable

streamsNames: processes, hostsTransformations: data type adaptors

Page 22: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 22

Systems: Integration

Information Bus Routes messages to groups based on content

POLYLITH Software Bus Redirects/repackages intermodule calls per bus

wiring

Field, Yeast Central message repository triggers sw tools

AppleEvents, REXX Event-oriented user interface scripting

languages

Page 23: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 23

Developing an Architectural Model

Zooming out from these details, we choose to separate the event infrastructure layer

Above, applications rely on EBI services Several classic papers speak to this model

Below, EN services bound protocol designs

Even

tBas

edIn

tegr

atio

n Components/Tools, Connectors, Notifications, Requests

‘Logical’ routers, message transformers, application event semantics (e.g. dead-reckoning)

Reliable storage, synchronization, typing

Even

tN

otifi

catio

nSe

rvic

es

Quality of Service, Link and message security

‘Physical’ routing topology, ‘physical’ naming, initiation rules (poll vs. interrupt)

Wire formats, stateful optimizations (session vs. packet), batching

Page 24: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 24

Field [Reiss90]

Connects clients (“tools”) with anonymous bcastCentral message server as a separate processTools register interest in message-expressionsForwarded in order receivedNo exception handling

e.g. access control, delivery constraint violations

Policy tool can intercept, replace messages“tools advertise operations” informed SoftBench

Page 25: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 25

Polylith [Purtilo94]

Tools bind their I/O ports to a Software Bus ports identified by name, allowing retargeting

Module Interconnection Lang to wrap toolsSimple, Structured, and Pointer message

typesLimited to simple filtering on channelsNo explicit support for groupsNo exception handling

e.g. ill-formed messages or incompatible connections

Page 26: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 26

EBI Framework[Barrett, et al 96]

Feature FIELD POLYLITH CORBA

Message Types StringSimple, Structured,

Pointer typesSimple, Structured, and

Interface types

Registrar Msg message server Bus ORBs

Router Msg pattern matching Bus ORBs

Message Sending Multicast Point-to-Point, Multicast Point-to-Point

Message Delivery Non-polling (passive) Polling (active) Unspecified

Message TransformFunctions (MTFs)

Filters, Policies Filtering by bus channel None

Delivery Constraints Policy Priorities Not User-definable At-most-once, Best-effort

Grouping Participant Groups NoneParticipant and RouterGroups (“domains”)

Presents a taxonomy of causes, not effects

Page 27: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 27

C2 Style [Taylor, et al 96]

Components respond to notifications, emit requests (asynchronously)

Connectors coordinate all communication First-class objects, function as routers,

broadcasters, filters, prioritizers

Messages = name + typed parametersNotifications of state changes flow “down”Requests for action flow “up”

Page 28: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 28

ISE Observation and Notification[Rosenblum, Wolf 97]

Attributes of ‘Internet-Scale’ Geographical reach, autonomy, security, QoS

Lifecycle of an event Determination of which events shall be observable Expression of interest in an event or pattern Occurrence of an event Observation Relation of an event to a pattern of interest Notification to an application Receipt by the application Response of the application

Page 29: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 29

Framework[Rosenblum, Wolf 97]

Object model of senders and receiversEvent model characterizes event phenomenaNaming model of references to items of

interestObservation model of identifiable patternsTime model of events causing notificationsNotification model of mechanisms to express

interest and receive themResource model for allocation and accounting

Page 30: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 30

Moving to the Lower Layer:The ENS Design Space

It isn’t easy. Confusion abounds: “A Rendering may be received in one of two ways:

either… returned as a value from a synchronous call [‘client-pull’], or… requested and then sent asynchronously, in chunks [‘server-push’]” -- HTTP-NG Interfaces

“Messages that represent commands must be synchronous and must provide the caller with a reply.” -- Field

Often conflate blocking, synchronization, timing, and initiation -- these are all separable

Page 31: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 31

Our Taxonomy of ENS Design Space

Initiation Source- (interrupt) vs. Sink-initiated (poll)

Synchronization Synchronous (batched) vs. Asynchronous (deferred)

Blocking Blocking vs. Non-blocking handlers

Causality Ordered vs. unordered, duplicate, and/or missing

Timing (may be a spectrum) Real- (deadlined) to Virtual-time (eventual) delivery

Page 32: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 32

Secondary Taxonomy Concerns

Transport Reliability above vs. at the bearer service Multicasting above vs. at the bearer service

Notification Content Model Externally-visible typing (MIME encodings) Size Streamable Lossy content (multimedia)

Security Trusted event notifiers vs. trusted notifications

Page 33: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

Past, Present, Future

Crossing trust domains

Page 34: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 34

Why Event-Based Integration won

Loose coupling is a hallmark of Internet-scale development

Allows dynamic communication topologySeparates engineering tradeoffs for

latency, efficiency But, these were mission-specific and not

yet Internet-Scale...

Page 35: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 35

New issues

Not merely about scaling across space, time, and number of participants and events...

…but across Organizations: Security concerns Interoperability Semantic (Ontological) agreement Administrative Decentralization Mobility

Most of all, Evolvability of an ISEN Service … we have an opportunity to define a generic

service

Page 36: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 36

Unaddressed issues

Performance models: nonexistent We believe a model would converge with

messaging performance, modulo “event-handling” time

Parameters such as event frequency, size, ...

Queuing policies across a connection topology Critical factor in scaling, yet usually unspecified in

protocols

Evaluation criteria Scenarios, benchmarks, metrics, models

Others?

Page 37: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

Past, Present, Future

Competing protocol proposalsSelection criteria

Page 38: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 38

The great thing about standards is...

At WISEN alone: Presence/Chat

NSTP/SGAP/RVP/WhoDP

Tool IntegrationSWAP/DAV/IPP

Generic Notification ServicesGENA/BLIP

Lots of others in the quiet race to market

Does this welter of proposals overlook anything?

Page 39: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 39

Perhaps.

“Connectors should be first-class objects” Don’t hide subscription and queueing

“Transport is an engineering decision” … not a semantic one Beware of “reliable” datagrams and multicast

reinvent TCP and risk ACK implosion, respectively

“With security aforethought” Need security at the message level

If we are aiming at a global infrastructure, community involvement is paramount

Page 40: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

Our Conclusions

Revisiting our goals

Page 41: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 41

“You can’t tell the players without a scorecard!”

A staggering range of systems can be considered event-oriented Events are notifications which trigger

commands

Need to tease apart EBI applications from ENSs In the past, EN systems presented both

together

Page 42: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 42

“What are the design choices?”

We believe event notifications across the Internet are necessarily identifiable as messages ISEN design space is slightly larger than IS messages

Message delivery initiated by source or sink Polling vs. Interrupts

often conflated with non-blocking vs. blocking semanticsoften conflated with which-side-establishes-a-connection

End-to-end delivery or via mediators (queues)often conflated with “real time” vs. deferred

Reliable delivery provided by or above transport

Page 43: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 43

“What’s new research here?”

Evolvability: how flexible can an ISENS be? An opportunity to build “great infrastructure”

Security: should the ENS be trusted or not? Hop-by-hop trust may not be dynamic enough

Performance modeling: what are the limits? Analytic and statistical models not developed yet

There’s also good engineering to be done… (Not to mention standardization leadership)

Page 44: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 44

“What’s going on in the market?”

New applications and protocols are emerging for EBI and ENS across organizational (trust) lines

Entrants usually leveraging a technology Transport (UDP, mcast) or HTTP or both

Some glimmer of a layered solution Event notification separable from event schema

Collaboration and groupware tools are leaders

Page 45: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 45

“How can we selectmore principled designs?”

We believe the C2 and “representational state transfer” architectural styles show promise

C2’s connectors, components, and notifications: can model (bridge) a range of current proposals hint at design rules for verifying EBI reuses a common ENS at varying levels of

abstraction perhaps a lattice of event notification services

Representational State Transfer’s messages separate the artifact (wire) and ideal (remote) form allow dynamism and scale through statelessness

Page 46: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 46

Recommendation: A Layered ISENSWire protocol for notifications

Perhaps an “asynchronous HTTP”

Notification management Interfaces for advertising and subscribing Queue management policies Generic notification typing

WebEvents Package Trapping HTTP Method Resource Link maintenance New-content (“push”)

These are missing from current proposals!

Page 47: The Evolution of Internet-Scale Event Notification Services Adam Rifkin Rohit Khare Workshop on Internet-Scale Event Notification University of California,

WISEN // July 13, 1998 Evolution of ISENS : Rifkin/Khare Slide 47

For Further Information…

NOTIFY BOF at IETF-Chicago Chaired by Jim Whitehead, UC Irvine

This presentation and our events bibliography http://www.cs.caltech.edu/~adam/isen/

Notifications mailing list [email protected] http://www.findmail.com/list/notification/

Contact us [email protected] [email protected]