4 Policy

Two primary functions of the SMC are to influence MSP allocation to select devices compatible with tape volumes and to intercept MSP messages for tape mounts and dismounts to automate these operations for library and virtual drives.

For specific volumes, SMC allocation is primarily based on volume media and location.

For scratch volumes, SMC allocation and mount processing are primarily based on user policies. Policies to control scratch allocation and mounts may be selected using either the SMC TAPEREQ control statements.

You can use user exits to select policies. Refer to the ELS Legacy Interfaces Reference for more information.

The SMC POLicy Command

Use the SMC POLicy command to specify your policies for tape allocation and mount requests. This command enables you to create a named policy containing all of the attributes associated with an allocation or mount event, including MEDia, RECtech or MODel, SUBPool, ESOTeric, VTCS MGMTclas, and TAPEPlex.

The POLicy command can be used with TAPEREQ statements to associate a named policy with allocation and mount requests.

SMC policies are normally defined in a single data set or PDS member which is loaded at SMC startup using the SMC READ command. Additionally, the POLicy command may be issued at any time to add a new policy or replace the contents of an existing policy.

In the following sample SMCCMDS data set, the READ command loads the CNTL.PDS(POLMEM) data set containing the SMC policies:

Example 4-1 Sample SMCCMDS Data Set

ALLOCDEF ZEROSCR(ON,INSIDE)
MSGDEF CASE(MIXED)
TAPEPLEX NAME(HSCPLEX) LOCSUB(HSC0)
READ DSN('CNTL.PDS(POLMEM)')
TREQDEF DSN('CNTL.PDS(TREQMEM)')

Note the following:

  • POLicy commands must be processed before the TREQDEF command if any TAPEREQ statements reference policies by name.

  • If any POLicy command references a TAPEPlex, the TapePlex name must be defined using a TAPEPlex command before the POLicy command is processed.

  • Refer to the ELS Command, Control Statement, and Utility Reference for more information about the SMC POLicy command and TAPEREQ control statement.

SMC Policy and Esoteric Preferencing

The SMC POLicy command enables you to preference devices during the allocation process. The ESOTeric parameter can specify a list containing a maximum of eight esoterics. During drive exclusion, devices in any of the listed esoterics are included. During drive prioritization, devices are ordered according to their position in the esoteric list. This feature enables you to do the following:

  • Prefer faster or slower models of equivalent drives.

  • Prefer a certain device type (for example, 9940) if drives are available but select an alternative device type if preferred drives are busy

By default, SMC prefers drives based on the following criteria in order:

  1. specific volume LSM location

  2. esoteric list

  3. LSM scratch count.

The relative weight can be changed using the POLicy PREFer parameter. Refer to the ELS Command, Control Statement, and Utility Reference for more information.

SMC Policy and the TAPEREQ Control Statement

SMC TAPEREQ control statements identify tape request attributes, including the tape policy associated with allocation and mount requests. The selected policy is based on the TAPEREQ selection criteria, such as data set name or job name.

The TAPEREQ POLicy parameter directs the SMC to reference an associated SMC policy defined by an SMC POLicy command.

TAPEREQ control statements reside in a definition data set specified by the TREQDEF operator command. TAPEREQ statements must be placed in this definition data set; they cannot be issued as operator commands.

Note the following:

  • Refer to the ELS Command, Control Statement, and Utility Reference for more information about the SMC TAPEREQ control statement and POLicy command.

  • POLicy commands must be processed before the TREQDEF command if any TAPEREQ statements reference policies by name. See "Sample SMCCMDS Data Set.".

  • If your installation is using TAPEREQ statements without POLICY, or user exits, refer to the ELS Legacy Interfaces Reference for information about the interaction between POLICY and other TAPEREQ and user exit policy specifications.

Specifying TAPEREQ and Policy by Volume Serial

Using a combination of TAPEREQ statements and POLicy commands, SMC enables you to specify allocation policy based on specific volume serial numbers. In some cases this feature may allow you to replace HSC nonlibrary VOLATTRs with SMC TAPEREQ control statements and POLicy commands.

Note:

