# Optimal Content Caching in Content-Centric Networks

Authors: Faiza Qazi; Osman Khalid; Rao Naveed Bin Rais; Imran Ali Khan; Atta ur Rehman Khan
Journal: Wireless Communications and Mobile Computing
 (2019)

---

## Abstract

Content-Centric Networking (CCN) is a novel architecture that is shifting host-centric communication to a content-centric infrastructure. In recent years, in-network caching in CCNs has received significant attention from research community. To improve the cache hit ratio, most of the existing schemes store the content at maximum number of routers along the downloading path of content from source. While this helps in increased cache hits and reduction in delay and server load, the unnecessary caching significantly increases the network cost, bandwidth utilization, and storage consumption. To address the limitations in existing schemes, we propose an optimization based in-network caching policy, named asopt-Cache, which makes more efficient use of available cache resources, in order to reduce overall network utilization with reduced latency. Unlike existing schemes that mostly focus on a single factor to improve the cache performance, we intend to optimize the caching process by simultaneously considering various factors, e.g., content popularity, bandwidth, and latency, under a given set of constraints, e.g., available cache space, content availability, and careful eviction of existing contents in the cache. Our scheme determines optimized set of content to be cached at each node towards the edge based on content popularity and content distance from the content source. The contents that have less frequent requests have their popularity decreased with time. The optimal placement of contents across the CCN routers allows the overall reduction in bandwidth and latency. The proposed scheme is compared with the existing schemes and depicts better performance in terms of bandwidth consumption and latency while using less network resources.


---

## Body

## 1. Introduction

### 1.1. Background

With the emergence of new network applications and user requirements, there is a significant paradigm shift from traditional communication mechanisms to novel solutions. Tremendous growth in the number of users and user specific applications has evolved content-oriented and personalized information services to be the prevailing trend of network development [1]. The Internet has become largely a distribution network with massive amounts of video and web page content flowing from content providers to viewers. Internet users today demand more efficient, faster, and secure access to the data without being interested to know the physical location of content. The content-specific requirements motivated the development of a content-aware infrastructure, which has been addressed to a certain extent through various solutions, such as CDN, P2P, and HTTP proxies, deployed on top of the current Internet [2]. However, the Internet architecture is traditionally host-centric and therefore cannot satisfy the growing content access requirements due to its lack of native support for the content-oriented data distribution service [1]. Such limitations brought a shift in network communication paradigm from location-based to content-based model.Content-Centric Networking (CCN) is gradually evolving as an alternative approach to the conventional Internet architecture and is designed to be data-centric rather than the location-centric [1, 2]. The CCN rebuilds the Internet’s forwarding mechanism around the concept of content where nodes can issueInterest packets that are forwarded to content sources that can, in return, respond with thedata packets. Each content is assigned a global identifier that all the network entities within an ICN can comprehend, which allows any router to cache data packets and, subsequently, serve future requests via its cache, rather than reforwarding theInterest to the origin of content. A classification of CCN and some important related challenges are presented in [3]. CCNs are designed to integrate with other application domains, e.g., edge computing, vehicular networks, Internet of Things (IoT), which can play supportive roles to augment CCNs in their functionality [4–6]. For instance, Li et al. proposed fog-enabled edge learning for cognitive CCN [4]. Fog computing-enabled content-centric 5G networks inherit the advantages of fog computing and content centricity [4]. The authors proposed an architecture that employs fog computing to elevate the cognitive ability of the CCN in order to realize context-awareness, timely response, and traffic offloading for 5G applications. In [5], the authors proposed a collaborative caching scheme to enable information-centric ability in IoT, which is beneficial for better connecting the devices and providing cooperative caching in fog computing. The authors in [6] proposed an architecture that combines Mobile Edge Computing with CCN in the context of connected vehicle environments, to achieve less response time for resource intensive services in fast changing networks. Figure 1 shows some of the areas where CCN can be deployed with existing supportive technologies.Figure 1
The supportive role of other communication technologies with CCN.


### 1.2. CCN Caching

Ubiquitous in-network caching of content is a key feature of CCN that allows nodes on the request path to temporarily store a copy of the content requested from the original source [1]. This increases the content availability closer to the users, thereby reducing the response time of user’s requests. However, in-network caching also encompasses various challenges including network topology complexity, limitations of cache placement and replacement policies, request routing, and caching traffic, to name a few. All these issues affect the performance of in-network caching [7, 8]. A content placement policy decides where and what content (or part of content) in the delivery path across the routers should be cached [1]. The default content placement policy caches a copy of content on each router along the downloading path [1, 9]. This avoids the need for routingInterestpackets for the same content in future, thereby reducing delay and server load. However, the default caching policy is not resource-efficient and will cause huge caching redundancy cost due to storage of every content on each router, even if the same content is available at all neighboring nodes in the vicinity. For instance, it is reported in [9] that a CCN router with 10 TB cache space using Flash-based Solid-State Drives (SSDs) would cost $300,000 and consume 500 W of power.


### 1.3. Motivation

There are numerous research applications of content caching in wireless networks that includes, but not limited to (a)content floating, in which specific tagged content is cached into some nodes confined within a specific geographic location [10], and the content is deleted from the nodes when they go out of the region; (b)opportunistic data centers, in which wireless nodes assembled in a group share their cache space to form only fly data centers to store content on the behalf of other nodes [11]; and (c)mobile ad hoc network based caching, in which the content is cached on mobile nodes in an ad hoc network based on consideration of multivalued attributes [12]. All the aforementioned applications of caching in the wireless environments lead to numerous challenges and open issues due to the uncertain conditions in wireless networks.In the past few years, a number of caching schemes have been proposed in the literature, e.g., [5, 6, 9, 12, 13]. The coordination based schemes, such as [12, 13], share the network control information among nodes to coordinate for cache decisions. The coordination improves caching with diversity of contents and significantly reduces the redundancy, but with a tradeoff of control traffic overhead. The explicit cache coordination schemes, such as [14] assume that every router has prior knowledge of network topology, cache’s state, and access frequency [13, 15]. These schemes reduce the cache redundancy to greater extent but introduce higher computational complexity. Moreover, explicit caching schemes do not take advantage of content knowledge, e.g., content popularity during caching. Alternatively, implicit caching schemes (e.g., [16]) require little control information exchange among nodes thus reducing the network overhead cost. Such schemes may either store content on a single router on the delivery path, or popular content may be redundantly stored on most nodes on the network [13, 15]. This may lead to underutilized spaces on the network or high content redundancy. To reduce the coordination cost, a few probabilistic schemes are proposed in which a node probabilistically makes individual decision whether or not to store the content. The scheme such asProbCache [17] caches content probabilistically to reduce the redundancy, but with the tradeoff of cache miss. In contrast, the scheme, such as Leave Copy Everywhere (LCE) [2, 18] stores all the content to be delivered, and replace these content in the Least Recently Used (LRU) order. However, this approach consumes greater amount of buffer space, as each content is stored on every router along the path. The main objective of the scheme presented in [19] is to reduce cache redundancy using off-path central router, which attempts to improve the network performance in terms of content duplication and transmission delay. However, excessive bandwidth utilization for each caching update (cached, replaced, or dropped) is required by CCN routers to update the CCN Manager. Authors in [20] proposed a “Cache Strategy in Content Centric Networks based on Node’s Importance.” Most popular contents are placed at most important node in the network, where the importance of a node is calculated by its flow rate, which is based on number of users accessing node, request rate of content at node, and distance of the node from the rest of nodes in the network. However, the proposed scheme only focused on the geographical connectivity of the node and ignores content distribution in the network.In all of the above discussed policies, we can find a tradeoff among content redundancy, bandwidth utilization, hop reduction, latency, and cache hits. Addressing one factor may affect the performance of other parameter(s). Although the content popularity and hop reduction in CCN have been discussed in some of the existing caching policies, such as [17, 19–26], the bandwidth consumption is still not optimal. Therefore, there is a need to devise an optimal caching strategy to increase the content availability while consuming minimum possible resources.


