On Wed, 15 Jun 2011 22:13:22 +0000 (UTC) Craig Rodrigues <rodr...@freebsd.org> wrote:
> Author: rodrigc > Date: Wed Jun 15 22:13:22 2011 > New Revision: 223124 > URL: http://svn.freebsd.org/changeset/base/223124 > > Log: > (1) When sending the TFTP RRQ packet to read a file, > send along the "blksize" option specified in RFC2348, > and the "tsize" option specified in RFC2349. > > Add code to parse the TFTP Option Acknowledgement (OACK) > packet as specified in RFC2347. > > For TFTP servers which support the "blksize" option, we can > specify a TFTP Data block size larger than the default 512 > bytes specified in RFC1350. This offers greater read performance when > downloading files. > > We request an initial size of 1428 bytes, which is less than > the Ethernet MTU of 1500 bytes. If the TFTP server sends back an OACK > packet, then use the block size specified in the OACK packet. > Most times it is usually the same value as what we request. > If the TFTP server supports RFC2348, we will see performance > improvements by transferring files over TFTP with larger block sizes. > > If we do not get back an OACK packet, then we most likely we > are interoperating with a legacy TFTP server that does not > support TFTP extension options, so default to the block size of > 512 bytes. > > (2) If the "tftp.blksize" environment variable is set, then > take that value and use it when sending the TFTP RRQ packet, > instead of 1428. This allows us to set different values of > "tftp.blksize" in the loader, so that we can test out different > TFTP block sizes at run time. > > Obtained from: Juniper Networks > Fixed by: rodrigc > Has this code been reviewed by anyone outside of Juniper? -- Alexander Kabaev
signature.asc
Description: PGP signature