-1- system software research lab. active cache : caching dynamic contents on the web pei cao, jin...
TRANSCRIPT
![Page 1: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/1.jpg)
System Software Research Lab.-1-
Active Cache : Caching Dynamic Contents on the Web
Pei Cao, Jin Zhang and Kevin Beach
Middleware’98
2000. 10. 12
SSLAB, EE Dept, KAIST
박상호
Comment: 서버 쪽에서 해야할 일들을 proxy 로 이동시키는 방법에 대한 논문 .아이디어가 기발한 것 같진 않지만 , 사용 가능한 application 을 찾아 명시하였고 , 자바를 이용한 방법을 제시하였다 .
![Page 2: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/2.jpg)
System Software Research Lab.-2-
Content
▣ Introduction
▣ Active cache protocol
▣ Security Mechanism
▣ Resource Management Policy
▣ Implementation
▣ Performance
▣ Conclusion and critique
![Page 3: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/3.jpg)
System Software Research Lab.-3-
Introduction
▣ Caching in the Web◈ Inability to cache dynamic documents
▣ Active cache
◈ Migrates parts of server processing to the caching proxy
◈ Cache applet : server-supplied code written in JAVA
ServerProxy
request
reply
processing
ServerProxy
processing
request
reply
![Page 4: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/4.jpg)
System Software Research Lab.-4-
Active cache protocol(1/2)
◈ New entity header : CacheApplet– CacheApplet: code=“code.class”, archive=“code.jar”, codebase=“codebase_url”
◈ Active-Cache enabled proxy – Applet’s execution failure : the request is sent to the server
– Applet’s execution success : send the cached document or new document to the client
– Send the log object back to the server periodically
Server/test.html
Server/test.html
test.html -> test.classServer/test.html With CacheApplet entity header
![Page 5: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/5.jpg)
System Software Research Lab.-5-
Active cache protocol(2/2)
▣ Active cache interface
Cache hit
FromCache()
1:new content0:cached content-1:forward the request to server
ActiveProxy class : File access, cache query, Lock/unlock, sending requests to servers
Available : java.util, java.text, java.math, java.security, java.sql, ActiveProxy class
Unvailable : java.io, java.lang, java.systems
Proxy :
CacheApplet :
![Page 6: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/6.jpg)
System Software Research Lab.-6-
Cache Applet Examples(1/2)
▣ Logging User Accessespublic static int FromCache(string User_HTTP_Request,string Client_IP_Address,string Client_Name,int Cache_File,int New_File) {
int fd = open(“logapplet.log”, APPEND_ONLY);int status = lock(fd);string date = new curtime();log_to_file(fd, date, Client_Name, User_HTTP_Request, Client_IP_Address);status = unlock(fd);close(fd);
return(0); // 0 means use the cached file}
![Page 7: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/7.jpg)
System Software Research Lab.-7-
Cache Applet Examples(2/2)
▣ Advertising Banner Rotation
▣ Access Permission Checking
▣ Client-Specific Information Distribution
▣ Server-Side Include Expansion
▣ Delta Compression
![Page 8: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/8.jpg)
System Software Research Lab.-8-
Security Mechanisms
▣ Two types of security attacks◈ An applet’s illegal access to information belonging to
other web server– JAVA : built-in security mechanism
– Applets from different servers do not cooperate
– Static examination of the classes and functions
◈ Denial-of-service attacks : resource consumption– Storage size
– Disk bandwidth
– Network bandwidth
– CPU usage
– Virtual memory size
![Page 9: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/9.jpg)
System Software Research Lab.-9-
Resource Management Policies
▣ Proxy decide whether an object should be cached◈ Based on the proxy’s estimation of the benefits and the
cost of caching– Benefit : saved network bandwidth
– Cost : storage cost, CPU cost, network communication(send_request_to_server calls)
◈ Cost-aware cache replacement algorithm
◈ Negotiated object : server specifies the estimated costs and desired duration of caching
◈ Un-negotiated object
![Page 10: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/10.jpg)
System Software Research Lab.-10-
Implementation
▣ Implementation◈ CERN httpd proxy
– CacheApplet header
– Invoke the applet
◈ setrlimit() system call
◈ Sending the log object : HTTP POST
![Page 11: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/11.jpg)
System Software Research Lab.-11-
Performance(1/2)
▣ Applet overhead◈ WebStone 2.0
◈ 6 applets : null, log, ads, apc, ssi, clid
◈ Server(SPARC 20), proxy(99MHz Intel x86)
Proxy 1 client 10 clients 20 clients
null 1.47 1.75 1.73
log 2.16 2.31 2.24
ads 1.40 2.44 3.23
apc 2.50 2.73 2.72
ssi 3.81 4.00 3.80
csid 1.06 2.04 2.23
Response time(active cache)
Response time(the original CERN httpd proxy)
![Page 12: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/12.jpg)
System Software Research Lab.-12-
Performance(2/2)
▣ Internet traffic reduction through active cache◈ AT&T WorldNet Internet Service Provider
– 30% of all user request carry cookies
– AT&T traces– 35% hit ratios and 30% byte hit ratios
– Active cache : 55% hit ratios and 41% byte hit ratios
![Page 13: -1- System Software Research Lab. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98 2000. 10. 12 SSLAB,](https://reader036.vdocument.in/reader036/viewer/2022071808/56649efb5503460f94c0da08/html5/thumbnails/13.jpg)
System Software Research Lab.-13-
Conclusion and critique
▣ Conclusion◈ Support caching of dynamic documents on the Web
◈ Protocol design, interface, security mechanism and resource management strategies
▣ Critique◈ Bad performance
– Increase the number of web server instead of using proxy
◈ Difficult to program– Servlet or jsp
◈ Cache applet restriction