================================================================================ Note 38.0 DECnet Down-line Loading No replies FURILO::GIORGETTI 529 lines 4-SEP-1985 15:54 -------------------------------------------------------------------------------- +---------------+ +-----------------+ | d i g i t a l | | uNOTE # 038 | +---------------+ +-----------------+ +----------------------------------------------------+-----------------+ | Title: DECnet Down-line Loading | Date: 26-Jul-85 | +----------------------------------------------------+-----------------+ | Originator: Scott D. Blessley | Page 1 of 9 | +----------------------------------------------------+-----------------+ This article overviews the downline load process used by DECnet for remote loading of PDP-11 and VAX processors. Downline loading is a versatile and complicated process. This article is intended as an introduction/aid to the process, not a tutorial. An extensive reference list appears at the end of the article for readers interested in pursuing the subject further. 1 OVERVIEW OF THE DOWNLINE LOAD PROCESS DECnet downline load is the set of hardware and software features which allow complete systems (RSX-11S and VAXELN) to be loaded into remote, potentially unattended processors. In addition, RSX-11S offers the capability to: dynamically load tasks over comm lines, checkpoint tasks out of memory over the line, and upline dump a failed operating system. RSX-11S functionality is a subset of those features found in RSX-11M. VAXELN also features a symbolic debugger that allows debug of the target from the host processor. 2 DEFINITIONS 2.1 HOST The host [node] (for this discussion) refers to both the machine which originates the load, as well as the machine which loads the software. In actuality, these need not be the same machine. 2.2 TARGET The target [node] is the machine being loaded with new software. It must be powered up, but may or may not have to be awaiting primary bootstrap, depending on its communications bootstrap device and boot options. 369 uNOTE # 038 Page 2 of 9 2.3 EXECUTOR The executor [node] is the node which initiates the commands to downline load a target. It need not be the same as the host. +------------+ | | | TARGET |<----------+ | (HOBSON::) | | +------------+ | ^ | | Operating System | | Load request | | | | | | | | | | | | | NCP>TRIGGER NODE HOBSON | v v +------------+ +------------+ | | | | | HOST | | EXECUTOR | | (FURILO::) | | (FURILO::) | +------------+ +------------+ ( ^ same CPU or ^ different) Relationship between host, target, and executor nodes 3 PREPARING FOR DOWNLINE LOAD There are three overall steps: o Configuring the communications hardware - both on the host and target systems o Configuring the DECnet software and the operating system image that will be loaded. o Verification and testing. The most frequent problem is the failure to correctly configure the host and/or target hardware. There are two principal places for error: - setting DIP switches inappropriately resulting in incorrect line speeds, wrong power-up boot options (BSEL switches), etc. - Skew between hardware configuration and software (for example mis-specifying the vector/CSR or the Ethernet address for the target device). Be sure to have the latest version of the hardware manuals. 370 uNOTE # 038 Page 3 of 9 Specific points to be careful about: 1. Vector/CSR 2. B[oot]SEL[ect] switches - these specify under what conditions the comm interface will force a bootstrap. 3. Service password - this is a protection feature to lessen the likelihood of an inadvertent or malicious downline load. 4. Ethernet address (Ethernet circuits only) - the unique address that the target Ethernet device will respond to. 5. Service circuit - this identifies at the end of which wire to expect the target. 6. Enable SERVICE for the circuit being downline loaded. This enables the DECnet software to start the downline load process on the host. 7. Make sure event logging is enabled, or you'll miss error messages. 8. It may seem obvious, but make sure that the target comm device you're using, and the processor bootstrap are *capable* of doing what you ask. For details, see uNote #015, "Q-bus Hardware Bootstraps" 4 RSX-11S OVERVIEW Configure the RSX-11S image on a VAX/VMS, RSX-11M or RSX-11M+ system, using the normal tools (SYSGEN, MAC, TKB, VMR). Prepare and build the host loader table. (Refer to the References section for documentation on RSX downline load procedures) 5 VAXELN OVERVIEW The program/VAXELN image development sequence is: 1. Develop the source modules 2. LINK the source modules with the RTLSHARE.OLB and RTL.OLB libraries 3. EBUILD the LINKed image to produce a bootable VAXELN system. To be able to downline load the VAXELN image, you must select Boot Method DOWNLINE in the VAXELN System Characteristics portion of EBUILD. 371 uNOTE # 038 Page 4 of 9 4. Downline load the target over Ethernet (this is not the only method of loading a VAXELN target). The target can be loaded through EDEBUG commands, or via NCP LOAD/TRIGGER commands. 5. Debug the application and repeat steps 1-4. +------------+ +------------+ +------------+ +------------+ |PASCAL or C |.OBJ |$ EPAS or |.EXE | $ EBUILD |.SYS | $ EDEBUG | |source prog.|---->|$ CC |---->| |---->| or NCP | +------------+ +------------+ +------------+ +------------+ ^ | Other VAXELN | modules | VAXELN Program development sequence 6 OBSERVING & DEBUGGING There are a variety of error indications, and diagnostic aids available. Some are at the hardware level (comm device diagnostic LEDs), some from the host software (upline dump for RSX-11S, EDEBUG for VAXELN). Others are provided by the DECnet components that handle downline load, through the EVL (EVent logger) capability. Some diagnostic facilities: 1. Device status LEDs give a numeric indication as to potential hardware, or hardware configuration problems with the interface or its connections. 2. Event logging messages: - Event code 0.3 - Auto service: indication that a portion of a DLL is taking place. - Event code 0.7 - Aborted service request: indication that a portion of a DLL load request is failing. This is not always bad. For example, it is an acceptable "error" when multiple hosts (on an Ethernet) offer service and the target accepts only one. The remaining systems report event 0.7. EVL messages come with varying amounts of diagnostic information. A 0.3 or 0.7 event includes the type of load being requested, from where it is requested, to whom it is requested, etc. 372 uNOTE # 038 Page 5 of 9 3. Failure message from NCP on LOAD/TRIGGER commands - may give some insight as to the source of the problem 4. Line/circuit counters - indicate how much data has been transmitted and received , and what errors have occurred. Remember: Enable event logging: NCP SET LOGGING KNOWN EVENTS STATE ON. Otherwise, EVL will not display this diagnostic information! 7 EXAMPLES One the next three pages are examples showing the successful load of a terminal server and a VAXELN target. The appearance of the output will be approximately the same for your targets, only with different node names and files. 373 uNOTE # 038 Page 6 of 9 $ reply/enable=network %%%%%%%%%%% OPCOM 26-JUL-1985 13:09:11.96 %%%%%%%%%%% Operator _FURILO$RTA1: has been enabled, username BLESSLEY %%%%%%%%%%% OPCOM 26-JUL-1985 13:09:11.99 %%%%%%%%%%% Operator status for operator _FURILO$RTA1: NETWORK $ run sys$system:ncp NCP>show node hobson characteristics !Hobson is a DECserver 100 Node Volatile Characteristics as of 26-JUL-1985 13:10:49 Remote node = 13.102 (HOBSON) Service circuit = UNA-0 Hardware address = 08-00-2B-02-0F-5F Load file = SYS$SYSROOT:[DECSERVER]PS0801ENG.SYS Dump file = SYS$SYSROOT:[DECSERVER]PSDMP0F5F.SYS NCP>trigger node hobson NCP>^Z %%%%%%%%%%% OPCOM 26-JUL-1985 13:10:13.16 %%%%%%%%%%% Message from user DECNET on FURILO DECnet event 0.3, automatic line service From node 7.272 (FURILO), 26-JUL-1985 13:10:13.04 Circuit UNA-0, Load, Requested, Node = 13.102 (HOBSON) File = MOM$LOAD:PS0801ENG, Operating system, Ethernet address = 08-00-2B-02-0F-5F %%%%%%%%%%% OPCOM 26-JUL-1985 13:10:18.08 %%%%%%%%%%% Message from user DECNET on FURILO DECnet event 0.3, automatic line service From node 7.272 (FURILO), 26-JUL-1985 13:10:16.40 Circuit UNA-0, Load, Successful, Node = 13.102 (HOBSON) File = MOM$LOAD:PS0801ENG, Operating system, Ethernet address = 08-00-2B-02-0F-5F DECserver-100 Downline Load Example 374 uNOTE # 038 Page 7 of 9 Below is an example of down-line load of a MicroVAX II system using EDEBUG. The first part of the illustration shows the DECnet volatile database entries for the target, as seen from the system that ultimately boots the target, and from another that fails to boot the target. [This command is issued on system "BELKER"] BELKER> NCP SHOW NODE TUBBS CHARACTERISTICS Node Volatile Characteristics as of 7-AUG-1985 10:38:59 Remote node = 7.453 (TUBBS) Service circuit = UNA-0 Hardware address = 08-00-2B-02-1C-63 Load file = DISK$USER:[SAMPLE.ELN]CHER.SYS; [This command is issued from system "FURILO"] FURILO> NCP SHOW NODE TUBBS CHARACTERISTICS Node Volatile Characteristics as of 7-AUG-1985 10:40:52 Remote node = 7.453 (TUBBS) Load file = DISK$USER:[SAMPLE.ELN]CHER.SYS; ----------------------------------------------------------------------- Command to downline load the VAXELN image from EDEBUG: [This command and related output is from system "BELKER"] $ EDEBUG/LOAD=PROG1 TUBBS Edebug V2.0-00 Loading "TUBBS" Connecting to "TUBBS" . . . (screen mode debugger) Event log messages resulting from the EDEBUG command: DECnet event 0.7, aborted service request From node 7.272 (FURILO), 6-AUG-1985 16:13:14.46 Circuit UNA-0, Line open error, Unrecognized component, Node Ethernet address = 08-00-2B-02-1C-63 ^ FURILO:: didn't have this address defined in its volatile database so it couldn't service the request 375 uNOTE # 038 Page 8 of 9 DECnet event 0.3, automatic line service From node 7.190 (BELKER), 6-AUG-1985 16:12:51.34 Circuit UNA-0, Load, Requested, Node = 7.453 (TUBBS) File = DISK$USER:[SAMPLE.ELN]CHER.SYS;, Operating system Ethernet address = 08-00-2B-02-1C-63 ^ BELKER:: did have the address, corresponding to an entry for "TUBBS::" Here, the target system is requesting an operating system load. BELKER's DECnet software is acknowledging the request. DECnet event 0.3, automatic line service From node 7.190 (BELKER), 6-AUG-1985 16:12:57.62 Circuit UNA-0, Load, Successful, Node = 7.453 (TUBBS) File = DISK$USER:[SAMPLE.ELN]CHER.SYS;, Operating system Ethernet address = 08-00-2B-02-1C-63 BELKER responds with packet(s) containing the requested O.S. code for the target 8 SUMMARY This Micronote has presented an overview of the downline loading process. Many "components" are involved in the process - at least two CPUs and at least two communication interfaces, target operating system and images plus host, target, and executor DECnet software. The procedure is akin to bringing up a complex, customized operating system up on a remote processor, without a local load device. Once configured, it offers the benefits of not requiring any mass storage devices (resulting in higher MTBF and lower cost), plus the ability to bootstrap a processor which my be physically inaccessible. There is a great amount of information on DECnet downline load. There is no single compendium, although each of the supported operating systems, plus VAXELN have a chapter on the subject. 376 uNOTE # 038 Page 9 of 9 9 REFERENCES All of the following references are to Digital publications. DECnet-RSX Volume IV - System Manager's Guide AA-H224C-TC Guide to Networking VAX/VMS - AA-Y512A-TE (chapter 4) QMA DMV11 Synchronous Controller Technical Manual EK-DMVQM-TM DEQNA User's Guide EK-DEQNA-UG DECnet Digital Network Architecture (Phase IV) General Description AA-N149A- TC DECnet Digital Network Architecture (Phase IV) Maintenance Operations Functional Specification AA-X436A-TC Networks and Communications Buyer's Guide ED-26347 "VAXELN Installation and Programming" AA-Z454A-TE "MicroVax I Owner's Manual" EK-KD32-OM "MicroVAX I Owner's Manual" (Release Notes) EK-KD32A-OM-CN1 Micronote #015, "Q-Bus Hardware Bootstraps" Software Product Descriptions: DECnet-11S #10.74 DECnet-11M #10.75 DECnet-11M+ #10.66 DECnet-VAX #25.03 377