### 1.4. Contributions

The objective of this paper is to propose an optimization-based in-network caching policy, named asopt-Cache, which makes more efficient use of available cache resources, in order to reduce overall network utilization with reduced latency. Unlike existing schemes that mostly focus on a single factor to improve the cache performance, we intend to optimize the caching process by simultaneously considering various factors, e.g., content popularity, bandwidth, and latency, under a given set of constraints, e.g., available cache space, content availability, and careful disposal of existing contents in the cache. Our scheme determines optimized set of content to be cached at each node towards the edge based on content popularity and content distance from the content source. The proposed scheme aims to keep the content that are more popular for longer duration in the cache and those content that have less frequent requests; their popularity is decreased with time. Such optimal placement of contents across the CCN routers allows the overall reduction in bandwidth and latency.The following are our main contributions of this paper:(i)
We propose an optimized caching policy, named asopt-Cache that reduces the content retrieval latency by caching content near the user at the edge.(ii)
We design an in-network caching mechanism that jointly considers content popularity and hop reduction to reduce bandwidth consumption.(iii)
Theopt-Cache caches popular content for longer time and therefore decreases the cache operation.(iv)
To demonstrate the effectiveness ofopt-Cache, we perform simulation in Icarus [18], an ICN simulator specifically designed for analyzing caching and routing polices in ICN. We compareopt-Cache against existing caching polices using GEANT [18] a real-world internet topology. We study the impact of various parameters such as cache size, content popularity, and stretch on our policy. We find a significant improvement in latency, cache hit ratio, stretch, and link load as compared to the existing schemes.The rest of the paper is organized as follows. In Section2, we present the most relevant work. The system model is presented in Section 3. In Section 4 we present the results and discussions, and finally Section 5 presents conclusion and future work.


## 1.1. Background

With the emergence of new network applications and user requirements, there is a significant paradigm shift from traditional communication mechanisms to novel solutions. Tremendous growth in the number of users and user specific applications has evolved content-oriented and personalized information services to be the prevailing trend of network development [1]. The Internet has become largely a distribution network with massive amounts of video and web page content flowing from content providers to viewers. Internet users today demand more efficient, faster, and secure access to the data without being interested to know the physical location of content. The content-specific requirements motivated the development of a content-aware infrastructure, which has been addressed to a certain extent through various solutions, such as CDN, P2P, and HTTP proxies, deployed on top of the current Internet [2]. However, the Internet architecture is traditionally host-centric and therefore cannot satisfy the growing content access requirements due to its lack of native support for the content-oriented data distribution service [1]. Such limitations brought a shift in network communication paradigm from location-based to content-based model.Content-Centric Networking (CCN) is gradually evolving as an alternative approach to the conventional Internet architecture and is designed to be data-centric rather than the location-centric [1, 2]. The CCN rebuilds the Internet’s forwarding mechanism around the concept of content where nodes can issueInterest packets that are forwarded to content sources that can, in return, respond with thedata packets. Each content is assigned a global identifier that all the network entities within an ICN can comprehend, which allows any router to cache data packets and, subsequently, serve future requests via its cache, rather than reforwarding theInterest to the origin of content. A classification of CCN and some important related challenges are presented in [3]. CCNs are designed to integrate with other application domains, e.g., edge computing, vehicular networks, Internet of Things (IoT), which can play supportive roles to augment CCNs in their functionality [4–6]. For instance, Li et al. proposed fog-enabled edge learning for cognitive CCN [4]. Fog computing-enabled content-centric 5G networks inherit the advantages of fog computing and content centricity [4]. The authors proposed an architecture that employs fog computing to elevate the cognitive ability of the CCN in order to realize context-awareness, timely response, and traffic offloading for 5G applications. In [5], the authors proposed a collaborative caching scheme to enable information-centric ability in IoT, which is beneficial for better connecting the devices and providing cooperative caching in fog computing. The authors in [6] proposed an architecture that combines Mobile Edge Computing with CCN in the context of connected vehicle environments, to achieve less response time for resource intensive services in fast changing networks. Figure 1 shows some of the areas where CCN can be deployed with existing supportive technologies.Figure 1
The supportive role of other communication technologies with CCN.


## 1.2. CCN Caching

Ubiquitous in-network caching of content is a key feature of CCN that allows nodes on the request path to temporarily store a copy of the content requested from the original source [1]. This increases the content availability closer to the users, thereby reducing the response time of user’s requests. However, in-network caching also encompasses various challenges including network topology complexity, limitations of cache placement and replacement policies, request routing, and caching traffic, to name a few. All these issues affect the performance of in-network caching [7, 8]. A content placement policy decides where and what content (or part of content) in the delivery path across the routers should be cached [1]. The default content placement policy caches a copy of content on each router along the downloading path [1, 9]. This avoids the need for routingInterestpackets for the same content in future, thereby reducing delay and server load. However, the default caching policy is not resource-efficient and will cause huge caching redundancy cost due to storage of every content on each router, even if the same content is available at all neighboring nodes in the vicinity. For instance, it is reported in [9] that a CCN router with 10 TB cache space using Flash-based Solid-State Drives (SSDs) would cost $300,000 and consume 500 W of power.


## 1.3. Motivation

There are numerous research applications of content caching in wireless networks that includes, but not limited to (a)content floating, in which specific tagged content is cached into some nodes confined within a specific geographic location [10], and the content is deleted from the nodes when they go out of the region; (b)opportunistic data centers, in which wireless nodes assembled in a group share their cache space to form only fly data centers to store content on the behalf of other nodes [11]; and (c)mobile ad hoc network based caching, in which the content is cached on mobile nodes in an ad hoc network based on consideration of multivalued attributes [12]. All the aforementioned applications of caching in the wireless environments lead to numerous challenges and open issues due to the uncertain conditions in wireless networks.In the past few years, a number of caching schemes have been proposed in the literature, e.g., [5, 6, 9, 12, 13]. The coordination based schemes, such as [12, 13], share the network control information among nodes to coordinate for cache decisions. The coordination improves caching with diversity of contents and significantly reduces the redundancy, but with a tradeoff of control traffic overhead. The explicit cache coordination schemes, such as [14] assume that every router has prior knowledge of network topology, cache’s state, and access frequency [13, 15]. These schemes reduce the cache redundancy to greater extent but introduce higher computational complexity. Moreover, explicit caching schemes do not take advantage of content knowledge, e.g., content popularity during caching. Alternatively, implicit caching schemes (e.g., [16]) require little control information exchange among nodes thus reducing the network overhead cost. Such schemes may either store content on a single router on the delivery path, or popular content may be redundantly stored on most nodes on the network [13, 15]. This may lead to underutilized spaces on the network or high content redundancy. To reduce the coordination cost, a few probabilistic schemes are proposed in which a node probabilistically makes individual decision whether or not to store the content. The scheme such asProbCache [17] caches content probabilistically to reduce the redundancy, but with the tradeoff of cache miss. In contrast, the scheme, such as Leave Copy Everywhere (LCE) [2, 18] stores all the content to be delivered, and replace these content in the Least Recently Used (LRU) order. However, this approach consumes greater amount of buffer space, as each content is stored on every router along the path. The main objective of the scheme presented in [19] is to reduce cache redundancy using off-path central router, which attempts to improve the network performance in terms of content duplication and transmission delay. However, excessive bandwidth utilization for each caching update (cached, replaced, or dropped) is required by CCN routers to update the CCN Manager. Authors in [20] proposed a “Cache Strategy in Content Centric Networks based on Node’s Importance.” Most popular contents are placed at most important node in the network, where the importance of a node is calculated by its flow rate, which is based on number of users accessing node, request rate of content at node, and distance of the node from the rest of nodes in the network. However, the proposed scheme only focused on the geographical connectivity of the node and ignores content distribution in the network.In all of the above discussed policies, we can find a tradeoff among content redundancy, bandwidth utilization, hop reduction, latency, and cache hits. Addressing one factor may affect the performance of other parameter(s). Although the content popularity and hop reduction in CCN have been discussed in some of the existing caching policies, such as [17, 19–26], the bandwidth consumption is still not optimal. Therefore, there is a need to devise an optimal caching strategy to increase the content availability while consuming minimum possible resources.


