Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

TFTP packet size and MTU

Hi,

I'm using TFTP protocol on two PCs (one client and one server) to send some files. WireShark used to capture the packets. TFTP protocol default packet size is 512 bytes. However, TFTP has the option to send in different packet sizes.

Logically, the higher the packet size the less number of packets required to send a file. This is true when I try 128, 512, 1024 and 1428 bytes options. However, when I go for 2048, 4096, till 32768 bytes options, this logic is no longer applicable and I observe the following in WireShark:

  • Packets size is not equal to the specified option. for example: for 2048 bytes option, packet size= 614 bytes !!
  • Less number of packets required to send a file even though packet size is much less.
  • The file transferring is much faster.
  • File sent is complete and no corruption on file.

I couldn't understand what is going on. Does this has to do with max. frame size or MTU? because MTU for Ethernet is around 1518 bytes. What make me confused more is even that the packet size is much less, the packets numbers are going down when I go for higher byte options and the file transfer is faster and every thing is perfect.

Attached is an example for sending an 438KB picture in different packet size options (Bloke size). Notice the difference in terms of packet length and the number of packets sent when the "block size" = 2048 bytes or higher.

So, anyone could explain to me the logic here?

TFTP packet size and MTU

Hi,

I'm using TFTP protocol on two PCs (one client and one server) to send some files. WireShark used to capture the packets. TFTP protocol default packet size is 512 bytes. However, TFTP has the option to send in different packet sizes.

Logically, the higher the packet size the less number of packets required to send a file. This is true when I try 128, 512, 1024 and 1428 bytes options. However, when I go for 2048, 4096, till 32768 bytes options, this logic is no longer applicable and I observe the following in WireShark:

  • Packets size is not equal to the specified option. for example: for 2048 bytes option, packet size= 614 bytes !!
  • Less number of packets required to send a file even though packet size is much less.
  • The file transferring is much faster.
  • File sent is complete and no corruption on file.

I couldn't understand what is going on. Does this has to do with max. frame size or MTU? because MTU for Ethernet is around 1518 bytes. What make me confused more is even that the packet size is much less, the packets numbers are going down when I go for higher byte options and the file transfer is faster and every thing is perfect.

Attached is an example for sending an 438KB picture in different packet size options (Bloke size). Notice the difference "weird relation" in terms of packet length and the number of packets sent when the "block size" = 2048 bytes or higher.

So, anyone could explain to me the logic here? here?