Squid internals The Storage Manager (src/store*.c) Replacement Policies There is a 'generic' API for replacement policies Each storedir has a replacement policy object There is a replacement policy object for memory caching This allows the admin to choose the best replacement policies in a given situation This also allows the storedir code to enforce its own replacement policy (think a cyclic filesystem..) Currently there are two replacement policies avaliable LRU (simple double-linked list) Heap replacement