In the current networks design, often all requests for specific content are directed towards the original data producer, which increases network traffic, especially on the content producer side, content retrieval delay, and bandwidth consumption. The increasing demand for efficient and scalable content distribution has led to introducing of new Information-Centric Network (ICN) architectures[1]. To the researchers, this architecture is an alternative to the existing host-centric networks. In content-centric architecture, The communication model changes from the communication between the two end-nodes into the data-centric model[2, 3].
Unique content naming, addressing, and routing based on the name, decoupling content from its location, applying distributed in-network caching, data packet-based security, and supporting mobility are the obvious advantages of this architecture[4, 5].
Given the challenges in implementing IP-based Internet of Things (IoT), which is often due to the high level of heterogeneity between billions of different devices, the ICN architecture can be applied in implementing it [6, 7]. A variety of IoT devices, including sensors and smartphones, can sense data or exchange them over each other through the internet[8]. In ICN architecture, due to the abstraction of content and its location, heterogeneous devices can connect without middleware[9]. Because ICN supports the main IoT requirements like scalability, energy efficiency, security, big data, and mobility, it is an ideal option in implementing IoT[4, 10, 11].
Different research projects are designed based on the ICN approach. The objective of all ICN architectures is to distribute content and adapt better to disruptions and disconnections in communication[12, 13]. Named Data Networking (NDN) is one of the most common active projects [14], where, the features are most consistent with IoT requirements, thus, the best choice for IoT networks.
The in-network caching technique is mature, and is applied in preventing unnecessary end-to-end communication[15]. The effect of this technique in delivering content to users without requiring direct contact with the original data producer for each request is evident [16]. In-network caching, which is one of the main functionalities of the NDN architecture, is implemented through the CS of nodes[17], Fig. 1. This technique may lead to advantages like cost-effective data retrieval, reduction in latency, heavy load handling, and increase content availability[18, 19].
In default NDN caching, a retrieved content is placed on all the nodes encountered on the path[16]. This placement leads to redundancy for the same content caching. Redundant content caching and limited memory cause inefficiency in the caching system.
The caching studies are of three categories: cache placement, content placement, and replacement policies. Cache placement is related to the determination of where the data will be cached [20]. Content placement is associated with determining which content to cache at the content store[21]. The replacement policy relates to which cached content should be deleted from the content store to accommodate incoming contents[22].
The NDN default caching mechanism achieves a similar caching gain compared to random caching[23]. Researchers in [24] estimated that higher performance is achieved by caching in a set of intermediate routers, but not all nodes of the content delivery path. Accordingly, studies are run to determine a subset of intermediate nodes on the content delivery path, to achieve higher efficiency[23–25]. Many methods are proposed based on the position of nodes and the defined metrics like centrality, degree, betweenness, etc. [24, 26, 27] to overcome this drawback. These methods, following the cache placement strategies category, are based on the properties of nodes and do not consider the properties of the content to be cached.
Due to the inherent characteristics of IoT data and devices, traditional cache strategies for multimedia data do not apply to these systems, which present a new challenge. The large amount of data, on the one hand, and the limited memory space on ICN routers, on the other hand, is another reason why traditional caching strategies are incompatible with IoT systems [28]. A key feature in most IoT data is their being transient[29], that is, in monitoring applications like urban environment monitoring [28, 30], and vehicular traffic monitoring [10, 31], the data are updated on a regular basis. These data are usually characterized by a lifetime within seconds to days range. As long as the defined lifetime by the original data producer is not expired, the data is valid (fresh), otherwise, stale[32]. The studies with a focus on caching transient IoT data are few[29], and the proposed methods, usually with the objective on energy efficiency, due to the limited resources of IoT devices, have not focused on selecting the appropriate set of nodes to reduce redundancy.
This newly proposed method consists of the two primary, cache nodes selective, and content selective sections for IoT data caching. The on-path caching approach is adopted for content caching because, unlike off-path caching, it does not require additional metadata to inform the consumer about the node that is associated with the specified content. In this method, first, the contents are classified based on their lifetimes. And next, they are cached based on their specific node class. The nodes with the highest outgoing interface count or the edge nodes are selected for data caching. By considering both data and cache placement, we determine the suitable caching location for each data class separately. In addition, we remove data that has short lifetime and is not suitable for caching from the caching mechanism. The contributions of this article are:
-
We propose a novel caching method for transient IoT data that improves the caching performance. One of the significant features for some IoT data is the transiency nature, which we have taken into account in the proposed method.
-
We involve both node position and IoT data property in this method’s design.
-
We categorize data through their transient property. Data lifetime is an essential property of multiple IoT data that significantly affects caching performance.
This article is structured as follows: The background and related studies are presented in Section. 2; the method is proposed in Section. 3; the evaluation is made in Section. 4 and the article is concluded in Section. 5.