Peer-to-peer file sharing envisions a data-centric dissemination model, where files consisting of multiple data pieces can be shared from any peer that can offer the data or from multiple peers simultaneously. This aim, implemented at the application layer of the network architecture, matches with the objective of Named Data Networking (NDN), a proposed Internet architecture that features a data-centric communication model at the network layer. To study the impact of a data-centric network architecture on peer-to-peer file sharing, we proposed nTorrent, a peer-to-peer file sharing application on top of NDN. Since the initial nTorrent proposal in 2017, we have implemented its design in ndnSIM, the de facto NDN simulator. In this paper, we present the design of our nTorrent simulation framework, discussing various design decisions and trade-offs. We also describe our experimentation and validation process to ensure that our framework possesses the fundamental properties of nTorrent.KEYWORDS nTorrent, peer-to-peer, simulation, Named Data Networking (NDN), file sharing
INTRODUCTIONPeer-to-peer file sharing applications, such as BitTorrent [10], have been an area of active research over the years. In such applications, a file consists of multiple individual pieces of data. The primary goal of peers is to retrieve the desired data pieces from any other peer that can offer them. This data-centric functionality exists only at the application layer of the network architecture. Since peers operate on top of the point-to-point TCP/IP architecture, they need to decide from which peer (IP address) to retrieve the desired data. Specifically, peers have to discover other peers, select specific peers to establish TCP connections to, as well as estimate the quality of these connections.Named Data Networking (NDN) [36] is a proposed Internet architecture that offers a data-centric communication model. NDN enables applications to exclusively focus on what pieces of data to fetch, while the NDN network determines from where to fetch the desired data. In other words, NDN can provide the data-centric functionality needed by peer-to-peer applications directly at the network layer of the network architecture.To explore the benefits and trade-offs of the NDN data-centric communication model for peer-to-peer file sharing, we have proposed nTorrent [21]; an application for peer-to-peer file sharing in NDN. nTorrent was initially designed and evaluated in 2017. This paper is a preprint of [32]. The definitive version will be published by the ACM library.