This article was previously published under Q158278
This article has been archived. It is offered "as is" and will no longer be updated.
This article discusses the benefits and inner workings of the Windows NT4.0 Remoteboot utility.
The Remoteboot Process
When you start a computer, the operating system is loaded into memory. Whena Remote Initial Program Load (RPL) ROM chip is placed on a networkinterface card (NIC), the client computer will retrieve startup andconfiguration software from the server when the client starts. This RPL ROMinterrupts the computer's standard startup process and redirects the callsfor the operating system to the NIC. The RPL ROM also establishes a basicnetwork connection between the workstation and server during the startupprocess. This process is known as booting remotely, or the remotebootprocess.
How Remoteboot Works
The server provides two kinds of services to the remoteboot client. Thefirst service is called a Boot Block, which contains all the informationneeded to start the client. The second service is called the remotebootprofile. This profile defines the client's operating system environmentafter the initial startup process. Both services are sent across thenetwork in frames. These frames consist of a boot request, bootacknowledgment, boot block request, and the boot block.
When the client computer is switched on, the RPL ROM initializes andbroadcasts a Boot Request frame (FIND frame), which contains the adapter'smedia access control address (adapter ID). The adapter ID is assigned bythe NIC's manufacturer, and is a unique 12-digit hexadecimal number. Thefirst six digits identify the adapter and the manufacturer. When the serverreceives the FIND frame, it compares the adapter ID to the database ofknown adapters. If the server does not recognize the adapter ID or if theadapter ID does not have an assigned profile, the server records theinformation temporarily in its database but does not respond to theclient's request. The client continues to send FIND frames until itreceives an acknowledgment (ACK).
If the server has a match for the adapter ID with a valid profile, itresponds with an acknowledgment (FOUND frame). This frame contains theserver's adapter ID and the client's adapter ID. At this point, the DLCprotocol is being used for all communications between the client and theserver. If multiple Remoteboot servers reply to the initial FIND broadcast,the client only responds to the first received ACK.
After the client receives the ACK, it then sends a request for the bootblock request (SEND.FILE.REQUEST frame) to the first server that replied.The server receives the request and replies with a boot block(FILE.DATA.RESPONSE frame) telling the client where the boot image file islocated.
After the client receives this information, it passes control from the RPLROM and starts running the entry point of the boot block. At this point theoperating system is being loaded into memory, and the system switches fromDLC to the real-mode network drivers (usually NetBEUI).
The Windows 95 Remote Boot Process
Windows 95 uses the same process, except for a few differences.
Windows 95 creates a RAM disk to act as a hard disk drive, and then copiesthe real-mode files from the server to the RAM disk. After the informationhas been loaded into the RAM disk, it loads the real-mode drivers andconnects to the server, which contains a server-based setup and computerdirectory for Windows 95.
Why Use Remoteboot?
Remoteboot allows for a secured network by eliminating the need for hard orfloppy disk drives. Users cannot load programs or infect the network withviruses. It also allows greater control over the distribution of software.In addition, centralized software updates reduce costs.