web intermediariesibm almaden research center rob barrett intermediaries new places for producing...
TRANSCRIPT
![Page 1: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/1.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
IntermediariesNew Places for Producing and Manipulating
Web Content
Rob Barrett & Paul Maglio
IBM Almaden Research Center
April 1998
![Page 2: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/2.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Server-Centric Web
server controls all content client and pipe are content-passive applets and plugins notwithstanding
client server
HTTP, HTML, ...
• dynamic pages
• enterprise data
• serve applets
![Page 3: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/3.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Intermediaries
computational elements along data path take advantage of well-defined pipe observe, respond to requests, modify anywhere along path
I I I
workgroupclient server
![Page 4: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/4.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
An Example Data Flow
browser issues request passes through local cache cache miss, so passed to server resulting document customized and returned
custo-mize
server
localcache
request request
docmodifieddoc
![Page 5: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/5.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Example: Personalization
original motivation(see CHI’97 paper)
web changes based on user and history history traffic lights shortcuts
download at:wwwcssrv.almaden.ibm.com/wbi/
traffic lightstraffic lights
new linksnew links
something’s changedsomething’s changed
![Page 6: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/6.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Example: Content Distillation
content has various representations(e.g. image quality)
transform according to speed, display, etc. see Fox, et al (WWW5 proceedings)
distill
fastlink
slowlink
![Page 7: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/7.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Example: Protocol Extension
add protocol features without changing client or server data compression new authentication methods backward compatibility
HTTP/XYZ
XYZ/HTTP
![Page 8: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/8.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
New Computational Power
key idea expanded content computation server no longer has control of content
web gains customizable and extendible at all points
content production and manipulation server, client, or workgroup/ISP/firewall
![Page 9: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/9.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Outline
Moving to Intermediaries
Architecture
Implementation
Related Work and Future Work
![Page 10: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/10.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
I I I
Progression: Application to Data
monolithic application
client server
client server
![Page 11: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/11.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Extract Intermediary from Browser
browser client-sideintermediary
• user-interface• URL requests• document display• applet exec
• pluggable computation• process requests• retrieve documents• customize/personalize
move function from browser to intermediary cache, off-line cache network communications bookmarks, history
![Page 12: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/12.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Add Programmability to Proxy
normally transparently sends requests/docs sometimes has caching functions make into full-fledged intermediary
transparency is a special case add access to workgroup resources screen docs for viruses content distillation wide range of pluggable features
![Page 13: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/13.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Replace Server w/Intermediary
server always returns doc for a request intermediary may
respond or forward observe transaction modify request or doc
Ireq
doc
![Page 14: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/14.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
browser server
browser withintermediary
documentstore
I I I
intermediaryacting as server
Drawing the Lines
generalize web model with intermediaries
![Page 15: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/15.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Outline
Moving to Intermediaries
Architecture
Implementation
Related Work and Future Work
![Page 16: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/16.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Why One Architecture?
building a robust intermediary is tough browser/server protocol perversions rare error conditions interactive multi-threading
separate framework from particular int. apps app. developer needs only deal with data uniform interfaces across intermediary platforms
![Page 17: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/17.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
WBI Architecture
five basic building blocks (MEGs) WBI app. (“plugin”) built out of MEGs rules control MEG involvement
rules
WBI
requesteditors
MDEG
generatorsdocument
editorsmonitors autonomous
RE A
![Page 18: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/18.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
WBI Data Flow
dynamic flow by rules and transaction type chaining and rejecting monitor placement
rules
requesteditors
M
DE
G
gen
documenteditors
monitors
RE RE
GDE
M
WBI
![Page 19: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/19.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Rules
boolean expressions with wildcards rejection allows other selection criteria
switch on structured data in req/doc URL, content-type, client addr, protocol, etc.
priority chaining (editors) ordering (generators)
host=*.stanford.edu & content-type=text/*
![Page 20: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/20.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Example: Cookie Manager
Req Editor: adds cookies from cookie jar Doc Editor: removes cookies and puts in jar Generator: produces HTML for management cookie policies, mult. users, mult. browsers
DE
G
RE
jar
![Page 21: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/21.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Example: Wireless Web
three plugins work together cache with prefetch compressed protocol extension image distillation
M
DE
G
A
G G
prefetch
cache
compressedprotocol
imagedistillation
![Page 22: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/22.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Outline
Moving to Intermediaries
Architecture
Implementation
Related Work and Future Work
![Page 23: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/23.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Languages/Protocols
Native Win95/NT or Java mix and match base code and plugins
HTTP, HTTP-S, FTP, Gopher proxy- or server-type requests usable with any browser or server
![Page 24: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/24.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Configurations client-side
install on client machine forwards to Internet or firewall
workgroup-side install on any networked machine users identified by HTTP Proxy Authentication
server-side default forwarding to designated server
same code in each case
![Page 25: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/25.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Component Model
Java Beans WBI Plugins, MEGs are beans
Properties Plugins: MEGs and plugin-scope data MEGs: rules and configuration info
Library static HTML, serve file from disk, add
annotations, interpret forms, “doc moved”
![Page 26: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/26.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Visual Programming/Debugging
create MEGs build-up plugin follow req/doc
through chain work-in-progress
![Page 27: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/27.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Performance
firewall & server are special cases, so intermediaries are not fundamentally slower
C++ WBI server is 1.2x slower than MS IIS Java JIT WBI is additional 2.5x slower other functions use more processing care must be exercised!
![Page 28: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/28.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Outline
Moving to Intermediaries
Architecture
Implementation
Related Work and Future Work
![Page 29: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/29.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
A Million Ways to Do the Web
many programming models for the web CGI, NSAPI, ASP, Oreo, Servlets
compare with Servlets more languages: C, C++, Java more locations: client, server, workgroup more basic operations: MEG vs. servlet more granularity: Plugin & MEG dynamic configuration servlets allow remote code loading
![Page 30: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/30.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Metadata
current web is human-readable only difficult to parse, impossible to understand PICS defines web metadata language
content description item, price, merchant, terms
presence greatly extends intermediary applications -- agents
![Page 31: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/31.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Additional Streams
beyond HTTP mail, news
routing, summarization, virtual newsgroups push telephone, pager
transfer between modalities
sharing data between streams intermediaries communicate via blackboard
![Page 32: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/32.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
General Programming Model?
MEG model can be applied to functional programming RE: modify parameters G: produce result DE: modify result M: observe calculation
would you want to do this?? cf. Stanford DigLib search engine proxies
![Page 33: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/33.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
More Examples.... decorate links to Yahoo!-listed pages
auto
mat
ical
ly
add
link
to Y
ahoo
!
![Page 34: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/34.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Yahoo Advisor user: more valuable web Yahoo!: more access to valuable info
![Page 35: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/35.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Client-Side Examples
sees all transactions from one client personal history active home page off-line browser information scout form filler-outer web travel scripting
WBI
WBI
WBI
![Page 36: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/36.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Server-Side Examples
sees all transactions for one server usage statistics / user profiling navigation: search, TOC, BOBI site mapping convert document formats discussion groups “look” control
WBI
WBI
WBI
![Page 37: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/37.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Workgroup Examples
sees all transactions for a group of users all client-side applications local access to server-side apps community page rating shared experience custom data distillation
WBI
![Page 38: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/38.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Multi-Platform Examples client-client
active e-mail aglet docking
server-client user/vendor matching collaboration database
workgroup-client proprietary protocols single for-fee gateway
server-server index sharing virtual server
WBI WBI
WBI
WBI
![Page 39: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/39.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
Conclusion
“So how does this affect me?”
![Page 40: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/40.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett
How does this affect me?
think in terms of intermediaries they are everywhere
computational, human, physical
check out the WBI demo and info http://wwwcssrv.almaden.ibm.com/wbi/
develop your own WBI plugins! [email protected]
![Page 41: Web IntermediariesIBM Almaden Research Center Rob Barrett Intermediaries New Places for Producing and Manipulating Web Content Rob Barrett & Paul Maglio](https://reader036.vdocuments.mx/reader036/viewer/2022070404/56649f355503460f94c528e1/html5/thumbnails/41.jpg)
Web Intermediaries IBM Almaden Research Center Rob Barrett