## 1.4. Contributions

The objective of this paper is to propose an optimization-based in-network caching policy, named asopt-Cache, which makes more efficient use of available cache resources, in order to reduce overall network utilization with reduced latency. Unlike existing schemes that mostly focus on a single factor to improve the cache performance, we intend to optimize the caching process by simultaneously considering various factors, e.g., content popularity, bandwidth, and latency, under a given set of constraints, e.g., available cache space, content availability, and careful disposal of existing contents in the cache. Our scheme determines optimized set of content to be cached at each node towards the edge based on content popularity and content distance from the content source. The proposed scheme aims to keep the content that are more popular for longer duration in the cache and those content that have less frequent requests; their popularity is decreased with time. Such optimal placement of contents across the CCN routers allows the overall reduction in bandwidth and latency.The following are our main contributions of this paper:(i)
We propose an optimized caching policy, named asopt-Cache that reduces the content retrieval latency by caching content near the user at the edge.(ii)
We design an in-network caching mechanism that jointly considers content popularity and hop reduction to reduce bandwidth consumption.(iii)
Theopt-Cache caches popular content for longer time and therefore decreases the cache operation.(iv)
To demonstrate the effectiveness ofopt-Cache, we perform simulation in Icarus [18], an ICN simulator specifically designed for analyzing caching and routing polices in ICN. We compareopt-Cache against existing caching polices using GEANT [18] a real-world internet topology. We study the impact of various parameters such as cache size, content popularity, and stretch on our policy. We find a significant improvement in latency, cache hit ratio, stretch, and link load as compared to the existing schemes.The rest of the paper is organized as follows. In Section2, we present the most relevant work. The system model is presented in Section 3. In Section 4 we present the results and discussions, and finally Section 5 presents conclusion and future work.


## 2. Related Work

