Service%20Location%20Protocol - PowerPoint PPT Presentation

About This Presentation
Title:

Service%20Location%20Protocol

Description:

Service Location Protocol. By. Team Qwerty. Aparna Atmaram. Venkatesh Babu. Agenda. What is SLP? ... optional actor to which all services register ... – PowerPoint PPT presentation

Number of Views:130
Avg rating:3.0/5.0
Slides: 22
Provided by: aatm
Category:

less

Transcript and Presenter's Notes

Title: Service%20Location%20Protocol


1
Service Location Protocol
  • By
  • Team Qwerty
  • Aparna Atmaram
  • Venkatesh Babu

2
Agenda
  • What is SLP?
  • Protocol Overview
  • SLP Message Format
  • SLP Security
  • SLP Implementation
  • Conclusion
  • Reference

3
SLP
  • What is Service Discovery?
  • Examples of Service Discovery Protocols
  • SLP v1
  • SLP v2
  • Jini
  • Universal Plug and Play (UPnP)
  • Bluetooths SDP

4
SLP Actors
  • User Agent (UA)
  • SLP Client communicates with SA or DA to access
    services
  • Service Agent (SA)
  • Offers services directly or by registering with
    DA on behalf of application
  • Directory Agent (DA)
  • optional actor to which all services register
  • DA can be discovered either by active or passive
    discovery

5
SLP Architecture
  • Centralized server architecture
  • Decentralized architecture

6
SLP Service Discovery without DA
  • Figure 1 Service Discovery without DA
  • Source http//www-128.ibm.com/developerworks/li
    nux/library/l-slp/

7
SLP Service Discovery with DA
  • Figure 2 Service Discovery with DA
  • Source http//www-128.ibm.com/developerworks/li
    nux/library/l-slp/

8
SLP Message (1)
  • General Message Format
  • ----------------------
    ----------
  • Version Function
    Length
  • ----------------------
    ----------
  • OMUAF rsvd Dialect
    Language Code
  • ----------------------
    ----------
  • Char Encoding
    XID
  • ----------------------
    ----------
  • Figure 3 SLP General Message Format
  • Source http//www.ietf.org/rfc/rfc2165.txt?numbe
    r2165

9
SLP Message (2)
Message Type Abbreviation Service
Registration SrvReg Service Deregister SrvDeReg
Service Acknowledge SrvAck Service
Request SrvRqst Service Reply SrvRply Service
Type Request SrvTypeRqst Service Type
Reply SrvTypeRply Attribute Request AttrRqst Att
ribute Reply AttrRply DA Advertisement DAAdvert
SA Advertisement SAAdvert

10
Service Registration Message
  • SrvReg
  • Message sent by SA's to DA's containing
    information about a service that is available
  • Message Format
  • ----------------------
    ----------
  • Service Location header
    (function SrvReg)
  • ----------------------
    ----------


  • \ ltURL-Entrygt

    \


  • ----------------------
    ----------
  • Length of Attr List String
    ltattr-listgt
  • ----------------------
    ----------


  • \ ltattr-listgt, Continued.

    \


  • ----------------------
    ----------
  • (if present) Attribute Authentication
    Block ...
  • ----------------------
    ----------
  • Figure 4 Service Registration Message Format

11
Service Deregister Message
  • SrvDeReg
  • Message sent by SA's to inform DA's that a
    service is no longer available.
  • Message Format
  • ----------------------
    ----------
  • Service Location header
    (function SrvDereg)
  • ----------------------
    ----------
  • length of URL
    URL
  • ----------------------
    ----------


  • \ URL of Service to Deregister,
    contd.
    \


  • ----------------------
    ----------
  • (if present) authentication
    block .....
  • ----------------------
    ----------
  • length of lttag specgt string
    lttag specgt
  • ----------------------
    ----------


  • \ lttag specgt, continued

    \



12
Service Acknowledgement Message
  • SrvAck
  • A generic acknowledgment that is sent by DA's to
    SA's in response to SrvReg and SrvDeReg messages
  • Message Format
  • ------------------------
    --------
  • Service Location header
    (function SrvAck)
  • ----------------------
    ----------
  • Error Code

  • ----------------------
    ----------
  • Figure 6 Service Acknowledgment Message Format
  • Source http//www.ietf.org/rfc/rfc2165.txt?numb
    er2165

