A study of the resource discovery approaches in Mobile Peer-to-Peer Networks

Resource discovery is an important fundamental aspect and a crucial task in Mobile Peer-to-Peer Networks (MP2P). To compliment network dynamics and churn, the unstructured search architecture is widely used. The key goal of an efﬁcient search scheme is to ﬁnd the required resource with minimal search latency, low overhead, and low power consumption to better suit the nature of mobile nodes where resource constraints are the major bottleneck. Resource discovery thus becomes an integral part of the distributed architecture and resource sharing systems. In the past, many resource discovery strategies are proposed for Mobile P2P networks. A schematic and tabular classiﬁcation of these systems enables one to review the existing works under one umbrella. This article presents an overview of such several different schemes for performing resource discovery in the MP2P network broadly classiﬁed under six different categories, i.e., centralized, unstructured, structured, super node based, hybrid, and other general lookup schemes. We also give a brief comparison of P2P, MANET, and P2P MANETs. Further, we discuss various routing schemes in such an evolving network. In this survey, we study and review the existing resource discovery techniques in MP2P systems. The classiﬁcation of each scheme with their advantages and disadvantages are discussed. We highlight a few open research issues, and brief the role of network topology and its structure on the performance of the resource search protocols. Further, we also glimpse on the security threats in MP2P networks and suggest their countermeasures. And, ﬁnally, a summary of each method is given, along with their lookup complexities.


I. INTRODUCTION
R ESOURCE DISCOVERY or Resource Search is the process to find or locate information resource/object. In simple terms, it is a mechanism wherein the querying node finds the nodes that hold the resource. Peer-to-Peer (P2P) computing overcomes the major hurdle of centralized architecture. With the development of hardware devices and wireless internet access, it became feasible to use mobile devices in P2P networks. But, as MP2P applications/systems are ad-hoc in nature it presents many research challenges. The major ones being their limited resource constraints, peer idleness, high query traffic due to flooding; churn and failure of peers, etc. So, resource discovery poses new challenges in MANETs. In, P2P networks, the process of discovering the resource is classified as an unstructured or structured type based on architectural design. The classification of P2P architecture is given in Figure 1. Few highlights of each system are briefly elaborated.
Mobile networks have limited resources and heterogeneous nodes and they are wireless and dynamic in nature. Due to these characteristics, they pose many additional key difficulties on P2P networks. Incorporating P2P network properties in MANETs is coined as P2P Mobile Ad-hoc Networks (P2P MANETs) or Mobile P2P (MP2P) network. Such systems can be linked directly in an ad-hoc fashion or the telecom operator's mobile network can be used to connect to the P2P systems over MANET [Fitzek and Charaf 2009]. When it comes to MANETs, the resource discovery process is associated with the routing protocol. In lay terms, the search is referred to as directing a request to a particular node in the network. To facilitate routing in MP2P networks, we have three approaches, i.e., the Layered approach, Cross- Layered design, and the Integrated approach. For the layered approach, the P2P protocol is implemented in the overlay network that utilizes the routing protocols in the underlying network as seen in Figure 2.
Examples of protocols included in the layered approach are M-CAN, Chordella, and Pastry, etc. While the information sharing is done between the different layers in the crosslayered design as shown in Figure 3, i.e., a P2P overlay is maintained by exploiting routing messages at routing or MAC layers. The well-known examples are ORION, P2PSI, MPP, etc. The sharing of the information is done between all layers to improve the performance.
The P2P protocol is connected to the current multi-hop MANET routing scheme, in the integrated method. Few examples are AMPP protocol, MADPastry, etc. Figure 4 gives a snapshot of AMPP and MADPastry integrated routing protocol The layered approach might perform poorly, produce a lot of messages and redundancy in communication. In short, the layered techniques have bad interactions or no sync among the layer. But certainly, they are simple to implement. The cross-layered design helps in synchronization between different layers thereby reducing bad interactions among the layers. The search efficiency in the cross-layered approach is better than the layered ones as overhead is limited thereby increasing the success ratio while in integrated design the main focus is one the routing layer where P2P functionality is embedded. Here, strict layering rule is not mandatory as in cross-layered. Fusion with the underlay has less overhead and reflects higher performance. The integrated and crosslayered approaches are simple and intuitive but have a certain limitation, i.e., they do not comprehend the growing size of the network and mobility effectively.
A comprehensive study of P2P networks was done over the past decades. P2P was a major interest of the research community. It was coined for a wired network layout. The survey was done in this category to discuss the architectural study, query processing, file-sharing systems, P2P service discovery, replication, overlay schemes, membership management, security, etc. In the past, a brief study related to P2P has been done. [Pourebrahimi et al. 2005] study P2P architecture and discuss them in brief with respect to features like scalability, reliability, fault tolerance, etc. Further, they also discuss the P2P resource discovery mechanism based  on the architectures that evolved gradually over the years. A detailed literature survey of the various search techniques with context to P2P networks is given in [Li and Wu 2006]. They classify their study for unstructured, strictly structured, and loosely structured P2P systems. The pros and cons of each searching technique are briefly discussed. The problems related to search in such architecture are also summarized. The major problems being security issues, churn, lack of standard evaluation platform for resource search, churn rate, query complexity (single, multivalued, fixed, variable), overlay structures and query types (prefix, inexact, range, etc.) In [Tsoumakos and Roussopoulos 2003], several search methods for unstructured P2P networks are presented, that provide a result-oriented analysis of the studied search techniques. In their study, they focus on performance parameters like success rate, generated messages, hit rate, etc. Their results show that the flooding-based schemes have high performance in terms of success rate for static as well as highly dynamic scenarios, but have a tradeoff in terms of overall generated messages thereby increasing the message cost. While the informed search methods show a good success rate only in a static environment and incur large overhead due to indexing in such techniques. The overlay nodes management deals with resource discovery, routing and location identification, etc. In [Lua et al. 2005] a brief of various P2P overlay networks is given classified as structured and unstructured type. They classify the overlay schemes based on the design architecture and functionality. The structured P2P overlay networks adopt lookup using complex algorithms mostly based on key, value pair. While, in the unstructured scheme it is based on several parameters like query flooding, super-peer architecture, trackers, hierarchical approach, etc. Service discovery plays an essential role in P2P networks. [Meshkova et al. 2008] provide a survey of service & resource discovery for different systems. They provide a brief classification of the search techniques and protocols in both unstructured and structured architecture. They also discuss the architecture of each P2P protocol, resource discovery mechanism that it employs, and highlights features of each protocol.
The work [Thampi 2010] discusses various search algorithms and replication schemes largely used in decentralized unstructured P2P systems. They present a categorical classification of the search and replication techniques listing the pros and cons. A detailed survey of resource discovery approach for decentralized P2P systems is given in [Lazaro and Marques 2013]. They focus on the discovery of computational resources. They discuss the classification of the resource discovery schemes based on the criteria like the number of attributes, query type, lookup complexity, etc. They further categorize the related works based on the parameters like flexibility, scalability, accuracy, security [59], [60], [61], [62], [63], fault-tolerance and completeness to give a better insight of the resource discovery techniques. [Jafari Navimipour and Sharifi Milani 2014] provides a broad survey about many current resource discovery schemes in P2P networks. They discuss many schemes in terms of features like robustness, response time, load balancing, reliability, dynamicity, scalability, etc. They categorize the schemes into unstructured, structured, super peer, and hybrid schemes. Mobile P2P is booming with the development of mobile systems and wireless communications. Researchers have focused on bridging P2P schemes for mobile environments. In [Dıaz et al. 2007] provides an overview of various mobile P2P technology. They present a survey of various architectures and prototypes for mobile P2P communication.
In general, the resource discovery schemes for the P2P network are widely discussed. All the above-discussed pa-VOLUME 4, 2016 pers talk about the various resource discovery techniques for wired P2P system or wired infrastructure. Over the last decade, P2P techniques have found their adaptability to the mobile environment, VANET, MANET, etc. Efficient resource discovery is still an open problem in the mobile P2P network. We study the various resource discovery approaches in context to a mobile environment. We aim to provide a categorical classification of how resource discovery is done in Mobile P2P networks. This study intends to provide a summary of each scheme with its merits and demerits. This survey will provide an insight into various open issues and future guidelines to the research community. We noticed that random walk and flooding methods are used by the majority of the current unstructured P2P protocols to resolve a query. The papers by Arunachalam