Network caching policies in CCN have attracted the attention of many researchers in the recent years. Although parameters such as content popularity and hop reduction in content caching have been dealt in some existing policies, such as [8, 18, 27, 28], yet bandwidth consumption still needs some attention. Caching scheme, such as Leave Copy Down (LCD), copies the content at the direct neighbor of requesting node after a cache hit occurs [18, 29]. The LCD algorithm is aimed at keeping content as closer to user as possible. Psaras et al. [17] focus on the distribution of content in the routers’ cache using the in-network caching concept. The authors propose aProbCache scheme that caches content probabilistically to efficiently manage cache resources by reducing cache redundancy. The scheme allows caching space to other traffic sharing the same path. TheProbCache prefers keeping large cache at edge. However, content popularity distribution is not considered by the scheme. Moreover, theProbCache incurs high computational cost.Xu et al. proposed an energy efficient information-centric multimedia streaming framework for vehicular networks (GrIMS) [30]. The authors adopted a multiple windows’ queuing model with differentiated service rates to characterize the multimedia retrieval in heterogeneous wireless vehicular ad hoc networks (VANETs). First, the authors model a cost optimization model to address the tradeoffs between energy efficiency and quality of experience (QoE). However, in real-world scenarios solving such models becomes practically infeasible due to time varying conditions, e.g., mobility of vehicles. Therefore, the authors propose a set of heuristic algorithms to achieve both high QoE levels and energy saving in GrIMS’s cloud-based processing, multipath selection, and in-network caching context.In [31], the authors proposed an ICN based cooperative caching solution for multimedia delivery in VANETs. The paper focuses on exploring the potential social cooperation among neighbor vehicles in highway to improve the utilization of caching resources. The authors proposed a highway traffic model with multiple lanes and considered two types of vehicles in context of social based cooperative caching, the partners and couriers, jointly based on location and lane information. The proposed model aims at maximizing video playback quality without excessive startup delay and minimizing the playback freezing ratio. Quan et al. proposed a CCN-customized lookup engine that utilizes Tree-Bitmap and Bloom-Filter mechanisms to significantly reduce the lookup time [32]. The proposed approach splits the CCN prefix into a constant size T-segment and a variable length B-segment with a relative short length, which are treated using TB and BF, respectively. In a similar proposal, Quan et al. proposed a name lookup solution with adaptive prefix bloom filter (NLAPB) in which each NDN name/prefix is split into B-prefix followed by T-suffix [33]. B-prefix is matched by Bloom filters whereas T-suffix is processed by the small-scale trie. The length of B-prefixes (and T-suffixes) is dynamically adjusted based on their popularity in order to accelerate the lookup. The proposed approach reduces the lookup time significantly.In [34], the authors consider the problem of content delivery in fog architecture with time varying content popularity. The authors perform an information theoretic analysis to optimize front-haul link capacity, cache storage, and wireless bandwidth. A high-SNR latency metric is adopted to capture the performance of online cache design. The serial transmission mode is considered initially where edge nodes start transmission on the wireless channel after completion of cloud to edge node transmission. Then, pipeline delivery mode is investigated that allows simultaneous transmission and reception of information by edge nodes. The authors concluded that the rate of front-haul link sets fundamental limit on the achievable latency performance. The authors in [35] perform information-theoretic formulation of caching problem that utilizes coded caching approach to achieve global caching gain, in addition to local caching gain. The gain depends on aggregate global cache size, and is derived from jointly optimizing the content placement and delivery phases, so as to satisfy different delivery demands with a single multicast coded transmission.Femminella et al. proposed an architecture based on distributed caching for the distribution of dynamic sensor data [36]. The authors utilized NetServ hosting environment to perform service modularization and virtualization of network nodes, implemented with an aim of extending the functions of network nodes. The information collected from a number of distributed sensors is made available to a large number of recipients/software components at almost real-time, e.g., augmented reality servers, security engines, fault recovery applications, etc. The simulation results indicate a downward trend in latency and overall network traffic. In [37], the authors discuss various insights of caching or replicating genome data set to provide guidelines for the improvement and optimization of genome content distribution. The authors analyze the main genome processing applications, and classify genome workflow computation alternatives as either a location machine or a distributed cloud. The authors also discuss the main networking topologies available to efficiently support the genome as a service (GaaS) solution. The authors highlight the challenges accompanied with the temporal evolution of genome content popularity, and suggest that special investigations for managing data storage could significantly contribute to the optimization of genomic content distribution. The authors argue that discovery of hidden relationships between different data sets could allow anticipating popularity variations in of some of them, thus facilitating the management of geographically distributed replicas. Moreover, the security and privacy issues in genome data caching are also touched. Due to existence of personal information in genome data, the authors conclude that caching or replication of genomics datasets seems feasible only for anonymized contents for which informed consent has been issued.In [19], the authors propose cooperative caching policy where on-path caching is facilitated by off-path routers that are strategically placed by service provider. However, the bandwidth utilization of the proposed scheme is very high, because all the edge routers have to send their state information to ICN manager. Works proposed by [20, 21] investigate that caching only at a subset of node(s) along the content delivery path can improve in-network caching performance in terms of cache and server hit. To overcome the limitation of LCE, a native caching policyCache Less for More (CL4M) is proposed by Wei Koong Chai et al. [21]. The proposed scheme caches at only one chosen intermediate node for each request along the delivery path. The concept of betweenness centrality is used, which is a measure of number of times a specific node resides on the shortest delivery path for all pairs of nodes in a network topology. Caching at such node will not only minimize cache replacement but also increase cache hit ratio by caching where cache hit is most probable to happen. Latency-aware caching (LAC) is proposed in [22] to reduce average latency to retrieve content from any router. It determines a set of content to be cached at each node in the network [22]. Based on request rate of a content from users, the scheme starts caching the most popular content at network edge. After caching content at edge, the algorithm recalculates the relative popularity of the content based on request miss from downstream to cache content in core.Ren et al. [23] propose a distributed caching scheme of ICNs that reduces bandwidth consumption and limit cache operations by considering input/output operations of cache storage. APC [38] supports energy attempts to target efficient content distribution by reducing the hop count and caching only the frequently requested content by considering the available cache space. However, the scheme is compared only with LCE and lacks the theoretical details and supporting simulation results. In [39], theCachinMobile is proposed in which the energy consumption is minimized by using Device to Device (D2D) communication. Various potential issues related to dynamic mobility, bandwidth resource scheduling and interference management are ignored. The research in [40] utilizes user mobility and trajectories’ information for proactive and adaptive caching at Base Stations and User Terminals. Future position of the user can provide seamless handover and content download for user in case of proactive caching. However, as user terminals are growing enormously, collecting data for all the users for adaptive caching can be challenging. Moreover, motivating the users to use D2D communication is challenging.The authors in [41] argue that it is not necessary for a node to have a higher graph connectivity to cache content optimally. To find a node that can cache large number of content, they propose a content-based centrality metric that takes into account how well a node is connected to the network content. The most frequently accessed content are placed at a node with highest Content Base Centrality (CBC), where CBC of a node N is defined as the ratio between the numbers of shortest paths among all users through which the content traverse via nodeN, to the total number of shortest paths through which content traverse among users. However, the proposed scheme only focuses on content distribution and ignores geographical location of the node. In [13], the authors have proposed a Multiattribute Caching (MAC) strategy that computes the rank of a content by computing the weighted sum of multiple attributes, such as hop count/distance, content popularity, degree of node, and available cache space. The weights are set to be adaptive and are computed accordingly to the overall network condition. In another proposal, the same authors proposed a caching strategy for mobile ad hoc networks [12]. The optimal node for content placement is selected using the weighted approached presented in [13, 15]. The weights are made adaptive to network conditions using backpropagation method. The new caching node is selected if the previous node moves to a disconnected region. However, in both the aforementioned schemes [12, 13], optimization is not used.The authors in [24, 25] propose content caching schemes for Vehicular Ad hoc Networks (VANET) using ICNs. In [24], the main objective is to reduce cache redundancy and lower caching replacement overhead. In [25], the authors propose an ICN based cost-efficient multimedia delivery model for VANET. However, the data collection due to high mobility in dynamic topology is challenging in these strategies. Moreover, finding an energy efficient route between source and destination is also challenging. In [26], the authors investigate the challenging issue of scalable video streaming in ICN. The proposed scheme improves the user’s QoE by providing requested content quickly. However, the scheme lacks the parameter, such as received video quality.In all of the above policies, limited attention has been given on cache frequency reduction and hence saving of bandwidth and minimizing content’ retrieval latency are ignored. The objective of our proposed scheme is to keep the popular content in the cache for longer time to increase hit ratio and reduce server access. In the next section, we present an overview of our proposedopt-Cache scheme.


## 3. System Model

In this section, we present the overall architecture of the proposed scheme along with its major components description. We also provide the message types supported by the proposed scheme.


### 3.1. Major Components

We model a CCN network as a connected graphG=(V,E), consisting of V=V1,V2,V3,…,Vn nodes and E=e1,e2,e3,…,em links. Let F=f1,f2,f3,…,fk be the set of available content and S=S1,S2,S3,…,Sr be the set of servers in the network. Initially, all contents are assumed to be available only at the network servers, which are directly connected to routers. Following are the major components of the proposedopt-Cache scheme.(i) End Nodes/Users. A CCN user is the request originator. It initiates the request and forwards to the connected edge routers. A user sends anInterest packet for the interested content over an available connection. Any party receiving theInterest packet and having data that matches theInterest packet may transmit matching content using Data packet to the user.(ii) CCN Routers. CCN routers are standard routers with added caching capabilities. Each CCN router is provided with extra storage space to cache content passing through it, which enables it to serve the subsequent requests for the same content from its local cache. Delivery of requested content must be ensured either by CCN router or source server. In our proposed caching method, if the cache of the CCN router is full, then the Least Recently Used (LRU) cache policy is incorporated to cache the newly arrived content. Each node has three data structures: Pending Interest Table (PIT), Forwarding Interest Base (FIB), and Content Store (CS) [20] as shown in Figure 2.Figure 2
Data flow with-in CCN.(iii) End Nodes/Source. With respect to CCN content, there are two types of sources, CCN routers and CCN servers. CCN servers are the content originators or permanent source of content whereas CCN-Fog routers store content temporarily in local cache.


### 3.2. Assumptions

For simplicity’ we assume that the cached content have same size [17, 22]. To get the popularity of the requested content, each intermediate router counts the frequency of the requested content [18]. Each caching node can obtain hop count, i.e., the number of hops from it to the original server with the help of TTL associated with data packet. For the rest of the paper’ we use word “router” or “cache node,” interchangeably. Table 1 shows the definitions of the notations used in the paper.Table 1
Notations and their meanings.
Parameters Meaning V Set of routers in the network F Set of content items F N Set of content items in a nodeN λ ( f ,  v ) Request rate off∈F at v∈V C i ( v ) Available cache size of nodev∈V S i z e ( f ) Size of the contentf∈F S r c ( f ) Original source forf∈F D ( u ,  v ) Distance between request and source node in number of hop count Rh Number of nodes the request traversed from requestor to source Ch Number of hops, the content traversed during content delivery T(f,u,v) Time consumed by nodeu to download content f from node v  Decision Variables  X(u,f) Takes value1 if node u caches copy of content fk and 0 otherwise Y(f,v,u) Takes value1 if node u downloads a copy of content fk from v, and 0 otherwise


