[syslinux] pxelinux implementation questions

Josef Siemes jsiemes at web.de
Sat Jun 21 01:28:05 PDT 2003


Hi,

Alexander Sack <aps at holmeister.net> schrieb am 20.06.03 18:57:30:
> I've been looking at the pxelinux code and I was wondering a couple of
> things:

> 2)  How big of an image can pxelinux download (minus memory constraints)?  
> My understanding is that tftp packet numbers are from 0-65535 yielding a 
> maximum size of 32MB.  Yet, from the revision history, it seems pxelinux 
> can handle bigger images?  (I don't see any wrap around handling though
> I maybe not looking hard enough in seachdir() - from the looks of it,
> the only way I can see pxelinux downloading a bigger image is if the
> tftp_blksize is negotiated greater than 512, right?)

One thing to add: tftp is UDP, so the server sends exactly one packet,
the client acks this packet, then the server sends the next and so on.
TCP is quite different, but it's also much more complicated to implement.

> 3)  Why does pxelinux require tsize?  Does it make a difference what
> size the file is as long as the last packet returns < 512?

Just a hint: The linux kernel and initrd aren't just put one after
the other into the memory. The linux kernel spreads in various places
(real memory <1M, above 1M), and the initrd even gets put somewhere
else. So for keeping it simple syslinux needs to know how much to transfer
before actually doing it. The overhead on the network side is two packets
(OACK, ACK 0), and it's much less overhead on the client. Just keep in
mind that pxelinux still needs all network services from the pxe rom,
and can't do it on itself.

There are quite much tftp servers that support tsize, and it sholdn't
hurt the server since this should be running a real operating system
instead of a rom-based network stack.

Regards,

Josef

____________________________________________________________________________
Jetzt bei WEB.DE FreeMail anmelden = 1qm Regenwald schuetzen! Helfen
Sie mit! Nutzen Sie den Serien-Testsieger. http://user.web.de/Regenwald




More information about the Syslinux mailing list