A. FACTORS AND REQUIREMENTS OF ANY RESOURCE DISCOVERY TECHNIQUE
In our context, resource discovery is the process of finding the address of a node in a network that holds a specific resource. The node that demands a specific resource, will resolve the address when it receives a response from the node that is holding the required resource. The design of the resource discovery technique should be based on the characteristics of the environment where it is intended to work. In short, a resource discovery approach intended for wired context may not always scale well in a wireless environment and vice versa. To design an effective resource discovery scheme, one has to consider the following features as given in Table I. In such limited constraint environments, the goal of any resource discovery technique is not only to resolve the query but also to lessen the usage of network and mobile resources. Various metrics are used to measure the effectiveness of the resource discovery technique. Few important metrics considered for analyzing the resource discovery techniques are discussed in Table II. The above section gives a brief overview of the challenges faced during the resource discovery process in MP2P networks. We also list the pre-requisite factors and requirements of any resource discovery schemes to be effective and applicable to a highly dynamic mobile network environment. The rest of the paper is organized as follows. Section 2 presents a comparison of P2P, MANETs, and MP2P environment. Section 3 talks about the routing mechanism in such an environment. The state-of-the-art resource discovery mechanism in Mobile P2P networks is discussed in section 4. A summary and comparison of the reviewed techniques are given in Section 5. Further, open research issues and the impact of different parameters on resource discovery protocols are also discussed. We discuss attacks on mobile P2P networks and present countermeasures for them. Finally, Section 6 concludes the work.

A. P2P NETWORKS
P2P is a distributed decentralized network architecture where nodes share their resources like computational power, bandwidth, storage capacity, etc. P2P networking is a more superior data-sharing platform when compared to the conventional client-server paradigm. In simple words, P2P communication architecture allows multiple peers to communicate instantly in a network of equally rolled peers without any centralized coordinator. Due to its dynamicity and simplicity, these network models are popular. Examining the existing P2P systems, a general classification can be derived. A P2P system can be either centralized or decentralized in nature. Figure 5 shows the broad categories in which these systems are classified. Now, mostly all the current P2P deployments are based on hybrid P2P architecture that combines both centralized and decentralized characteristics. A survey of the internet network traffic shows that more than 65% of the traffic consists of P2P packets [Raivio 2005]. Figure 6 shows the traffic volumes in the wired network, i.e., data per user.
Another study reveals that P2P is the single largest stakeholder of congestion. In a pure P2P system, all peers play an equal role in the system, i.e., no central controller node at least in theory. But practically these systems use a central server or directory server. Such large complex networks roll out many areas of focus like quick and efficient resource search, fair participation, DOS attacks, poisoning attacks, spamming attacks, free riding problem, etc.

Robust
The ability to cope up well with the change in network conditions.

Scalable
How effectively the resource discovery method can handle the growth in network size.
Fault-tolerance Ability of the resource search scheme to operate properly even in case of an event failure.

Reliable
Ability of the method to be overall good in any network condition.

Dynamicity
Ability of the search method to cope up with node movement and signal attenuation.

Adaptability
It is the ability of the resource discovery technique to manage network dynamics and network load.
False Positive Error Ability of the search technique to exactly locate the resource if available.

Security
It is the critical aspect of the MP2P network that include denial of different attacks incurred due to the injection of malicious node, authorization, authentication etc.
Load balancing It is the fair distribution of work load across the nodes in the network intended to improve maximum utilization of the resources and lower node overhead while utilizing the network and mobile resources effectively.

Metrics Definition
Success rate Ratio of number of resource queries and the successful received responses.

Network overhead
It is the total number of generated and forwarded routing messages at the network layer.
Resource discovery time It is the difference between the time at which a resource query is generated and the time at which a response is received.
Power consumption It denotes the total energy consumption of all the network nodes during the resource discovery process.
Bandwidth usage It is the measure of number of data packets successfully delivered over time.
Network routing load Ratio between the number of routing packets generated and forwarded with the total P2P received packets.
Overall dropped packets It is the count of the number of packets dropped due to bottlenecks.

MAC Load
Ratio of the MAC layer sent packets and total P2P received packets.
Packet delivery ratio Ratio of the total sent and received P2P packets.

B. MOBILE AD HOC NETWORK (MANET)
MANETs have also been a popular research area in past decades due to the rapid advancements in wireless communication technology and mobile hardware devices. MANETs are decentralized infrastructure-less mobile wireless networks where the direct neighbors can be used as intermediate relay nodes to connect the other nodes that are beyond the terminal's coverage. The advantage of these kinds of networks is the capability to form a communication pattern on a fly without any requirement of infrastructure like a base station that is required in cellular networks. The nodes in MANET have limited battery power, further, the transmission range is critical while all nodes share the same frequency band as a medium to transfer data.

C. MOBILE P2P NETWORKS
Mobile P2P systems are all about bridging P2P models in cellular networks. Applying P2P network concepts in the VOLUME 4, 2016 FIGURE 6. Distribution of traffic in wired network [Raivio 2005].
mobile network can be coined as P2P MANETs or MP2P network. A mobile P2P network can be visualized as shown in Figure 7. Mobile P2P applications have an emerging scope and opportunities provided the challenges are tackled. MP2P system faces additional challenges like bandwidth issues, power and memory constraint, dynamicity, heterogeneity of nodes, frequent disconnection, unreliable connection, etc in respect to the wired P2P system. Some of the key research areas for MP2P networks include data retrieval, service discovery, caching, data dissemination, query processing, routing, network architectures, resource discovery, etc. Efficient P2P application and schemes for the cellular environment is still an open research area.

D. DIFFERENCES & SIMILARITY BETWEEN P2P, MANET AND MP2P NETWORKS
To clearly understand these networks, we compare their similarities and differences. Vast survey work has been carried in these networks and the advantages and disadvantages have been discussed in depth. We summarize the differences and similarities of these networks in precise as given in Table III  and Table IV respectively.

E. P2P COMMUNICATION OVER MANETS
Even though P2P and MANETs have similarities, as discussed in the previous section, they hold a common difficulty, i.e., supporting continuous connectivity. To limit this, several approaches for P2P solution over MANET are discussed in [Castro et al. 2010]. They suggest some design choices for integrating P2P and MANET. Further, they discuss related work done in both the unstructured P2P and structured P2P networks over MANET. They present 3 approaches for feasible P2P communication over MANETs. Firstly, the layered design in which the P2P overlay protocol is directly deployed over the MANET routing layer. Secondly, the cross-layered design in which all layers interact with the P2P application layer and vice versa. Thirdly, the integrated design in which the P2P application layer is integrated with the routing layer, i.e., building a routing algorithm with P2P functionality. Figure 9 shows the P2P deployment solutions for Mobile Ad hoc Networks.

