Table of Contents

iPXE UEFI vision

Background

A large part of the success of iPXE has come from going beyond the constraints of the standard PXE model. Users choose iPXE because of its ability to perform tasks beyond the scope of a legacy PXE ROM: tasks such as booting via HTTP, booting via iSCSI, controlling the boot process with a script, creating dynamic menus, etc. Conformance to the PXE specification is a necessity, and is required in order for iPXE to be provided as an OEM PXE stack, but it is the more advanced features which make iPXE a success.

A network card

The push towards UEFI firmware currently represents a downgrade in the user experience of network booting. UEFI has adopted a model that is essentially identical to the legacy PXE specification. iPXE currently provides only a vanilla SNP interface within the UEFI environment, and the user experience is therefore limited to a standard UEFI network boot; the advanced features of iPXE (such as HTTP, DNS, scripting, etc) are not yet available.

From the end-user perspective, both an iPXE UEFI driver and an EDK2-based driver currently offer the same functionality.

Warning

Since this vision statement was written, the iPXE UEFI vision has mostly been implemented and the limitations described above are no longer applicable. An iPXE UEFI driver now provides a user experience which is almost as full-featured as the user experience provided by an iPXE BIOS driver.

Vision

iPXE will provide the same advanced features within the UEFI environment as are currently provided within the BIOS environment.

A UEFI iPXE option ROM will provide two entry points:

The guiding principle is that iPXE should go beyond the constraints of the standard UEFI model, in order to replicate the success that it has achieved by going beyond the constraints of the standard PXE model.

Advantages

An iPXE UEFI option ROM will have the following advantages over a legacy EDK2 option ROM:

For all users

A smile

A boot ROM

For developers and OEMs