<!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>