Search

Tuesday, March 17, 2020

Getting on HNET from IBM VM/SP with TCPNJE extension on S/370 Hercules SDL Hyperion

ibm-370-155-control-panel

Continuing my foray into the world of IBM Mainframe Networking, I recently deployed the node MDSDVM1 that connects to HNET global hobbyist mainframe network.

MDSDVM1 runs IBM VM/SP (Virtual Machine System Product) Release 5 operating system on an IBM S/370 mainframe emulated by Software Development Laboratories SDL Hercules Hyperion with experimental extensions supporting NJE (Network Job Entry) networking protocol over TCP/IP (i.e. TCPNJE) running on MX Linux 19 “patito feo”. I received the version of Hercules emulator from Moshix who also configured MDSDVM1 over 3270 terminals access remotely,

Here are some notes I captured during installation, configuration and operation of the system.

IBM VM/SP Release 5
Hercules virtual machine with NJE Networking support

Booting VM/SP


$ cd vmspMDSDVM1
$ hercules -f hercules.cf

Hercules will start up and lots of information will scroll by.
Eventually it will wait for input:

HHC00100I Thread id 00007fdf68193700, prio -1, name 'console_connect' started
HHC01024I Waiting for console connections on port 3270
herc =====>

From another terminal, launch IBM 3270 terminal emulator and connect to port 3270:

$ c3270 localhost:3270 # 3270 Text terminal
or
$ x3270 localhost:3270 # X 3270 client

This should display:

 Version  : 4.3.9999.0-SDL
 Host name         : dell-dimension-e510
 Processors        : MP=2
 0:00C0
                                                                     
                                                                     
 IIIIIIIIII     BBBBBBBBBBBBBBBBB        MMMMMMMM               MMMMMMMM
 I::::::::I     B::::::::::::::::B       M:::::::M             M:::::::M
 I::::::::I     B::::::BBBBBB:::::B      M::::::::M           M::::::::M
 II::::::II     BB:::::B     B:::::B     M:::::::::M         M:::::::::M
   I::::I         B::::B     B:::::B     M::::::::::M       M::::::::::M
   I::::I         B::::B     B:::::B     M:::::::::::M     M:::::::::::M
   I::::I         B::::BBBBBB:::::B      M:::::::M::::M   M::::M:::::::M
   I::::I         B:::::::::::::BB       M::::::M M::::M M::::M M::::::M
   I::::I         B::::BBBBBB:::::B      M::::::M  M::::M::::M  M::::::M
   I::::I         B::::B     B:::::B     M::::::M   M:::::::M   M::::::M
   I::::I         B::::B     B:::::B     M::::::M    M:::::M    M::::::M
   I::::I         B::::B     B:::::B     M::::::M     MMMMM     M::::::M
 II::::::II     BB:::::BBBBBB::::::B     M::::::M               M::::::M
 I::::::::I     B:::::::::::::::::B      M::::::M               M::::::M
 I::::::::I     B::::::::::::::::B       M::::::M               M::::::M
 IIIIIIIIII     BBBBBBBBBBBBBBBBB        MMMMMMMM               MMMMMMMM 
                         MAINFRAME SYSTEM UNDER SURVEILLANCE                 


At this point, in the Hercules session, use the ipl command to boot from disk vm5res.3380.1c0.cckd which has device ID 1C0 both in the filename and hercules.cf:

herc =====> ipl 1c0

Hercules will now come back to the prompt after:

HHC00100I Thread id 00007fdf536c2700, prio -1, name 'cckd_ra thread 2' started
/
/
/
/VM/SP Release 5, Service Level 0521; created on 02/27/20 at 18:41:10
HHC00107I Starting thread cckd_writer(), active=0, started=0, max=2
/
HHC00100I Thread id 00007fdf535c1700, prio -1, name 'cckd_writer thread 1' started
/It is now 15:10:30 CST FRIDAY 02/28/20
/Change TOD clock (YES|NO) :
herc =====>

As configured (via the configuration line "001F    3215-C  NOPROMPT"), responses starting with a slash ("/") character at the hercules prompt are passed through to the emulated machine.
So, to answer NO,

herc =====> /NO

or to change the clock time, enter the following:

/Change TOD clock (YES|NO) :
herc =====> /YES
/Set date (MM/DD/YY) :
herc =====> /02/28/20
/Set time (HH:MM:SS or HH.MM.SS) :
herc =====> /16:29:55
/Press 'TOD ENABLE SET' key at designated instant
/It is now 16:29:55 CST FRIDAY 02/28/20
/Change TOD clock (YES|NO) :
herc =====> /NO
/
/DMKCPI971I System is uniprocessor generated
/DMKUDR476I System directory loaded from volume VM5RES
HHC00009I RRR...RING...GGG!
/
/DMKCPI974I No valid override file; using system defaults
/Start ((WARM|CKPT|FORCE|COLD) (DRAIN))|(SHUTDOWN) :
herc =====>

Now to boot up:

herc =====> /COLD

Bootup will complete with:

/15:41:24 AUTO LOGON   ***   TCPIP    USERS = 003  BY  AUTOLOG1
/15:41:25 USER DSC LOGOFF AS AUTOLOG1 USERS = 002
herc =====>

On the 3270 terminal window, the following is now displayed:

--------------------------------------------------------------------------------
VIRTUAL MACHINE/SYSTEM PRODUCT












              VV       VV  MM       MM                       
              VV       VV  MMM     MMM  MDSDVM1 NODE ON HNET 
               VV     VV   MMMM   MMMM                       
                VV   VV    MM MM MM MM                       
                 VV VV     MM  MMM  MM                       
                  VVV      MM   M   MM                       
                   V       MM       MM                       
               This system is for the use of authorized users 
               only. Usage of  this system may be monitored   
               and recorded                                   












Fill in your USERID and PASSWORD and press ENTER                           
(Your password will not appear when you type it)                           

USERID   ===>
PASSWORD ===>                                       

COMMAND  ===>
                                                           RUNNING   MDSDVM1
--------------------------------------------------------------------------------



LOGGING IN
==========

Use the tab key to activate the USERID: entry field and then to move to the PASSWORD: entry field.
USERID: MAINT
PASSWORD: *****

The login screen looks like this:

--------------------------------------------------------------------------------
 VIRTUAL MACHINE/SYSTEM PRODUCT












               VV       VV  MM       MM                       
               VV       VV  MMM     MMM  MDSDVM1 NODE ON HNET 
                VV     VV   MMMM   MMMM                       
                 VV   VV    MM MM MM MM                       
                  VV VV     MM  MMM  MM                       
                   VVV      MM   M   MM                       
                    V       MM       MM                       
                This system is for the use of authorized users 
                only. Usage of  this system may be monitored   
                and recorded











                                 
 Fill in your USERID and PASSWORD and press ENTER                           
 (Your password will not appear when you type it)                           

 USERID   ===> MAINT
 PASSWORD ===>                                       

 COMMAND  ===>
                                                            RUNNING   MDSDVM1
--------------------------------------------------------------------------------


Once logged in, the following is shown on the 3270 terminal.

--------------------------------------------------------------------------------
LOGON MAINT
DASD 190 LINKED R/W; R/O BY 002 USERS
DASD 19D LINKED R/W; R/O BY 002 USERS
DASD 19E LINKED R/W; R/O BY 002 USERS
LOGON AT 17:17:52 CST FRIDAY 02/28/20
VM/SP REL 5 06/27/18 14:46




































                                                            VM READ   MDSDVM1
--------------------------------------------------------------------------------

There is no prompt but you can type commands in at this point.
See CP/CMS Command Reference. Examples of commands:

FILELIST

The basic keyboard controls are Cursor up and down, and PF11 to view/edit file. PF7 is page up, PF8 is page down.  F12 switches between command and edit areas.

QQUIT at command area (=====>) quits without saving.

Type "logoff" to logout, which produces this:

--------------------------------------------------------------------------------
LOGON MAINT
DASD 190 LINKED R/W; R/O BY 002 USERS
DASD 19D LINKED R/W; R/O BY 002 USERS
DASD 19E LINKED R/W; R/O BY 002 USERS
LOGON AT 17:17:52 CST FRIDAY 02/28/20
VM/SP REL 5 06/27/18 14:46
logout
Shared S-STAT not available
COMMAND COMPLETE
DMSACP113S B(295) not attached
R (193) R/O
C (194) R/O
E (394) R/O
K (59F) R/O
File MAINT SYNONYM A1 not found
MOSHIX NODE ONLINE USERS AND CONNECTIONS
----------------------------------------
OPERATOR - 01F, TCPIP    - DSC, MAINT    - 0C0
VSM - TCPIP
0003 USERS, 0000 DIALED, 0000 NET
RSCS not logged on

END OF WHO PROCESSING
Ready; T=0.03/0.09 17:25:07
CONNECT= 00:07:15 VIRTCPU= 000:00.08 TOTCPU= 000:00.37
LOGOFF AT 17:25:07 CST FRIDAY 02/28/20

Press enter or clear key to continue














                                                            RUNNING   MDSDVM1
--------------------------------------------------------------------------------


SHUTTING DOWN


In a 3270 terminal, log in as OPERATOR and issue the commands
   
DRAIN ALL
SHUTDOWN

Wait for Shutdown message in Hercules.
Then type in "exit" at the Hercules prompt to exit the emulator.

herc =====> exit

The 3270 terminal emulator will report it is disconnected. You can close the 3270 window.


CONNECTING TO HNET


When Hercules VM/SP machine MDSDVM1 is booted up completely, to connect to HNET, we need three 3270 terminal sessions. Use the "screen" utility to run the sessions in virtual Linux terminals.

1. Login as MAINT to a 3270 session

Start a screen session:

screen -S MDSDVM1-MAINT c3270 localhost:3270

Login as MAINT

Enter the command

ATTACH 090 TO RSCS

Detach from screen (ctrl-a,d)

2. Login as GCS to a second 3270 session

Start a screen session:

screen -S MDSDVM1-GCS c3270 localhost:3270

Login as GCS

Enter the command

#CP DISC

Detach from screen (ctrl-a,d)

3. Login as RSCS to a third 3270 session

Start a screen session:

screen -S MDSDVM1-RSCS c3270 localhost:3270

Login as RSCS

Enter the command

#CP DISC

Detach from screen (ctrl-a,d)

4. Start TCPNJE from the first (MAINT) 3270 session

Reattach to the MAINT user session:

screen -r MDSDVM1-MAINT

Enter the command:

 SMSG RSCS START RELAYB

Detach from screen (ctrl-a,d)

5. Issue NJE commands from the first (MAINT) 3270 session


Later on, reattach to MAINT

  screen -r MDSDVM1-MAINT

and issue NJE commands like:

  RELAY INFO
  RELAY MOON

To add a route to MOSHIX4 via RELAYB:
  SMSG RSCS ROUTE MOSHIX4 TO RELAYB

To send a message "HELLO WORLD" to user MAINT at node MOSHIX4:
  TELL MAINT AT MOSHIX4 HELLO WORLD

Detach from screen (ctrl-a,d) when done.


3270 TERMINAL USAGE



  • There is no prompt - just a flashing cursor at the command area near the bottom
  • If a "HOLDING" or "MORE..." appears at bottom right, more pages of information are waiting to be displayed. Open the Keypad from the menu of c3270 or x3270 and press PA2 for next pages. Simply waiting a bit takes the screen to the next page anyway.
  • The TAB key usually gets the cursor back at the command input area



REFERENCES

https://livingcomputers.org/UI/UserDocs/VM-SP-REL5-IBM-4361/SC19-6209-4-VM-SP-CMS-Command-Reference.pdf

https://livingcomputers.org/UI/UserDocs/VM-SP-REL5-IBM-4361/SC19-6211-3-VM-SP-CP-Command-Reference-for-General-Users-(1).pdf

https://en.wikipedia.org/wiki/VM_(operating_system)

https://h390-mvs.yahoogroups.narkive.com/eoVtbbhd/hhc00002e-sclp-console-not-receiving-operator-commands

https://gunkies.org/wiki/Installing_VM/370_on_Hercules

https://geronimo370.nl/s370/hercules-installing/install-sdl-hyperion-with-nje-support/

https://geronimo370.nl/s370/vm-370-virtual-machine/vm-rscs-with-nje/

Recommended Products from Amazon