Service Discovery

Service Discovery is a client side library to provide an information system (IS) independent abstraction for finding services and discovering their basic attributes.

See the SD presentation for an overview.

The core component is the C library (glite-service-discovery-api-c), which provides the IS independent interface.

There is a command line tool, glite-sd-query using this library (glite-service-disvoery-cli), however the recommended way is to call the API directly from the client applications.

There are various plugin libraries to work with the specific information sources:

  • glite-service-discovery-bdii-c: BDII
  • glite-service-discovery-rgma-c: R-GMRA
  • glite-service-discovery-file-c: local services.xml file

There is also a Java API and plugin library in development, however it is not well tested yet.

Service discovery is currently used by the following packages: glite-data-catalog-cli, glite-data-transfer-cli, glite-data-transfer-agents, glite-data-hydra-cli

Environmental Settings

Common to all Plugins

  • GLITE_SD_PLUGIN - sets the type of service discovery implementation to be used. It is a comma separated list of the available plugins (file, bdii, rgma, ...) Example:
    export GLITE_SD_PLUGIN=rgma,bdii,file

  • GLITE_SD_SITE - can be used to set the local site, to be used to find a service nearby. Example: export

  • GLITE_SD_VO - can be used to set the default VO, to be used to find a friendly service. Example: export GLITE_SD_VO=EGEE


LCG_GFAL_INFOSYS is used to set the host and port of the BDII service.

Example: export LCG_GFAL_INFOSYS=''


GLITE_LOCATION is used to look up the default configuration file at GLITE_LOCATION/etc/services.xml. $HOME/.glite/etc/services.xml is also tested and it overrides the default settings.

See the DTD of services.xml for the grammar and the following example for the content:

<!DOCTYPE services
        PUBLIC "-//gLite//DTD glite-service-discovery-file 1.0//EN"
        SYSTEM "">
<?xml version="1.0" encoding="UTF-8"?>
  <service name="test-SRM">
      <param name="SEMountPoint">/castor/</param>
  <service name="test-GRIDFTP">

You may also use GLITE_SD_SERVICES_XML to point to a specific file.


One has to set up an R-GMA client environment and point to this via the RGMA_HOME variable.

Example: export RGMA_HOME=/opt/glite

Useful links

For developers:

Last edit: MichailSalichos on 2014-06-26 - 16:29

Number of topics: 1

Topic attachments
I Attachment History Action Size Date Who Comment
PDFpdf 2006-09-05-EGEE-SD.pdf r1 manage 139.5 K 2006-09-11 - 10:23 AkosFrohner service discovery presentation
Edit | Attach | Watch | Print version | History: r7 < r6 < r5 < r4 < r3 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r7 - 2009-03-09 - AkosFrohner
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    EGEE All webs login

This site is powered by the TWiki collaboration platform Powered by Perl This site is powered by the TWiki collaboration platformCopyright & by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Ask a support question or Send feedback