Recognise SRM
Contents
Recognise SRM
How to recognise different SRMs from quite a long way away.
The Problem
You are talking to an SRM, but how do you know whether it is a dCache or a DPM, or something else. After all, the purpose of the Grid is that you shouldn't know (or care).
But if you do want to know, or do care, what do you do.
The recipes here are necessarily heuristic, because different implementations will change as we go along.
Solutions
1. Query the GIIS/GRIS
Examples below show querying the SE's GRIS. If it is not visible, you can get similar information from the site GIIS.
ldapsearch -x -H ldap://dcache-tape.gridpp.rl.ac.uk:2135/ \ -b mds-vo-name=local,o=grid '(objectClass=GlueSEAccessProtocol)' \ GlueSEAccessProtocolType
returns entries like:
# gsidcap, dcache-tape.gridpp.rl.ac.uk, local, grid dn: GlueSEAccessProtocolLocalID=gsidcap, GlueSEUniqueID=dcache-tape.gridpp.rl. ac.uk,Mds-Vo-name=local,o=grid GlueSEAccessProtocolType: gsidcap
so in this case we are talking to dCache. A DPM will return
# rfio, dpm.epcc.ed.ac.uk, local, grid dn: GlueSEAccessProtocolLocalID=rfio, GlueSEUniqueID=dpm.epcc.ed.ac.uk,Mds-Vo- name=local,o=grid GlueSEAccessProtocolType: rfio
2. Look at the storage path
Often, sysadmins are fond of (default) storage paths, i.e., the GlueSAPath in the storage schema. For a DPM, the path is likely to contain /dpm/site.ac.uk/ whereas a dCache is likely to advertise /pnfs/site.ac.uk/data/ as a part of its path.
3. Query the web service
In theory, you can get the list of protocols from the SE's getProtocols() interface (assumes we're talking to an SRM version 1 interface). Again, dCache will support DCAP and DPMs will support RFIO. Typically.
This solution is more complicated because you need to talk to the web service, and to do that you must have a certificate (or proxy). However, if you are doing that anyway, then this method may be simpler.
On the other hand, there are no good command line tools for calling getProtocols, and there is no guarantee that the SRM supports it.
Where are the SEs anyway?
If you run a command like this, you should see the SEs registered with LCG:
lcg-infosites --vo dteam se
This is for dteam, of course. Substitute another VO to see SEs available for other VOs. This is lkikely to chnage if support for BDII is removed.