Skip to Main Content
Due to its native return channel and its ability to easily address each user individually an IPTV system is very well suited to offer on-demand services. Those services are becoming more popular as there is an undeniable trend that users want to watch the offered content when and where it suits them best. Because multicast can no longer be relied upon for such services, as was the case when offering linear-programming TV, this trend risks to increase the traffic unwieldy over some parts of the IPTV network unless caches are deployed in strategic places within it. Since caches are limited in size and the popularity of on-demand content is volatile (i.e., changing over time), it is not straightforward to decide which objects to cache at which moment in time. This paper introduces and studies a caching algorithm that tracks the popularity of objects to make intelligent caching decisions. We will show that when its parameters are set equal or close to their optimal values this algorithm outperforms traditional algorithms as LRU (least-recently used) and LFU (least-frequently used). After a generic study of the algorithm fed by a user demand model that takes the volatility of the objects into account we will discuss two particular cases of an on-demand service, video-on-demand and catch-up TV, for each of which we give guidelines on how to dimension their associated caches.