13
Service Request Message
  • SrvRqst
  • Message sent by UA's to SA's and DA's to request
    the location of a service
  • Message Format
  • ----------------------
    ----------
  • Service Location header (function
    SrvReq)
  • ----------------------
    ----------
  • length of prev resp list stringltPrevious
    Responders Addr Specgt
  • ----------------------
    ----------


  • \ ltPrevious Responders Addr
    Specgt
    \


  • ----------------------
    ----------
  • length of predicate string Service
    Request ltpredicategt
  • ----------------------
    ----------


  • \ Service Request ltpredicategt,
    contd.
    \


  • ----------------------
    ----------
  • Figure 7 Service Request Message Format

14
Service Reply Message
  • SrvRply
  • Message sent by SA's and DA's in response to a
    SrvRqst message. The SrvRply contains the URL of
    the requested service
  • Message Format
  • ------------------------
    --------
  • Service Location header (function
    SrvRply)
  • ----------------------
    ----------
  • Error Code
    URL Entry count
  • ----------------------
    ----------
  • ltURL Entry 1gt ...
  • ----------------------
    ----------
  • .

  • \ .

    \
  • .

  • ----------------------
    ----------
  • ltURL Entry Ngt ...
  • ----------------------
    ----------
  • Figure 8 Service Reply Message Format
  • Source http//www.ietf.org/rfc/rfc2165.txt?numb
    er2165

15
SLP Security
  • Security Considerations
  • Authentication using Digital Signatures
  • Authentication Block
  • Signature Generation
  • Signature Verification
  • Protocol Vulnerability
  • Relay Attacks
  • Denial of Service Attacks

16
SLP Defining Service
  • A service in SLP is defined by a service URL.
  • The URL has the form
  • serviceltservice-typegt//ltaddrspecgt
  • ltservice-typegt is the type of service being
    advertised
  • ltaddrspecgt is the service's location (domain
    name or IP address and port number).
  • For example servicemail//mail.com25
  • Above URL advertises a mail server at mail.com on
    port 25

17
OpenSLP APIs (1)
  • SLP implementation is available with source at
    http//www.openslp.org/
  • OpenSLP API is just an implementation of a
    standardized specification described in RFC 2614.
  • The SLP API is a library interface that allows
    programmers to use SLP in their applications to
    locate services
  • Following are the list of major APIs provided
  • SLPReg()
  • SLPDeReg()
  • SLPFindSrvs()
  • SLPFindAttrs()
  • SLPFindSrvTypes()
  • SLPParseSrvURL()

18
OpenSLP APIs (2)
  • SLPOpen() Functions used to open SLPHandles
  • SLPReg() Registers a service URL and service
    attributes with SLP.
  • SLPDeReg() Deregisters a previously registered
    service.
  • SLPFindSrvs() Finds services based on service
    type or attributes.
  • SLPFindAttrs() Obtains a list of attributes for
    services registered with SLP.
  • SLPFindSrvTypes() Obtains a list of the types
    of services that have been registered with SLP.  
  • SLPParseSrvURL() Parses a Service URL passed in
    as a character string and returns the results in
    a pointer to a dynamically allocated SLPSrvURL
    structure.

19
Sample Application
  1. Listing of SLP-enabled daytime server
    (Synchronous execution of SLP callback
    functions)
  2. Listing of SLP-enabled daytime client

20
Conclusion
  • SLP enables automatic service discovery and
    configuration of services over a network.
  • Automatic service discovery is very advantageous
    given the mobility of today's computers.

21
References
  • 1 RFC 2165. http//www.ietf.org/rfc/rfc2165.txt?
    number2165
  • 2 Automate client management with the Service
    Location Protocol by M. Tim Jones.
    http//www-128.ibm.com/developerworks/linux/librar
    y/l-slp/
  • 3 Service Location Protocol. http//www.redbooks
    .ibm.com/abstracts/TIPS0269.html?Open
  • 4 Some Notes on Security in the Service
    Location Protocol Version 2 by Marco Vettorello,
    Christian Bettstetter, and Christian
    Schwingenschlogl. http//www.scs.carleton.ca/bar
    beau/wadhc/Papers/vettorello.pdf
  • 5 OpenSLP API information from
    http//www.openslp.org/
  • 6 OpenSLP API info from RFC 2614
Write a Comment
User Comments (0)
About PowerShow.com