Electronic Theses and Dissertations




Saurab Dulal



Document Type


Degree Name

Master of Science


Computer Science

Committee Member

Lan Wang

Committee Member

Kan Yang

Committee Member

Christos Papadopoulos


Service discovery is one of the crucial components of modern applications. With the advent of several new systems such as IoT, edge, cloud, etc the world is connected more than ever and smart devices are creeping towards every nook and corner of our surroundings. Not only the new systems are emerging but also the communication pattern is evolving i.e. from one-to-one (host-host) to many-to-many (distributed application, IoT). The definition of service has also changed over time. Unlike their meaning in the past as programs running on some machines, services today can be sensor devices collecting data, mobile devices offering computing service, or it can even be a piece of data generated by some system. To satisfy the changing dynamics and heterogeneity of the services and the demand of these evolving architectures several new protocols are developed on top of the TCP/IP stack. Nonetheless, the fundamental weakness of host-centric TCP/IP to support the need for distributed application (IoT, edge) and many-to-many communication (e.g. publisher-subscriber) have induced several weaknesses in the system and have made it more fragile. Named Data Networking (NDN) is an information-centric networking architecture that does the communication over signed, named content objects. Its pub-sub style of communication, data-centric security at the network layer, in-network caching, etc provides numerous benefits to modern systems and tries to overcome the shortcoming of TCP/IP. In this thesis, we propose NDNSD – a fully distributed, scalable, and general-purpose, service discovery protocol for information-centric architecture/NDN. It is developed on top of the synchronization protocol (sync) and offers publisher-subscriber API for service publishing and discovery. We present several design features of NDNSD and also establish how it is best suited for modern systems. We also introduce the concept of service-info and how it can be combined with sync and NDN hierarchical names to make service discovery generic. Finally, To substantiate our argument, we design, implement, and evaluate our protocol, and also provide some use-cases (e.g. Building Management System) to show how service discovery can be beneficial.


Data is provided by the student.

Library Comment

Dissertation or thesis originally submitted to the local University of Memphis Electronic Theses & dissertation (ETD) Repository.