Automatic discovery of services and resources is a crucial feature to achieve the expected user-friendliness in Mobile Ad-hoc Networks (MANETs). Due to limited computing power, scarce bandwidth, high mobility and the lack of a central coordinating entity, service discovery in these networks is a challenging task.
In this thesis, I have developed a service discovery protocol (Mercury) utilizing a combination of different optimization techniques: The performance is increased using cross-layer interaction between the application layer and the routing layer. The service information is described using Bloom filters and distributed using Optimized Link State Routing (OLSR). A caching scheme is implemented to obtain further reductions of both overhead and latency.
The analysis and simulation results show that the service discovery proposal induces very low overhead to OLSR and is superior to application-layer solutions. The proposal is implemented as a plugin to the OLSR implementation olsrd for real-world deployments.