Top Banner
MFNETDISK© By shai Hess (2007-2012) Installation and User guide
385

MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Mar 24, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNETDISK© By shai Hess (2007-2012)

Installation and User guide

Page 2: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Without God nothing was possible.

2

Shai Hess, 2009

Page 3: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Table of contents Part 1: MFNetDisk Disk Definitions________________________________________ 9

IO Configuration Definitions in MVS for MFNetDisk modes __________________ 23

Define virtual devices for MFNetDisk _____________________________________ 25

The virtual device and error <SC0D>______________________________________ 31

Operation and risks using MFNetDisk modes _______________________________ 34

Installation ___________________________________________________________ 38

MVS Installation ______________________________________________________ 40

MVS MFNetDisk configuration Parameters in MPCOPT _____________________ 43 TCP key parameter __________________________________________________________ 43 SERVER key parameter ______________________________________________________ 44 LICKEY key parameter ______________________________________________________ 45 DEVICE key parameter_______________________________________________________ 49 SYNCDEV key parameter_____________________________________________________ 50 SHUTDOWN MVS MFNetDisk __________________________________________ 52

Start MFNetDisk MVS job ______________________________________________ 53

MFNetDisk TCP connection error ________________________________________ 55

Control the CPU utilization in MVS for MFNetDisk__________________________ 60

MFNetDisk start and close order _________________________________________ 63

PC Installation ________________________________________________________ 64

MS Windows and TCP open sockets limitation ______________________________ 65

Install MFNetDisk version 12 in new PC ___________________________________ 66

Update PC and MVS MFNetDisk product with new PC Server and MVS load library 69

PC Server in LINUX ___________________________________________________ 70

PCFILE type MPC and PCFILE type AWS_________________________________ 72

PCTOOL_____________________________________________________________ 76

MFNetDisk GUI PC Server new look. _____________________________________ 78

PCSERVER in Windows ________________________________________________ 80

PCSERVER in Linux___________________________________________________ 82

3

Start PC Server in PC and control data file is bad! ___________________________ 83

Page 4: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Stop PC MFNetDisk____________________________________________________ 87

PCTool access PCServer in Linux and Windows_____________________________ 89

SCRIPT in PCTOOL and MVS___________________________________________ 90

PCTool example: Adding Emulator PC Device with one PC File mirror__________ 93

PCTool example: Adding Emulator PC Device with one NETFILE mirror _______ 95

PCTool example: Adding Replicator PC Device for Mirroring MVS real device____ 97

Send Script from MVS to PC Server _______________________________________ 99

Emulate 3390 MFNetDisk disk type PC File._______________________________ 100

Mirroring (SYNCDEV) real 3390 IBM/EMC/HDS disk using MFNetDisk_______ 103

Add mirror to any PC Device. ___________________________________________ 105

Adding MVS real disk as a Net File Mirror to any PC Device _________________ 107

Adding PC Net File Mirror to any PC device _______________________________ 108

SnapShot Backup, the MFNetDisk way ___________________________________ 110

ACCESS IBM 3390 disk data in remote DR SITE___________________________ 125

Three simple ways to access the 3390 data in DR remote site __________________ 127

Use MVS utility to copy PC Mirror to real 3390 in remote site in no time ________ 128

Convert Replicator PC Device to emulator PC Device________________________ 129

Thread run in PC. What the threads are doing? ____________________________ 130

MVS Modify command ________________________________________________ 132

Update dynamically the MVS MFNetDisk IO configuration___________________ 150

MVS recovery when TCP or PC in error __________________________________ 151 The secrets of fast TCP connect feature. ________________________________________ 151 Replicator MODE ____________________________________________________ 154

The logic behind the replication MFNetDisk feature_________________________ 155

Problem in the replication MFNetDisk IO Handler and the trace ______________ 157

MFNetDisk dispatching priority must be high ______________________________ 162

PC recovery when TCP or MVS in error __________________________________ 166 Emulator and Replicator MODE ______________________________________________ 166 The best script to recover PC after TCP error or shutdown PC or MF___________ 167

Link orphan pc file to MFNetDisk Configuration ___________________________ 169

Operation linking storm________________________________________________ 171

Add PC Device or mirror and init the PC File ______________________________ 174

4

Change manually status of mirror in PC device_____________________________ 178

Page 5: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Change mirror status to suspend ______________________________________________ 178 Change mirror status to offline________________________________________________ 179 Delete PC File from PC hard disk______________________________________________ 179 Activate mirror in suspend mirror status _______________________________________ 180 The happiness to force fast delete and the agony of mistakes _______________________ 180 MF emulation and MFNetDisk__________________________________________ 182

Security, TCP and hard disk ____________________________________________ 186

Trace the errors ______________________________________________________ 188 Trace your script activity_____________________________________________________ 188 Trace MFNetDisk MVS activity using MFNetDisk________________________________ 188 Trace MFNetDisk MVS CCW to MVS console using MFNetDisk ___________________ 189 Check problems or what._____________________________________________________ 189 IO GTF trace in MVS _______________________________________________________ 190 Trace MFNetDisk PC Server. _________________________________________________ 191 MFNetDisk disk sharing _______________________________________________ 193 Example: Sharing MFNetDisk 3390 disk. _______________________________________ 194 Backup in the night ___________________________________________________ 197

Replace real 3390 with a new real 3390 without downtime ____________________ 200

MF is not perfect, PC is not perfect and neither MFNetDisk __________________ 205

Display the status of PC Device in PC. ____________________________________ 206

Data check I/O error in MFNetDisk mirror. _______________________________ 209

Enable Shark emulation _______________________________________________ 212

Backup MF configuration file to PC _____________________________________ 213

MF and PCTOOL are controlling all the MFNetDisk PC Servers. _____________ 214

Auto start and Windows service__________________________________________ 223

The best trace in PC for ten generations___________________________________ 225

Advance CCW, search key and search ID _________________________________ 226

The MF disks are a CKD disk. CKD stand for Count, Key and data.____________ 226

Checking CCWS, Advance search key and advance search ID_________________ 229

Kill the interactions between PC and MF. _________________________________ 231

The Auto IO Recovery new feature _______________________________________ 232

The sky is the limit by using REMOTEINSTALL ___________________________ 235

5

Using REMOTEINSTALL to update PC Server code ________________________ 237

Page 6: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Using REMOTEINSTALL to update AutoStart code ________________________ 238

Access MVS files without MVS and without FTP ___________________________ 240

MVSAPI DLL________________________________________________________ 241

The available MVSAPI function _________________________________________ 242

FTPMVSFILES, MVS Files wizard ______________________________________ 245

QSM File format _____________________________________________________ 248 The QSM prefix data ________________________________________________________ 249 The QSM data format _______________________________________________________ 250 MFNetDisk new version 11 _____________________________________________ 251

MFNetDisk CIOD vs. IBM PAV _________________________________________ 252

Activate the CIOD feature ______________________________________________ 254

Commands and CIOD _________________________________________________ 258

New Handling IO and the halt IO supports in version 12 _____________________ 260

MFNetDisk files support AWS files. ______________________________________ 262

VTOC journaling (©)__________________________________________________ 264

Undelete files using the VTOC journaling (©)______________________________ 271

The VTOC Journaling and undelete problem for replication device ____________ 277

VTOC undelete problem and IDCAMS delete VVR__________________________ 284

MFNetDisk and extended address volume (EAV) ___________________________ 285

MFNetDisk PRO and stacked CCW ______________________________________ 288

MFNetDisk PRO high stability even in the time of errors _____________________ 294

MFNetDisk PRO performance and QIO command __________________________ 297

MFNetDisk utilities ___________________________________________________ 300

Check if your replications mirrors are OK _________________________________ 301

Implementation is success, learning is investment___________________________ 304

Tape emulation_______________________________________________________ 309

Part 2: MFNetDisk TAPE emulation _____________________________________ 311

General TAPE Definitions______________________________________________ 312

MFNetDisk TAPE Definitions __________________________________________ 315

INSTALL MFNetDisk tape emulation in MVS by example ___________________ 318

Define the MTL library in SMS using ISMF panel __________________________ 320

Define DATACLAS using ISMF. ________________________________________ 323

6

Define Storage group using ISMF._______________________________________ 326

Page 7: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Create STORCLAS and MGMTCLAS ____________________________________ 327

Define the ACS to SMS.________________________________________________ 328

Define the tapes parameters to MFNetDisk MVS. ___________________________ 330

Define TAPE emulation in PC __________________________________________ 333

TAPERANGE parameter in PC and TAPELOC in MF ______________________ 335

Operate the MTL _____________________________________________________ 336

MFNetDisk MTL after IPL and actions required ___________________________ 338

Checking VOLSER status ______________________________________________ 344

Checking the MTL status_______________________________________________ 345

Mount tape request failed and ATTN modify command ______________________ 346

Mount request by MVS, but no scratch tapes in MPCLIB. ____________________ 348

OAM, MTL, SMS, RMM is not for me ____________________________________ 352

Link outsider tape to local tape configuration ______________________________ 356

MFNetDisk tape format and AWS tape format _____________________________ 362

Trust in MFNetDisk to protect your tapes _________________________________ 366

MFNetDisk scratch control _____________________________________________ 368

Understand the MFNetDisk Tape manager ________________________________ 372

Quick start to install and manage MFNetDisk tapes _________________________ 375

Simplified MFNetDisk tapes parameters in MF and PC. _____________________ 381

Use CA1 or other tape manager for MTL to control MFNetDisk _______________ 384

7

Page 8: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

8

Page 9: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Part 1: MFNetDisk Disk Definitions

MFNetDisk ICKD © MFNetDisk is SAN for CKD. ICKD stand for internet CKD the same as ISCSI stand for internet SCSI. This new technology enabling defined a cheap storage (using cheap Windows OS or free Linux OS) to support the implementation of the CKD protocol. ICKD as ISCSI support internet protocol from the host (MF) to the PC. The performance supposes to be as good as the fiber FICON performance. The performance is only depends on the hardware used from the MF to PC to support the TCP.

Real 3390

All 3390 which are connected directly to the MF and are accessed using the standard channels are real 3390.

9

Emulate 3390 Device MFNetDisk emulate 3390 disk the same as IBM, EMC or HDS emulates 3390 device. To emulate MFNetDisk 3390 device, it is required to define the emulated device in MVS and in PC. In MVS the required parameter is “DEVICE”. In PC the required definition is PC Device type Emulator. The MVS virtual device must be defined using HCD. MFNetDisk required partial HCD device definition called virtual device. Virtual device definition does not required definition for neither CHANNEL nor control unit.

Page 10: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Mirroring real 3390 Device MFNetDisk mirrors any real 3390 to PC. This process is ASync mirroring, which mean that the PC mirror, in case of MF failure, can have some tracks which are not the same as the source real 3390. This feature can be used for backup and for disaster recovery purpose in case that it is acceptable to miss few seconds of tacks updates. To mirror real device, it is required to define the real 3390 device to be mirror to MVS and to PC. In MVS the required parameter is “SYNCDEV”. In PC the required definition is PC Device type Replicator. No HCD definition required, because the real device is already defined to HCD.

PC Devices type in PC MFNetDisk in PC support two types of PC Device; Replicator PC Device and Emulator PC Device. Each PC Device supports 8 mirrors.

10

Replicator PC Device PC Device which can mirror any real device with the mirror data stored in the PC. One of the mirrors is the Replicator source mirror (which is the real disk to be mirrored). MFNetDisk never update the data of the Replicator source. Update to the Replicator source is done in MVS using the standard IO used by the programs run in MVS without the involvement of MFNetDisk. MFNETDISK can create mirrors to real 3390 with no degradation in the performance and without any I/O delay. Only for writing I/O operations the MFNetDisk in MVS will send a list of tracks to PC asking the PC to RESYNC these tracks. MVS MFNetDisk uses the

Page 11: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Replicator PC Device when it uses the SYNCDEV MVS key parameter.

Emulator PC Device PC Device which is used to emulate 3390 the same as IBM emulates Shark and EMC emulates SYMMETRIX. All I/O are sent to PC MFNETDISK which controls the 3390 emulation and the mirroring processes. For write IO operation, all mirrors are updated before returning control back to MVS. MVS MFNetDisk uses the DEVICE key parameter to define this device.

PC Device PC Device is control data structure defined in PC. PC Device contains all the relevant information which is required to emulate and to control all the mirrors contains in the PC Device. Information like the disk model, number of defined mirrors, the mirrors location, Replicator or Emulator PC device type and more are defined in PC Device in the PC host configuration file. In the MVS parameters, the MVS device number points to PC Device number.

11

Mirror Each active PC Device, from any type, can have one mirror or more. Mirror entry, In PC Device, contains all the data to manage the mirror. MFNETDISK makes sure that all mirrors have equal data (using ReSync process).

Page 12: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

A Mirror can be PCFILE or NETFILE type. Mirror can be defined and added for Emulator or Replicator PC Device.

RESYNC ReSync is a process which copies Tracks from mirror with Sync tracks to mirror without Sync tracks. Sync tracks mirror are called Source mirror and non Sync tracks are target mirror. MFNetDisk automatically ReSync tracks until the tracks data become equal in all mirrors which are defined for each PC Device.

PCFILE Mirror PCFILE is a mirror type which contains the data in a local PC file. Accessing the data is done by using the Windows or Linux standard File system I/O. User can copy and paste mirror data file. One file is a mirror with data which is used to emulate 3390 disk. MFNetDisk supports two types of PCFile. The MPC and the AWS format file.

NETFILE Mirror NETFILE is a mirror which contains the data in remote. Accessing the data is done by using MFNetDisk NetAdd which contains two value, IP and remote device number. Remote device number can be a device number defined in MVS or a MFNetDisk PC Device number in remote PC host. In remote location, PC or MVS, MFNetDisk must be running to enable accessing of the remote data.

12

PC Device type Emulator

Page 13: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Emulator Device is a PC Device which can emulates 3390 disk like EMC or IBM does. MFNetDisk uses this PC Device to emulate 3390 disk with data in the PC. This PC device accepts CCW from the hosts (MVS or PC) and responds the same as a real 3390. For write operation all the mirrors contained in the PC Device are updated to be the same before the end IO status is sent back to MVS. This assures that in case of disaster, all the mirrors are the same.

PC Device type Replicator MFNetDisk uses this PC Device for Replication. This PC Device never updates the Replicator Source mirror which is in general a real 3390 defined in MVS and updated only by regular MVS IO.

13

MIRROR Status MFNetDisk Mirror can be in one of the following status: Sync Mirror can be accessed for read or write. ReSync

Mirror is being ReSync by another mirror with Sync tracks. And can also be accessed for read or write if its tracks are valid (sync).

ReadOnly Mirror can be accessed only for read operation. Suspend

Mirror is closed and temporary cannot be accessed for IO. This status is the required status to do MFNetDisk backup or to disable it temporary because of recoverable error (communication error for example).

Page 14: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

14

Offline The mirror is not defined yet and new mirror can uses this mirror entry in PC Device.

Page 15: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

ReplicatorSource

This Mirror is a NetFile (accessed by IP and the remote device number). This mirror points to remote MVS real 3390 (IBM, EMC or HDS). This mirror type is defined only for Replicator PC Device. This mirror is never updated by MFNetDisk. This mirror is the source disk for the mirroring process. The ReSync process, most likely, will use this mirror as the source mirror to RESYNC the other target mirrors defined in the PC Device.

MVS MFNetDisk MFNETDISK MVS application which runs on MVS. This enables the MVS to communicate with many PC using TCP and make the MF to believe that the MFNetDisk devices are real local devices.

PC MFNetDisk MFNETDISK PC application which runs on PC. This component is doing the emulation and replication and all the other features in MFNetDisk.

PC Control (configuration) files for disks The PC Control files controls the entire I/O Configuration. Each control file describes one PC Device. Each PC control file is stored in folder “PCDEV” and its file name “PCDXXX.DVE” where XXX is the PC device number (000-0FF).

15

PC Control (configuration) files for tapes Each tape has its own control file. This file contains information about the tape data file. The tape control file

Page 16: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

is stored in folder “TAPES” and the tapes file name is “XXXXXX.TPE” where XXXXXX is the label of the tape. MFNetDisk will create PC Device configuration files automatically when the PC Server is started and the configuration files are not exists.

MVS MPCLOG MVS file used by MFNETDISK MVS application to keep all tracks updates for Replicator PC Device (using the MVS SYNCDEV parameters). MPCLOG file is used by MFNetDisk to keep the changes in the real 3390 which need to be ReSync to the mirrors of the real device stored in PC. The disk of the MPCLOG file can not be mirrored by MFNetDisk, because update the MPCLOG will force a loop of updates to the MPCLOG by the mirror MFNetDisk feature. Also the MPCLOG disk must have good respond time, mean, no sharing with active remote host.

Invalid Track (ITK) Whenever track of the real device is updated in MF, MFNetDisk set this track as invalid track and activate the resync processing which copy the track from the real device to the mirrors of this real device defined in the PC Device in PC.

Tracks maps MFNETDISK file in PC, which controls the status of all mirrors tracks (CC-HH) per PC Device. All the tracks maps, for all PC Devices, are located in folder TRKMAPS. MFNetDisk uses this map to resync all the mirrors of the PC Device.

16

Remote 3390 Sharing

Page 17: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk enable remote hosts to share MFNetDisk 3390 disks between remote sites which do not have direct hardware connection between the hosts. MFNetDisk uses TCP/IP and RESERVE, RELEASE CCW to share the disk between the remote hosts and keep the integrity of the data. The user in the remote hosts use the remote 3390 as it was a regular, local, real 3390 which is connected directly to the MF host.

SnapShot Backup MFNetDisk does backup in one second. The backup create small pc file which contained the old tracks which were updates by MF. Easily you can access the backup as standard 3390 disk, in read only mode and work with it without the need to restore or create new files. Also easily you can add mirror to this snapshot backup pc device which can be MF real disk or new MFNetDisk mirror pc file. Adding net file, real 3390 mirror disk will copy the snapshot disk (backup disk) data directly to MF 3390 disk.

17

Track Busy Only one thread can access a PC Device track address (specific CC-HH). All threads which need the same track will wait for the track busy status to be cleared. This feature is a must to keep the integrity of the data.

Page 18: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

BUSYIO

Feature which enable MFNetDisk to handle Reserve, Release CCW and Extents disk violation (using PAV) in a better and faster way, The MVS way. The task in MVS which send the CCW request will never be blocked if the PC MFNetDisk cannot run the CCW due to the busy condition. If the Device is reserved to another Host then The MFNetDisk PC will send to MVS Device Busy status and the MVS task will be free immediately to run other IO requests without any delay. When the busy condition is cleared (Example, Release CCW frees the disk or if the IO which caused the Extents violation ends) The PC MFNetDisk will send Device End status back to MVS to indicate that the busy condition is cleared and the IO request can be started again. MFNetDisk supports by default 50 hosts for each device. This number can be changed to any number by compile the PC MFNetDisk with the new number.

PC Tool Advance Windows GUI which enables the user to display, define and update configuration data in no time. No need to remember anything. For each selected menu item there is an automatic help and the required parameter are displayed automatically also with automatic help for each parameter if needed.

18

MVS Tool Advance MVS application which enables MVS users to send PC scripts from MVS to PC using MVS Device number.

Page 19: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

This application is different from PC Tool since the PC Tool uses the PC Device and the PC IP to access the MFNetDisk PC. From MVS only the MVS device number need to be used. All scripts which run from PC Tool can also run from MVS with the same script format. The data to PC can be sent using modify command or batch job.

MVS Standalone utility Advance MVS utility which enables MVS user to restore MVS device from PC backup file or directly from PC Device mirror without the need to have the MFNetDisk MVS application running. This means that the MVS job will communicate directly with the PC without access the MFNetDisk MVS server. This utility can be used for DR to restore a real 3390 disk from MFNetDisk mirror or from Image backup of 3390 which are stored in MFNetDisk PC.

VTOC journaling. MFNetDisk new feature which keep VTOC entries for any file which was updated (deleted, add extent and update its last used TTR). This enables to recover files which were deleted by mistake and does not have backup or the backup are old.

19

VTOC journaling and undelete MVS file. Easily a file which was deleted by mistake can be recovered in seconds using the VTOC journaling feature without any dependency in backups.

Page 20: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Auto Start Windows service

Advance Windows service which enables the PC to automatic start an MFNetDisk server in PC if it is not active. After reboot if this feature is active, the MFNetDisk PC Server will be activated automatically.

Group PCIP Feature which enable a PC Tool or MVS tool to send commands and scripts to many PCs and manage their data. One command or script can be sent to many PC automatically. For example: find the remote location of specific 3390 label (VOLSER) which can be in any remote PC and its PC Device number.

Backup MF IO configuration to PC Feature which backup the MFNetDisk MVS configuration data to PC automatically when the MVS configuration is changed. Each defined PC in MVS received the configuration file. This feature keeps the redundancy of the product in case of MF disaster.

Remote install feature

The MFNetDisk supports unlimited PC hosts which are controlled easily by one PCTOOL application.

20

Page 21: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

This new feature (Aug 20, 2008) enable the product in PC to be updated from PC Tool. This feature will send to any remote location the installation files and with full control will update the required files (PC Server and Auto Start and more) and also automatically restarting the PC Server and the Auto Start Windows service.

Linux and Windows PC Server

MFNetDisk server can run on Linux and Windows. Linux can be also Z/Linux of IBM.

MVSAPI DLL

21

Feature of MFNetDisk which enables the user to read MVS file without accessing the MVS, or to FTP the MVS file from MVS to PC. The read is done directly from PC, and the data is up to date because it read the real data of the 3390 disk.

Page 22: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

22

Page 23: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

IO Configuration Definitions in MVS for MFNetDisk modes Emulator mode (MVS DEVICE parameter) – The user must define virtual Devices in MVS using HCD like define any regular 3390 device because MFNetDisk emulates 3390 like EMC or IBM does. Only I/O Devices (option 5) in the HCD is required by MFNetDisk to be defined. MFNetDisk does not require defining CONTROLUNIT and CHANNEL parameters in the HCD since the product only uses TCP/IP and not a real IO hardware. ASync mirroring mode (MVS SYNCDEV parameter) - The user does not need to define anything to the MVS IO Configuration because the replication is done by using the source 3390 disk (IBM, EMC) which is already defined. The PC Device used for the ASync mirroring is a Replicator PC Device type.

23

Page 24: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

24

Page 25: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Define virtual devices for MFNetDisk MFNetDisk requires defining virtual devices to be used to emulate tapes, 3390 disks and to add alias UCB to be used with CIOD (MFNetDisk PAV). So, to make it clear, virtual devices must be defined using HCD when using the following MFNetDisk parameters: DEVICE, ALIASUCB and TAPEDRV.

Example:

25

Add 32 virtual devices to emulate 3390, from 400 to 41F devices.

Page 26: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

26

Select the HCD from ISPF, and select option 1.

Page 27: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

27

Select option 5 to define the devices.

Page 28: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Press PF11 to add the new devices

28

Page 29: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Specify the address of the devices you like to define, in our case unit address is 400, number of devices is 32 and, the device type is 3390. Be aware, do not specify the “CONNECTED TO CUS”, this may force you to define the CONTROLUNIT and the CHANNEL using the HCD and these parameters are not needed.

29

Press enter to update the new devices and you can continue to activate the new IO configuration.

Page 30: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

By putting the cursor in the device type and press PF4, you can select the device type from the ISPF menu. In our example, select 3390 for 3390 without CIOD. To work with CIOD (IBM PAV), select 3390B for the DEVICE parameter. To define alias UCB, select 3390A for ALIASUCB parameter.

30

For tape select 3490 for TAPEDRV parameter. Tape drives definition using the MTL requires more parameters to be defined. To define MTL, please look for part 2 in this documentation.

Page 31: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The virtual device and error <SC0D> Working with virtual disk can create, in rare case, SC0D error which is an acceptable error when MFNetDisk was active. For normal operation of MFNetDisk, this error not supposes to happen at all. This error can happen only after taking down MFNetDisk. Vary offline the virtual devices before taking done the MFNetDisk will eliminate the chance for SC0D. If you receive the error you can ignore it. This error does not harm your computer. Also you can eliminate the error to be displayed in the console. But in any case please let me know about this error because it is not suppose to happen with my new code in MVS. Let analyze this error. Let look what the MVS message to this error. IBM message about SC0D. C0D Explanation: An unexpected error occurred. For example, the system returns a return code that is not valid. This error may be used for entry into a recovery routine that will attempt retry. The system may provide a hexadecimal reason code to describe the error.

Why it happens? The reason is that MVS in some cases checks the status of its devices. When MFNetDisk is active, the checking is controlled by MFNetDisk and the testing is OK, but if MFNetDisk is not active, and it was active before using the virtual devices, MVS can check the device and find out that the active IO device (MFNetDisk virtual devices) is not defined but it was active before and that is not make sense to MVS.

31

MVS knows to work with real device, real device not suppose to be defined and latter to be undefined without vary the device to offline. That is all the story of SC0D.

Page 32: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Example, MVS does TSCH and STSCH instruction, when MFNetDisk active, MFNetDisk return RC zero. When MFNetDisk is not active, TSCH instruction return RC 3. That can cause SC0D. In the example, stopping MPC without VARY OFFLINE the devices can cause this error. P MPC012 MPC009W MPC012 NOW FINISHING.. EPW0401I EPWFFST: EVENT DETECTED BY 5752SC1 FOR PROBEID EPWTRN17 396 EPW0402I PRIMARY SYMPTOM STRING FOR PROBEID EPWTRN17 FOLLOWS: EPW0404I RIDS/IEANUC01 RIDS/IOSVSTSC PIDS/5752SC1C3 AB/S0C0D EPW0404I RIDS/IOSVSTSC VALU/C581098220 REGS/0F0F8 REGS/090D2 EPW0404I PRCS/81497B70 EPW0409I SYMPTOM STRING VALUE WAS TRUNCATED EPW0701I END OF MESSAGE GROUP MPC999I NOW CLEAR PENDING RQE MPC999I COMACT IS NOW ACTIVE MPC999I WAIT FEW SECONDS.. MPC999I CLEANING ALL TPX TASKS MPC009W TPS NOW FINISHING..

32

Page 33: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

33

Page 34: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Operation and risks using MFNetDisk modes

34

MFNetDisk have some customers who are using the emulation feature (tapes and disks), this make the emulation code a much better code compare to the replication feature which was tested a little in the past. Lately I find more time to invest in the replication feature but I need more users to test this feature and let me know if there are problems. In the SAMPLIB MVS file, I deliver a member configuration file which have definition for emulation (DEVICE parameter) and for replication (SYNCDEV), be aware that you must comment out the parameters which are not being used by the product. If the parameter will be active, MFNetDisk will control the devices defined in the configuration file. If you leave parameter DEVICE MVSDVNUM=300, in the SAMPLIB, used for the emulation and you have a real IBM 3390 device defined as 300, MFNetDisk will handle the IO and will not transfer the IO to the real 300 IBM disk! If only the MVS parameter defined as DEVICE MVSDVNUM=300 and you have real disk 300 in your system, and in PC you do not have and defined PC device to handle the emulation data, you will receive IO error for the virtual MFNetDisk. The real disk will not be affected by the error. If you leave parameter SYNCDEV MVSDVNUM=A8E, in the SAMPLIB, used for the replication and you have an IBM 3390 real device defined as A8E, MFNetDisk will catch all the IO done to real A8E, and analyze the IO and after that let the real 3390 A8E to continue with the IO. MFNetDisk never delays the IO to the real device, and the overhead of the replication is almost zero.

Page 35: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

35

Page 36: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Emulator mode (DEVICE parameter) – In case of MFNetDisk error only the MFNetDisk virtual disks or tapes can be in error. This is also the reality for real 3390 when the controller has an error. ASync mirroring mode (SYNCDEV parameter) - In case of MFNetDisk error, the real 3390 continues to work. ASync mirroring mode only. Some of the newest IBM controllers can send a new CCW which is unknown to MFNetDisk and IBM do not describe this CCW to the public. If this is the case please let me know about it. Also The MFNetDisk replication code checks the CCW before send it to PC. MFNetDisk supports the CCW but in rare case there can be a crazy chain which needs my attention. MFNetDisk will let you know if CCW chain can not be analyzed (The real 3390 continue to work as regular). Be aware that in case of invalid CCW chain created by user (Using EXCP), MFNetDisk will notify the MIRROR error as well. If this is the case no action needed by the user. In this case MFNetDisk may fail to synchronize the replication to the PC mirror disk. If this is the case send the trace MFNetDisk creates to debug the chain or any other error. Using the MVS MODIFY command PERR=Y, MFNetDisk will send the trace data to MFNetDisk job log. This data must be sent to me to verify the error and if needed to fix it. Please read the subject about the replication error and the trace latter in this document.

36

Page 37: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

37

Page 38: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Installation

The MFNetDisk MVS address space must have the highest dispatching priority in the computer. Ok, not exactly, It must have the highest priority compare to all the other address spaces which are using the MFNetDisk modes (SYNCDEV, DEVICE). Some of the IO start from user address space and continue in System address space, like PDSE and more. Therefore, MFNetDisk recommendation is to assign System DP for MVS MFNetDisk server. Be aware that dispatching priority can be number one reason for MFNetDisk, timeout, problems!

The files which are needed to install the product are: 1. MVS load library – has the executable code to run MFNETDISK

MVS side. Folder MVSFILES. 2. MVS SAMPLIB – has a sample of MVS files parameters, jobs,

procedures. Folder MVSFILES. 3. PC Server – You can run Console PC Server (console

application) or GUI PC Server. Only one PC Server can run in one PC. You can use the GUI or the console PC Server. Both PC Server file name is MPCPCSERVERALL.EXE. Folder PCSERVER.

4. Console PC Server – The PC Server executable codes for MFNETDISK. MFNetDisk. The MPCPCSERVERALL.exe can run in Linux and Windows as well. Folder PCSERVER.

5. GUI PC Server - New PC Server which can run in system which support GUI (Windows and Linux). The PC Server GUI name is the same as the PC Server console application. MPCPCSERVERALL.EXE. Folder PCSERVER\PCSERVERGUI.

38

6. PC Tool – Windows GUI to run all MFNETDISK scripts which control the configuration file and more. The file name is

Page 39: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MPCPCTool.exe and it can run on Linux and Windows as well. Folder PCTOOL.

7. PCTOOLHELP.XML – The automatic help for PCTOOL. This file must be in the PCTOOL directory. For non English site, please translate this file to your language file and the help in the PCTOOL will display your native language help (any site which translate this file to other language is welcome to send the file to me ([email protected]). Folder PCTOOL.

8. PCTOOLSET.XML – New file from July 2008–07–31. This file set the default value to PC Tool parameters, and also defined the Group IP which defined all the PC hosts which can be access automatically by PC Tool. Folder PCTOOL.

9. AUTOSTART – The file MPCAutoStart.EXE is the executable file which run a as Windows service to automatically start the PC Server after reboot or stopped. The file must be in the PC Server’s directory. This program runs only on Windows platform. Folder PCSERVER.

10. MVSAPI DLL- MFNetDisk API, Enable the user to access MVS files from PC directly without access the MVS.

39

11. MPCFTPMVSFILES- GUI which demonstrates the MPCMVSAPIDLL features. This tool can be used to FTP MVS files from MF to PC without accessing the MVS. This GUI must run with MPCMVSAPIDLL.dll in the same folder as the MPCFTPMVSFILES.EXE. The source code of MPCFTPMVSFILE can be downloaded from my site.

Page 40: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MVS Installation

1. Load the two MFNetDisk files to MVS. The files are the SAMPLIB

and the LOAD libraries. 2. Make the load Library, MPC.VXXX.LOAD, APF authorize. 3. Copy member MPCPROC from MFNetDisk SAMPLIB file to

PROCLIB library and change the required parameters. 4. Run file ALCLOG to allocate MPCLOG file which is required by the

product. 5. The real disk of the MPCLOG file can be mirrored by

MFNetDisk but be aware that updating the MPCLOG file will create a request to resync the real disk in the PC. MFNetDisk sends a warning message to the console if it finds a request to sync the MPCLOG disk in the MFNetDisk configuration file.

6. Verify that the MPCLOG disk has a good IO respond time (No sharing with other MF!).

7. Each MF which uses the MFNetDisk must have its own MPCLOG file and in different disk which is not shared with the other MF! IO response time must be good in the MPCLOG disk to eliminate any shortage condition!

8. Verify the SAMPLIB, configuration parameters. Delete the parameters which are not in use. For example, do not use SYNCDEV configuration parameter in the SAMPLIB if you do not want to mirror real disks! If you want to use only tapes or disks emulation delete all the SYNCDEV parameter. Or delete the DEVICE, ALIASUCB, TAPEDRV parameters if you plan only to mirror real devices to PC.

9. Verify that the MFNetDisk job receives highest dispatching priority (SYSTEM priority!!!).

10. Start the MFNetDisk procedure with parameter equal cold. “S MPC, PRM=COLD”.

40

11. Verify MPC dispatching priority. MFNetDisk display warning message MPC103I if the DP is low and may cause problems.

Page 41: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

12. Changing the dispatch priority can be done by running “E MPC, SRVCLASS=SYSSTC” when the MPC is up, or you can change the value in MVS using other ways.

13. MFNetDisk must have some privilege authorization. MFNetDisk must have ability to recover severe condition like TCP connection failed between the MF and the PC. In this case after fixing the connection and ask MFNetDisk to recover the connection, MFNetDisk will recover the failing by send VARY ONLINE command. So if MFNetDisk does not have authorization for that you will see the following messages. So look at the ICH408I message and fix the problems to enable MFNetDisk to work properly.

F MPC012,DEV=ONL PROCESS MODIFY IEE345I VARY AUTHORITY INVALID, FAILED BY SECURITY PRODUCT ICH408I USER(STCUSER ) GROUP(STCGRP ) NAME(####################) MVS.VARY.DEV CL(OPERCMDS) INSUFFICIENT ACCESS AUTHORITY FROM ** (G) ACCESS INTENT(UPDATE ) ACCESS ALLOWED(NONE ) IEF196I IOS071I 0320,00,CHK4K, IDLE WITH WORK QUEUED

Sample RACF disable MFNetDisk to run VARY ONLINE command. If this is the case run RACF permit command from TSO. PERMIT ** CLASS(OPERCMDS) ACCESS(UPDATE) ID(STCUSER) SETROPTS RACLIST(OPERCMDS) REFRESH

Sample: Enable MFNetDisk to run MVS commands.

41

Page 42: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Before you begin the real work, take five minutes to read MFNetDisk TCP connection error. This will explain to you what you need to do in case of TCP errors.

42

Many users will find TCP problems when they start the MFNetDisk for the first time because of FIREWALL and other security limitation for the site using the TCP. So run and enjoy the product.

Page 43: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MVS MFNetDisk configuration Parameters in MPCOPT

MFNetDisk can be used for free. The free version support until three devices. The three devices can be SYNCDEV parameters which support ASync mirroring of real 3390 disks (EMC, HDS and IBM) to PC and / or DEVICE parameter which supports 3390 emulation with data in the PC.

The Parameters in MVS Server are:

TCP key parameter TCP is not required parameter if you happy with its default value. TIMEOUT default value is 30. TCPNAME default value is TCPIP. So in most case you can comment this statement in the MPCOPT. Before April 23, 2011 The required parameter for TCP were TIMEOUT and PORT. After this date the PORT parameter is not supported parameter. Specify this parameter will cause error in MFNetDisk initialization. After this date, MFNetDisk required parameters with TCP are TIMEOUT and TCPNAME. If you do not define the TCP parameter MFNetDisk use TIMEOUT=30 and TCPNAME=TCPIP. If you start MPC in MVS and you receive error : “+MPC022E TCP/IP FAILED,<INITAPI ,001011>,TTC”. This message indicates that the INITAPI macro failed. The 001011 indicate that the reason code for the failing macro (ERRNO). Easily you can find out that MPC can not find the TCP job name. If you run TCP with job name not equal to TCPIP, you will receive this error and MFNetDisk without TCP is totally not functional. MFNetDisk in MF will shutdown immediately. The solution is to add TCP statement with the name of your TCPIP job name. If your TCP job name if TCPIP5 your statement must be “TCP TIMEOUT=30, TCPNAME=TCPIP5” and everything will be OK.

43

TCP Describe the TCP values. TCPNAME: If the TCPIP job name is not TCPIP you must specify the TCPNAME with the name of your TCPIP job name.

Page 44: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

TIMEOUT: For very long distance or bad net respond time it is possible to increase this value. The value is in seconds. I set this value to 30 seconds. This value is good enough for most of the cases.

SERVER key parameter

44

SERVER: Describe the Server related parameters. TASKS: MFNetDisk is a Multitasking product. This parameter specifies the number of tasks which process the IO requests. I set this value to 8. Using the RQE=Q modify parameters, you can check the number of requests which are pending for IO. If this value is high you may increase this value. The MFNetDisk CIOD (same like IBM PAV) also needs more tasks in case of high IO utilization. Default value is 4. BUFL: The max buffer length MFNetDisk uses to process CCW commands and data. MFNetDisk fixes this buffer for each task. The allowed value ranges are 66 to 260 in kilobytes. Big value can cause to high paging in your MF but enable MFNetDisk to stack more CCW and data for each IO. To use LBI (record length higher than 64K) for tape, this value must be 256 or higher. Default value is 66.

Page 45: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

LICKEY key parameter LICKEY parameter is required to run MFNetDisk. ** LICKEY example LICKEY EXPDATE=20180101,REQCPUS=(0026239672, 123456789F),ACTKEY=DA378D40FE *PRODUCTION

LICKEY: To be able to work with the product you must have a valid activation key.

MFNetDisk verify that PC and MF uses the LICKEY parameter. PCTOOL and PCSERVER in PC will use MF activation key to be able to run OK.

MFNetDisk without MFNetDisk supported activation key may have problems or limited features.

To receive ACTKEY for your CPU, run D M=CPU or start MFNetDisk in MF and send me the message MPC109I (PCUID of the MF).

To receive ACTKEY, send your print to my site using CODE_REQUEST.

The default ACTKEY will be valid for 6 months. The EXPDATE is the target date MFNetDisk will stop to function.

MFNetDisk will stop to function when the time is expired and when you restart MFNetDisk. If this is the case MFNetDisk startup will failed and will not be able to restart without activation key.

If MFNetDisk time expired and MFNetDisk is up, MFNetDisk will run until the next start up of the product. If the LICKEY is expired of failed, MFNetDisk will not start. To check if MFNetDisk OK with the LICKEY run F MPC, QLIC=Q.

45

Easily you can ask new ACTKEY and check if it is OK using the steps described latter.

Page 46: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk will check if it starts under emulated MF or real MF. If under emulated MF message will be issued at start up.

MFNetDisk add modify command to check LICKEY status. MF and PC are both using the new LICKEY feature. Running mix of old and new MF or PC code without the support of LICKEY may cause problems.

All MFNetDisk PC which access MFNetDisk MF with LICKEY must support LICKEY as well. PTFID in MF and PC must be 206 or up.

Old MFNetDisk PC and MFNetDisk MF (without LICKEY feature) are not supported anymore. So, in case of error, try to install the new MFNetDisk in PC and MF both in same time. If still you have problem, send me description of the error.

D M=CPU IEE174I 18.48.28 DISPLAY M 950 PROCESSOR STATUS ID CPU SERIAL 00 + 0026239672 01 + 0026239672 02 + 0026239672 03 + 0026239672 04 -

Check the CPUID in your MF.

$HASP373 MPC013 STARTED IEF403I MPC013 - STARTED - TIME=18.52.18 MPC064I HW XXXXXX,XXX,XXXXXX SW z/OS 01.10.00 MPC109I MF CPUID FOR LICKEY 0026239672 MPC107I MF EMULATOR LICKEY OK.FLG=B0. MPC001I MPC PRO VER 13.00 - 04/25/12 STARTED MPC051I MPC PTFID=00206, TOKENID=0064

LICKEY validation at MFNetDisk starts up.

18.54.51 f mpc013,qlic=q 18.54.51 STC03301 PROCESS MODIFY 18.54.51 STC03301 MPC107I MF EMULATOR LICKEY OK.FLG=B0. 18.54.51 STC03301 REQ ENDED OK

46

LICKEY parameters verification using MF modify command

Page 47: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PROCESS MODIFY MPC105I LICKEY DAYS. WILL EXPIRE IN 002046REQ ENDED OK

Run QLIC=Q in real MF. Message MPC106E indicate that MFNetDisk next start up will failed! Message MPC105I indicate the time in days left to MFNetDisk to stay active. f mpc013,conf=new PROCESS MODIFY NEWCONFIG REQUEST PENDING MPC078I CONFIG UPDATE ENDED OK MPC129I UPDATING UCT ENDED OK f mpc013,qlic=q PROCESS MODIFY MPC106E LICKEY EXPIRED OR BAD. RC=01. REQ ENDED OK MF LICKEY parameters can be validated when MFNetDisk is up. Ask activation key using www.MFNETDISK.com site. To do so, go to the download page. Read some instruction there. Click the CODE_REQUET page. Fill data and CPUID if you use real MF. Then download your MFNetDisk code. In one day or so, I will send you the ACTKEY to your email found in CODE_REQUEST form. Update your MPCOPT parameters file with the new ACTKEY data. Run F MPC, CONF=NEW. This will update your LICKEY data in MFNetDisk file. Run F MPC, QLIC=Q. This will display your status for the next MFNetDisk start. You can use this command anytime to verify if your LICKEY is OK. This command will display the DAYS left before the LICKEY expired. Check if your MF is emulated MF or real MF

47

Page 48: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk checks if the MF is emulated or real. MFNetDisk can have problem to find if your HW is emulated MF. If this is the case, ask ACTKEY code as you ask for real MF. IEF403I MPC013 - STARTED - TIME=18.52.18 MPC064I HW XXXXXX,XXX,XXXXXX SW z/OS 01.10.00 MPC107I MF EMULATOR LICKEY OK.FLG=B0.

This message with XXX data indicates that the HW title is not available to MFNetDisk. If this is the case MFNetDisk will assume that the MF is emulated MF. Some emulated MF can describe virtual HW. If this is the case, MFNetDisk may fail to find out the type of the MF and will assume by default a real MF.

48

If this is your case, you need to ask activation key the same as you will do for real MF.

Page 49: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

DEVICE key parameter

DEVICE is used to Define Emulator mode device. This definition enables the MFNetDisk to emulate 3390 disk with data in the PC.

Additional parameters which use with DEVICE are:

MVSDVNUM: The MVS device number which was defined to MVS using HCD. This is a virtual device which does not requires defining control unit or channels.

Each MVS Device (MVSDVNUM) must be connected to PC Device defining in PC. This PC identified with the PCIP parameter.

PCDEV: The PC DEVICE number. Value is in hexadecimal and its valid ranges are 00-FF. This PC device must be defined as emulator PC Device.

PCIP: The IP of the PC which have the PCDEV definition.

RANGE: Specify the amount of sequential MVSDVNUM and PCDEV which are defined using this statement. Range is numeric parameter.

49

Page 50: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

SYNCDEV key parameter

SYNCDEV: Is used to mirror real 3390 to PC storage (hard disks) without degradation in the IO performance of the real device and without any overhead.

Additional parameters which are used with SYNCDEV are:

MVSDVNUM: The device number of a real 3390 MVS disk to be mirror to PC.

For SYNCDEV key parameter the MVSDVNUM is a real MVS device. Nothing needs to be defined in HCD for this MVS device number because it is a real 3390 which was defined in the MF and it already have standard HCD definition (DEVICE, CONTROLUNIT and CHANNELS).

PCDEV: The PC Device number. Value is in hexadecimal and their ranges are 00-FF. This PC Device must be defined in PC as replicator PC Device.

PCIP: The IP of the PC which have the PC Device definition.

RANGE: Specify the amount of sequential MVSDVNUM and PCDEV which are defined using this statement. Range is specified in decimal.

50

Page 51: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Figure 1: MPCOPT file configuration parameters Sample.

51

**TCP TCPNAME=TCPIP, TIMEOUT=30 SERVER TASKS=8 ** LICKEY LICKEY EXPDATE=20180101,REQCPUS=(0026239672, 123456789F),ACTKEY=DA378D40FE *PRODUCTION **FOR EMULATOR DEVICE MVSDVNUM=0300, PCDEV=0, PCIP=10.0.0.2,RANGE=5 **FOR REPLICATOR SYNCDEV MVSDVNUM=0A82, PCDEV=3, PCIP=10.0.0.2,RANGE=8

Page 52: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

SHUTDOWN MVS MFNetDisk Use STOP command to shutdown MFNetDisk in MVS. STOP modify command can be failed if there are pending IO for the emulation (tapes and disks) feature, processing by MFNetDisk. If this is the case you can cancel the MVS MFNetDisk. This will purge the IO pending for emulated devices. • Verify that all the jobs which access MFNetDisk are ended. • Enter console MVS stop command, P MPC. • MFNetDisk verifies if there are not pending IO request for all the

devices manage by MFNetDisk. If there are pending requests, MFNetDisk will reject the stop command.

• If MFNetDisk reject the stop command please verify that all the address spaces are not using MFNetDisk emulation disks and tapes.

• If you want to stop MFNetDisk without checking for pending IO requests use the CANCEL MVS command, C MPC.

• Cancel command will stop MFNetDisk IO to the emulated disks and tapes.

• Cancel or stop command will not affect the real disks which are mirrored by MFNetDisk but the mirroring activity will be stopped.

52

Page 53: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Start MFNetDisk MVS job In the SAMPLIB MVS file you can use the MPCPROC member library. Change the XXX to you release number. And put it in a PROCLIB library. //MPCPROC PROC PRM=WARM //MPC010 EXEC PGM=MPCMSR,PARM='&PRM', // TIME=1440, // REGION=0M //STEPLIB DD DISP=SHR,DSN=MPC.VXXX.LOAD //MPCLIST DD SYSOUT=*,OUTLIM=16777215 //MPCSOUT DD SYSOUT=*,OUTLIM=16777215 //MPCTRC DD SYSOUT=*,OUTLIM=16777215 //SYSABEND DD SYSOUT=*,OUTLIM=16777215 //SYSPRINT DD SYSOUT=*,OUTLIM=16777215 //MPCLOG DD DSN=MPC.VXXX.MPCLOG,DISP=SHR //PARMDD DD DSN=MPC.VXXX.SAMPLIB(MPCOPT), // DISP=SHR

53

Sample of MPCPROC

Page 54: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

IEF403I MPC012T - STARTED - TIME=08.50.07 MPC999I HW XXXXXX,XXX,XXXXXX SW z/OS 01.07.00 MPC034I LICKEY IS OK FOR 000000 DAYS MPC001I MPC VERSION 12.00 - 04/01/09 STARTED MPC035I ECSA GETMAIN SIZE 000904K MPC999I IO ROUTINE FLAGS =43A000BD MPC999I START TPS INITIALIZATION MPC999I TPS INITIALIZATION WAS OK MPC999I START TWR INITIALIZATION MPC999I MPCLOG DATA VALIDATION ENDED OK MPC999I CONFIG UPDATE ENDED OK MPC999I TWR INITIALIZATION WAS OK MPC043I VERSION TOKENID <0064> MPC999I SERVER INITIALIZATION COMPLETED SUCCESSFULLY MPC999I CONFIG UPDATE ENDED OK

Sample, messages display after start MPC in MVS.

1. Looking at the display highlight messages, you can see the version date and the version token id.

2. The token id is very important. The same message it display in PC and can be checked using the PCTool command. HELP->ABOUT. See the sample.

3. The token id is very important data. In rare case MFNetDisk can change the data transfer to PC. To eliminate case that the versions data structure will be different, the token id value must be the same. MFNetDisk PC Server, verify that the version are supported, both in PC and MF. In case of version conflict the PC Server will notify about the conflict version and will not run the requested service run from MF.

Version date Tuesday, March 31, 2009 CopyRight (2007-2009) by Shai Hess Version TokenID <64> Pcdev 0 Script dversion ended OK

54

Sample, HELP->ABOUT

Page 55: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk TCP connection error

MFNetDisk TCP connection error happens when the TCP connection from MF to PC is in error. No IO can be sent to PC and the disk and tape emulation can not work. Fixing the TCP connection will fix the problem automatically, but MFNetDisk let you to handle the connection error also manually depend in your case. To explain the MFNetDisk TCP error handler, I used a real case of TCP connection error and the recovery process and the messages from MFNetDisk and MF which will be displayed in case of the error. All the messages in this example displayed, No messages deleted, everything is true and real case. Why I do it? Because in real case you will see many messages and by looking in my example you will be ready for these messages and not be scared. MFNetDisk have two options to control TCP connection error: This option can be set using the MFNetDisk modify command F MPC, TPIOE=Y/N. 1. TPIOE=Y, Purge the pending IO at timeout. 2. TPIOE=N, Continue to retry the IO until the TCP connection will be recovered. Option 1 is risky because the IO will be purge and recovering the IO will not be done. If the user knows for sure that no files and disks need to be recovered he can use this option. In this case the IOS message will be stopped and the pending IO will be purged with error status. The default is option 2 and the recommended option, which is to continue to retry. The reason is that after connection failed, MF will recover the IO after the TCP connection recovered. The recovery can be cleaning the VTOC and more. In our example option 2 is active and MF will continue to retry until the connection will be recovered. MFNetDisk uses MFNetDisk modify command to recover IO timeout error. The command is F MPC, DEV=ONL. Another command which help MFNetDisk in IO timeout is the MVS command DS P, UUUU, N. Where UUUU is the MVS device number and N is the number of sequence device after UUUU to do the command. This command checks the operational status of the device. When DEV=ONL run, please let it run until the end.

55

The problem with DS P is that in case of device error, the DS P does not clean the error and IO may suspend until the DEV=ONL will be executed.

Page 56: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Another problem is that in case of TCP error many devices can be effected from the TCP error, if this is the case DS can be complicate to run for each device and DEV=ONL will do the job the best. Even DEV=ONL run the command to recover the IO timeout besides cleaning the error device status. Please verify that MFNetDisk in MF can execute OS command without RACF limitation. The only command which DEV=ONL run is the DS P console command and this only if the command is required. Here is example of IO timeout. At 14:18:00.70: The device was online and the connection to PC was OK. At 14:18:00.11: I shutdown MFNetDisk in PC. At 14:19:21:19: I run VARY ONLINE to device 300. No result because the PC is down. At 14:19:51:33: MFNetDisk found an IO timeout error. MFNetDisk gave a retry to the IO and send the request second time to PC at 14:19:51:45. At 14:20:2160: MFNetDisk displays error message that we face IO TIMEOUT. The message specify that after fixing the TCP you can do the F MPC, DEV=ONL command. This command sometime is needed and sometime no. After the message the IO retry by MVS. And again IO timeout received. At 14:21:12:73 another retry done and the ONLINE worked fine because at this time I start the MFNetDisk in PC.

56

14:18:00.70 JJ02A 00000290 V PATH(300,0),ONLINE 14:18:00.91 JJ02A 00000090 IEE302I PATH(0300,00) ONLINE 14:19:10.13 JJ02A 00000290 V 300,OFFLINE 14:19:10.16 JJ02A 00000090 IEE303I 0300 OFFLINE 14:19:21.19 JJ02A 00000290 V 300,ONLINE 14:19:21.30 STC05083 00000090 MPC033I RECONECT TO PC ,<WRITE ,000032> 14:19:51.33 STC05083 00000090 MPC999E TCP TIMEOUT TIMER POSTED 14:19:51.36 STC05083 00000090 MPC999E TCP TIMEOUT ACCESSING PC DATA 14:19:51.39 STC05083 00000090 MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> 14:19:51.42 STC05083 00000090 MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > 14:19:51.45 STC05083 00000090 MPC999I RETRY THE TCP ERROR... 14:20:21.48 STC05083 00000090 MPC999E TCP TIMEOUT TIMER POSTED 14:20:21.51 STC05083 00000090 MPC999E TCP TIMEOUT ACCESSING PC DATA 14:20:21.54 STC05083 00000090 MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> 14:20:21.57 STC05083 00000090 MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > 14:20:21.60 STC05083 00000090 MPC050I 0300 IO TIMEOUTIF TCP OK DO "F MPC,DEV=ONL". TO CANCEL PEND IO DO "F MPC,TPIOE=Y" AND WAIT (RISKY) 14:20:51.63 STC05083 00000090 MPC999E TCP TIMEOUT TIMER POSTED 14:20:51.66 STC05083 00000090 MPC999E TCP TIMEOUT ACCESSING PC DATA 14:20:51.69 STC05083 00000090 MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> 14:20:51.72 STC05083 00000090 MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > 14:20:51.75 STC05083 00000090 MPC999I RETRY THE TCP ERROR... 14:21:12.73 JJ02A 00000090 IEE302I 0300 ONLINE 14:21:21.86 JJ02A 00000290 DS P,300,1 14:21:22.00 JJ02A 00000090 IEE459I 14.21.21 DEVSERV PATHS 264 264 00000090 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS 264 00000090 RTYPE SSID CFW TC DFW PIN DC-STATE CCA D 264 00000090 0300,33909 ,O,000,MPC000,00=* 07=+ 264 00000090 ************************ SYMBOL DEFINITIONS ***** 264 00000090 O = ONLINE + = PATH AVAIL

Page 57: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

264 00000090 * = LOGICALLY OFF, PHYSICALLY ON 14:21:36.82 JJ02A 00000290 V PATH(300,0),ONLINE 14:21:37.07 JJ02A 00000090 IEE302I PATH(0300,00) ONLINE 14:21:45.49 JJ02A 00000290 DS P,300,1 14:21:45.64 JJ02A 00000090 IEE459I 14.21.45 DEVSERV PATHS 270 270 00000090 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS 270 00000090 RTYPE SSID CFW TC DFW PIN DC-STATE CCA D 270 00000090 0300,33909 ,O,000,MPC000,00=+ 07=+ 270 00000090 ************************ SYMBOL DEFINITIONS ***** 270 00000090 O = ONLINE + = PATH AVAIL

What DEV=ONL does? The command checks if error status set in the UCB. If error is set in the device, it clean the errors and then it run the DS P command to send IO to the device and fix what is need to be fix. This command is better then VARY online and offline because it does not make and uncontrolled fix to the device. In some case MF will try to clear the IO timeout by using CLEAR SUBCHANNEL command. That is full control by MFNetDisk so do not worry. You can see that at 12:24:45:72 the PC was restart and at 12:25:33:87 after run the DS P command the path was recovered and every thing is OK.

57

12:23:43.71 STC05067 00000090 MPC999I RETRY THE TCP ERROR... 12:23:48.74 00000290 IEF196I IOS071I 0300,00,*MASTER*, CLEAR SUBCHANN 12:23:48.74 00000090 IOS071I 0300,00,*MASTER*, CLEAR SUBCHANNEL INTER 12:23:54.75 00000290 IEF196I IOS071I 0300,00,*MASTER*, CLEAR SUBCHANN 12:23:54.75 00000090 IOS071I 0300,00,*MASTER*, CLEAR SUBCHANNEL INTER 12:24:00.77 00000290 IEF196I IOS071I 0300,00,*MASTER*, CLEAR SUBCHANN 12:24:00.76 00000090 IOS071I 0300,00,*MASTER*, CLEAR SUBCHANNEL INTER 12:24:06.79 00000290 IEF196I IOS071I 0300,00,*MASTER*, CLEAR SUBCHANN 12:24:06.78 00000090 IOS071I 0300,00,*MASTER*, CLEAR SUBCHANNEL INTER 12:24:07.47 STC05067 00000090 MPC999E TCP TIMEOUT TIMER POSTED 12:24:07.50 STC05067 00000090 MPC999E TCP TIMEOUT ACCESSING PC DATA 12:24:07.53 STC05067 00000090 MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> 12:24:07.56 STC05067 00000090 MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > 12:24:07.60 STC05067 00000090 MPC050I 0300 IO RETRY CONTINUE. TO FORCE IO ERRO IO RETRY WILL BE DONE! (RISKY!) 12:24:07.63 STC05067 00000090 MPC033I RECONECT TO PC ,<WRITE ,000032> 12:24:13.51 STC05067 00000090 MPC999E TCP TIMEOUT TIMER POSTED 12:24:13.52 STC05067 00000090 MPC999E TCP TIMEOUT ACCESSING PC DATA 12:24:13.54 STC05067 00000090 MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> 12:24:13.55 STC05067 00000090 MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > 12:24:13.56 STC05067 00000090 MPC050I 0320 IO RETRY CONTINUE. TO FORCE IO ERROR IO RETRY WILL BE DONE! (RISKY!) 12:24:13.72 STC05067 00000090 MPC999E TCP TIMEOUT TIMER POSTED 12:24:13.74 STC05067 00000090 MPC999E TCP TIMEOUT ACCESSING PC DATA 12:24:13.74 STC05067 00000090 MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> 12:24:13.75 STC05067 00000090 MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > 12:24:13.77 STC05067 00000090 MPC050I 0321 IO RETRY CONTINUE. TO FORCE IO ERROR IO RETRY WILL BE DONE! (RISKY!) 12:24:36.58 JJ02A 00000290 DS P,320,1 12:24:37.65 STC05067 00000090 MPC999E TCP TIMEOUT TIMER POSTED 12:24:37.67 STC05067 00000090 MPC999E TCP TIMEOUT ACCESSING PC DATA 12:24:37.72 STC05067 00000090 MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> 12:24:37.76 STC05067 00000090 MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > 12:24:37.78 STC05067 00000090 MPC999I RETRY THE TCP ERROR... 12:24:43.57 STC05067 00000090 MPC999E TCP TIMEOUT TIMER POSTED 12:24:43.58 STC05067 00000090 MPC999E TCP TIMEOUT ACCESSING PC DATA 12:24:43.59 STC05067 00000090 MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> 12:24:43.60 STC05067 00000090 MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > 12:24:43.62 STC05067 00000090 MPC999I RETRY THE TCP ERROR... 12:24:45.72 JJ02A 00000090 IEE459I 12.24.36 DEVSERV PATHS 419 419 00000090 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS 419 00000090 RTYPE SSID CFW TC DFW PIN DC-STATE CCA D 419 00000090 0320,33909 ,A,002,MPC020,00=T 07=T

Page 58: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

419 00000090 ************************ SYMBOL DEFINITIONS ***** 419 00000090 A = ALLOCATED T = NO RESPONS 12:24:56.26 JJ02A 00000290 D U,,,320,2 12:24:56.31 JJ02A 00000090 IEE457I 12.24.56 UNIT STATUS 422 422 00000090 UNIT TYPE STATUS VOLSER VOLSTATE 422 00000090 0320 3390 A-BSY MPC020 PRIV/RSDNT 422 00000090 0321 3390 A MPC021 PRIV/RSDNT 12:25:07.80 STC05067 00000090 MPC999E TCP TIMEOUT TIMER POSTED 12:25:07.83 STC05067 00000090 MPC999E TCP TIMEOUT ACCESSING PC DATA 12:25:07.85 STC05067 00000090 MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> 12:25:07.88 STC05067 00000090 MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > 12:25:07.91 STC05067 00000090 MPC050I 0300 IO RETRY CONTINUE. TO FORCE IO ERROR IO RETRY WILL BE DONE! (RISKY!) 12:25:13.64 STC05067 00000090 MPC999E TCP TIMEOUT TIMER POSTED 12:25:13.65 STC05067 00000090 MPC999E TCP TIMEOUT ACCESSING PC DATA 12:25:13.67 STC05067 00000090 MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> 12:25:13.68 STC05067 00000090 MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > 12:25:13.70 STC05067 00000090 MPC050I 0320 IO RETRY CONTINUE. TO FORCE IO ERROR IO RETRY WILL BE DONE! (RISKY!) 12:25:17.53 JJ02A 00000090 IEE459I 12.23.18 DEVSERV PATHS 433 433 00000090 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS 433 00000090 RTYPE SSID CFW TC DFW PIN DC-STATE CCA D 433 00000090 0320,33909 ,A,002,MPC020,00=T 07=T 433 00000090 ************************ SYMBOL DEFINITIONS ***** 433 00000090 A = ALLOCATED T = NO RESPONS 12:25:17.58 INTERNAL 00000090 IEE459I 12.23.39 DEVSERV PATHS 434 434 00000090 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS 434 00000090 RTYPE SSID CFW TC DFW PIN DC-STATE CCA D 434 00000090 0300,33909 ,A,002,MPC000,00=T 07=T 434 00000090 ************************ SYMBOL DEFINITIONS ***** 434 00000090 A = ALLOCATED T = NO RESPONS 12:25:17.61 JJ02A 00000090 IEE459I 12.23.07 DEVSERV PATHS 435 435 00000090 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS 435 00000090 RTYPE SSID CFW TC DFW PIN DC-STATE CCA D 435 00000090 0300,33909 ,A,002,MPC000,00=< 07=T 435 00000090 ************************ SYMBOL DEFINITIONS ***** 435 00000090 A = ALLOCATED < = PHYSICALLY 435 00000090 T = NO RESPONSE, TIMEOUT 12:25:33.62 JJ02A 00000290 DS P,300,1 12:25:33.87 JJ02A 00000090 IEE459I 12.25.33 DEVSERV PATHS 438 438 00000090 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS 438 00000090 RTYPE SSID CFW TC DFW PIN DC-STATE CCA D 438 00000090 0300,33909 ,A,002,MPC000,00=+ 07=+ 438 00000090 ************************ SYMBOL DEFINITIONS ***** 438 00000090 A = ALLOCATED + = PATH AVAIL 12:25:39.64 JJ02A 00000290 DS P,320,1

58

Page 59: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Another example is that in rare case you can receive the IOS071I after IO timeout. If this is the case the DS P command can solve the problem very fast and easy. I solved the problem of IOS071I after this example, but if it happens gain reissue the DS P again. Sometime you must run the DEV=ONL, that is happen if you use the TPIOE=Y. If this is the case, MFNetDisk will set error status for the device and IO pending will be purged. This is risky but sometime user can have reason to use it. After PC recovered, the DEV=ONL is a must, because if TPIOE=Y all the IO include the DS P IO will return error status. If you run the TPIOE and you do not have special errors set by MF then the DS P may be enough. 12:39:34.64 00000290 IEF196I IOS071I 0320,00,CHK4K, IDLE WITH WORK QUE 12:39:34.62 00000090 IOS071I 0320,00,CHK4K, IDLE WITH WORK QUEUED 700 12:39:35.64 00000290 IEF196I IOS071I 0320,00,CHK4K, IDLE WITH WORK QUE 12:39:35.63 00000090 IOS071I 0320,00,CHK4K, IDLE WITH WORK QUEUED 702 12:39:36.64 00000290 IEF196I IOS071I 0320,00,CHK4K, IDLE WITH WORK QUE 12:39:36.63 00000090 IOS071I 0320,00,CHK4K, IDLE WITH WORK QUEUED 704 12:39:36.75 JJ02A 00000290 DS P,320,1 12:39:37.09 JJ02A 00000090 IEE459I 12.39.36 DEVSERV PATHS 708 708 00000090 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS 708 00000090 RTYPE SSID CFW TC DFW PIN DC-STATE CCA D 708 00000090 0320,33909 ,A,002,MPC020,00=+ 07=+ 708 00000090 ************************ SYMBOL DEFINITIONS ***** 708 00000090 A = ALLOCATED + = PATH AVAIL 12:39:37.10 STC05071 00000090 IEF450I CHK4K CHK4K - ABEND=S000 U0008 REASON=000 709 00000090 TIME=12.39.37 12:39:37.12 STC05070 00000090 IEF450I CH 0008 REASON=000 K4K CHK4K - ABEND=S000 U 710 00000090 TIME=12.39.37

To eliminate IO timeout, verify that the IP is constant IP and not dynamic IP which may be changed by the PC.

59

The IO timeout error may happen only with the tapes emulation and with the disks emulation. In replication no TCP time error can happen.

Page 60: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Control the CPU utilization in MVS for MFNetDisk The parameter in MF which allows you to specify the number of tasks working in parallel to serve the IO requests is done by using the SERVER parameter in MPCOPT member file in SAMPLIB file. Example:

SERVER TASKS=8, BUFL=66

This parameter specifies that 8 tasks will serve all the IO requests coming from MF IO using the MFNetDisk devices. The IO requests contain also the CIOD (like IBM PAV) which allowed multiple IO in parallel running for one disk MFNetDisk device. So if you want quick IO respond increase the number, if you want to reduce the CPU utilization decrease the number. This change can help you in case that there are many IO activities with the devices of MFNetDisk. Why? The reason is that if you have one IO at a time and two tasks, then specifies 8 tasks may be the same as specify two tasks, the other idle tasks will be in wait and do not consume CPU. If the numbers of IO running in parallel, for example, are 20 IO, then all tasks (8 tasks) will be active and consuming CPU, which will make the CPU utilization for MFNetDisk higher compared to if only 7 tasks are running and defined in MPCOPT. Of course adding more tasks until the 20 IO will increase the CPU utilization.

60

Do not be confuse with parallel IO requests and the number of MVS jobs running and access the MFNetDisk devices (tapes and disks). MF will reduce the parallel IO by swapping out jobs if the MF is over loaded as it defined in SRM. In this case the parallel IO will be reduced.

Page 61: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk IO requests handling is done by using sophisticate method. The method can work with many IO in parallel and small number of tasks. MFNetDisk will check if there is a free task to handle pending IO. If all the tasks are busy, MFNetDisk will queue the IO request and will not post a task. If this is the case, the IO request will wait until a task will be free, and the IO will be served by the task. So you can have 20 IO requests pending running with only two tasks. Be aware that TASKS=2 is the minimum tasks allowed defined by me. Using the modify command SRV=Q, you can check what is going inside MFNetDisk using TASKS=2. IO requests pending are 5 (RQE_ACTIVE=5). Number of tasks defined are 2 (TASKS#=2). Number of tasks busy are 2 (TASK_BSY=2). That means that all tasks were busy at the time of the sampling. Number of pending IO which use available task are 1491 (REG_IO=1491). Number of pending IO which queue to task because no tasks were available to serve the IO are 4768 (FSTIO=4768). Number of pending IO waiting to be served are 2 (PND_IO=2). Number of pending IO waiting to be served because NO_FREETASK_AVAILABLE=2 (PND_NTSKD=2).

61

If you have enough CPU and you like fast IO respond then specify TASKS=8 or higher. If you want to try to reduce the CPU utilization try to decrease the number of TASKS. Be aware that reducing the TASKS may increase the CPU utilization in some case because more code needs to run to manage the queue IO.

Page 62: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

F MPC012,SRV=Q PROCESS MODIFY TAPE_CTLSCR=Y PC= NORM LIC=TRIAL DEV#=0043 RQE_ACTIVE=00005 RQE_TOTAL=00256 WAITDVE=00000 WAITIOP=00000 REG_IO = 00001491 FSTIO = 00004768 PND_DEV= 000003 MRR_WRT=000323 PND_IO= 000002 PND_NTSKD= 000002 TASK# = 002 TASK_BSY = 002 CIOD_ALIASIO#= 000381 CIOD_MULTIIO#= 000289

62

Page 63: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk start and close order It is better to start MFNetDisk in PC before start the MFNetDisk in MVS. The reason is that MVS is more sensitive to missing response from PC. So start the MFNetDisk in PC or in multiple PC and after that you can start the MFNetDisk in MVS. Before stopping the MFNetDisk in MVS verify that no applications have allocation files in MFNetDisk. The best way to verify it is to try to vary the MFNetDisk devices offline. If files is opened or allocation, MVS will not allowed to VARY the devices offline. One example is allocated file in TSO. If you have file which is opened or allocated and MFNetDisk MVS is not operational, MVS will not let you to cancel or terminate your TSO session. If this is the case you have option to solve this situation by start the MFNetDisk in MVS and then to close your TSO session or you can VARY offline with force the MFNetDisk device. The prefer way is to start MFNetDisk in MVS and then close your TSO session. Example to vary offline is “V 300,OFFLINE,FORCE”.

63

So to eliminate this error condition with TSO, try to stop your TSO session before shutting down MFNetDisk in MVS.

Page 64: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PC Installation

MFNetDisk software has been developed and tested under Windows operating system using Microsoft studio .NET environment. To be able to run the PC Server in Windows please verifies that Microsoft “Framework” is installed in your PC. http://msdn2.microsoft.com/en-us/netframework/bb264589.aspx Start from Sep 2008 Linux can also run MFNetDisk PC Server.

64

Page 65: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MS Windows and TCP open sockets limitation

MFNetDisk in PC is a server. And it is also a net server which uses TCP as main tool to communicate with many MVS. If the TCP performance is poor, MF performance is poor. Microsoft set socket open limitation to 10, the reason is security. The number is very small for active MFNetDisk, and MFNetDisk performance will be poor when it will be active serving IO from MF with this socket limitation. There are a lot of sites in the internet which let the user increase the number, My PC can work with 260 opened sockets. This is enough number for MFNetDisk to work well and even to download files and surfing the net using the same PC with a good performance. Searching the net for the patch depending on your MS OS service pack (it uses the TCP.SYS application), and set your sockets number to better number (> 200) for MFNetDisk.

65

Page 66: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Install MFNetDisk version 12 in new PC The MFNetDisk installation start with downloading the installation files from my site.

1. Double-click the MPCPCServerAll. You can select between to

run the GUI PC Server or the console PC Server. 2. You can run the GUI with AUTO=Y parameter. This will start the

GUI and the PC Server in one run. 3. If you run the GUI without the AUTO=Y, You can start the PC

Server by clicking the MPCSTART button. 4. Answer Y if MFNetDisk ask you if you are new user and you are.

If you only upgrade to this new version, read about convert MFNetDisk.

5. The PC Server will create a new IO configuration files in directory PCDEV.

6. Double-click application PCTool. PCTOOL is an easy to use windows GUI application which enables you to define, update and delete configuration data in the PC Server.

7. Empty PC Device is offline PC Device and without any mirrors

defined to it.

8. Each PC host must have one PC Server application and one PCTOOL if run the PCTOOL locally to the PC Server.

9. You can run one PC Tool which can control unlimited PC hosts

by using the GROUPPCIP feature or by specify the IP in the PC TOOL SERVERIP textbox.

10. PCTOOL can help to control all the configuration updates

needed to all the PC Servers by change the IP parameter in the GUI.

11. Verify that file PCTOOLHELP.XML and PCTOOLSET.XML

location is in the same folder as the PC Tool program.

66

Page 67: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

12. PC Tool is a user friendly window application. It enables you easily to run the product without the need to remember parameters and script’s name.

13. Easily you can change the HELP English language to your

language, by changing the file PCTOOLHELP.XML to your language.

14. Easily you can set PCTOOL parameters default value and the

GROUP IP value to your required value by changing tag <DEFAULTVALUE> and <SETGROUPPCIP> in file PCTOOLSET.XML.

15. Be aware to install Microsoft FRAMEWORK before doing

anything.

16. PC Server is now installed OK.

17. MFNetDisk supports the PCFILE type AWS and MPC. The default is MPC PCFILE which is the old PCFILE. If you want to change the default run script CONFIG->SYS->PCFILETYPE->AWS. If you want to return to the MPC PCFILE run script CONFIG->SYS->PCFILETYPE->MPC. This value is requiring only for adding new PCFILE. If you have other PCFILE from the past they will continue to run with their PCFILE type. MFNetDisk support mixture of PCFILE types. You can have one PCDEVICE with one mirror type MPC and second mirror as AWS mirror. To check your current setting run script DISPLAY->SYS->OPTIONS.

18. In Windows you can install the Windows service to

automatically restart the PC Server if it is not running. The Windows service support the console and the GUI PC Server. The restart of the GUI is done using the AUTO=Y parameter.

67

Page 68: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk in Windows requires that Microsoft Framework will be installed. If the MS Framework is missing, you get this error. The error you get if the Microsoft “Framework” was not downloaded and installed from http://msdn2.microsoft.com/en-us/netframework/bb264589.aspx

68

.

Page 69: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Update PC and MVS MFNetDisk product with new PC Server and MVS load library The MFNetDisk installation start with downloading the installation files from my site. The easiest MFNetDisk PC server installation is to replace your existence PC server and PC Tool with the new applications. It is recommended to backup the old PC server and the MVS old load library before replace them with the new PC Server and the new MVS load library in MVS. This is because the MVS load and PC server use structures which must be the same. If The structures are changed, both MVS and PC must be active load and server. To check if structure was changed, read the MPCFIXINFODOC.PDF. Rarely the MVS load library replacement required a cold start.

69

Page 70: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PC Server in LINUX To run MFNetDisk in Linux, you need to install MONO. MONO is very good software but it has its MONO support each for different LINUX OS. The PC Server for Windows and Linux is MPCPCSERVERALL.EXE. .

PC Server is software which can run in Linux and Windows. To run PC Server in Linux the host must have MONO installed in Linux. Mono provides the necessary software to develop and run .NET client and server applications on Linux, Solaris, Mac OS X, Windows, and UNIX. For more information use link http://www.mono-project.com/Main_Page The MONO version which my code runs is 2.6. In Windows to run PC Server the user just run the PC Server by double clicks it, or by using the console cmd.exe and enter the PC Sever application name. In Linux using MONO, the user runs MONO and the executable PC Server by specify MONO first and followed by the PC Server application name. For example: MONO MPCPCSERVERALL.EXE.

70

Page 71: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

You can download MONO from http://www.go-mono.com/mono-downloads/download.html. To shutdown MFNetDisk in PC, use the script STOP command. This is controllable process to shutdown the PC with full control of the process. Close the MFNetDisk PC server window is different in Linux and Windows. Shutting down the MFNetDisk PC server is different in Linux and Windows. In Windows, MFNetDisk have full control on the PC Server Window. In Linux, MFNetDisk does not control the shut downing of the Linux window. Close the window by force may cause losing some data if IO was active or configuration changes were done.

71

So, to shutdown the Linux PC Server, use only the MFNetDisk STOP script.

Page 72: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PCFILE type MPC and PCFILE type AWS MFNetDisk supports the PCFILE type AWS, MPC and compression pc file. Compression pc file use only the tracks which are used by the disk for files. The compression pc file is only support in MFNetDisk. The default is MPC PCFILE which is the old PCFILE. If you want to change the default run script CONFIG->SYS->PCFILETYPE->AWS. If you want to use compression pc file, run CONFIG>SYS>PCFILETYPE>COMP. If you want to return to the MPC PCFILE run script CONFIG->SYS->PCFILETYPE->MPC or COMP or AWS. This value is in use for adding new PCFILE. If you have other PCFILE from the past they will continue to run with their PCFILE type. MFNetDisk supports only uncompressed AWS file which contained the data in one file only. The file id is CKD_P370. If your original MF emulator disk is compressed (File ID equal CKD_C370) you need to convert it to uncompressed file. This can be done using the utilities of the MF emulator. When you convert the file from Compressed to Uncompressed, specify uncompressed and one file only file output file. Example convert Hercules compressed file to supported Hercules and MFNetDisk and IBM AWS file: Use Hercules panel, run UTILITIES->DASDCOPY. Specify the parameter for the output file as shown in the image below. When the copy and conversion end OK, you can attach the file to MFNetDisk. The output file of course is also supported in Hercules and ZPDT and other MF emulators. To attach the AWS to MFNetDisk you must do:

72

• Find empty PC Device (in our example let say PC Device is empty (OFFLINE and without any mirrors).

Page 73: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• Rename the uncompressed AWS file to MFNetDisk standard name, in our example to Dasd020.dvv.

• Run MFNetDisk PC Tool. Specify the PC Dev parameter to 20 for our example.

• Run CONFIG->DEV->FORCE->LINKEXISTPCDEVTOSERVER. Specify in the path parameter the location of the uncompressed AWS file.

• Run MODIFY->DEV->VARY->VARYONLINE. • Verify that the PC Device is operational and opened and defined as AWS file.

This can be done using DISPLAY->DEV->DEVCONF

MFNetDisk support mixture of PCFILE types. You can have one PCDEVICE with one mirror type MPC and second mirror as AWS mirror. To check your current setting run script DISPLAY->SYS->OPTIONS.

73

Page 74: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Example: User has 10 MPC PCFILE which are used for emulate 3390 disks. These files were created because MFNetDisk did not support the AWS format before. Now the user wants to add for each MPC PCFILE one mirror of type AWS. • Run script CONFIG->SYS->PCFILETYPE->AWS • Run script CONFIG->MIRROR->ADDMIRROR Now the user wants to add one new emulator PC device, type MPC. This time the actions are: • Run script CONFIG->SYS->PCFILETYPE->MPC • Run script CONFIG->DEV->ADDNEWEMULATORDEV To return to a new default of AWS: • Run script CONFIG->SYS->PCFILETYPE->AWS

Example: User has many disks he shares with MF emulator, ZPDT, and real MF. The user wants to run some jobs in the MF emulator, ZPDT. He likes to have good performance and to access the disk locally and do not using the TCP/IP which MFNetDisk use. To do this he needs to close the file to MFNetDisk and to attach the device to the MF emulator which will use the device as locally attached device. To do this the best is to have PCDEVICE with one mirror type AWS. The reason is that the MF emulator handles the mirror as a device but it can not manage the mirrors of this PC Device. This can be done only by running only MFNetDisk with many mirrors. So you need to close the AWS from the real MF and the emulator MF. This requires only one action which is to suspend the mirror or to vary the PC Device offline done by MFNetDisk PCTOOL GUI. These two operations ask MFNetDisk to close the file and to disable access for the file from real MF and MF emulators using MFNetDisk. In this moment, the AWS file can be attached to your MF emulator. Run your jobs. MFNetDisk does not involve with your jobs if the MFNetDisk AWS files are attached locally to its configuration. When your jobs done, detach the AWS files from the MF emulator and what you need to do is activate the mirror or vary the PC Device to MFNetDisk. At this moment, you can access the disk with the new updates done to the disk from the MF emulator. Now the real MF and the emulated MF can access the old disk with the update done locally by MF emulator.

74

If your PC device contained one mirror, MFNetDisk will not allowed you to run suspend command unless the PC Device is OFFLINE in MFNetDisk. If the PC

Page 75: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Device is OFFLINE, the mirror files are all closed. In this case no need to suspend it. These are the command: Close the file to MFNetDisk run CONFIG->MIRROR->SUSPEND. Reopen the file to MFNetDisk run CONFIG->MIRROR->ACTIVATE. Or: Close the mirrors and the PC Device, run MODIFY->DEV->VARY->OFF. Reopen the mirrors and the PC device, run MODIFY->DEV->VARY->ON. • Example create AWS file or MPC file from real 3390:

Add replicator PC Device, Run script CONFIG->DEV->ADDNEWREPLIACTOR->DEV. specify the IP of the MF and the NETDEV as the real 3390 MVS device number.

Set your required file format, AWS or MPC. To set the format to AWS you must change the default by using

CONFIG->SYS->PCFILETYPE->AWS. Now add a mirror to the PC device. Run CONFIG->MIRROR-

>ADDMIRROR. Specify the path which will contain the AWS file. If your real device is active, and you like that your real device will be

synchronize with the active IO, then you must add the replicator device, parameter SYNCDEV, also to MFNetDisk in MVS as shown later in the examples.

75

Page 76: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PCTOOL PCTool can run on Windows or Linux platform

Figure 2: Sample PCTOOL after it starts.

76

Pay attention that the message indicates that GROUPPCIP feature is not active because there are not PCIP (used by Group IP) defined to Pc Tool. In this case the Radio bottom GROUPPCIP in the right side of the GUI is disabled. If GROUPPCIP is disabled, script can send only to the IP specified in the SERVERIP textbox in the left top of the GUI.

Page 77: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

GROUPPCIP enable you to send one script to all PCIP defined in PCTOOLSET.XML file. If you are the type of user who trust and want to run PCTool script from MF then you can do it easily and with many features which MFNetDisk enable you to script using batch job. In the SAMPLIB you have samples how to run the scripts from MVS. The samples are in members RUNCLTX where X is a number. Start in April 23, 2011, the MPCCLT DDIN statement support also the TCPNAME=TCPIP value. If the TCP job name is TCPIP5 the first statement must be TCPNAME=TCPIP5. If the TCP job name is TCPIP you can comment this statement out. //SHAI1CLT JOB 0,XXX,CLASS=A,MSGCLASS=X // EXEC PGM=MPCCLT //STEPLIB DD DSN=MPC.V012.LOAD,DISP=SHR //DDOUT DD SYSOUT=X //SYSUDUMP DD SYSOUT=X //DDIN DD * *Specify the TCPIP job name if it is not TCPIP *TCPNAME=TCPIP * SAMPLE - run on one pc device PCSCR=0300,CMD=DIOACT * SAMPLE - run on all defined devices disks (replicator and emulator) PCSCRS=ALL,CMD=DIOACT * SAMPLE - run on all PCIP each run for one PC Device 0. PCSIPA=ALL,CMD=DIOACT *SAMPLE – run script using tape volser from MF (TAPELOC in MPCOPY) PCSCRT=MPT033,CMD=DIOACT

77

To prepare the jobs in MF you must first use the PCTOOL which help you easily to find the exact script and its parameters. Then, easily you can copy from PCTOOL to MVS batch job the script and keep it for next use.

Page 78: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk GUI PC Server new look.

By double click the GUI PC Server, Application file name MPCPCSERVERALL.EXE, you start the PC Server. Clicking the application and you will get MFNetDisk PRO window. In this status, MFNetDisk PRO is still not active. To start the PC Server application, click the STARTMPC button. This will activate the PC Server application which enables you to use all the functionalities of MFNetDisk from the PC side.

To stop the PC Server, click the STOPMPC button. MFNetDisk will be shutdown normally. After closing the MFNetDisk, you can exit the GUI or you can restart the MFNetDisk again. The last button, EXITGUI, will close the GUI. This button can be use only after MFNetDisk PRO application was closed successfully.

78

The GUI PC Server in folder PCSERVER subfolder PCSERVERGUI.

Page 79: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

You can start the GUI by double click the MPCPCSERVERALL.EXE or by running the application from console windows. The GUI can initialize the PC Server as well as the GUI by use parameter AUTO=Y. The working directory must be the location of the PC Server. You can select to run console PC Server or GUI. You can start with the console and change to the GUI only by replace the MPCPCSERVERALL.EXE file. Please check that your Linux MONO supports the WINDOWS_FORMS. If it is not, you must install the package or run the console PC Server.

79

In Windows, the GUI run in all version.

Page 80: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PCSERVER in Windows

Figure 3: Sample of PC Server console application after double clicks the application. In this case the control file is found in the PC Server directory. If the control files are not in the PC Server directory then enter Y to create it as an empty control files in PCDEV directory. Be aware that when you start the PC Server for the first time, the PC Server creates some folders in its directory automatically and copy and delete some not needed files.

80

Page 81: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

81

Page 82: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PCSERVER in Linux I test and run PC Server and PC Tool in Linux and Windows. Both platforms run the MFNetDisk code well.

Figure 4: MFNetDisk in Linux using PCTool in Windows and UBUNTU Linux under VMWARE.

82

Be aware that Windows uses “\” back slash while Linux uses “/” slash. Also the Windows is not case sensitive while Linux is sensitive.

Page 83: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Start PC Server in PC and control data file is bad! If you start with new MFNetDisk in PC host than the control file is not exist and that is normal that the MFNetDisk will come with message to verify that you aware to the situation that there is new installation of MFNetDisk in PC. In this case answer Y and start to work with the product. But if after working for a while with 3390 disk emulation and tapes emulation, you start the PC Server and find out that MFNetDisk can not read the control file and is now aware to the disk and the tapes which were defined and worked before.

First check if you start the right PCServer, if yes, just close the application and start the right PCServer, if no, then you need to recover the control file. Without control file the PCDevice and tapes location and control data are invalid. That is mean that you can not access the 3390 and the tapes created by MFNetDisk. If you do not use tapes or disks, skip the recovery process for the media. This problem does not suppose to happen, but if it happens do the following to gain access to the tapes and the disks which are existed anyplace in PC storage.

83

Page 84: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Recover the tapes:

• Find out all the real tapes data file location (folders). • MFNetDisk keep all the tape in files with specific name

convention. The standard name of tape file is “PTvvvvvv.tpv” where vvvvvv is the tape label.

• Define the PCSTORAGE required for the tapes location using the folders.

• Define the TAPERANGE required to specify what tape VOLSER are eligible to be used in PC for tapes emulation.

• Run script CONFIG->TAPE->FORCE->LINKALLTAPESINPATHTOCTLDATA.

• Specify the path parameter. • The script may looked like this: • CMD=LINKALLTAPESINPATHTOCTLDATA,

PATH=C:\MPCDASD\,SURE=Y • All the linked tapes will be set as WRITE-PROTECTED because

MFNetDisk can restore the real expiration date for the tapes. The script also adds 7 days to the current days. The user needs to enable the write to let MFNetDisk to use the tapes for write operation if the tape will be selected for write operation.

84

Page 85: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Recover the PCDevice

• Find out all the real disks data file location (folders). • MFNetDisk keep all the disks in files with specific name

convention. The standard name of 3390 emulation file is “DasdXXX.dvv” where XXX is the PCDevice number in hexadecimal.

• Run script CONFIG->DEV->FORCE -> LINKALLPCDEVINPATHTOCTLDATA.

• The script may looked like this: • CMD=LINKALLPCDEVINPATHTOCTLDATA,

PATH=C:\MPCDASD\,SURE=Y. • Beware that MFNetDisk links only one mirror to the control file. If

you want to add more mirrors to the PCDevice use the script ADDMIRROR.

Beware that MFNetDisk is now running in it default status, meaning if you run the tapes emulation before then for example there are not rules for the tapes.

85

Page 86: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

I recommend keeping the important control file data in a text file. The way to do so is to use the PCTOOL. To keep the required configuration information in a file:

• Start PCTOOL. • In the PCTOOL click TRACESCR radio button, this will ask you

to specify the file name to keep the data. For example CONFDATA.TXT can do the work for you.

• Run the important script listing here. • You can add more script if you like for example display the tapes

status and more. • After running the required scripts, close the CONFDATA.TXT file

by uncheck the TRACESCR radio button.

The minimum important scripts to my opinion are:

• DISPLAY>SYS>ALLCONF – this display all defined PCDEVICES and its location.

• DISPLAY>SYS->PCSTORAGE – this display all paths (folders) which tapes file are allocated in.

• DISPLAY>TAPE->RULES. • DISPLAY>TAPE->TAPESRANGE.

Having this file can help you to recover the control data file in a few minutes.

86

Page 87: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Stop PC MFNetDisk Verify that MVS does not using the PC Server to emulate disks and tapes before you shutdown the PC Server. In this is the case, the address spaces which use the device to emulate the 3390 will get IO errors. And no path available condition which required the operator for action using MVS Modify command (F MPC, DEV=ONL). Be aware that Auto Start feature will start automatically the PC Server if you do not disable the Auto Start using the PC Tool. So if you want to really shutdown PC Server to updates the code, do not forget to disable the Auto start or else the PC Server will start automatically every time you shutdown the PC Server. Two options to stop PC Server:

• Send script from PC Tool using MODIFY->SYS-

>STOPSERVER. In Linux this is the preferred way to stop PC Server in secure way.

OR • MFNetDisk PC Server can also recover the CLOSE Windows

request using the X button in the top right side of the PC Server window.

87

Page 88: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

88

Figure 4: Sample PCTOOL to stop PC Server.

Page 89: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PCTool access PCServer in Linux and Windows Script to Linux is the same as in Windows. The only difference is the file name and path. In Linux the Directory separator is “/”. In Windows is “\”. Be aware that all script are running from Windows and are sent to Linux or Windows PC Server.

89

PCTool script to add Emulator PC Device to Linux PCServer. See the PATH parameter.

PCTool script to add Emulator PC Device to Windows PCServer. See the PATH parameter.

Page 90: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

SCRIPT in PCTOOL and MVS

Figure 4: Sample PCTOOL with the automatic script language and the automatic help. PCTOOL is a windows application which is used to send Scripts to the PC Server. MVS or PCTOOL use the same scripts language format to define, update and delete configuration data in the PCServer. PCTOOL is easy to use Windows or Linux application and we recommend all the new users to use it before try to use the scripts language from MVS.

90

Page 91: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

By select menu requests from PCTOOL Menu, MFNetDisk automatically displays the required script parameters and the help for each selected menu item. The script can be updated before it is sent to the net or to local PC Server pointed by the IP textbox in the PCTOOL. HELP for each script and for the parameters are available automatically by the GUI for each selected menu item. MFNETDISK uses the same script language to display or update I/O from MVS or from PCTool to MFNetDisk PC server. From MVS using the modify MVS command, you can send script to PCServer from MVS. Example “F MPC012, PCSCR=0300, CMD=XX” where XX is the script command and 0300 is the MVS device number (not the PCDevice). My recommendation is to keep critical scripts in file in MVS. If for example there is a host which hold RESERVE on device and you want to release it by force, you can run “F MPC012, PCSCR=0300, CMD=FFREERESERVE”. This also can be implemented by using the PCTool using the PCDevice parameter in the PCTOOL textbox and select MODIFY->DEV->FORCE->FREERESERVE. In the PCTOOL, the PCTOOL will display the text “CMD=FFREERESERVE”. The pro using the MVS command is that you do not need to remember the PCDevice number. The PCDevice number is required only if you use the PCTool. Each script which is sent to PC Server from MVS or PCTOOL can have a “RANGE=number” parameter which enable the user to run the script “number” times each time for the previous PC Device + 1. For example you can add 5 sequential PC Devices start with PCDEV=0 by using the script CMD=ADDNEWDEV…., RANGE=5. This will add PCDEV 0, 1, 2, 3, 4 to MFNetDisk PC control file.

91

Be aware that PCTOOLHELP.XML file must be in the same folder as the PC Tool application to have the automatic help.

Page 92: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

92

Page 93: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PCTool example: Adding Emulator PC Device with one PC File mirror This is only example for using PCTool. Latter more practical example to define devices using the PC and the MF together. Example: Define 3390 PC Device type emulator with mirror type PC File.

1. Start the PCTOOL. 2. Verify that IFNETDEV in the GUI form is set off. 3. Choose CONFIG->DEV->ADDNEWEMULATORDEV 4. PCTOOL displays a sample script with the required parameters

and help. 5. Update or insert your required parameters. Verify that the PATH is

existed in the PC Server host. 6. The final script: 7. “CMD=ADDNEWEMULATORDEV, IFNETDEV=N,

PATH=C:\DASD\,CYL=M1,SSID=00,LOCAL=Y”.

93

8. Send the script to PC Server by click button “DOSCRIPT”.

Page 94: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

94

Figure 5: Sample adding PC Device with mirror type PC File

Page 95: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PCTool example: Adding Emulator PC Device with one NETFILE mirror

This is only example for using PCTool. Latter more practical example to define devices using the PC and the MF together. Example: Define 3390 PC Device type Emulator with mirror type NET File. NetAdd: NETDEVICE=0a90, IP=192.168.100.2

• Start the PCTOOL and verify that IFNETDEV is set on. • Choose CONFIG->DEV->ADDNEWEMULATORDEV. • Update the required parameter IP and NETADD. • This script does not require the CYL parameter because this value

is taken from the remote MVS device or from the remote PC Device.

• The final script: CMD=ADDNEWEMULATORDEV, IFNETDEV=Y, SSID=00, IP=192.168.100.2, NETDEV=0A90, LOCAL=Y.

• Click the DOSCRIPT button.

95

Page 96: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

96

Figure 6: Sample adding PC Device with mirror type Net File

Page 97: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PCTool example: Adding Replicator PC Device for Mirroring MVS real device This is only example for using PCTool. Latter more practical example to define devices using the PC and the MF together. ASync mode uses Replicator PC device. Example: To define PC Device type Replicator, which will mirror real 3390 Device in MVS IP=192.168.100.2 and MVS DEVNO=0A80.

• Choose CONFIG->DEV->ADDNEWREPLICATORDEV • Update the IP and the NetAdd of the MVS standard 3390 in the

script fields. • Be aware that the IP and the NETDEV must point to MVS host and

to MVS device number. The MVS device will be the source mirror for mirror its data to PC.

• The final script: “CMD=ADDNEWREPLICATORDEV,SSID=00, IP=192.168.100.2,NETDEV=0A80”

• Run the script.

97

Page 98: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

98

Figure 7: Sample adding Replicator PC Device with mirror type Net File

Page 99: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Send Script from MVS to PC Server • Edit file SAMPLIB Member RUNCLTX. • Update DDNAME “DDIN” data with the required script data. • The script is the same script format in PC or MVS. In MVS add

PCSCR=XXXX, where XXXX is the MVS Device number which is defined in MVS MFNetDisk MPCOPT parameter as MVSDVNUM=XXXX.

• The IP and the PC Device does not need to be specified. MFNetDisk takes these values from the MVS Device number.

Example: Send the script to PC Server to display the IO Activity in the PC Server. “PCSCR=0A80, CMD=DIOACT”. The same script can run from the PCTOOL using “DISPLAY->SYS->IOACT”. This request will create script CMD=DIOACT.

//IBMUCLT JOB MSGLEVEL=1 JOB02724 // EXEC PGM=MPCCLT //STEPLIB DD DSN=MPC.V012.LOAD,DISP=SHR //DDIN DD * PCSCR=0A90,CMD=DIOACT PCSCR=0A90,CMD=DMIRRORVTOC, MIRROR=9 //DDOUT DD SYSOUT=X //SYSUDUMP DD SYSOUT=X

99

Figure 8: Sample of MVS job which is used to send a script to PC server.

Page 100: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Emulate 3390 MFNetDisk disk type PC File. The emulation is important because it enables the MVS user to access MFNetDisk data in PC as it was a real 3390 disk. MFNetDisk can emulate 3390 with the data stored in PC the same as it was a real 3390. MFNetDisk supports the sharing of MFNetDisk 3390 emulation disk by supporting the Reserve Release CCW and the BusyIO new feature and more. To share the MFNetDisk disk, update the MVS MPCOPT configuration file parameters in all MVS to point to the same PCIP and PCDEV.

Example: Define 3390 MFNetDisk disk type PC File in MVS Device number 300 using 200 cylinders. Use in the PC empty PC Device number 5. Use PC Server host with IP=10.0.0.2. Use “PATH=C:\MPCDASD\” for the PC File in the PC.

• Verify MVS Device number 300 is defined in HCD by using MVS

console command: “D U,,, 300,1”.

100

• Insert MFNETDISK MVS parameters to member MPCOPT :

Page 101: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

DEVICE MVSDVNUM=0300, PCDEV=5, PCIP=10.0.0.2,RANGE=1

• Start MPCPROC in MVS or update dynamically the new MVS configuration by using modify command “F MPC, CONF=NEW”.

• Using PCTOOL. Verify that PCDEV Textbox have a 5. • Choose CONFIG->DEV->ADDNEWEMULATORDEV. • Verify that “IFNETDEV” is set off. • Update the path parameter to “PATH=C: \MPCDASD\”. • Update Cyl parameter to “CYL=200”. • Run the script. • The script is: “CMD=ADDNEWEMULATORDEV,IFNETDEV=N, • PATH=C:\MPCDASD\,CYL=200,SSID=00,LOCAL=Y” • PCTOOL displays a message “Thread start to Init or Sync Dev 5

Mirror 0” etc… • MFNetDisk PC Server initializes the PC File ASync by using PC

thread. MFNetDisk uses thread only for long running operation like format a PC File.

• Use DISPLAY->DEV->DEVCONF to check what the thread is doing. The script displays the status of PC Device and its mirrors.

• Choose DISPLAY->DEV->DEVCONF and verify that PC Device 5 mirror zero is defined as Sync mirror status.

• MVS is ready now to access MVS device 300. • Run ICKDSF to initialize the MFNetDisk 3390. You can use job

DSFINIT in MFNetDisk installation file SAMPLIB.

101

• “VARY 300, ONLINE” the device from MVS console. You can start working with the new device number 300 the same as it was an IBM 3390 or EMC disk.

Page 102: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

102

Figure 10: Create new PC Device 5.

Page 103: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Mirroring (SYNCDEV) real 3390 IBM/EMC/HDS disk using MFNetDisk MFNetDisk enables to mirror any real 3390 disks (EMC, HDS and IBM) to PC. MFNetDisk never delay the real device and the overhead is almost zero. No need to define virtual MVS device number in the HCD for this feature because the real 3390 is already defined as a real device to MVS.

Example: In MVS Z/OS IP 192.168.100.200 Create async mirror to IBM real 3390 disk Device number a80. The mirror type for the A80 will be a PC File. Keep the mirror data in PC in path C:\MPCDASD. The PC IP where the PC Server runs is IP=10.0.0.2. Use PC Device 3 to control the Replicator PC Device.

103

Page 104: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• Add to MVS SAMPLIB MPCOPT member:

SYNCDEV MVSDVNUM=0A80,

PCDEV=3, PCIP=10.0.0.2, RANGE=1

• Start MPC in MVS or update dynamically the new MVS configuration using modify command “F MPC, CONF=NEW”.

• Using PCTOOL verify that PCDEV Textbox set to 3. • Choose CONFIG->DEV->ADDNEWREPLICATORDEV. • Update IP parameter to IP=192.168.100.200 (MF IP) and the

NETDEV parameter to NETDEV=0A80 (MVS Device number). • Run the script. “CMD=ADDNEWREPLICATORDEV, SSID=00,

IP=192.168.100.200, NETDEV=0A80”. • Choose DISPLAY->DEV->DEVCONF and verify that the PC

Device 3 creates replicator PC Device with the required IP (MVS IP) parameter and the NetDev (MVS device number) parameter.

• The script run fast and that is why MFNetDisk does not use thread. • The script run fast because the source mirror is exist in MVS and

the mirror does not need to be initialize as a regular PC file mirror. • Verify that the PC Device is type Replicator PC Device and that

the mirror status of the NetFile mirror (mirror 0) is REPLICATORSOURCE.

• Now MFNetDisk created Replicator PC Device with the source mirror device defined as MVS device number 0A80 and the IP of the MVS 192.168.100.200.

• No mirror exists to the source mirror (real 3390 disk) right now in the PC device. You defined only the real 3390 to PC but the target mirrors are not defined yet. In this status, MFNetDisk does not create mirror to the real device yet, to create mirror you must add another mirror to the PC Device. The best mirror to add to real disk mirror is a PC File mirror.

104

• Next we will see how to add mirror to any PC Device (Emulator or replicator).

Page 105: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Add mirror to any PC Device. PC File is the best mirror type to mirror standard 3390. It is cheap, fast and reliable. PC File is a regular Windows or Linux local file. You can browse the file, You can copy and paste it to any location in the PC and all what you can do to any file in PC. You use the same PC Tool script to add mirror to PC device type Replicator or Emulator.

Example: Create PC File mirror for PC Device 6 type Emulator (or Replicator). Use “path=C:\MPCDASD\” to define the PC File mirror folder.

• Using PCTOOL verify that PCDEV Textbox sets to 6. • Choose CONFIG->MIRROR->ADDMIRROR. • Verify that “IFNETDEV” is set off (required to defined PC File). • Update path parameter to “PATH=C: \MPCDASD\”. • Run the script:

“CMD=ADDMIRROR, IFNETDEV=N, PATH=C:\MPCDASD\,LOCAL=Y”.

• PCTOOL displays a message “Thread start “. • MFNetDisk will init the PC File mirror by using thread because it

may require long time operation. • To check the thread, use DISPLAY->DEV->DEVCONF.

105

• Choose DISPLAY->DEV->DEVCONF and verify that the PC Device 6 create new mirror (the next unused mirror is 1).

Page 106: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• The action MFNetDisk takes after adding mirror are initialize the PC file disk and automatically starts to resync the new mirror from other mirrors defined to the PC Device.

• Source mirrors are the same for Emulator PC Device and Replicator PC Device. All mirrors with sync track are OK to be candidate as a source mirror to the target mirrors. For Replicator PC Device, the REPLICATORSOURCE (real 3390 in MVS) is always sync and never updated by MFNetDisk. Any track update of the real 3390 disk, MFNetDisk invalidates all the mirrors tracks except of the real 3390 disk (REPLICATORSOURCE mirror).

106

Page 107: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Adding MVS real disk as a Net File Mirror to any PC Device Example: Add NET File mirror to PC Device 6 of any type (Emulator Replicator). Add real 3390 disk as a mirror to PC device. Use MVS IP,”192.168.100.111”, and MVS device number “0B80” to identify the mirror to PC.

• Using PCTOOL verify that PCDEV Textbox sets to 6. • Choose CONFIG->MIRROR->ADDMIRROR. • Verify that “IFNETDEV” is set on (use to define net file). This will

change the script parameter to include the IP and NETDEV instead of PATH.

• Update the IP parameter to IP=192.168.100.111 and NETDEV=0B80.

• Run the script: “CMD=ADDMIRROR, IFNETDEV=Y, IP=192.168.100.111, NETDEV=0B80, LOCAL=Y”.

• Choose DISPLAY->DEV->DEVCONF and verify that the PC Device 6 now contain the new Net File mirror. By adding a new Net File mirror, MFNetDisk does not initialize the real 3390 disk because it is a real disk, so MFNetDisk can start without delay to resync the real 3390 from a mirror which is synced in this PC Device.

107

Page 108: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Adding PC Net File Mirror to any PC device Be aware that this time we add a mirror (NETADD but not real 3390) PC Device from remote PC. That is almost the same as adding MVS Net File. The only different is that this time the NETDEV parameter is the PC Device number in the remote host and it range number is 0-FF (The maximum PC Devices number supported by one PC) and the IP is a PC IP. For Adding real 3390 disk as a mirror, the IP is a MVS IP and the NETDEV is a MVS device number defined in MVS using HCD and its range is 0000-FFFF. Example: Create NET File mirror for PC Device 6. You use the same tool to add mirror to pc device replicator or emulator. Use PC HOST “IP=192.168.100.112” and PC Device number 8.

• Using PCTOOL verify that PCDEV Textbox sets to 6. • Choose CONFIG->MIRROR->ADDMIRROR. • Verify that “IFNETDEV” is set on. • Update the IP parameter to IP=192.168.100.112 and

NETDEV=0008. • Run the script:

“CMD=ADDMIRROR, IFNETDEV=Y, IP=192.168.100.112, NETDEV=0008, LOCAL=Y”.

108

• Choose DISPLAY->DEV->DEVCONF and verify that the PC Device 6 add this new mirror. In this case the remote PC Device already defined and that why MFNetDisk does not initialize its

Page 109: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

109

defined storage. MFNetDisk start immediately to sync this mirror from any sync mirror defined in the PC Device.

Page 110: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

SnapShot Backup, the MFNetDisk way MFNetDisk backup real disks (replication pc device) and emulation disk in one second. This feature really makes the all backup processing obsolete.

To create backup and use the backup to restore follow the picture.

Add snapshot backup to pc device 0. The pc device can be emulation or replication pc device.

110

In one second you have backup. You can create many backups as you need.

Page 111: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Display the status of the snapshot backup.

111

MFNetDisk create key for you. You need this key to restore or create mirror for the specific backup.

Page 112: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

112

You can update the emulate disk for example I delete few files for pc device zero which in MF is VOLSER MPC000.

Page 113: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

113

After delete the files in MF, MFNetDisk will copy the old tracks to snapshot backup file. In this case two tracks were saved in the file.

Page 114: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

You can check the content of the backup VTOC by using script DISPLAY>SNAPSHOT>SNAPSHOTVTOC.

114

You can see the MF files which were deleted are in the backup file.

Page 115: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk allow you to add mirror to the snapshot backup by using CONFIG>SNAPSHOT>ADDSNAPSHOTMIRRORTOKEY.

115

MFNetDisk requires the key parameter.

Page 116: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

116

After adding the mirror to snapshot backup, you can display the entire active snapshot backup in the PC using DISPLAY>SNAPSHOT>SNAPSHOTALL.

Page 117: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk displays the active snapshot backup when you display the pc device data. The line is “ACTIVE SNAPSHOT=1”.

117

Page 118: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk allow you to work with the snapshot backup as a regular pc device. This enable you to emulate 3390 disk in MF as it was emulated 3390 in MF.

118

MFNetDisk enable you to work with this pc device as read only pc device.

Page 119: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The snapshot pc device is virtual pc device because no additional space require to this pc device except the already exist pc device mirror in pc device 0 and the snapshot backup. You can see that MFNetDisk does not use the PATH parameter which is required for regular pc device. In this case MFNetDisk will use INPCDV as the source pc device (in our case pc device zero) and the key value which is the key of the snapshot backup created by MFNetDisk.

119

Page 120: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

After creating the snapshot pc device you need to vary the pc device to online.

120

Do MODIFY>DEV>VARY>VARYONLINE.

Page 121: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

To access the snapshot disk in MF, you need to connect the pc device 50 to MFNetDisk file parameter. You can see the snapshot pc device will be access in MF as MF device 350. You can add dynamically the DEVICE statement by adding the DEVICE statement to the MVS parameter file (MPCOPT) and run MVS modify command F MPC, CONF=NEW.

121

You can vary the 350 online. If duplicate label exist, you can vary offline the real disk and vary online the snapshot pc device. In our example vary disk 300 offline, and vary online disk 350 online.

Page 122: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Now you can add full mirror with full content data of the real disk or the emulator pc device synchronize to the backup time.

122

In this example you add pc file mirror.

Page 123: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk let you to create net file mirror by pressing the IFNETDEV. This mirror is MF real disk. In our example, MFNetDisk create mirror to MF in IP 192.168.100.2 to real MF disk device number 0A8E (IBM, HDS, EMC disk). Adding the mirror will start thread which will copy the content of the snapshot pc device to MF real disk 0A8E. When the copy ends, you will have restored of the backup in your real disk. But you can just access the data from the snapshot pc device without restored anything.

123

Page 124: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

124

I display the content of the VTOC using displaying of the snapshot pc device directly. Using DISPLAY>MIRROR>VTOC.

Page 125: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

ACCESS IBM 3390 disk data in remote DR SITE Any standard 3390 disk can be mirrored by using Replicator PC Device. MFNETDISK is able to mirror any standard 3390 disk of any OEM (EMC, IBM, and HDS) without any degradation in IO performance of the source IBM 3390 disk. Replicator PC Device only receives a list of the tracks which have been changed in MVS IBM 3390 disk (All writes operation to the source disk in MF create the list). The PC Server ReSync the invalid tracks of all the target mirrors from the source mirror which is the real IBM 3390 disk. Replicator PC Device with ReplicatorSource mirror can not receive CCW from the MF because the real IBM 3390 is active and online to MVS. To enable 3390 emulation feature of MFNETDISK the PC Device must be switched to Emulator PC Device and a free MVS device number must be defined to MVS using HCD without the need to define also CONTROLUNIT and CHANNEL in the HCD because this device is virtual device which use software and TCP and not hardware.. Emulator MFNETDISK PC Device can receive IO CCW and emulate 3390 disks the same way as the real 3390 (EMC or IBM) disk does.

125

Page 126: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Example, IBM 3390 device number A90 is mirrored by Replicator PC Device 4 in remote PC IP 192.168.100.4. PC Device 4 mirror 0 is the Replicator source mirror (type Net File). And the Replicator source mirror is also real 3390 IBM disk with device number A90. The a90 is active and updated from MVS. PC Device 4 Mirror 1 is a PC File and it is the only target mirror of the a90. Mirror 1 PC FILE storage location is in PATH = C:\MPCDASD\ and the file name is DASD004.DVV. So the absolute file name is C:\MPCDASD\DASD004.DVV Mirror 1 has equal data as the A90 and it is ReSync for every track update which is done by any MF which shares the A90 3390 disk. Assume that our IBM 3390 A90 is not operational (crash) anymore. We want to access the IBM 3390 data in remote site (DR).

126

Page 127: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Three simple ways to access the 3390 data in DR remote site

• Use MVS utility to copy Mirror 1 data to standard 3390

in remote site. • Use a script to change ASync PC Device to Sync

(standard) PC Device to enable the MFNetDisk to emulate 3390 disk.

127

• Vary the PC device offline and copy and paste the mirror, change the file name to the standard mirror name with the new PC device number and link it to the control file (for more information see the “Link orphan PCFile or image backup file to MFNetDisk Configuration”). Also add to MVS configuration file parameters the new DEVICE statement and its PCIP, PCDEVICE and MVSDVNUM new parameters.

Page 128: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Use MVS utility to copy PC Mirror to real 3390 in remote site in no time

This utility can run without having to run the MFNetDisk MVS server. The copy is done directly between the MVS job and the PC IP. This is important for DR when the condition is that you do not have time to install MFNetDisk in MVS and dealing with parameters. In normal case, the TCP in MVS is available and have connection to the PC which has the mirror to be restored to real 3390 device.

//JOBNAME JOB (MPC),,MSGCLASS=X,MSGLEVEL=(1,1),CLASS=A // EXEC PGM=MPCUPC,REGION=0M //G.STEPLIB DD DISP=SHR,DSN=MPC.V012.LOAD //G.MPCLIST DD SYSOUT=*,OUTLIM=16777215 //G.MPCSOUT DD SYSOUT=*,OUTLIM=16777215 //G.SYSUDUMP DD SYSOUT=*,OUTLIM=16777215 //G.SYSPRINT DD SYSOUT=*,OUTLIM=16777215 //G.PARMDD DD DSN=MPC.V012.SAMPLIB(MPCOPT),DISP=SHR //G.DDIN DD * COPYDISK=BK2DV,IFILE="C:\MPCDASD\DASD004.DVV",IIP=192.168.100.4, OUTDEV=0A90 //G.DDOUT DD SYSOUT=*

128

Figure 15: The JCL to execute to copy PC File mirror to MVS device.

Page 129: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Convert Replicator PC Device to emulator PC Device • To be able to emulate 3390, the PC Device must be a

emulator PC device (Sync). • Choose MODIFY->DEV->FORCE-

>REPLICATORDEVTODREMULATORDEV. • The script switches the Replicator PC Device to Emulator PC

Device and by that it enables 3390 emulation. • Start MFNetDisk MVS Server. • Verify that MVS parameters are defined OK for PC Device 8. • Example:

DEVICE MVSDVNUM=0300, PCDEV=8, PCIP=10.0.0.2, RANGE=1

• MVS can access the 3390 disk immediately and without any interruption.

129

Figure 16: Sample script to convert ASync PC Dev to Standard PC Device.

Page 130: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Thread run in PC. What the threads are doing?

MFNetDisk uses threads to run long time task in the background and to speed the performance. The problems with Threads are:

1. The user can not know when the thread finishes its task. 2. The user can not know if the thread ended successfully.

Threads become active for these operations: 1. Init pc file. 2. ReSync mirror.

To check the status of thread for active PC device: For Init PC File or check the ReSync thread - • Choose DISPLAY->DEV->DEVCONF. • Check field MIRROR=X Where X defines the status of the

mirror. • For init pc file mirror it gives the CC HH of the track which is

initialized now. • For ReSync mirror it gives the CC HH of the track which is

ReSync now.

130

Page 131: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

.

131

Page 132: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MVS Modify command Modify command enables the user to control MVS MFNetDisk operation easily. All Modify command can run from the MVS console. MFNetDisk enables the user to run the Modify command form PC using the PCTOOL. To send F MPC,HELP from PC:

• Choose MODIFY->SYS->SENDREQTOMVS. • The script : CMD=RREQTOMVS,SURE=,IP=,REQ= • Enter the modify text to REQ= and the IP of the MVS to IP= • The script now :

CMD=RREQTOMVS,SURE=Y,IP=192.168.100.2,REQ=HELP

List of MVS MFNetDisk modify command:

• IP=Q Display all the IP which is defined to MFNetDisk and their status (example OK_CON, NOOK_CON…). F MPC, IP=Q PROCESS MODIFY 169.254.000.001 CON_OK

132

• IP=R Clear the NOOK IP status and enable the MFNetDisk to access the IP which was in error condition. MFNetDisk automatically retry to access the IP after few minutes. This command retries to access the IP immediately.

Page 133: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• DEV=ONL

Clear Path error condition for emulation devices. MFNetDisk emulates 3390 disks and tapes and the product in case of TCP error will put the emulated devices to NO_PATH condition. All the IO which will be sent by MVS will receive NO PATH AVAILABLE IO error condition the same as real 3390 disk do when the PATH lost. This condition must be cleared when the connection return. The way to return IO activity to the emulated 3390 is to do the Modify command with DEV=ONL.

• SYNDV=NORM Enable the MFNetDisk to use the PC for replication MFNetDisk feature (SYNCDEV). Norm status is the default normal status for MFNetDisk. This command never affects the emulation (DEVICE, TAPEDRV) MFNetDisk feature.

• SYNDV=NOPC Disable the connection between PC and MF for replication MFNetDisk feature (SYNCDEV). MF will keep all the tracks which need to be ReSync in the local MVS file (MPCLOG). Modify command with SYNDV=NORM return the MFNetDisk to normal operation and the MFNetDisk will send the data contained in MPCLOG to PC to be resync. The emulation MFNetDisk feature (DEVICE, TAPEDRV), MFNetDisk continue to access the PCs and the emulation continue to run as usual. This command never affects the emulation (DEVICE, TAPEDRV) MFNetDisk feature.

• TRC=Y (was ON) Trace on the activity in MF MFNetDisk for debugs.

133

• TRC=N (was OFF) Stop the trace.

Page 134: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• SRV=OFF Disable the operation of MFNetDisk temporary without ending the MFNetDisk job (risky).

• SRV=ON Enable the SRV=OFF. The normal operation renews.

• SRV=Q Display the MFNetDisk operations and IO statistics.

134

• HELP List all supported modify command.

Page 135: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• CONF=Q

List all the emulation devices (Sync mode devices) and replication (Async mode devices) which are currently active and for replication (Async mirroring) also the pending invalids tracks in MPCLOG file needed to be sent to PC. For Async mode it also displays the device error status. F MPC,CONF=Q PROCESS MODIFY DEVICE UUUU IP PCDV TRKINV ERR DEVICE 0300 169.254.000.001 0000 SYNCDV 0A8F 169.254.000.001 0025 000000 SYNCDV 0A90 169.254.000.001 0026 000000

• CONF=NEW Dynamically change the MFNetDisk IO configurations. The command cans add/delete/update devices by reading the MVS MFNetDisk configuration file (MCPOPT from SAMPLIB file).

• DEVEND=DDDD or ALL Clear pending busy condition for IO request. The MFNetDisk BUSYIO feature clears automatically the busy condition. The command can be used only in case of bug in MFNetDisk which failed to free busy condition.

• CONTRC=Y/N

Trace each I/O request for all modes to the console. Be aware that the console can be filled with trace messages.

135

• RQE=Q Display the pending IO requests to be handled by MFNetDisk.

Page 136: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

F MPC,RQE=Q PROCESS MODIFY TYPE ADD DEVN FLAG WAITS IO 0267E388 0300 500100A0 0000 IO 0267E4AC 0300 500100A0 0000 IOP 0267E2AC 0300 500100A0 0000 BSY 0267E8AC 0300 500100A0 0000 REQ ENDED OK

• RQE=R

Retry the MFNetDisk IO pending scheduler.

• DEVERR=Q/C Display or clear all the errors MFNetDisk devices. Errors can be NO_PATH_AVAILABLE or if MFNETDISK can not serve IO request because of missing resources. F MPC010R,DEVERR=Q PROCESS MODIFY DEV 0300 NO PATH REQ ENDED OK

• DEVINV=DDDD or ALL

Invalidate all target mirrors tracks of the async mode devices. This command will start the ReSync processing in PC.

• QMRR=DDDD or ALL Display mirroring information and status and timing and more.

136

• QDEV=DDDD Display emulation data and CIOD status.

Page 137: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• NOPATH=DDDD

Set no path available status for device. This command may cancel the jobs which are using the device (The same as vary offline with force, does). To recover the device, do F MPC, DEV=ONL to make the device available to MFNetDisk.

• PURGIO=DDDD Set No path available and kill the pending IO. To recover the device, do F MPC, DEV=ONL to make the device available to MFNetDisk.

• PCSCR=DDDD,CMD=xx….x All the scripts from PC Tool to PC Server can be executed also in MVS using the Modify command.

F MPC,PCSCR=0300,CMD=DDEVCONF PROCESS MODIFY DEVICE 0300 *********** DEVICE 000 ONLINE ,DEVICEALLTRK=OK, SYNC(STANDARD) DEV SSID 0000 CYL C8 (HEX), 200 (DEC) NUMBER OF ACTIVE MIRRORS FOR PC DEVICE IS 1 ++POS = 0 PATH=C: MPCDASD STATUS=DEVICEEXIST TYPE=LOCAL MIRROR=DEVICEISSYNC USERREQ=NOREQ FILESTAT=FILE IS OPEN

The highlight yellow color is the script as it is sent from the PC Toll to the PC Server.

137

Page 138: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Running script using the console modify command is not very practical (error typing) way, the best is to run a ready PC script from MVS, using batch jobs. Samples scripts are contained in the SAMPLIB MVS file. IP=Q

List the IP status for each PC. MVS keep the status of each PC IP depend on the connection status between the MF and the PC.

IP=Q Displays all the IP which is defined to MFNetDisk and their status (example OK_CON, NOOK_CON…). For ASync mode (Replication) MFNetDisk will not access the PC for a few minutes if the IP is not OK. For DEVICE mode (Emulation) if the IP is not OK, MFNetDisk will set the devices to NO_PATH_VAILABLE status). In case that the MVS operator fixes the IP problem, he can start the MVS PC connection by using PC=R modifies command.

F MPC, IP=Q PROCESS MODIFY 169.254.000.001 CON_OK

138

Page 139: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

SRV=Q

List the status of MVS MFNetDisk running status. It is good command for monitoring the MFNetDisk operation at any time.

SRV=Q shows you everything about the status of the MFNetDisk. MPC SERVER ACTIVE – The normal status of MFNetDisk. PC=NORM/NOPC

NORM: PC is accessed using ASync mode. NOPC: PC is not accessed by MFNetDisk. This status is set by using SYNDV=NOPC/NORM.

LIC=ACTIVE/TRIAL TRIAL: Free version of MFNetDisk. ACTIVE: Activation done.

DEV#=NNN NNN: Number of devices type DEVICE and SYNCDEV defined.

RQE_ACTIVE=NNN NNN: Number of IO request active (pending IO).

RQE_TOTAL=NNN NNN: Number of IO requests allocated.

139

Page 140: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

WAITDVE=NNN

NNN: Number of IO request pending, waiting for DEVEND Status from PC.

This number must be low unless the MVS device number is shared with another active MVS and the other hosts do RESERVE CCW many times and for long time before do RELEASE CCW.

Modify command, RQE=Q, displays the IO requests which are waiting for DEVEND status.

DEVEND status is sent by the PC automatically when the device is released.

Modify command DEVEND=UUUU, where UUUU is the MVS device number, can send the DEVEND status manually by the user, but this is a risky modify command. Use it only if the device is waiting for DEVEND for long time.

REG_IO=NNN NNN: IO requests which are process normally by task. If there are enough tasks defined to MVS MFNetDisk this number suppose to be high compare to FSTIO.

FSTIO=NNN NNN: IO requests which are waiting for task to be free.

140

What is RQE_TOTAL? This number start with 256 allocated requests; MFNetDisk will increase this number if needed automatically 100 requests every time. MFNetDisk can increase this number to thousands. If this number is higher (> 356) it can be because of lower dispatching priority to MFNetDisk in MVS. If MFNetDisk run out of these resources it will set the DEVICE mode devices to errors (no path available) and for ASync (SYNCDEV) mode it will stop the mirroring and the real 3390 devices will continue to run without mirroring. So be aware that dispatching priority for MVS MFNetDisk is a must to run the MFNetDisk product To display the error MVS devices, use DEVERR=Q, modify command.

Page 141: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

If all the tasks are busy the IO request will wait for task. These numbers can be high if ASync mode devices are high loaded with IO write operations.

PND_DEV=NNN NNN: number of IO requests pending for Sync Device (3390 emulation).

This number can be a little high if many Sync Devices are simultaneously IO active and the tasks numbers are very low.

PND_SYN=NNN

NNN: number of IO requests pending for ASync Device (mirror any real device to PC without performance degradation).

This number can be a little high if many ASync Devices doing write IO are simultaneously IO active.

PND_IO=NNN

NNN: number of active IO requests, which are process by specific task.

This number can not be higher then the number of tasks which are available to MFNetDisk.

PND_NTSK=NNN NNN: number of active IO requests which are waiting to free task to be process.

This number can be a little high if many writes IO are execute for ASync mode devices.

TASK#=NNN NNN is the number of tasks available to MFNetDisk. This number is defined in MFNetDisk parameters file.

TASK_BSY=NNN NNN is the number of tasks which are processing now IO requests.

If NNN equal to TASK# then MFNetDisk tasks are full loaded.

CIOD_ALIASIO= Number of IO devices which uses the ALIAS UCB for CIOD (MFNetDisk PAV).

CIOD_MULTIIO#=

141

IO which are using both the alias UCB and the base UCB.

Page 142: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MRR_WRT is the number of MVS IO which writes data to the real disk. CTK#AL is the number of common resources used for communicate with the requests handler. CTK#US is the number of common resources used for communicate with the requests handler which are currently is use. MFNetDisk uses advance algorithm which never exceeded the 50 percents of the allocated resources. CTK_TIME is the time in seconds passed to process the common resources by the requests handler. In our example, the time passed is 8 seconds. This is also indication for the writes utilization in the MFNetDisk. If the time is 0, that mean that the writes is a very massive writes, for 8, this is moderate write utilization for the mirrored real devices which are mirrored by MFNetDisk. STK#AL is the local memory resources in MFNetDisk which help to clean the utilization of the common resources.

142

Page 143: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PROCESS MODIFY MPC SERVER ACTIVE PC= NORM LIC=ACTIVE DEV#=0034 RQE_ACTIVE=00000 RQE_TOTAL=00256 WAITDVE=00000 WAITIOP=00000 REG_IO = 00000000 FSTIO = 00000000 PND_DEV= 000000 MRR_WRT=455517 PND_IO= 000000 PND_NTSKD= 000000 TASK# = 008 TASK_BSY = 000 CIOD_ALIASIO#= 000000 CIOD_MULTIIO#= 000000 UCBALIAS_DEF#= 000032 UCBALIAS_USE#= 000000 CTK#AL = 010240 CTK#US = 000157 CTK_TIME=00000 STK#AL = 000100 STK#US = 000020

143

Page 144: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

CONF=Q

List all the devices which are really defined in MFNetDisk, the device type, the IP for each device, the PC Device for each device and the number of invalidate tracks requests received by MFNetDisk which are pending to be sent to PC for ReSync.

F MPC, CONF=Q PROCESS MODIFY DEVICE UUUU IP PCDV TRKINV ERR DEVICE 0300 169.254.000.001 0000 SYNCDV 0AA6 169.254.000.001 0031 000000 SYNCDV 0AA7 169.254.000.001 0032 000000 SYNCDV 0A8F 169.254.000.001 0025 000000 SYNCDV 0A90 169.254.000.001 0026 000000

144

Page 145: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

RQE=Q

List the pending IO requests, the type of the IO request, the waiting time and flags for MFNetDisk team. If There is a problem this modify command is the preferred tool to see it.

TYPE=XXX

XXX can be IO, BSY or IOP. IO is normal IO request pending. BSY is a request which is waiting for DEVICE END status.

ADD=AAA AAA is the ID of the IO request.

DEVN =UUUU UUUU is the MVS device number. FLAG=XXXXXXXX

XXXXXXXX for internal use. But in general it shows the flags which describe the IO request status.

WAITSEC=NNN NNN is the seconds which the IO request is waiting to be processed.

NNN for TYPE=IO must be a very low number. This number equal to zero most of the time.

TYPE=BSY can be equal to higher then zero. This can happen for shared DASD which is reserved.

145

Page 146: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

F MPC, RQE=Q PROCESS MODIFY TYPE ADD DEVN FLAG WAITSEC IO 024929A4 0300 504100A0 0000 REQ ENDED OK

146

Page 147: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

QMRR=ALL/UUUU Use this modify command to check all the mirroring status using the replication featuring.

F MPC,QMRR=ALL PROCESS MODIFY DEV UCT DUC MX_CC PCINV_TK -BBM TM_ITK ITK# TM_BM BM# INV_TRKS TM_BM2PC 0A8E 01B92A8C 07B56A88 00001116 00000001 01 00000 000008 00003 000000 000000 00003 0A8F 01B92AB8 07B56B78 00001116 00000002 01 00000 000113 00002 000000 000000 00002

Where: DEV

Device number. UCT

Address of the UCT control block used by MFNetDisk. DUC

Address of the UCT control block used by MFNetDisk. MX_CC

Number of real device cylinders which is mirrored. PCINV_TK

Number of invalid tracks reports by the PC. BBM

Bit map sequence for a device. The number of BBM depends on the size of the real disk. ITK

147

Invalid tracks number report need to be transferred to MFNetDisk MPCLOG bit map file.

Page 148: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

BM

Update of the invalid tracks (ITK) done, to the bit map file (MPCLOG) for device. INV_TRKS

Invalid tracks currently in the bit map file for device. After MFNetDisk sends the bit map to PC, this number set to zero.

TM_BM2PC

148

Number of seconds passed since transfer the bit map for device to PC.

Page 149: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MRROFL=ALL/UUUU and MRRONL=ALL/UUUU Disable the mirroring for real device UUUU or for all mirrors real disk. This only disable mirroring for all the SYNCDEV defined real disks. To enable the mirroring again use the MRRONL=ALL/UUUU modify command. You can disable the mirror also by update the SAMPLIB MPCOPT parameters by comments the SYNCDEV statements and run the modify command CONF=NEW.

149

Page 150: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

DUMP=Y/N This command enable create SVC dump in case of error using the ASync mirroring MFNetDisk feature (SYNCDEV). Use this command if you receive message MPC013E (MPC013E HANDLER SHORTAGE, <MIRROR ERROR>). After receive the dump, send it to me to check the problem.

Update dynamically the MVS MFNetDisk IO configuration

Edit the PARMDD member in SAMPLIB installation file. ADD, DELETE or update the DEVICE, SYNCDEV parameters. Save the PARMDD member. Execute modify command with CONF=NEW.

150

Page 151: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MVS recovery when TCP or PC in error MFNetDisk MVS can handle all kind of PC or TCP error without lose data and integrity of its modes. MVS MFNetDisk reacts according to the mode of its IO definition. The product in PC or MVS side tries to do the best to make the recovery automatically and safe as possible. PC or TCP error is the same for MVS MFNetDisk product recovery process.

The secrets of fast TCP connect feature. MFNetDisk supports features which enable the TCP connections and data transfer to be faster then the normal TCP operations. MFNetDisk creates connection and keep the TCP connection open to avoid new connection for every TCP request. If PC MFNetDisk fined out that the TCP connection is not active for interval time, it will close the idle connection in the PC Server. MVS can find out that the connection with the PC is lost and it will reestablish the TCP connection with the PC and re executes the requested TCP operations pending for the PC. The expected TCP error connection happened only for write TCP operation in MVS when MVS try to send request to the PC. MVS MFNetDisk will send an error message to the MVS console because MFNetDisk can not be sure at this point if it is recoverable error or not.

151

Page 152: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Of course if the TCP recovery failed then it is a really error and MFNetDisk will act appropriately to the error and send to the console the expected error messages. The message for this recoverable error that the users may see from time to time: “MPC033I RECONECT TO PC <WRITE 000032>”. Where 32 Is the TCP RC for the write TCP request (The TCP connection is closed by the peer).

152

Page 153: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

153

Page 154: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Replicator MODE Replicator mode enables MFNetDisk to create mirrors to real 3390 device (EMC, IBM). For PC or net error, MFNetDisk continue to collects the list of the tracks which need to be ReSync and store the list data in MPCLOG file which is allocated in the MFNetDisk JCL. Every few minutes the MFNetDisk will retry automatically to connect to the PC and transfer the list data to the PC. So in general the user does not need to make manual operation to enable the mirrors to continue to be Sync with the real device. Some user prefers to be able to work with the PC immediately after the problem fix. MFNetDisk enable the user to execute modify command which clear the error condition in MFNetDisk and enable reconnect to the PC without delay. The modify command is “F MPC, IP=R”.

154

Page 155: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The logic behind the replication MFNetDisk feature MFNetDisk can create mirrors to any real 3390 device without any overhead or delay to the real disks. To activate this feature you need to add SYNCDEV MVS parameter and to create replicator PC Device and to add a PC file mirror which will contain the data of the real disk. MFNetDisk in MVS uses two components to implement the replication feature: • The IO handler – catches all the IO, analyzes the contents and

decides if to send request to the requests handler. • The requests handler – receives requests from the IO handler,

free the common resources, and sends the requests to PC. The IO handler and the requests handler use common storage (CTK) to operate the replication feature. The common storage is limited resource and the requests handler uses it for very short time and frees the CTK storage for IO Handler to be reused. MFNetDisk uses advance algorithms to make the common resources available in any circumstances even if there is a mass writes operation to all real disks mirrored by MFNetDisk. The requests handler which runs under the MFNetDisk task is the one which receive the CYK, uses it, and free its contents for being reused by the IO Handler quickly. MFNetDisk replication works with local buffers (STK) to eliminate common resources (CTK) shortage.

155

If the MFNetDisk will have a very low dispatching priority, there is a chance to receive a shortage in common memory used for communicated with the MFNetDisk requests handler. The shortage will not happen in case of high dispatching priority. This shortage condition will never block the IO to the real disk. In this case message MPC013E will be sent to the console to notify the operator to take

Page 156: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

action and make sure that MFNetDisk does not have an MVS limitation (Dispatching priority, MPCLOG disk IO delay or any MFNetDisk problems) to process the requests properly. MFNetDisk does not suppose to have any shortage in the CTK, but in rare case if there is a shortage of CTK, MFNetDisk will not delay the real disks. In case of shortage with CTK, MFNetDisk may skip some mirroring action to some tracks until the shortage end. When the shortage ended, MFNetDisk will continue to mirror the real disks to PC but will send a message to the console about the shortage. In my testing, I never received any shortage condition with the current MFNetDisk code. MFNetDisk send message to the console to notify the error. MFNetDisk continues to mirror the real disks when the shortage relieved. In worse case, some of the tracks which were updated during the shortage will not be sync in the mirrors files in PC!

156

Any error in the IO Handler (shortage and other errors) is notified by message MPC013E (MPC013E HANDLER SHORTAGE, <MIRROR ERROR >).

Page 157: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Problem in the replication MFNetDisk IO Handler and the trace If MFNetDisk displays console message, MPC013E, then MFNetDisk find out that there is an error. Error can be an MFNetDisk error, or invalid IO command created by a programs running IO in MVS, or new IO command which MFNetDisk does not supports yet. If this is the case, MFNetDisk need details about the error. The problem is that the IO Handler runs in special mode, this mode require special treatment in case of IO Handler error. In case of error, MFNetDisk keep memory trace which needs to be extract by the user. After console message MPC013E, MFNetDisk keep trace in memory. To help me debug the error, the operator must run the MVS modify command F MPC, PERR=Y. This command sends trace data to the MFNetDisk job log. Please send me the data to debug the error. After this command the memory is release and can be used by MF MFNetDisk. Checking if MFNetDisk find error in the IO chain, run F MPC,RQE=Q. This command lists all pending IO and also the TRC IO pending. This is the memory which kept the trace data for the error. In the example, two pending IO and one TRC are pending for action. The IO request is regular IO for emulation waiting to MFNetDisk service. The TRC is the error trace for replication waiting to F MPC,PERR=Y command to print the trace to the MFNetDisk job log and free the request for MFNetDisk uses. MFNetDisk keep only one at the time, the IO request control block. If you do not print the trace, this IO request block will kept in memory. After using the PERR=Y, the trace is print to MFNetDisk job log and the IO control block is freed.

157

MFNetDisk enable only one error to be traced. After rung the MVS modify command, MFNetDisk can create another trace.

Page 158: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

F MPC013,RQE=Q PROCESS MODIFY TYPE ADD DEVN FLAG WAITSEC UCBBASE-UCBIO TRC 01ECAC4C 0AAB 002000C8 004E 00F55260-00F55260 IO 01ECC440 0300 104100A8 0000 00F4C848-00F4C848 IO 01ECC688 0300 504100A8 0000 00F4C848-00F4C848

Command to verify that the error trace TRC is waiting to be printed and release the memory. F MPC013,PERR=Y PROCESS MODIFY RQE 0000 FF000AAB D9D8C540 002002C0 0246482C 0010 00000000 00F9A580 C7FD0159 02464800 0020 00000000 00000000 01EFDA7C 80C5A67C 0030 01EFDB30 00000F98 00000010 00C5BC28 0040 00000000 01EFEC38 01EFEBC8 01ECAC4C 0050 01ECA638 01EFDA7C 0246482C 00C5B390 0060 00C5A390 80C59390 00000000 00370037 ITK# 0000 00000000 ITK CWT 0000 01EFEC18 00000090 CCWH 0000 00000004 01800AAB 00000000 00007D00 CCWE 0000 1169F420 1169F438 63400010 1169F438 0010 40800001 00010000 00100000 00000010 0020 18E00000 00000000 01F90003 01F90003 CCWE 0000 1169F428 1169F448 47400010 1169F448 0010 40800001 00010000 00100000 00000010

Command to print the trace to the MFNetDisk job log and free the MFNetDisk memory for reuse.

158

Please copy and paste the data and send it to my email.

Page 159: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Understand the replication values; Using the SRV=Q, modify command; the user can understand the replication operation in his site. Here is an example of SRV=Q, modify command and the meaning of the replication related values: • MRR_WRT is the number of MVS IO which writes data to the real

disk which are mirrored by MFNetDisk and issue a write IO. • CTK#AL is the number of high common resources allocated for

communicate with the requests handler. • CTK#US is the number of common resources which are currently

used for communicate with the requests handler. MFNetDisk uses advance algorithm which never exceeded the 50 percents of the allocated resources.

• CTK_TIME is the time in seconds passed since the request

handler process the common resources and frees the CTK to be used by the IO handler. For any writes IO utilization to the real disks which are mirrored by MFNetDisk the range is between 0-8 seconds. If there is no writes IO at all for the mirrored MFNetDisk disks, the CTK_TIME can be any number higher than 8 seconds because the request handler is never activated if there is no pending requests in the CTK. The reason for the 8 seconds is that MFNetDisk in case of very small write IO utilization will activate the requests handler to process the pending IO write request no more than 7 seconds since the last request handler activation.

159

• In our example, the time passed is 8 seconds. This is also indication for the writes utilization in the MFNetDisk. This value is a snapshot, that mean that this value is the time passed from the SRV=Q modify command and the time the MFNetDisk requests handler last ran. If the time is 0 second for many modifies commands samples, this means that the writes is very extremely high writes utilization for

Page 160: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

the real disks mirrored by MFNetDisk. If the time is 8 seconds, this means that the writes utilization for the real disks mirrored by MFNetDisk is extremely low.

• STK#AL is the local memory resources in MFNetDisk which help

to clean the utilization of the common resources quickly.

160

Page 161: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

F MPC012,SRV=Q PROCESS MODIFY MPC SERVER ACTIVE PC= NORM LIC=ACTIVE DEV#=0034 RQE_ACTIVE=00000 RQE_TOTAL=00256 WAITDVE=00000 WAITIOP=00000 REG_IO = 00000000 FSTIO = 00000000 PND_DEV= 000000 MRR_WRT=280926 PND_IO= 000000 PND_NTSKD= 000000 TASK# = 008 TASK_BSY = 000 CIOD_ALIASIO#= 000000 CIOD_MULTIIO#= 000000 UCBALIAS_DEF#= 000032 UCBALIAS_USE#= 000000 CTK#AL = 010240 CTK#US = 000022 CTK_TIME=00008 STK#AL = 000100 STK#US = 000000

161

SRV=Q, modify command.

Page 162: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk dispatching priority must be high If the dispatching priority of the MFNetDisk is low, MFNetDisk can not sustain the emulation and the mirroring it supposes to do. Changing the dispatch priority can be done by running “E MPC, SRVCLASS=SYSSTC”. This is so important, that I decide to demonstrate, what will happen if you give low priority to MFNetDisk.

1. I start few started tasked which issue many writes IO. 2. I quiescent the MPC server by issue the reset MVS system

command (E MPC012, Q). This command simulates the lowest dispatching priority you may assign by mistake to MFNetDisk.

3. The jobs which used the emulated devices start to send messages that the IO can not complete.

4. I issue the F MPC012, SRV=Q command to see the status of MFNetDisk. I did not receive a response. MFNetDisk does not receive control from MVS!

5. I issue the reset MVS system command to return the high dispatching priority to the server; I start to receive responses immediately.

6. Unfortunately, I received message MPC013E HANDLER SHORTAGE, this mean that MFNetDisk could not catch some IO because there was a shortage in common resources. And the resources were used till its limit. MFNetDisk never block the real devices which continue to run without any delay.

162

Page 163: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

163

S CHK4K,V=Z17CAT $HASP100 CHK4K ON STCINRDR IEF695I START CHK4K WITH JOBNAME CHK4K , GROUP SYS1 $HASP373 CHK4K STARTED IEF403I CHK4K - STARTED - TIME=20.24.06 E MPC012,Q IEE304I MPC012 JOB RESET $HASP373 CHKLOC STARTED IEF403I CHKLOC - STARTED - TIME=20.25.57 IEF196I IOS076E 0300,00,*MASTER*, MISSING CHANNEL AND DEVICE END IOS076E 0300,00,*MASTER*, MISSING CHANNEL AND DEVICE END 125 F MPC012,SRV=Q IEF196I IOS071I 0300,00,*MASTER*, CLEAR SUBCHANNEL INTERRUPT MISSING E MPC012,RESUME IEE304I MPC012 JOB RESET MPC044I HALT IO DEV <0300> CODE <FC> PROCESS MODIFY MPC SERVER ACTIVE PC= NORM LIC=ACTIVE DEV#=0034 RQE_ACTIVE=00001 RQE_TOTAL=00256 WAITDVE=00000 WAITIOP=00000 REG_IO = 00000001 FSTIO = 00000000 PND_DEV= 000000 MRR_WRT=624311 PND_IO= 000000 PND_NTSKD= 000000 TASK# = 008 TASK_BSY = 001 DFR=N DFR#=00000 CIOD_ALIASIO#= 000000 CIOD_MULTIIO#= 000000 UCBALIAS_DEF#= 000032 UCBALIAS_USE#= 000000 CTK#AL = 010240 CTK#US = 002105 CTK_TIME=00000 STK#AL = 000100 STK#US = 000076

Page 164: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MPC013E HANDLER SHORTAGE, <MIRROR ERROR > < > +00000026/0000000D/000001F4 MAXBLK/BLKSIZE/KEYL +DCB=0000A79C DEB=008E2D84 MASK=10

164

Page 165: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

165

Page 166: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PC recovery when TCP or MVS in error PC is the main player in MFNetDisk. PC MFNetDisk is a big and complex product which supports many features which only few big companies do. All the recovery processes in PC are handled automatically and safely and the user does not need to be involved in the normal running mode of this product.

Emulator and Replicator MODE In case of MVS or TCP error the PC will convert the mirror status to suspend and will stop to try to access the mirror which failed to access the MVS or other remote PC. When MVS or other remote PC try to access the PC the PC will checks all the NetFile mirrors (Remote hosts MVS or remote PC) and in case that it will found that the mirror is now in suspend status because of TCP error (not a user request to suspend mirror) the PC MFNetDisk automatically will recover the connection and will access the remote sites again.

166

Sometimes the PC accesses the MVS to read tracks to PC for ReSync. If a TCP error happened while the PC is accessing the MVS, The PC will put the mirror in suspend mode and will recover the mirror when the remote host access the PC.

Page 167: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The best script to recover PC after TCP error or shutdown PC or MF Many threads are working hard at any moment in PC. Some are ReSyncing tracks and other write and read data to fulfill many tasks created by the product. When TCP error or other error happen, MFNetDisk put some active mirror in suspend status, this is to eliminate unlimited retries to recover the IO. After fixing the problem the best script to run for PC to activate all the suspended mirrors is MODIFY->SYS->ACTIVATEALLMIRRORSFORALLPCDEV. This script runs automatically after starting the MFNetDisk in PC. But if the connection is still in error, again some of the mirrors may be suspended. Fix the problem and run the script again.

167

Page 168: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

168

Page 169: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Link orphan pc file to MFNetDisk Configuration IF PC File is not connected to MFNetDisk configuration file then it is useless, unless it will be connected to MFNetDisk configuration file and become as a 3390 disk which can be accessed from MF as a 3390 disk. Mirror must have a standard file name DASDXXX.DVV (xxx is the PC Device entry number in the configuration file) to be able to be defined to the configuration file.

Example: Company likes to copy IBM real 3390 device number a80 from NY and transfer it to LA but they do not like to use TCP for the operation because of security reason. The standard 3390 have a local PC File and of course they have MFNetDisk product. The PC Device is 5 and the NY local PC IP is 168.192.100.2 and they have a PC File mirror 1 with the content of the A80. The LA PC IP is 168.192.100.5 and in LA MFNetDisk we find out that PC Device 9 is a free entry in the LA configuration file.

169

The company likes to add the A80 to their 3390 disks and access its data from their MF.

Page 170: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

170

Page 171: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Operation linking storm • Suspend the PC device 5 mirror 1. • Copy c:\nypath\dasd005.dvv and paste to USB key. • Take a flight to remote site in LA. • Go to PC in LA with IP 168.192.100.5 • Paste the file from the USB key disk to the PC hard disk D:\lapath. • Validate that PC Device 9 is empty using DISPLAY->DEV-

>DEVCONF. • Empty PC Device is defined as have no mirrors defined in the PC

Device (all mirrors are offline) and CYL is set to zero. • Rename the mirror file name from dasd005.dvv to dasd009.dvv. • Choose from the PCTOOL option CONFIG->DEV->FORCE-

>LINKEXISTPCFILETOSERVER. • The script is:

CMD=LINKPCFILETOCTLFILE,PATH=,SURE=,LOCAL=Y • The required script is:

CMD=LINKPCFILETOCTLFILE,PATH=D:\LAPATH\,SURE=Y,LOCAL=Y

• Verify that the PCTOOL PCDEV set to 9. • Run the script. • Choose MODIFY->DEV->VARYONLINE and run the script. • Check that the PC Device is OK using DISPLAY->DEV-

>DEVCONF. The mirror status for the new mirror is SYNC.

171

Page 172: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• To access the new 3390 device from MVS, define to MVS MFNetDisk the new device using the following example list.

172

DEVICE MVSDVNUM=0300, PCDEV=9, PCIP=168.192.100.5, RANGE=1

Page 173: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Figure 17: Sample script to link orphan mirror to empty PC Dev.

173

Page 174: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Add PC Device or mirror and init the PC File Adding PC File, required initialization of the PC File, this can take long time and can take a lot of PC resources. This can make a problem to the IO performance of the regular activity or even when PC serves MF CCW. MFNetDisk limits the thread numbers which can be active initialize the disk to one. The reason is that init multiple disks is not effective and cause the HD to mechanically work very hard and spread ineffective all over the HD. Running 10 threads in parallel can really exhaust the PC resources. Initialization is a process of write control data all over the pc file space. So, MFNetDisk control the number of thread which doing so to one. In release 12, all the init disks method was changed. From now on, MFNetDisk will run only one init at a time. Even if you add many mirrors or many new virtual 3390 disk, MFNetDisk will run only one init at a time. All the other requests to init 3390 virtual disk will be queued and will be restarted, one after another, automatically, after the active init will end its initialization. The one thread which finishes the init 3390 disk will restart pending init request automatically and this will happen only if the init thread ended ok and without any error. If the active init failed or suspended by the users or by IO error, no pending init will be restarted until the user will activate the suspended mirror and its thread. Be aware that activate a suspended mirror will rerun the thread which was active at the time of the suspended.

174

Page 175: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

If you have active init mirror, MFNetDisk will restart the thread of init, only for the active init mirror, the thread which are waiting will not be restarted if there is an active init mirror pending. If you want to cancel pending init or waiting init requests, the only way to do it is to use the SUSPEND mirror script (MODIFY->MIRROR->SUSPEND) and then to VARYOFF the mirror! (MODIFY->MIRROR->FORCE->VARYMIRROROFFLINE). Activate mirror with active init or pending init mirror status will verify that if no active init mirror ran, it will restart a new request to init. If you want to restart pending request to init and there is active request which is now suspended or active, the pending will not run and wait for the active request to end. That is because MFNetDisk will run first the active init even if it is in suspending status. So, if you have pending init and active init in suspend, first activate the active mirror. In this case if you want to run pending init request before the suspending active init, you must delete the active request by VARY the mirror offline. Beware that MFNetDisk calculate the free space of HD by checking the real free space and also consider the space required by init request mirror. Meaning that if current free space is 2 GB, and one thread is active and require 1GB, and currently the thread init 40% of the mirror, then current free space will be (2GB-0.6GB=1.4GB. If another thread is pending init and required for the init 1GB then the free space calculate for new mirror will be 1.4GB-1GB=0.4GB. The reason is that MFNetDisk calculate the free space and the required space by pending and active mirror init threads.

175

Page 176: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

So, if your request for new mirror declined because of free space, and you see that you have enough free space in the disk, check the pending init thread, the way to really check free space is using the script DISPLAY->SYS->FREESPACE. This script will display the free space after all the pending init threads which will finish the initialization. The init in parallel can last for hours or more. MFNetDisk in version 12 supports restarting and suspending of the init processes. The restart is done automatically. When MFNetDisk PC is shutdown, MFNetDisk keeps a checkpoint data which help it to restart the init from the point of the shutdown. MFNetDisk automatically will restart the init from the point of the failure. If the init ended with IO error, there will be no restart, MFNetDisk will abort the initialization of the mirrors, and let the users take an action according to the error type. In version 12, MFNetDisk enable the user also, to suspend the initialization of disks and let him decide when to resume it. This enables to suspend the init when the PC needs its resources and to resume the init when the PC is not too much busy. To suspend the init, just run the suspend script, this is done by select MODIFY->MIRROR->SUSPEND script. This script will suspend the activity of the initialize mirror, and the mirror will have a status, suspend. When the user decides to resume the initialization, what the user needs to do is run the script, activate. This script will restart the init from the point the init suspended.

176

This is a very important feature, before version 12, any shutdown of the PC Server or canceling the init process

Page 177: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

require to run the script of adding the mirror from the start point, meaning cylinder 0. Some users inform me that they take the PC Server down and up to cancel all the thread mirroring initialization processes quickly. In version 12, MFNetDisk is run much better for initialize multi PC devices concurrently. Be aware the running one init at a time verified that the previous one ended OK. MFNetDisk recommendation is to initialize all the PC files disks before you make MFNetDisk in production and active with MF MFNetDisk. Any initialization will slow down the HD and make the production works which work with the HD less better.

177

Page 178: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Change manually status of mirror in PC device MFNetDisk automatically changes the status of mirrors to keep the mirror and the PC Server safe and with data integrity. When MFNetDisk find problem with a mirror it will change the mirror status to suspend and if the error condition clean it will return the mirror to its previous status. MFNetDisk will not allow any violation of its law which can cause damage to the product or to its software. The PCTOOL enable the user to do everything if they follow the rule. Some menu items in the PCTOOL have item with FORCE, This need to make the user more aware that he is going to play with a danger script. In general the MFNetDisk enables the use to do almost everything with the PC Device if the PC Device status is OFFLINE. So please verify that the PC Device is not in OFFLINE status before you play with the MFNetDisk configuration.

Change mirror status to suspend MFNetDisk can change Mirror status type SYNC/RESYNC/READONLY/ASYNCSOURCE to SUSPEND. Suspend mirror status is a recoverable status when activate the mirror using the PCTOOL.

178

Page 179: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

If the mirror is the only available mirror which can access the mirror data and the PC Device is online MFNetDisk will not allowed the operation unless the user will modify the PC Device to OFFLINE. A mirror with suspend mirror status can not be accessed and it is close for normal processing. All its tracks map are kept and in case of write operation to the PC device the track status will be changed to INVALID and the MFNetDisk will resync the mirror track. Suspended mirror when is activated will start the ReSync process and will become Sync again. To suspend mirror use MODIFY->MIRROR->SUSPEND.

Change mirror status to offline Offline mirror status is unrecoverable status. The only way to recover an offline mirror is to use the LINKPCDEVTOSERVER script. MFNetDisk will verify that the mirror which is going to be change to OFFLINE is suspended. All the tracks maps which is kept for suspend mirror will be deleted. To vary offline mirror use MODIFY->MIRROR->FORCE->VARYMIRROROFFLINE.

Delete PC File from PC hard disk Delete PC File mirror is really unrecoverable operation. The data is lost forever (unless you use some tools in PC which try to recover PC files which were deleted, but do not take for sure that this recovery will be ended OK) and nothing can be done to change the situation.

179

Page 180: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk will verify that the mirror which is going to be deleted is OFFLINE. To Delete PC File use CONFIG->MIRROR->DELMIRROR or delete it with the PC tool using the full path of the mirror to be deleted.

Activate mirror in suspend mirror status Any mirror can be activated only if its mirror status is suspended. Activation will resync the mirrors which require resync operation immediately after activation. MFNetDisk will restore its former mirror status using SUSPENDTYPE field which can be seemed using DISPLAY->DEV->DEVCONF. This field is important only for suspended mirror. For suspended mirror which was in SYNC mirror status the DEVCONF will display SUSPENDTYPE=DEVLOCSUSSYNC.

The happiness to force fast delete and the agony of mistakes In case of definition error MFNetDisk can give you hard works to delete the PC device and all its mirrors. If you sure that you know what you are doing try the CONFIG>DEV>FORCE>FORCEDELPCDEVANDALLMIRRORS. This will delete all what is connected to the PC device and all its mirrors without considering the status of the PC device ant its mirrors. But I do not recommend you to run this script in production! This can be more danger if you add the RANGE script parameter. If for example you select to run this script for PC dev number 0, and you receive script CMD=FORCEDELPCDEVANDALLMIRRORS, SURE=Y, RANGE=6. And you run the script all PC device and the mirrors of PC device zero to five will be lost forever.

180

Page 181: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Delete pc device and all its content!

181

Page 182: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MF emulation and MFNetDisk I want to thank the user from Spain who motivates me to write about this subject. MFNetDisk uses MF emulation (ZPDT) the same as it use real MF. So, MFNetDisk enables user to share emulated tapes and disks among many real MF and many emulated MF. For tapes emulation just adds virtual tapes and you can share the MFNetDisk tapes for all type of MF. For disks we must talk about replication and emulation 3390 disks. For emulation the story is simple as for tapes. Just define virtual 3390 to MFNetDisk and you can share the virtual disks among real MF and emulated MF. Using the emulation the performance is OK but is not as FICON performance. MFNetDisk with its stacks CCW feature improved the performance dramatically but still it is almost FICON but is not the same. About replication, MFNetDisk enable replication of real disks to MFNetDisk pc files mirrors. Replication does not cause delay to the MF real disks nor degradation in the performance of the MF itself and its real disks. CPU overhead is almost zero. If a few of your MF real disks crashes you can use the mirror as 3390 disks using MFNetDisk to emulate its mirror as it was real disks. If all your MF system crashed, using MFNetDisk to emulate all your MF disks is limited because MFNetDisk can not IPL emulated 3390 disks pc devices by itself.

182

Page 183: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

In this case the best can be to run MF emulation (ZPDT) to take control on MFNetDisk disks which the pc file type AWS is fully supported by the emulated MF software. In his case the performance is great using the PC IO performance. Also the MF emulated can IPL the AWS pc file created by MFNetDisk as it was MF emulated disks. So, here is what needs to be done for enabling this case. Example: Your real MF uses 256 (any numbers is OK) real disks. SYSTEM IPL able disks are also included. The MF device numbers are A00-AFF. Your MF emulator is IBM ZPDT. • Add 256 MFNetDisk replication pc devices. • These pc devices enabling async mirroring of your real disks

without degradation in your MF performance. • This replication pc device will contain as source disks, the IP of the

real MF and the device number of real 3390 disk in your real MF. • MFNetDisk will collect updates to the real disk and take care of

sync all these tracks to its defined target mirrors. • Add mirror pc file type AWS as target mirror which will contain the

exact data as the real 3390 disk. • MFNetDisk supports AWS, compression pc file and MPC file. • AWS format is supported pc files by all emulated MF. • Add these mirrors to all your replication pc devices which mirrors

yours real 3390 to MFNetDisk pc file type AWS. • This enables ZPDT to support these pc files as attached emulated

3390 disks. • MF emulation can not work with real 3390 disk but use very well

emulated 3390 AWS disks which support by MFNetDisk and by many emulated MF.

183

• This MFNetDisk configuration will be called NORMAL configuration because this configuration will be active all the times when MF and its real disks operate fine.

Page 184: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• Create another copy of MFNetDisk which will be active in case of DR condition. This new configuration will be called DR configuration.

• The DR configuration will be active when emulated MF is active after disaster when the real MF stopped to function.

• This DR configuration will keep all the tracks which were updated in the emulated MF in the time of the DR.

• When the real MF become active OK, we can use the DR configuration to sync all tracks from the AWS disks to the real disks in case that the 3390 are operational and contained the sync data until the point of the disaster.

• The DR configuration will contained the AWS as source disk and the real disk as target mirror.

• In DR configuration for each write to the AWS disks, MFNetDisk will maintain tracks map of all the tracks need to be sync for the real disk, when the real disk become active.

• This DR MFNetDisk copy will use the AWS in the ZPDT as source 3390 disk and the real 3390 as target mirror for the source disk.

• The DR and NORMAL configuration will use the replication pc device MFNetDisk feature keep the best performance to the ZPDT and for the real MF without and performance degradation using the MFNetDisk.

• If you like to create sync point, validate that all tracks of the mirrors are sync with the real disks.

• Defined the AWS pc files as locally attached files to ZPDT. Do not forget to add the system disks which will be used to IPL the ZPDT with your real MF OS disks.

• So, to summarize, you run your NORMAL configuration with MFNetDisk replication always when your MF is OK.

• If your site real MF stopped to function and you like to use the emulated MF to work in no time with all the real MF data, some actions are required.

• Check that your ZPDT contained the entire AWS pc files defined in it.

184

• Verify that your DR configuration defined as replication pc devices with the source 3390 is the AWS pc file and the target mirror is the real disk which is defined with the IP of the MF and the MVS device number in your real MF.

Page 185: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• Start the ZPDT. IPL your AWS pc file which contained the replicated pc file of your system disk (example ZXXRES).

• Start MFNetDisk with DR configuration to trace all your updates to the AWS disks while the ZPDT is operational and the real MF is dead.

• If the real MF becomes active, you can activate your real MF pc files mirrors and MFNetDisk will start to copy all the tracks, and only the tracks which were updated.

• You can continue to work with ZPD until your real 3390 are sync with the AWS disks.

185

• When you like you can return to normal operation in real MF, and just validate that MF configuration change to NORMAL configuration to be ready for another DR condition.

Page 186: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Security, TCP and hard disk Hard disks are not reliable! That is not true. Today the entire disks controller uses hard disks in their machines. Of course nobody can promise you that hard disk will live forever and that is the reason why MFNetDisk enables you to use mirrors even for real IBM or EMC disks. MFNetDisk supports any hard disks which are connected to your PC. TCP is an open net and it is not secure and MF users will not be allowed to use it. MFNetDisk product is not an internet site. When you create internet sites you need that everyone in the world will access your site and use your pages. MFNetDisk uses TCP like the banks use TCP and like the CIA use TCP and like IBM uses TCP and like every respected company use TCP. MFNetDisk can protect its data by using the new coming soon feature which contain the OK IP lists which are allowed to access the MFNetDisk PC Server. MFNetDisk will block any IP which are not in the OK IP lists. What if user likes to allow accessing to PC Device and not for the entire PC Devices? That is good question. I like to know your opinion if the secured IP lists need to support accessing to MFNetDisk PC device as well.

186

Page 187: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Example to IP OK lists that MFNetDisk will support in XML format: <IPOK> 192.168.100.1 192.168.100.2 192.168.100.3

187

</IPOK>

Page 188: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Trace the errors MFNetDisk is a new product and a very complex product. We create software with a lot of the features which big companies (EMC, IBM) have in hardware and in software! We know that we have errors in our product. To debug the bugs we create traces to help us debug the bugs.

Trace your script activity • Start the PCTOOL. • Set on in the PCTOOL the TRACESCR button. • Specify the file name which will be the trace file. • Run scripts which you like to trace. • Set off the TRACESCR button to close the trace file. • Send the trace to me or enjoy the trace for yourself or trace

operations with PCTOOL and the product.

Trace MFNetDisk MVS activity using MFNetDisk • Start MFNetDisk in MVS. • Send modify command with parameters TRC=Y. • The modify command from the console is F MPC, TRC=Y. • Try to crate the error in MVS. • Stop the trace by run modify command with parameters TRC=N.

188

• The trace file can be a huge file! (Watch your spool).

Page 189: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Trace MFNetDisk MVS CCW to MVS console using MFNetDisk • Start MFNetDisk in MVS. • Send modify command with parameters CONTRC=Y. • Be aware that the data is sent to the MVS console. • Use this trace command if the IO activity to trace is small (use

GTF for big IO activity). • To turn off the trace use CONTRC=N.

Check problems or what. • Script which display problematic threads, their position and a

trace.

189

• This trace is always active, to display the trace use DISPLAY->SYS->TASKPROBLEMS.

Page 190: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

IO GTF trace in MVS One of the great features of MFNetDisk is the ability to create GTF IO trace of a virtual MFNetDisk emulated devices! In MVS SAMPLIB file member MPCGTF I put a sample of GTF parameters need to trace the MFNetDisk devices.

• Start GTF with parameter file point to the example shown down this mail.

• Reply U in the console. • Recreate the error. • Use IPCS to format the trace record (in TSO mode choose 2.7.2

option to trace the CCW trace) or send the trace file create by GTF trace to me for debugging.

• Send the trace file to my email.

TRACE=IOP,CCWP,PCI,SSCH,HSCH,IO,MSCH,SSCHP CCW=(SI,CCWN=100,DATA=100,IOSB) IO=SSCH=(300-301),END

190

Sample of GTF parameters to trace CCWS (300-301 are the virtual MFNetDisk devices to trace).

Page 191: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Trace MFNetDisk PC Server.

If MFNetDisk PC Server have a problem, if PC Server crash, if you think that PC Server must be shutdown because of error, if you want to find out if any error occurred in PC Server, just look at the GLOBALTRACE which is automatically start and created the moment you start PC Server. MFNetDisk PC Server also creates trace automatically for CCW ERRORS and IODEVNET ERROR (trace IO error using the NET IO). Other traces can be create using the PCTOOL modify script commands.

View IO CCW errors. • Trace the PCTOOL scripts. • Choose DISPLAY->DEV->IOCCWERRORS. • Send the trace output file to my email. • These automatic errors are erased when the PC Server

terminates. • Send the trace file to my email for debugging. View NET IO errors. • Trace the PCTOOL scripts. • Choose DISPLAY->SYS->IODEVNETERRORS • Send the trace output file to my email. • These automatic errors are erased when the PC Server

terminates. • Send the trace file to my email for debugging. Create trace file for PC Server for selected PC Devices.

191

Page 192: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• Start the PCTOOL (no need to trace the PCTOOL script activities). • Choose MODIFY->DEV->TRCON. • A trace file will be created in the same directory of PC Server

application with file name TRACEFILEXX.TXT where XX is the PC Device number.

• To close the trace choose MODIFY->DEV->TRCOFF. • Send the trace file to my email for debugging. Create a trace file for PC Server for all PC Devices and PC Server activities (Global trace). • MFNetDisk starts automatically this trace for critical errors. • Ten generation of this trace are kept by MFNetDisk in PC. • Each trace file represents one from start of the PC Server till the

shutdown. • You can set the global trace to trace all the activities in

MFNetDisk, this require a big space in MFNetDisk PC Server directory.

• To set the tracing to TRACE ALL use the following steps. • Start the PCTOOL (no need to trace the PCTOOL script activities). • Choose MODIFY->SYS->TRCONALL. • A trace file will be created in the same directory of PC Server

application with file name GLOBALTRACE.TXT. • To close the trace choose MODIFY->SYS->TRCOFFALL. • Send the trace file to my email for debugging. • Store the PC Server output messages to file. • Start the PCTOOL (no need to trace the PCTOOL script activities). • Choose MODIFY->SYS->CONSOLETOFILE. • PC Server creates file “CONSOLE.TXT” and all its messages go to

this file. • To restore to the standard output messages to screen choose

MODIFY->SYS->CONSOLESTANDARD. • Using this option can create big file of the CONSOLE.TXT in the

PC Server directory.

192

Page 193: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk disk sharing Feature which enable MFNetDisk to handle Reserve, Release CCW and Extents disk violation (PAV) in a better and faster way, The MVS way. MFNetDisk BusyIO is taking care for disk sharing among many hosts. In release 12, MFNetDisk changes the way IO is done, this include also the BusyIO processing which is handle without any IO messages compare to what was done in the previous release. The task in MVS which send the CCW request will never be blocked if the PC MFNetDisk cannot run the CCW due to the busy condition. If the Device is reserved to another Host then The MFNetDisk PC will send to MVS Device Busy status and the MVS task will be free immediately to run other IO requests without any delay. When the busy condition will be cleared (Example, Release CCW free the disk or if the IO which cause the Extents violation will end) The PC MFNetDisk will send Device End status back to MVS to indicate that the busy condition is cleared and the IO request can be start again. MFNetDisk supports by default 50 hosts for each one device. This number can be changed to any number by compile the PC MFNetDisk with any new number.

193

Page 194: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Example: Sharing MFNetDisk 3390 disk. Figure 18 demonstrates what MFNetDisk doing in case of RESERVE RELEASE CCW condition. I start job CHK4K from system SYSA, at 17:37:23, this job run massive IO. I select device 300, with VOLSER MPC000. This device is MFNetDisk emulates 3390 disk. The job run smoothly until 17:37:38, this time I run from system SYSB, the CCW RESERVE. MFNetDisk receives notification from the MFNetDisk PC, that there is RESERVE condition; No IO can not run from SYSA which try to access this device until the PC will receive RELEASE CCW command from SYSB. The message which MVS MFNetDisk displays when it can not access the disk is <MPC999I DEVICE BUSY CODITION FROM PC>. MFNetDisk MVS will suspend the IO and continue to run the other pending IO requests which are not accessing the device. At 17:38:10, I run console command (<DS P, 300, 1>) to check the device accessibility. This command issue IO to the PC. This command queue and could not run because the device is busy.

194

At 17:38:55, I run the RELEASE CCW from SYSB, the MFNetDisk in PC send immediately notification to SYSA that it can rerun the CCW again. SYSA displays message <MPC999I DEVEND CONDITION ACCEPTED> and message <MPC999I REQUEST DEVEND=0300> and message <MPC999I DEVBUSY CONDITION CLEARED>.

Page 195: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The elapse time between the RESERVE and the RELEASE CCW in this example is 17:38:55 minus 17:37:38=77 seconds. At this time the CHK4K and the console command resume the IO operations and continue to run automatically and immidiatly. 17:37:23.64 S CHK4K,V=MPC000 17:37:23.93 $HASP100 CHK4K ON STCINRDR 17:37:24.22 IEF695I START CHK4K WITH JOBNAME CHK4K , GROUP SYS1 17:37:24.23 $HASP373 CHK4K STARTED 17:37:24.24 IEF403I CHK4K - STARTED - TIME=17.37.24 17:37:24.64 +DCB=00007F48 DEB=008E2D84 MASK=.. 17:37:24.64 +STRCCHH 0000000C ENDCCHH 0000000C BADFMT 17:37:24.67 +END INIT 17:37:38.35 MPC999I DEVICE BUSY CODITION FROM PC 17:38:10.22 DS P,300,1 17:38:55.95 MPC999I DEVEND CONDITION ACCEPTED 17:38:55.97 MPC999I REQUEST DEVEND=0300 17:38:55.99 MPC999I DEVBUSY CONDITION CLEARED 17:38:56.36 IEE459I 17.38.10 DEVSERV PATHS 221 17:38:55.99 MPC999I DEVBUSY CONDITION CLEARED 17:38:56.36 IEE459I 17.38.10 DEVSERV PATHS 221 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS RTYPE SSID CFW TC DFW PIN DC-STATE 0300,33909 ,A,002,MPC000,00=+ 07=+ 0000 0000 ************************ SYMBOL DEFINITIONS ** A = ALLOCATED + = PATH AV 17:38:58.55 MPC033I RECONECT TO PC ,<WRITE ,000032>

195

Page 196: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

196

Figure 18 MVS Console messages traffics using the new BusyIO feature.

Page 197: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Backup in the night Before you start the process of taking backup for all your real disks using the MFNetDisk snapshot backup, you must verify that the pc file mirrors for the real disk are in sync point. Meaning that the real 3390 disk are not making updates to the disks for short time while the PC resync all its invalid tracks need to be sync to a point of SYNC. MFNetDisk supports two new modify commands which enable you to decide the timing to start the backup and validate that the backup will be to sync point in time when all the pc mirrors for the real disk contain all the data needed for backup and restore process. The commands are PCINV=ALL, and QINV=ALL. PCINV=ALL will send scripts from MF to all PC to check if there is invalid tracks in PC for the real disk. QINV=ALL displays if there is pending sending of tracks lists needed to be send to PC to be in sync point for backup. All the numbers and field must be equal to zero to be in point of sync which is the time where snapshot backup can run and ensure full data integrity for dump and restore as well. When this time come, disable the sending tracks data from MF to PC using the NOPC=Y command and then in your time run the snapshot backup to all your pc devices replication which replicate all your real disks to pc mirrors in pc devices. After taking the snapshot dump you can enable writes to all your real 3390 disks using NOPC=N. Please read about how to take snapshot dumps for your all emulators (MFNetDisk 3390 emulation) and replicators (mirror your real disks to pc files using replicator pc device) pc devices in one second. For MFNetDisk emulated 3390, no need to validate sync time. Run snapshot backup when you like to do so.

197

F MPC013,PCINV=ALL PROCESS MODIFY ACCESS 169.254.000.001 Local pcip:169.254.0.1

Page 198: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PCDev(x)=80, Real Device=192.168.100.2:0aab Mirror 1 status DeviceIsSync Trks_no_Sync 12 Mirror 2 status DeviceIsSync Trks_no_Sync 12 PCDev(x)=82, Real Device=192.168.100.2:0a8e Mirror 1 status DeviceIsSync Trks_no_Sync 1 Total invalidated tracks for sync mirrors 25

F MPC013,QINV=ALL PROCESS MODIFY CUU VOLSER INVBMFILE INVBUFF 0AAB Z10CAT 000000 000009 0AA9 Z10RES 000000 000000 0A8E SHAR02 000000 000248 INVTRKS-CTK=001364

SYNCDEV Replicator mode enables the users to work with MF without any degradation in the performance and without delays the IO to the real 3390 disks. But sometime users do not like to use the TCP/IP and the MF during the MF busy time for backup purpose. OK, if this is the situation, MFNetDisk keeps a bitmap of all the tracks which have been changed and needs to be ReSync from the time the communication with the PC was disabled. To disable connection to the PC, the users must notify the MVS MFNetDisk not to communicate with the PC. This is done by using the modify command “F MPC, SYNCDV=NOPC”. In the new version of MFNetDisk the modify command F MPC,NOPC=Y is the same as SYNCDV=NOPC and F MPC,NOPC=N is the same as F MPC,SYNCDV=NORM. NOPC=Y, MFNetDisk in MVS will not send any tracks changes to PC but keep the tracks list in the MFNetDisk MPCLOG file. NOPC=N, MFNetDisk will send the tracks list all the time. So, when the users decide to run the backup at night when the IO activities is low, he can activate the communication with the PC at anytime using the modify command “F MPC, SYNCDV=NORM”. This operation will start the ReSync processing from PC to MF immediately.

198

Page 199: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

When the TCP communication between the MVS and PC is activated, The MVS MFNetDisk will send immediately in one TCP request per disk the bitmap of the invalid tracks to MFNetDisk PC and the PC will start immediately the ReSync processing. When the PC mirror is Sync with the real 3390 the user can suspend the PC mirror and start immediately to work with the real 3390 because MFNetDisk have a mirror, PC file with the image of the real 3390 at the time of the suspend. Now you can run the MFNetDisk backup routine. But the users must be aware that if MVS formats all the real disks or make a massive writes to all the cylinders of the disks then this option is not going to work as expected. If this is the case the ReSync probably can last more time then running a regular dump from MF. To check the number of tracks which need to be ReSync, activate the communication with the PC and let the MVS MFNetDisk to send the bitmap to MFNetDisk PC. To verify that MVS send the bitmap to PC run the modify command with CONF=Q which will display the number of invalidate tracks which are pending in MVS to be sent to PC. This number are not the really tracks number but number of invalidate request which received by the MFNetDisk. So if 100 times a invalidate requests have been send to MFNetDisk for the VTOC CC HH address then the PC will only ReSync the CC HH one time. If this value is zero then MVS already sent the bitmap to the PC. Immediately when the transfer to PC completed, the PC can display the number of tracks which need to be ReSync. This number can be displayed by using DISPLAY->DEV->DEVCONF script command. So, for example if we have a disk with about 500 cylinders which are updated in average every days for an average real 3390 then the “backup in the night” operation can be a great candidate to backup the real 3390 disk using its mirror in the PC as a source disk for MFNetDisk incremental track level backup. Do not forget, MFNetDisk will not invalidate all the tracks of a MVS file if it is updated, but only the tracks which are really updated. As far as I know, in MVS there is no BACKUP utility which can incrementally dump real 3390 disk in a track level. DFDSS backup is not a fact in life which nobody can change! Yes, MFNetDisk is the “stranger in the night” but it can be also a backup in the night.

199

Page 200: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Replace real 3390 with a new real 3390 without downtime Replace real 3390 with new real 3390 without downtime is an easy task for MFNetDisk. MFNetDisk does not require that the target disk will have physical connection with the source disk. If you have TCP you can replace the disks without any downtime and without any performance degradation.

Example Our site, MVS IP 192.168.100.3 wants to replace real device 300 with real device 700. They decide to try to use MFNetDisk software before paying a lot of money to hardware companies. Because MFNetDisk requires a PC they decide to use Windows XP PC in IP 192.168.1.1. To implement our task we decide to use 3 mirrors in the PC Device 0, one mirror is the source mirror which is device number 300. The second mirror is a PC File (who care about PC File which cost almost nothing compared to real 3390 disk) which we want to keep as a backup mirror. The third mirror is the final target device 700. We know that we can do the same task by using only 2 mirrors in the PC device, one is the source mirror (device 300) and the second one is the target mirror (MVS device 700).

200

Page 201: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MVS side • Install MFNetDisk in MVS. • Specify the following statements in MFNetDisk MVS

parameters file.

• Run the MFNetDisk MVS server. • Verify that MFNetDisk parameters are OK by using modify

command “F MPC, CONF=Q”. • MVS side task completed. PC side • Run the PC Server by double clicks the PC Server

program. • Run PCTOOL in local to the PC Server and verify that the

SERVERIP TEXTBOX point to 127.0.0.1. • Verify that the PCDEV TEXTBOX point to PC Device 0

(The same value as PCDEV=0 in MFNetDisk file parameters).

• Choose CONFIG->DEV->ADDNEWREPLICATORDEV. • The default script may be:

“CMD=ADDNEWREPLICATORDEV, SSID=00, IP=, NETDEV=0000”.

• The IP parameter is the source MVS IP where the source disk exists (192.168.100.3). The NETDEV parameter is the

201

SYNCDEV MVSDVNUM=0300, //SOURCE DISK PCDEV=0, //PC DEVICE NUMBER PCIP=192.168.192.1.1 //IP OF THE PC

Page 202: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

source disk as it is defined in MVS MFNetDisk options parameters file (0300).

• Change the script to: “CMD=ADDNEWREPLICATORDEV, SSID=00, IP=192.168.100.3, NETDEV=0300” and press DOSCRIPT button. Now we have the source disk 300 defined to our PC Device 0.

• Choose DISPLAY->DEV->DEVCONF to verify if the PC Device is OK.

• Now we like to add PC File mirror for backup. • Verify that IFNETDEV radio button is set off. • Choose CONFIG->DEV->ADDMIRROR. • The default script may be:

“CMD=ADDMIRROR,IFNETDEV=N,PATH=,LOCAL=Y” • Assume that you like your PC File location to be in path

C:\MFDISK\ (it is up to you to use any path you like). Update the script to “CMD=ADDMIRROR, IFNETDEV=N, PATH=C:\MFDISK\, LOCAL=Y” and press DOSCRIPT button.

• Adding PC File will start a thread which will initialize the PC File. This can last few minutes depend on the size of the 3390 disk.

• To verify the progress of the thread use DISPLAY->DEV->DEVCONF menu item.

• Adding mirror to exited PC Device will start a ReSync process which will copy all the tracks of the source mirror to the new mirror (target mirror). In our case the input tracks is device 300 and the output device is the PC File.

• Now we need to define the third mirror which is the device 700.

• Verify that IFNETDEV radio button is set on.

202

• Choose CONFIG->DEV->ADDMIRROR.

Page 203: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• The default script may be: “CMD=ADDMIRROR, IFNETDEV=Y, IP=, NETDEV=0000, LOCAL=Y”. Update the script to: “CMD=ADDMIRROR, IFNETDEV=Y, IP=192.168.100.3, NETDEV=0700, LOCAL=Y” and press DOSCRIPT button.

• To check if the copying is completed choose DISPLAY->DEV->DEVCONF menu item and press DOSCRIPT button.

• The copying is completed if the TRKSVALID field specifies that the target mirror have 0(hex) INVALIDTRK (see figure 19 highlight field).

• The task is completed. You can vary offline device 300 and vary online device 700.

DEVICE 000 ONLINE ,DEVICEALLTRK=OK, EMULATOR DEV SSID 0000 CYL C8 (HEX), 200 (DEC) NUMBER OF ACTIVE MIRRORS FOR PC DEVICE IS 1 ++POS = 0 PATH=C:\MPCDASD\ STATUS=DEVICEEXIST TYPE=LOCAL MIRROR=DEVICEISSYNC USERREQ=NOREQ FILESTAT=FILE IS OPEN ERRORTYPE=DEVLOCERRIO DEVICETTYPE=PCFILE TRKSVALID=MIRROR 0 HAVE 0(HEX) INVALIDTRK FROM BE5(HEX) TOTAL ALLOCATED TRKS

203

Page 204: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

204

Figure 19 Mirror with zero invalid tracks using DISPLAY->DEV->DEVCONF script.

Page 205: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MF is not perfect, PC is not perfect and neither MFNetDisk

MFNetDisk has some tools which can help you to understand the MFNetDisk operation. The tools in MVS are Console MVS modify commands like IP=Q, SRV=Q, CONF=Q, IP=R, RQE=Q, QMRR=, QDEV= and more. MVS need to be checked first. If there is problems with IO request which can be seem by IOS message, first look in MVS console to find out what MFNetDisk MVS can tell us about the error. Even PC knows that in case of a problem it must notifies MVS about any problem. PC knows that operators can check MFNetDisk better from MVS console than from PC window.

205

Page 206: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Display the status of PC Device in PC. DISPLAY->DEV->DEVCONF command enables to display PC Device status (PC Device is link to MVS Device) and all the PC Device mirrors status. Use this script to find out the status of the device and its mirrors (initialize disk, ReSync etc…). Use this command to find out what going on with a PC device mirrors and more. DISPLAY->SYS->ALLCONF command enables to display all the PC Devices status and mirrors in the PC which are active and has active mirrors.

206

Page 207: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

207

Page 208: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

208

Page 209: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Data check I/O error in MFNetDisk mirror. CRC enables MFNetDisk to check if the data are valid when it needs to be read. This can happen only if part of data was written to the track. The CRC is computed by mathematical formula which uses all the track data as input. When the track is read, MFNetDisk check if the CRC data in the track is what is needed to be. If MFNetDisk fails to verify the CRC in a track, it creates a data check I/O error. In this case the track is not available to the user. MFNetDisk enables a process to try to recover the data in the track in case of CRC error by fixing the CRC and without changing the data in the track. To activate the script run MODIFY->MIRROR->FORCE->FIXMIRRORCRC. This script only updates the CRC without changing the track data! In this case there is a chance that some of the data is garbage. The CRC error rarely can happen in MFNetDisk, but if it is happens, this script can be a life saver. Try to think about data check in VTOC, this can be a real disaster. This script can save the whole disk if the data check error is in critical location in the disk. There is no good alternative to this script except to init the track again and by that to lose the data or to restore the data from backup which run in the past if the is a backup (good option if not massive update done to the file which use the track as part of its data). Be aware that in case of additional MFNetDisk mirror, the data will be recovered fast and easy. In this case there will be no message of I/O error; the recovery process will recover the track automatically by MFNetDisk by using “good” track from one of the other mirrors.

209

The script can recover only tracks in PC File mirror (MFNetDisk can not fix data check in real IBM 3390 disk for now!).

Page 210: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The recovered data must be checked before using it!

210

Script to recover data checks I/O error in MFNetDisk mirror.

Page 211: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

211

Page 212: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Enable Shark emulation MFNetDisk 3390 emulation supports Shark (2105) CCWS. The user can control if MFNetDisk is Shark emulation disk or not. To set the emulation to support Shark, please use script “MODIFY->DEV->SHARK->ON. To set the emulation not to support Shark emulation, please use script “MODIFY->DEV->SHARK->OFF. The default when the PC SERVER starts is SHARK->OFF. To activate the Shark emulation really by MVS, vary the MVS emulated device to offline and then online To verify if SHARK emulation is active use PCTool script “DISPLAY->DEV->CCWDONE. This script will display the CCW executes for the PC device. Search for CCW x’95’, x’a5’ and x’a6’ if you see this CCW, congratulation, you run 2105 emulation in PC. There are some advantages to use SHARK emulation. The big advantage is that SHARK enable to write tracks in a fewer CCW than the non SHARK emulation. This make the write tracks CCW to be faster than the regular CCW to write tracks.

212

Page 213: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Backup MF configuration file to PC • Backup the MF MFNetDisk configuration file to MFNetDisk PC

for each configuration dynamic update in MVS (Using F MPC, CONF=NEW).

• The MF configuration is sent only to IP which create already connection to the PC host. For example the VARY online console command create connection to the PC host. If no connection created, then the MVS MFNetDisk will send the configuration file to PC the moment the connection established. The reason is that sometime the MVS start before the PC and if the configuration tries to access the PC there will be TCP error messages, and that is not looked nice.

• New MVS modify command can disable or enable the transferring of the MVS configuration file to PCs. The command is F MPC, CNF2PC=Y/N.

• MFNetDisk adds new scripts to control the MVS configuration. • Selecting DISPLAY->SYS->MVSCONF displays the script

DMVSCONF, DLISTMVSCONF, DPCIPMVSCONF. • DMVSCONF, display the MVS configuration as is. You need

to specify the PC file name which its name can be found by using the DLISTMVSCONF. The convention file name is the IP with file type “MVS”. For example if the MVS IP is 192.168.0.1 then the PC file name is “192.168.0.1.MVS”.

• DLISTMVSCONF, will display all the file type “MVS” and the last update time of the file. By running this script with GROUPPCIP=Y, the user can checks all the MVS files in all PCs for all MVS.

213

Page 214: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MF and PCTOOL are controlling all the MFNetDisk PC Servers.

GROUPIP is the feature which enables the product to manage any number of 3390 disks with unlimited storages capacities and unlimited PC hosts which runs the MFNetDisk product. Yes, you can have any number of terabyte storage stored and managed by PC and can be access from MVS in no time.

• DPCIPMVSCONF, display all the PCIP extracted from the

MVS configuration file which can be putted in the PCTOOLHELP>XML to defined a new or additional GROUPPCIP PCIP.

• MFNetDisk split the old PCTOOLHELP, using by PC Tool, to two files. The regular help, PCTOOLHELP.XML and a new one, PCTOOLSET.XML.

• PCTOOLHELP.XML - display the help for each selected script, and its parameters. The MFNetDisk user does not need to update this file ever. MFNetDisk will replace this file if addition script or new parameters added to MFNetDisk.

• PCTOOLSET.XML – support new PCTool configuration parameters. Right now this file supports the default parameters to be used when PC Tool started. And another use of this file is to support the GROUP PCIP new feature which enables the PC Tool to manage unlimited PC IP hosts.

• MF can send modify command to all the PCs using their IP which are defined in the MVS configuration file. All the IP PC hosts can be displayed using the MVS modify command IP=Q.

• MFNetDisk MVS now can send script to specific PC device defined in MF configuration.

• MFNetDisk MVS can now send script to all the PCs and to all the PCs devices defined in the MF configuration file.

214

• MFNetDisk MVS can now send script to all the PCs IP. One script to each PC host.

Page 215: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• PC Tool now adds support to unlimited PCs in one script command. Each script can be sent to specific PC, as it was before, or to group of PCs defined in PCTOOLHELP.XML file using tag <SETGROUPPCIP>.

• New script now locates any VOLSER in any PC in the PCs group. The script returns the IP and the PC Device. Operator can mount the new VOLSER in a minute using this script output and the MF CONF=NEW modify command.

• To search for a Volser in many PC hosts select PC Tool command DISPLAY->SYS->GETVOLLOACTION. The script which will run this selection is “CMD=DVOLLOCATION, VOL=”.

• New script now can display all the VOLSERS which have enough free space. You can specify the free space required using a parameter. The menu item is DISPLAY->SYS>GETVOLSPACE. The script which run this selection is CMD=DVOLSPACE, CYL=200 where the 200 is the minimum free space required for VOLSER to meet the criterion. The output displays the space for the VOLSER which have 200 or more free cylinders and the VOLSER location which enable the operator easily to mount the new Volser to MVS.

• New script now can display all the files which are contained in all the VOLSERS which meet the requirement for specific prefix DSN. The script which will be created using this menu item is CMD=DDSNSEARCH, FILE=SYS1.M where SYS1.M is the prefix DSN. In this case SYS1.MACLIB and SYS1.MODGEN will be displayed with the IP and the PC device which in one minute can be mounted as a new 3390 disk accessing by MVS.

• PC Tool can support unlimited PC hosts while MF can support only the PCIP which are defined in the MF configuration. So to support millions of devices, you need to use the PC Tool scripts with the Group IP radio button set to on.

215

• When Group IP radio button set to on each script add the GROUPIP=Y/N field. If the user set the value to Y, than the script will ignore the SERVERIP value and send the script to all the PCs (can be millions) defined in the PCTOOLHELP.XML file.

Page 216: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• When PC Tool started, the values of the GROUPIP are analyzed, and a message is displayed to indicate if the parameters are OK and if there is connection to all the PCIP defined in the XML file. Checking the connection is done by using the PING TCP command.

• If the parameters in PCTOOLSET.XML are invalid or if the IP is not correct, or if the ping failed then the error IP will not be part of the GROUP PCIP.

• If all the PCIP value is bad and can no be accessed then the radio button will be set to disabled. When the button is disabled, the GROUP PCIP can not be set to ON. To enable it, fix the error and restart the PC Tool again.

• Even if the GROUP PCIP is disabled, you can continue to work with the PC Tool as before, this time only the SERVERIP box in PC TOOL will indicate to what IP the script is going to be sent. Every script will be sent only to one IP for each DOSCRIPT button click.

• If the GROUP PCIP is disabled because of parameters error, the PC Tool will continue to work for standard scripts which are sent to IP defined in SERVERIP button in the PC Tool window.

• Click on the GROUP PCIP button will change the radio button to on or off. PC Tool automatically add the field GROUPPCIP=N. To send the script to all GROUPIP, change the value GROUPPCIP to N.

• After sending the script to GROUPPCIP, the value is changed automatically to N to avoid user mistakes.

• Right now there is no automatic control about the mount request to VOLSER which is not mount and online. There are some problems which need to be solved. Disks are not tapes. There is not CCW for disk to unload (CCW X0F) the device after it being used, but in disk the data can be shared among many processes in parallel.

216

• The process of Mounting a new VOLSER to device in MFNetDisk can be done by checking if MFNetDisk device is in used (if it in used the MVS vary offline will not work), if The vary offline is OK, a new VOLSER can be mount to the device by change the device PCIP and PCDEVICE value in the

Page 217: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

configuration file for the specific MVS device, run the MVS modify command CONF=NEW and vary the new device online. This process is not automatically but it is faster that to send operator to seek the cartridge and then to go to the tape controller and mount the requested tape. Meanwhile I work to find a way to improve the process and make it more automatically.

• Using the GROUPPCIP and the RANGE script parameter, the user can define unlimited new devices in one running script. For example if the number of PCIP is 100 and each PC host can handle 256 PC devices, then running the ADDNEWDEVICE with GROUPPCIP=Y and RANGE=256 will defined in one script 256*100=25600 new 3390 devices in 100 PCs!

<SETGROUPPCIP> *PCIP=127.0.0.3 PCIP=127.0.0.1 PCIP=127.0.0.2 </SETGROUPPCIP>

217

Example: Statements which defined the Group PCIP in PCTOOLSET.XML. In this example 127.0.0.3 is comment and not active.

Page 218: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

//SHAI1CLT JOB MSGLEVEL=1 JOB02724 // EXEC PGM=MPCCLT //STEPLIB DD DSN=MPC.V012.LOAD,DISP=SHR //DDIN DD * * send script to one pc device PCSCR=0300,CMD=DIOACT *send scripts to all devices PCSCRS=ALL,CMD=DIOACT *send script to all PCs PCSIPA=ALL,CMD=DIOACT //DDOUT DD SYSOUT=X //SYSUDUMP DD SYSOUT=X

218

Example: Send PC script, from MF, to one device, to all devices defined in the MF configuration, to all hosts defined in MF configuration.

Page 219: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PCIP Group: 127.0.0.1 is active 127.0.0.2 is active Number PCIP in PCIP Group=2

Example: Messages which are displayed when PC Tool started. CMD=DIOACT

Example: script creates in PC Tool when the GROUP PCIP radio button set off or if the button is disabled. PC Tool sends this script to the specific Server IP set in PC Tool. In this case GROUPPCIP is not active. CMD=DIOACT,GROUPPCIP=N

219

Example: script creates in PC Tool when the GROUP PCIP radio button set on, but the value of GROUPPCIP is N. PC Tool sends this script to the specific Server IP set in PC Tool. In this case GROUPPCIP is not active.

Page 220: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

CMD=DIOACT,GROUPPCIP=Y

220

Example: script creates in PC Tool when the GROUP PCIP radio button set on, and the value of GROUPPCIP is Y. PC Tool sends this script to all the PCIP specify in SETGROUPPCIP tag in file PCTOOLHELP.XML. The SERVERIP value in the PC Tool is ignored.

Page 221: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PC Tool displays the new control, GOUPPCIP.

221

Page 222: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

222

Locate VOLSER location using the new control GROUPPCIP and the script created when the GROUPPCIP set on. The script is transferred to all the PCIP define in the SETGROUPPCIP.

Page 223: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Auto start and Windows service

• MFNetDisk direction is to support unlimited PC and to manage

their operation. The GROUPPCIP which enable this direction force us to support also shutdown and auto start of the PC Server from any location in the universe.

• Windows service is the tool used for auto start. Auto start support only by Windows.

• The only way in Windows to enable automatic start to the PC Server is to support the Windows service.

• The Windows service supports both, the console and the GUI PC Server.

• If you stop the MFNetDisk in the GUI by using the STOPMPC button and you did not exit the GUI, AUTOSTART will not restart the MFNetDisk because it see that the process MPCPCServerAll is active in the computer.

• All requests to AutoStart are sent by using MODIFY->SYS->AUTOSTART and the operation required by the user.

• Auto Start can be removed, installed, Suspended and resumed. • Install, will install the Windows service using the MPCAutoStart

application. The default will be resumed, which restart automatically the PC Server if it was stopped.

• Remove, will remove the Windows service from the host. No new request can be sent to the AutoStart. To enable communication with AutoStart, installation is required using the install option.

223

MFNetDisk manages unlimited PC hosts. To manage thousands of PC an automatic restart to the PC Server is required. It is not practical to start PC Server manually for many PC hosts. The new feature of Auto start enables the PC Server to be started automatically after reboot or after stopped condition. To set the Auto Start to ON or OFF use the PC Tool scripts.

Page 224: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• Suspend, will stop to restart the PC Server in case of PC Server was stopped. The Auto Start can receive requests to resume it restarting of PC Server.

• Resume, will automatically restart the PC Server if it was stopped. • MPCAutoStart.EXE is the executable application which supports

the Auto Start Windows service. • By default after the installation the Auto Start is not active. The

reason is to enable the user who wants to test the product to easily shutdown the PC Server and not to be surprised when the PC Server restarting again in less then 30 seconds. New user can think that this is bug in MFNetDisk or with Windows.

• To install the Auto Start in PC host use PC Tool script MODIFY->SYS->AUTOSTART->INSTALL.

• To remove or uninstall the Auto Start in PC host use PC Tool script MODIFY->SYS->AUTOSTART->REMOVE.

• AutoStart can communicate with the PC Tool using TCP without the need to have running PC Server.

• MFNetDisk uses this feature to enable the user to update PC Server new code without the need to go to the required PC host.

• The REMOTEINSTALL feature enables the user to update the AutoStart and PC Server code without the need to go physically to the PC host.

• To install a new AutoStart version you must remove the active AutoStart from the PC using the PC Tool.

224

• To suspend the automatic PC Server restart, use the Suspend option.

Page 225: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The best trace in PC for ten generations

• In July 2008–07–27, MFNetDisk supports a new global tracing. • The trace start automatically for sever errors and all kind of

exception errors. • User can set the global to on; that mean that not only server

errors are traced, but also tracing many events the PC Server face.

• Be aware that the trace file can be very big if you set the global trace on.

• To set the global trace on, use the PCTOOL using Modify->SYS->TRCONALL. To set it off Modify->SYS->TRCOFFALL.

• Now when PC Server starts, it opens a trace file automatically only for errors and exception condition.

• MFNetDisk support ten files generations of traces. Every time the MFNetDisk started, a new generation traces file started and the oldest trace file will be deleted.

• The active trace file name is GLOBALTRACE.TXT. The older trace files names are GLOBALTRACEX.TXT, where X start from 0 to nine. GLOBALTRACE9.TXT is the oldest trace file.

225

Page 226: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Advance CCW, search key and search ID

The MF disks are a CKD disk. CKD stand for Count, Key and data. The count has some record information and ID which in general contained the disk address in the format CC-HH-R. The key is data which preceding the DATA of the CKD. In the past IBM add functions to the disk controller instead to the software but that history. To access the data you must create orientation to the data itself. You can create orientation in two ways:

• Using the count (Search ID CCW). • Using the Key (Search key CCW).

This search command can be big problems to user’s application and it was developed with regard to the old controllers in the past. Access the data can create thousands of contact between the Controller and the MF. The language is a very simple language; The MF asks the controller if you in my requested ID and the controller answer YES or NO. The orientation most of the time ended when the controller answer, I am there! In this point the MF can read or write data. Today everything is different, the IO controller support the ECKD. ECKD enables accessing the ID fast and quickly. Now the MF asks the controller to go directly to the requested ID and reply to the MF only when the requested ID is OK.

226

The problem is that there are some very important files which still can be accessing using the old way, and one of the most popular access methods is the PDS file. The MF need to search the key in the disk for requested member in the PDS directory. This can be a very painful experience because the interactions between the MF and the

Page 227: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

controller can be thousands and more if the directory is big (SYS1.LINKLIB). Using the FICON channel is OK but using the TCP and especially if the TCP is not the fastest HW in the MF computer, can take very long time. To solve the problem I add a very exciting feature called Advance search key and Advance search ID. The problems:

• IBM MF expects an answer for each CCW it sends to the controller.

• Millions of CCWS different chains created by users and the controller must answer to the MF for all the IO requests.

• The big problem is to identify if the CCW chain in the loop. The problem is to identify the CCW loop. Real 3390 have a bigger problem to identify the loop and I am not sure how many of them try to make the search ID and search key faster, but to the real devices which use FICON that is not a big problem to me it is a problem.

The real 3390 accesses the data using a very simple data which is sent by the MF. The data can be a request type (the CCW) and the data. MFNetDisk is not limit by the data it can receive and use form the MF. I have a lot of information like MVSDEVICENUMBER, I have the MVSASID which send the IO request and I have also the real address of each CCW I process. Using the real address of the CCW can make my life easy to identify loop status. If I suspect that this is a loop, all I need is to check if the previous CCW come from the same real address as the current CCW. If the answer is yes than I can do something to make the IO faster.

227

Page 228: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

What is faster for MFNetDisk, the answer is the interactions number between the MF and the MFNetDisk PC. MFNetDisk can not allow thousands of interactions for each BLDL request done by the MF. The MFNetDisk solution is to process the unsophisticated language of Are you there? To I will answer to you only after checking the all track. Why track? The answer is that for PDS there are about 45 block directory, that mean that if the request member is not in a specific directory the interaction between the PC and the MF will be more that 45. That is 90 interactions for one track. Why two times? Because each block key which need to be check (are you there?) checking between the PC and MF send two CCWS for block and not one. The two are the search key and the read count MT CCW. MFNetDisk can make the interactions between PC to MF to only 3 for each track. That mean that instead of 45, MFNetDisk do it 3. better than 90 percent improvement. How I do it? The answer is that I am verify that the CCW are in loop and than I do not answer to the MF but check all the keys in the track and reply to the channel only if I find the required key or if I do not find the key in all track. Why only track and not all the Cylinder? The answer is that I want to leave something to the next release (☺).

228

Page 229: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Checking CCWS, Advance search key and advance search ID Using the DISPLAY->DEV->DCCWDONE you can see all the show.

• Check if Shark emulation is active. • Check how much search ID CCWS did not go to the MF and

this number was not included in the CCW counters (this is not CCWS after all).

• Check how much search key CCWS did not go to the MF and this number was not included in the CCW counters (this is not CCWS after all).

• The advance search key and ID can be much higher than the CCW of the search ID and key. To know what could happen if the Advance search was not active; add the counter of the search ID and key to the counters of the saving search ID and key.

• All the IO errors type are displayed also in this panel. • Check all CCW which run from the start of the server or from

the clearing the statistics (using MODIFY->DEV->CLRSTATI).

• For each CCW there is a counter of error condition each CCW received (if the counter equal to the errors number, please call me). Some of the errors are legal (example: End of cylinder unit check).

• All the data are displayed in Hex.

229

Page 230: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PC Tool and script DCCWDONE.

230

Page 231: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Kill the interactions between PC and MF. Search key can create a big problem when the interactions between PC and MF become enormous number. Creating the advance search features push me to create the DBIGCHAIN script. The DBIGCHAIN display the biggest CCW interactions number between the PC and MF. Be aware that this is not the chain CCWS. This is the number of times the PC and MF speak to each other to finish the IO request. You can have 5 CCW but 1000000 interactions between PC and MF. DBIGCHAIN will display the 1000000 CCW interactions and not the 5 CCW. You can not find the script in the menu because I am not sure how many users will like to know everything about this product. I am sure that most users will like to know what they need for running the product and that all. I decide to give you the script just incase that some of you want to help me to find crazy CCW which create many thousands interactions per IO between PC and MF. I can promise you that in some cases I can do miracles to the performance of the product. PC Tool enables the user to write the script directly without the need to select script from menu. By typing “CMD=DBIGCHAIN” and press DOSCRIPT you will receive the biggest PC to MVS interactions number. If this number look suspicious to you please send it to me by email.

231

Page 232: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The Auto IO Recovery new feature

232

MVS use the IO error recovery routine to recover standard IO error like END_OF_CYLINDER unit check. The error recovery routine of MVS will create a new chain of CCWS to be continued from the point of the recoverable CCW which failed. MFNetDisk enable the user to select option between the MVS error recovery and MFNetDisk error recovery. In MFNetDisk error recovery, MFNetDisk will verify if the chain can be recoverable, and if yes, it will continue the CCW chain without send to MVS unit check status to be recoverable latter by MVS. After running performance test with IORECOVERY ON and IORECOVERY OFF, I find out that IORECOVERY OFF (let MVS recover the chain) has 50 % better performance. To check the Auto IO recovery setting, select Display->Dev->CCWDONE. To change the setting use MODIFY->SYS->IORECOVERY and then select if it ON or OFF. User can change the value to ON but MFNetDisk will reset the value to OFF when PC Server will be restarted. The default setting is OFF.

Page 233: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

233

Example: DISPLAY->DEV->CCWDONE which display the status of Auto IO Recovery.

Page 234: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

234

Page 235: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The sky is the limit by using REMOTEINSTALL

• Currently, REMOTEINSTALL can run only in Windows platform.

• After the full installation you can update the code using the remote installation feature.

• Be aware that to be able to use the REMOTEINSTALL feature you must have installed the new code which supports the REMOTEINSTALL, meaning the new PC Server and the new AUTOSTART modules.

• With this feature you can update all the remote PC Server and other files code from one PC Tool in any place in the universe without the need to access physically the remote MFNetDisk PCs.

• Stay on your chair, download the installation files and run scripts from your beloved PC to update the remote PC Server and AutoStart and more files in many remote PCs locate in any distance from your beloved PC.

• To access the remote install feature use the MODIFY->SYS->REMOTEINSTALL from PC Tool.

• To send the installation files downloaded from www.mfnetdisk.com to the remote PC s use the MODIFY->SYS->REMOTEINSTALL->COPYFILES.

• To Activate the new PC Server code use the MODIFY->SYS->REMOTEINSTALL->ACTIVATENEW->PCSERVER.

• To activate the new AutoStart use the MODIFY->SYS->REMOTEINSTALL->ACTIVATENEW->AUTOSTART.

• Using the GROUPPCIP new feature you can update all your many PCs files using one time REMOTEINSTALL process.

235

Page 236: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

236

Run REMOTEINSTALL from your chair.

Page 237: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Using REMOTEINSTALL to update PC Server code

• Download the installation files from www.mfnetdisk.com to your selected folder. Example C:\MPCSOURCE.

• Verify that the PC Server is running. • Verify the SERVERIP to remote install the PC Server. • Verify that the AutoStart is installed in the remote PC by select

DISPLAY->SYS->AUTOSTART->SERVICESTATUS. • If the AutoStart is not installed, select MODIFY->SYS-

>AUTOSTART->INSTALL. • Select MODIFY->SYS->REMOTEINSTALL->COPYFILES. • Click the DOSCRIPT. The required installation files will be

copied to remote PC host in the active PC Server folder, subfolder REMOTECOPYFILES.

• Select the C:\MPCSOURCE from the BROWSE TO FOLDER dialog (see picture).

• Check that the COPYFILES ended OK (may take few seconds). • Select MODIFY->SYS->AUTSTART->SUSPEND. • Stop the PC Server in remote using MODIFY->SYS-

>STOPSERVER. • Select MODIFY->SYS->REMOTEINSTALL->ACTIVATENEW-

>PCSERVER and run the script. • Select MODIFY->SYS->AUTSTART->RESUME and run the

script. The new PC Server automatically starts to run after few seconds.

237

Page 238: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Using REMOTEINSTALL to update AutoStart code

• Download the installation files from www.mfnetdisk.com to your selected folder. Example C:\MPCSOURCE.

• Verify that the PC Server is running. • Verify the SERVERIP to remote install the PC Server. • Verify that the AutoStart is installed in the remote PC by select

DISPLAY->SYS->AUTOSTART->SERVICESTATUS. • If the AutoStart is installed, removed it by selecting MODIFY-

>SYS->AUTOSTART->REMOVE. Now the AutoStart is not active and its file can be replaced.

• Select MODIFY->SYS->REMOTEINSTALL->COPYFILES. • Click the DOSCRIPT. The required installation files will be

copied to remote PC host in the active PC Server folder, subfolder REMOTECOPYFILES.

• Select the C:\MPCSOURCE from the BROWSE TO FOLDER dialog (see picture).

• Check that the COPYFILES operation ended OK (may take few seconds).

• Select MODIFY->SYS->REMOTEINSTALL->ACTIVATENEW->AutoStart and run the script. This will replace the old MPCAutoStart file with the new one.

• Select MODIFY->SYS->AUTSTART->INSTALL and run the script. The new AutoStart is now active.

• To verify the version date of the new AutoStart use the DISPLAY->SYS->AUTOSTART->VERSION.

• To verify the version date of the new AutoStart use the DISPLAY->SYS->AUTOSTART->AUTOSTARTSTATUS.

238

Page 239: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

239

Page 240: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Access MVS files without MVS and without FTP Now you can access the MVS files from PC without the need to access MVS or FTP the MVS files. Many users need to run PC (Linux and Windows) applications with the data created in MVS. For example, for accounting, some users run SAS applications on PC. The process is complicate. The user needs to FTP the files from MVS to PC and the files (SMF files) can be huge size. One customer asked if there is a possibility to have something which eliminates the accessing of MVS because he uses very big files from MVS which are transferred to PC. I love challenge and I decide to do it. Two components are transferred with the MFNetDisk installation files, MPCMVSAPIDLL and FTPMVSFILES.

240

To access the MVS files you need the DLL to test and play with the DLL you need the FTP. I used FTP to debug the API. I decide to distribute the FTP too because it can be used also to create PC files with the contents of the MVS files.

Page 241: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MVSAPI DLL

With this DLL you can easily read any MVS files. Currently the API supports PS, PO and VSAM. For VSAM the recode are physical block of the VSAM files (generally 4K). The supported RECFM are: F, FB, V, VB, VS, VBS and U. MVSAPI support multi volumes dataset. MVSAPI will search automatically all the VOLSERS needed to read the files. The user does not need to specify any VOLSER of the dataset. The DLL assumes that all the DSNAME VOLSERS are in the IP or in the GROUPIP. If the MVSAPI DLL fined out that there are problems in the VOLLIST it will notify the user about it. In this case the user can edit the VOLLIST by using the FTPMVSFILES wizard and save the VOLLIST file to be used by the MVSAPIDLL DLL. But if the user plans to process MVS files from PC, he needs to take care that the required VOLSERS for DSNAME are available in MFNetDisk disks. In this case the MVSAPI DLL will find automatically the required VOLSERS and processing the MVS files without any problems. MVSAPI will verify that all the VOLSERS needed to read are available. The read operation return the length of the record read from the file. For span record it will give the record for one read even if the record uses few physical records. No limitation of 32K.

241

You can download MPCFTPMVSFILES source code and see how easy it to use the API to read MVS file to PC without using MVS.

Page 242: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The available MVSAPI function public MvsApi(string pcip) or public MvsApi()

Defined the IP which are needed to search for DSNAME and VOLSER. The PCIP parameter for example can be “PCIP=10.0.0.1,10.0.02,…”. In this case the MVSAPI will access only this host IP. If the MvsApi is activated without parameter, The MvsApi will read the PCIP from file.

public static string ListVtoc(bool ifextents, string prefixdsn, MvsApi mymvsapi, string ip, int pcdev)

List VTOC for specific IP and specific PC Device.

public Iob(string dsn, MvsApi mymvsapi, string member, bool ifbin) or public Iob(string dsn, MvsApi mymvsapi, bool ifbin)

Open file with member from PO file or open PS file.

public bool LSeekMvsFile(int tt, int r)

Enable random access file records.

public static int APIMVSFileRead(Iob myiob, byte[] userbuff, int userbuffoff, int userbuffmaxlen)

Read a record from the file. The return value is the record length.

public static string GetListPDS(string mvsdsn, MvsApi mymvsapi)

Return all the members of a PO file as a string.

242

Sample of MVSAPI functions available, currently, to the users.

Page 243: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MPCMvsApiDLL.MvsApi mymvsapi = new MPCMvsApiDLL.MvsApi(); MPCMvsApiDLL.MvsApi.Iob myiob = new MPCMvsApiDLL.MvsApi.Iob(DSNAME, mymvsapi, IFBIN); //open done if (myiob.IfIobOK == false) { this.textMsgs.Text= myiob.strIobError; return; } MPCMvsApiDLL.MvsApi.Dcb mydcb = myiob.IobActiveDcb; MPCMvsApiDLL.OPResult opr = null; int mvsreclen = 0; byte[] mybuff = new byte[MPCMvsApiDLL.MvsApi.Iob.MAXUSERBUFFER]; int trytime = 0; for (int ix = 1; ix <= looptime; ix++) { mvsreclen = MPCMvsApiDLL.MvsApi.APIMVSFileRead(myiob, mybuff, 0, MPCMvsApiDLL.MvsApi.Iob.MAXUSERBUFFER); if (mvsreclen == 0) { break; } trytime++; } return;

243

Sample: Read MVS file, sequentially using MVSAPI.

Page 244: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

To Read MEMBER from PO, change the IOB creation by adding the member name.

MPCMvsApiDLL.MvsApi.Iob myiob = new MPCMvsApiDLL.MvsApi.Iob(DSNAME,

mymvsapi, membername, IFBIN); //open done

You can also read the file randomly by using function LSEEKMVSFILE.

244

public bool LSeekMvsFile(int tt, int r)

Page 245: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

FTPMVSFILES, MVS Files wizard

Sample: MVS Files wizard. The GUI has combo lists of requests. Before start any request, you must create MVSAPI object, this object create the connection between the GUI and all the PC hosts which run PC Server. The GUI (FTPMVSFILES) creates this connection using one of the two requests in the COMBO request. MVSAPIIPFROMGUI takes the IP from the TEXT in the GUI with title SERVERIP (see the example). MVSAPIFROMFILE takes the IP from file MVSFILESSET.XML.

245

Page 246: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

<SETPCTOOL> <SETGROUPPCIP> <!-- PCIP--> <PCIP PARM='127.0.0.3'></PCIP> <PCIP PARM='127.0.0.1'></PCIP> <PCIP PARM='127.0.0.2'></PCIP> </SETGROUPPCIP> <DEFAULTVALUE> <DEF_SERVERIP PARM='127.0.0.1'> </DEF_SERVERIP> <DEF_PATH PARM='C:\MPCDASD\'> </DEF_PATH> <DEF_CYL PARM='200'> </DEF_CYL> <DEF_NETIP PARM='192.168.100.2'> </DEF_NETIP> <DEF_FILE PARM='C:\MPCBKUP\BKUP.XXX'> </DEF_FILE> </DEFAULTVALUE> </SETPCTOOL>

File MVSFILESSET.XML for setting the MVSAPI PCIP. The available requests are:

1. Search DSN – List all MVS DSNAME in PC Server IP or in GROUPPCIP (multiple IP defined in MVSFILESSET.XML files). The request uses the DSNAME textbox data for input. If you specify SYS1, than all files with prefix SYS1 will be displayed.

2. SEARCHVOL- Search a VOLSER in SERVERIP or GROUPPCIP. The return data will be the PCIP and the PC Device number.

3. GETMVSILE- The input is the DSNAME and the radio button BIN. MPCMVSAPIDLL file must be in the same folder as the FTPMVSFILE GUI. The DSNAME can be a PDS member or a non PDS file. For example: SYS1.MACLIB (WTO) or SYS1.DUMP00.

4. LISTVTOC- Display the VTOC for specific VOLSER. 5. LISTVTOCDSN- The same as LISTVTOC, but display only the

entries which fit the DSN prefix.

246

6. LISTPDS- List all member belong to DSNAME type PO. Be aware that PDSE is not supported by this request.

Page 247: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

7. DUMPQSMFILE- Dump QSM file created by using the GETMVSFILE. B pressing REREAD you can see the nest records in the PC file contained the MVS file data.

8. DUMPQSMPREFIX- Dump the prefix of QSM file created by GETMVSFILE. The prefix of the QSM file contains data which describe the file and the DSCB1 of the MVS file.

9. DISPLAYASCIIQSMFILE- for GETMVSFILE with BIN is OFF, the request display the ASCII data of the file.

10. AUTODSNVOLLST displays all the location of an MVS file. This enable the user to understand what VOLSER the GETMVSFILE will use to extract the MVS file.

11. AUTODSNPVOLLST displays the same info as AUTODSNVOLLST but in this case it will display the data for multi DSN with a given DSNAME prefix. If the input is SYS1 then the result will be for file SYS1.MACLIB and SYS1.MODGEN and more.

<SETMVSFILES> <SETGROUPPCIP> *PCIP=127.0.0.3 PCIP=127.0.0.1 PCIP=127.0.0.2 </SETGROUPPCIP> <DEFAULTVALUE> DEF_SERVERIP=127.0.0.1 DEF_DSN=SYS1.MACLIB </DEFAULTVALUE> </SETMVSFILES>

Sample of MVSFILESSET.XML to defined GROUPPCIP.

247

Page 248: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

QSM File format QSM File is a pc file which contained the data of MVS file. QSM file is the output file of MFNetDisk FTP used to get MVS file from MVS to PC. The file format is defined only by the MVS Files wizard (FTPMVSFILES). No other tool can work with QSM file except MFNetDisk. The data in QSM file can be BIN or translated to ASCII. So, why you need to know about QSM file? You do not need but if you want to keep an MVS file image, this is the way to do it. Just run the GETMVSFILE to QSM file and in a few seconds you have easy PC file format to process in PC. Each file contained a prefix which defined what the attribute of the MVS file is. Looking at the prefix you can see that the size of the prefix Hexadecimal a2 (offset 2 length 4 bytes). You can see also that the size of the file is in offset 6 lengths 12 which in our example are 138892550.

248

In the prefix offset 12 there is a byte which defined if the file created a a BIN file or translated to ASCII file.

Page 249: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The QSM prefix data

249

Sample of the QSM prefix data.

Page 250: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The QSM data format Each record contained the length of the record include the 4 bytes length and the data. In our example, the length is Hexadecimal 00000040 is in the first 4 bytes of the record. In our case the record start at offset 4 and the real record length is 40-4=3C.

250

Page 251: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk new version 11 Moving to MFNetDisk version 11, require cold start of the MVS MFNetDisk job. This action required for the new Replication implementation. Some of the New features: • CIOD (Concurrent IO for disk): This enables to run concurrent many I/O for a device. Before the CIOD implementation or the IBM PAV implementation, only one I/O runs per device at the same time. • Replicator improvement:

– Reduction in virtual memory required to run this feature. – Support unlimited devices which can be replicated to

MFNetDisk PC disks. – Using the MFNetDisk DFR new feature, MFNetDisk can

handle unlimited concurrent writes IO to many real devices. For massive writes IO, MFNetDisk can make very small delay (to let MFNetDisk updates locally the buffer of the MPCLOG file).

251

• Better performance and reliability of the product.

Page 252: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk CIOD vs. IBM PAV The CIOD was a very complicate feature to develop. One of our customers asks this feature and it was accomplished. In October 2009, a very important fix was applied to the code. It seems now that the CIOD is a reliable feature in MFNetDisk. MFNetDisk CIOD enables to run concurrent IO per MFNetDisk emulated device. Many operating systems allow using the concurrent IO per device. IBM PAV enables this feature for the MF. MFNetDisk CIOD uses alias 3390 (3390A) and base 3390 (3390B) with the same functionalities as PAV does, but, the implementation is totally different. MFNetDisk does not use the CIOD feature for device which was defined as regular 3390 (neither base nor alias devices). CIOD is a software implementation only. Neither non HW connection nor special CCW are required to use this feature. MFNetDisk supports the dynamic CIOD. MFNetDisk will adjust automatically the number of UCB required for busy MFNetDisk devices. The adjustment is done inside the MFNetDisk and not by any MVS components. To specify the attribute of the alias and base devices in the HCD, specify “WLMPAV=No”. Using the CIOD new feature, may require adjustment of the MFNetDisk MVS tasks parameter (TASKS=NN). IO for device with CIOD active (base and alias UCB defined) and more than one IO for the device required more than one tasks to handle the IO per the device. By default, the TASKS parameter default in MVS is 5.

252

It is up to the user to change the TASKS value according to the environment they run. To check the utilization of the tasks number, run the MVS modify command “F MPC,SRV=Q” and check for “TASK# = 005 TASK_BSY = NNN” fields. If the TASK# is equal to the TASK_BSY, it can be good idea to increase the number of the TASKS parameter. Be aware that MFNetDisk

Page 253: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

uses the first task for replication and the rest for emulation. The low TASKS value is two, the high value is 32. Be aware before start to work with CIOD you must put IBM PTF to your MVS. I find some errors which happened because of missing required PTF to operate the IBM PAV as well as MFNetDisk CIOD. In my test I receive ABEND C09 when SRM try to access the MFNetDisk virtual device as real IBM device without checking the existence of specific storage which IBM used for their PAV devices.

253

Page 254: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Activate the CIOD feature Define alias 3390 and base 3390. These 3390 are virtual devices. No need to define neither CONTROL Units nor CHANNELS.

254

Using HCD, define the virtual base and alias 3390 by selecting option 1 (Define, modify, or view configuration data).

Page 255: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Select option 5 (I/O devices) and for our example define 32 for MVS device number 800. These devices are standard devices. These devices can not be used for CIOD or IBM PAV. Also in our example we define 32 devices for MVS device number 820 as a base 3390 devices. Base 3390 are required for PAV or CIOD. This devices are the real device for the MVS users the same as a regular 3390 device with the support of the CIOD or IBM PAV. The base 3390 can not use the PAV or the CIOD feature without using the alias 3390. In our example we define MVS 32 alias 3390 using MVS device number 840. The MVS users are not aware about these alias devices. It is only used for the IO operation to let the users to run concurrent IO for the same device. Without CIOD or PAV only one IO can be run for one device. In our example the virtual devices (800-85F) does not specify the CSS (channel subsystem) or the control unit number because MFNetDisk use virtual devices.

255

Page 256: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

In our example we have definition in the IODF for 32 devices as standard 3390 (device type 3390 in the HCD) from 800-81F which can be used for emulate 3390 without using the CIOD or IBM PAV feature. Also we defined 32 devices as 3390 base devices (device type 3390B in the HCD) which are required to use the devices for IO and are required to use the CIOD feature. To enable the base 3390 to use the CIOD feature we also defined 32 alias 3390 devices (device type 3390A in the HCD). Now the CIOD feature can be activated easily by specify a new parameter in the MFNetDisk SAMPLIB in MVS side. The new parameter is ALIASUCB parameter. In our example the full parameter and its values for the base and the alias 3390 device are:

As you see, the DEVICE parameter is the same parameter as specify before. The DEVICE parameter can be a regular 3390 device type in the HCD or base 3390 device type defined in the HCD. The only new parameter is the ALIASUCB parameter which is required to use the CIOD feature, and the parameter value is the device number defined in the HCD as 3390A device type. Specify these two parameters and MFNetDisk will activate the CIOD feature automatically. The number of alias UCB to be used for the device will be decided by MFNetDisk using online sampling. If the IO queues is high the MFNetDisk automatically adds alias UCB for the device, if the IO queue is low the MFNetDisk reduce the alias UCB for the device automatically.

256

ALIASUCB MVSDVNUM=0840,RANGE=32

DEVICE MVSDVNUM=0820, PCDEV=20, PCIP=169.254.0.1,RANGE=32

Page 257: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

To explore the CIOD in MFNetDisk use the SRV=Q modify command to check the CIOD feature for the total MFNetDisk system. To explore for one base MVS device uses the QDEV=UUUU modify command. MFNetDisk support 256 aliases UCB. This value can be changed easily by patch this value upon request by any users. It seems that 256 aliases is OK number because the stack of the alias UCB is adjusted automatically by MFNetDisk according to the IO queue sampling done automatically by MFNetDisk.

257

MFNetDisk supports up to four aliases per disk. MFNetDisk can support any number but to enable many devices to use the alias UCB, MFNetDisk limits the high value to four.

Page 258: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Commands and CIOD The SYS=Q modifies command: F MPC011,SRV=Q PROCESS MODIFY MPC SERVER ACTIVE PC= NORM LIC=ACTIVE DEV#=0015 RQE_ACTIVE=00002 RQE_TOTAL=00256 WAITDVE=00000 WAITIOP=00000 REG_IO = 00010982 FSTIO = 00000177 PND_DEV= 000000 PND_SYN=000000 PND_FSY=000000 PND_IO= 000065 PND_NTSKD= 000000 PND_NTSKM= 000065 TASK# = 005 TASK_BSY = 003 CIOD_ALIASIO#=007341 CIOD_MULTIIO#=003724 UCBALIAS_DEF#= 000032 UCBALIAS_USE#= 000003 CWT#US = 000000 CWT#AL = 006261 STK#AL = 000100 STK#US = 000000

The highlight output display the number of IO which uses the alias UCB and the number of IO which run concurrently for the devices. Also the second highlight, display the number of alias defined for MFNetDisk and the number of alias which are in use for the CIOD feature. The QDEV=UUUU modifies command: F MPC011,QDEV=0820 PROCESS MODIFY UCBA IOQ# UCB# TIMECK UCB_DEV# 00F3EF40 0003 0004 0003 0842 0841 0840 0820

258

The highlight output displays the UCB address of the 820 (base device) and the alias devices which are uses for the 820 to run the CIOD feature. Also some statistic about the snapshot data collected by MFNetDisk to decide the number of alias to add or reduce for the base device. The TIMECK is the number o seconds passed from the last updated done by MFNetDisk to add or reduce alias.

Page 259: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The CIOD=Y or N modifies command: This command, with CIOD=N, disables the adding or deleting of new aliases UCB to the base UCB. If the device already has alias, the aliases number, assigned to the base, will not be changed after using this command! To continue with the dynamic adding and deleting aliases, run the CIOD=Y command.

259

Page 260: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

New Handling IO and the halt IO supports in version 12 In version 12 (April 24, 2009), MFNetDisk supports the halt and clear IO MF commands. Before version 12, halt IO was disabled to run. To enable this, each IO ran with special attribute which eliminate the halt IO but eliminate also MVS control on many MF events. This is now changed, MFNetDisk IO run more likely as any other real device IO run. All MF events are handled now as it handles for standard IO. The reason to support halt IO was to make the MFNetDisk devices as standard device as possible. Adding this feature, fix problems, which disable MVS to control swapping, canceling of jobs the way it should be. Now MVS take control for all the MF events. Halt IO in normal situation, not suppose to happen. This can happen for IO which was pending for long time (timeout). Halt IO, function, is to purge pending IO request in error. MFNetDisk adds new message MPC044I to notify the user about the halt IO condition. The halt IO for normal situation, not suppose to happen even when canceling job, but in our example, it happened because I run many IO with many CIOD aliases with only 5 tasks. The canceling took time because in my test I ran 5 tasks which handle 20 jobs, each with more than 100 CCW chain. I increased the TASKS parameter to 8 from 5, and the halt IO messages, stopped. MFNetDisk takes few actions when it encounters the halt IO condition. It will halt the CCW chain for pending IO and also will notify the user about the event. If the reason for the halt is the low tasks number, the user may want to increase this number. In other events the halt IO can be a normal event done because of missing connection to remote PC.

260

Page 261: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

IEE301I CHKLOC.CHKLOC CANCEL COMMAND ACCEPTED IEA989I SLIP TRAP ID=X33E MATCHED. JOBNAME=*UNAVAIL, ASID=003A. MPC044I HALT IO DEV <0381> CODE <FD> IEF450I CHKLOC CHKLOCA - ABEND=S222 U0000 REASON=00000000 660 TIME=23.37.16

261

Halt IO after canceling a job and tasks number is low.

Page 262: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk files support AWS files. AWSCKD format is supported by IBM and other MF emulated software companies. MFNetDisk adds support to convert AWS files to MFNetDisk PC Files and the other way. Currently, MFNetDisk does not supporting AWS compressed AWS file. So, easily you can work with real MF with the MFNetDisk PC files format, and when you need, you can convert it to AWSCKD file format with a script. To convert AWS and MFNetDisk files, run the PCTool scripts in MODIFY->SYS->AWSCKD menu items. These items include Display, and creating AWS from MFNetDisk files, and creating MFNetDisk files from AWS files.

262

Page 263: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Sample: creating new AWSCKD file from MFNetDisk PC file.

263

Page 264: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

VTOC journaling (©) Everyone in the open systems or MF feel the fear after deleting files by mistake. In open system there are some products which try to undelete the files. In MVS as far as I know nothing. As system programmer in the past, I received many phones, the people just beg me to try to recover the files. I was hopeless to them. Nobody remember where the file was. What the file location in the disk, just nothing. And even if they know, how I am going to recover the file? I am sure that many users will be delighted to know that now to un delete a MVS file is a matter of seconds. I think that this is faster and more reliable than trying to recover PC file in PC. MFNetDisk can do it for you. MFNetDisk supports VTOC journaling to real 3390 disks and to virtual 3390 disks. That means that any MVS devices can have VTOC journaling done in MFNetDisk. To have VTOC journaling to real device, replicator PC Device must be defined to the real device (Using SYNCDEV MVS parameter). The emulator PC devices have VTOC journaling automatically. Using the VTOC journaling for the emulation have zero overhead. All the VTOC journaling is done in PC. Using the VTOC journaling has small overhead. PC manages all the journaling. The VTOC files are kept in PC but reading the VTOC files are done in MVS by the PC. To have VTOC journaling to replicator and emulator, you must run the script which set this feature on. Using this feature, enable you to undelete any file type you want, VSAM and standard files.

264

Page 265: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

VTOC journaling for real 3390 using the replication MFNetDisk supports the VTOC journaling for real disk by using the replication feature. MFNetDisk emulator PC devices have this feature automatically with zero overhead. To support the VTOC journaling to real 3390 disks, you must use the replication MVS parameter (SYNCDEV) which point to the MVS drive to be replicated and VTOC journaling. If you really do not like to have replication of real disk in PC using PC file mirror device, than you can skip the step to define a mirror to the PC Device and by that you will have a VTOC journaling without having mirror with the data of a full real 3390 disk. To use the VTOC journaling verify that the global VTOC journaling is set ON.

265

MFNetDisk sends to PC the tracks which were updated. If the track belongs to the VTOC, the MFNetDisk PC Server will create new VTOC file with the image of the new VTOC file.

Page 266: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

VTOC journaling for real 3390 using the emulation

By define the emulator PC Device you automatically can use the VTOC journaling if the global set of the VTOC journaling is set on. MFNetDisk supports the VTOC journaling for MFNetDisk emulation 3390 by creating a new VTOC image if there is update to the VTOC file and the updates change the allocation extents of a file (file deleted, new extent or new last TTR uses for file). The default is that the VTOC featuring is inactive for the emulation and for the replication. MFNetDisk support global setting of the VTOC journaling. If it set on, than all the emulation and replication will have this feature. The VTOC journaling files are kept in folder VTOC. You can check these files and their attributes. To activate the VTOC journaling use the PC Tool. Select MODIFY->VTOC->VARY->ON.

266

Page 267: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

267

Page 268: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk keeps the VTOC files by default for 7 days. The VTOC files hold small space and that is why this limitation exists. MFNetDisk takes action after the VTOC retention days expired. After these days over, MFNetDisk will delete the files created before 7 days. MFNetDisk enable you to change the retention days. You can set the value to 0 days or to unlimited days. I think that a fair value is 3-7 days depend on the VTOC space which is required to keep all the VTOC files in the VTOC folder. To change the VTOC retention days, use PCTool, select MODIFY->VTOC->VTOCRETAINDAYS and set the value you like. If you do not like this feature you can set it OFF. Again this is a global setting. Set it OFF will disable this feature for all the 3390, real or virtual. MFNetDisk enables you to display the VTOC files content in case of emergency or just validating contents. DISPLAY->VTOC->DSTATUS displays the status of the VTOC journaling feature. If it active it will display the VTOC retain days. DISPLAY->VTOC->DFILEINFO displays the VTOC entries which match the criteria you select. You can set generic MVS file name, like FILE=SYS1.* or full MVS file name like FILE=SYS1.LINKLIB. You can set generic VOLSER parameter like VOL=MPC* or full VOLSER parameter like VOL=MPC001. This script checks all the VTOC files which meet the script criteria. The display includes the extents and more file attributes formatted from the DSCB1 VTOC block.

268

Page 269: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

DISPLAY-VTOC->IFFILEDATAOK displays the status of a file from the moment the MVS file was deleted until now. Fist it will check the last VTOC file which the file was exist in the volume. Than it continue to check for newer VTOC files for new files which was allocated in the same volume and verify if the new files used (overlapping) the disk extents of the file which was deleted. It will display if the file which was deleted can be recovered.

269

Page 270: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

.

270

Page 271: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Undelete files using the VTOC journaling (©) All of us can make mistake by delete file by mistake. MFNetDisk enables easy way to un delete MVS file in seconds if the space was not reallocated and used by other files in the same volser. MFNetDisk can undelete all files type, VSAM and regular files and SMS NONVSAM file.

271

Page 272: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Undelete any file • Using DISPLAY->VTOC->DFILEINFO, Verify that the file information

extracted from DSCB is OK with the file you want to delete. • For VSAM files, verify that the file contain VVRLEN great than zero

and the cluster name is OK. If the VVRLEN equal zero, than MFNetDisk will not be able to undelete your VSAM file.

• For NONVSAM SMS file to be undeleted, verify that the file contain VVRLEN great than zero and the NVR with the file name is OK. If the VVRLEN equal zero, than MFNetDisk will not be able to undelete your NONVSAM SMS file.

• Check if the file which was deleted can be undeleted. • Run script DISPLAY-VTOC->IFFILEDATAOK this will check if the

file space was overlaid by new files. • (Optional) Vary the Volser offline from MVS to prevent other user to use

this disk. • Run script MODIFY->VTOC->VTOCUNDELETE. • If the script runs OK, continue. • Run MVS job DSFRFMT if the volser is online, or DSFFMTA if the

volser is offline, from the SAMPLIB library. This will update the VTOC with the new files undeleted by the PC script VTOCUNDELETE.

• If the file is VSAM or SMS, run the IDCAMS RECATALOG job. See example later.

• After running the DSFRFMT job which is an ICKDSF program with the parameters REFORMAT parameter, verify that it ends OK and you done. Check your file by using the MVS browser and verify its contents.

272

Page 273: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Additional information for undelete VSAM file • To undelete VSAM file you need to undelete the VSAM components,

meaning DATA and INDEX if KSDS. • Using DISPLAY->VTOC->DFILEINFO, Verify that the VSAM files

you like to undelete contain VVRLEN > 0 for both the data and the index components.

• After you run the script VTOCUNDELETE for all components, run DSFRFMT.

• Check if the file can be seemed in the VTOC using ISPF option 3.4. • Run IDCAMS to re catalog the cluster and its components. Member

VSRECATE for ESDS and VSRECATK for KSDS in SAMPLIB. Multi volumes file • Run DFILEINFO to check all the file extents allocated in all volumes. • Undelete all the files in each volume and run the DSFRFMT. • The script output displays all the files in all volumes. All the files with

the same name which create a one file in multi volumes are what you need to look. You can search again with the same script with specify the full DSNAME to receive a smaller output with the required data.

• Search for VOLSEQ for all the files in the volumes. The sequence of VOLSEQ is the order you need to re catalog the multi volumes file.

273

Page 274: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

ICKDSF and refreshing the VTOC ICKDSF with REFORMAT REFVTOC job can run with the device offline or online. Run DSFRFMT job if the device is online. Run DSFRFMTA job if the device is offline. This wills require building the index VTOC using BLDIXB job after the job is end. These jobs are in SAMPLIB library. In both ways it disables the index VTOC. But with the device online (DSFRFMT), it will rebuild the index VTOC automatically. If you use the ICKDSF with the offline device, you can run the ICKDSF BUILDIX ICKDSF (BLDIXB) job to rebuild the index VTOC. //IBMRFMT JOB 0,AAA,CLASS=A,MSGCLASS=X //REFRESH1 EXEC PGM=ICKDSF //SYSPRINT DD SYSOUT=* //VOLUME DD UNIT=3390,DISP=OLD,VOL=SER=MPC000 //SYSIN DD * REFORMAT DDNAME(VOLUME) VERIFY(MPC000) REFVTOC /* //*

Refresh the VTOC using device in online status. //IBMRFMT JOB 0,AAA,CLASS=A,MSGCLASS=X //REFRESH1 EXEC PGM=ICKDSF //SYSPRINT DD SYSOUT=* //*VOLUME DD UNIT=3390,DISP=OLD,VOL=SER=MPC000 //SYSIN DD * REFORMAT UNITADDRESS(0300) VERIFY(MPC000) REFVTOC /*

274

Refresh the VTOC using device in offline status.

Page 275: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

//BLDIXB JOB 0,AAA,CLASS=A,MSGCLASS=X //* RETURN THE VTOC TO INDEX VTOC //STEPNAME EXEC PGM=ICKDSF,PARM='NOREPLYU' //SYSPRINT DD SYSOUT=X //DDCARD DD UNIT=(3390,,DEFER),VOL=(PRIVATE,SER=MPC000), // DISP=OLD //*DDCARD DD UNIT=(3390,,DEFER),VOL=(PRIVATE,SER=MPC000), //* DSN=SYS1.VTOCIX.MPC000,DISP=(NEW,KEEP), //* SPACE=(TRK,10,,CONTIG) //SYSIN DD * BUILDIX DDNAME(DDCARD) IXVTOC

275

Build index VTOC if it was disabled using the REFORAMT REFVTOC with offline device.

Page 276: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

$HASP373 SHAI1RFM STARTED - INIT 1 - CLASS A - SYS JJ02 IEF403I SHAI!RFM- STARTED - TIME=21.56.20 MPC033I RECONECT TO PC ,<WRITE ,000032> ICK502I BUILDIX FUNCTION STARTED IEC604I VTOC CONVERT ROUTINE ENTERED ON 0300,MPC000,DOS ICK503I 0300 REQUEST RECEIVED TO CONVERT VTOC TO IXFORMAT ICK504I 0300 VTOC FORMAT IS CURRENTLY OSFORMAT, REQUEST ACCEPTED 09 ICK508A 0300 SHOULD CONVERSION PROCEED? REPLY U TO CONTINUE, ELSE T R 9,U IEE600I REPLY TO 09 IS;U ICK513I 0300 BUILDIX PROCESSING COMPLETED: VTOC IS NOW IN IXFORMAT MPCLOGA #01 REFRESH1 ICKDSF - COMP CODE=R0000

Run the ICKDSF REFORMAT job to refresh the VTOC using online device.

276

Page 277: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The VTOC Journaling and undelete problem for replication device MFNetDisk supports the VTOC journaling and undelete to Emulator PC Device (DEVICE in MVS) and for Replicator PC Device (SYNCDEV in MVS). The Emulator is the virtual 3390 device in MVS which MFNetDisk emulates it as regular 3390 device. The Replication is mirroring real 3390 to PC. The Emulator is synchronizing IO, the Replicator is asynchronies replication. The Emulator makes the VTOC journaling without delay. The replication receives a request from MVS to journaling in a small delay (few seconds). The Emulator VTOC journaling is always up-to-date. The Replication can have delay of few seconds and worse if the TCP connection failed, that means that the real 3390 disk continues to work for hours without caring to the mirroring or the VTOC journaling. Using script DISPLAY->VTOC->DFILEINFO you can check when the last time the VTOC journaling updates specific file. If you verify that the TCP connection works fine (MFNetDisk will notify if the TCP connection has error) then the VTOC journaling will work fine if and when you need it.

277

Page 278: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Check the date for Replication PC Device.

278

Page 279: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Undelete your file. Specify the full DSNAME and the full VOLSER.

279

Page 280: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

280

Multi volumes file required re catalog all the files in the volumes to one file in the sequence of the VOLSEQ.

Page 281: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

//SHAI1RCT JOB 0,XXX,CLASS=A,MSGCLASS=X //STEP1 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=X //SYSIN DD * DEFINE CLUSTER - (NAME(SHAI1.VMPC001.ESDS) - VOLUMES(MPC001) - NONINDEXED - RECATALOG) - DATA (NAME(SHAI1.VMPC001.ESDS.DATA) VOLUMES(MPC001) ) - CATALOG(CATALOG.OS390.MASTER)

Re catalog VSAM ESDS after undelete the DATA. Member name VSRECATKE. //SHAI1RCT JOB 0,XXX,CLASS=A,MSGCLASS=X //STEP1 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=X //SYSIN DD * DEFINE CLUSTER - (NAME(SHAI1.VMPC001.KSDS) - VOLUMES(MPC001) - INDEXED - RECATALOG) - DATA (NAME(SHAI1.VMPC001.KSDS.DATA) VOLUMES(MPC001) ) - INDEX (NAME(SHAI1.VMPC001.KSDS.INDEX) VOLUMES(MPC001) ) - CATALOG(CATALOG.OS390.MASTER)

Re catalog VSAM KSDS after undelete the DATA and the INDEX. Member name VSRECATK.

281

Page 282: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

//SHAI1RCT JOB 0,XXX,CLASS=A,MSGCLASS=X //* RECATLOG SMS NONVSAM FILE //STEP1 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=X //SYSIN DD * DEFINE NONVSAM - (NAME(SHAI1.SMS5) - DEVICETYPE(3390) - VOLUMES(CC0003) - RECATALOG) /*

Re catalog NONVSAM SMS file after undelete. Member name SMSRECAT.

282

Page 283: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

SMS file information with NVR data.

283

Page 284: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

VTOC undelete problem and IDCAMS delete VVR The undelete action involve in update data to the VTOC and the VVDS file in needed. All DUMP/RESTORE update the VTOC and the VVDS if needed. In case of problem when there is orphan DSCB or VVR in the VVDS, use the delete VVR IDCAMS program. During the development of the undelete I recover any error in DSCB or VVR problem. This program makes a miracle. Use it if you have problem with DSCB or VVDS. I put a sample in my SAMPLIB library, DELVVR.

//SHAI1DVR JOB 0,XXX,CLASS=A,MSGCLASS=X //*DEL VSAM DSCB+VVR //STEP1 EXEC PGM=IDCAMS //DD1 DD VOL=SER=SHAR02,UNIT=3390,DISP=OLD //SYSPRINT DD SYSOUT=X //SYSIN DD * DELETE - SHAI1.VSHAR02.KSDS.INDEX - FILE(DD1) - VVR /*

284

Page 285: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk and extended address volume (EAV) EAV disks enable the user to run with disk which can be allocated with more than hexadecimal FFFF cylinders. This change is a big change because all the software used CCCC HHHH hexadecimal value which forces the CCCC to be limited to FFFF and the HHHH to be limited to 0E hexadecimal value. MFNetDisk supports now EAV but need to be tested by more by you. Currently the VTOC undelete is not supported for EAV disks because of the new DSCB which are used for the EAV (DSCB 8 and 9) but soon I will support it. MFNetDisk requires that you enable this feature, to enable the EAV device run script MODIFY->SYS->EAVDISK->ENABLE. The default for EAV is disabled.

Minimum allocation size this value is defined in the DSCB 04 in field DS4MCU. This value is set by MVS to decimal 21. This value means the minimum allocation for file. So if you defined before VTOC size of one cylinder you must define the VTOC now at least 21 cylinders. For defining EAV, you must define the volume size as a factor of 21. To define 80000 cylinders for EAV, you must change the cylinders value to 80010. This will make factor of 21. MFNetDisk will guide you about the right new number close to your number to make the cylinders number correct.

285

Page 286: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk help you to allocate the right CYL value. You specify 80000 cylinders, MFNetDisk ask you to change the value to 80010. You must be aware that if you define EAV device, verify that your MF host can support the new EAV devices. If you create EAV device to be used by MVS, you may find out the MVS aborts you job when you try to access the EAV device with JCL error IEF021I. The reason is that you must notify MVS that you can access the EAV device. This can be done by console command SETSMS USEEAV (YES). The JCL you receive is IEF021I, meaning from IBM messages “ALLOCATION WAS PREVENTED FROM USING EAV DEVICES BECAUSE OF THE USEEAV (NO) | SETTING IN THE IGDSMSXX PARMLIB MEMBER.” IEF021I CHK4K CHK4K OUT EXTENDED ADDRESS VOLUME USE PREVENTED DUE TO SMS USEEAV(NO) SPECIFICATION.

The JCL error received if USEEAV equal to no.

286

Page 287: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Adding a new EAV device is the same as adding non EAV emulator pc device only the CYL parameter is higher than hexadecimal FFFF. To add EAV or non EAV run script CONFIGURE->DEV->ADDNEWEMULATORDEV.

Adding new EAV device will change the init job of the new EAV device. I create for you new member in my SAMPLIB file to init the new EAV volume. The only change in the SAMPLIB file is the VTOC size. The new size is 400 tracks which is more than 21 cylinders multiple by 15 tracks per cylinder. //IBMDSF2 JOB 0,XXX,CLASS=A,MSGCLASS=X //ICKDSF EXEC PGM=ICKDSF //SYSPRINT DD SYSOUT=* //SYSIN DD * INIT - UNIT(0303) - NOCHECK - NOVERIFY - VOLID (MPC003) - DEVICETYPE(3390) - VTOC (1,0,400)

Parameters required initializing EAV disk.

287

Page 288: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk PRO and stacked CCW MFNetDisk PRO is version base on the stable former MFNetDisk standard version 12. Performance was the key issue for MFNetDisk PRO. The previous MFNetDisk run inefficient because MFNetDisk uses the normal handling of CCW meaning send to PC each CCW and the PC returns the results. High interactions with TCP worsen the IO performance. The MFNetDisk PRO task was to reduce the TCP load by stacking the CCW and reduce the interaction with TCP significantly. Some CCW required result from PC before continue to stack more CCW, MFNetDisk doing so by checking attribute for each CCW and stack CCW until the point of special CCW which required PC IO result or when the buffer size is fully used. Another rule which MFNetDisk use is max CCW which can be stacked per buffer. MFNetDisk uses the value of 100. That means that MFNetDisk stacks until 100 CCW before it stop to stack. Why 100? Because this number look to me OK. Stacking the CCW is not a simple mission. The MF is base on analyze each CCW which received from PC. Some big problem can be the PCI bit which required interrupt in the middle of IO chain. Other problem is expected status, nobody can be sure if CCW will end OK or with error. OK, finally I was happy with the technique I used to implement the stack CCW. MFNetDisk stacking is complicate feature. When I finish implementing the stacking CCW, new era come to MFNetDisk. MFNetDisk PRO enables unlimited possibilities for additional improvement to the code. Easily learning famous CCW chaining can lead me to add some code to improve the IO for all chain in general and to specific chain which does not perform well. I improve the IEBCOPY compression by 40% just by understand how the MVS implements the IO for compression of PDS. The way to do that is to check special chaining which can be done in PC without being force to interact with MF IO routines. The buffer MFNetDisk use to send and receive data from PC is called TCPBUFF. PC and MF must obey the same format of data to be used. In PC, MFNetDisk can work with MFNetDisk PRO with stack CCW and MFNetDisk standard which run one CCW per TCPBUFF TCP operation. MFNetDisk PRO required big change in the format of the TCPBUFF to enable me to handle many CCW in one TCP write and read.

288

Page 289: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk uses script DISPLAY->DEV->CCWDONE do display statistic about how well the stack CCW work for specific PC device. In the example, CCW done 4727, number of TCPBUFF sent to PC 267, I compute the average number of CCW per TCP for you by divided the CCW done by TCPBUFF sent to PC. The result is 17.7 CCW per IO. Be aware that this number contained loop for SEARCHID CCW to locate specific block in disk.

289

Page 290: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

DISPLAY->DEV->TCPBUFF really takes you to the inside of each TCPBUFF and the CCW contained in the TCPBUFF. I copy and paste the output of this important data. Easily you can find out that seven CCW sent with one TCPBUFF. The BUFF2REC is the buffer the PC receives from MF and the BUFF2SEND is the buffer PC sends to MF after processing the CCW. I know that many people when they are create something write in the introduction that they want to thank the wife (if they do not mention the wife, many problem expect to the writer). But I want just to thank God who helps me to create what I done with MFNetDisk because really the simple true is that without God nothing was possible. The following data is the output of DISPLAY->DEV->TCPBUFF.

290

Page 291: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

291

**BUFF2REC** NowRCV 1 for IO RCVPW=abe7, Reqid=1, rcvdl=e0, rcvccwnum=7 ccwfmt=0,rcvflg1=40, rcvflg2=0 rcvv=1, rcvvoff=40, RCVVID=3536 rcvvdl=6, rcvvf2=0,rcvvccwra=ffd420, rcvvccwcmd=7,rcvvccwdl=6, rcvvccwflg=40, rcvvf3=00, rcvvticrcvv=0 Data= 000000: 0000009C 0008 rcvv=2, rcvvoff=62, RCVVID=3536 rcvvdl=10, rcvvf2=0,rcvvccwra=ffd428, rcvvccwcmd=63,rcvvccwdl=10, rcvvccwflg=40, rcvvf3=00, rcvvticrcvv=0 Data= 000000: 50CC0000 00000000 00730000 00E0000E rcvv=3, rcvvoff=8e, RCVVID=3536 rcvvdl=1, rcvvf2=0,rcvvccwra=458988, rcvvccwcmd=23,rcvvccwdl=1, rcvvccwflg=60, rcvvf3=00, rcvvticrcvv=0 Data= 000000: 4F rcvv=4, rcvvoff=ab, RCVVID=3536 rcvvdl=5, rcvvf2=0,rcvvccwra=458990, rcvvccwcmd=31,rcvvccwdl=5, rcvvccwflg=60, rcvvf3=80, rcvvticrcvv=4 Data= 000000: 009C0008 0F rcvv=5, rcvvoff=cc, RCVVID=3536 rcvvdl=0, rcvvf2=0,rcvvccwra=4589a8, rcvvccwcmd=e,rcvvccwdl=7ff8, rcvvccwflg=6c, rcvvf3=00, rcvvticrcvv=0 rcvv=6, rcvvoff=e8, RCVVID=3536 rcvvdl=0, rcvvf2=0,rcvvccwra=4589b0, rcvvccwcmd=92,rcvvccwdl=8, rcvvccwflg=40, rcvvf3=00, rcvvticrcvv=0 rcvv=7, rcvvoff=104, RCVVID=3536 rcvvdl=0, rcvvf2=0,rcvvccwra=4589c0, rcvvccwcmd=22,rcvvccwdl=1, rcvvccwflg=20, rcvvf3=00, rcvvticrcvv=0 ***************

Page 292: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

292

**BUFF2SEND** NowRCV 1 for IO RCVPW=abe7, Reqid=1, rcvdl=216d, rcvccwnum=7 ccwfmt=0,rcvflg1=40, rcvflg2=0 rcvv=1, rcvvoff=40, RCVVID=3536 rcvvdl=0, rcvvf2=0,rcvvccwra=ffd420, rcvvccwcmd=7,rcvvccwdl=6, rcvvccwflg=40, rcvvf3=00, rcvvticrcvv=0 Csw=00FFD4280C000000 rcvv=2, rcvvoff=5c, RCVVID=3536 rcvvdl=0, rcvvf2=0,rcvvccwra=ffd428, rcvvccwcmd=63,rcvvccwdl=10, rcvvccwflg=40, rcvvf3=00, rcvvticrcvv=0 Csw=00FFD4300C000000 rcvv=3, rcvvoff=78, RCVVID=3536 rcvvdl=0, rcvvf2=0,rcvvccwra=458988, rcvvccwcmd=23,rcvvccwdl=1, rcvvccwflg=60, rcvvf3=00, rcvvticrcvv=0 Csw=004589900C000000 rcvv=4, rcvvoff=94, RCVVID=3536 rcvvdl=0, rcvvf2=0,rcvvccwra=458990, rcvvccwcmd=31,rcvvccwdl=5, rcvvccwflg=60, rcvvf3=00, rcvvticrcvv=0 Csw=004589A04C000000 rcvv=5, rcvvoff=b0, RCVVID=3536 rcvvdl=20a0, rcvvf2=0,rcvvccwra=4589a8, rcvvccwcmd=e,rcvvccwdl=7ff8, rcvvccwflg=6c, rcvvf3=00, rcvvticrcvv=0 Data= 000000: 47F0F138 2BC5C4C7 E2D7D3C3 E240F1F1 Csw=004589B00C005F58 rcvv=6, rcvvoff=216c, RCVVID=3536 rcvvdl=8, rcvvf2=0,rcvvccwra=4589b0, rcvvccwcmd=92,rcvvccwdl=8, rcvvccwflg=40, rcvvf3=00, rcvvticrcvv=0 Data= 000000: 009C0008 10000060 Csw=004589B80C000000 rcvv=7, rcvvoff=2190, RCVVID=3536 rcvvdl=1, rcvvf2=0,rcvvccwra=4589c0, rcvvccwcmd=22,rcvvccwdl=1, rcvvccwflg=20, rcvvf3=00, rcvvticrcvv=0 Data=

Page 293: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

000000: 71 Csw=004589C80C000000 *********END IO

293

Page 294: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk PRO high stability even in the time of errors MFNetDisk version 12 was the basic for MFNetDisk PRO. Creating the PRO version force me to look more deeply inside the code and change some code for better code especially from the point of view of stability and data integrity. MFNetDisk supposes to handle any crazy IO error condition which the IO of MF creates to MFNetDisk. Many users work with my product and they are happy with it. I know that in some place an IO error will send to MFNetDisk and create condition which MFNetDisk error recovery will fail to recover. To create test for MFNetDisk which create unexpected condition, I ran jobs and MF command like varying device offline and online with active PC and with suspend PC. I was happy with the results, MFNetDisk easily control this condition. The next step to create crazy condition was to zap the UCB flags with random value. I will demonstrate to you how MF and MFNetDisk react to this action which in real life can not happen in respected place. The colored lines is what important to understand that even when I zap the UCB with crazy value, MFNetDisk and MF successfully return the disk to control. In this example MFNetDisk PC and MFNetDisk MF was active when the zapping done.

294

S MULTOP,V=MPC000 $HASP100 MULTOP ON STCINRDR IEF695I START MULTOP WITH JOBNAME MULTOP , GROUP SYS1 $HASP373 MULTOP STARTED IEF403I MULTOP - STARTED - TIME=11.32.22 MULTOP: FIRST CARD NEED BE -1D- MULTOP: LEARNING FORMAT... MULTOP: HOWFMT ENDED BAD ASSUME KL=0,DL=4096 MULTOP: MAXBLK=0000000C RKDD=01001000 MULTOP: INIT ENDED FOR CMD=15 HAPPY TO END CMD=15 MULTOP: MAXBLK=00000001 RKDD=01007D00 MULTOP: INIT ENDED FOR CMD=1D HAPPY TO END CMD=1D MULTOP: MAXBLK=00000001 RKDD=01007D00 MPC017E PROCESS CCWS ERROR, <PURGE IO DONE-BADIO2 > MPC017E PROCESS CCWS ERROR, <IO PURGE BY MVS > MPC050I 0300 SET TO ERROR. FIX TCP. DO "F MPC,DEV=ONL" AND "DS P,0300, 1"

Page 295: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

IOS000I 0300,**,SIM,**,**06,,,MPC000,MULTOP IEC211I 314-04,IFG0200V,MULTOP,MULTOP,DASD,0300,MPC000,SYS11170.T113222. RA000.MULTOP.AA.H01 IEC999I IFG0TC0A,IFG0TC0B,MULTOP ,MULTOP ,DEB ADDR=8D307C ,DSN = SYS11170.T113222.RA000.MULTOP.AA.H01 CC IEF283I SYS11170.T113222.RA000.MULTOP.AA.H01 NOT DELETED 4 IEF283I VOL SER NOS= MPC000. IEF404I MULTOP - ENDED - TIME=11.34.25 $HASP395 MULTOP ENDED F MPC013,DEV=ONL PROCESS MODIFY DS P,0300,1 IEE459I 11.35.52 DEVSERV PATHS 426 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS RTYPE SSID CFW TC DFW PIN DC-STATE CCA DDC CYL CU-TYPE 0300,33909 ,O,000,MPC000,00=+ 07=+ ************************ SYMBOL DEFINITIONS ************************ O = ONLINE + = PATH AVAILABLE REQ ENDED OK

The second example was with varying online MFNetDisk disk while the PC is suspended. After few minutes I start to zap the UCB of the devices, MF and MFNetDisk controls the situation correctly. The following data explain what happen in MF. Again, the yellow lines are what MFNetDisk reaction to the crazy situation.

295

V 300,ONLINE MPC999I SYSTEM RESET TO PC IEE302I 0300 ONLINE V 300,OFFLINE IEF281I 0300 NOW OFFLINE V 300,ONLINE MPC999I RETRY TCP CONNECTION LOST MPC999E TCP TIMEOUT TIMER POSTED MPC999E TCP TIMEOUT ACCESSING PC DATA MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > MPC049I 0300 SET TO NOPATH. FIX TCP. DO "DS P,0300,1" OR TRY "F MPC, DEV=ONL" MPC999E TCP TIMEOUT TIMER POSTED MPC999E TCP TIMEOUT ACCESSING PC DATA

Page 296: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > IEE103I UNIT 0300 NOT BROUGHT ONLINE 150 IEE763I NAME= IECVIOPM CODE= 0000002000000000 IOS563I DEVICE IS IN BOXED STATE IEE764I END OF IEE103I RELATED MESSAGES MPC999E TCP TIMEOUT TIMER POSTED MPC999E TCP TIMEOUT ACCESSING PC DATA MPC028E I/O ERROR <IPA-00-TCP CONNECT FAILED> MPC028E I/O ERROR <IPA-00-WRT TCP FAILED > MPC999I RETRY TCP CONNECTION LOST MPC017E PROCESS CCWS ERROR, <IO PURGE BY MVS > MPC050I 0300 SET TO ERROR. FIX TCP. DO "F MPC,DEV=ONL" AND "DS P,0300, 1" F MPC013,DEV=ONL PROCESS MODIFY DS P,0300,1 REQ ENDED OK IEE459I 10.54.13 DEVSERV PATHS 163 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS RTYPE SSID CFW TC DFW PIN DC-STATE CCA DDC CYL CU-TYPE 0300,33909 ,F,000, ,00=+ 07=+ ************************ SYMBOL DEFINITIONS ************************ F = OFFLINE + = PATH AVAILABLE DS P,300,1 IEE459I 10.54.24 DEVSERV PATHS 166 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS RTYPE SSID CFW TC DFW PIN DC-STATE CCA DDC CYL CU-TYPE 0300,33909 ,F,000, ,00=+ 07=+ ************************ SYMBOL DEFINITIONS ************************ F = OFFLINE + = PATH AVAILABLE MPC999I MVS CONFIG FILE TRANSFER OK TO PC V 300,ONLINE IEE302I 0300 ONLINE V 303,ONLINE IEE302I 0303 ONLINE

296

Page 297: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk PRO performance and QIO command MFNetDisk without good IO monitor is a problem to check if new feature help to the performance or make damage. I create new monitor to MFNetDisk which can give you good idea if the MFNetDisk run OK or not. Until now I receive numbers but specific number like RMF give was missed. So, I create the QIO modify command. First the QIO check the MFNetDisk tasks which receive IO request from MVS and run it until the end. The MFNetDisk task finishes its work when the MF IO ended with IO status. The MFNetDisk task only run IO request from start to end. In RMF each time MFNetDisk task and the IO, RMF will display another IO ended. MFNetDisk does not use connect time disconnect time pending and more. MFNetDisk make work which include communicate with the PC. To MFNetDisk user only one number is important, the elapse time for one IO. QIO is a simple but accurate tool to give this info. Let see example. I take down the PC Server. Why? Just to make it interesting. I send DS P, 300, 1. This command will check the status of IO device. In our case the 300 is MFNetDisk. So, MFNetDisk start to do its IO retries, and to make it easy, I start the PC MFNetDisk. As expected, MFNetDisk successfully recover the TCP problem. Now, MFNetDisk keep IO statistic for the MFNetDisk devices, tape and disk. I decide also to run MF varies online command. Now, I check the IO performance, the same as IBM RMF checks its IO performance. So, MFNetDisk uses what it have now, the QIO command. The statistic is very bad for MFNetDisk, elapse time for IO for task one is 2172 MS. That is OK, do not be panic, MFNetDisk check the elapse time, and remember we had a TCP problem one second ago. So, to verify the normal IO elapse time, I run job which doing 4K IO to device 300. I again run VARY ONLINE command without any good reason. I ran again the QIO=Q and the elapse time is now 3 MS. If you like to check special IO chain from any program you like, you can try to clear the old statistic. You can do this by run QIO=C. Now I ran the QIO=Q to verify that the counter are zero. So, this is the QIO new command. Use it before send me feedbacks if you see improvement of worsen performance.

297

Page 298: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Be sure that the QIO is only the beginning to better monitor tool. DS P,300,1 IEF196I IOS071I 0300,00,*MASTER*, CLEAR SUBCHANNEL INTERRUPT MISSING IOS071I 0300,00,*MASTER*, CLEAR SUBCHANNEL INTERRUPT MISSING 154 IEF196I IOS071I 0300,00,*MASTER*, CLEAR SUBCHANNEL INTERRUPT MISSING IOS071I 0300,00,*MASTER*, CLEAR SUBCHANNEL INTERRUPT MISSING 156 IEF196I IOS071I 0300,00,*MASTER*, CLEAR SUBCHANNEL INTERRUPT MISSING MPC044I HALT IO DEV <0300> CODE <FC> MPC999I SYSTEM RESET TO PC IEE459I 14.41.46 DEVSERV PATHS 171 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS RTYPE SSID CFW TC DFW PIN DC-STATE CCA DDC CYL CU-TYPE 0300,33909 ,O,000,MPC000,00=+ 07=+ ************************ SYMBOL DEFINITIONS ************************ O = ONLINE + = PATH AVAILABLE V 300,ONLINE IEE302I 0300 ONLINE F MPC013,QIO=Q PROCESS MODIFY TSK_IO=00000014,IO_RESP_TM =02172 MS TSK_IO=00000000,IO_RESP_TM =00000 MS REQ ENDED OK S CHK4K,V=MPC000 $HASP373 CHK4K STARTED IEF403I CHK4K - STARTED - TIME=14.42.48 +DCB=00007F48 DEB=008D3D84 MASK=.. +STRCCHH 00000003 ENDCCHH 00000003 BADFMT +END INIT V 301,ONLINE IEE302I 0301 ONLINE F MPC013,QIO=Q PROCESS MODIFY TSK_IO=00001668,IO_RESP_TM =00003 MS TSK_IO=00000027,IO_RESP_TM =00005 MS REQ ENDED OK F MPC013,QIO=C PROCESS MODIFY REQ ENDED OK F MPC013,QIO=Q PROCESS MODIFY TSK_IO=00001118,IO_RESP_TM =00003 MS TSK_IO=00000000,IO_RESP_TM =00000 MS REQ ENDED OK

298

Page 299: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Small change in the QIO=Q modify command. I add support to IOQ_TM new parameter. This value is the time from receiving the IO request from MVS, until the time MFNetDisk task starts to process the IO request. The IOQ_TM with high value may be indication that MFNetDisk need to have more TASKS to process the IO requests. f mpc013,qio=q PROCESS MODIFY TSKIO#=00000016,SRV_TM=000004 MS,IOQ_TM=000000 MS TSKIO#=00000000,SRV_TM=000000 MS,IOQ_TM=000000 MS TSKIO#=00000000,SRV_TM=000000 MS,IOQ_TM=000000 MS TSKIO#=00000000,SRV_TM=000000 MS,IOQ_TM=000000 MS REQ ENDED OK

299

Page 300: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk utilities Utility is a thread which runs in the PC MFNetDisk and makes service which may take long time and MFNetDisk does not displays its status in PC Device. Some important threads are not utilities. The initialize of PC file mirror, is thread which run for long time, but MFNetDisk displays its status in PC Device. When user runs utility, he needs to know the status of the utility anytime, and sometime to receive listing of the output. MFNetDisk control the utilities using scripts. Currently MFNetDisk uses the following utilities: CREATEAWSTAPEFROMMPCTAPE, CREATEMPCTAPEFROMAWSTAPE, CREATEAWSCKDFILEFROMPCDEVMIRROR, CREATEPCDEVMIRRORFROMAWSCKDFILE, LISTCCHHMISMATCH All these scripts run for long time and to enable the user to know the status of these scripts, script DISPLAYDISKUTILITY and DISPLAYTAPEUTILITY enable you to display the utility status and even to stop the utility. MFNetDisk supports utility which can run with PC Device or with tape. CREATEAWSTAPEFROMMPCTAPE and CREATEMPCTAPEFROMAWSTAPE run under tape. CREATEAWSCKDFILEFROMPCDEVMIRROR and CREATEPCDEVMIRRORFROMAWSCKDFILE and LISTCCHHMISMATCH run under PC Device. Run under tape mean that to see or to stop the utility you run script using DISPLAY>TAPE>UTILITY>DISPLAYTAPEUTILITY to display the status of your utility, or MODIFY>TAPE>UTILITY>STOPTAPEUILITY. Run under PC Device mean that to see or to stop the utility you run script using DISPLAY>DEV>UTILITY>DISPLAYDISKUTILITY to display the status of your utility or MODIFY>DEV>UTILITY>STOPDISKUTILITY.

300

Page 301: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Check if your replications mirrors are OK MFNetDisk supports utility which run on replication pc device and checks all the mirror to verify if all mirror are sync with the real 3390 disk. To start the utility, run DISPLAY>DEV>UTILITY>LISTCCHHMISMATCH. This utility check if all tracks in all mirrors are OK by checking the CRC. This utility create file which report all the mismatch tracks. The report includes the mismatch CC and HH and also the file name included in this CC HH. Be aware that the mirror must be the same as the real disk. If the real disk is system disk which include pages and other system files which start before MFNetDisk, it may be that some of the tracks of system files like JES2 checkpoint file, and more. You can stop the utility any time by running MODIFY>DEV>UTILITY>STOPDISKUTI. You can check at any time how the utility is doing by running DISPLAY>DEV>UTILITY>DISPLAYUILITY.

301

Page 302: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Run script LISTCCHHMISMATCH to verify all tracks mirrors sync with real disk.

302

DSN=CATALOG.MVSICFM.VZ10CAT.CATINDEX ------------------------------- Path=192.168.100.2:0aab, CRC=276CAE Path=c:\mpcdasd\, CRC=276F4E ***mismatch *** device 0080 mirror 01 CC 0077 HH 03 CRC 276f4e DSN=SYS1.OMVS.VAR Path=c:\mpcdasd\mirror, CRC=276F4E ***mismatch *** device 0080 mirror 02 CC 0077 HH 03 CRC 276f4e

Page 303: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

303

List all CCHH mismatch for replication pc device in file created by LISTCCHHMISMATCH.

DSN=SYS1.OMVS.VAR ------------------------------- Path=192.168.100.2:0aab, CRC=B7131 Path=c:\mpcdasd\, CRC=B7832 ***mismatch *** device 0080 mirror 01 CC 0077 HH 09 CRC b7832 DSN=SYS1.OMVS.VAR Path=c:\mpcdasd\mirror, CRC=B7832 ***mismatch *** device 0080 mirror 02 CC 0077 HH 09 CRC b7832

Page 304: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Implementation is success, learning is investment MFNetDisk PRO becomes PRO because of the stacked CCW new feature. Only reading variable length records cause me performance issue. Compression of PDS uses the variable length record reading. Why, because each member can end before end the block and this make the record as variable record. So, I decide to study and implement a better MFNetDisk process of PDS. Typical CCW for compression before using the PCI bit. This following CCW trace is MFNetDisk trace. This is the real sequence of CCW receive and process by MFNetDisk before I try a change in the code. What you see in the trace is that MFNetDisk did some trick with the PCI by asking the PCI routine of the access method to ignore the changing of CCW as MF is doing using the PCI. The CCWS before the trick are: SEEK DEFINE EXTENT SET SECTORE SEARCH ID READ KEY DATA (length 0X7FF8 with PCI bit on, bit 8 in the CCW flag). READ MT COUNT

304

READ SECTOR

Page 305: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

HOST=192.168.100.2 TaskId=3e29a ===>July 16,2011-23:21:00, CcwReqID=1, Ccwfmt=0 CCWReal=00ffc720, CCWCmd=07, CCWFlg=40, CCWLen=0006 Position: cc=3 hh=c r=3 enumpos=PosKey Data=00000003000C35366340000000000000 Csw=00FFC7280C000000 ===>July 16,2011-23:21:00, CcwReqID=1, Ccwfmt=0 CCWReal=00ffc728, CCWCmd=63, CCWFlg=40, CCWLen=0010 Position: cc=3 hh=c r=3 enumpos=PosKey Data=50CC000000000000000200000031000E Csw=00FFC7300C000000 ===>July 16,2011-23:21:00, CcwReqID=1, Ccwfmt=0 CCWReal=001da988, CCWCmd=23, CCWFlg=60, CCWLen=0001 Position: cc=3 hh=c r=3 enumpos=PosCount Data=6F353631600000000000000000001DA9 Csw=001DA9900C000000 ===>July 16,2011-23:21:00, CcwReqID=1, Ccwfmt=0 CCWReal=001da990, CCWCmd=31, CCWFlg=60, CCWLen=0005 Position: cc=3 hh=c r=3 enumpos=PosKey Data=0003000C0335360E6C00000000000000 Csw=001DA9A04C000000 ===>July 16,2011-23:21:00, CcwReqID=1, Ccwfmt=0 CCWReal=001da9a8, CCWCmd=0e, CCWFlg=6c, CCWLen=7ff8 Position: cc=3 hh=c r=4 enumpos=PosCount Data=09404040404040404040404040404040

305

Csw=001DA9B00C004C04 ===>July 16,2011-23:21:00, CcwReqID=1, Ccwfmt=0 CCWReal=001da9b0, CCWCmd=92, CCWFlg=40, CCWLen=0008 Position: cc=3 hh=c r=4 enumpos=PosKey Data=0003000C040033F435362220001DA9E8 Csw=001DA9B80C000000 ===>July 16,2011-23:21:00, CcwReqID=1, Ccwfmt=0 CCWReal=001da9c0, CCWCmd=22, CCWFlg=20, CCWLen=0001 Position: cc=3 hh=c r=4 enumpos=PosKey Data=A403000B050033F435362220001DA9C8 Csw=001DA9C80C000000 freetrk Task 3e29a cc 0003 hh 0c ix 0 ****End Of Chain****

I made many changes and tricks in MFNetDisk to make the CCW much faster for MFNetDisk. So, I decide to implement new feature which will let the standard PCI to change the CCWS as it is doing in normal real disk processing. This was a very complicate change but I wanted to check if the improvement will be significant I will go for it. To know what the PCI routine does with real disks look at the trace MFNetDisk done after letting the PCI to add CCWS. The PCI add on the flight READ KEY DATA CCW and READ MT READ COUNT CCW every time the bit of PCI is ON and the MF called it.

Page 306: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

This continues until END OF FILE of the PDS or END OF CYLINDER unit check status. Looking at the CCWREAL=00000000, this is the pre fetch MFNetDisk did. After MF called the PCI the new CCW READ KEY DATA and CCW READ MT COUNT will be added, and MFNetDisk will update the CCWREAL to the real ADDRESS in the CCW. After few days of writing and debugging the new feature I successfully run the compress. The result was poor. In most case the old way of process one block at a time was faster than making the pre fetch of record and reduce the accessing of the PC. Why this happen? The answer is simple, the PCI routine. MFNetDisk must wait to the PCI routine to end. If you continue to run without waiting for the PCI, the CCW may not be changed. So, I wait and check the indication for the PCI end. Without wait I see big improvement using compression of SYS1.LINKLIB. The improvement was of 30 percent. But most of the standard small to medium PDS size, there was not improvement and the response time was higher. Why I use my CCW trace and do not use GTF trace? As, you may known, MFNetDisk supports GTF trace. But I try to use GTF trace and GTF trace using the PCI become a mess. So, another good use for MFNetDisk. So, I keep my new code because you can not be sure when you will need it again.

306

As I said, implementation is success, study is investment.

Page 307: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

HOST=192.168.100.2 TaskId=20d ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=00ffc120, CCWCmd=07, CCWFlg=40, CCWLen=0006 Position: cc=33 hh=1 r=3 enumpos=PosCount Data=00000033000135366340000000000000 Csw=00FFC1280C000000 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=00ffc128, CCWCmd=63, CCWFlg=40, CCWLen=0010 Position: cc=33 hh=1 r=3 enumpos=PosCount Data=50CC000000000000003300000033000E Csw=00FFC1300C000000 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=00071988, CCWCmd=23, CCWFlg=60, CCWLen=0001 Position: cc=33 hh=1 r=1 enumpos=PosCount Data=00353631600000000000000000000719 Csw=000719900C000000 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=00071990, CCWCmd=31, CCWFlg=60, CCWLen=0005 Position: cc=33 hh=1 r=1 enumpos=PosKey Data=00330001023536924000000000000000 Csw=000719980C000000 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=00071990, CCWCmd=31, CCWFlg=60, CCWLen=0005 Position: cc=33 hh=1 r=2 enumpos=PosKey Data=00330001023536924000000000000000

307

Csw=000719A04C000000 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=000719d0, CCWCmd=92, CCWFlg=40, CCWLen=0008 Position: cc=33 hh=1 r=3 enumpos=PosKey Data=0033000103000018C33C41F001905830 Csw=000719D80C000000 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=000719a8, CCWCmd=0e, CCWFlg=6c, CCWLen=7ff8 Position: cc=33 hh=1 r=4 enumpos=PosCount Data=2080000000010010D4D7C3E7C3E64040 Csw=000719B00C007FE0 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=000719b0, CCWCmd=92, CCWFlg=40, CCWLen=0008 Position: cc=33 hh=1 r=4 enumpos=PosKey Data=00330001040000FB0004502D0008581D Csw=000719B80C000000 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=00000000, CCWCmd=0e, CCWFlg=68, CCWLen=7ff8 Position: cc=33 hh=1 r=5 enumpos=PosCount Data=80FA0100000000000000000000000000 Csw=000000080C007EFD ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=00000000, CCWCmd=92, CCWFlg=40, CCWLen=0008 Position: cc=33 hh=1 r=5 enumpos=PosKey Data=00330001050000161047E0B26A58E080 Csw=000000080C000000 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=000719a8, CCWCmd=0e, CCWFlg=6c, CCWLen=7ff8 Position: cc=33 hh=1 r=6 enumpos=PosCount Data=801502F5F6F9F5D7D4C2F0F140010709 Csw=000719B00C007FE2 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=000719b0, CCWCmd=92, CCWFlg=40, CCWLen=0008 Position: cc=33 hh=1 r=6 enumpos=PosKey Data=00330001060000153160000719A04C00 Csw=000719B80C000000 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0 CCWReal=00000000, CCWCmd=0e, CCWFlg=68, CCWLen=7ff8 Position: cc=33 hh=1 r=7 enumpos=PosCount Data=801484800100F5F6F9F6F2F3F4F0F040 Csw=000000080C007FE3 ===>July 16,2011-02:45:34, CcwReqID=1, Ccwfmt=0

Page 308: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

308

CCWReal=00000000, CCWCmd=92, CCWFlg=40, CCWLen=0008 Position: cc=33 hh=1 r=7 enumpos=PosKey Data=0033000107000014F800000000208000 Csw=000000080C000000 ===>July 16,2011-02:45:35, CcwReqID=1, Ccwfmt=0 CCWReal=000719a8, CCWCmd=0e, CCWFlg=6c, CCWLen=7ff8 Position: cc=33 hh=1 r=8 enumpos=PosCount Data=01000002000400000600000040002730 Csw=000719B00C007FE4 ===>July 16,2011-02:45:35, CcwReqID=1, Ccwfmt=0 CCWReal=000719b0, CCWCmd=92, CCWFlg=40, CCWLen=0008 Position: cc=33 hh=1 r=8 enumpos=PosKey Data=0033000108002730001535360E680000 Csw=000719B80C000000 ===>July 16,2011-02:45:35, CcwReqID=1, Ccwfmt=0 CCWReal=00000000, CCWCmd=0e, CCWFlg=68, CCWLen=7ff8 Position: cc=33 hh=1 r=9 enumpos=PosCount Data=90ECD00C18BF41CB0FFF41CC000141AC Csw=000000080C0058C8 ===>July 16,2011-02:45:35, CcwReqID=1, Ccwfmt=0 CCWReal=00000000, CCWCmd=92, CCWFlg=40, CCWLen=0008 Position: cc=33 hh=1 r=9 enumpos=PosKey Data=00330001090000FC0000000000000000 Csw=000000080C000000 ===>July 16,2011-02:45:35, CcwReqID=1, Ccwfmt=0 CCWReal=000719a8, CCWCmd=0e, CCWFlg=6c, CCWLen=7ff8 Position: cc=33 hh=1 r=a enumpos=PosCount Data=02000000000000EC0000000000000000 Csw=000719B00C007EFC ===>July 16,2011-02:45:35, CcwReqID=1, Ccwfmt=0 CCWReal=000719b0, CCWCmd=92, CCWFlg=40, CCWLen=0008 Position: cc=33 hh=1 r=a enumpos=PosKey Data=003300010A000060E3C6406040D4E5F0 Csw=000719B80C000000 ===>July 16,2011-02:45:35, CcwReqID=1, Ccwfmt=0 CCWReal=00000000, CCWCmd=0e, CCWFlg=68, CCWLen=7ff8 Position: cc=33 hh=1 r=b enumpos=PosCount Data=0E000000000000500000000000000000 Csw=000000080C007F98 ===>July 16,2011-02:45:35, CcwReqID=1, Ccwfmt=0 CCWReal=00000000, CCWCmd=92, CCWFlg=40, CCWLen=0008 Position: cc=33 hh=1 r=b enumpos=PosKey Data=003300010B000000D6D540C6C1C9D3C5 Csw=000000080C000000 ===>July 16,2011-02:45:35, CcwReqID=1, Ccwfmt=0 CCWReal=000719a8, CCWCmd=0e, CCWFlg=6c, CCWLen=7ff8 Position: cc=33 hh=1 r=c enumpos=PosCount Data=02000000000000EC0000000000000000 Csw=000719B00D007FF8 freetrk Task 20d cc 0033 hh 01 ix 1 ****End Of Chain**** Task 20d DevNum 0

Page 309: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

309

Tape emulation

Page 310: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

310

Page 311: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

311

Part 2: MFNetDisk TAPE emulation The tape emulation is part of all MFNetDisk documentation. It is important to read part 1 first before start with the tape emulation part 2. If you do not use the disk emulation you can skip some of the subjects in part 1. Part 1 has detail installation of the product and much more.

Page 312: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

General TAPE Definitions

MFNetDisk Tape emulation MFNetDisk can emulate tape as well as disk.

MFNetDisk tape emulation supports 256K block size.

Tape emulation Device type MFNetDisk currently emulate 3490 tape device.

MTL

312

MTL is SMS control tapes and drives. SMS uses the OAM to control the data about the MTL. Each MTL has its unique LIBRARY ID and its unique tapes VOLSER controlled by SMS. Each SMS storage group for tape is connected to the LIBRARY ID. By using ACS routine, the user can connect each allocation for tape with any storage group he likes.

SMS control or non SMS MFNetDisk let SMS to control the drive and tape allocation by using the MTL SMS OAM tape feature. MFNetDisk can run also as non SMS 3490, but it is impossible if your site has other 3490 tapes emulation in the same host. Using other 3490 HW with non SMS MFNetDisk tape 3490 emulation can cause allocation problems. Only with UIM the device type of tapes can be unique. MFNetDisk does not support UIM because it is easy and reliable to run with MTL support.

Problem with NON SMS tapes The MVS catalog uses device type to define the unit of the MVS file where the catalogs file location. If the file is in 3490, the MVS can mount a request for online drive which is not under MFNetDisk control. Imagine that a real cartridge needs to be mounted in real drive and MVS ask o mount a real tape on MFNetDisk PC which does not have the requested cartridge drive. Tape and MTL

Page 313: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MTL is like automatic tape library. MVS identify the MTL drives as belong to a library. Any allocation of tape has identification of library and not only device type. Library contains information about the drives which belong to tapes.

MTL tapes Tapes must have the same features as the emulation can handle. The feature of tape can be a recording technology (18tracks, 36tracks and many more), MEDIA number, Compaction and more. MVS will not allow to tapes to mount if the tape are not support what the emulation can support.

MFNetDisk and library MFNetDisk emulates tapes. MFNetDisk does not care about feature of tapes or feature of emulation. But MFNetDisk must follow the IBM rule. The MFNetDisk tape storage data is not in tape media, it is only a special PC file with data which MFNetDisk understands and can use it to emulate the tape. In general this PC file can be used to emulate any emulation (3480, 3490 3590) but, this version only emulates 3490.

TAPE MANAGER To control the tapes OAM is not enough. The tape manager mainly, take care of expire the tape and change is status to scratch or private according to user rules. Without tape manager the user must change status by using ISMF panels (2.3) or using OAM API or OAM macros. Tape manager can be IBM RMM or other tape manager’s products.

Want to know more about MTL Take IBM books (The best book is DFSMS Object Access Method Planning, Installation, and Storage Administration Guide for Tape Libraries).

313

MTL Drives

MFNetDisk support many tapes drives and many MTL libraries in any MVS. That mean that the user can define 2 MTL and MFNetDisk according to the drive will query the OAM only for tape volser belonging to the specific MTL library even if the user specify many TAPELOC parameters which are distribute in many MTL. This is

Page 314: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

important because MFNetDisk will never mount tapes which is not defines as tape belong to the drive which is dedicate to the MTL library.

314

Page 315: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk TAPE Definitions

Emulation MFNetDisk support 3490 emulation.

Tape emulation and PC Device MFNetDisk does not use PC Device. PC Devices are used only for 3390 disk emulation and disk replication.

What need in PC to run tape emulation?

Only define PCSTORAGE and TAPESRANGE.

MFNetDisk and PCSTORAGE PCSTORAGE direct MFNetDisk where to store the tape emulation files (using PATH parameter). Many PCSTORAGE can be defined per PC. MFNetDisk will allocate tape data by selecting the defined PCSTORAGE which has enough free space.

MFNetDisk and TAPESRANGE

MFNetDisk control if tape VOLSER can be accessed in the PC or if it is illegal to be in the PC. MFNetDisk will not allow accessing any tape volser if it is not specified in the TAPERANGE range. MFNetDisk and scratch handling MFNetDisk can handle scratch the same as CA1 handle its tapes or IBM TMM handle its tapes. The key parameter which decide what option you select is SCRCTL=Y/N.

315

SCRCTL=Y enable MFNetDisk to handle all scratch mounts for MFNetDisk drives and tapes only. If you have IBM tapes or EMC tapes, MFNetDisk will not interfere with your optional tape manager, if it CA or IBM tape manager. If this value set, MFNetDisk will not query the OAM for tapes in case of scratch mount request but send the request to PC which is the MFNetDisk tape manager place where MFNetDisk manage the tapes scratch. If you use MF hosts in remote which share your tape you must use the MFNetDisk tape manager because no way to

Page 316: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

share real disk (IBM or EMC) which need to share the control files which is used by OAM used by CA and IBM and any tape manager software companies which manage scratch tapes. SCRCTL=N enable MFNetDisk to access OAM for every scratch tape mount request. Use this option if you like CA or TMM to manage the MFNetDisk tapes. Be aware that the MFNetDisk PC also must be set to handle or not handle tape manager and mount scratch requests. More detail information about setting tape manager parameters in PC and MF in the following chapters.

MTL mount request and scratch

MFNetDisk MVS control all the scratch mount requests by calling OAM and query for scratch tapes belong to MFNetDisk library. In MTL mode, MVS will never ask the PC to mount scratch tape but a specific tape VOLSER. If MFNetDisk MVS can not find scratch tape, it will send a request to PC to mount SCRATCH, PC will manage the scratch if it allowed doing so. MFNetDisk PC will reject the request and will ask to change tape status to scratch or add more tape with scratch status. To enable MFNetDisk to manage scratch tapes SCRCTL=Y must be defined and your must run the script which set the tape manager to enable it (MODIFY>TAPE>SCARTCHMANAGER>ENABLE).

MFNetDisk and tape supported media MFNetDisk tapes are identified itself to MVS as MEDIA2 and 36TRACKS tape technology and compaction. This information is important when defined tapes VOLSER to SMS in MVS. In reality, these parameters are only important to real tapes.

MFNetDisk tape capacity MFNetDisk by default support 1GB tape capacity. With script, CONFIG->Tape->SETTAPESCAPACITY, this can be changed to any value.

MFNetDisk PC and scratch MFNetDisk make your tapes to scratch if the MFNetDisk is defined as tape manger in PC and MF. If this is the case, MFNetDisk will use the rules in PC to decide when to make the tape to scratch.

316

If OAM control the MFNetDisk tapes, it can be important to delete tapes which become scratch. In MFNetDisk MVS, there is a modify command

Page 317: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

which will check the status of all the tapes defined to the library and send request to PC to delete the scratch files from the PC. The modify command is DELSCRATCH. This Modify command query the SMS OAM for the status of the tape defined in MVS, if the status is scratch, the MFNetDisk in MVS will send request to PC to delete the scratch space in PC. This is not done automatically, but when the user run the modify command. The delete of scratch tapes are immediately and without any delay. In the future, more advance feature will be implemented and will enable delay in the delete of scratch data in PC.

What need in MVS to run MFNetDisk tape emulation?

• Install OAM and tape manager if it is not defined. • Define tape 3490 MTL using HCD. • Add SMS ACS routine. • Add DATACLAS, STORCLAS, STORGRP, and LIBRARY to

SMS. • Add tapes VOLSER to the MTL. • Defined two new parameters to MFNetDisk parameters file

(TAPEDRV and TAPELOC).

317

Page 318: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

INSTALL MFNetDisk tape emulation in MVS by example Define the tapes library in HCD. Go to HCD. Select 1 and then select 5 (I/O Devices). Define I/O devices. For example, define 580 to 58F as 3490.

318

Sample of 580 to 58F defined in the HCD.

Page 319: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Sample, required parameters to define MTL library. The LIBRARY-ID can be any value. In my case I put my birthday date.

319

Page 320: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Define the MTL library in SMS using ISMF panel

1. Select in ISMF panel option 10, Library management. 2. Select option 3, Tape library. 3. Add your MTL library name. I select MPCLIB. 4. Select option 3, define.

Enter the required parameters Library-ID 19454 (My birthday, defined in the HCD). Entry Default Data Class – DATACLAS, defined latter. Entry Default Use Attribute - P.

320

Eject Default - K.

Page 321: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Move to page 2, and in MEDIA2 enter any number. This number will notify you in MVS console to enter more scratch tapes if the Threshold reaches. I put 100.

321

Page 322: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Sample, specify scratch number threshold.

322

Page 323: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Define DATACLAS using ISMF. 1. Select option 4, DATACLAS, from ISMF panel. 2. Enter the DATACLAS name, I put DCMPCLIB.

323

Enter COMPACT=Y.

Page 324: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Enter MEDIA TYPE=2.

324

Enter RECORDING TECHNOLOGY=36.

Page 325: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

325

Page 326: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Define Storage group using ISMF.

1. Select option 6, storage group. 2. Enter storage group name. I select SGMPCLIB. 3. Enter Storage group type, select TAPE. 4. Enter LIBRARY NAME. I select MPCLIB (this name was defined

when define the library).

326

Page 327: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Create STORCLAS and MGMTCLAS These classes were defined without change any value. Any value is welcome and will not disturb the MTL operation for allocate and use the MTL library for my emulation. The name I gave for these classes are, STORCLAS=SCMPCLIB, MGMTCLAS=MCMPCLIB.

327

Page 328: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Define the ACS to SMS. I really define the minimum ACS code require to run the MTL with MFNetDisk emulation. This ACS code does not intend to teach you ACS, but to make MFNetDisk tape emulation working. What I define in the ACS is that every file (SMS or NONSMS file) with a prefix of SHAI1.MTL.** will be directed to MPCLIB. MPCLIB is the MTL library I defined in the HCD and the storage group. Here is the code I put in the ACS. After all activate the SMS configuration using option 8 and then 5. PROC MGMTCLAS /**********************************************************************//**********************************************************************//**********************************************************************//* END OF FILTLIST STATEMENTS */ /**********************************************************************/FILTLIST MTL_DSN INCLUDE(SHAI1.MTL.**) IF &DSN=&MTL_DSN THEN SET &MGMTCLAS='MCMPCLIB' END

PROC STORCLAS /**********************************************************************/ /**********************************************************************/ /**********************************************************************/ /* END OF FILTLIST STATEMENTS */ /**********************************************************************/ FILTLIST MTL_DSN INCLUDE(SHAI1.MTL.**) IF &DSN=&MTL_DSN THEN SET &STORCLAS='SCMPCLIB' END

328

Page 329: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PROC STORGRP /**********************************************************************//**********************************************************************//**********************************************************************//* END OF FILTLIST STATEMENTS */ /**********************************************************************/FILTLIST MTL_DSN INCLUDE(SHAI1.MTL.**) IF &STORCLAS='SCMPCLIB' THEN SET &STORGRP='SGMPCLIB' WRITE 'STORGRP = ' &STORGRP WRITE 'STORCLAS= ' &STORCLAS END

PROC DATACLAS /**********************************************************************/ /**********************************************************************/ /**********************************************************************/ /* END OF FILTLIST STATEMENTS */ /**********************************************************************/ FILTLIST MTL_DSN INCLUDE(SHAI1.MTL.**) IF &DSN=&MTL_DSN THEN SET &DATACLAS='DCMPCLIB' END

329

Page 330: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Define the tapes parameters to MFNetDisk MVS.

1. Example, I want to use VOLSER MPT000 to MPT031. 2. I add to my SAMPLIB parameter file 2 lines: TAPEDRV MVSDVNUM=0580, RANGE=8 TAPELOC VOL=MPT000, COUNT=32, PCIP=169.254.0.1, SCRATCH=Y 3. TAPEDRV defines the MTL devices we defined in the HCD. 4. TAPELOC defines the VOLSERS and its location. In our case, the

location is the PC IP which will handle the emulation and will contain the data of the tape emulation.

5. TAPELOC can be any number. Many IP and many VOL can be defined.

6. COUNT specifies the total of VOL parameter, in our case MPT000, MPT001 to MPT031.

7. SCRATCH=Y specify that MFNetDisk can use this VOLSER for checking for scratch. User can specify SCRATCH=N, in this case MFNetDisk will not check for scratch in this PCIP.

8. If a PC has a shortage of space, the user can specify SCRATCH=N in MVS MFNetDisk parameters and MFNetDisk will not allocate new SCRATCH in this PC.

330

9. In my example I mix disks, tapes and replication together. 10. CTLSCR=Y enable MFNetDisk to be the tape manager of the

MFNetDisk tapes volumes. Be aware that if you have your own tape manager (example IBM TMM) you can let it control the MFNetDisk tapes by set CTLSCR=N. If you want that MFNetDisk will control your scratch tapes for the MFNetDisk tapes please specify CTLSCR=Y. If you want that TMM (example) will control your scratch specify CTLSCR=N.

11. Even if you specify CTLSCR=Y, MFNetDisk requires that you set also value in MFNetDisk in PC. MFNetDisk requires that both the PC and the MF will be defined with CTLSCR=Y and in PC scratch manager equal enable. If one of the value not set, MFNetDisk default is CTLSCR=N. The reason is for security reason. MFNetDisk required double checking to mount scratch volume.

12. To set the scratch manager equal to yes, start PCTOOL and select MODIFY->TAPE>SCARTCHMANAGER>ENABLE.

13. To check the scratch manager value in PC, run DISPLAY->TAPE>RULES.

Page 331: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

331

14. If PC receive request for private or scratch and the CTLMGR in MF and scratch manager in PC are not set to enable it, PC will send error message and will not select volume to be mounted as scratch.

Page 332: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

TCP PORT=11000,TIMEOUT=30 SERVER TASKS=5,BUFL=66 ALIASUCB MVSDVNUM=0380,RANGE=32 **MTL TAPEDRV MVSDVNUM=0580,RANGE=8 **NON MTL TAPEDRV MVSDVNUM=0590,RANGE=8 **SMS TAPE TAPELOC VOL=MPT000,COUNT=32, PCIP=169.254.0.1,SCRATCH=Y **NONSMS TAPE TAPELOC VOL=MPX000,COUNT=32, PCIP=169.254.0.1,SCRATCH=Y TAPE CTLSCR=Y LICKEY EXPDATE=20090331,REQCPUS=(4026239672, 1026239672,2026239672,3026239672), ACTKEY=87A719F948 * EMULATION DEVICE MVSDVNUM=0300, PCDEV=0, PCIP=169.254.0.1,RANGE=8 ******* * REPLICATION SYNCDEV MVSDVNUM=0A8E, PCDEV=24,

332

PCIP=169.254.0.1,RANGE=2 *******

Sample, parameters with tapes and disks emulation

Page 333: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

333

Define TAPE emulation in PC

1. Start PC Server. 2. Define PCSTORAGE. PCSTORAGE defines storage location to

allocate tapes file. Tapes file are standard PC files, easily you can copy the tape file and use the emulated tape in any location.

3. Define TAPESRANGE. TAPESRANGE control what VOLSER can

be allocate in this PC. This value must be correlated to the MVS parameter TAPELOC.

Page 334: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

334

The PC installation is ended OK.

Page 335: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

TAPERANGE parameter in PC and TAPELOC in MF

• In MF, TAPELOC parameter, instructs MFNetDisk to what PC to send the IO request according to the VOLSER.

• In MF, TAPELOC parameter also indicates to MF if new tape can be allocate for scratch in this pool range and the PC. In this case the user can control the capacity balance of tapes in any PC.

335

• In PC, TAPERANGE parameter instructs the PC to control the range of tapes VOLSER which can run in the PC, also for non MTL tapes, it enables the PC to check for scratch request for each VOLSER defined in the TAPERANGE.

Page 336: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Operate the MTL

1. Start the MPC in MVS with the new tape parameters. 2. Start the PC Server with the new PCSTORAGE and the

TAPESRANGE values. 3. Check if the I/O is ok. Run DS P,580,1. See if the path is OK (sign +). 4. Do vary online to 580. 5. Verify that OAM is running. 6. Check if OAM know our library. 7. Do “D SMS,LIB(MPCLIB),DETAIL”. 8. Do “V SMS,LIB(MPCLIB),ONLINE”. If it is OK you almost done. 9. Now you need to add tapes to your MPCLIB. 10. To add tapes do “LI ENT,MPT000,MPCLIB,MEDIA2”. 11. Run this command for all the volume you want to add. The next is LI

ENT,MPT001,MPCLIB,MEDIA2. 12. By default the tapes are enter as private. 13. At this time you can see the message in the CONSOLE “*CBR3660A

Enter MEDIA2 scratch volumes into library MPCLIB”. This message stays as long as your threshold criteria meet. In our case the scratch threshold value is 100.

14. To display the volser status do “D SMS,VOL(MPT000)”. 15. Take a look at the output of this command. 16. To verify if you have enough scratch tapes run the D

SMS,LIB(MPCLIB),DETAIL 17. Also you can check and update volser status from private to scratch

and the other way. You can do it by select option 2 in ISMF (VOLUME) and then select option 3 (MOUNTABLE TAPES).

18. To change attribute select the volser and specify ALTER in the LINE OPERATOR.

19. Your tape emulation installation ended OK. You can run tapes jobs. 20. When you run tape and the tape is scratch or private but not specific

volser, MFNetDisk will query OAM using CBRXLCS macro for tape, control by the MTL, with volser status, scratch.

336

21. MFNetDisk will ask about tapes using the tapes which are defined in MFNetDisk parameters files. In our case the tapes are MPT000 to MPT031.

Page 337: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

22. When MFNetDisk receive OK about scratch volume it will notify it by message “MPC040I MOUNT SCRATCH TAPE <MPT006>”.

337

Page 338: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk MTL after IPL and actions required After IPL MFNetDisk virtual tapes drives are offline because MFNetDisk must be running to enable accessing the drives (580-58F). After IPL when OAM is started automatically, an error message, CBR3002E, indicates that the drives can not be accessed. CBR3002E Library MPCLIB no longer usable.

Error Message, CBR3002E, after starting the system and, before starting the MFNetDisk.

338

Page 339: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

D U,,,580,2 IEE457I 19.00.24 UNIT STATUS 484 UNIT TYPE STATUS VOLSER VOLSTATE 0580 349M F-NRD /REMOV 0581 349M F-NRD /REMOV DS P,580,1 IEE459I 11.52.35 DEVSERV PATHS 460 UNIT DTYPE M CNT VOLSER CHPID=PATH STATUS 0580,3490L ,F,000, ,00=+ 07=+ ************************ SYMBOL DEFINITIONS ************************ F = OFFLINE + = PATH AVAILABLE V 580-581,ONLINE MPC033I RECONECT TO PC ,<WRITE ,000032> D U,,,0580,00002,L=Z VARY RANGE DISPLAY IEE457I 19.00.38 UNIT STATUS 488 UNIT TYPE STATUS VOLSER VOLSTATE 0580 349M O -R /REMOV 0581 349M O -R /REMOV

339

Checking the MTL drives, and varies the drives online.

Page 340: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

D SMS,LIB(MPCLIB),DETAIL F ATLOAM,D,LIB,MPCLIB,L=INTERNAL-Z CBR1110I OAM library status: 491

340

TAPE LIB DEVICE TOT ONL AVL TOTAL EMPTY SCRTCH ON OP LIBRARY TYP TYPE DRV DRV DRV SLOTS SLOTS VOLS MPCLIB ML MANUAL 16 2 2 0 0 3 Y N V SMS,LIB(MPCLIB),ONLINE F ATLOAM,V,MPCLIB,ONLINE CBR1000I OAM V command execution scheduled. CBR3004I Library MPCLIB now online. CBR3660A Enter MEDIA2 scratch volumes into library MPCLIB.

Checking the library (MPCLIB) status, the status of the library is not operational. Vary the MPCLIB library, online.

Page 341: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

D SMS,LIB(MPCLIB),DETAIL F ATLOAM,D,LIB,MPCLIB,L=INTERNAL-Z CBR1110I OAM library status: 499 TAPE LIB DEVICE TOT ONL AVL TOTAL EMPTY SCRTCH ON OP LIBRARY TYP TYPE DRV DRV DRV SLOTS SLOTS VOLS MPCLIB ML MANUAL 16 2 2 0 0 3 Y Y ------------------------------------------------------------------- MEDIA SCRATCH SCRATCH SCRATCH TYPE COUNT THRESHOLD CATEGORY

341

MEDIA2 0 100 0000

Rechecking the MPCLIB status this time the MPCLIB must be online and operational to enable working with the MTL. Now the MFNetDisk MTL is fully operational.

Page 342: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

20.08.43 V SMS,LIB(MPCLIB),OFFLINE 20.08.44 STC00252 CBR1000I OAM V command execution scheduled. 20.08.44 IEF880I 0580 NOW OFFLINE BY OAM 20.08.44 IEF880I 0581 NOW OFFLINE BY OAM 20.08.44 STC00252 CBR3003I Library MPCLIB now offline. 20.08.44 STC00252 CBR3911I There is no online and operational tape library.

342

To disable operation with MFNetDisk MTL, vary the library offline.

Page 343: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

* DISPLAY LIB STATUS D SMS,LIB(MPCLIB),DETAIL * VARY ONLINE LIB V SMS,LIB(MPCLIB),ONLINE * ADD TAPE TO LIB LI ENT,MPT000,MPCLIB,MEDIA1 * DISPLAY LIBRARY DRIVERS STATUS LI DD,MPCLIB * DISPLAY VOLSER STATUS D SMS,VOL(MPT000)

343

MTL Useful commands

Page 344: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Checking VOLSER status

D SMS,VOL(MPT000) F ATLOAM,D,VOL,MPT000,L=JJ02A-Z CBR1180I OAM tape volume status: 036 VOLUME MEDIA STORAGE LIBRARY USE W C SOFTWARE LIBRARY TYPE GROUP NAME ATR P P ERR STAT CATEGORY MPT000 MEDIA2 MPCLIB P N NOERROR NONE ------------------------------------------------------------------- RECORDING TECH: 36 TRACK COMPACTION: YES SPECIAL ATTRIBUTE: NONE ENTER/EJECT DATE: 2009-03-24 CREATION DATE: 2009-03-24 EXPIRATION DATE: LAST MOUNTED DATE: 2009-03-25 LAST WRITTEN DATE: 2009-03-25

344

SHELF LOCATION: Sample, running the D SMS,VOL command.

Page 345: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Checking the MTL status D SMS,LIB(MPCLIB),DETAIL F ATLOAM,D,LIB,MPCLIB,L=JJ02A-Z CBR1110I OAM library status: 147 TAPE LIB DEVICE TOT ONL AVL TOTAL EMPTY SCRTCH ON OP

345

LIBRARY TYP TYPE DRV DRV DRV SLOTS SLOTS VOLS MPCLIB ML MANUAL 16 2 2 0 0 0 Y Y ---------------------------------------------------------------------- MEDIA SCRATCH SCRATCH SCRATCH TYPE COUNT THRESHOLD CATEGORY MEDIA2 0 10 0000 ----------------------------------------------------------------------

Sample, running the D SMS,LIB(MPCLIB),DETAIL command.

Page 346: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Mount tape request failed and ATTN modify command In rare case MFNetDisk may fail to automatically mount tape to MF. The reason may be missing special CCW command to schedule the mount in PC or MF or if MFNetDisk find error in PC or MF which can be corrected by the users. Mount request can failed also if the PC can not mount the tape because of user errors. MFNetDisk enables the user to retry the mount request by using the MFNetDisk MVS ATTN modify command.

346

The format of the command is F MPC, ATTN=UUUU where UUUU is the drive which MVS request to mount the tape VOLSER for your job.

Page 347: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

M 590,VOL=(SL,MPT033) $HASP100 MOUNT ON STCINRDR $HASP373 MOUNT STARTED IEF403I MOUNT - STARTED - TIME=09.44.46 *IEF233D M 0590,MPT033,,MOUNT,590,SYS11052.T094446.RA000.MOUNT.R0100026 359 OR RESPOND TO IEF455D MESSAGE *02 IEF455D MOUNT MPT033 ON 0590 FOR MOUNT 590 OR REPLY 'NO' MPC999I SYSTEM RESET TO PC F MPC012,ATTN=0590 PROCESS MODIFY DOING MNT REQ ENDED OK IEE400I THESE MESSAGES CANCELLED - 02. MOUNT #01 IEFPROC IEEVMNT2 - COMP CODE=R0000 IEF170I 1 MOUNT MOUNT #01 IEFPROC IEEVMNT2 - COMP CODE=R0000 IEF404I MOUNT - ENDED - TIME=09.46.36 D U,,,590,1 IEE457I 09.46.47 UNIT STATUS 376 UNIT TYPE STATUS VOLSER VOLSTATE 0590 3490 O -R MPT033 PRIV/RSERV U 590 IEF234E R 0590,MPT033,PVT IEF282I 0590 NOW UNLOADED

347

Mount request failed. Recoveries done by ATTN modify command.

Page 348: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

348

Mount request by MVS, but no scratch tapes in MPCLIB. This subject only describe scenario when MFNetDisk does control the tapes scratch. MFNetDisk tape will run OK if there are enough tapes scratch define to the MTL library which is handled by MFNetDisk. But in rare case there can be a problem where the scratch pool is empty! This situation is not suppose to happen because, SMS will notify to MVS console that the threshold for scratch is reached and more scratch must be added to the MTL. Example: User run job CHKTPMTL. This job tests the tape emulation. The job requests to mount scratch volume. If the scratch control is not active (TAPE CTLSCR=N) then MFNetDisk will check only with the OAM about tapes and their status (scratch or private). MVS MFNetDisk requests from OAM to give the status of the tapes which are defined in MVS MFNetDisk parameter file. If one of the volumes is scratch MFNetDisk will mount this volume and everything will run fine. But in our example there was not any scratch volume in our OAM. In our case MVS notify that No more free scratch volumes. MFNetDisk understand that there is mount pending request and CCW pending. MVS MFNetDisk does not know anything about tape emulation so MVS sends to PC MFNetDisk to deal with the expected error by sending a request to mount PRIVAT volume. But if PC MFNetDisk is not allowed to support scratch or private volume (set by MODIFY>TAPE>SCRATCHMANAGER>DISABLE), PC MFNetDisk will only supports specific volume and not SCRTCH or PRIVAT.

Page 349: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

PC MFNetDisk reply with unit check status, equipment check, for the pending CCW (CCW 9F). PC MFNetDisk also sends message to MVS console for the reason for the unit check status. In this case the mount request is pending. The job is not working. Action is required by the user. The user (me) add scratch volume to my MPCLIB using LI ENETR command and with ISMF option 2 (VOLUME) I change the volume status to scratch. Now that I have scratch in OAM I can continue to run. To continue to run I need to ask MVS to reissue the mount request and the CCW 9F. This is dome by using MVS MFNetDisk modify command (“F MPC012T, ATTN=0580”). Now the mount is done again, this time MVS MFNetDisk successfully receives from OAM a scratch volume (MPC005, the volume I added and changed its status to scratch). MFNetDisk will notify the MVS, after the scratch mount request, the specific volume which is in scratch status with message MPC040I MOUNT SCRATCH TAPE <MPT005>. The volume VOLSER is also send to PC to handle the emulation correctly.

349

Now, everything runs fine. See the next page for the SYSLOG.

Page 350: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

//CHKTPMTL PROC V=MPT000 //A1 EXEC PGM=TPCHKN, // PARM='7,064000,001,000799' //STEPLIB DD DSN=SYS2.SHAI.LINKLIB,DISP=SHR //TAPE DD DSN=SHAI1.MTL.T1&V, // UNIT=3490,DISP=(,PASS),LABEL=(1,SL,EXPDT=98000)

The procedure I used to run the JOB using the MTL and the ACS routine.

350

Pay attention that VOL=SER is not specified to force mount scratch request. And the DSN=SHAI1.MTL.xxx. This is the DSN; the ACS uses to allocate the MPCLIB drives.

Page 351: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

$HASP373 CHKTPMTL STARTED IEF403I CHKTPMTL - STARTED - TIME=10.57.27 IEF233A M 0580,PRIVAT,SL,CHKTPMTL,CHKTPMTL,SHAI1.MTL.T1MPT000,MEDIA2 MPC033I RECONECT TO PC ,<WRITE ,000032> MPC999E NO FREE SCRATCH TAPES FOUND FROM OAM MPC999E ADD SCRATCH AND DO: F MPC,ATTN=UUUU IOS000I 0580,00,EQC,9F,0E00,,**,,*MASTER* 542 1040202C000000200000(0000000000000000)0070(00000000)878F1E7114720000 MPC111I <PC Msg> MPC000i Can not get TapeVolser or tape not in TapeRange. <vol=PRIVAT> F MPC012T,ATTN=0580 PROCESS MODIFY DOING MNT REQ ENDED OK IOS000I 0580,00,IOE,07,0E00,,**,,CHKTPMTL 549 40482000000001200000(0000000000000000)0070(00000000)878F1E7114720000 IEC501A M 0580,PRIVAT,SL,COMP,CHKTPMTL,CHKTPMTL,SHAI1.MTL.T1MPT000, MEDIA2 MPC040I MOUNT SCRATCH TAPE <MPT005> IEC705I TAPE ON 0580,MPT005,SL,COMP,CHKTPMTL,CHKTPMTL,SHAI1.MTL.T1MPT000 ,MEDIA2 IEC205I TAPE,CHKTPMTL,CHKTPMTL,FILESEQ=1, COMPLETE VOLUME LIST, 553 DSN=SHAI1.MTL.T1MPT000,VOLS=MPT005 IEC705I TAPE ON 0580,MPT005,SL,COMP,CHKTPMTL,CHKTPMTL,SHAI1.MTL.T1MPT000 ,MEDIA2

351

IEC205I TAPE,CHKTPMTL,CHKTPMTL,FILESEQ=1, COMPLETE VOLUME LIST, 555

Page 352: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

352

OAM, MTL, SMS, RMM is not for me This subject only describe scenario when MFNetDisk does control the tapes scratch. The meaning of this title is that the user wants to use NONSMS tapes drives for his site. Meaning, the tape drives are not MTL, in our example 580-58F are MTL, 590-59F are standard 3490. MFNetDisk need the OAM only for scratch, but if the user run jobs with specific VOLSER and never asks for scratch volume, MFNetDisk does not access the OAM for scratch. To make it clear, MFNetDisk will run tapes emulation, without accessing the OAM, if the mount request specifies a specific VOLSER (Not scratch or private VOLSER). Let say that the user manages his old tapes without any tape manager software. He also manages his scratch tapes. He has 3420 or old 3480 tapes drives or even 3592 tapes drives. If this is the case, any tape mount request to 3490 will be honor to the right drive. Another option can be to specify in the JCL UNIT=/0590 or any other drive address to explicitly define the required drive support by MFNetDisk.

MFNetDisk only query the OAM if there is a request for non specific VOLSER. So OAM is not needed for specific VOLSER. As you can see this is not SMS request. The data set name is not SHAI1.MTL. Also the tape request is specific VOLSER. Also the MPT020 is not mention in OAM at all. OAM does not know anything about MPT020.

Page 353: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

//CHKTP PROC V=MPX000 //A1 EXEC PGM=TPCHKN, // PARM='7,064000,001,000799' //STEPLIB DD DSN=SYS2.SHAI.LINKLIB,DISP=SHR //TAPE DD DSN=SHAI1.T1&V, //UNIT=3490,DISP=(,PASS),VOL=SER=&V,LABEL=(1,SL,EXPDT=98000)

The procedure I used to run the JOB without using the MTL and the SMS control. Pay attention that VOL=SER is specified. And the DSN is not equal to the ACS DSN (DSN=SHAI1.MTL.xxx). MVS will allocate the file in the available 3490 in the system. In this case there were not any other 3490 defined to the system. Be aware that MPX000 must be defined in the MFNetDisk parameters in MVS and PC. **NONSMS TAPE TAPELOC VOL=MPX000,COUNT=32, PCIP=169.254.0.1,SCRATCH=Y

MPX000 is defined in MVS to enable MFNetDisk to access the tape data in the required PC. Be aware that using VOLSER which is specified as belong to library (MTL) is not allowed to run in other library or in non library 3490!!

353

In my example I define MPT000 VOLSER to the MTL and MPX000 to non SMS library!

Page 354: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

354

Accessing the MPX000 in PC required the MPX000 to be defined in the tapes range supported by the PC.

Page 355: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

S CHKTP,V=MPT020 $HASP100 CHKTP ON STCINRDR IEF677I WARNING MESSAGE(S) FOR JOB CHKTP ISSUED IEF695I START CHKTP WITH JOBNAME CHKTP IS ASSIGNED TO USER START2 , GROUP SYS1 $HASP373 CHKTP STARTED IEF403I CHKTP - STARTED - TIME=11.50.29 IEF233A M 0590,MPT020,,CHKTP,CHKTP,SHAI1.T1MPT020 IEC705I TAPE ON 0590,MPT020,SL,COMP,CHKTP,CHKTP,SHAI1.T1MPT020,MEDIA2 IEC205I TAPE,CHKTP,CHKTP,FILESEQ=1, COMPLETE VOLUME LIST, 687 DSN=SHAI1.T1MPT020,VOLS=MPT020

In this case the user specify a specific volume, if this is the case MFNetDisk will not ask the OAM for private and send the mount request to the PC which manages tapes in the volume ranges. Each specific VOLSER must have entry in the MFNetDisk which specify the PC IP to send the request.

355

MFNetDisk does not require accessing to any tape manager if the mount request is for specific volume (not PRIVATE nor SCRATCH).

Page 356: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Link outsider tape to local tape configuration

Let say that IBM decides to distribute tapes using the MFNetDisk tape format. So they distribute DVD with the contents of 3 PC files each file can be emulated by MFNetDisk as tape. The tapes VOLSER are Z13IN1-Z13IN3. You can link the outside tapes to MTL or to non MTL depend on your preference.

The actions required to work with the IBM tapes. • Copy the contents of the tapes to the PC which run the MFNetDisk. • The IBM files must be copy to PC folder defined as PCSTORAGE. In

our example C:\MPCTAPE. See example. • The PC file names must be in MFNetDisk standard, meaning

TPVVVVVV.TPV. Where VVVVVV is the volser label. • In our case the files are TPZ13IN1.TPV, TPZ13IN2.TPV and

TPZ13IN3.TPV • Link the IBM tapes files to PC by selecting CONFIG->TAPE-

>LINKTAPETOCONFIG. The link script will create control data for the outsider tape for the PC MFNetDisk and will add TAPERANGE of the VOLSER with count equal to one. The LINKTAPETOCONFIG will make the outsider tape as private to disable mounting the tape as scratch. See example.

• You done in PC. • Add to MFNetDisk in MVS the statements TAPELOC. See example. • Do the modify MVS command, F MPC, CONF=NEW, to activate the

new MVS configuration file. • TAPERANGE parameter is added automatically (if needed) to PC by

MFNetDisk when running the LINKTAPETOCONFIG script.

356

• If you like to work with the IBM tapes in MTL environment, just add the new VOLSER to the MTL using SMS. See example.

Page 357: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

• You done in MVS. Congratulation, you can work with the new outsider tapes.

• To check the active TAPELOC values, run the MF MFNetDisk modify command, <F MPC, TAPELOC>. See example.

F MPC012,TAPELOC PROCESS MODIFY VOLSTR VOLEND COUNT PCIP SCR MPT000 MPT031 000032 169.254.000.001 Y ZZZZZZ ZZZZZZ 000001 169.254.000.001 Y ZZZZZ0 ZZZZZ8 000009 169.254.000.001 N

357

REQ ENDED OK

Page 358: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

358

Defined PC Storage to hold the tapes data files.

Page 359: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Link the IBM tapes to MFNetDisk in PC.

359

Page 360: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

**NONSMS TAPE TAPELOC VOL=Z13IN1,COUNT=3, PCIP=169.254.0.1,SCRATCH=N

Add the IBM tapes to MFNetDisk MVS. LI ENT,Z13IN1,MPCLIB,MEDIA2 LI ENT,Z13IN2,MPCLIB,MEDIA2 LI ENT,Z13IN3,MPCLIB,MEDIA2

Add tapes to MTL.

360

Page 361: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

361

Page 362: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk tape format and AWS tape format There are two way to create MFNetDisk tape file from real tape, one is using DITTO and the second is to use AWSUTIL and then to use script to convert the AWS tape format to MFNetDisk format. MFNetDisk does not support the TAPE AWS format because this format can cause problem to MFNetDisk. The reason is that CCW format like FORWARD TAPEMARK can cause a timeout in TCP because it can last long time. MFNetDisk use other format which enable it to position in no time in any TM in the tape. The two ways to create MFNetDisk are: The AWSUTIL way: • Use AWSUTIL to copy real tape to AWS file in MVS. • FTP it to PC. • Run MFNetDisk script to convert AWS file to MFNetDisk tape file. The DITTO way:

362

Run Ditto to create copy of the real tape. In this way the MFNetDisk must be active in MF and PC to be able to emulate MFNetDisk tape.

Page 363: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

//* THIS JOB COPIES AN ENTIRE TAPE TO A DISK FILE. //* //AWSUTIL EXEC PGM=AWSUTIL //STEPLIB DD DISP=SHR,DSN=WSBG.LOAD //SYSPRINT DD SYSOUT=* //SYSOUT DD DISP=(NEW,CATLG,DELETE),DSN=WSBG.C427MU.AWSIMAGE, // UNIT=SYSDA, // VOL=SER=SP3288,SPACE=(CYL,(1200,348),RLSE) //INTAPE DD DISP=SHR,UNIT=TAPE,VOL=SER=C427MU, // LABEL=(1,BLP,EXPDT=98000),DSN=WSBG.INTAPE //SYSIN DD * VERIFY TAPEALL INTAPE /* //

Sample: AWSUTIL job to create AWS tape file from real tape.

363

Page 364: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

//SHAI1DT JOB (EMC),,MSGCLASS=X,MSGLEVEL=(1,1),CLASS=A //DITTTV EXEC PGM=DITTO,PARM='JOBSTREAM' //STEPLIB DD DSN=DIT130.SDITMOD1,DISP=SHR //SYSPRINT DD SYSOUT=X //INTAPE DD DISP=(OLD,KEEP),DSN=DUMMY,LABEL=(,BLP,EXPDT=98000), // UNIT=3490,VOL=SER=M267AA //OUTTAPE DD DISP=(NEW,KEEP),DSN=DUMMYX,LABEL=(,BLP), // UNIT=3490,VOL=SER=MPT033 //SYSIN DD * $$DITTO TT LABEL=BLP,INPUT=INTAPE,OUTPUT=OUTTAPE,NFILES=EOV

Sample: DITTO job to create MFNetDisk tape file. MFNetDisk enables the user to create copy of MFNetDisk tape format to AWS file format. MFNetDisk enables the user to create from AWS format a copy in the MFNetDisk tape format. Why AWS? AWS is famous format and it supports by many companies, so that is the reason.

364

To create the AWS or the MFNetDisk tape, please use the script in the example below.

Page 365: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

365

Support the AWSTAPE in MFNetDisk

Page 366: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Trust in MFNetDisk to protect your tapes MFNetDisk can protect your tapes from any user error. It will disable script which tries to damage the tape. It will disable CCW which try to write data to the tape. To protect your tape run script MODIFY->TAPE->WRITE->DISABLE. See example. When MVS tries to write to the tape, MFNetDisk will send back to MVS command reject with message from MFNetDisk in PC, explaining the error. *IEC501A M 0580,PRIVAT,SL,COMP,CHKTPMTL,CHKTPMTL,SHAI1.MTL.T1MPT000, MEDIA2 MPC040I MOUNT SCRATCH TAPE <MPT000> (MPCLIB ) MPC111I <PC Msg> Requested volser is write protected in PC=MPT000 IOS000I 0580,00,CMD,01,0E00,,**,MPT000,CHKTPMTL 241 C04C2027000001200000(0000000000000000)0070(00000000)878F1E7114720000 IEC512I I/O ERR 0580,MPT000,SL,CHKTPMTL,CHKTPMTL,SHAI1.MTL.T1MPT000 IEC518I SOFTWARE ERRSTAT: INTLABEL 0580,MPT000,SL,CHKTPMTL,CHKTPMTL IEC502E R 0580,MPT000,SL,CHKTPMTL,CHKTPMTL IEC147I 613-40,IFG0194K,CHKTPMTL,CHKTPMTL,TAPE,0580,,SHAI1.MTL.T1MPT000 IEA995I SYMPTOM DUMP OUTPUT 246 SYSTEM COMPLETION CODE=613 REASON CODE=00000040

366

Easily by running script MODIFY->TAPE->WRITE->ENABLE, PC MFNetDisk will enable to write to the tape.

Page 367: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Protect your MPT000 tape from any writing to the tape.

367

Page 368: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

MFNetDisk scratch control MFNetDisk now can control the tapes as a tape manager does. If you tire to use the CA or IBM or BMC tape manager for MFNetDisk tapes you can use the MFNetDisk tape manager which can be used only for MFNetDisk emulated tapes. MFNetDisk will control the tapes only if you like it to do so. MFNetDisk to control the tapes need MF and PC to agree about it by setting specific parameters in PC and MF. In the MF, just specify the SCRCTL=Y in the new TAPE key parameter in the configuration file in the SAMPLIB library. You can change this set using the modify command F MPC, CTLSCR=Y/N. To check the status of CTLSCR, run modify command F MPC, SRV=Q. You must be aware that parameter CTLSCR value must be the same for many MF which access the PC! MFNetDisk in PC check automatically if tapes need to be scratch. If the expiration date is due, MFNetDisk will delete the tape file to reclaim the free space! If you do not like the tape to be delete you can use the script ADDRETENTIONDAYS to add more days to your tapes. If you want to be sure that your tapes will not be scratch change the retention day’s rules. TCP PORT=11000,TIMEOUT=30 SERVER TASKS=8,BUFL=66 TAPE CTLSCR=Y TAPEDRV MVSDVNUM=0580,RANGE=8 3490E MTL TAPEDRV MVSDVNUM=0590,RANGE=8 3490E NOMTL TAPELOC VOL=MPT000,COUNT=32, PCIP=169.254.0.1,SCRATCH=Y TAPELOC VOL=MPT032,COUNT=32,

368

PCIP=169.254.0.1,SCRATCH=Y

Page 369: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

In the PC run script MODIFY->TAPE->SCRATCHMANGER->ENABLE. MFNetDisk control scratches for unlimited MTL and for non MTL. Each PC can handle unlimited tapes ranges, each will define if these tapes ranges are MTL or not. If it is MTL, the tapes range will add parameter of the name of the MTL library. In our example the library name is MPCLIB. Each PC will assign to any tape defined in PC or in the DD card retention days, this value is assign if data was written to the tape. If only read done to tape, the old value will decide when the tape will become automatically scratch by PC. The decision for the value of the retention days is made by the user if the user uses the EXPDT parameter. If there is no EXPDT in the DD card then the rules are taken control and decide the retention days. Currently, MFNetDisk support the EXPDT=99000, EXPDT=99365, EXPDT with other values and RETPD parameter in the DD card. EXPDT=98000 is ignored by MFNetDisk. Rule can be defined by the users. Currently MFNetDisk supports 3 rules, MVS JOB name, MVS PROGRAM name and MVS full DSNAME. Defining rules is optional, good chance that most users will assign rules, but if you select to not define rules to MFNetDisk tape manager and there is no EXPDT or RETPD value then MFNetDisk will assign a default value. The default value is 7 days but the user may change it according to his need. The default value will be in effect only if there are no rules or if the rules are not fit to the creator of the tape, meaning the written DSNAME and the JOB name and the PROGRAM name are not defined in the rules data. To assign new default days run script MODIFY->TAPE->RULE->SETDEFAULTRETENTINDAYS. To add rule run script MODIFY->TAPE->RULE->ADDTAPERULE.

369

Page 370: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

370

Page 371: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

371

Page 372: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Understand the MFNetDisk Tape manager MFNetDisk decides if tape is scratch by checking the rules defined in PC MFNetDisk and by checking value passed by DD JCL cards when it runs in MF using PGM, JOBNAME, EXPDT and DSNAME JCL parameters. MFNetDisk also checks if the user defined the tape as write disable in PC. If this is the case the tape will never used as scratch. User can check the status of tape by using DISPLAY-> TAPE>TAPESTATUS. In the example, tape label MPT034 TAPESTATUS is Private and the expiration date for the tape is March 23, 2011.

372

You can see that the tape is not write disable. Also you can see that the reason for this expiration date is shown in “ TAPE STATUS REASON”. In the example the DDEXPDT and DSN was the reason that MFNetDisk

Page 373: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

decide the expiration date. MFNetDisk checks all the files in the tape and other criteria and the latest expiration date for all files make the decision. User can check the files in tape by using DISPLAY-> TAPE>FILESINTAPE. In the example, MFNetDisk list all the files in tape and analyze each file and assign expiration date for the file. Be aware that this script does not report the tape status, but report the MFNetDisk decision for each file in the tape. This script helps me to debug MFNetDisk tape manager, but I find this script helpful to debug the tape manager by the user in case of error.

User can check the status of tape by using DISPLAY-> TAPE>PENDSCRATCH This script reports the status of tape in range using generate tape volser. In out example VOL=MPT03*. If this is the case MFNetDisk will report about the status of all tape in range in short format.

373

Page 374: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

374

Page 375: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Quick start to install and manage MFNetDisk tapes We want to define MFNetDisk as MTL or NONMTL in address 580 using 16 devices and let MFNetDisk to be our tape manager for the tapes. We want to work with 32 tapes for now using VOL MPT000 until MPT031.

• Define the tape drives to MVS using HCD. For MTL define the library

name as MPCLIB. • Add statements to MVS configuration file. •

TCP PORT=11000,TIMEOUT=30 SERVER TASKS=8,BUFL=66 TAPE CTLSCR=Y TAPEDRV MVSDVNUM=0580,RANGE=8 3490E MTL TAPEDRV MVSDVNUM=0590,RANGE=8 3490E NOMTL TAPELOC VOL=MPT000,COUNT=32, PCIP=169.254.0.1,SCRATCH=Y

Run script MODIFY->SYS->PCSTORAGE->ADDPCSTORAGE to define the location in PC where MFNetDisk will store the tapes data. This must have storage capacity according to your need. The script can be like this. CMD=FADDPCSTORAGE,PATH=C:\MPCTAPE\

375

Run script CONFIG->TAPE->TAPERANGE->ADDTAPESRANGE->MTL (for NONMTL use the NOMTL). This will define the tapes range which MFNetDisk PC will control and allowed to be uses in this PC. The script can be like this.

Page 376: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

CMD=ADDNEWMTLTAPESRANGE,MTLLIB=MPCLIB,VOL=MPT000,COUNT=32

If your tapes are using MTL, you must add the tapes to MVS OAM. OAM will not allow mounting tape which is not defined to OAM. If you have your own tape manager and you specify that CTLSCR=N than this step may be ignore according to your tape manager running in your site. To run MFNETDISK tape manager run script CONFIG->TAPE->TAPERANGE->ADDTAPESRANGE->ADDTAPESRANGETOOAM. This script will send to MVS all the tapes which the OAM will control for specific MTL library. The IP parameter is the MVS IP to send the request to add tapes to OAM. The script can be like this. cmd=AddVolsToMVSOAM,mtllib=mpclib,ip=192.168.100.2,vol=mpt000,count=32

Now you need to enable the scratch management in PC. Be aware that the tape management will manage all the tapes defined to this PC. To enable the scratch control run script MODIFY->TAPE->SCRATCHMANAGER->ENABLE. So now, you ask MVS to control the scratch tapes and also you allowed the PC to control the scratch tapes. Now you check the default retention days using script DISPLAY->TAPE->RULES. The result of this script can be like this. - SCRATCH MANAGER IS ENABLE. DEFAULT RETENTION DAYS=7 NO TAPES RULES WAS DEFINED

If you want the default value run script MODIFY->TAPE->RULE->SETDEFAULTRETENTIONDAYS. You decide to change the value from 7 to 8. The script can be like this.

376

Page 377: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

CMD=SETDEFAULTRETENTIONDAYS,DAYS=08

You decide that for some jobs must have a higher retention days, the number you want to add is 14. Run script MODIFY->TAPE->RULE->ADDTAPERULE. The script can be like this.

CMD=ADDTAPERULE,JOB=MYJOB*,PGM=CHKTP*, DAYS=08,DSN=SHAI1.MTL* You decide that you made a mistake and you want to change the DSN to other value, let say SHAI1.XML.*. In this case you must delete the rule and define a new one. To delete the old rule you need to specify the same DSN as it appeared in the script result, DSN=SHAI1.MTL*. Run script MODIFY->TAPE->RULE->DELTAPERULE. Your script can be like this. CMD=DELTAPERULE,DSN=SHAI1.MTL*

You can add unlimited rules according to your site requirements.

377

At this point you can run jobs from MVS and see the results of your job. The result of running you job can be like this.

Page 378: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

*IEF233A M 0580,PRIVAT,SL,CHKTPMTL,CHKTPMTL,SHAI1.MTL.T1MPT000,MEDIA2 IEC705I TAPE ON 0580,MPT000,SL,COMP,CHKTPMTL,CHKTPMTL,SHAI1.MTL.T1MPT00 ,MEDIA2 MPC033I RECONECT TO PC ,<WRITE ,000032> IEC205I TAPE,CHKTPMTL,CHKTPMTL,FILESEQ=1, COMPLETE VOLUME LIST, 942 DSN=SHAI1.MTL.T1MPT000,VOLS=MPT000 IEC705I TAPE ON 0580,MPT000,SL,COMP,CHKTPMTL,CHKTPMTL,SHAI1.MTL.T1MPT00 ,MEDIA2 IEC205I TAPE,CHKTPMTL,CHKTPMTL,FILESEQ=1, COMPLETE VOLUME LIST, 944 DSN=SHAI1.MTL.T1MPT000,VOLS=MPT000 IEC205I TAPE,CHKTPMTL,CHKTPMTL,FILESEQ=2, COMPLETE VOLUME LIST, 945 DSN=SHAI1.MTL.T2MPT000,VOLS=MPT000

If you like to know what retention days MFNetDisk PC assigned to your job run script DISPLAY->TAPE->TAPESTATUS Your script can be like this. CMD=DTAPESTATUS,VOL=MPT000

And your result can be like this. FILE=C:\MPCDASD\\TPMPT000.TPV

378

, TAPESTATUS=TAPEISPRIVATE,TAPEEXPDT=1/28/2010 9:29 AM,TAPEWRTPROTECT=FALSE FILESIZE <40729K>, TAPEREALSIZE <40729 K>, BLKSINTAPE <2522>, TM NUMBER <10> LAST READ TIME = 1/21/2010 9:29 AM, LAST WRITE TIME = 1/21/2010 9:28 AM

Page 379: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

If you like to check MFNetDisk tape manager input to assign these retention days, run script DISPLAY->TAPE->FILESINTAPE. Your script can be like this. CMD=DFILESINTAPE,VOL=MPT000

And the result can be like this. DSN=SHAI1.MTL.T2MPT000, CREDATE=1/21/2010 9:26 AM ,CREJOB=CHKTPMTL, CREPGM=TPCHKN,CREIP=192.168.100.2 BLKID=134, LSEEK=1242260 DSN=SHAI1.MTL.T1MPT000, CREDATE=1/21/2010 9:26 AM ,CREJOB=CHKTPMTL, CREPGM=TPCHKN,CREIP=192.168.100.2 BLKID=2, LSEEK=1000 DSN=SHAI1.MTL.T3MPT000, CREDATE=1/21/2010 9:28 AM ,CREJOB=CHKTPMTL, CREPGM=TPCHKN,CREIP=192.168.100.2 BLKID=587, LSEEK=1DEB820

If you find out that the expiration date of your tapes need to me longer of shorter you can run script MODIFY->TAPE->RULE->ADDRETENTIONDAYS. You can add days or you can reduce days. The script can be like this. CMD=ADDRETENTIONDAYS,DAYS=2,VOL=MPT000

Or it can be like this.

379

CMD=ADDRETENTIONDAYS,DAYS=-2,VOL=MPT000

Page 380: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

If you like to see the layout of the tape run script DISPLAY->TAPE->TAPESCONTENT. The short form result can be like this. NOW BLKID=1,LSEEK=FA0, DATA=VOL1MPT000 NOW BLKID=2,LSEEK=1000, DATA=HDR1HAI1.MTL.T1MPT00 NOW BLKID=3,LSEEK=1060, DATA=HDR2U000000000000CHK NOW TM. BLKID=4,LSEEK=10C0,TMENT=0

�NOW BLKID=5,LSEEK=10D0, DATA=.. +..?............. NOW TM. BLKID=130,LSEEK=1242180,TMENT=1 NOW BLKID=131,LSEEK=1242190, DATA=EOF1HAI1.MTL.T1MPT00 NOW BLKID=132,LSEEK=12421F0, DATA=EOF2U000000000000CHK NOW TM. BLKID=133,LSEEK=1242250,TMENT=2 NOW BLKID=134,LSEEK=1242260, DATA=HDR1HAI1.MTL.T2MPT00 NOW BLKID=135,LSEEK=12422C0, DATA=HDR2U000000000000CHK NOW TM. BLKID=136,LSEEK=1242320,TMENT=3

380

Page 381: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Simplified MFNetDisk tapes parameters in MF and PC. MFNetDisk supports MTL and NONMTL drive 3490. MFNetDisk support MFNetDisk tapes manager or other tapes manager (CA1, TMM). In one PC MFNetDisk, you can run many MTL, and one NONMTL library. One MF MFNetDisk can support many MTL and many NONMTL libraries because each tape specify in MF point to specific PCIP. Tapes manager are used to manage tapes attribute, meaning SCARTCH or non SCARTCH tapes.

381

If user want to support the MFNetDisk tape managers, they must specify in MVS parameter file (MPCOPT), TAPE CTLSCR=Y. In this case MF MFNetDisk will not access OAM to check for scratch tapes. If you have your own tape manager (CA1, TMM) you must specify TAPE CTLSCR=N The meaning of TAPE CTLSCR=Y/N parameter is if MFNetDisk will check for scratch using OAM (CTLSCR=N) or send the request to PC (CTLSCR=Y) to try to manage the SCARTCH request.. In PC if SCRATCHMANAGER=DISABLE, MFNetDisk PC will reject SCRATCH or PRIVATE requests (MODIFY>TAPE>SCRATCHMANAGER>DISABLE). In this case MFNetDisk will not manage scratch tapes at all. This option is required if you use NON MFNetDisk tape manager. So to make it clear, for CA and IBM and BMC tape manager you must set in PC the TAPEMANAGER as DISABLE. If you like to use MFNetDisk tape manager as your tape manager for MFNetDisk tapes then use SCARTCHMANAGER=ENABLE (MODIFY>TAPE>SCRATCHMANAGER>ENABLE). If MFNETDSK in PC will receive mount request from MF for scratch or private volume it will look in his internal data for tape with SCARTCH attribute to be used by MF for the pending SCARTCH or PRIVATE mount requests (TAPE SCRATCHNANAGER=ENABLE). In this case MFNetDisk in PC when SCARTCHMANAGER=ENABLE, it will also manage the status of the tapes. MFNetDisk is this case will change the status of emulated tapes from private to scratch according to the rule specify by the users for tapes. In general the default when rules are not specified by user is that the tape is private after write to tape for 7 days and after this time it will be convert to scratch automatically by MFNetDisk in PC.. All rules can be updates according to users needs. MFNetDisk will not allow conflict parameter between MF and PC. If you specify in MF TAPE CTLSCR=Y and in PC TAPE SCRATCHMANAGER=DISABLE the mount request will be rejected. The same if MF TAPE CTLSCR=N and PC TAPE SCRATCHMANAGER=ENABLE mount request will be reject as well.

Page 382: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

$HASP373 CHKTP STARTED IEF403I CHKTP - STARTED - TIME=22.32.19 *IEF233A M 0591,MPT033,,CHKTP,CHKTP,SHAI1.T1MPT033 MPC111I <PC Msg:169.254.0.1> Conflict parameter in MF and PC for tape ctl scratch. <MF:TAPE CTLSCR=Y IOS000I 0591,00,EQC,9F,0E00,,**,MPT033,*MASTER* 120 1040202C000004200000(0000000000000000)0070(00000000)878F1E7114720000 > <PC:TAPEMANGER=N>PC and MF must have the same va lue for MFNetDisk tape manager

Example: to conflict parameter which reject the mount request by MFNetDisk MF and PC. The must value for scratch manger are: MTL or NONMTL and MFNetDisk tape manager: • MF: TAPE CTLSCR=Y • PC: SCARTCHMANAGER=ENABLE MTL or NONMTL and CA1 or other tape manager product but not MFNetDisk tape manager: • MF: TAPE CTLSCR=N • PC SCRATCHMANAGER=DISABLE In all options (MTL and NONMTL) you must define: • In MF: TAPEDRV - defines the tapes drives used for MTL and NONMTL. TAPELOC- defines all the tapes labels and the PC IP which support these tapes. • In PC: Define PCSTORAGE- Define the PC disks locations which MFNetDisk used to store the tapes data. Define TAPERANGES- Define all the tapes belong to NONMTL and MTL managed by the PC. For MTL, the script must specify the MTL library name which used by the tapes range. For MTL run, CONFIG>TAPE>TAPERANGE>ADDTAPESRANGE>MTL For NONMTL, CONFIG>TAPE>TAPERANGE>ADDTAPESRANGE>NOMTL If you run with MFNetDisk tape manager, you need to define your rules to change tapes attribute to SCARTCH. MFNetDisk support parameters which are used by many tapes manager in the MF market.

382

The supported MF values are: JOBNAME, DSN, PGM. Also MFNetDisk support EXPDT and more JCL parameters.

Page 383: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

The default rule is that after tape write, the tapes retention days is 7 days. To update rules, run script MODIFY>TAPE>RULE and then select the required parameters. To display the rules, run script DISPLAY>TAPES>RULES. If you use MFNetDisk tape manager and MTL, the OAM must contain the tapes labels support for specific MTL. This can be hard work to add to OAM thousand of tapes.

383

MFNetDisk can easily, do it for you by running the CONFIG>TAPE>TAPERANGE>ADDTAPESRANGETOOAM

Page 384: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

Use CA1 or other tape manager for MTL to control MFNetDisk This example will work from the MVS side. TAPE CTLSCR=N TAPEDRV MVSDVNUM=0580,RANGE=3 TAPELOC VOL=600000,COUNT=50, PCIP=192.168.1.77,SCRATCH=Y

If PC run CONFIG>TAPE>ADDTAPESRANGE if it is MTL, select ADDTAPESRANGEMTL. Also verify that you defined PCSTORAGE. This will define where MFNetDisk will put your tapes emulated PC files.

384

If you use CA1 or other MF tapes manager, verify that MFNetDisk will not manage your scratch. The default is that MFNetDisk in PC does not manage your scratch tapes.

Page 385: MFNETDISK© By shai Hess (2007-2012) Installation and User ...

385