Networking on z/OS
|
Previous topic |
Next topic |
Contents |
Glossary |
Contact z/OS |
PDF
The FTP server Networking on z/OS |
|||
|
FTP, like some other IP applications, is actually a z/OS UNIX System Services application. It can be started within an MVS environment, but it does not remain there very long. It immediately forks itself into the z/OS UNIX environment and tells the parent task to kill itself.
The FTPD task could very well be executed using /usr/sbin/ftpd and a few organizations probably do just that. However, the FTP server can be autologged by the TCP/IP started task if JCL is used. So, the FTP daemon is best started using JCL. An example can be found in Figure 1. Figure 1. FTPD started task
JCL
//FTPD PROC MODULE='FTPD',PARMS='' //FTPD EXEC PGM=&MODULE,REGION=4096K,TIME=NOLIMIT, // PARM='/&PARMS' //SYSFTPD DD DISP=SHR,DSN=SYS1.TCPPARMS(FTPSDATA) Of interest to this discussion is the SYSFTPD DD statement. This DD points to the FTPD configuration file, usually referred to as the FTP.DATA data set. Like the TCP/IP started task itself, the FTP server searches other locations to locate the FTP.DATA configuration data set if SYSFTPD is not defined. However, in most cases using SYSFTPD is the preferred method. What type of information is defined in the FTP.DATA data set? A hallmark of the z/OS operating system is configurability and the FTP server is no exception. Here is a partial list and brief description of some of the more significant
items that can be controlled:
A small sample of an FTP.DATA file is shown in Figure 2. Any configuration statements not defined are assigned default values. Figure 2. Sample FTP.DATA statements
BANNER /etc/ftp.banner ANONYMOUSLEVEL 3 ANONYMOUSFILEACCESS HFS FTPLOGGING TRUE STARTDIRECTORY HFS As mentioned, FTP server messages destined for syslogd are redirected to the z/OS system log when syslogd is not running. Tracing and logging of the FTP server can produce a significant amount of output. If the syslogd daemon is stopped, such FTP messages, while not harmful, could be an inconvenience.
Character sets - FTP server From an end-user standpoint, FTPing into the z/OS UNIX HFS and FTPing into, say Linux, appears identical. The FTP subcommands are the same and the directory structures are displayed in the same fashion. However, there is one fundamental difference between z/OS UNIX and all other UNIX style operating systems: z/OS UNIX does not use the ASCII (American National Standard Code for Information Interchange) character set. Instead, z/OS UNIX is implemented using the EBCDIC (Extended Binary Coded Decimal Interchange) character set. What are the implications? The conversion in most contexts is transparent: messages and commands are automatically translated going in either direction. An end user of an ASCII FTP client would see no difference of appearance between a z/OS FTP server and any other FTP server. For file transfers, the translation is automatic when using ASCII mode (also called character mode or text mode). If an FTP client sends an ASCII encoded file to z/OS (either to the HFS or the MVS file system), the file is translated into EBCDIC prior to being written to disk. If an FTP client retrieves such a file, it is automatically translated back into ASCII after being read from disk but prior to transmission. An FTP client would never know the other endpoint was storing the file as EBCDIC. With a binary transfer, no translation occurs. Consequently, if an FTP client sends an ASCII file in binary mode to the z/OS host, this file does not display correctly when viewed on the z/OS host. If the FTP client retrieves an EBCDIC file using a binary transfer type, then the file does not display correctly when it arrives at the host of the ASCII FTP client. As z/OS continues to evolve, some limited localized support of native ASCII is available. One example is referred to as file tagging, which can be used to identify a file's character set. |
Copyright IBM Corporation 1990, 2010 |