The VOLSER keyword on a TAPEREQ statement is allowed only if the POLicy keyword is also specified and references a previously defined SMC policy with the keyword VOLTYPE(SPECIFIC).

Using policy associated with volume serials enables you to:

  • Define different volume characteristics for the same volume serial for different clients.

    For example, suppose that volser AAAAAA exists in the TapePlex on an HSC server with a media of STK1R, but on a specific client, volume AAAAAA is a nonlibrary standard cartridge. The following combination of POLicy commands and TAPEREQ statements allows the SMC to bypass the volume lookup for volume AAAAAA and use the specified policy information:

    POLICY NAME(MANVOL) VOLTYPE(SPECIFIC) MEDIA(STANDARD) NOTAPEPLEX
    TAPEREQ VOLSER(AAAAAA) POLICY(MANVOL)
    
  • Limit volume lookup to a single TapePlex based on volume serial.

    For example, suppose that the SMC on a client host has two defined TapePlexes, PLEX1 and PLEX2, which contain overlapping volume serial ranges (AAA000-AAA999 and BBB000-BBB999). By default, SMC queries the TapePlexes in the order in which they are defined and uses information from the first TapePlex that recognizes the volume serial. The following combination of POLicy commands and TAPEREQ statements allows the SMC to choose the correct version of the volume for the client host:

    POLICY NAME(PLEX1VOL) VOLTYPE(SPECIFIC) TAPEPLEX(PLEX1)
    POLICY NAME(PLEX2VOL) VOLTYPE(SPECIFIC) TAPEPLEX(PLEX2)
    TAPEREQ VOLSER(AAA000-AAA999) POLICY(PLEX1VOL)
    TAPEREQ VOLSER(BBB000-BBB999) POLICY(PLEX2VOL)
    
  • Direct allocation of volumes outside the library into a specific TapePlex.

    The following combination of POLicy commands and TAPEREQ statements causes SMC to bypass library volume lookup and allocate the selected nonlibrary volumes to library drives compatible with standard cartridges:

    POLICY NAME(INLIB) VOLTYPE(SPECIFIC) ESOTERIC(LIB1ESOT) MEDIA(STANDARD) NOTAPEPLEX
    TAPEREQ VOLSER(AAA000-AAA999) POLICY(INLIB)
    

Note:

In the example above, The NOTAPEPLEX parameter on the POLicy command directs the SMC system to bypass its TapePlex volume lookup logic.

Example

The following example illustrates the recommended method for specifying SMC Policy commands, TREQDEF commands, and TAPEREQ control statements.

  1. Include the following entry in the SMC Start procedure:

    //SMCCMDS DD DSN=MY.PARMLIB(MYSMCCMD),DISP=SHR
    
  2. Include the following entries in SMCCMDS member MYSMCCMD:

    READ DSN('MY.PARMLIB(SMCPOL)')
    TREQDEF DSN('MY.PARMLIB(SMCTREQ)')
    

    Note:

    If TAPEREQ statements include POLicy parameters, the POLicy commands must be processed before the TREQDEF command since the policy name in the TAPEREQ statement is validated against the defined policy definitions.
  3. Add the SMC POLicy commands to member SMCPOL, for example:

    POLICY NAME(POL1) SUBPOOL(SP1) MEDIA(STK1R) RECTECH(STK1RC) TAPEPLEX(HSC)
    POLICY NAME(POL2) SUBPOOL(SP2) MEDIA(VIRTUAL) MGMTCLAS(ABC)
    
  4. Modify TAPEREQ control statements in member SMCTREQ to point to the named policies, for example:

    TAPEREQ DSN(A.B.*) POLICY(POL1)TAPEREQ DSN(A.C.*) POLICY(POL2)
    

    These TAPEREQ statements point to the SMC policy names defined in Step 3.

The HOST parameter on the SMC READ command enables you to specify different policy definitions for different hosts. For example:

READ DSN(MY.PARMLIB(PRODPOLS)) HOST=PRODREAD DSN(MY.PARMLIB(TESTPOLS)) HOST=TEST

If the host name is PROD, member PRODPOLS is loaded. If the host name is TEST, member TESTPOLS is loaded.