III. ROUTING IN P2P, MANET AND MP2P NETWORKS
For MANET's and MP2P network, the process of finding the resource is linked to routing. In short, search means directing a resource request to a specific node in the network. How the queries are guided in such networks is an important task. The routing schemes are classified based on the architecture as Flat routing, Table driven routing, Hierarchical routing. In this section, various routing schemes in Mobile P2P Networks are discussed briefly.
Cherbal et al. [2014] suggested an approach to adapt Chord P2P protocol over a dynamic mobile network. The chord protocol is an efficient lookup protocol for wired P2P network where the (key, value) pairs are stored in DHT and indexed accordingly. The arrangement is a circular ring of 2m nodes with a clockwise directed link. In their work, they focus on the conservation of mobile node energy. They focused on enhancing the Chord finger selection approach also while considering the energy and load balance of the node with the proximity distance information, and accordingly the finger node is chosen.
Kolageraki et al. study about the various possibilities and problems related to content dissemination and routing in mobile P2P networks. To suit mobility, the content-driven routing strategy and an adaptive way of data dissemination for such dynamic networks are proposed. The underlying concept of their approach is to publish the content synopsis maintained by each peer adaptively to only the promising peers. To handle the congestion by the advertisement, they suggest a pattern to guide queries using the content summaries which is forwarded to the peer having a high probability of resolving the query. With their technique, they limit the extra use of mobile and network resources.
To lower the communication overhead due to the broadcast of the messages, authors in Bok et al. [2014] propose a location-based routing scheme considering the node mobility. Each peer maintains a routing and location table for peers within 2-hops in the proposed scheme. The selection of the peer to forward the request message is done by considering the direction of each peer and the destination peer. The loca-cm] In their proposed scheme, the network transmission cost is lowered by restricting the broadcast of the RREQ message throughout the network. The selection of the peer for forwarding the message is done by considering the direction of the peer and with respect to the destination peer.
Generally, the on-demand routing protocols work using the broadcast mechanism. But, in the mobile environment, this could lead to draining out the complete battery power.
To reduce unnecessary power consumption, a self-aware ant routing algorithm is proposed in Tang et al. [2014]. The core idea behind their proposed scheme is to discover the route along the trace of the pheromone with anycast routing methodology. Their algorithm has four different phases, i.e., route discovery, maintenance, data transmission, and pheromone evaporation. In the route discovery process, a valid path to the destination node from the source node is discovered using the heuristic and pheromone information.
The route maintenance phase handles the current path route and also repairs the failure links. In the transmission phase, the packets are sent based on the received routing information. While in the pheromone evaporation process it tracks and keeps all the ideal pheromone trace links without any communication. A distinguishing feature of their work is VOLUME 4, 2016    Basic routing mechanism physical unicast, flooding physical broadcast, flooding broadcast, broadcast over broadcast, flooding that their scheme takes node energy into consideration along with parameters like link stability and quality while building routing paths.
A layered based energy-effective routing protocol is proposed in Lee et al. [2009]. Two routing schemes are suggested such as Node replacing scheme and Route changing scheme. The approach revolves around super peer and sub peer architecture. In their system, the file search is done between super peers. Each super peer maintains two tables, i.e., File table and Routing table. In the node replacing scheme, a super peer with critically low energy is replaced by one of its sub peers who have the largest amount of energy amongst all. While with the change route scheme an alternate route is discovered considering the energy feature of the nodes. From the routing table, the route with the highest minimum energy is selected as the feasible one. Cheng et al. [2005] propose an integrated protocol for MANETs. At the network layer, their scheme combines anycast and Chord routing protocol. The AODV RREQ (Route Request) packet is extended with two additional fields (i.e., service key and anycast groupID) to support Chord in the network layer and to use IP anycast in structured P2P applications in MANETs. The Chord protocol is bridged with 1-1 mapping between the service keys of the nodes providing the service, and their respective any-cast groupIDs in the domain. A routing table is managed by each node. Whenever a node request for a particular data, the file identifiers are hashed to create the service key in the application layer which is later mapped at the network layer. Consider this following example to understand their working. In the case of the unicast source node, it passes the desired service key to the default anycast group. In the case of the anycast source node, Chord protocol is employed to locate the service. To find the nearest service provider, the anycast routing is utilized by the anycast nodes at the IP layer. The nearest route to destination anycast groupID is chosen by the source node from the routing table.
Structured P2P networks are efficient in the wired context. Pucha et al. [2004] study about deploying a DHT in MANET. They study two design options 1) Layered approach 2) Integrated approach. They propose an EKTA resource discovery protocol that utilizes physical layer broadcast directly. At the network layer, their protocols implement a DHT abstraction by mixing the Pastry P2P overlay protocol and DSR routing protocol. The IP-addresses of the nodes are hashed by the SHA-1 method to create a unique 128-bit nodeIDs which are later assigned to the nodes in MANETs. Pastry's prefixbased method is used for routing of the message in Ekta. The discovery application is built over the EKTA DHT substrate in EKTA-RD. It provides 4 DHT APIs, i.e., broadcast (message, BroadcastAddress), route (message, IP Address), route (message, key), and Proximity (IP Address). The publishing process of the available resource is inserted into EKTA via hashing the resource identifier into a key, and then routing it via route (message, key) API where the message contains the description of the resource. Likewise, for the resource discovery process, the resource identifier is hashed to create a key and route (message, key) API is utilized. The nodes that own the resource reply back. Then from the list of nodes that replied the requester nodes find the closer node using proximity (IP Address) API of EKTA. If EKTA fails to analyze the proximity of any node, then it randomly chooses a node that replied to the request.
In their model, Ahmed and Shirmohammadi [2007], the network is divided into many home regions. Each such region is formed by peers of close vicinity and it is represented by a leader. Home-Region-ID is utilized to identify the home region. A pair <Home-Region-ID, Node-ID> is utilized to identify a node. The Node-ID is generated by the hash function. Between the Home-Region the search is done by controlled flooding technique. Within the local region, the chord like the content search process is used. Further, a hashing scheme is proposed and it contains 2 stages. In the initial stage, the content request is mapped to the region and in the following stage, the request is redirected to the region to find the content location.
We summarize the schemes by discussing the routing strategies along with their strengths and weakness as given in Table V.

A. CATEGORICAL CLASSIFICATION OF RESOURCE DISCOVERY TECHNIQUES IN MP2P NETWORK
Usually, the P2P file-sharing systems incorporate file transfer and search protocols. The queries are resolved and the file downloads are facilitated by the search and file transfer pro-VOLUME 4, 2016 Use ant optimization and anycast routing mechanism to build the routing paths i.e., the pheromone traces are followed with some heuristic information to find effective routing paths.
Offers suitable load balancing and fault tolerance. Lowers battery power consumption. Improves network lifetime. Offer suitable robustness and response time.
Updation of frequent link change causes high maintenance overhead. High risk of deception. Low security. Low scalability. Complex design mechanism.

Lee et al. 09
A layer-based scheme is proposed. The file search is done amongst the super peers. They also propose a node replacement and changing route scheme to replace super peers with critical energy level by sub peers with good capacity.
Reduces message overhead. Improves network lifetime. Lowers query delay. Offers suitable scalability. Reduces mobile and network resource usage.
Experiences bottleneck and single point of failure issues. Node overhead. Offers low security, reliability and less robust.

Cheng et al. 05
Organizes services into anycast groups. A unique identifier is allotted to each node. Anycast groups with unique groupIDs are formed by the nodes that offer the same services. Chord protocol maps the service key onto an anycast group providing that service while the best receiver from the anycast group is selected by the anycast routing. tocols respectively. For P2P MANETs, many resource discovery techniques have been proposed in the past. Based on the architecture and search approach, we divide the resource search techniques into six schemes: unstructured lookup scheme, centralized directory-based lookup scheme, structured lookup scheme, super node-based lookup schemes, hybrid lookup scheme, and general lookup schemes. We discuss the search strategy followed in each category and compare the merits and demerits of them respectively given in Table VI.

