A State-of-the-Art Survey of Peer-to-Peer Networks: Research Directions, Applications and Challenges

Centralized file-sharing networks have low reliability, scalability issues, and possess a single point of failure, thus making peer-to-peer (P2P) networks an attractive alternative since they are mostly anonymous, autonomous, cooperative, and decentralized. Although, there are review articles on P2P overlay networks and technologies, however, other aspects such as hybrid P2P networks, modelling of P2P, trust and reputation management issues, coexistence with other existing networks, and so on have not been comprehensively reviewed. In addition, existing reviews were limited to articles published in or before 2012. This paper performs a state-of-the-art literature survey on the emerging research areas of P2P networks, applications and ensuing challenges along with proposed solutions by scholars. The literature search for this survey was limited to the top-rated publisher of scholarly articles. This research shows that issues with security, privacy, the confidentiality of information and trust management will need greater attention, especially in sensitive applications like health services and vehicle to vehicle communication ad hoc networks. In addition, more work is needed in developing solutions to effectively investigate and curb deviant behaviours among some P2P networks.

Meanwhile, in [42], the authors developed an overlay network that functions by connecting smaller structures in an unstructured manner and, peers can be connected to several rings. But, the proposed overlay network is less expensive in comparison with hierarchical structured P2P systems. Furthermore, unstructured peer-to-peer networks are not efficient and scalable, although, they are very resilient. Nodes interconnect randomly in unstructured P2P networks, therefore, the diameter of the network cannot be precisely determined. In contrast, structured peer-to-peer networks are based on DHT. Since its structure is rigid on the overlay network, performance is degraded and potential for attack when nodes are removed [18]. 1n 2019, the author in [90] created a non-DHT-based structured P2P network using residue class (RC). It was a pyramid tree structure based on interests. In this tree, node I represent a group of peers who are interested in a resource of type i. Because there are many paths between most of the nodes in a complete pyramid tree, a P2P architecture was chosen for this project. From the standpoint of creating load-balanced as well as robust communication protocols, such a structural property can be beneficial. Furthermore, the tree diameter limits the search latency for its intergroup data lookup technique, which is independent of the number of distinct resource kinds and the total number of peers in the system. Furthermore, every intra-group data lookup communication just requires a single overlay hop. In a discussion of structured and unstructured P2P networks, [19] pointed out that an exact and exhaustive search can be done on a structured overlay network. They further attempted to address security issues in gossip-based protocols by using a probabilistic approach to determine the best candidate for gossip. Conceptually, gossip-based protocols are designed for unstructured P2P networks, owing to their ability to form dynamic structures with the aid of the view of the node. When it comes to routing of large distributed infrastructure, there are associated security challenges such as trust and reputation management, privacy and anonymity.
Overlay networks depend on Distributed Hashing Table (DHT), however, many hash functions do not consider the interconnections between item sets, thereby making them ineffective for related items. Owing to this realization, the authors in [91] developed a distributed array by adapting a DHT, with a resultant reduction in the number of messages needed to access elements. Furthermore, to improve the data rate in sharing files, [16] developed a peer-to-peer overlay network over optical fibre, which uses dense wavelength division multiplexing. With this privacy and the high data rate needed for multimedia communication can be ensured. In [17], the authors sought to enhance multicast communication by developing a generic method, which is used to optimize multicast tree depth in structured and unstructured peer-to-peer systems. The proposed system further helps to manage the latency issue of the overlay network. Features of group communication were incorporated into the system, leading to a multicast system that is based on a distributed algorithm.

Hybrid P2P System
According to [92], "a hybrid architecture attempts to strike a balance between the accuracy of the centralized architecture and the lower load of the pure architecture. An example of hybrid P2P structure is super-peer P2P systems." Fig. 1 shows a general architecture of a super-peer P2P network. As indicated by the following literature, there are ongoing efforts to maximize the advantages of P2P and that of other systems, leading to the development of more robust hybrid systems [12]- [14], [70]. The authors in [14] presented the development of a scalable, efficient and fault-tolerant hybrid of P2P network and wikis, an application of web 2.0 for use in content repositories. Also, discussed were the key blocks that enable peer-to-peer data management at the system non-volatile storage layer for repositories. The authors noted that many internetbased repositories do not use user comments to classify and organize their contents. For some that do, they rely on a centralised web server and seek to make a profit from users comments and tagging. Fig. 1: super-peer peer-to-peer network [92] Video sharing is a critical application of P2P systems. An architecture that integrates the merits of peer-to-peer and Ethernet passive optical network (EPON) architecture was proposed in [93] for addressing the problem of low-cost large-scale video sharing. The proposed architecture included a mechanism that adds downstream bandwidth at the optical live terminal. The researchers in [13] presented a hybrid live peer-to-peer network based on tree and mesh topologies. This was necessitated by the requirement to ensure smooth media playback. The developed hybrid system sought to maximize the merit of either topology, although trading off some data rates. Table 2 shows the merits and demerits of tree and mesh topologies.

