A service discovery mechanism may allow clients in a distributed computing
environment to search for services. The service discovery mechanism may
allow a client to request a capability credential from a service. In one
embodiment, the client may present to the service a set of desired
capabilities. The service may then respond with a capability credential
that may convey to the client the rights to use the requested
capabilities. A complete service advertisement may be needed to create a
message endpoint for accessing the service. In an embodiment, the
capability credential may be used by a client to obtain a complete
advertisement for the requested capabilities. The capability credential
may provide an additional level of security for the service provider. The
capability credential that may be used to receive the complete
advertisement may also be used to construct a message gate to communicate
with the service where the gate embeds the capability credential in each
message to the service.