How to speed up PXE boot in WDS and SCCM
ByFrank TroutOnMay 14, 2013
During a PXE boot, when the boot image file is being loaded in the client, it should not take any longer than a few minutes time depending on the size of the boot.wim and your network. If it seems that your PXE boot times are extremely slow, you may be able to speed up the process by increasing the TFTP block size. This article will show you how to speed up PXE boot in WDS and SCCM.
Trivial File Transfer Protocol (TFTP) is the network protocol used for downloading all files during network boots. TFTP is an inherently slow protocol because it requires one ACK (acknowledgment) packet for each block of data that is sent. The server will not send the next block in the sequence until the ACK packet for the previous block is received. As a result, on a slow network, the round-trip time can be very long.
Follow the steps below to increase the TFTP block size in both a WDS and SCCM 2007 environment.
If you are using WDS without SCCM 2007
- On the WDS server find the file default.bcd in the \REMOTEINSTALL\Boot\x86 folder (This was the folder you setup when you configured WDS)
- Copy default.bcd from the \REMOTEINSTALL\Boot\x86 folder to the local C:\ drive
- Then from a command line type: Bcdedit -store c:\default.bcd -set {68d9e51c-a129-4ee1-9725-2ab00a957daf} ramdisktftpblocksize 16384
- Make a copy of the original \REMOTEINSTALL\Boot\x86\default.bcd file by changing the extension to default.bcd.backup
- Copy the c:\default.bcd back to it’s original location at \REMOTEINSTALL\Boot\x86
- Now repeat steps 1 thru 5 for the \REMOTEINSTALL\Boot\amd64\default.bcd
- Then on the WDSServer from a command prompt type: Sc control wdsserver 129
If you are using SCCM 2007 without SP2
- If you do not have SP2 for SCCM 2007 installed, you need to download and install the hotfix located here on the PXE site server
- Once you have the hotfix installed, you need to add the registry key:
Location: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\PXE (for a 32 bit OS) or HKEY_LOCAL_MACHINE\SOFTWARE\wow6432node\Microsoft\SMS\PXE (for a 64 bit OS)
Name: RamDiskTFTPBlockSize
TYPE: REG_DWORD
Value: 16384
If you are using SCCM 2007 with SP2 or higher
- When using SCCM 2007 with SP2 you just have to add the registry key to the site server with PXE as the hotfix is already included:
Location: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\PXE (for a 32 bit OS) or HKEY_LOCAL_MACHINE\SOFTWARE\wow6432node\Microsoft\SMS\PXE (for a 64 bit OS)
Name: RamDiskTFTPBlockSize
TYPE: REG_DWORD
Value: 16384 (change radio button to decimal)
If you are using SCCM 2012
- When using SCCM 2012 you just have to add the registry key to the site server and restart the WDS service:
Location: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\DP
Name: RamDiskTFTPBlockSize
TYPE: REG_DWORD
Value: 16384 (change radio button to decimal)
NOTE: It is highly recommend that you increase this setting in multiples of 4096, 8192, 16384, and so forth, but do not exceed a value higher than 16384 or this could cause corruption.
If having issues with sluggishness, try;
If you used 16384 as the block size, but this may not be a fit for all environments. You basically have to do some trial and error until you find the right match. Try using 4096 or 8192 and see if the issue persists.