Service Location Protocol
The Linux SCSI Target Wiki
The Service Location Protocol (SLP, srvloc) is a service discovery protocol that allows computers and other devices to find services in a local area network without prior configuration. SLP has been designed to scale from small, unmanaged networks to large enterprise networks.
According to the definitions in RFC 2608, a location is a topologically specific and named entity on a local network of any extension, and that is not any geographic or otherwise topographic or geometric location.
SLP is used by devices to announce services on a local network. Each service must have a URL that is used to locate the service. Additionally it may have an unlimited number of name/value pairs, called attributes. Each device must always be in one or more scopes. Scopes are simple strings and are used to group services, comparable to the network neighborhood in other systems. A device cannot see services that are in different scopes.
The URL of a printer could look like:
This URL describes a queue called "myqueue" on a printer with the host name "myprinter". The protocol used by the printer is LPR. Note that a special URL scheme "service:" is used by the printer. "service:" URLs are not required: any URL scheme can be used, but they allow you to search for all services of the same type (e.g. all printers) regardless of the protocol that they use. The first three components of the "service:" URL type ("service:printer:lpr") are also called service type. The first two components ("service:printer") are called abstract service type. In a non-"service:" URL the schema name is the service type (for instance "http" in "http://www.wikipedia.org").
LIO supports all Ethernet based network interconnects:
- RFC 2165: Service Location Protocol (SLP)
- RFC 2608: Service Location Protocol, Version 2 (SLPv2) (TODO)
- RFC 3111: Service Location Protocol Modifications for IPv6
- RFC 3224: Vendor Extensions for Service Location Protocol, Version 2 (TODO)
- RFC 4018: Finding Internet Small Computer Systems Interface (iSCSI) Targets and Name Servers by Using Service Location Protocol version 2 (SLPv2) (announcement)
- RFC 4173: Bootstrapping Clients using the Internet Small Computer System Interface (iSCSI) Protocol
- Service Location Protocol Wikipedia entry
- Jones, M. Tim (2/22/2006). "Automate client management with the Service Location Protocol". IBM Corp..
- "Employing IP SANs to address business needs". Computer Technology Review. April 2003.
- "Ethernet Storage Whitepapers and FAQ". SNIA.
- "Installing OpenSLP on Linux". openslp.org.
- "iSCSI Protocol Concepts and Implementation". Cisco. 2001.
- "Open Enterprise Server SP2 Documentation". suse.com. 10/25/2006.
- "Service Location Protocol". RFC Sourcebook.
- Bakke, Marc, et al. (March 2001). "Using SLP to Discover iSCSI Targets and Name Services". 50th IETF Minneapolis.
- Goldner, Jeffrey (July 14, 2008). "The Emergence of iSCSI". Association for Computing Machinery work=acmqueue.