Lightweight Caching and Load Balancing for Efficient Content Delivery in Information-Centric IoT
In recent years, Information-Centric Networking (ICN) has emerged as a promising candidate for a future Internet architecture. While originally designed with the traditional Internet in mind, it has also been identified as a potential replacement for current Internet of Things (IoT) networking solutions. However, applications in the IoT face a number of unique challenges due to the constrained nature of the hardware. One of these challenges is that available memory is often extremely limited. This thesis aims to evaluate the feasibility of using ICN in-network caching on IoT devices in order to achieve efficient content delivery. It evaluates the performance of existing approaches on constrained hardware and explores how the technology can be improved and tailored towards that environment. Existing strategies are found to be lacking in key aspects, particularly the fact that the effects of network topology are often not considered when making caching decisions. It is shown that approaches based on network centrality are promising, but existing implementations are not suited for constrained hardware. Therefore, a lightweight in-network caching strategy called Approximate Betweenness Centrality (ABC) is proposed that takes the specific requirements of IoT into consideration and allows for efficient cache placement regardless of network topology. Then, a modular solution for load balancing through off-path caching is presented to address potential shortcomings of the centrality-based caching approach. It allows the network to make more efficient use of available caching resources without introducing additional overhead. Furthermore, solutions for ensuring Quality of Service (QoS) are discussed. The expanded role of caching strategies under such QoS constraints is explored and their performance is evaluated. This thesis shows that it is possible to design and deploy lightweight, low-overhead solutions on constrained hardware. Using a realistic deployment of physical IoT devices, it is demonstrated that these approaches can reach satisfactory levels of performance.