# SIoT: A New Strategy to Improve the Network Lifetime with an Efficient Search Process
## 2 Related Works
To overcome the issues of the search/discovery phase in SIoT, the authors in [29] proposed an algorithm to select a friend that can receive/execute the requested services using a combination of two properties. The first property is the centrality (the degree) of a friend; a friend (intermediate node) with a high centrality is selected to receive the requested service, which can achieve the provider quickly. The second property is node similarity; it determines the similarity between request requirements and nodes using distance similarity. The intermediate node that has the higher probability is chosen to receive the request. A service discovery and selection model [30] is proposed based on artificial potential fields (APFs) which is initially introduced by [31] to resolve the reboot navigation problems in dynamic environments. In this model, for each node a service agent is responsible for the provision of a service and the requester agent is responsible for the management of the incoming requests. When a node receives a request, the service agent gets the requested service and verifies if it can be executed by this node, elsewhere the requested service is sent to the most promising node by the requester agent using the resultant force of APFs. The resultant force is a combination of service satisfaction and availability; it can be either attractive or repulsive toward the neighboring nodes. The service satisfaction assures that the next node can execute the desired service for a request, and the service availability assures that the time of waiting for the desired service is fewer for the next node. The service availability makes nodes to choose different intermediate nodes for each request. The number of hops required is reduced and the queue length (the number of services waiting to execute) among nodes is balanced in comparison with the flooding-based approach [32]. Authors in [33] proposed an approach to discover and search for a specific service in SIoT among communities, where a community is defined as a cohesive group of nodes that are densely connected to each other and sparsely connected to the other nodes in a SIoT. The communities are constructed based on preference and social similarities, and subcommunity within a community is constructed based on services similarity. The coordinator node (considered as the master node of a community) is responsible for holding the services of the community. When a node receives a request for a service that is not within the subcommunity of the node, it forwards it to the coordinator node of a neighboring community until the provider node is found. The experimental results show that the proposed approach has a promise results in terms success rate, average delay, and modularity. As the search for a specific service in SIoT is performed in a distributed manner with only local information, it is important to apply a method that makes the task efficient, subject to the energy consumption of nodes. As illustrated in Table 1, there are studies focused on the enhancement of the network navigability (giant component, average path length, average degree, local clustering coefficient, diameter) during the friendship selection to obtain an efficient search task, but this strategy is not enough to speed up the search for a desired service. While the other ones focus on service search itself in which the friendship selection has been assumed already performed by nodes (assuming that the social network has already been created). However, in both cases the energy consumption of nodes and the network lifetime are not considered. Our approach deals with the problem of service search in SIoT considering network navigability, service discovery/search itself, energy consumption of nodes, and network lifetime.