1 / 13

2000. 10. 12 SSLAB, EE Dept, KAIST 박상호

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.

hada
Download Presentation

2000. 10. 12 SSLAB, EE Dept, KAIST 박상호

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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.

  2. Content • Introduction • Active cache protocol • Security Mechanism • Resource Management Policy • Implementation • Performance • Conclusion and critique 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 request request processing processing reply Server Server reply Proxy Proxy System Software Research Lab.

  4. 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.

  5. 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.

  6. 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.

  7. 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.

  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 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 System Software Research Lab.

  10. Implementation • Implementation • CERN httpd proxy • CacheApplet header • Invoke the applet • setrlimit() system call • Sending the log object : HTTP POST 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) Response time(active cache) Response time(the original CERN httpd proxy) 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 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 System Software Research Lab.

More Related