Service Discovery

Introduction

As pervasive computing environments are very heterogeneous due to a variety of computing devices and networks, a key element in these environments is service discovery. Service discovery protocols for pervasive computing allow clients to locate services in the face of mobility and heterogeneity. Pervasive computing environments have grown beyond the confines of single rooms and will continue to expand in the future. The services and resources one wishes to locate are no longer constrained to local printers and scanners, but include online shopping services, publicly accessible web-cams, weather instruments and data collected by a set of sensors deployed in remote regions. Whilst today's service discovery protocols will operate in either small, local-area settings or in the wide-area, none work in both these kinds of environments.

Impact

This project seeks to define a service discovery protocol that is simultaneously capable of operating efficiently in small, dynamic networks where computing devices are relatively incapable and the bandwidth may be poor, and in much larger networks which are much less dynamic and where computational resources are in greater abundance. Such a protocol will cover all manner of pervasive computing environments. Our approach is to define a single interface to the service discovery protocol and two underlying protocol layers. One of the protocol layers is based on ant-foraging and complex systems theory, which makes it suitable for small, dynamic networks. The other layer is based upon a distributed hash table which allows it to scale to much larger networks. Nodes which are configured to do so execute both underlying protocols, thereby enabling the formation of a large network that spans heterogeneous domains.