B. RESOURCE DISCOVERY SCHEMES IN MP2P NETWORK
MP2P is a modern approach that transforms the dissemination of resources. In MP2P, the nodes which are so-called "mobile" share resources amongst each other. MP2P communications constitute the security, privacy, node discovery, and lookup. The major challenge is to locate an object which is offered by a service called lookup. The success of these MP2P depends on factors such as immediate search response and search efficiency, the popularity of services offered, the number of network users, etc. A key difficulty in the MP2P network is to develop a suitable resource discovery technique. The disadvantages of MP2P systems are Limited power and memory capabilities, unreliable connection, and frequent disconnection. Resource discovery and routing are the most significant features of MP2P. Traditional P2P search techniques are developed assuming that there will be reliable connections, high bandwidth, and memory capability, etc. This makes them unsuitable for MP2P networks. Routing protocol facilitates the routing information among peers.
Researchers explored various dimensions such as extending the traditional P2P protocol, the use of super nodes, the use of agents, the use of bloom filters to guide search query, using locality theory, and based on the reverse nearest neighbor concept, etc. A brief review of the literature survey is described in detail in the subsections presented below.
Patel et al. [2004] propose a controlled flooding lookup service that works at the network layer to help suit P2P systems better in the mobile environment and limit query flooding. Their protocol uniformly distributes the indices throughout the network to decrease the routing overhead and optimizes the network layer query routing. Their protocol is a proactive protocol, wherein the data indexes are advertised well in advance before the search query is initiated. These indexes are stored by the neighbors efficiently to reduce lookup costs to a constant factor. In the advertisement phase, the network layer obtains an index from the application layer. The node then broadcasts its data index to the network. Every k-hop node, keep the index for a given node, while every node follows this process. The node transmits the query to its neighbors after the initiation of the lookup request. The query is mostly responded to within a maximum of k/2 hops since the indices are uniformly distributed throughout the network.
A novel layered approach is discussed in Peng et al. [2004] which relies on the super peer architecture. They propose a lookup protocol for MP2P networks based on this approach. The main idea of their proposed scheme is to form groups and register the available resources for easy access. In the proposed method, a unique ID is allocated to each peer. Further, the resources are well-organized in an ordered fashion. A super node is responsible for each assigned group according to the IDs of its shared content. Firstly, the required source ID is obtained by the source node during the lookup process. Further, the request is forwarded to the source super node for the ID of the required resource. This request is then sent to the destination super node in its group. The destination super node then checks locally for the resource. If the information is available, then the source node is replied directly. Otherwise, the request is broadcasted by the destination super node to different groups via the edge peer nodes, and then further the resource discovery process is carried in that group. The routing protocols are used by the peer nodes to communicate.  Hashing is done to create the keys which are associated with the files. This is done by DHT (Distributed Hash Table). Each node stores multiple keys. Lookup (key) delivers the node address of the object that is responsible for the key. Here resources are mapped with corresponding nodes using DHT and criteria of sharing resources are based on strict rules.
Good for simple queries but fails for complex fuzzy queries, high network overhead, complex algorithms, low security level as vulnerable to trojan and man-in-middle attacks, suffers from low dynamicity.

Super node-based Lookup Model
In such super node networks, the random walk and flooding techniques are used by the super nodes to process the queries. The ordinary nodes are linked to one or more super nodes. In case ordinary nodes request for the resource the process is handled by the respective super node.
Improve search efficiency, scale well, load-balancing efficient, reliable and suitable to cope up churn.
Super node centric, faces many issues like single point of failure, overhead of maintaining the super node, requirement of highly capable nodes, selection of super nodes, performance degradation due to failure of super nodes, energy consumption of node is high and low robustness.

