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 "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?
Is is often the case, attempting to diagnose issues with a screenshot is difficult because important information elsewhere in the capture isn't visible. Can you upload the captures to the same location?
sure, I've upload wireshark file for all transfer options. just select tftp in filter box.
Oh, no. The problem is that I always apply display filter "TFTP". when I remove the filter, I can see multiple fragmented packets sent.
Use data.len as the column rather than frame.len to see the reassembled length.