### 3.3. Optimization Framework

The objective of the proposedopt-Cache scheme is to reduce the resource consumption in obtaining the requested content. We address the problem of how a router with limited caching capacity caches content in the network to minimize latency and bandwidth utilization. Therefore, we model the objective function as a minimization problem for optimal content placement, as indicated in(1a)min⁡∑v∈V∑f∈Fλf,v×∑u∈VTf,u,v·Yf,v,u,s.t.(1b)∑f∈FXu,f×sizef≤Civ,∀v∈V(1c)Yf,u,v≤Xu,f,∀u,v,f(1d)∑u∈VYf,u,v=1,∀v,k(1e)Xf,v=0,1,Yf,u,v=0,1,∀f,u,vIn the network, any node v may request the content f with a rate λ that may take T time units in transferring from source to the requesting node. Whether or not the particular content f is downloaded for caching depends on the value of binary decision variable Y. With this caching policy, (1a) represents our objective function to minimize overall distance of contents from the requesting nodes, thereby reducing the latency, (1b) describes the constraint for finite cache size at each router, (1c) indicates that a node can download the copy of a content to cache, only if the content is available in the source node, (1d) signify that each request must be entertained by at least one router, and finally (1e) indicates the possible values of decision variables.In (1a), (1b), (1c), (1d), and (1e), we want to minimize the overall distance of content from the requesting node, by making use of request rate and time. In simple words, the product ofrequest rate for a content andtime consumed by a node to request content from source gives the distance measure, which we want to minimize. Since we want to minimize the overall distance, thus latency, therefore, the content will be downloaded from the source and will be cached on a node that will reduce overall latency. To achieve our objective of minimizing latency for all requests, we need to decide on whether to cache the requested content or not, subject to the large number of content in the network and finite cache capacity of the node. With a limited cache size, each router while serving an Interest packet intelligently decides whether or not to cache the requested content and what the best possible location to cache the content is. Basically, problems (1a), (1b), (1c), (1d), and (1e) define our objective function that we want to optimize, i.e., to reduce the overall cache latency time, by placing the desired contents near to the requesting nodes. However, it is difficult to solve the afore-stated optimization problem in a centralized and globally valid way because the variables that feed the problem are time-varying. The randomness in the requests and the dynamically changing available cache sizes, content sizes, and bandwidth makes it difficult to solve the optimization problem as once if the solution is found, the conditions are already changed and the solution cannot be applied to the system. Therefore, a heuristic algorithm (Algorithm 1) is utilized to achieve the nearest optimal solution that makes use (2), which represents the objective of problems (1a), (1b), (1c), (1d), and (1e), i.e., to place the frequently requested content at the minimum distance from the requesting node and thus to reduce the overall latency.Algorithm 1:On-path content caching on CCN router.
( 01 ) Available cache size=Ci; ( 02 ) For a request for content f (k), do the following ( 03 ) Update maximum rate of request: λ(f,v)max ( 04 ) Update maximum possible hops D(v,u)max ( 05 )  if cache hit on router then ( 06 )  C G P  f = λ  ( f , v ) λ ( f , v ) m a x × D ( v , u ) D ( v , u ) m a x × C h R h. ( 07 )  else ( 08 )  C G P  f = 1 λ ( f , v ) m a x × D ( v , u ) D ( v , u ) m a x × C h R h  . ( 09 )  C G P f = C G P ( f ) + 1 - C G P ( f ) × P i n i t  // Update CGP of the accessed content ( 10 )  C G P j = C G P ( j ) + γ k // Update the CGP of rest of contents ( 11 )  end if ( 12 )  i f   C i > 0 then ( 13 ) cache content f (k) ( 14 )  else i f   C i = = 0 then ( 15 )  if C G P ( f ) ≥ min ⁡ C G P j }, ∀j∈FNthen ( 16 ) cache contentf ( 17 )  end if ( 18 )  end if ( 19 )  end ifTo achieve that, each CCN router may store frequently-requested content by users to increase probability of hit. Further to minimize transmission delay, each router may cache content from a distant source. Based on above mechanism, each on-path router computes Cache Gain Probability (CGP) of contentf for each caching content using following formula and compares it with the score of existing cached content:(2)CGPf=λf,vλf,vmax×Dv,uDv,umax×ChRh.where λ(f,v) is the request rate of content f at nodev and Dv,u is the distance traversed by the content to reach node v from nodeu, i.e., the number of hop counts traversed. The parameter D(v,u) can be obtained with the help of TTL associated with data packet. λ(f,v) is normalized request rate of content (normalized with maximum request rate λ(f,v)max of cached content). λ(f,v)max is the maximum rate of requests at router at any instance of time. It is the maximum frequency of a request recorded by a router for a contentf, and D(v,u)max is maximum hop count traversed by the content to reach node v from node u. If the cached content is served through the node adjacent to the requesting node, then Dv,u=1 and λnew(f,v) = λf,v/λ(f,v)max + 1/λ(f,v)max. If a new content (not cached) is served, then λf,v=1/λ(f,v)max and D(v,u) is normalized hop count for this node. In case a content is cached at CCN router, λ(f,v) increases linearly for every new request for the same content. If a content that is not cached at CCN router is served, then its λf,v=1. Equation (2) aims to assign the priority to content based on their popularity and distance from the original source, thereby, caching a more popular content, with higher request rate, from a distant source to the nearest possible nodes. Such mechanism will in fact reduce the distance and thus latency as defined in (1a), (1b), (1c), (1d), and (1e). As the content is placed near the requesting node, the cache gain probability of the content increases, as the number of hops traversed will be decreased.Furthermore, every time a cache hit occurs, we update theCGP off so that content that are frequently accessed have high CGP. The following is used to update CGP, where Pinitϵ(0,1) is initialization constant:(3)CGPf=CGPf+1-CGPf×Pinit.Similarly’ CGP of the other contents that are not accessed must be aged with their value being reduced in the process. In the following, γϵ(0,1) is the aging constant and k is the number of time units elapsed since the last time the metric was aged:(4)CGPj=CGPj+γk.The proposed heuristic method for on-path caching is presented in the Algorithm 1 which runs on a CCN router on receiving request.


### 3.4. Complexity Analysis of Algorithm1

Algorithm1 follows a simple linear time complexity class. Each statement is iterated once from Line (2) to Line (14); therefore, the complexity is O1. At Line (15), the contents stored on a node are iterated once, with a complexity of OFN. This makes the overall complexity of Algorithm 1 of the order O(|FN|).


## 3.1. Major Components

We model a CCN network as a connected graphG=(V,E), consisting of V=V1,V2,V3,…,Vn nodes and E=e1,e2,e3,…,em links. Let F=f1,f2,f3,…,fk be the set of available content and S=S1,S2,S3,…,Sr be the set of servers in the network. Initially, all contents are assumed to be available only at the network servers, which are directly connected to routers. Following are the major components of the proposedopt-Cache scheme.(i) End Nodes/Users. A CCN user is the request originator. It initiates the request and forwards to the connected edge routers. A user sends anInterest packet for the interested content over an available connection. Any party receiving theInterest packet and having data that matches theInterest packet may transmit matching content using Data packet to the user.(ii) CCN Routers. CCN routers are standard routers with added caching capabilities. Each CCN router is provided with extra storage space to cache content passing through it, which enables it to serve the subsequent requests for the same content from its local cache. Delivery of requested content must be ensured either by CCN router or source server. In our proposed caching method, if the cache of the CCN router is full, then the Least Recently Used (LRU) cache policy is incorporated to cache the newly arrived content. Each node has three data structures: Pending Interest Table (PIT), Forwarding Interest Base (FIB), and Content Store (CS) [20] as shown in Figure 2.Figure 2
Data flow with-in CCN.(iii) End Nodes/Source. With respect to CCN content, there are two types of sources, CCN routers and CCN servers. CCN servers are the content originators or permanent source of content whereas CCN-Fog routers store content temporarily in local cache.


