The support on the source (or local) iSeries™ server is started, as needed, within a source job to do DDM functions.
The source DDM (SDDM) translates requests for remote file access from source server application programs into DDM requests that are routed to the target server for processing. The SDDM support establishes and manages a DDM conversation with the target server that has the desired remote file.
When an application program first attempts to access a remote file, a search for the requested DDM file is done on the source server. As with local file processing, if the file name is not qualified with a library name, the current library list for the job in which the program is running is searched for the specified file. When the file is found, the server accesses the file, determines that it is a DDM file and starts the SDDM.
When the SDDM is started, it checks to see if a DDM conversation is already active between the source job starting the SDDM and the target server identified by the remote location and mode values in the DDM file. If a conversation that can be used exists, it is used. If not, a program start request is issued to the appropriate target server to start a TDDM (a target job) on the target server to establish a DDM conversation between the SDDM and TDDM. Parameters that are automatically created from information in the DDM file about the remote file are passed when the remote server sends a program start request.
After the TDDM is started, the SDDM can forward each program request to the target job for processing. If, for example, input/output (I/O) operations are to be done on a remote file, the program opens the file and then issues the desired operation requests. The SDDM forwards the open request and the TDDM opens the remote file. Then the SDDM forwards each file operation request to the TDDM, and both of them handle the interchange of data between the application program and the remote file. When a DDM function is being processed, the requesting program waits for the function to be completed and the results to be received, just as it does for local file operations.