Preboot Execution Environment

The Preboot Execution Environment (PXE ) is an extension of booting via computer networks by Dynamic Host Configuration Protocol (DHCP) by Intel.

The aim of the network protocol PXE is to be able to deliver hundreds of computers with different instruction sets without configuration and operating system, and to leave all at the same time when connected to the Local Area Network automatically provided with installing the appropriate operating system. To this end, provides the PXE that the computer without sending operating system information about their condition and be equipped with a proprietary variant of the Trivial File Transfer Protocol for multicast. Support heterogeneity and multicast are the major extensions by PXE.

In early 1999 suggested Intel the Internet Engineering Task Force, a working group for PXE ago. You did not materialize. The final specification by Intel 2.1 dated September 1999.

The PXE code is in the BIOS on the network interface of the computer and enables it to communicate with the DHCP and TFTP server. From the DHCP server, the computer gets the IP configuration from the TFTP server and the operating system.

PXE uses the TCP / IP, UDP, DHCP, TFTP, and the concepts GUID, UUID, Universal Network Device Interface ( UNDI ) and a client side software extension with defined APIs. PXE was introduced as part of the Wired-for- Management environment.

Generally

With a PXE-enabled computer you are able to boot instead of local media (hard disk, floppy disk, CD, etc. ) via a network (Ethernet) from a remote computer. PXE was introduced as part of the " Wired for Management " initiative by Intel and published in the specification ( version 2.1) of Intel, and system software on 20 September 1999. The network boot process is usually initiated by the network card itself (more precisely by an installed BIOS on the card ). In so-called " onboard" network interfaces, it is part of the system BIOS. Supports the network card does not, there is, among others, the possibility of an image, for example, a floppy disk to load (as first boot step ), which takes over this functionality. PXE requires a DHCP server, a TFTP server and PXE -capable network adapters, if not booted from a floppy disk etc..

Expiration

The firmware is looking for a PXE -compliant redirection service (Proxy DHCP), which transmits the information about available PXE boot servers. After receiving a response, she contacted in the next step the appropriate boot server to get sent to the TFTP path from him to download the NBP ( Network Bootstrap Program). This boot loader is then loaded into memory, possibly verified and executed. If only a single NBP used for all clients, this can be downloaded in most cases using the BOOTP method and the PXE - specific sequence are therefore skipped.

Availability

In principle PXE should be portable to most hardware platforms from Intel though it was only specified for the 32 -bit IA- 32 architecture; through integration with Extensible Firmware Interface (EFI) is available on the IA -64.

PXE client / server protocol

The PXE protocol is a combination of DHCP and TFTP (with adjustments). DHCP provides the / boot server and TFTP is used to load the boot loader.

The PXE firmware sends a provided with PXE options DHCPDISCOVER packet (extended DHCPDISCOVER ) via broadcast on port 67 / UDP ( DHCP server port). The PXE - specific DHCP options are ignored by not PXE-enabled DHCP servers.

Proxy DHCP

Receives a PXE redirection service (Proxy DHCP ) is an extended- DHCPDISCOVER packet, it sends a DHCPOFFER as coded, with PXE options extended DHCP packet (extended DHCPOFFER ) back to the client. Since this often needs to negotiate with a DHCP server its IP address until the packet via broadcast on port 68/UDP (DHCP Client port) is sent and the identification of the destination host via the client in the extended DHCPDISCOVER sent along GUID / UUID.

Due to the extended- DHCPOFFER packet firmware is mainly about type the following:

  • Using multicast, unicast or broadcast for communication with the boot server
  • A list of IP addresses for each available boot server type
  • A boot menu, in which each entry represents a boot server type
  • A boot prompt, which should prompt the user to press the F8 for the boot menu
  • A timeout for the boot prompt, after which the first entry is automatically selected in the boot menu

If the Proxy DHCP running on the same host as the standard DHCP service so it is listening on port 4011/UDP and expect DHCPREQUEST encoded packets that otherwise meet the extended- DHCPDISCOVER packets previously described. In this case, the default DHCP service sends a provided with a specific combination of PXE - specific options DHCPOFFER packet to the client so that it searches on the same host on port 4011/UDP Using the Proxy DHCP service.

Boot server

To get in touch with a PXE boot server, the PXE firmware extension must receive a valid IP address and an extended- DHCPOFFER packet. Using the information from the extended- DHCPOFFER packet and selecting the boot server type now sends the firmware upgrade via multicast, broadcast or unicast a DHCPREQUEST as (or DHCPINFORM ) encoded, extended with PXE - specific options DHCP packet ( extended DHCPREQUEST or extended DHCPINFORM ) on port 4011/UDP - 67/UDP or in the case of broadcasts. This package contains the PXE boot server type and a so-called PXE Boot Layer; thus, it is also possible to operate multiple boot server on a host.

Receives a PXE boot server extended- DHCPREQUEST - or extended- DHCPINFORM package and it is configured (eg IA -32) for both the required boot server type and for the specified client architecture, it must he respond with a DHCPACK as encoded, extended with PXE - specific options DHCP packet (extended DHCPACK ) to the source port from the extended- DHCPREQUEST - or extended- DHCPINFORM package.

Integration capability

The PXE client / server protocol was designed so that it

  • Can operate in parallel and without interference to existing DHCP environments
  • Can be seamlessly integrated in DHCP services
  • Leaves as an independent server for each service (DHCP, Proxy DHCP boot server ) or implement in any combination in integrated servers
  • Can be extended by Intel without having to go to the official specification

In addition, the PXE firmware extension is designed as a ROM BIOS option to the IA-32, so that a PC can be upgraded with a new PXE-enabled network card.

660007
de