Storage Service Use of SLP

This topic explains the Storage Service use of SLP as well as the registry parameters that must be set.

The storage service uses SLP in two ways:

  • Searching for SMI-S providers - The storage service accomplishes this via multicast, broadcast and unicast UDP requests to specific Discovery Agents (DA). Configuration of the storage service (through registry keys) is usually required to use these features.
  • Finding the attributes for each SMI-S provider using UDP requests. Configuration of the storage service is not required (see below for IPv6 comments).

Note that use of SLP is optional. The storage service will function without any information from SLP. However, there will be a slight delay during discovery operations when the first request for attributes is sent to a provider.

As mentioned, SLP makes use of multicast and broadcast UDP packets to locate services on a subnet. In order to limit the discovery to SMI-S providers only, the advertisement (service) requests will always specify the string "SNIA"; providers that advertise SMI-S support should have one or more SMI-S required profiles registered (and advertised) through SLP. All other WBEM services - such as printers - will not respond to these requests.

The storage service does not have a listener open on port 427 at all times; only during the above operations. Therefore it does not process broadcast updates from Service Agents (SA) or DAs. To configure the storage service to find SMI-S servers on different subnets you will need to set one or more registry keys (shown in the next section).

Note  WBEM SLP Template 2.0 is not backwards compatible and is not supported at this time.

 

Registry Parameters

To configure how the storage service uses SLP, set the following registry parameters (these will not be present by default). The key for all of the settings is the following.

  HKEY_LOCAL_MACHINE
   SOFTWARE
      Microsoft
         CurrentVersion
            Storage Management
               SLPDiscovery

Note  It may be necessary to modify the permissions on this registry key to set any of the values below. Set the owner to the local machine’s administrators group and give it full control of the key.

 

SLPDAs, Multistring (REG_MULTI_SZ)

When a request is made to enumerate the SMI-S providers, the storage service will use multicast first, then broadcast to populate a list of the URLs of WBEM servers which support SMI-S profiles. This class is not cached and a search can take several seconds. This request does not happen automatically – on Windows Server 2012 it is triggered by the Search-SmisProvider cmdlet.

Refer to the diagram above. With no registry entry for SLPDAs, the storage service will be able to use SLP multicast and/or broadcast to find servers only on the local subnet (SMIServerA and SMIServerB). In a typical datacenter or corporate environment, broadcasts and multicasts will not traverse the core network switches so the servers on the other subnet will not be visible.

This SLPDAs key should contain the IPv4 address of any DA on a separate subnet from the management system. Enter one address per line. The storage service will then use this key when it enumerates the MSFT_SMWbemServices class.

For the example topology above, there is one DA on a different subnet. The DA is running on the same system as an SMI-S server. The IP address of this server (SMIServerD) is added to the registry and now the storage service will be able to obtain information from that DA. The DA consolidates advertisements from SAs in its subnet and from any other SA that knows about the DA. Without this entry, a search for SMI-S servers will not reveal SMIServerC or SMIServerD.

SLPEntries, Multistring (REG_MULTI_SZ)

This key can be used to add knowledge of specific URLs for SMI-S providers. These are merged with the list obtained through multicast/broadcast and explicitly from known DAs specified by SLPDAs. The entries must take one of the following formats.

http://<IP address or name>:<HTTP port>
https://<IP address or name>:<HTTPS port>

IPv6Enable, DWORD

SLP advertisements may return IPv6 addresses, which can be used by the storage service for communicating with providers. Unfortunately this does not mean that a particular SLP agent can communicate using IPv6, so attribute requests can fail with a timeout. By default IPv6 addresses are ignored (SLP only). The storage service supports IPv6 for CIM-XML traffic but support for RFC3111 is limited. This key affects only SLP broadcast and multicast operations.

SCOPEs, Multistring (REG_MULTI_SZ)

To limit the receipt of advertisements, one or more scopes can be specified. If SCOPEs are used, the SAs and DAs will only respond to requests that match the scopes used in the advertisement request. These are simple strings, one per line.

 

 

Send comments about this topic to Microsoft