Hybrid Lookup Model
Resource search is carried out by combination of both global indexing and local indexing that revolves around the centralized super node architecture based on the concept of partition and hierarchy.
Reduces query delay, offers suitable load balancing, less query message, low QOS, improves hit ratio, highly scalable and efficient. To facilitate efficient data sharing and retrieval in wireless networks Joseph et al. [2005] introduces a collaborative caching method, which is biased to separated geographical regions. Each region has a unique key based on the hash function. Their proposed scheme divides the network topology to separate the physical boundaries. Liu [2012] proposes a super node-based resource searching technique for MP2P layered network where a node is considered as the super node if it possesses weak mobility and high capacity. The parameters such as capacity, age, score, and mobility are calculated for a node. The super node manages a table that contains the file list and ID of the leaf node. The concept of a backup super node is also introduced to handle the failure of the super node. The flooding approach is used to transmit the information regarding the search query among the super nodes in the unstructured overlay network. Their search algorithm is described as follows: 1) If a node connects to a network, its information is registered to its super node and a nearby super node (candidate super node of a leaf node). 2) If the leaf node requires a file, a query request is transmitted to the corresponding super node which in turn informs the file's position if it can locate the file in the index information catalog. 3) If it can't locate the file, then the request is retransmitted to the other super nodes and the search continues. The file's position is transmitted back to the node that requires the file once any of the super nodes finds the file. 4) If the super node corresponding to the leaf node which contains the file is failed, then the query information is rendered from the corresponding candidate super node.
Zhang and Liu [2012] introduces a self-aware search technique based on the grouping mechanism using the traditional flooded topology. The main idea is that the nodes that share similar interests are put in a group. They introduce a concept of neighbor nodes & familiar nodes for every node. Further, based on the positive reply from a node there is dynamic self-organization of the nodes which helps to improve the search efficiency. Their work also mentions the network load balance which is controlled by dynamically modifying the group's radius. To tackle the mobility issues, a ranking-based replacement algorithm is proposed. The peers that share similar interests are put into a group in the topology adaptation phase. They assume that the resources which the users are looking for are generally popular content, therefore if it is a part of such groups that share common interests then it will certainly increase the lookup efficiency. Initially, each node maintains a list of familiar nodes which is updated frequently based on the previous history records of the replies by the peers, and accordingly, promotion and ranking are done. If a peer replies, then the ranking of all the peers along the path followed by the search query is increased. Initially, the search query is broadcasted within the local group whenever a node requires a resource. The query within the local group is replied by the shortest path. If the query is not resolved within the local group, then the super node of each local group initiates a communication amongst each other. Wu et al. [2010] came up with a resource discovery model for Mobile P2P networks extending the traditional Tapestry P2P protocol. The Tapestry search strategy is also based on the concept of the super node thereby making the network a layered architecture. They also proposed a node joining/leaving strategy for their service discovery model. In their M-Tapestry model, the routing is achieved using the tapestry routing mechanism among the super nodes. Their search process works as follows. Initially, each super node maintains the resource summary and mapping table for its surrounding neighboring super nodes. At the same time, a back pointer record is also managed by all the super node that gives the details about the nodes who view itself as its neighbor. When routing, the super node checks its mapping table and routes the data to the farthest node till the nearby destination super node arrives by matching the longer prefix. The working of the M-Tapestry routing mechanism is as follows. A Super Node ID is allotted to every super node. The respective registered nodes are listed using parameters such as Object ID and Peer ID in a resource table that is managed by the super node. The RouteToObject request is transmitted to its corresponding registered super node whenever a node needs a resource. On receipt of the RouteToObject request, the super node finds the registered super node by accessing the Object ID information, i.e., say, for example, Super Node ID=11 where the information is routed to the corresponding super node. Routing between super nodes is done using the tapestry routing mechanism that uses DHT. Super node with ID=11 lookup its resource table, and sends the message to the node with Peer ID=0111 and so on. The experimental results show that this scheme is much efficient and flexible when compared to the conventional tapestry model.
Bok et al.
[2012] introduce a novel approach that takes mobility, direction, and interest of the peers into the consideration for the resource discovery process. Further, what to store in the local database of the peer is prioritized using the ranking function. Each peer also maintains LIT (Local Information Table), RIT (Resource information table), and the routing table with corresponding data dissemination information. The proposed approach for data dissemination is also suitable when a peer has limited memory and bandwidth. The resource information is updated using timestamp messages thereby reducing the cost of data dissemination. Their model is also based on the super peer architecture. When the query request message is to be forwarded to the peer, it first examines its local information table (LIT). When the resource index table (RIT) does not contain the required resource, the peer transmits the query request to its neighbors till the query request reaches a super peer. The super peer then searches its Resource Index Table (RIT) to process the received query and sends the response to the requesting peer.
Qu et al. [2009] proposed a way of locating the resource based on the local information of the nodes. Here, the idea is to form many groups of nodes depending on the content locality and then broadcast this information to spatially other local nodes having a common subject of interest. Their resource searching mechanism is as follows. For a query request, the requesting node first checks the item type, now if the request is for a popular item then the request is forwarded to the node holding that popular item using the routing table.
If not, it examines if the query request is for any new subject then accordingly it transmits the request to every logical neighbor of the requesting node from its routing table. Every logical neighbor that received the request will examine its local content, and if the item is found then it sends a reply message along the reverse path solved by AODV routing protocol. If the query is still not resolved then the query request is transmitted to every physical neighbor. When any of the physical neighbors see the request according to its subject, then it transmits this query to all its logical neighbors. Here, the physical neighbors and logical neighbors are grouped set of nodes based on the locality theory, where the physical neighbors are the spatially local nodes of every intermediate node where the query is forwarded, and logical neighbors are groups based on the temporal locality where the nodes having popular items are identified along with that physical set of neighbors. Their proposed search model has a major drawback, i.e., if the query fired along the logical neighbor is not resolved then the search latency is very high.
Shah et al.
[2013] use a cache optimization method for both leaf peers as well as the ultra peers which uses pong cache to store the information. They avoid flooding by utilizing the random walk technique that has multiple walkers. Their search architecture design also revolves around an ultra peer. Each walker jumps to a 2-hop neighbor ultrapeer that is chosen in a random fashion wherein the ultrapeer shares its pong cache with its directly connected 1-hop neighbors.
A different approach is proposed by Nghiem et al. [2013]. To simplify geographic searching across the Mobile P2P scenario they came up with two P2P algorithms focusing on RNN queries. The query sents back every object that considers the query object as its nearest neighbor. The algorithm focuses on investigating bichromatic RNN queries in Mobile P2P network by harnessing the power of peer collaboration. The exhaustive search algorithm uses all the peer information and searches within the constructed boundary polygon.
The algorithm contains three phases: -1) Locating the peer.
2) Constructing polygon and transmitting queries to the involved peers. 3) Pruning relevant objects. From the surrounding nodes, every acknowledgment message is obtained by the query node and it uses the attached location to determine the distance between the other peers and itself and creates a distance order-based priority queue. Further, the boundary polygon is built using the information of the peers taken from the created queue. The queries are transmitted to the peers that have contributed to creating the boundary polygon. Chen et al. [2009] introduce a resource search technique based on the principle of human interaction-based learning, i.e., similar to how people learn from their past experiences and interactions. In their proposed model, every node is associated with an Intelligence Accuracy (IA) value which is the distance from the node to the nearest copy of the resource data. Further, they associate a timestamp parameter to retrieve the recent values in such highly dynamic environments. The intelligence value is collected from the neighbor's gossip and past query forwarding experiences. Each node uses the index table to store this value.
In wireless networks, unreliable communication and frequent disconnection may occur due to network dynamics. For resource management in such environments, Cao et al. [2005] proposed a Rank-Based Broadcast (RBB) to compliment the node mobility. They propose a local database system called MOBI-DIC for a mobile node which is a repository to store and manage a set of data items or reports. The values sensed or received by a mobile node constitute a data item or report. Based on the relevance criteria, the report list is sorted regularly by each moving mobile node, and only the top entries are broadcasted to its neighbors. They consider the available bandwidth & energy before broadcasting, and thereby accordingly vary the broadcast effect.
Repantis et al. [2005] introduce a file-sharing application in which the bloom filter data structure is utilized to create a snapshot of their data and then disseminate information adaptively to the most suitable node. A remote peer content synopsis and local content synopsis are managed by each node. This information is published frequently using three adaptive dissemination algorithms to disseminate the local content synopsis to immediate peers (Immediate Local -IL), disseminate local content synopsis to the selected peers adaptively (Adaptive Local -AL) and disseminate both local and remote content synopsis to peers selected adaptively (Adaptive Local Remote -ALR).
To suit mobility, Repantis et al. [2009] propose a contentdriven routing strategy and an adaptive way of data dissemination for dynamic networks. The proposed approach publishes the content synopsis maintained by each peer adaptively to only the promising peers. They suggest a pattern to guide queries using the content summaries to avoid congestion by the advertisement which is forwarded to the peer having a high probability of resolving the query. With their technique, they limit the extra usage of processing power and bandwidth. To disseminate the content synopsis to other peers 3 different strategies can be used. Firstly, disseminate local content synopsis to immediate peers (Immediate local-IL). Second, disseminate local content synopsis to peers selected adaptively (Adaptive Local -AL). Third, is based on both local and remote content synopsis which is disseminated to peers selected adaptively (Adaptive Local Remote -ALR).
In the GIA search protocol, the random nature of query forwarding will incur load on mobile peers due to the rerouting of the query message. To effectively use the network and mobile resources, Linh et al.
[2010] propose a file sharing application for cellular networks based on the GIA architecture where super nodes are used to supplement the routing thereby reducing the load on mobile peers.
Han et al. [2012] proposed an unstructured Gnutella-like protocol (M-GIA) to enhance the flexibility in the overlay network. They extend the proposed method to suit better in the mobile environment with the inclusion of physical location and distance parameters. Further, they also consider the node capacity as an important factor. The idea is to form an overlay that best replicates the snapshot of the actual physical topology, i.e., the nodes that are near to the physical network are considered to be close on the logical network, thereby it will improve the Gnutella-like P2P protocol performance in such mobile environment. Every node is assigned a unique identifier, i.e., Node ID that represents its physical location information. This identifier is composed of two parts, i.e., the physical and logical distance information of the node. So, their protocol selects the nodes that are near the physical location for communication. The M-GIA protocol has 3 submodules, i.e., generation of node identifier, the topology adaptation module with search functionality, and calculation of the distance between the nodes. Each phase is described in detail below. 1) Generation of node identifier: Here, every node is associated with its physical location and the logical location information that is obtained through the hash function. Together this information forms the unique identifier, i.e., Node ID. 2) Calculation of distance: In this phase, the physical actual distances between the two nodes are calculated using the XOR operation. 3) Topology adaptation & search module: In this phase, the overlay topology construction is done by considering the physical distance proximity information between the nodes. Further, the maximum number of node connections is also considered as a part of the topology adjustment criteria and then based on the above two factors the new neighbor nodes are selected.
Choi et al. [2006] proposed an extended version of the Gnutella system to enhance its effectiveness for the wireless environment by using a hierarchical approach. In their model, the best peer is selected to handle the load responsibility, and further to improve the search efficiency the information is advertised proactively. The proposed scheme uses a metric to select the best peer as an ultrapeer in the system based on factors like the number of ultrapeer connections and node type, i.e., whether it is a freeloader or not. Further, each ultrapeer publishes its information including the metric value proactively with a new message, i.e., Ultrapeer Advertisement Message (UADV) which is a modification of the pong message in Gnutella. In the traditional Gnutella system, the ultrapeers transmit ping-pong messages to maintain an alive connection while in their proposed scheme the ultrapeers that require to make a connection, advertises the UADV message to other ultrapeers. Han et al. [2008] proposed a resource search scheme for the double-layered MP2P network architecture. In such systems, peers are categorized as super peers and sub peers. The proposed scheme alleviates the problem of broadcasting as each super peer records its sub peer information in the routing table while the communication among the super peers is done via the relay sub peer nodes. They propose two ways for selecting a super peer that uses set cover method and Maximal Independent Set (MIS) respectively. Based on these selection strategies two systems are proposed. The initial one uses a centralized server to manage information about super peer and the other one does it in a distributive fashion. A subnode sends a request to its super peer when it needs a file. The super peer will check the routing table records and responds to the subpeer accordingly if it finds the file. If not, other super peers will be contacted to find the file. The query is resolved, and the response is routed back to the initiator node when the file is located by any super peer.
Nghiem et al.
[2011] propose a K-Nearest Neighbor (KNN) query processing scheme for efficient resource discovery. A KNN query sends back each object that views the query object as its nearest neighbor. Their proposed method has two phases such as Initialization & peer discovery phase and the query processing phase. The P2P query processing is done as follows. The querying node sends the KNN query to the peer to initiate the query processing. While the peer in turn also attaches its cached history of KNN information and sends this information back to the query node. The query node validates and verifies the returned interest objects to check its nearest neighbors. If there is no result, then the request is forwarded to the subsequent peer in the priority queue.
Da Hora et al.
[2009] evaluate the structured and unstructured P2P schemes for MANETs. They summarize that, in dynamic networks, the unstructured search techniques perform better than the structured ones. The unstructured schemes have poor scalability, high energy consumption, and query delay. The structured schemes are energy efficient, but the frequent loss of packets leads to poor overall performance. To tackle these observed issues in the structured Chord P2P protocol, they add in redundancy to the chord architecture thereby helping to cope up with the frequent loss of packets. While to manage the unstructured search protocol efficiently over MANET, they propose a gossip-based scheme in Gnutella with a load balancing mechanism, i.e., they employ a selective forwarding mechanism in Gnutella to decrease the extra processing power and bandwidth consumption.
Meng et al. [2007] proposed a DHT based unicast scheme for the deployment of the Chord P2P protocol over MANET. Their MA-Chord scheme uses IP address unicast. At the network level, it combines Chord overlay protocol and AODV routing protocol to improve the routing in MANETs. The IP addresses that represent the logical positions on the virtual overlay are hashed to create unique overlay IDs that are assigned to all the nodes in the MA-Chord network. The message key is stored in the packet header of the message in MA-Chord. It then directs the message to the particular node responsible for that message key.
In their lookup scheme, they use Bloom Filter (BF) data structure to compress and store the file index information.  extend the Chord overlay protocol over Wireless P2P in which the finger table is modified from the traditional Chord. A P2P lookup protocol named BF-Chord is proposed, in which the finger table stores the routing information of the nearest nodes whose ID in bits are 1, where the bit array is used to represent node ID. During a lookup request, the filename of the file being searched is hashed, and a characteristic 'BF' corresponding to the file is obtained. Then, it is compared with its node ID. If it is a subset of its ID, then the desired file is searched within its local area. Otherwise, the first 1-bit in characteristic 'BF' is compared to its ID, now if they are the same, then the next 1-bit is compared and so on until the corresponding bit in it is '0'. Further, the next node is identified from the finger table and the packet is transmitted to it.
To improve the performance of Chord P2P protocol over MANET, Lee et al. [2004] proposed two schemes such as backtracking and redundant chord. The first one transmits the search query to the preceding finger node when the query to the current finger node is timed out due to its unavailability. A pointer to the search item is maintained by the finger node. While in the redundant chord, 'n' number of the search query is transmitted to 'm' number of nearby finger nodes concurrently. The working of the backtracking chord algorithm is as shown in Figure 10.
The node 'N32' requests for object 'K19'. The node 'N32' transmits the query to the successor node 'N99'. Now, in case of search failure (timeout) due to mobility, then the query is redirected to the second stage successor node 'N80' from the successor table rather than stopping the process as in the case of the traditional chord algorithm. The redundant chord algorithm utilizes the querying node to send 'n' number of queries to 'm' number of the successor node concurrently instead of sending the queries in sequential order as in the backtracking chord algorithm as illustrated in Figure 11.
The study done by Singh et al. [2010] is based on multiple agents that are used for locating a resource with minimal communication. They introduced a mobile agent that helps to reduce search load on nodes that have unrelated content by considering the cosine similarity of contents shared by the peers stored in the routing table to guide the search agents. In their work, the initial registration of peers is mandatory to keep track of the contents shared by peers.
To enhance the efficiency of the search in unstructured MP2P networks, Shah et al. [2014] propose a fuzzy probabilistic search scheme. They suggest that instead of selecting a peer randomly to forward the search query, selection of the ultrapeer through the fuzzy controller, while also considering the parameters like mobility, active time and weight will be a good suitable approach to reduce search time, and improve the overall efficiency. Using the fuzzy controller, they select ultrapeers at 2-hop away distance. They perform logical reasoning by using the fuzzy inference model and they derive the conclusion based upon the empirical rules obtained through a fuzzification process. Their proposed search process is as follows. The querying ultrapeer initiates a walker. Each walker moves 2-hop away and selects an ultrapeer obtained from the fuzzy model. A PTL field is also maintained to prevent looping and message duplication. The ultrapeer selection is based on the rules as given in Figure 12. where VH, H, M, L, and VL represent Very High, High, Medium, Low, and Very Low respectively for the fuzzy set.
The mobile node participation is limited to constraints like battery power, network bandwidth, node capacity, etc. To efficiently manage data dissemination over the MP2P environment, a Rank Based Dissemination (RANDI) scheme is proposed by Wolfson et al. [2007]. This scheme talks about the prioritization of data items in relevance to their rank, when to broadcast the data items, and how to vary the broadcast effect. The RANDI executes as a sequence of sendreceive operations in different modes. The Query Response (QR) method is initiated if 2 mobile systems come within each other's interface range, while the relay mode is triggered when the mobile nodes have new data items to disseminate.  propose the OP2P query processing and dissemination model to suit the frequent topology change. Here, a local report database is maintained by each peer. Further, a virtual database is made by a set of local databases from all the peers. The query processing is done in 3 phases. Firstly, the trajectory path of the query initiator node's movement is assigned to the search query. Secondly, the search query is spread from the initiator node to the other moving nodes along the path of the destination region. Once the query is resolved, the response is transmitted to the initiator node. In short, when a query initiator node 'm1' encounters another moving node 'm2', then the query dissemination strategy relies on the location, and moving direction of node 'm2' relative to the initiator node, i.e., based on trajectory path of the initiator node, density information of all the moving nodes, and the budget of the query. To supplement the motion in the MP2P network, they propose a platform for dissemination of search query based on the spatial and temporal resource information. Guo and Xu [2011] use a resource index to position the resources held by the nodes. The resource content is shown using a data structure called the resource index. It holds includes a resource key, resource location information, and resource identifier. The contents of the index are shown in Figure 13.
This resource index content information is then spread across the network similar to the spread of a disease/virus. An epidemic algorithm is used to diffuse the resource index in the MP2P network. They propose a search scheme that considers the resource position, and diffusion strategy to effectively resolve the search query in such dynamic networks. Tung and Lin [2011] come up with a framework based on the location parameter named LocP2P (Location-assisted  In Table VII, we present the specific behavior of each system in terms of resource searching strategy, and the pros and cons of each system are discussed.    High capacity nodes required with GPS functionality, low security & reliability, node overhead and data needs to be cached frequently.

Liu 2012
The flooding technique is used for the query search among the super nodes. A node with high capacity & less dynamics is selected as a super node. Focused on the layered architecture.
Reduce failure rate of index information, reduces network traffic, improves search efficiency, minimizes query delay and offers suitable load balancing, scalability, dynamicity, fault-tolerance.
Suffers from bottleneck, node overhead, low security and less robust.

Zhang and Liu 2012
Based on grouping and the super node a self-aware dynamic search protocol is proposed. It uses a flooded request model. Based on the positive resource reply lists of familiar nodes are maintained and from these nodes the ones with common interests form a group. Low lookup complexity, increases hit ratio, reduces query delay, low space complexity, offers suitable load balancing, scalability, reliability and dynamicity.
Suffers from single point of failure in super node, Node overhead, low fault-tolerance, low security and less robust.
Bok et al. 12 The interest, direction and mobility of the peer are considered in their resource discovery scheme and it accordingly prioritize what to store in the local database of the peers using ranking function. It is based on the concept of super node and grouping. Each peer maintains a routing table in a local database,  resource index table (RIT) and a  local information table (LIT). During a resource discovery request each peer first examines its LIT table. If no entry is available in LIT, then the mobile peer sends the query message to its neighboring peer until the query request reaches the super peer. The super peer searches its RIT table to process the received query and sends a reply to the request peer.
Offers noticeable success rate, lowers query response time, reduces cost of data dissemination via use of timestamp message, offers noticeable load balancing and scalability.
Complex procedures involved; High capacity nodes required to store information in local database. Node overhead has bottleneck and suffers from low robustness, low reliability and single point of failure,

Qu et al. 09
Proposes a search scheme based on local information of the nodes. Based on the content locality, nodes are put into different groups and then this information is broadcasted especially to other local nodes that have a common subject of interest.
Removes bottleneck and single point of failure, hot resources are easily traceable, removes false positive error, increases hit ratio.
Not suitable for unpopular resources. If the resource is not located in the node's logical neighbors, then it leads to a broadcast storm. Suffers from long latency.

Shah and Kim 2013
Their proposed search method uses a random walk technique with multiple walkers and has a controlled replication feature. The walkers are forwarded to ultrapeers that are 2-hop away. The resource requesting peer sends a query request to its ultrapeer. The corresponding ultrapeer forms 'm' walkers of the query request with a PTL limit value and send to selected neighbor ultrapeers those are 2-hop away. Data regarding selective ultrapeers and query messages are stored in a cache that is managed by each ultrapeer.
Reduces network traffic. Improves search efficiency by using ultrapeer and cache mechanism. Lowers query delay. Decreases duplicate messages.
Suffers from bottleneck and single point of failure in ultrapeer. Low security. Low fault-tolerance and less robust. Suffers from False positive error due to timeout of PTL value.

Nghiem et al. 13
A Reverse Nearest Neighbor (RNN) query delivers all objects that view the query object as their nearest neighbors. From the surrounding nodes, every acknowledgment message is recorded by the query node. It then calculates the distance between itself and other peers and ranks them by the distance order in the priority queue. The querying node takes each peer out of the queue and builds the boundary polygon. The queries are only sent to peers that contributed to the boundary polygon. All objects outside the boundary polygon are pruned.
Decreases message overhead as minimum peers are queried within the boundary polygon. Removes bottleneck and single point of failure. Removes false positive error. Offers noticeable success rate and reliability.
Complex algorithms involved. The number of hops taken to locate the object is not guaranteed. high Maintenance overhead. Offers low response time and security.

Chen et al. 09
Distance from node to the nearest copy of the resource termed as Intelligence Accuracy value is calculated and this information is published to previous hop neighbors with timestamp that is updated frequently based on neighbor's gossip and past query forwarding experiences.
Caching improves hit rate and lowers query response time. Offers suitable dynamicity. Energy consumption less as compared to flooding approach.
Only support keyword-based information retrieval. High maintenance overhead to calculate distance. Frequent caching of data required to update Intelligence Accuracy value. Suffers from low robustness, load balancing and less secured. Node Overhead.

VOLUME 4, 2016
Cao et al. 05 For efficient resource management in mobile environment a rank-based broadcast is proposed. Every mobile node stores the information in its local database. The node broadcasts its top data item considering the available bandwidth and energy. The neighbor nodes receiving the data items re-rank it and then continue broadcasting the respective top items.
Broadcast based on the available bandwidth and energy. Suitable for small scaled networks. Improves search efficiency. Offers suitable response time and dynamicity.
Assumes high capacity nodes. Frequent ranking and re-ranking needed depending on the received reports. Node overhead. security issues. low scalability, low load balancing.

Repantis and Kalogeraki 2005
Each node maintains a summary information of their respective data as well as information of remote peers and adaptively disseminates this content synopsis to the most promising peer. Node uses bloom filter to build the snapshot of their data. Based on this local and global information, nodes can route the query efficiently.
Improves search efficiency. Offers suitable scalability and dynamicity. Lowers query delay.
Energy consumption high. Suffers from false positive error. Node overhead. High communication cost. Low security.

Repantis and Kalogeraki 2009
To route search queries effectively in mobile environment, nodes build local content synopsis of their data and publish this to the most promising peers by using the adaptive dissemination strategies like Immediate local, Adaptive local and Adaptive local remote.
Offers suitable scalability and churn. Increases hit ratio. Removes bottlenecks and single point of failure.
Node overhead in maintaining content synopsis. False positive error high. Frequent updating required. High communication cost. Overhead due to bloom filter. High query message is generated.

Linh and Sato 2010
Uses super nodes to augment the lookup process that uses biased random walk approach to locate an object. Nodes shares their resource index with their respective connected super nodes.
Supports any type of queries. Reduces query delay. Improves success rate. Offers suitable dynamicity and node self-organization.
Content indices replication causes overhead. Require complex topology adaptation algorithms. Suffers from bottleneck and single point of failure. Low security.

Han and Zhang 2012
They modify the GIA protocol to propose an M-GIA protocol with addition of physical location data of the nodes and the actual distance relationship among them while also taking in account the node capacity. The idea is to form an overlay wherein the nodes of closer physical distance will also be logically closer while considering the ability and connections of the node. Proposes a rank-based data dissemination scheme (RANDI) that sort data items in relevance of their ranks, decides suitability to broadcast the data items and number of data items to broadcast.
Removes false positive error. Offers suitable success rate. Reduces response time.
Need high capacity nodes to store data items. Mobile and network resources usage is high. Ranking and re-ranking causes high maintenance overhead. Complex procedures.

Xu and Wolfson 2005
When a query node encounters another moving node then the query dissemination is based on the location and movement of the moving node relative to initiator node, trajectory path of the initiator node, density of nodes and the query status. They propose the dissemination of query at that instance based on spatial and temporal resource information.
Offers noticeable communication cost and accuracy. Increases search efficiency. Reduces search latency.
Need sync between all the peers. Complex procedures to maintain the trajectory path. Low security. High capacity nodes with GPS functionality required. Node overhead. Battery power and bandwidth consumption high.

Guo and Xu 2011
Uses resource index information which is spread across the network in the model of epidemic.
The resource index data structure shows the content of the resource.

V. DISCUSSION
In this section, a few open problems that need attention in the context of P2P resource discovery techniques over MANET are discussed.

A. OPEN RESEARCH ISSUES (OPEN PROBLEMS) OR FUTURE RESEARCH DIRECTIONS
We would like to highlight some aspects where more focus can be given. We list the areas of interest as given below: 1) Explore the graph defined by physical topology and enhance traditional search methods on this graph. 2) Enhancing P2P structured protocol over MANET 3) Enhancing resource discovery schemes with hop-byhop decision making approach using local knowledge and local available information. 4) Dynamic load balancing mechanism is needed. 5) Need of high scalable architecture. 6) Necessity of good maintenance, and updating strategies. 7) Generally, there is a need of resource search scheme that has low overhead to use network and mobile resources effectively. 8) Bridging parameters like interest, distance, and mobility effectively to improvise the resource searching process. 9) Suitability of applying soft computing techniques to supplement resource discovery. 10) Feasibility of path lengths and past history unexplored. 11) Need of a collaborative dissemination model to suit MP2P networks 12) Effective utilization of battery power, bandwidth usage, etc. 13) Mobile peer discovery and decentralized peer sampling. 14) Sync among the MANET and P2P networks. 15) Maintenance of P2P overlay, topology maintenance approach, topology building protocols. 16) Focus on security aspects and attacks caused by malicious node in resource discovery. 17) Focus on purely decentralized P2P search schemes. 18) Improvement in caching mechanism. 19) Potential use of trust and reputation to enhance the credibility of the resource discovery scheme. 20) Investigating the impact of churn, clustering, replication, TTL, mobility, mobility models and network size on the resource discovery protocols. 21) Eliminating cyclic paths and use global information to avoid looping. 22) Optimal neighbor node selection to forward the resource discovery request.