P2P Architecture and Protocols
Examples of literature discussing P2P architecture and protocols are [13], [36], [41], [46]- [49], [52]. In designing efficient P2P protocol and architecture, it is essential to consider churn. Conceptually, churn refers to the dynamics of peers, in terms of how peers join and leaves the network, which may result in network instability. It usually split the network into smaller units, leading to loss of communication or node failure and undesirable consequential data loss.
Monitoring network communication for violations of data security regulations and monitoring data at endpoints to determine whether it was correctly transported from one node to the other might be used to avoid data loss between nodes. For safe inter-node communication, the data might also be encrypted. Incorporating the idea of least privilege is another viable answer. That is, at any abstraction layer of a computer environment, each node must have access to just the information and resources required for its legal function. The authors in [80] modelled churn both as degreedependent and degree-independent node failures using random graphs. Peer-to-peer protocols were evaluated in [48] while analyzing several factors in connection with churn.
Efficient routing in P2P networks is an issue that has also attracted the attention of researchers such as [47], who noted that existing routing algorithms were based on a random selection of neighbour nodes. Subsequently, a novel routing algorithm based on iterative self-organizing data analysis technique clustering topology for improved routing efficiency. Also, a typical peer-to-peer file-sharing network is not topology-aware. And this constraint leads to its having lower efficiency.  [41] proposed a P2PMesh that is aware of its topology and allows for efficient data sharing. It involves the use of three strategies depicted in Fig. 2. Fig. 2: P2PMesh topology-aware strategies proposed by [41] Distributed denial-of-service attacks (involving exhaustion of connections), server bottlenecks and centralization of the server are examples of problems encountered by internet protocol (IP) voice call technologies. Hence, in [26], the authors presented improved Kademlia protocol to achieve high-level security, rapid addressing and discovery in P2P voice communications. This resulted in a peer locating efficiency increase of up to 20%. Figure 3 depicts a super and normal nodes structure of the proposed I-Kademlia protocol. Also, in a centralized system, servers can break down or operates at a low level of performance, owing to excessive multimedia loading [11].  [26] In [49], the authors presented a strategy for the detection of P2P botnet traffic. The authors used a more accurate 2-tuple conversation-based methodology that is oblivious of port and protocol, in contrast to 5-tuple based methodology, which is flow-based.
The desirable protocol should ensure efficient scheduling of video data dissemination among peers that will reduce the number of hops, delays, and improve the user-perceived quality of video streaming is challenging in P2P video streaming. Owing to this, agent-based scheduling has been proposed such as the belief-desire-intention (BDI) agent architecture in [36], which aid in partner selection, and Net Logo for simulating the modified Gnutella protocol [75].

Security and Trust Issue in P2P Networks
Since P2P networks are largely anonymous and decentralized, security is a major issue attracting the interest of researchers such as [2], [19]- [25], [52]. The authors in [2] examined the effect of anonymity on P2P users deviant tendencies. Instances of deviant behaviour include peers distributing illegal pornography such as CSA, bestiality, rape and incest, and copyrighted materials. Consequently, queries and query hits were intercepted and analyzed.
Researchers such as [20] noted that effective identity management is key to addressing these issues with P2P overlay networks for large distributed infrastructure routing. One approach for ensuring anonymity, while giving identities via the active operation of two trusted third parties, which internally certify users. Protection against the following can be achieved Sybil attack [27], [32], eclipse attack [20], [92], [94] and whitewasher. Eclipse attack constitutes one of the most disruptive attacks on P2P networks, in which an entity uses "multiple identifiers for the purpose of cutting off traffic to and from a particular node, thereby eclipsing them from the network" [92]. Fig. 4 shows a depiction of an eclipse attack on a hybrid P2P system. More so, in P2P several trust mechanisms can hardly prevent peers with bad behaviour from gaining access to the network and hindering trusted activities in the network. Thus, in [95], the authors presented a metareputation system that evaluates peer reputation by examining the behaviour of peers it has invited to join, and not just its behaviour. The authors noted in [79] that owing to BitTorrent traffic volume, it is a potential candidate for hidden data carrier, in a report of StegTorrents. The authors further noted that hiding information in network steganography can be for non-malicious intent such as organizations afraid of corporate espionage. Another use will be to conceal communications between journalists and information sources. Meanwhile, a P2P based network capable of detecting local man-in-the-middle attack targets at secure socket layer (SSL) and transport layer security (TLS) was proposed in [25]. The design neither rely on centralized notary service nor owners of websites, rather, the proposed design authenticate certificate via retrieving them at various points on the network. Owing to the need to realize a decentralized and scalable system coupled with the privacy-aware feature, several strategies were integrated into the design called Laribus as shown in Fig. 5. Peer-to-peer traffic is typically not friendly to other sources of traffic in a network, emphasizing the need to identify them. Effects of P2P traffic on network anomaly detector is still a subject of research, in spite of the work in [61], who attempted to minimize the reduction of accuracy to traffic anomaly detectors owing to the presence of P2P traffic by identifying the properties of malicious traffic that do not overlap with peer-to-peer traffic, which is then used to design a traffic preprocessor used by the detector to improve its accuracy.
Furthermore, in order to check for the integrity of files during sharing, many networks depend on several quantities of hash values. Thus, the authors in [88] examined how these hash values can be used to identify unknown data remnants and file fragments. The proposed methods, was, however, not tested on hard drives. Figure 6 shows a typical file content in torrent.

