KB_Soft Group - Software Vendor's Development Partner
Start page
Site map

PXE Technology Research



To study the peculiarities of the PXE technology used to solve the problems of remote OS installation and restoring after the remote PC failure.


For a PC park being managed on a large enterprise, sometimes it is necessary to install or upgrade OS on some machines. The possibility of performing this operation remotely (via the network) can give a remarkable growth of its efficiency. To perform an operation via the network, you need to have a possibility to download some environment from the network, that is the simplified operating system (it is often called a "Pre-OS agent") that would allow to perform simple network and file operations. For instance, to download the samples of OS installation packages and run them. There are several network download technologies competing in the market (Novell RPL - Remote Program Load by Novell, iBOOT by IBM, PXE). PXE (Preboot eXecution Environment) is an open industry standard developed by a number of software and hardware vendors. It was initially designed by Intel, with input from several other vendors including 3Com, HP, Dell, Compaq, and Phoenix Technologies. PXE works with a network interface card (NIC) in the PC, and makes the NIC a boot device. In this project, it was necessary to perform the following work:
to study the structure of PXE and the purpose of its elements;
to detect the necessary and sufficient set of program elements needed to use PXE for installing and updating OS on a remote PC;
to test the base procedure of OS installation via the network in practice.

As a result of the research work it was necessary to perform our suggestions concerning the implementation of the OS remote installation/upgrade support system.

Developer's comments

Q: What is PXE?

KB_Soft: PXE (Preboot eXecution Environment) is defined on a foundation of industry-standard Internet protocols and services that are widely deployed in the industry, namely TCP/IP, DHCP, and TFTP. These standardize the form of the interactions between clients and servers. In brief, the PXE protocol operates as follows: the client initiates the protocol by broadcasting a DHCPDISCOVER containing an extension that identifies the request as coming from a client that implements the PXE protocol. Assuming that a DHCP server implementing this extended protocol is available, after several intermediate steps, the server sends the client a list of appropriate Boot Servers. The client then discovers a Boot Server of the type selected and receives the name of an executable file on the chosen Boot Server. The client uses TFTP to download the executable from the Boot Server. Finally, the client initiates execution of the downloaded image. At this point, the client's state must meet certain requirements that provide a predictable execution environment for the image. Important aspects of this environment include the availability of certain areas of the client's main memory, and the availability of basic network I/O services.

Q: As a result of the investigation, what was your suggestion regarding the environment to create on a remote PC before installing OS on it via the network?

KB_Soft: Since PXE was used, we suggested to download MS-DOS and MS Client 3.0 on a remote PC. Such an environment allows to rather easily connect to the network resources containing the installation scenarios (the scripts) and installation packages (including OS).

Q: How do you think, does PXE suit for solving the tasks of remote OS installation/ upgrade via the network?

KB_Soft: Yes, it is quite suitable for it. We are sure, it does. Moreover, we began using this technology in our company to install OS on the servers that do not have neither CD/DVD drives nor disk drives.