## 3.2. Assumptions

For simplicity’ we assume that the cached content have same size [17, 22]. To get the popularity of the requested content, each intermediate router counts the frequency of the requested content [18]. Each caching node can obtain hop count, i.e., the number of hops from it to the original server with the help of TTL associated with data packet. For the rest of the paper’ we use word “router” or “cache node,” interchangeably. Table 1 shows the definitions of the notations used in the paper.Table 1
Notations and their meanings.
Parameters Meaning V Set of routers in the network F Set of content items F N Set of content items in a nodeN λ ( f ,  v ) Request rate off∈F at v∈V C i ( v ) Available cache size of nodev∈V S i z e ( f ) Size of the contentf∈F S r c ( f ) Original source forf∈F D ( u ,  v ) Distance between request and source node in number of hop count Rh Number of nodes the request traversed from requestor to source Ch Number of hops, the content traversed during content delivery T(f,u,v) Time consumed by nodeu to download content f from node v  Decision Variables  X(u,f) Takes value1 if node u caches copy of content fk and 0 otherwise Y(f,v,u) Takes value1 if node u downloads a copy of content fk from v, and 0 otherwise


## 3.3. Optimization Framework

The objective of the proposedopt-Cache scheme is to reduce the resource consumption in obtaining the requested content. We address the problem of how a router with limited caching capacity caches content in the network to minimize latency and bandwidth utilization. Therefore, we model the objective function as a minimization problem for optimal content placement, as indicated in(1a)min⁡∑v∈V∑f∈Fλf,v×∑u∈VTf,u,v·Yf,v,u,s.t.(1b)∑f∈FXu,f×sizef≤Civ,∀v∈V(1c)Yf,u,v≤Xu,f,∀u,v,f(1d)∑u∈VYf,u,v=1,∀v,k(1e)Xf,v=0,1,Yf,u,v=0,1,∀f,u,vIn the network, any node v may request the content f with a rate λ that may take T time units in transferring from source to the requesting node. Whether or not the particular content f is downloaded for caching depends on the value of binary decision variable Y. With this caching policy, (1a) represents our objective function to minimize overall distance of contents from the requesting nodes, thereby reducing the latency, (1b) describes the constraint for finite cache size at each router, (1c) indicates that a node can download the copy of a content to cache, only if the content is available in the source node, (1d) signify that each request must be entertained by at least one router, and finally (1e) indicates the possible values of decision variables.In (1a), (1b), (1c), (1d), and (1e), we want to minimize the overall distance of content from the requesting node, by making use of request rate and time. In simple words, the product ofrequest rate for a content andtime consumed by a node to request content from source gives the distance measure, which we want to minimize. Since we want to minimize the overall distance, thus latency, therefore, the content will be downloaded from the source and will be cached on a node that will reduce overall latency. To achieve our objective of minimizing latency for all requests, we need to decide on whether to cache the requested content or not, subject to the large number of content in the network and finite cache capacity of the node. With a limited cache size, each router while serving an Interest packet intelligently decides whether or not to cache the requested content and what the best possible location to cache the content is. Basically, problems (1a), (1b), (1c), (1d), and (1e) define our objective function that we want to optimize, i.e., to reduce the overall cache latency time, by placing the desired contents near to the requesting nodes. However, it is difficult to solve the afore-stated optimization problem in a centralized and globally valid way because the variables that feed the problem are time-varying. The randomness in the requests and the dynamically changing available cache sizes, content sizes, and bandwidth makes it difficult to solve the optimization problem as once if the solution is found, the conditions are already changed and the solution cannot be applied to the system. Therefore, a heuristic algorithm (Algorithm 1) is utilized to achieve the nearest optimal solution that makes use (2), which represents the objective of problems (1a), (1b), (1c), (1d), and (1e), i.e., to place the frequently requested content at the minimum distance from the requesting node and thus to reduce the overall latency.Algorithm 1:On-path content caching on CCN router.
( 01 ) Available cache size=Ci; ( 02 ) For a request for content f (k), do the following ( 03 ) Update maximum rate of request: λ(f,v)max ( 04 ) Update maximum possible hops D(v,u)max ( 05 )  if cache hit on router then ( 06 )  C G P  f = λ  ( f , v ) λ ( f , v ) m a x × D ( v , u ) D ( v , u ) m a x × C h R h. ( 07 )  else ( 08 )  C G P  f = 1 λ ( f , v ) m a x × D ( v , u ) D ( v , u ) m a x × C h R h  . ( 09 )  C G P f = C G P ( f ) + 1 - C G P ( f ) × P i n i t  // Update CGP of the accessed content ( 10 )  C G P j = C G P ( j ) + γ k // Update the CGP of rest of contents ( 11 )  end if ( 12 )  i f   C i > 0 then ( 13 ) cache content f (k) ( 14 )  else i f   C i = = 0 then ( 15 )  if C G P ( f ) ≥ min ⁡ C G P j }, ∀j∈FNthen ( 16 ) cache contentf ( 17 )  end if ( 18 )  end if ( 19 )  end ifTo achieve that, each CCN router may store frequently-requested content by users to increase probability of hit. Further to minimize transmission delay, each router may cache content from a distant source. Based on above mechanism, each on-path router computes Cache Gain Probability (CGP) of contentf for each caching content using following formula and compares it with the score of existing cached content:(2)CGPf=λf,vλf,vmax×Dv,uDv,umax×ChRh.where λ(f,v) is the request rate of content f at nodev and Dv,u is the distance traversed by the content to reach node v from nodeu, i.e., the number of hop counts traversed. The parameter D(v,u) can be obtained with the help of TTL associated with data packet. λ(f,v) is normalized request rate of content (normalized with maximum request rate λ(f,v)max of cached content). λ(f,v)max is the maximum rate of requests at router at any instance of time. It is the maximum frequency of a request recorded by a router for a contentf, and D(v,u)max is maximum hop count traversed by the content to reach node v from node u. If the cached content is served through the node adjacent to the requesting node, then Dv,u=1 and λnew(f,v) = λf,v/λ(f,v)max + 1/λ(f,v)max. If a new content (not cached) is served, then λf,v=1/λ(f,v)max and D(v,u) is normalized hop count for this node. In case a content is cached at CCN router, λ(f,v) increases linearly for every new request for the same content. If a content that is not cached at CCN router is served, then its λf,v=1. Equation (2) aims to assign the priority to content based on their popularity and distance from the original source, thereby, caching a more popular content, with higher request rate, from a distant source to the nearest possible nodes. Such mechanism will in fact reduce the distance and thus latency as defined in (1a), (1b), (1c), (1d), and (1e). As the content is placed near the requesting node, the cache gain probability of the content increases, as the number of hops traversed will be decreased.Furthermore, every time a cache hit occurs, we update theCGP off so that content that are frequently accessed have high CGP. The following is used to update CGP, where Pinitϵ(0,1) is initialization constant:(3)CGPf=CGPf+1-CGPf×Pinit.Similarly’ CGP of the other contents that are not accessed must be aged with their value being reduced in the process. In the following, γϵ(0,1) is the aging constant and k is the number of time units elapsed since the last time the metric was aged:(4)CGPj=CGPj+γk.The proposed heuristic method for on-path caching is presented in the Algorithm 1 which runs on a CCN router on receiving request.


