The Pre-boot Execution Environment (PXE) protocol (see PXE Internet Draft) is a combination of two protocols: the Dynamic Host Configuration Protocol (DHCP) and the Trivial File Transfer Protocol (TFTP). However, both protocols, DHCP and TFTP, require some modifications of their original specification to be compliant with the PXE specification (version 2.1).
The first protocol, DHCP, is the most currently used protocol for the dynamic IP address allocation in a local area network (LAN). It is used by PXE to assign an IP address to a thin client during the boot, and locate the appropriate boot server (or servers) to continue booting over the network.
After obtaining an IP address, the thin client downloads those packages needed to work: boot loader, operating system (kernel), file system, etc. And this is done using a file transfer protocol, the Trivial FTP or TFTP.
In the document DHCP Options and BOOTP Vendor Extensions (RFC 2132) are specified those options that should be added in the configuration of the DHCP service in order to make it compliant with PXE. The options to be added are:
Optionally (we do not know the level of importance of it) must be taken into consideration the following proposed extension of the DHCP specification: Dynamic Host Configuration Protocol (DHCP) Options for the Intel Preboot eXecution Environment (PXE) (RFC 4578).
The basic TFTP protocol is defined in RFC 1350. However, the PXE protocol requires some modifications on the original specification of the TFTP protocol. RFC 2348 defines an extension of the basic TFTP protocol for larger block sizes required by PXE.