Multicasting and Multimedia File Sharing
Multimedia file sharing is a key application of the P2P system. However, the following challenges exist the need to have a pause-free video quality, effective bandwidth utilization, lowering of jump latency, scalable video for heterogeneous platforms, and so on. Some of these challenges depend on the length of the video file. For video with playback time <10 minutes, the challenges encountered are (a) peers can jump to other pages faster or close to the page, and (b) greater overhead is created in establishing an overlay network. Owing to these, the authors in [97] proposed a peer-to-peer based online short video sharing policy that integrates interest-based peers, clustering strategies, short video caching and streaming source peers algorithm, and VoD popularity factor. Other researches on multicasting and multimedia file sharing applications and solutions are presented in [34]- [42], [98][99]. The authors in [100] developed an algorithm for finding frequent itemsets within a P2P network. For QoS constraint services such as live streaming, neighbour peer selection must be done efficiently in terms of reduced playback delay, startup delay, end-to-end delay in the network, distortion and frame loss ratio is decreased. This is in view of the influence of overlay construction and scheduling tactics on the performance of P2P live streaming [101]. Consequently, random peer selection, decentralized mechanism, and specialized protocol where peers regularly exchange information about their status have been proposed. In [101], it was observed that despite the fact that a great number of scheduling techniques have been created, none of them is broad enough to address live streaming concerns. At the receiver end, there is a significant latency and poor visual quality. Therefore, the researchers proposed a new startup-based selection technique and a slack time-based scheduling strategy. The start-up buffer location for a new peer was defined by the start-up selection procedure, and the scheduling scheme picks both the chunk and the peers. Both push and pull priority-based techniques were used www.jenrs.com Journal of Engineering Research and Sciences, 1(1): 19-38, 2022 24 in the scheduling strategy with a significant improvement in network performance and video quality at the receiver end as the result.
However, the researchers in [102], observing that peers are not equally endowed with resources such as battery life, network connectivity, available bandwidth, and online permanence time, introduced a fitness parameter i f , defined in equation (1) and the parameters are defined in Table 3. The aforementioned resources are critical when the files to be shared are multimedia.
In [40], a system that delivers live multimedia streaming using a P2P network was proposed. Components of the multimedia system are shown in Fig.  7. In [35], it was observed that while some researchers have attempted to solve existing issues in P2P video file sharing such as transversal of firewall, flash crowds, network address translation, and authentication of contents. There is a need to develop a strategy to systematically assess the quality of P2P video service in terms of end-user perception. This was done by the authors while understudying the Lancaster Living Lab P2P based live video and video-on-demand service provider. Figure 8 shows the proposed multimodal quality of the user experience measurement framework.
The authors in [22] presented a new P2P management system for the high-speed quality of service-aware backbones. The system uses a module, which interfaces network peers and infrastructure used in communication. When a QoS constraint is about to be violated, a rerouting strategy is activated deploying virtual circuits, hitherto redundant. Another issue with P2P video streaming is a constraint in peer resources [102] coupled with a high rate of error under the P2P wireless mesh networks (WMNs) scenario.
In [98], a Fibonacci ring overlay network with distributed chunk storage for peer-to-peer VoD streaming will reduce jump latency attributable to VCR-like operation. Under this scheme, video information is split into bits at peers local storage. To reduce jump latency, some neighbours are maintained in a set of concentric rings with Fibonacci radii, thus quacking peer discovery time. Furthermore, an overlay network, which distributes the stored chunks of video, is constructed to minimize the effect of churns.
Many existing studies gave more attention to uniform chunks during seeking operation in VoD. More so, the impact of a lot of seeking requests has not been www.jenrs.com Journal of Engineering Research and Sciences, 1(1): 19-38, 2022 25 adequately studied. The authors in [103] developed a scheme called D-splay used in indexing data chunks in peer-to-peer VoD networks. In [34], SeekStream that easily adapts to user bandwidth changes and behaviour was proposed. This will guarantee stable video streaming even under highly heterogeneous and frequent seeking operation scenarios, although increasing overhead by 4%.
Meanwhile, the telecommunication space is filled with heterogeneous devices such as mobile phones, computers, etc. with various playback capacities. Owing to that scalable video coding (SVC) have been recommended for use in obtaining homogenous, even when sources of the video are heterogeneous. Note that, SVC is used to modify the rate of flow from several sources so that availability upload capacities can be used to deliver homogeneous video quality from all sources. In SVC, video information is encoded into layers. Scalability can be spatial, temporal, and in terms of fidelity or combined scalability. Also, SVC can be used to provide differentiated video standards to peers with heterogeneous capacities [81], [104][105][106][107][108]. However, the quality of the delivered video is degraded by wireless streaming. Hence, the authors in [37] developed an adaptive unequal video protection strategy for small to large scale video streaming over P2P WMNs. Whereas, in [38], the authors proposed a distributed video-sharing algorithm among partner peers, along with a cross-layer design method for ensuring the video quality. Here, some problems associated with video sharing were modelled as a distortion-delay problem solved with a quality-driven scheduling algorithm. Factors considered in the models were (a) network congestions (b) encoding behaviour (c) automatic repeat request query (ARQ) (d) modulation (e) coding and finally (f) packet playback delay.

