Elsevier

Computer Networks

Volume 213, 4 August 2022, 109082
Computer Networks

Fog-based caching mechanism for IoT data in information centric network using prioritization

https://doi.org/10.1016/j.comnet.2022.109082Get rights and content

Abstract

In-Network caching is one of the most prominent features of Information-Centric Networks (ICN). This feature, designed to reduce the content delivery time, can improve data availability, especially during the sleeping mode of the original data producer. However, the fact that caching mechanism is simultaneously performed with data forwarding, limited processing power, and limited memory capacity of routers has posed challenges in fully profiting from this feature. The synchronization of caching mechanism with data forwarding limits the speed of decision-making in content placement policies. These challenges as well as the limitations of ICN routers have not been taken into consideration by the existing strategies for content placement of IoT data. In this paper, the restrictions for content placement policies in ICN-based IoT are outlined, and a data prioritization-based approach that prevents ICN nodes from filling their Content Store (CS) with inappropriate and inferior data is proposed to improve cache efficiency. Besides, fog computing is used as a middle layer between IoT devices and ICN networks to resolve the speed limits of decision-making and improve cache performance. In the fog layer, prioritization is performed based on the popularity and freshness of data object, and, thus, low-priority data are removed from the caching mechanism of ICN nodes. As the result shows the total number of cached data is reduced. Freshness is an essential property of multiple IoT data that significantly affects caching performance. That's why we prioritized data based on popularity and freshness. Eventually, the simulation results performed by the NDNsim simulator show that decreasing the number of data objects could improve the cache mechanism efficiency in terms of both delay and hit ratio.

Introduction

Remarkable efforts have been made to achieve the goals of IoT over the current IP-based networks. Despite these efforts, there are still challenges in developing IoT communications. These challenges are often due to the high level of heterogeneity between billions of IoT devices, large amounts of information generated by these devices, and different requirements and features necessary for various IoT applications [1]. According to the host-centric IP-based architecture, each device must be assigned an IP address [2]. Since IP addresses are used both as an identifier and a locator simultaneously, it imposes a vast amount of overhead on the network [3], [4], [5].

The mismatch of IP-based architecture to support major IoT requirements such as scalability, energy efficiency, security, support for big data, and mobility has caused these networks to become insufficient for IoT [4,6]. Based on the need for a new architecture for IoT systems in the future, several ideas have been recommended for efficient content distribution. Information-Centric Networks, which is a new communication model relying on information as a critical factor to address the challenges of current host-centric architecture and switching from the host-centric model to the novel data-centric model [7,8], were introduced mainly as a replacement for IP-based networks [9].

Given the data-centric nature of such networks, an essential architectural block is data naming [10]. Each data or piece of it is assigned unique, constant, and independent of the location name. These data fragments are called the Named Data Object (NDO). Nodes in ICN architectures issue the name of the content to the network, either to make it available to others or to request for the network to retrieve it [11]. As a result of location-independent data naming, two copies of one data in each location of the network have the same name. This feature is worthwhile, in particular for cache mechanism.

Additionally, the fundamental basis of networking, such as routing and forwarding, is performed based on the data name. Mapping data names is done to their storage location, which can be the original data producer or intermediate nodes where the data has already been cached. Relying on these mappings, packet routing and forwarding are to satisfy consumer requests.

Under the concept of information-centric networks, several architectures have been proposed [12,13]. NDN is one of the most common active projects among them, especially in researches [14]. Since the features of the NDN architecture are most consistent with IoT requirements, it is the most appropriate choice for IoT systems [15]. NDN uses only the Interest and Data packets, so its message structure is simple. When a consumer requests specific data, it sends an interest packet containing the data name to a certain next-hop according to the FIB entries. Interest packets are forwarded within the network until they reach the node containing the data. After that, the data packet is resent to the consumer on the reverse path [16,17].

In-network caching is an inherent feature of NDN architecture. From some researcher's point of view, the most prominent property of these networks is In-network caching [18]. Today, reducing content delivery time is extremely important for network users. As shown in Fig. 1, in-network caching is used to distribute content on the network and reduce content delivery time [19]. Data can be temporarily stored in the content store (CS) of the intermediate nodes. CS acts as a cache inside all NDN nodes. Each node looks up its CS when receiving an interest packet. If there is data corresponding to that data name, a cache hit occurs, and the data is forwarded to the consumer. This mechanism can reduce data access time, consumed bandwidth, and network traffic [19]. Another data structure embedded in each NDN node is called Pending Interest Table (PIT). This table is used both to keep track of incoming interest packets that have not yet been satisfied, and to identify similar requests for specific data. In the end, in each node, a data structure called Forwarding Information Base (FIB) is imposed, which is used for forwarding interest packets and includes possible hosting locations for data [8]. FIB, based on the data longest prefix, maintains the hosting location information, and accordingly, the interest is forwarded to one of the possible options [20].

