130 likes | 408 Views
Comment: 서버 쪽에서 해야할 일들을 proxy 로 이동시키는 방법에 대한 논문 . 아이디어가 기발한 것 같진 않지만 , 사용 가능한 application 을 찾아 명시하였고 , 자바를 이용한 방법을 제시하였다. Active Cache : Caching Dynamic Contents on the Web Pei Cao, Jin Zhang and Kevin Beach Middleware’98. 2000. 10. 12 SSLAB, EE Dept, KAIST 박상호. Content.
E N D
Comment: 서버 쪽에서 해야할 일들을 proxy로 이동시키는 방법에 대한 논문. 아이디어가 기발한 것 같진 않지만, 사용 가능한 application을 찾아 명시하였고, 자바를 이용한 방법을 제시하였다. Active Cache : Caching Dynamic Contents on the WebPei Cao, Jin Zhang and Kevin BeachMiddleware’98 2000. 10. 12 SSLAB, EE Dept, KAIST 박상호 System Software Research Lab.
Content • Introduction • Active cache protocol • Security Mechanism • Resource Management Policy • Implementation • Performance • Conclusion and critique System Software Research Lab.
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 request request processing processing reply Server Server reply Proxy Proxy System Software Research Lab.
Active cache protocol(1/2) Server/test.html • 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 test.html -> test.class Server/test.html With CacheApplet entity header System Software Research Lab.
Active cache protocol(2/2) • Active cache interface Proxy : Cache hit Available : java.util, java.text, java.math, java.security, java.sql, ActiveProxy class Unvailable : java.io, java.lang, java.systems CacheApplet : FromCache() 1:new content 0:cached content -1:forward the request to server ActiveProxy class : File access, cache query, Lock/unlock, sending requests to servers System Software Research Lab.
Cache Applet Examples(1/2) • Logging User Accesses public 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 } System Software Research Lab.
Cache Applet Examples(2/2) • Advertising Banner Rotation • Access Permission Checking • Client-Specific Information Distribution • Server-Side Include Expansion • Delta Compression System Software Research Lab.
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 System Software Research Lab.
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 System Software Research Lab.
Implementation • Implementation • CERN httpd proxy • CacheApplet header • Invoke the applet • setrlimit() system call • Sending the log object : HTTP POST System Software Research Lab.
Performance(1/2) • Applet overhead • WebStone 2.0 • 6 applets : null, log, ads, apc, ssi, clid • Server(SPARC 20), proxy(99MHz Intel x86) Response time(active cache) Response time(the original CERN httpd proxy) System Software Research Lab.
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 System Software Research Lab.
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 System Software Research Lab.