Semantic Routing and Search
Semantic routing and search are important aspects of P2P networks because they aid efficient peer discovery [56][57][58][59][60], [109]. The approach varies, depending on the type of overlay network, it could be structured or unstructured. The dynamic query is usually applied to unstructured P2P networks, aimed at reducing the necessary peers needed before reaching desired peers. Consequently, in [110] a dynamic query over DHT for performing a dynamic query over the structured P2P network. The searching algorithm also involves matching keywords with advertised ones. But, what if the keyword is wrongly spelt or incomplete? The authors in [109] developed a double Metaphone algorithm to phonetically match misspelt or incomplete keywords with the template.
The authors in [1] proposed a QoS-aware service discovery method implemented in two stages for unstructured P2P networks, namely; service registration stage-where functional and non-functional information is registered and service discovery stage. The proposed system, meant for elastic cloud computing was probabilistic.
In [58], the authors proposed a decentralized system for Semantic Web Services. In order to reduce overhead and complex computation, the approximate solution was sought via sampling-based method; with that assumption that a sample, which is independent and identically distributed, is present at a location to generate a set of candidate items set.
In P2P search, the efficiency of the process is highly desirable. But improving inter-peers trust could improve node searching efficiency. Owing, to this a trust-aware semantic-based query routing method for improved efficiency of the search was reported in [56]. Bloom filters were used to complete multi-keyword queries while lowering the query cost. Furthermore, in order to reduce workload overheads and enhance discovery in P2P networks, hierarchical architecture has been proposed [46]. However, for efficiency in searching, the ratio of the supernode to the ordinary node has to be optimal, to reduce the latency of lookup.
In [60], the researchers reported on an efficient technique for enhancing the effectiveness of cooperative searching of a large-scale distributed system in unstructured peer-to-peer networks. It was observed that traditional approaches do not guarantee the scalability needed to manage large and increasing semantic web services. Consequently, the authors proposed a method called 'similarity flooding' based on a scalable epidemic algorithm, which results in a high recall rate and lowered time to discover semantic web services (SWSs). Conceptually, flooding involves peers sending queries to other peers via an unstructured P2P network. The search terminates when the time-to-live of the query equals zero. The authors in [111] evaluated classic flooding, random walk and gossip-based resource searching algorithms for mobile P2P networks and methods for enhancing these algorithms with a view of using them in mobile ad-hoc networks (MANETs) was proposed. However, ref. [76] pointed out that flooding incurs large overhead. Owing to this, the researchers proposed a statistical matrix form of flooding, in which distance of transmission between neighbours, amount of shareable files, query service, and so on are incorporated into search algorithms. In addition, research proposing bio-inspired search algorithms has been reported, such as in [57], [112]. The authors in [57] proposed maximizing search efficiency of peers' databases using a bio-inspired algorithm, reported to have better query and traffic response than both beeand ant-inspired algorithms. A bio-inspired caching mechanism based on the Artificial Bee Colony (ABC) owing to its reliability was presented in [112]. Furthermore, the ABC algorithm was enhanced to help reduce single-point failure and over caching problems in the P2P network and also reduce energy consumption.