## 3.4. Complexity Analysis of Algorithm1

Algorithm1 follows a simple linear time complexity class. Each statement is iterated once from Line (2) to Line (14); therefore, the complexity is O1. At Line (15), the contents stored on a node are iterated once, with a complexity of OFN. This makes the overall complexity of Algorithm 1 of the order O(|FN|).


## 4. Results and Discussions

In this section, we describe the experimental setup and simulation results. We compare the performance of proposed schemeopt-Cache against existing caching policies, LCE, LCD, ProbCache, and CL4M (illustrated in Section 2 related work). The aforementioned schemes are selected being relevant and exhibiting consistent performance, hence most cited in the literature.To route an Interest packet from client to source, we assume the network uses Dijkstra’s shortest weighted path routing, where delay on the links corresponds to weights. If the content is found at any intermediate router towards source, then it is served from that router cache. To demonstrate the effectiveness ofopt-Cache policy, we perform simulation in Icarus [18], a CCN simulator specifically designed for analyzing caching and routing polices in ICN. Scenario generation, experiment orchestration, experiment execution, and results collection are the four basic building blocks of Icarus. In simulation, each content request is considered as an event. Therefore, whenever an event occurs the corresponding timestamp, receiver, and source of event are stored. The result collection block of the simulator gathers the result of simulation. Through the sum of delays on each link traversed during content download, the latency is calculated in Icarus.Extensive experiments are performed on real-world topology GEANT, which consists of 40 nodes and 60 edges, is an academic network spread around the world, and results for 95% confidence intervals are plotted. Table2 describes our simulation set up.Table 2
Simulation setup.
Parameter Value No. of warm-up requests 40,000 No. of measured requests 40,000 Popularity model 0.6, 0.8, 1.0 No. of content universe 10,000 Cache size 4% – 20% Request rate 1.0 request/secIn our simulation, the caches are initialized with first 10,000 content and subsequent requests are used for performance evaluation. Zipfian distribution with skewnessα∈[01] is assumed as probability of requesting a content. Originally content are stored and uniformly distributed in content sources (server). Nodes with degree one are considered as users/clients. The number of contents (content universe) is set as F=1000. The network cache size varies from 4% to 20% of total content universe. Content popularity skewness (α) varies from 0.6 to 1.0, where α with value 0.6, 0.8, and 1.0 refers to low popularity model, normal popularity model, and high popularity model, respectively.To compute the efficiency of our optimized content cache strategy’ we use different performance metrics, such as latency, cache hit ratio, and path stretch. These performance metrics can be calculated as follows:(i) Latency. Latency is number of time units (in millisecond) a content take to reach at user or the delay taken to deliver a content [23] and can be calculated as follows:(5)Latency=requesttraveldelay+contenttraveldelay.(ii) Link Load. Link load is the number of bytes a link traversed per unit time to retrieve the requested content and can be calculated using [23](6)link_load=requestsize×requestlink_count+contentsize×contentlink_countduration,where(7)duration=contentretrieveltime-contentrequesttime,requestsize is the size of request in bytes, requestlink_count is the number of links traversed by the request to reach the source, contentsize is the size of the content to retrieve, and contentlink_count is the number of links traversed by the content to reach the request originator.(iii) Hit Ratio. For a request, if the content is found in a node’s cache, then we call it a “hit”; otherwise, it is known as a “miss.” When cache miss operation occurred, the contents are retrieved from server. Cache hit ratio, i.e., the portion of requested content served by node cache, measures the efficiency of routers [18] and can be calculated as(8)Hit_Ratio=cachehitscachehits+servershits.(iv) Path Stretch. We consider the path stretch d/P as the number of CCN backbone hops d that the data chunk has actually traveled in the network, normalized over the path length P until the content originator (i.e., without caching).


### 4.1. Discussion on Latency Performance

In this section, we discuss the latency performance of ouropt-Cache strategy for a variety of different settings.


#### 4.1.1. Latency Results for Different Caching Strategies at Different Popularity Rates

Figures3(a), 3(b), and 3(c) show the latency results for caching strategies at different popularity rates ranging from 0.6 to 1.0. From derived results we observe thatopt-Cache outperforms the existing policies by 4%–18% for a wide range of cache sizes (ranges from 4%–20% of content universe). Better cache utilization is the primary reason behind the superior performance of optimized cache strategy.Figure 3
Latency performance with varying cache size and popularity parameterα.
(a) (b) (c)


#### 4.1.2. Latency Performance Using Different Content Universe

Figures4(a), 4(b), and 4(c) reflect the performance ofopt-Cache for GEANT when using different content universe. Results are generated on fixed cache size, which is about 5% of content size. Content universe varied from 10,000 to 50,000. Our simulation results show that performance ofopt-Cache is superior to other strategies for large content universe as well. As the content-to-cache size is kept constant; therefore, with increase in content universe, absolute cache size increases causing latency decrement and cache utilization increases as popular content are readily available in cache. Figure 4 also depicts the scalability ofopt-Cache. These results show that our algorithm can work with large content universe with consistent performance.Figure 4
Latency performance with varying content universe.
(a) (b) (c)


### 4.2. Discussion on Cache Hit Ratio

Hit ratio is an important performance parameter for CCN caching strategies. Cache hit occurs when a request is fulfilled by cache router, while a miss encounters if request can only be served by original content source. High hit ratio demonstrates that more requests are being served by intermediate cache routers, thereby reducing load on original source. We compare the cache hit ratio ofopt-Cache with existing strategies, ranging from low to high popularity rate models (α=0.6, α=0.8, and α=1.0). We perform simulations on different cache sizes. Figures 5(a), 5(b), and 5(c) show the cache hit ratio ofopt-Cache at different popularity models with different cache sizes is superior to the existing techniques. The proposed scheme shows an improved performance in terms of hit ratio compared to the existing. The primary reason is that a router caches the content only if an optimal solution is found for transfer time from the source and request rate. We observe that the hit ratio increases with increase in ratio of cache size to content, and the content popularity. The bigger the cache size ratio, the greater the cache hit ratio; however,opt-Cache outperforms the rest of the strategies even at lower cache size ratio. Similarly, greater value of skewness parameter indicates more popular content are requested resulting in greater hit ratio. We also observe that although the performance of all strategies at lower popularity model α=0.6 is not good, still performance ofopt-Cache is better than other strategies due to optimal cache placement.Figure 5
Hit ratio with respect to varying cache size and popularity parameterα.
(a) (b) (c)


### 4.3. Discussion on Path Stretch Performance

Although hit ratio provides an indication of the percentage of the requests served within the network, path stretch defines the percentage of the path that a content has travelled to retrieve the content or the ratio between the actual path and the shortest path length. Figures6(a), 6(b), and 6(c) indicate the path stretch ratio at different popularity models and cache size ratio. We observe that hop count ofopt-Cache decreases at different popularity models with different cache sizes, and performance is superior to existing techniques. We observe thatopt-Cache decreases average hop count from 18 to 51%.Figure 6
Path stretch with varying cache size and popularity parameterα.
(a) (b) (c)


