TFTP这个名字平时很少被提起,但搞网络的人基本都碰过。刷路由器固件、交换机批量升级、PXE网络启动装系统,背后常常是它在跑。它全称是简单文件传输协议,简单到什么程度呢,基于UDP,没有登录验证,没有目录列表,一个命令只干一件事:把文件传过去或者取回来。
它跟FTP最大的区别就在这个简单上。FTP要先建控制连接、登录、切换目录,再开数据连接,一套流程走下来开销不小。TFTP只用一个UDP端口69发起请求,双方协商一个临时端口就开始传,每个数据包64字节到1428字节不等,收到一个回一个ACK。代码量小到几十KB就能实现,所以嵌入式设备、BootROM里都能塞进去。
实际用得最多的场景是设备固件升级。交换机、AP、摄像头这些设备出厂时往往只带一个极简的bootloader,里面只有TFTP客户端,上电按住复位键,设备就去指定IP拉固件。操作也简单,电脑上开个TFTP服务端,把固件放到根目录,设备那边配好服务器地址和文件名,回车就开始传。
但简单也意味着没保障。UDP不保证顺序,靠块号来拼;丢包只能等超时重传,默认超时短,跨网段或者线路差的时候特别容易失败。更麻烦的是它没有加密也没有认证,谁都能往服务器上读文件,所以千万别在公网开放TFTP,内网用完就关。
用的时候几个细节要注意。文件名区分大小写,路径一般只能是服务端设定的根目录,写绝对路径多半失败。服务端防火墙要放行UDP 69,Windows自带的TFTP客户端默认是关闭的,得去功能里勾上。传输大文件时把块大小调大能快不少,但老设备不一定支持选项协商。
还有一个常见误区,是把TFTP当成日常传文件的工具。它没有断点续传,也不能列目录,传一半断了只能从头再来。日常备份配置文件、传日志,还是用FTP或者SMB更省心。TFTP的定位就是设备维护通道,够小、够稳、能塞进固件里,这就够了。
上一篇:12V逆变器电路图怎么看:从车载升压到家用应急的搭建思路
下一篇:没有了