Peer-to-Peer Network Modelling
To effectively describe a peer-to-peer network, and to enhance its performance, there is a need to model it. The following discussion presents cases of P2P modelling in terms of the development of incentive mechanisms, optimization, trust and reputation management issues, etc. Table 4 shows a classification of the discussed models. In [72], an efficient social-like P2P method for discovering resources was proposed. The method mimics various human social behaviours, in which network connections are regarded as relationships, while peers are considered as people. Many file-sharing systems are based on unchoking algorithms or tit-for-tat. However, this reciprocal incentive scheme approach is not sufficient for designing heterogeneous P2P network, thus, the authors introduce an incentive scheme based on virtual nodes or clusters of trusted nodes that unify user devices since devices with enough resource can support devices that are poor in resources while maintaining game-theoretic properties of reciprocity [113]. There is also a need to provide incentives to peers so that they can share resources [114]. Many incentive systems and policies have been developed in recent years to balance the load and prevent free-riding in peer-to-peer (P2P) networks. One such approach is global peer ranking. Peers are rated using a metric called the contribution index in this approach. The contribution index is set up in such a way that peers are encouraged to share network resources. This strategy can achieve fairness in terms of upload to download ratio in each peer. The calculation of the contribution index, on the other hand, is not simple. It is computed in the network as a whole, distributively and iteratively, and it necessitates peer-to-peer clock synchronization. A slight clock synchronization problem can result in incorrect results [55]. Therefore, the authors in [55] suggested a simple incentive mechanism based on peer contributions that can balance the number of resources uploaded and downloaded by each peer. Because it does not require iterative calculation, it can be implemented with reduced message overhead and storage space while still maintaining strict clock synchronization.
It is worthy of note that existing P2P networks are bandwidth-intensive [115]; posing a financial burden on ISPs and deteriorating their networks. Proposed solutions such as the use of caching devices are limited in deployment by legal concerns; expansion of ISP infrastructure is not sustainable, and an increase in available bandwidth is consumed by the ever-expanding P2P network. Blocking of P2P traffic has also been suggested, but this violates the principle of net neutrality. Enforcing limits on bandwidth consumed via traffic shaping is also not effective because P2P peers can encrypt themselves.
Although predicting P2P traffic is challenging owing to the following non-linear properties of P2P networks: (a) self-similarity, (b) outburst continuity, and (c) multiconstruct, some P2P networks contain harmful files, making it crucial to predict P2P traffic [116]. An architecture to measure, identify and optimize P2P, which can adapt to the unpredictable nature of the P2P network as shown in Fig. 9 was proposed in [117]. However, the architecture involves traffic shaping and blocking strategies. Fig. 9: Architecture for P2P network prediction [117] The authors in [118] highlighted various simple and easy to implement methods of message transmission targeted at increasing network resource utilization for low traffic scenarios. Ref. [116] used wavelet-analysis to handle the non-linear part of net traffic and Kalman filter to handle the linear part.
Both [119] and [120] address the issue of pricing of P2P content. In [120] optimal pricing files in the network was presented. Whereas, the authors in [119]  in [87] studied P2P network traffic using BitTorrent traffic as a case. The authors noted that the majority of P2P traffic monitors are either in favour of internet service providers (ISP) or user-centric. Therefore, a traffic control that satisfies both ISP and P2P users was proposed. One method of improving the efficiency of P2P content sharing is locality awareness, which helps to minimize inter-domain traffic and download times for ISPs and users respectively, resulting in a win-win situation. This is easily true for homogenous systems, but hardly so for real-life peer distribution.  [125] Credit incentives for quality video upload [126] P2P content availability [127], [128] P2P trust management [43], [129] Peer pollution in P2P In [121], the authors studied the use of local mean decomposition (LMD) and generalized autoregressive conditional heteroscedasticity) GARCH in traffic prediction of flash P2P videos. LMD was used to decompose the long-related flow, whereas, the shortrelated flow is predicted using GARCH.
Determining the size of a peer-to-peer network is another aspect that has been modelled. In [122], it was observed that this along with determining the resilience of P2P botnets could be difficult. The researchers thus presented a graph-theoretic description of the basic vulnerabilities and inherent characteristics of peer-to-peer botnets. Also, several mitigation methods for determining the resilience of current P2P botnets were reported. Meanwhile, botnets are used by persons with malicious intent, in terms of commission of financial fraud, spam and denial-of-service attacks. The authors in [123] discovered major botnet characteristics in local network traffic for User Datagram Protocol (UDP) networks. The authors hope that this will help in botnet detection. To generate a live P2P network environment, a torrent program was used during the capturing procedure. The UDP handled the majority of data transfer in a network, providing marginal transport services, non-guaranteed datagram delivery, and direct access to the IP layer's datagram service for applications. For applications that do not require the TCP standard of service, UDP is employed. The majority of the botnet's attacks were carried out through TCP.
On the other hand, ref. [69] modelled the relationship between data transparency in peer-to-peer networks and size scalability, which will aid in evaluating the extent of scalability of the system considering overheads. In order to evaluate data transparency, the following were considered: bandwidth, CPU utilization, and frequency of data request.
Meanwhile, another issue in the P2P network is the Byzantine agreement problem, which occurs when nonfaulty nodes are required to cooperate irrespective of the problem caused by faulty peers. However, several bouts of exchange are needed before non-faulty peers can agree. In [63], an algorithm for reducing the required bouts of exchange was developed.
Furthermore, the authors in [114] and [124][125] observed that peers are not generous enough to share their limited resources, such as bandwidth, in a practical mobile P2P network, but only want to download, owing to their being strategic and rational. This practice is known as "free-riding." Subsequently, there is a need to both design a mechanism to incentivize the peers to share resources and a framework for measuring the incentive mechanism for the MP2P system. In [ incomplete game was developed. Whereas, a framework based on evolutionary game theory was developed in [114]. In [125], a credit incentive for peers in a network encourages the upload of multimedia files.
Furthermore, the authors in [71] presented an analysis methodology based on an evolutionary game for verifying the efficiency of an incentive mechanism for peers. Here, the client-server relationship was modelled as a game, while, considering its asymmetric properties. Inter-swarm collaboration and sharing of resources have been proposed, which involves sharing of storage and bandwidth among swarms, leading to optimized usage of resources and better content availability, although this requires content preloading. However, content preloading and coordination of inter-swarm results in additional overheads. In [125], the authors reviewed existing strategies on multi-swarm collaborations in P2P content sharing. For content to be shared, it has to be available, hence, the probability ( k P ) that content is not available to a peer is given by eqn. (2) [126] and the definition of parameters are shown in Table 5.  The dynamics of churn and infrastructure failure lower content availability in the P2P network. So, developing a fault-tolerant system such as the decentralized scheduling algorithm for peer-to-peer grid proposed in [82] is desirable. In the proposed system, when the node fails, the algorithm reallocates jobs of grid resources considering the cost of computation and communication required for the job.
A task select node of the grid with the smallest workload is called a computing field com I . Where i T is the amount of computation needed by the ith task on queue, the number of processing elements in the node's grid is A and mips C is million instructions per second that a processing element of the P2P grid resource can execute?
Trust is yet another factor that determines a peer's willingness to share a file. Furthermore, the danger of P2P networks spreading viruses and garbage data exists. Researchers are developing various trust models and architectures that will improve the file-sharing capabilities of peers [127][128]. Hence, the Eigen Trust reputation management system, which depends on a collection of pre-trusted peers, which is a major limitation, since some honest peers are ranked low have been proposed [128]. In [128], the authors presented a trust management system, in which honest peers (h) contributes to computing the overall reputation of the other peers. The maximum reputation value was given in the form of eqn. (4).
A model to integrate forgiveness into the Eigen Trust reputation system, which aids in amending the breakdown of trust occasioned by unintentional mistakes, was proposed in [73][74]. According to [73], the following four factors should be considered in the forgiveness based model, such as (a) frequency of offence (b) current offence' severity (c) compensation (d) reciprocity of the offender.
Equations (5) and (6)  Another trust management issue has to do with peer pollution [43], [129]. That is peers deliberately generating, which results in the degraded network for other peers in the network. The authors in [129] noted that "video segments might be altered by any peer before being shared". It was further mentioned that "among existing proposals, reputation-based defence mechanisms are the most effective and practical solutions". Meanwhile, the authors in [43] proposed a trust management model given as eqn (7) and the notations are defined in Table 6: Trust that user i has on another user j at a time t ,with a value between distrust "0" and complete trust "1" Direct trust that user i has on user j at time t ,with a value between distrust "0" and complete trust "1" Indirect trust that user i has on user j at time t ,with a value between distrust "0" and complete trust "1" , ij  User i confidence of its direct trust over user j with value between distrust "0" and complete trust "1" In [23], the authors noting that optimal peer selection is difficult owing to variations in dynamic and heterogeneous capacities presented a PSO-based strategy for selecting peers. This resulted in decreased query delay and improved security.
The author in [130] thoroughly examined and expounded on numerous aspects relating to data communication, transaction propagation, and the likelihood of an interference attack that created a delay in transmission of a P2P based network. The authors also showed the impact of block size, consensus, and blockchain scalability, as well as the relationship between factors. The authors in [131] examined the use of blockchains among peers where members do not trust one another. Blockchains allow peers to interact with themselves without the use of a trusted intermediary, and in a verifiable manner.
In [132], noted that electronic voting (e-voting) is a time-and cost-effective method of conducting a voting procedure that has the advantages of allowing for large amounts of data in real-time while still requiring a high level of security. However, worries about network security and communication privacy for e-voting have grown. Securing electronic voting is a pressing issue that has become a hot topic in the field of communications and networking. How to use blockchain in a peer-to-peer network to increase e-voting security was shown. For the essential criteria of the e-voting process, a blockchainbased e-voting scheme on a P2P network is presented by combining the following ideas. A blockchain-based evoting system for numerous candidates was been created on Linux systems in a P2P network to prove and verify the scheme. The implementation result demonstrated that it is a practical and secure e-voting system that addresses the issue of vote forgery during electronic voting. According to the author, the e-voting mechanism built on the blockchain may be immediately used for a number of networking applications.
In [133], the authors considered the issue of the privacy of transactions in Bitcoin P2P. Currently, the identity of the node that originates a communication is usually kept concealed to safeguard user privacy. However, an attacker watching the entire network can use the spread pattern of a transaction to track it back to its source via what is called rumour centrality, which is created by symmetry in the dissemination of gossip-like protocols. The authors further noted that recent research has attempted to address the problem by exploiting proxied broadcast and violating the symmetry of the Diffusion protocol, which is currently utilized in Bitcoin. However, the complexity of their design may make it difficult for them to be adopted in the actual world. Therefore, the www.jenrs.com Journal of Engineering Research and Sciences, 1(1): 19-38, 2022  30 authors suggested a transaction relay protocol with a simple yet effective design that secures the source of transaction messages. The approach does not involve the creation of propagation graphs and decreases the adversary's ability to acquire precision by opening many connections to the same node. Experimental data demonstrated that an eavesdropper adversary's deanonymization accuracy against the proposed scheme was up to ten times lower.

Coexistence and Convergence of P2P Network and Others
In [65], P2P and cloud computing were studied and, it was noted that both networks are large-scale distributed systems with potential application to "backup, storage, streaming content distribution, online gaming, etc." This has however become more cogent because, in recent times, P2P cloud networking is replacing traditional internet services in computing. P2P cloud networking is currently being used to offer resources with scalability to a large number of consumers. The aim and method of providing the service utilizing cloud technology can be used to classify P2P-based cloud systems [134].
In [44], the authors presented information-centric networking for P2P communications as a candidate solution for future internet-based applications. In [64] a P2P cost-effective and performance-enhancing file sharing arrangement that involves a wireless mesh network, in which the network operator makes provision for infrastructures such as mesh router, storage capacity and P2P awareness system was discussed. In addition, the authors determined the optimal number of replicas for each file to obtain minimal costs of files in the network.
Whereas, in [66] a brief overview of P2P networking and application on convergence peer-to-peer context awareness, pointing out that this became necessary because sensors and devices should be designed to offer services based on awareness of the environment and users' intention was presented.
In [68], it was noted that in a ubiquitous environment, an RFID-based sensor system with a P2P network can be quite useful. By merging computing devices with a range of sensors, the authors created a network capable of controlling its processing and network resources. The functioning of the sensor network required contextawareness. Hence, an RFID-based sensing system that uses a peer-to-peer network to receive contextual information about the user was created. The proposed system comprises a reader, 30 sample tags, and a sample middleware application for reading, writing, and testing RFID tags, as well as the fundamental RFID equipment needed to operate and test an RFID system. It could detect users entering and exiting a location, as well as to measure their distance from the device. In addition, it is capable of determining the state of the sensor installation.
Another system that is being converged with P2P is content delivery networks (CDNs), which enhance the user-perceived quality of service owing to their use of servers at the internet edge. CDN providers are tapping into the P2P networks of their users to lower the cost of servers. Examples of peer-assisted CDN include "BBC iplayer, MSN video, Conviva". Others are "Kankan, Livesky, Akamai NetSession, Spotify, Tudou" [67], etc. But offering failure recovering in this type of system is challenging, therefore, the authors in [135] developed a CDNpatch, which empowers peers to compute in advance some backup content providers by maintenance algorithm and efficient information exchange at regular intervals as a solution to the aforementioned challenge. Also, the CDNPatch provides an algorithm to minimize the interruption of playbacks.
Meanwhile, in [12], [70], the researchers developed a hybrid system of CDN and P2P, in which the merits of both systems were harnessed to address the routing and resource allocation with emphasis on the economics of content delivery. The CDN/P2P based economic routing was based on an oligopolistic mechanism used in managing the content demand on servers at the internet's edge. Furthermore, the contributions of subscribers are optimized using a truthful profit-maximizing auction. In [67], the authors noted that the future of peer-assisted CDN is challenged owing to copyright issues, low reliability of P2P network, etc. and consequently presented a way of classifying the research efforts in this regard.
The authors in [45] proposed hybrid P2P network architecture for interactive streaming media to solve the disadvantages of interactive streaming media in real-time transmission, control overhead, stability, and scalability in general P2P networks. The system uses a hierarchical structure that combines a CDN, a peer-to-peer network, and a tree-mesh structure. Streaming media data is delivered to the super-nodes tree after a method for super-node selection and super-nodes tree construction is built, reducing the strain on edge servers. Meanwhile, in the case of real-time streaming media transmission, a push-pull approach is used. The edge server provides streaming media data to the asking node, which then pulls the missing streaming media data to the supernodes tree, improving data transmission in real-time. The general P2P network and cloud computing architecture is different in functionality. But researchers are examining the possibility of fussing cloud computing with peer-to-peer systems [59], [136][137]. A hybrid of these two systems was proposed for multimedia streaming in [136][137]. In [137], a review of cloud-based P2P video streaming articles between 2009 and 2014 was done. However, the authors in [59] discussed papers on applications of P2P networking on the large-scale distributed cooperative environments on cloud and P2P networks. For large and increasingly dynamic web services, centralized servers for registering are not realistic, and efficient. Also, they do not support semantic description.

Investigation and Management of Peer-to-Peer Networks
When an offensive file is shared among peers in a network, there may be the need to trace the originator of that file. This is usually not easy owing to the decentralized architecture of the P2P network. However, the attention of researchers has been drawn to forensic investigation of malpractices that could occur. Examples of this include the work reported in [77], where a model to identify the peer who was the first to upload a file in a Chinese community file-sharing network called Foxy was proposed. This can aid P2P forensics since the technique used for investigating BitTorrent seeder are inadequate for Foxy based on the Gnutella 2 protocol. Monitoring and management procedures must be used to control the quality of peer-to-peer systems. In largescale networks with independent, unstable nodes, both tasks are difficult. A possible solution provides an extensive statistical depiction of the live state of a peer-topeer network. The Autonomic Computing model is shown in Fig. 10. In the event that a quality deviation is recognized, a predefined system state is approached by autonomous system re-configuration using autonomic computing concepts. A good monitoring scheme can prevent possible data loss when data are transferred from one node to another.
The monitoring tool shown in Fig. 11 comprises of modified P2P client, a tool for message parsing, a database for archiving information collected, and a database query mechanism. A tool, which is inserted to modify a peer node in the network, shown in Fig. 11 was developed in [138]. The node record logs data, timestamps and identification information.
Meanwhile, in [62], the authors developed a system that is capable of identifying P2P nodes operating in a network, through analysis of Net flow data, rather than via analysis of the properties of the content itself. Hence, cooperative communities in the network can be discovered or identified. Detecting cheating in Peer-to-peer based online gaming is challenging due to there being no central server for monitoring. Thus, the authors in [33] proposed a mechanism where players play with their deck, with no intervention from other peers. Features such as player dropout tolerance, usage for a variety of games, collusion prevention among peers were incorporated into the cheating detection mechanism. To optimize data gathering, a "trust-based minimum cost quality-aware" data collection strategy was presented in [139]. In [140], the authors proposed a P2P networkbased smart grid model for edge computing, in which P2P networks were used at the edge computing layer. The model's innovation was that edge computing nodes can be utilized to gather, compute, and store data while being P2P connected, allowing them to communicate with one  [39], [42] reported a filename and media scheme based on multiple features such as video and audio word, that flags unseen or previously unknown CSA media to law enforcement agencies. It was reported that previous approaches use of automatic image content analysis yield a fair rate of detection owing to their reliance on single feature description, and still others used marginally discriminative skin detection techniques. The work on CSA monitoring in the P2P network is part of the iCOP (identifying and catching originators in P2P networks) project, and an overview of the developed toolkit is shown in Fig. 12.

Challenges In Peer-to-Peer Applications, Solutions and Future Trend
Whereas P2P networks have made files easily accessible and given a boost to online media streaming of video on demand, some challenges would need to be given greater attention. A pictorial description of identified research direction in P2P research is shown in Fig. 13. For instance, in [24], while highlighting the potential role of P2P network in energy-smart cities, noted the following concomitant security and privacy challenges ensuing:  Privacy/confidentiality of wireless health services system;  Privacy and security of ad hoc networks for vehicles, and;  Development of effective trust models.  Maintenance of anonymity of transactions in Bitcoin P2P in the face of an adversary, who is watching the entire network can evaluate a transaction's distribution pattern to track it back to its source.
Another area of concern is how to prevent attackers from utilising UDP to modify data transported by UDP to attack a P2P network. In addition, the following undesirable problems emanating from peer-to-peer file sharing include [54] (a) violation of copyright laws (b) phishing scams (c) breach of confidentiality in the form of a leak of confidential information, which will need ongoing research to effectively address them.
So far the following countermeasures have been proposed: (a) the use of digital right management (b) digital watermarking of content (c) index poisoning [54]. More applications of these measures to P2P networks are expected in the nearest future.
Conceptually, index poisoning is a methodology that changes the index of illegal files in order to make them unreachable by any unauthorized peer. The shared files that were indexed are distributed over the network in advance. But cost-effectively doing this for an unstructured P2P network was the objective of [ contrast, digital watermarking involves concealing a message related to a digital signal such as image, audio, and video within the signal itself. Although related to steganography, it is different from it in terms of relatedness of the message being concealed to the actual digital signal [141].
Another area of concern is how to prevent attackers from utilizing UDP to modify data transported by UDP to attack a P2P.
Also, in the future bio-inspired algorithms could be augmented semantic techniques so that search queries are routed to the database, which possesses the most semantically matching search keyword [57]. Moreover, in terms of peer trust management, how do combining peertrust values with file trust values affect the reputation of the management systems? This is a question that needs further research. In addition, metered access and techniques to observe malicious behaviour of grid's node could be incorporated into future fault-tolerant decentralized scheduling algorithms so as to improve nodes availability [82]. Related to this is an examination to see if attackers may use topological measurements in the P2P network to execute more successful purposeful attacks [53].
In sharing P2P files the issue of bandwidth bottleneck is common, hence, a novel algorithm for searching nodes would need to be developed. In addition, few pieces of research exist on the application of agent-based scheduling to a P2P network. Another related issue here is how to further minimise inter-peer search latency.
Further research should see the inclusion of churn tolerance and scalability into large scale P2P video streaming and the associated optimisation of "selection of supernodes and network interaction efficiency." In addition, the design of economically feasible incentives for peer-assisted CDNs and unstructured P2P, in general, is still a subject of research.

Conclusion
Although, there are review articles on P2P overlay networks and technologies, additional topics such as hybrid P2P networks, modelling of P2P, trust and reputation management concerns, coexistence with other existing networks, and so on have yet to be thoroughly examined. Furthermore, existing reviews were restricted to works published in 2012 or earlier.
In this paper, a survey of current literature in the P2P network and associated emerging issues have been done.
This included a state-of-the-art review of hybrid P2P, modelling and design of a peer-to-peer system, trust management issues and so on. In addition, challenges such as security and privacy constraints along with suggested solutions have been highlighted.
Finally, areas for future research have been recommended. These included the development of a more robust privacy and security scheme for P2P. We further, pointed out that copyright violations, phishing frauds and confidentiality breaches will necessitate continued research to successfully handle them.