Determining which service discovery
protocols to support is a difficult decision that consumes both time and money.
However, it is a decision that must be taken seriously, Incorrect decisions
regarding service discovery can lessen your chances for success in your target
market as well as impair your ability to enter other markets. Several business
and technical aspects of service discovery protocols must be considered as part
of this decision process.
The openness of the service discovery technology should
be measured. Ask yourself, who owns
the service discovery technology? Are prerequisites needed that are outside your
intended usage model? Is the technology proprietary or limited to a single
platform? Can the technology be extended to other environments?
Consider the cost of implementation. Use of some service
discovery technologies requires payment of royalties and licensing fees, which
can result in significant direct costs. Other costs associated with service
discovery protocols include SDK fees, cost of development tools, and expenses
for compliance testing.
Does the technology provide more than basic service
discovery function? For example, can the protocol determine if the service is
available, and can the technology bind to it, setting up an interoperable
session? Can the technology locate and load needed device drivers?
Also, determine if the client or the service is
responsible for comparing service requests with services provided. Client-side
comparisons can be more costly, with the function being delegated to each
application or service above the API.
To assure the broadest market penetration and fewest
portability issues, consider technologies that are independent of operating
system environment and communication protocol, and technologies that target
multiple platforms.
Directory centric network models are prevalent in
enterprise and small business applications. Efforts are underway to extend this
model to public networks such as the Internet and extranets. However, mobile
technologies have given rise to ad hoc, peer-to-peer networking. In this model,
a central directory is not necessary. Devices and services negotiate one-on-one
with each other, advertising their own capabilities and finding devices or
services that meet the needs they require. Therefore, when selecting a service
discovery protocol, look for one that will function equally well in both
directory based and ad hoc network situations.