Chapter Contents

Previous

Next
Communications Access Methods for SAS/CONNECT and SAS/SHARE Software

System Configuration for the TCP/IP Access Method

System Administrator, SAS Site Representative, Applications Programmer, or User
The TCP/IP access method for the OS/390 host uses routines in the SAS/C Transient Library for communications services. This library relies on an underlying layer of TCP/IP communications software such as IBM TCP/IP Version 2, Release 2.1 or a subsequent release for OS/390.

You must perform the following tasks or have knowledge of the following issues to configure the TCP/IP access method for SAS/CONNECT and SAS/SHARE:


Installing the SAS/C Transient Library

You should have already installed the SAS/C Transient Library. If you have not, the installation steps are provided in this section.

The TCP/IP access method requires the SAS/C Transient Library, which is included with both SAS/CONNECT and SAS/SHARE.

If your site is running Release 5.50 of the SAS/C Transient Library, either you must re-install it, thereby replacing it with a later version, or you must apply zap Z5500974 to your installed library. The zap is included on the install tape and is described in usage notes.

Steps for installing the SAS/C Transient Library follow:

  1. With the install tape mounted, install the SAS/C Transient Library.

    The CNTL data set member ULCTRANL contains JCL that is updated with job, &prefix, and allocation information that you supplied in the SASEDITP member. If you run this job as supplied, it unloads the SAS/C Transient Library Release 5.50 or a subsequent release from your install tape to a data set named &prefix.SASC.TRANSLIB.

  2. If you want to change the library name (for compatibility with a particular SAS release), you can do so by setting library name DSN= in the SASCTRAN DD statement in the IEFBR14 step, and in the DDOT0 DD statement in the IEBCOPY step.

  3. Submit the job and verify successful completion.

  4. To allocate the SAS/C Transient Library for SAS execution, you may use either of the following options:

  5. For SAS/SHARE only, change the started task JCL for your server.

Note:   If you choose to install your SAS/C Transient Library to a link-list data set, you do not need to allocate it in your CLIST and in your cataloged procedure.  [cautionend]


Understanding the Function of Network Configuration Files

The operation of the TCP/IP access method depends on its ability to access network configuration information from particular site-specific files. The specific filenames are based on the particular vendor TCP/IP product.

IBM TCP/IP Network Configuration Files

SAS software uses the IBM TCPIP.DATA file or TCPPARMS file to determine resolver configuration and IBM defaults. SAS searches the following locations for configuration data sets in this order:

  1. Data set identified by the DDname SYSTCPD

  2. tsoprefix.TCPIP.DATA

  3. SYS1.TCPPARMS (TCPDATA)

  4. TCPIP.TCPIP.DATA

If your configuration file is not in one of the default locations, you may specify its location by setting the TCPIPPRF SAS option to the TCP/IP prefix of your IBM files. For example, if your TCPIP.DATA file is installed in SYS2.VER2.TCP.TCPIP.DATA, you should set the TCPIPPRF option to SYS2.VER2.TCP.

If you do not use IBM defaults for resolver configuration or you do not maintain a name server, see Understanding the Search Order for Locating Network Configuration Files for information about the rules for searching for configuration files.

Note:   The SAS/C Transient Library does not support the IBM TCP/IP files HOSTS.LOCAL and HOSTS.SITEINFO. The previous SAS TCP/IP access method used these files through the Pascal Transient Library Services (Release 6.07 and 6.08 TS404).  [cautionend]

Setting SAS/C Environment Variables with the SASCTCPV DDname

You can set the SAS/C environment variables that are used in the configuration data set selection by including a data set with the special ddname SASCTCPV. If a data set with this ddname is allocated to the SAS session, then its contents are read during the TCP access method initialization. Each logical record is assumed to contain an environment variable assignment of the form:

environment_variable_name=value

For example, if all your configuration files existed under the TCPIP_PREFIX names, you could include the following in your SASCTCPV data set:

