Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1598877
  • 博文数量: 354
  • 博客积分: 8137
  • 博客等级: 中将
  • 技术积分: 5137
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-26 15:40
文章分类

全部博文(354)

文章存档

2010年(300)

2009年(54)

分类: LINUX

2009-11-26 15:51:05

简单文件传输协议是一种用来传输文件的简单协议,运行在 UDP(用户数据报协议)上。TFTP 的被设计为小而简单容易的运行,因此,它缺乏标准 FTP 协议的许多特征。TFTP 只能从远程服务器上读、写文件(邮件)或者读、写文件传送给远程服务器。它不能列出目录并且当前不提供用户认证。

当前 TFTP 有 3 种传输模式:netASC11 模式即 8 位 ASC11;八位组模式(替代了以前版本的二进制模式),如原始八位字节;邮件模式,在这种模式中,传输给用户的不是文件而是字符。主机双方可以自己定义其它模式。

在 TFTP 协议中,任何一个传输进程都以请求读写文件开始,同时建立一个连接。如果服务器同意请求,则连接成功,文件就以固定的 512 字节块的长度进行传送。每个数据包都包含一个数据块,在发送下一个包之前,数据块必须得到确认响应包的确认。少于 512 字节的数据包说明了传输的结束。如果包在网络中丢失,接收端就会超时并重新发送其最后的包(可能是数据也可能是确认响应),这就导致丢失包的发送者重新发送丢失包。发送者需要保留一个包在手头用于重新发送,因为 LOCK 确认响应保证所有过去的包都已经收到。注意传输的双方都可以看作发送者和接收者。一方发送数据并接收确认响应,另一方发送确认响应并接受数据。

TFTP 的当前版本为 v2 。

协议结构

基本 TFTP 协议头结构:

16 bits String 16 bits String 16 bits
Opcode Filename 0 Mode 0

Opcode:操作代码或命令。以下为 TFTP 命令:

Opcode Command Description
1 Read Request Request to read a file
2 Write Request Request to write to a file
3 File Data Transfer of file data
4 Data Acknowledge Acknowledgement of file data
5 Error Error indication

Filename:传送的字段名称。

Mode:数据模式。协议传输的文件数据格式。可以是 NetASCII,也可以是标准 ASCII,八位二进制数据或邮件标准 ASCII。

相关协议:、

组织来源:TFTP 由 IETF()定义在RFC 1350中。

相关链接::The TFTP Protocol (Revision 2).

阅读(818) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~