B. IMPACT OF NETWORK TOPOLOGY OR STRUCTURE ON THE PERFORMANCE OF RESOURCE DISCOVERY PROTOCOLS
This section discusses the impact of network structure on the performance of resource discovery protocols. We highlight that the impact of topology or structure on resource discovery schemes is substantial. So, one must also focus on these aspects while evaluating the performance of resource discovery protocols. Kleinberg [2004] discusses the relation between topology and search techniques. They study several network models and observe that there is a varying performance result of the search protocols with different topologies. We discuss the role of topology in resource discovery. Decentralized Mobile P2P networks suffer from additional problems such as topology mismatch, collaboration issues, flash crowd, free riding, maintaining network connectivity, etc. Network topology or structure in the P2P context can widely have a great influence on the performance of the search protocol. Few works investigate the role of topology in search performance and highlight the merits and demerits of these models. For a mobile P2P, the situation becomes more bizarre as the network topology changes frequently due to mobility. The resource discovery protocol over MANET with flat topology has less performance as compared to the hierarchical topology. Similarly, if the performance of the search scheme with centralized network topology and the decentralized network topology are compared, one can see the drastic variation in the performance of the resource search schemes. While the resource search algorithm over a hybrid network topology also shows substantial improvement in the performance as compared to the others. The degree of structure also has a wide influence on the performance results. Like in the unstructured network topology the resource discovery schemes are not efficient but are resilient and less affected by churn. While in the structured network topology the schemes show better performance as a successful search can be achieved in a few hops, but the structure also needs to be reconfigured instantly in case of transient nodes.
Franciscani et al. [2003] observe that the unstructured P2P protocols are more flexible than the structured P2P protocols and perform better under MANETs, but with the cost of higher energy and delay.

