{'fraction_non_alphanumeric': 0.017908723281340265, 'fraction_numerical': 0.0, 'mean_word_length': 5.077192982456141, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Content Caching in Opportunistic Wireless Networks

Wireless networks have become popular in the last two decades and their use is since growing significantly. There is a concern that the existing resource of centralized networks may not sufficiently serve the enormous demand of customers. This thesis proposes one solution that has a potential to improve the network. We introduce decentralized networks particularly wireless ad-hoc networks, where users communicate and exchange information only with their neighbors. Thus, our main focus is to enhance the performance of data dissemination in wireless ad-hoc networks. In this thesis, we first examine a content distribution concept, in which nodes only focus on downloading and sharing the contents that are of their own interest. We call it private content and it is stored in a private cache. Then, we design and implement a relay-request caching strategy, where a node will generously help to fetch contents that another node asks for, although the contents are not of its interest. The node is not interested in these contents but fetches them on behalf of others; they are considered public contents. Thesepublic contents are stored in a public cache. We also propose three public caching options for optimizing network resources: relay request on demand, hop-limit, and greedy relay request. The proposed strategies are implemented in the OMNeT++ simulator and evaluated on mobility traces from Legion Studio. We also campare our novel caching strategy with an optimal channel choice strategy. The results are analyzed and they show that the use of public cache in the relay request strategy can enhance the performance marginally while overhead increases significantly.