I am trying to download the c2800nm-adventerprisek9-mz.124-12 on my Cisco 2811 router, but on SolarWinds TFTP server it is showing an error message that file is too large for TFTP protocol. what is this? How can I download this image to my router?Pls help.
Solved! Go to Solution.
you can also try any of the following from the search link below....many, many to choose from and i know solarWinds has given me some weird symptoms sometimes:
A co-worker ran across this the other day with the 2800 image. It is a problem with the TFTP server and the block sizes if I remember right. Originally TFTP only supported smaller file sizes and has since been updated in the RFCs but I guess not all TFTP servers are up to date? We ended up using FTP since the 2800 would support the copy ftp flash command and it worked fine.
Previously, Cisco have their own TFTP but the last version I know of is built 1997. That makes me Google for TFTP and found 3COM DAEMON
Someone asked why use FTP vs. TFTP to solve this issue. Here is my reasoning,
1. I have had issues not only with TFTP server not allowing files over a certain size but I have seen magic number errors after successfully uploading an image via TFTP if its over 30 MB. In my past position we had a dedicated Cisco CCIE to on our account and he was pretty adamant that we should use TFTP for our larger images to overcome any inconsistencies in TFTP. This does not mean you you have to stop using TFTP to up and download your config files those are tiny.
2. FTP is alot faster when working with big files. TFTP was designed to deal with what its name states trivial files. 30 plus MB files are not what you could consider trivial in network terms.
Just my 10 cents.
Hope this helps.
Many people is using freely available TFTP applications for windows (i.e. Cisco, Solarwinds, etc...) which uses old TFTP implementations. That's why there's a misconception that TFTP cannot transfer bigger file size.
Many existing TFTP implementations are incapable of transferring files larger than blocksize*65536. Since blocksize is 512 bytes, 32 MB is the file size upper limit.
The original protocol has a file size limit of 32 MB, although this was extended when RFC 2347 introduced option negotiation, which was used in RFC 2348 to introduce block-size negotiation in 1998 (allowing a maximum of 4 GB and potentially higher throughput). If the server and client support block number wraparound, file size is essentially unlimited.
Some network engineers which uses LINUX or UNIX in their network infra, take advantage of using TFTP that comes with the OS which can transfer bigger file size.
3COMDaemon Version 2 Revision 10 TFTP implementation uses RFC 1782, 1783 and 1784 that use block size, timeout and transfer-size negotiation. Take note that RFC 1782, 1783, and 1784 is obsoleted by RFC 2347, 2348, and 2349. Since 3COMDaemon uses block size, timeout and transfer-size negotiation, its up to the TFTP client to negotiate the blocksize from 512 to 65464. To test, install 3COMDaemon in two PC (one server and one client), in the client, tick all RFC's and use 32000 blocksize. I was able to transfer over 1GB of data.
Take note that the theoritical maximum blocksize for TFTP in RFC 2348 is 65464