C. CHALLENGES: FROM A SECURITY PERSPECTIVE
MANET and P2P attacks can also affect MP2P networks as challenges of both architectures are present as shown in Figure 14.
These attacks lead to more severe effects in totality due to the nature of MP2P networks and the overall performance of the lookup process will be affected. It is highly probable that malicious nodes can affect the routing process. Such nodes may misuse P2P methods like maintenance of the routing table to increase the traffic and initiate a threat to resource consumption in MANET. On the other hand, Sybil attacks may occur on both layers wherein multiple virtual identities are generated thereby increasing the impact of other attacks, and directly increasing resource consumption. Similarly, the black hole attacks can also affect the P2P services by redirecting routes to only specific nodes to deny resource sharing. Due to limited resource constraints, the security algorithms TABLE 8. provides an overview of the discussed search schemes in terms of success rate, robustness, scalability, fault-tolerance, bottleneck, reliability, dynamicity, single point of failure, false positive error (Y or N), adaptability, security, load balancing, packet delivery ratio (PDF), network overhead, search response time, power consumption, and bandwidth usage. Further, it also provides theoretical lookup complexity, where available. The metrics are measured on a continuous scale from 1 to 3, and false positive error is classified as a binary value. usually, the higher score denotes better performance. of authority cannot be pre-assumed. Thereby, the trust factor becomes a necessity in such environments, but with insider attacks, it leads to denial of cooperation. Trust is one of the major concerns as the routing algorithm depends on the cooperation of the nodes.