Due to the limited resources of IoT devices and the sensitivity of some IoT applications to delay, in-network caching is required in ICN-based IoT. In-network caching prevents energy waste and unnecessary packet exchanges by distributing data. It also increases data availability, especially when the original data producer is in sleeping mode [10]. Besides numerous benefits of caching, there are several challenges in IoT systems to improving the efficiency of caching mechanisms, including placement, replacement and other issues related to caching [2,21]. In other words, 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. IoT data such as ambient monitoring in urban areas and tracking current traffic conditions are often transient [11], which means these data have a limited lifetime and then become expired. 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 [18].

Therefore, to take advantage of the in-network caching mechanism in ICN-based IoT, a content placement strategy must be designed with several points in mind. First, the ICN router's memory is limited, and, therefore, the CS size of the nodes is small. Routers in the current technologies have limited storage capacity regardless of considerable costs. Second, in reality, the IoT data being transmitted is a large amount and transient, which can reduce the ratio of cache hit and, thus, reduce the levels of efficiency if a sound placement strategy is not implemented. The third point is the limitation of processing power on current routers, which precludes the use of sophisticated algorithms in caching mechanisms. Finally, since in ICN architecture, the content placement strategy is executed simultaneously with data forwarding, it seems necessary to make high-speed decisions in ICN nodes in order to reduce delay latency [16].

In this study, we proposed a mechanism for an efficient content placement of IoT transient data in the NDN node, while the literature on caching transient data in NDN based IoT is still in its early stage [21]. The primary purpose of the proposed mechanism is to consider the above limitations in planning a model for content placement. In this mechanism, Fog Computing is used to solve the speed limitation of content selection in ICN nodes. The main idea of this method is to prevent low priority data caching due to the limited capacity of ICN routers. Prioritization of data is based on two characteristics, data freshness and popularity. These two factors are essential in determining valuable data for the cache mechanism. If data freshness is not conveyed in the packets, there will be a risk of propagating stale data. Stale data may incorrectly affect the application performance, especially in information-centric architectures, where the data is cached on the intermediate nodes.

Our contributions are summarized as follows

  • First, data prioritization and prioritized transient IoT data are defined based on their freshness and popularity. As determined, data prioritization results in the storage of more popular and fresher data in CS of ICN nodes.

  • Second, we propose a novel caching method for transient IoT data that improves the caching performance by jointly accounting for the data freshness and popularity for the caching decision. One of the significant features of some IoT data is the transiency nature, which we have taken into account in the proposed method.

  • Third, fog computing is used to overcome the speed restrictions of decision-making due to the synchronization of caching with data forwarding. By transferring the caching decision process to the fog layer, we can overcome the existing restrictions for content placement policies in ICN-based IoT and better profit from the in-network caching. It is worth noting that the existing strategies for content placement of IoT data do not consider the restrictions for content placement policies and the limitations of ICN routers.

Overall, this method improved cache performance by placing high-priority data in CS of ICN nodes, while the constraints on caching in ICN-based IoT were considered. The remainder of this paper has been organized as follows: Section 2 reviews related works on content placement for ICN-based IoT. Section 3 describes the proposed method. Section 4 presents the evaluation and results of the proposed method, and finally, Section 5 sums up the study, concluding.

Section snippets

Related works

For different network users, content delivery time is significant. If all requests for the same content are only responded to by the original data producer, this will result in bandwidth consumption, increased delay, and network load. According to some researchers, distributed and ubiquitous in-network caching is the most prominent feature of ICN. In ICN architectures, every node has the potential to temporarily store data in its CS instead of a few specialized cache nodes [11]. Due to a large

Proposed approach

In this section, the network model used for cache placement based on data prioritization and how it works to address cache placement limitations in the ICN-based IoT environment were presented. In the existing methods, the transient data generated by the sensors pass through the intermediate nodes on the way to the consumer. Thus data caching is performed simultaneously with the forwarding of data to the consumer. Decision-making in ICN-based IoT is often based on data freshness. Because data

Evaluation

In this section, results for the two performance metrics are illustrated. To evaluate the performance of the proposed model, we examined the effect of changing the total number of available data on two caching-related network performance metrics, namely hit ratio and delay. Because in the proposed method, low priority data is removed from the caching mechanism, the number of data packets being cached in the ICN node is reduced. Therefore, the effect of reducing the number of content can be

