Peer-to-Peer Data Sharing in Named Data Networking
- Author(s): Mastorakis, Spyridon
- Advisor(s): Zhang, Lixia
- et al.
Peer-to-peer file sharing applications envision a world, where peers will communicate in terms of the data that they are looking for. In this world, peers will be able to retrieve the desired data from any other peer that can provide it, without the need of specifying the location that this data can be found. Some peer-to-peer applications, such as BitTorrent, also provide data-centric security primitives by verifying the integrity of the downloaded data through cryptographic hashes. However, the current point-to-point TCP/IP network architecture poses a number of challenges to the design and implementation of peer-to-peer systems both in infrastructure-based and mobile ad-hoc networks. Specifically, in infrastructure-based networks, peers have to select others (identified by an IP address) to download data from, estimate the quality of each connection, and constantly try to find peers that can provide higher bandwidth. In mobile ad-hoc networks, peers typically rely on a routing protocol to establish an end-to-end path to the IP addresses of other peers. The established paths may constantly break, since the position of mobile peers changes, therefore, new paths have to be frequently established.
In this dissertation, we present peer-to-peer file sharing application designs and implementations that run on top of the Named Data Networking (NDN) architecture. NDN provides a data-centric communication model directly at the network layer, as well as data-centric security primitives, making security a property of the data that stays with it at rest and in transit across the network. Our experimental results show that NDN's named and secured data, adaptive forwarding, and caching provide a solid foundation for peer-to-peer applications both in infrastructure-based and mobile ad-hoc networks, achieving lower data dissemination delays and overheads compared to TCP/IP-based solutions.
At the end of this dissertation, we present the design of the most popular NDN software platform, ndnSIM, the NDN simulator based on the ns-3 network simulator. As a network architecture that fundamentally departs from TCP/IP, NDN requires extensive evaluation and experimentation. This need along with the modular and scalable design of ndnSIM, featuring integration with the real-world NDN prototypes, have contributed to the massive ndnSIM adoption by the broader research community.