We examine a policy for managing modem pools that disconnects users only if not enough modems are available for other users to connect. Managing the modem pool then becomes a replacement problem, similar to buffer cache management (e.g., in virtual memory systems). When a new connection request is received, the system needs to find a user to "replace". In this paper we examine such demand-disconnect schemes using extensive activity data from actual ISPs. We discuss various replacement policies and propose CIRG: a novel replacement algorithm that is well suited for modem pools. In general, the choice of algorithm is significant. A naive algorithm (e.g., one that randomly replaces any user who has been inactive for a while) incurs many tens of percent more "faults" (i.e., disconnections of users who are likely to want to be active again soon) than the LRU algorithm, which, in turn, incurs 10% more faults than CIRG. For good replacement algorithms, the impact can be s...
Yannis Smaragdakis, Paul R. Wilson