2.11.4TFTP
2025年11月13日
2.11.4TFTP
1.TFTP概述
FTP是一种比较完善和功能强大的协议,但同时也比较复杂,不适用于某些场合;而TFTP是一种简化的文件传输协议,设计简单而且容易运行,只是提供小文件的传输,不具备FTP的许多功能。TFTP的当前版本为第2版,且具备自己的特点:
(1)使用UDP 69号端口进行通信,利用确认和超时重传机制保证传输的可靠性。
(2)只能从文件服务器上读取或写入文件,不能列出目录,不进行身份认证,没有安全控制机制。
(3)适用于只读存储器,常用于无盘系统进行系统引导,只使用几种报文格式,是种停止等待协议。
2.TFTP工作原理
TFTP有3种传输模式:net ASCII模式、Octet模式和邮件模式。net ASCII模式表示数据是由成行的ASCII码字符组成,以两个字节CRLF(回车后跟换行)作为行结束符。Octet模式则将数据看作8位一组的字节流而不做任何解释。邮件模式采用字符方式传输而不是文件方式进行传输,该模式已经被废弃不再使用。
TFTP的传输过程可以分为以下几个步骤:
(1)TFTP客户端发送一个文件读写请求,说明要读的文件名和模式。
(2)如果该文件能被该客户读写,TFTP服务器就返回一个编号为1的数据分组,文件以固定的512字节块的形式进行传送。每个数据包都包含一个数据块,在发送下个包之前,数据块必须得到响应包的确认。
(3)如果出现数据包少于512字节的情况,就表示传输结束。
(4)如果包在网络中丢失,接收端就会超时并重新发送其最后的包(可能是数据,也可能是确认响应),这就导致丢失包的发送端重新发送丢失包。发送端需要保留一个包用于重新发送,如果收到确认响应说明所有已发出去的包都已经收到。传输的双方都可以看作是发送端和接收端。一方发送数据并接收确认响应,另一方发送确认响应并接收数据。