//SASCTCPV DD *
TCPIP_PREFIX=TCPCURR
/*

If any of the SAS options controlling configuration data sets are specified, they will override the values that are set in the SASCTCPV data set. For example, the SAS option TCPIPPRF will take precedence over a TCPIP_PREFIX assignment in the SASCTCPV data set.

Interlink TCP/IP Network Configuration Files

Interlink provides an LSCNCOM interface to the SAS/C Transient Library. You should place the LSCNCOM routine and its alias L$CNCOM, in the link-list search order before the module that is supplied by SAS. The routine is dynamically loaded when the first call to the SAS socket library function is made. SAS searches the following locations for configuration data sets in this order:

  1. STEPLIB

  2. LLA

  3. LPA

  4. link list.

SAS uses the Interlink name resolver and the ICSRSLV option to determine the order in which the Interlink name resolver (DNR) and the SAS/C resolver are used.

For details about the LSCNCOM interface, see the Interlink documentation.


Understanding the Search Order for Locating Network Configuration Files

An explanation of the search logic that is used by the SAS/C Transient Library is contained in the following sections.

The file that contains configuration information usually has a name that is derived from the equivalent UNIX filename; for example, the OS/390 data set name ETC.HOSTS is derived from the UNIX filename /etc/hosts.

The SAS/C Transient Library uses the following search logic to locate the file that contains configuration information:

  1. Under TSO, it searches for a data set name that is composed of the user userid prefix and the name that is derived from the UNIX filename.

  2. It searches for a data set name that is derived from the UNIX filename, hosts.


Understanding the Search Order for Locating Host Names and Internet Addresses

The SAS/C Transient Library uses the following search logic to locate host names and Internet addresses:

  1. RESOLV.CONF file using the rules given in RESOLV.CONF File Search Order. If the SAS/C Transient Library finds the RESOLV.CONF file, it performs the requested queries through the SAS/C resolver, and it returns any answer it receives. If attempts to connect to name servers are refused, it uses the logic in step 3.

  2. Data set in the format of the IBM TCP/IP file TCPIP.DATA. The search rules for this data set are the same as the search rules used by IBM TCP/IP.

  3. If attempts to connect to name servers that are defined in TCPIP.DATA are refused, the library looks for a HOSTS file by using the rules given in HOSTS File Search Order. If the library finds a HOSTS file, it returns the result, including failure.

Determining the domain name in name-server queries follows the same logic as the UNIX operating system follows when it uses the domain statement of the RESOLV.CONF file. Name-server addresses are also determined from the RESOLV.CONF file.

The SAS/C Transient Library recognizes only the first three name servers specified in this file. Both the UNIX operating system and the SAS/C environment have a limit of three name servers.

Knowing about the HOSTS File

The HOSTS file contains Internet address and host-name pairs with an optional alias.

You use either the HOSTS file or the resolver program to locate host name and Internet address equivalents.

Use the following format to create a HOSTS file:

Internet-address host-name optional-alias

Example:

127.0.0.1       localhost                 loopback
151.174.130.8   bigserver.yourcompany.com bigserver
151.174.130.27  copland.yourcompany.com   copland
151.174.130.28  ives.yourcompany.com      ives
151.174.130.29  byrd.yourcompany.com      byrd

If you have access to a UNIX system, see the hosts(4) manual page for more information.

If you have access to a UNIX system, you are advised to copy the hosts file from the UNIX system to the OS/390 system and customize it as necessary. Doing this prevents typographical errors that may occur if you create a new file.

HOSTS File Search Order

The SAS/C Transient Library searches for the HOSTS file, in the following order:


Knowing about the SERVICES File

The SERVICES file contains a service name, port number, protocol group with an optional alias. For SAS/SHARE, you must specify server names and port assignments in the SERVICES file. For SAS/CONNECT, the default TELNET port number is used.

If you have access to a UNIX system, see the services(4) manual page for more information.

If you have access to a UNIX system, you are advised to copy the services file from the UNIX system to the OS/390 system and customize it as necessary. Doing this prevents typographical errors that may occur if you create a new file.

See Configuring the Server in the SERVICES File for details about the SERVICES file.

SERVICES File Search Order

The SAS/C Transient Library searches for the SERVICES file, in the following order:


Knowing about the RESOLV.CONF File

The RESOLV.CONF file contains Internet address and corresponding host-name pairs within the domain. This file is used by the resolver program to find addresses of name servers that are used to locate host-name and Internet address equivalents.

You will use either the HOSTS file or the resolver program to locate host name and Internet address equivalents.

Use the following format to create a RESOLV.CONF file:

host-name Internet-address

Example:

domain     yourcompany.com
nameserver 151.174.166.251
nameserver 151.174.52.151
nameserver 151.174.52.113

If you have access to a UNIX system, see the resolver(4) manual page for more information.

If you have access to a UNIX system, you are advised to copy the RESOLV.CONF file from the UNIX system to the OS/390 system, and customize it as necessary. Doing so prevents typographical errors that may occur if you create a new file.

RESOLV.CONF File Search Order

Note:   If you are using the IBM TCP/IP, you do not need to create this file.  [cautionend]

The SAS/C Transient Library searches for the OS/390 configuration file that is equivalent to the UNIX RESOLV.CONF file, in the following order:


Knowing about Configuration File Naming Conventions

SAS searches for configuration files by the common default prefix TCPIP. It is stored in a 26-character string array in L$CNDBA in the SAS/C Transient Library. The SERVICES file, for example, is named TCPIP.ETC.SERVICES. You may override this default using one of the following methods:

All but one of these methods sets a prefix in the system. However, setting the TCPIPPRF option, affects only the invoking user's current session.

Note:   Most sites already have these files available for existing TCP/IP applications. If your site already has TCP/IP applications running under the SAS/C library, this step was probably completed when the SAS/C Transient Library was installed.  [cautionend]

Using the ETC High-Level Qualifier

The ETC high-level qualifier prepends a configuration file name with the ETC prefix; for example, ETC.HOSTS and ETC.SERVICES.

Note:   When using the ETC prefix, do not set the TCPIPPRF option to override the ETC high-level qualifier and do not apply the zap to change the default value of the TCPIP prefix in the SAS/C Transient Library. See Applying a Zap to Change the Default TCPIP Prefix for more information.  [cautionend]

Using the TCPIP Default Prefix

If you cannot use ETC at your site and if DS names do not conflict with the ETC high-level qualifier, you may use the default prefix to produce names such as TCPIP.ETC.HOSTS.

Note:   When using the TCPIP prefix, do not set the TCPIPPRF option to override the TCPIP prefix, and do not apply the zap to change the default value of the TCPIP prefix in the SAS/C Transient Library. See the next section for details about the default TCPIP prefix.  [cautionend]

Applying a Zap to Change the Default TCPIP Prefix

To change the default TCPIP prefix, you may apply zap number Z5504151, which is included on the SAS software install tape and is documented in usage notes.

For example, to produce this SERVICES file

SYS.PROD.CONFIG.ETC.SERVICES

specify a TCPIP prefix of SYS.PROD.CONFIG by using the zap.

Setting the TCPIPPRF Option to the TCPIP Prefix Value

The TCPIPPRF option initializes a filename prefix for the current SAS session. Each session that uses the TCP/IP access method (SAS/CONNECT local and remote hosts and SAS/SHARE server and clients) must set this option at initialization time. For example, to produce this configuration file

SYS2.VER2.TCP.ETC.HOSTS

set the TCPIPPRF option to SYS2.VER2.TCP as follows:

sas ... options ('TCPIPPRF=SYS2.VER2.TCP')


Redirecting Error Output with the SASCTCPE DDname

To document the operating behavior of the SAS/C Transient Library, the SAS/C libraries write all messages (error and informational) to the SAS log, the terminal screen, or the SASCTCPE DDname to SYSOUT. The DDname of SASCTCPE is reserved to contain the redirection of library error messages.

To prevent the writing of informational and error messages to your terminal screen, you can direct SASCTCPE to DUMMY.

If you have trouble making a TCP/IP connection, you may want to direct SASCTCPE to a SYSOUT data set or to a permanent file in the local or the remote SAS execution as a troubleshooting aid.

You have completed the TCP/IP configuration process.


Reference

For complete details about the SAS/C Socket Library for TCP/IP, see SAS/C Library Reference, Third Edition, Volume 2, Release 6.00.

The TCP/IP access method for OS/390 is implemented with SAS/C Socket Library functions.


Chapter Contents

Previous

Next

Top of Page

Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.