In order to enable the SRM SpaceManager you need to add
	the spacemanager service to your layout file
      
[<dCacheDomain>] [<dCacheDomain>/spacemanager]
	and add the following definition in the file
	/etc/dcache/dcache.conf
      
dcache.enable.space-reservation=true
            Unless you have reason not to, we recommend placing the
            spacemanager service in the same domain as the
            poolmanager service.
        
	    Each SRM space reservation is made against the total
	    available disk space of a particular link group.  If
	    dCache is configured correctly each byte of disk space,
	    that can be reserved, belongs to one and only one link
	    group. See the section called “SpaceManager configuration” for a detailed
	    description.
	  
Important
Make sure that no pool belongs to more than one pool group, no pool group belongs to more than one link and no link belongs to more than one link group.
If a space reservation is specified during upload, the file will be stored in it.
Files written into a space made within a particular link group will end up on one of the pools belonging to this link group. The difference between the link group’s free space and the sum of all its space reservation’s unused space is the available space of the link group. The available space of a link group is the space that can be allocated for new space reservations.
The total space in dCache that can be reserved is the sum of the available spaces of all link groups. Note however that a space reservation can never span more than a single link group.
	    dCache can perform implicit space reservations for
	    non-SRM transfers, SRM Version 1 transfers and
	    for SRM Version 2.2 data transfers that are not given
	    the space token explicitly. The parameter that enables
	    this behavior is
	    srm.enable.space-reservation.implicit, which
	    is described in the section called “SRM configuration for experts”.
	    If no implicit space reservation can be made, the transfer
	    will fail.
	  
          Implicit space reservation means that the srm will create
          a space reservation for a single upload while negotiating
          the transfer parameters with the client. The space reservation
          will be created in a link group for which the user is
          authorized to create space reservations, which has enough
          available space, and which is able to hold the type of
          file being uploaded. The space reservation will be short lived.
          Once it expires, it will be released and the file it held
          will live on outside any space reservation, but still within
          the link group to which it was uploaded. Implicit space
          reservations are thus a technical means to upload files to
          link groups without using explicit space reservations.
      
The reason dCache cannot just allow the file to be uploaded to the link group without any space reservation at all is, that we have to guarantee, that space already allocated for other reservations isn’t used by the file being uploaded. The best way to guarantee that there is enough space for the file is to make a space reservation to which to upload it.
	    In case of SRM version 1.1 data transfers, where the
	    access latency and retention policy cannot be specified,
	    and in case of SRM V2.2 clients, when the access latency
	    and retention policy are not specified, default values
	    will be used. First SRM will attempt to use the values
	    of access latency and retention policy tags from the directory
	    to which a file is being written. If the tags are not present,
	    then the access latency and retention policy will be set on basis of
	    pnfsmanager defaults controlled by
	    pnfsmanager.default-retention-policy and
	    pnfsmanager.default-access-latency
	    variables in
	    /etc/dcache/dcache.conf.
	  
	    You can check if the AccessLatency and
	    RetentionPolicy tags are present by
	    using the following command:
	  
[root] #/usr/bin/chimera lstag /path/to/directoryTotal: numberOfTags tag1 tag2 .. AccessLatency RetentionPolicy
	    If the output contains the lines
	    AccessLatency and
	    RetentionPolicy then the tags are
	    already present and you can get the actual values of these
	    tags by executing the following commands, which are shown
	    together with example outputs:
	  
Example:
[root] #/usr/bin/chimera readtag /data/experiment-a AccessLatencyONLINE[root] #/usr/bin/chimera readtag /data/experiment-a RetentionPolicyCUSTODIAL
	    The valid AccessLatency values are
	    ONLINE and NEARLINE,
	    valid RetentionPolicy values are
	    REPLICA and
	    CUSTODIAL.
	  
To create/change the values of the tags, please execute :
[root] #/usr/bin/chimera writetag /path/to/directory AccessLatency "<New AccessLatency>"[root] #/usr/bin/chimera writetag /path/to/directory RetentionPolicy "<New RetentionPolicy>"
Note
Some clients also have default values, which are used when not explicitly specified by the user. In this case server side defaults will have no effect.
Note
If the implicit space reservation is not enabled, pools in link groups will be excluded from consideration and only the remaining pools will be considered for storing the incoming data, and classical pool selection mechanism will be used.
 
   