This KB article describes a scenario where computers using the Preboot Execution Environment (PXE) experience delays when a Juniper QFX is configured as a DHCP relay for DHCP and PXE packets. It also explains how to optimize this behavior.
PXE Boot (Preboot Execution Environment) is a technology that allows a computer to boot an operating system or software directly from a network server rather than a local hard drive or USB drive. It is commonly used in IT to deploy operating systems, image new machines, or run diskless workstations.
The following KB briefly describes how PXE works and highlights a DHCP option needed to avoid dropping the offer from the PXE boot:
https://supportportal.juniper.net/s/article/EX-QFX-PXE-boot-not-working-with-DHCP-relay-in-QFX
Juniper does not provide an official timer for PXE boot duration. However, when the DHCP relay is configured as stateful, the Routing Engine must create a binding entry for each host. This additional overhead can, in certain cases, slow down the transaction.
To avoid this, you can use the "forward‑only" option, which configures the relay as stateless. In this mode, DHCP client packets are forwarded without creating new subscriber sessions. When the DHCP relay selective processing feature is enabled, packets forwarded with the "forward‑only" statement ignore all other configured options except for "trust‑option‑82". The relay agent disregards all other options.
Please check: https://www.juniper.net/documentation/us/en/software/junos/cli-reference/topics/ref/statement/forward-only-edit-forwarding-options-default-action.html
After configuring this option on the DHCP relay, the transaction time decreased to around 5 seconds, consistent with what we observe on other vendors.