### 4.4. Discussion on Link Load Performance

Link load is the number of bytes travelled on the link to obtain content from the source. It is an important performance parameter to calculate the bandwidth utilization of the content in the network. We perform simulation for link load at(a) Low popularity model (α=0.6) and high popularity rate (α=1.0) at variable cache size (4%–20%). We find a significant improvement in link load performance for proposed scheme. Figures 7(a) and 7(b) show the improvement in the link load performance of proposed scheme.Figure 7
Link load with varying cache size and popularity parameterα.
(a) (b)(b) Variation in popularity model keeping the cache size fixed. Using these settings, we observe the improved performance ofopt-Cache as shown in Figures 8(a) and 8(b) as the content placement is optimal under such conditions.Figure 8
Link load with varying values of popularity parameter and fixed cache size.
(a) (b)


## 4.1. Discussion on Latency Performance

In this section, we discuss the latency performance of ouropt-Cache strategy for a variety of different settings.


### 4.1.1. Latency Results for Different Caching Strategies at Different Popularity Rates

Figures3(a), 3(b), and 3(c) show the latency results for caching strategies at different popularity rates ranging from 0.6 to 1.0. From derived results we observe thatopt-Cache outperforms the existing policies by 4%–18% for a wide range of cache sizes (ranges from 4%–20% of content universe). Better cache utilization is the primary reason behind the superior performance of optimized cache strategy.Figure 3
Latency performance with varying cache size and popularity parameterα.
(a) (b) (c)


### 4.1.2. Latency Performance Using Different Content Universe

Figures4(a), 4(b), and 4(c) reflect the performance ofopt-Cache for GEANT when using different content universe. Results are generated on fixed cache size, which is about 5% of content size. Content universe varied from 10,000 to 50,000. Our simulation results show that performance ofopt-Cache is superior to other strategies for large content universe as well. As the content-to-cache size is kept constant; therefore, with increase in content universe, absolute cache size increases causing latency decrement and cache utilization increases as popular content are readily available in cache. Figure 4 also depicts the scalability ofopt-Cache. These results show that our algorithm can work with large content universe with consistent performance.Figure 4
Latency performance with varying content universe.
(a) (b) (c)


## 4.1.1. Latency Results for Different Caching Strategies at Different Popularity Rates

Figures3(a), 3(b), and 3(c) show the latency results for caching strategies at different popularity rates ranging from 0.6 to 1.0. From derived results we observe thatopt-Cache outperforms the existing policies by 4%–18% for a wide range of cache sizes (ranges from 4%–20% of content universe). Better cache utilization is the primary reason behind the superior performance of optimized cache strategy.Figure 3
Latency performance with varying cache size and popularity parameterα.
(a) (b) (c)


## 4.1.2. Latency Performance Using Different Content Universe

Figures4(a), 4(b), and 4(c) reflect the performance ofopt-Cache for GEANT when using different content universe. Results are generated on fixed cache size, which is about 5% of content size. Content universe varied from 10,000 to 50,000. Our simulation results show that performance ofopt-Cache is superior to other strategies for large content universe as well. As the content-to-cache size is kept constant; therefore, with increase in content universe, absolute cache size increases causing latency decrement and cache utilization increases as popular content are readily available in cache. Figure 4 also depicts the scalability ofopt-Cache. These results show that our algorithm can work with large content universe with consistent performance.Figure 4
Latency performance with varying content universe.
(a) (b) (c)


## 4.2. Discussion on Cache Hit Ratio

Hit ratio is an important performance parameter for CCN caching strategies. Cache hit occurs when a request is fulfilled by cache router, while a miss encounters if request can only be served by original content source. High hit ratio demonstrates that more requests are being served by intermediate cache routers, thereby reducing load on original source. We compare the cache hit ratio ofopt-Cache with existing strategies, ranging from low to high popularity rate models (α=0.6, α=0.8, and α=1.0). We perform simulations on different cache sizes. Figures 5(a), 5(b), and 5(c) show the cache hit ratio ofopt-Cache at different popularity models with different cache sizes is superior to the existing techniques. The proposed scheme shows an improved performance in terms of hit ratio compared to the existing. The primary reason is that a router caches the content only if an optimal solution is found for transfer time from the source and request rate. We observe that the hit ratio increases with increase in ratio of cache size to content, and the content popularity. The bigger the cache size ratio, the greater the cache hit ratio; however,opt-Cache outperforms the rest of the strategies even at lower cache size ratio. Similarly, greater value of skewness parameter indicates more popular content are requested resulting in greater hit ratio. We also observe that although the performance of all strategies at lower popularity model α=0.6 is not good, still performance ofopt-Cache is better than other strategies due to optimal cache placement.Figure 5
Hit ratio with respect to varying cache size and popularity parameterα.
(a) (b) (c)


## 4.3. Discussion on Path Stretch Performance

Although hit ratio provides an indication of the percentage of the requests served within the network, path stretch defines the percentage of the path that a content has travelled to retrieve the content or the ratio between the actual path and the shortest path length. Figures6(a), 6(b), and 6(c) indicate the path stretch ratio at different popularity models and cache size ratio. We observe that hop count ofopt-Cache decreases at different popularity models with different cache sizes, and performance is superior to existing techniques. We observe thatopt-Cache decreases average hop count from 18 to 51%.Figure 6
Path stretch with varying cache size and popularity parameterα.
(a) (b) (c)


## 4.4. Discussion on Link Load Performance

Link load is the number of bytes travelled on the link to obtain content from the source. It is an important performance parameter to calculate the bandwidth utilization of the content in the network. We perform simulation for link load at(a) Low popularity model (α=0.6) and high popularity rate (α=1.0) at variable cache size (4%–20%). We find a significant improvement in link load performance for proposed scheme. Figures 7(a) and 7(b) show the improvement in the link load performance of proposed scheme.Figure 7
Link load with varying cache size and popularity parameterα.
(a) (b)(b) Variation in popularity model keeping the cache size fixed. Using these settings, we observe the improved performance ofopt-Cache as shown in Figures 8(a) and 8(b) as the content placement is optimal under such conditions.Figure 8
Link load with varying values of popularity parameter and fixed cache size.
(a) (b)


## 5. Conclusions

In this work, we have designed and evaluated a content cache placement scheme for CCN. There are various conflicting challenges in content caching as we increase the cache size the more popular content can be cached; however deployment cost increases. Similarly, if we try to reduce the cache size the deployment cost decreases but lesser amount of popular content can be cached. With limited cache size and a large number of content in the network, an intelligent content cache minimizes bandwidth utilization and latency of content retrieval. Achieving a trade-off between conflicting objectives is a major challenge that has been addressed in our work. Our main contribution is the mathematical model to compute optimal cache placement, independent of any particular simulation framework. Proposed scheme determines optimized set of content to be cached at each node towards the edge based on content popularity and content distance from the content source. From the simulation study, it is observed that our proposed caching scheme has the potential in enhancing the system performance as compared to existing caching schemes.In future, we want to explore the content placement based on network flow and centrality parameters, where the nodes with high flow rate and centrality cache the popular content. We also plan to improve our scheme towards dynamic topologies and study the impact of mobility on proposed scheme.



---

*Source: 6373960-2019-01-23.xml*