D. COUNTERMEASURES: TO DEAL WITH SECURITY THREATS
We suggest some countermeasures against the routing attacks in MP2P systems and brief security measures for such highly dynamic evolving networks. Our study suggests that crosslayering can improve the robustness of MP2P systems. While most of the security mechanisms proposed for MANETs are still relevant to the MP2P systems, but then it can be further improved by harnessing cross-layer information. So, the security measures have to be improved at both layers individually for a cross-layered architecture. Another approach is to constantly monitor the intermediate overlay nodes only.
To prevent Sybil attacks, node reputation value can be used, where the Sybil nodes can improve their reputation. To prevent the black hole attacks, unique request IDs, TTL, and timestamp messages can be used.

E. RECENT STATE-OF-THE-ART
In this subsection, we brief on the recent state-of-the-art resource discovery protocols in P2P systems over MANETs. Further, the related works for P2P systems & MANETs in specific are also enlisted. Distributed computing environments like P2P, MANETs, P2P system over MANETs, etc. provide many heterogeneous resources from diverse sources. The discovery of resources in such dynamic environments has always been a challenge. Zhou et al. [2020] proposed an advertisement-based lookup mechanism considering the location and time awareness. Sornil et al.
[2018] proposed a lightweight addressed query gossip resource discovery protocol adhering to suit the resource constraint mobile nodes. Their protocol was tested under two realistic mobility models, i.e., RWP & RPGM models. Game theory with its wide application to all most all the fields now, a game-theory based search algorithm is proposed by Arunachalam [2020] to improve the efficiency of the resource discovery process, and improving the statistics against the posed challenges. A few recent works for P2P systems and MANETs are also highlighted, like in Asghari et al.
[2019] to balance the load among the peers, an inverted ACO algorithm is proposed where the pheromone effect is inverted on the trail taken by the ants. Khatibi et al.
[2020] proposed a resource discovery mechanism that considers the state of the nodes and thereby using this information at each step to deal with the dynamics of P2P networks. A mixed approach of flooding and random walk (with and without neighbor

F. BEYOND THE STATE-OF-THE-ART & UPCOMING TRENDS
P2P MANETs, with its wide practical application use to the environment like where the communication infrastructure is down, say for example due to natural disaster, political situation, etc. Resource searching becomes a key critical component in such networks or situations. One of the key challenges in such environments is the mismatch between the overlay and the physical network. This brings the need for robust resilient protocols that not only focuses on the overlay structure but takes into account the underlay physical network. Further, with 5G communication, IoT, Cloud-MANET, AI, etc. it brings in technology-driven dimensions VOLUME 4, 2016 moving ahead with context to the discovery of resources, for example like guided resource discovery for 5G-Enabled IoT networks using learning algorithms, P2P resource discovery in 5G networks, service discovery in Cloud-MANET IOT, service discovery in 5G mobile networks, resource discovery in the hyper-connected P2P network, resource discovery in P2P communication in 5G mobile networks, etc.

VI. CONCLUSIONS
How to resolve the search query efficiently while adapting to the network dynamics is the need of the hour. In this article, we survey the various search schemes proposed for Mobile P2P Networks. We summarize these resource search schemes and provide a brief description of each method. Further, we compare the resource discovery schemes and present their strengths and weaknesses. We enlist the various factors needed to design an efficient resource discovery technique. Furthermore, we present the similarities and differences between both the network types, i.e., the P2P and MANETs. We also discuss the routing schemes in such a resultant network. We present a graphical comparison depicting the various ways how resource search has been carried out in the MP2P network in the past. With this study, we see that super node-based resource discovery schemes have many open issues like a single point of failure, node overhead, power consumption, node capability, etc. This article also provides an insight on various open issues that need to be focused in due course. In general, most schemes do not focus on fault tolerance. Another important research area is the security aspect. Almost all the considered techniques lack it. Further, efficient group management policies also need to be defined for the collaborative participation of nodes in such environments. In such networks various issues also have to be focused on like the congestion, frequent disconnection, maintaining continuous connectivity, signal attenuation, load balancing, churn, etc. Node discovery in such dynamic networks is still an open research. We also conclude with an effort to understand the influence of many network topologies on the performance of resource discovery protocols. The unstructured topology is resilient and offers better scalability locating popular objects at a constant cost. However, tracing rare objects require further completeness. While the structured topology is effective in this regard, but at a cost of greater message overhead. We also present the major challenges in securing mobile P2P networks. Attacks such as Sybil or routing attacks also do affect such resultant networks. So, security mechanisms have to be further focused on more for such highly dynamic evolving networks. He has received MCA from Amrita Vishwa Vidyapeetham, Mysore in 2014 and BCA from JSS College of Arts, Commerce and Sciences, Ooty road, Mysore in 2011. His Ph.D. work centers on Application of Machine learning (some times Deep learning) for Cyber Security and discusses the importance of Natural language processing, Image processing and Big data analytics for Cyber Security. He has more than 50 research publications in reputed IEEE conferences, IEEE Transactions and Journals. His publications include prestigious conferences in the area of Cyber Security, like IEEE S&P and IEEE Infocom. He has given many invited talks on deep learning applications in IEEE conferences and Industry workshops in 2018. He has got a full scholarship to attend Machine Learning Summer School (MLSS) 2019, London. Dr. Ravi has served as a Technical Program Committee (TPC) member at international conferences including SSCC Symposium, IEEE TrustCom-2020, and IEEE SmartData-2020. He is an editorial board member for Journal of the Institute of Electronics and Computer (JIEC), International Journal of Digital Crime and Forensics (IJDCF), and he has organized a shared task on detecting malicious domain names (DMD 2018) as part of SSCC'18 and ICACCI'18. His research interests include application of data mining, machine learning (including deep learning), natural language processing and image processing for Cyber Security, big security data analytics, disease gene discovery/prioritization, computational drug discovery and drug repositioning. More details available at https://vinayakumarr.github.io/.