Abstract
As the Internet has become a more central aspect for information technology, so have concerns with supplying enough bandwidth and serving web requests to end users in an appropriate time frame. Web caching was introduced in the 1990s to help decrease network traffic, lessen user perceived lag, and reduce loads on origin servers by storing copies of web objects on servers closer to end users as opposed to forwarding all requests to the origin servers. Since web caches have limited space, web caches must effectively decide which objects are worth caching or replacing for other objects. This problem is known as cache replacement. We used neural networks to solve this problem and proposed the Neural Network Proxy Cache Replacement (NNPCR) method. The goal of this research is to implement NNPCR in a real environment like Squid proxy server. In order to do so, we propose an improved strategy of NNPCR referred to as NNPCR-2. We show how the improved model can be trained with up to twelve times more data and gain a 5–10% increase in Correct Classification Ratio (CCR) than NNPCR. We implemented NNPCR-2 in Squid proxy server and compared it with four other cache replacement strategies. In this paper, we use 84 times more data than NNPCR was tested against and present exhaustive test results for NNPCR-2 with different trace files and neural network structures. Our results demonstrate that NNPCR-2 made important, balanced decisions in relation to the hit rate and byte hit rate; the two performance metrics most commonly used to measure the performance of web proxy caches.
Similar content being viewed by others
Notes
For HTTP Requests, this is also known as the Uniform Resource Locator (URL), but URI is the better, generic term to use here.
Many literatures also refer to this as the access counter; we found this to be vague, as it was commonly ambiguous with terms such as disk access, or access of the object’s information during sorting methods.
Essentially, any characteristic could be the request value, if the algorithm makes its decision based on one variable that has a total, well-defined ordering.
References
Podlipnig S, Boszormenyi L (2003) A survey of web cache replacement strategies. ACM Comput Surv 35(4):374–398
Davison B (2001) A web caching primer. IEEE Internet Comput 5(4):38–45
Romano S, ElAarag H (2008) A quantitative study of recency and frequency-based cache replacement strategies. Communication and Networking Simulation Symposium (CNS2008), Spring Simulation Multiconference, Ottawa, pp 70–78
Gan Q, Suel T (2009) Improved techniques for result caching in web search engines. In: Proceedings of the 18th international conference on World Wide Web, Spain, pp 431–440
Pallis G et al (2008) A Clustering-based prefetching scheme on a Web cache environment. Comput Electr Eng 34:309–323
Kumar C, Norris JB (2008) A new approach for a proxy-level web caching mechanism. Decis Support Syst 46(1):52–60
Chiang IR et al (2007) Periodic cache replacement policy for dynamic content at application server. Decis Support Syst 43:336–348
Ortiz JPG, Ruiz VG, Lopez MF, Garcia I (2008) Interactive transmission of JPEG2000 images using web proxy caching. IEEE Trans Multimedia 10(4):629–636
Liu J, Xu J (2004) Proxy caching for media streaming over the Internet. IEEE Commun Mag 42(8):88–94
Luo Q et al (2008) Form-based proxy caching for database-backed web sites: keywords and functions. VLDB J 17(3):489–513
Houtzager G, Jacob C, Williamson C (2006) An evolutionary approach to optimal web proxy cache placement. IEEE Congr Evolut Comput
Aguilar J, Leis EL (2006) A coherence-replacement protocol for web proxy cache systems. Int J Comput Appl 28(1):12–18
Fagni et al. (2006) Boosting the performance of web search engines: caching and prefetching query results by exploiting historical usage data. ACM Trans Inf Syst 24(1):51–78
Kaya CC et al (2009) An admission-control technique for delay reduction in proxy caching. Decis Support Syst 46(2):594–603
Katsaros D, Manolpoulos Y (2004) Web caching in broadcast mobile wireless environments. IEEE Internet Comput 8(3):37–44
Kumar N et al (2007) Supporting mobile decision making with association rules and multi-layered caching. Decis Support Syst 43:16–30
Sabegi et al. (2006) Using fuzzy logic to improve cache replacement decisions. Int J Comput Sci Netw Secur, 6(3A)
Calzarossa MC, Valli G (2003) A fuzzy Algorithm for web caching. Simul Ser J 35(4):630–636
Venketesh P et al (2009) A survey on applications of neural networks and evolutionary techniques in web caching. IETE Tech Rev 26(3):171–180
Khalid H (1997) A new cache replacement scheme based on backpropagation neural networks. ACM SIGARCH Comput Archit News 25(1):27–33
Pomerene J, Puzak TR, Rechtschaffen R, Sporacio F (1984) Prefetching mechanism for a high-speed buffer store, US Patent
Khalid H (1997) Performance of the KORA-2 cache replacement scheme. ACM SIGARCH Comput Archit News 25(4):17–21
Obaidat MS, Khalid H (1998) Estimating neural networks-based algorithm for adaptive cache replacement. IEEE Trans Syst Man Cybern B Cybern 28(4):602–611
Khalid H, Obaidat MS (1999) Application of neural networks to cache replacement. Neural Comput Appl J 8:246–256
Arlitt MF, Cherkasova L, Dilley J, Friedrich RJ, Jin TY (2000) Evaluating content management techniques for web proxy caches. ACM SIGMETRICS Perform Eval Rev 27(4):3–11
Bahn H, Koh K, Min SL, Noh SH (2002) Efficient replacement of nonuniform objects in web caches. IEEE Comput 35:65–73
Cao P, Irani S (1997) Cost-aware WWW proxy caching algorithms. In: Proceedings of USENIX symposium on internet technologies and systems, pp 193–206
Rhea SC, Liang K, Brewer E (2003) Value-based web caching. In: Proceedings of the 12th international conference on World Wide Web. ACM Press, pp 619–628)
Caceres R, Douglis F, Feldmann A, Glass G, Rabinovich M (1998) Web proxy caching: the devil is in the details. ACM SIGMETRICS Perform Eval Rev 26(3):11–15
Rizzo L, Vicisano L (2000) Replacement policies for a proxy cache. IEEE/ACM Trans Netw 8(2):158–170
Cobb W, ElAarag H (2008) Web proxy cache replacement scheme based on back propagation neural network. J Syst Softw 81:1539–1558 doi:10.1016/j.jss.2007.10.024
ElAarag H, Romano S (2009) Improvement of the neural network proxy cache replacement strategy. In: Communication and networking simulation symposium (CNS2009), Spring simulation multiconference, San Diego, pp 22–27
Wessels D (1995) Intelligent caching for World-Wide-Web objects. M.S. thesis, University of Colorado at Boulder, Boulder, CO
“Hypertext Transfer Protocol—HTTP/1.1”, Available at http://www.w3.org/Protocols/rfc2616/rfc2616.html
“What is Squid?”, Available at http://www.squid-cache.org/Intro/
Dilley J, Arlitt M, Perret S (1999) Enhancement and validation of Squid’s cache replacement policy. Internet Systems and Applications Laboratory, HP Laboratories, Palo Alto, California, HPL-1999-69
Tatarinov I (1998) An efficient LFU-like policy for Web caches. Tech. Rep. NDSU-CSORTR-98-01, Computer Science Department, North Dakota State University, Wahpeton, ND
Aggarwal CC, Wolf JL, Yu PS (1999) Caching on the world wide web. IEEE Trans Knowl Data Eng 11(1):94–107
“IRCache Home”, Available at http://www.ircache.net/
Reed RD, Marks RJ (1999) Neural smithing, supervised learning in feedforward artificial neural networks. The MIT Press, Massachusetts, pp 1–53
ElAarag H, Romano S (2009) Training of NNPCR-2: an improved neural network proxy cache replacement strategy. In: 2009 International symposium on performance evaluation of computer and telecommunication systems (SPECTS 2009), vol 41, pp 260–267
“GNU Wget”, Available at http://www.gnu.org/software/wget/
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Romano, S., ElAarag, H. A neural network proxy cache replacement strategy and its implementation in the Squid proxy server. Neural Comput & Applic 20, 59–78 (2011). https://doi.org/10.1007/s00521-010-0442-0
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00521-010-0442-0