Conclusion and future work

In this study, we focused on content placement in ICN-based IoT. Using ICN architecture and fog computing, we can address some of the challenges in IoT. The presented approach in this paper, using fog computing, resolved the speed restriction issues of the caching mechanism in ICN-based IoT. We also discussed how to prioritize IoT data based on the data properties, including data popularity and freshness. We made the most use of the processing capabilities of fog nodes to improve the caching

CRediT authorship contribution statement

Marzieh Sadat Zahedinia: Conceptualization, Funding acquisition, Formal analysis, Data curation, Writing – original draft, Writing – review & editing. Mohammad Reza Khayyambashi: Conceptualization, Writing – review & editing, Writing – original draft, Funding acquisition, Formal analysis, Data curation. Ali Bohlooli: Conceptualization, Funding acquisition, Formal analysis, Data curation, Writing – original draft, Writing – review & editing.

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Marzieh Sadat Zahedinia received her B.Sc. and M.Sc. degrees from the Iran University of Science and Technology (IUST) and University of Birjand, Iran, in 2010 and 2013, respectively. She is PhD candidate in Computer Architecture at the faculty of computer engineering in the University of Isfahan, Isfahan, Iran since 2016. Her research areas include Computer Networking, Information-Centric Network, IoT and caching mechanism.

References (47)

  • A. Lindgren et al.

    Design choices for the IoT in information-centric networks

  • S. Arshad et al.

    Recent advances in information-centric networking-based internet of things (ICN-IoT)

    IEEE Internet Things J.

    (2019)
  • D. Mars et al.

    Using information centric networking in internet of things: a survey

    Wirel. Pers. Commun.

    (2019)
  • M. Amadeo et al.

    Information-centric networking for the internet of things: challenges and opportunities

    IEEE Netw

    (2016)
  • A. Aboodi et al.

    Survey on the Incorporation of NDN/CCN in IoT

    IEEE Access

    (2019)
  • R. Ullah et al.

    Information-centric networking with edge computing for IoT: research challenges and future directions

    IEEE Access

    (2018)
  • O. Waltari et al.

    Content-centric networking in the internet of things

  • E. Lee

    Categories and subject descriptors

  • A. Kalla et al.

    A constructive review of in-network caching: a core functionality of ICN

  • W.K. Chai et al.

    Cache “less for more” in information-centric networks

  • B. Ahlgren et al.

    Networking (Draft)A Survey of Information-Centric

    (2011)
  • Z. Ali et al.

    Named data networking for efficient IoT-based disaster management in a smart campus

    Sustainability

    (2020)
  • M. Meddeb et al.

    Cache freshness in named data networking for the internet of things

    Comput. J.

    (2018)
  • Cited by (13)

    View all citing articles on Scopus

    Marzieh Sadat Zahedinia received her B.Sc. and M.Sc. degrees from the Iran University of Science and Technology (IUST) and University of Birjand, Iran, in 2010 and 2013, respectively. She is PhD candidate in Computer Architecture at the faculty of computer engineering in the University of Isfahan, Isfahan, Iran since 2016. Her research areas include Computer Networking, Information-Centric Network, IoT and caching mechanism.

    Mohammad Reza Khayyambashi was born in Isfahan, Iran in 1961. He received his B.Sc. degree in Computer Hardware Engineering from Tehran University, Tehran, Iran in 1987. He received his M.Sc. in Computer Architecture from Sharif University of Technology (SUT), Tehran, Iran in 1990. He got his Ph.D. in Computer Engineering, Distributed Systems from University of Newcastle upon Tyne, Newcastle upon Tyne, England in 2006. He is now working as an Associate Professor at the Department of Computer Architecture, Faculty of Computing Engineering, University of Isfahan, Isfahan, Iran. He has successfully supervised graduated PhD and MSc students and is currently supervising PhD students in his research area. His research interests include Distributed Systems, Computer Networking, Software Define Network (SDN), Mobile Computing, Internet of Things (IoT) and Edge / Fog / Cloud Computing.

    Ali Bohlooli received his BSc and MSc degrees in Computer engineering (with honors) from the Department of Electrical & Computer Engineering, Isfahan University of Technology, Iran, in 2001 and 2003, respectively. Subsequently, he received his Ph.D. degree in computer engineering from the University of Isfahan, Iran, in 2011. Presently, he is an assistant professor in the Faculty of Computer Engineering, University of Isfahan, Iran. His research interests include computer networks, multimedia networks, information-centric networks and cyber physical systems.

    View full text