<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.6000.21299" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=225422512-09062011><FONT face=Arial
color=#0000ff size=2>Jarrod,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=225422512-09062011><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=225422512-09062011><FONT face=Arial
color=#0000ff size=2>while HTTP/FTP would certainly work much better than TFTP,
I guess that the MS bootmanager uses the iPXE-provided API to send/receive TFTP
traffic (as it doesn't implement it's own network adapter driver and I guess it
uses the BOOT ROM's IP-stack as well).</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=225422512-09062011><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=225422512-09062011><FONT face=Arial
color=#0000ff size=2>So something must get lost. The TFTP response doesn't get
back to the MS bootmgr (or maybe just the first packet and no additional packets
in the same frame - not sure if I use the correct terminology
here).</FONT></SPAN></DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN class=225422512-09062011>Is the
maximum buffer size that iPXE can handle documented somwhere. Is there a source
file (eg a constant) I could alter to increase the buffer and allow it to
accept 8K TFTP-messages (TFTP-responses)?</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT> </DIV>
<DIV><SPAN class=225422512-09062011><FONT face=Arial color=#0000ff size=2>On a
side note:</FONT></SPAN></DIV>
<DIV><SPAN class=225422512-09062011><FONT face=Arial color=#0000ff size=2>It
would certainly be a nice feature if iPXE could intercept the TFTP-request
of the MS bootmgr and translate it to a HTTP/FTP URI, download the file and
return it to the bootmgr as if it was coming from a TFTP server. It would allow
any TFTP-aware boot manager to boot from any media, provided there's a
translation implemented at iPXE level (eg. by a user-provided
script).</FONT></SPAN></DIV><!-- Converted from text/rtf format --><BR>
<P><B><SPAN lang=nl><FONT face="Arial Unicode MS" color=#000080 size=2>Best
regards,</FONT></SPAN></B> <BR><B><SPAN lang=nl><FONT face="Arial Unicode MS"
color=#000080 size=2>Bien à Vous,</FONT></SPAN></B> </P>
<P><B><SPAN lang=nl> <FONT
face="Arial Unicode MS" color=#000080 size=2>Tom Lauwers</FONT></SPAN></B><SPAN
lang=nl></SPAN> <BR><SPAN lang=it>
<FONT face="Arial Unicode MS" color=#000080 size=2>DIGIT A.2-002 Desktop,
Peripherals & Mobile Solutions</FONT></SPAN> <BR><SPAN
lang=it> <FONT face="Arial Unicode MS"
color=#000080 size=2>Siemens</FONT></SPAN> <BR><SPAN
lang=fr> <I> <FONT
face="Arial Unicode MS" color=#000080 size=2>Office: B-28
03/030</FONT></I></SPAN> <BR><SPAN
lang=fr> <I> <FONT
face="Arial Unicode MS" color=#000080 size=2>Tel.</FONT></I></SPAN><I><SPAN
lang=it><FONT face="Arial Unicode MS" color=#000080 size=2> (+32-2)[29]51649
-</FONT></SPAN><SPAN lang=en-us> <FONT face="Arial Unicode MS" color=#000080
size=2>Fax. (+32-2)[29]50164</FONT></SPAN></I><SPAN lang=en-us><BR></SPAN><SPAN
lang=fr> </SPAN><SPAN lang=fr><I> <FONT
face="Arial Unicode MS" color=#000080 size=2>E-mail:
tom.lauwers@ext.ec.europa.eu</FONT></I></SPAN><SPAN lang=en-us><BR></SPAN><SPAN
lang=en-us></SPAN><SPAN lang=en-us></SPAN><SPAN lang=en-us></SPAN><SPAN
lang=nl-be></SPAN></P><BR>
<DIV> </DIV><BR>
<BLOCKQUOTE style="MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> jarrod.b.johnson@gmail.com
[mailto:jarrod.b.johnson@gmail.com] <B>On Behalf Of </B>Jarrod
Johnson<BR><B>Sent:</B> Wednesday, June 08, 2011 9:25 PM<BR><B>To:</B> LAUWERS
Tom (DIGIT-EXT)<BR><B>Cc:</B> ipxe-devel@lists.ipxe.org<BR><B>Subject:</B> Re:
[ipxe-devel] Ipxe cannot handle bigger TFTP blocksize?<BR></FONT><BR></DIV>
<DIV></DIV>Probably useless 'advice', but if MS would kindly detect the
existance of and use iPXE's http/ftp capable APIs, that'd be the best
solution.<BR><BR>
<DIV class=gmail_quote>On Wed, Jun 8, 2011 at 5:15 AM, <SPAN dir=ltr><<A
href="mailto:Tom.LAUWERS@ext.ec.europa.eu">Tom.LAUWERS@ext.ec.europa.eu</A>></SPAN>
wrote:<BR>
<BLOCKQUOTE class=gmail_quote
style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">
<DIV>
<P><SPAN lang=nl><FONT face=Arial size=2>Dear iPXE developers,</FONT></SPAN>
</P>
<P><SPAN lang=nl><FONT face=Arial size=2>I'm having the following problem
with iPXE; I'm using the bootable ISO that I burned to a
CD-ROM.</FONT></SPAN> </P>
<P><SPAN lang=nl><FONT face=Arial size=2>I'm booting WinPE over PXE. This
works when I'm using a DHCP server on a local subnet (on which I can set the
correct scope options), but due to security policies I cannot set DHCP scope
options on the rest of the network. So the objective is to boot iPXE from
CD-ROM or USB-key with an embedded script that simply
executes:</FONT></SPAN></P>
<P><SPAN lang=nl> <FONT face=Arial
size=2>dhcp</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>set next-server x.x.x.x</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>imgfetch /Boot/pxeboot.n12</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>boot pxeboot.n12</FONT></SPAN> </P>
<P><SPAN lang=fr-be><FONT face=Arial size=2>I tested this and it works well.
It doesn't work anymore though when I increase the TFTP block size within
the BCD config (so Microsoft's bootmgr.exe will request bigger chunks of
data from the TFTP-server).</FONT></SPAN></P>
<P><SPAN lang=fr-be><FONT face=Arial size=2>Our TFTP-server must be reached
over a WAN (cross-country), so TFTP-throughput is very slow (inherent of the
protocol, since it's UDP and every packet needs to be acknowledged). On all
of our PC's on the local subnet (using DHCP scope options and the BOOT ROM
of the NIC, so not iPXE) it works well when I increase tftpblocksize to 8K
and download time of a standard WinPE image drops from 10 minutes to 1,5
minute; which is great. But iPXE is unable to handle this kind of
TFTP-traffic.</FONT></SPAN></P>
<P><SPAN lang=fr-be><FONT face=Arial size=2>Here's the script that I use to
create the BCD config:</FONT></SPAN> </P>
<P><SPAN lang=fr-be> <FONT
face=Arial size=2>set BCD-File=C:\TFTP-ROOT\Boot\BCD</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>del %BCD-File%</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Bcdedit /createstore %BCD-File%</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Bcdedit /store %BCD-File% /create {ramdiskoptions}</FONT></SPAN>
<BR><SPAN lang=fr-be> <FONT
face=Arial size=2>Bcdedit /store %BCD-File% /set {ramdiskoptions}
ramdisksdidevice boot</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Bcdedit /store %BCD-File% /set {ramdiskoptions} ramdisksdipath
\boot\boot.sdi</FONT></SPAN> <BR><SPAN lang=fr-be><FONT face=Arial
size=2>---> Bcdedit /store %BCD-File% /set
{ramdiskoptions} ramdisktftpblocksize 1432</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Bcdedit /store %BCD-File% /set {ramdiskoptions} ramdisktftpwindowsize
2</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Set guid={10000000-1000-1000-1000-100000000000}</FONT></SPAN>
<BR><SPAN lang=fr-be> <FONT
face=Arial size=2>Bcdedit /store %BCD-File% /create %guid% /d "WinPE
PXE-boot image" /application osloader</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Bcdedit /store %BCD-File% /set %guid% systemroot
\Windows</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Bcdedit /store %BCD-File% /set %guid% detecthal Yes</FONT></SPAN>
<BR><SPAN lang=fr-be> <FONT
face=Arial size=2>Bcdedit /store %BCD-File% /set %guid% winpe
Yes</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Bcdedit /store %BCD-File% /set %guid% osdevice
ramdisk=[boot]\Boot\winpe_x86.wim,{ramdiskoptions}</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Bcdedit /store %BCD-File% /set %guid% device
ramdisk=[boot]\Boot\winpe_x86.wim,{ramdiskoptions}</FONT></SPAN> <BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Bcdedit /store %BCD-File% /create {bootmgr} /d "Lite Touch
Installation" </FONT></SPAN><BR><SPAN
lang=fr-be> <FONT face=Arial
size=2>Bcdedit /store %BCD-File% /set {bootmgr} timeout 1</FONT></SPAN>
<BR><SPAN lang=fr-be> <FONT
face=Arial size=2>Bcdedit /store %BCD-File% /set {bootmgr} displayorder
%guid%</FONT></SPAN> </P>
<P><SPAN lang=fr-be><FONT face=Arial size=2>This works, but is very slow. So
I replace line 7 with:</FONT></SPAN> </P>
<P><SPAN lang=fr-be> <FONT
face=Arial size=2>Bcdedit /store %BCD-File% /set {ramdiskoptions}
ramdisktftpblocksize 8192</FONT></SPAN> </P>
<P><SPAN lang=fr-be><FONT face=Arial size=2>Now it still works on pc's using
the internal NIC's PXE-boot code (and it's much faster), but it doesn't work
anymore with iPXE.</FONT></SPAN></P>
<P><SPAN lang=fr-be><FONT face=Arial size=2>My guess is that iPXE cannot
handle TFTP-responses that are spread over multiple ethernet frames. 1432
bytes works well because with overhead it's lower than the MTU (1500 bytes).
But when the TFTP-server sends 2 or more UDP packets (to send a bigger block
of data, requiring less acknowledgements), these somehow get
lost.</FONT></SPAN></P><BR>
<P><SPAN lang=fr-be><FONT face=Arial size=2>Any ideas? Thanks a lot in
advance.</FONT></SPAN> </P><BR>
<P><B><SPAN lang=nl><FONT face="Arial Unicode MS" color=#000080 size=2>Best
regards,</FONT></SPAN></B> <BR><B><SPAN lang=nl><FONT
face="Arial Unicode MS" color=#000080 size=2>Bien à Vous,</FONT></SPAN></B>
</P>
<P><B><SPAN lang=nl> <FONT
face="Arial Unicode MS" color=#000080 size=2>Tom
Lauwers</FONT></SPAN></B><SPAN lang=nl></SPAN> <BR><SPAN
lang=it> <FONT
face="Arial Unicode MS" color=#000080 size=2>DIGIT A.2-002 Desktop,
Peripherals & Mobile Solutions</FONT></SPAN> <BR><SPAN
lang=it> <FONT
face="Arial Unicode MS" color=#000080 size=2>Siemens</FONT></SPAN> <BR><SPAN
lang=fr> <I> <FONT
face="Arial Unicode MS" color=#000080 size=2>Office: B-28
03/030</FONT></I></SPAN> <BR><SPAN
lang=fr> <I> <FONT
face="Arial Unicode MS" color=#000080 size=2>Tel.</FONT></I></SPAN><I><SPAN
lang=it><FONT face="Arial Unicode MS" color=#000080 size=2> (+32-2)[29]51649
-</FONT></SPAN><SPAN lang=en-us> <FONT face="Arial Unicode MS" color=#000080
size=2>Fax. (+32-2)[29]50164</FONT></SPAN></I><SPAN
lang=en-us><BR></SPAN><SPAN
lang=fr> </SPAN><SPAN lang=fr><I>
<FONT face="Arial Unicode MS" color=#000080 size=2>E-mail: <A
href="mailto:tom.lauwers@ext.ec.europa.eu"
target=_blank>tom.lauwers@ext.ec.europa.eu</A></FONT></I></SPAN><SPAN
lang=en-us><BR></SPAN><SPAN lang=en-us></SPAN><SPAN lang=en-us></SPAN><SPAN
lang=en-us></SPAN><SPAN
lang=nl-be></SPAN></P><BR><BR></DIV><BR>_______________________________________________<BR>ipxe-devel
mailing list<BR><A
href="mailto:ipxe-devel@lists.ipxe.org">ipxe-devel@lists.ipxe.org</A><BR><A
href="https://lists.ipxe.org/mailman/listinfo/ipxe-devel"
target=_blank>https://lists.ipxe.org/mailman/listinfo/ipxe-devel</A><BR><BR></BLOCKQUOTE></DIV><BR></BLOCKQUOTE></BODY></HTML>