extended enterprise laboratory, hewlett-packard laboratories, bristol keryx: internet notification...
TRANSCRIPT
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Keryx: Internet Notification Service
for Dynamic Web Applications
Søren BrandtAnders Kristensen
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Expanding the Scope of Push
Current push technologies notify users of Web-content updates
But notifications are potentially useful in a much wider context
The Internet would benefit from a general purpose Event Notification Service
Web content push is just one application of such a service
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Limitations of Current Push
Narrow focus on web content push
Location-centric channel concept
No standard filtering language defined
Closed architectures that do not support higher-order services
Bandwidth problems: frequently changing information index files (e.g., CDF) may become quite large
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
The Case for a Generic Notification Service
Standard would allow increased interoperation between currently separated systems intelligent devices can communicate with people people can communicate with intelligent devices
Notifications can drive channel updates
A Nervous System for the Internet
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Elements of a Notification Standard
Format for describing structured data
Standard notification elements
Standard filtering language(s)
Schema language
Standard vocabularies
Transport protocols (?)
• expressive• human-readable
• easy to generate• must facilitate filtering
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Internet Notification Service
Any event can generate a notification:
WWW page update
stock price update
printer paper jam
telephone ringing
vehicle or domestic security
personal location update
package delivery
voicemail
travel documents ready
Existing Notification based systems:
Network Management (SNMP, GDMO)
Workflow
Communication services
PSTN, mobile, VOI
voice-mail, pager, email
Distributed games
Distributed Virtual Environments
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Example Service:Monitor Stock Prices
NYSE Stock Price Service
Publish
Browser: Stock price monitor
Event Routing
Event Matching
FTSE Stock Price Service
Events
Publish
Events
Events
Subscribe
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Example: Spare Parts Shopping
Yesterday’s scenario: check local weekly
Today’s scenario: subscribe to “Auto Parts” channel adds about unwanted car brands and parts only information from anticipated source
Tomorrow’s scenario: subscribe to notifications about available “1984 VW Rabbit carburettors” only relevant notifications notifications from unanticipated sources
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Keryx - Internet Notification Service
A light-weight, many-to-many communication service between applications or people
Publish and subscribe model
End-user defined filters
Decoupling of sources and sinks
Fine-grained information units
A nervous system for the Internet
Emergent services
Higher-order services
Action
Reaction
Reaction
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
‘Smart Seat’
Video Camera
Web Client (Browser)
Services written in Java
Event Distributor
Event Registration and Forwarding Service
Web Server
Services written in Java (e.g.)
Active Badge
Internet
PBX
Op
en S
et of D
evices
Events
Events
EventsEvents
Events
Enterprise Telephony
Events
Events
Electronic Mail
WWW Site Watch
Keryx Notification Architecture
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Internet Notification Service:Basic concepts
Publication Declare an intention to
send notifications Describe notification
types
Subscription Register interest in
receiving notifications Register notification filter
Notifications Fine-grained information
packages Describes an event Suited for automatic
processing Undirected
Propagation Supporting servers send
notifications to end-users Propagate only if interest
exists (filters)
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Keryx Service Model
Service characteristics: notification driven sub-parts evolve independently
Service is a collection of small software elements produce and consume events need not be aware of other elements located anywhere
Emergent services: not centrally planned higher-order services
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Service Example: Event Correlation
Value-adding higher-order service detects patterns in a low-level stream of notifications generates “derived” higher-level notifications reduces volume of traffic to event consumers
Example event correlation services: personalised news network management personal location tracker page-change digests stock-change services
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Transfer Syntax
{ type (notify), content { type (stock-price price-change) stock-symbol “HWP” stock-price “$65” exchange-name “NYSE” }, system { source “quotes.nyse.com” publication-id “id://nyse/57” }}
On-the-wire format Structures
Maps: (name, value) Lists: indexed
Atomics Symbol, String, Number, ...
Filter Language Predicates on events
Human readable Easy to generate
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Routing by Event Content
Distributor matches events to subscriptions filtering based on event content
Events forwarded to interested subscribers multicast or point-to-point event delivery
Events forwarded to other event distributors
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Keryx Reference Implementation
Notification Framework + APIs: Java and C
Event Distributor
Simple notification transport protocols (TCP and UDP)
Generic Notification Viewer support for specialised plugins for specific event types
Rule-based notification rewriting service
Free for non-commercial use
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Conclusion
Expand scope of push technology discussions!
Base Web Content Push on Internet Notification standard!
Elements of a notification service: notification language filtering language delivery component
Extended Enterprise Laboratory, Hewlett-Packard Laboratories, Bristol
Keryxon the web
http://keryxsoft.hpl.hp.com/