首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
数字电路
» TFTP协议详解
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
TFTP协议详解
发短消息
加为好友
yuyang911220
当前离线
UID
1029342
帖子
9914
精华
0
积分
4959
阅读权限
90
在线时间
286 小时
注册时间
2014-5-22
最后登录
2017-7-24
论坛元老
UID
1029342
性别
男
1
#
打印
字体大小:
t
T
yuyang911220
发表于 2016-9-9 22:13
|
只看该作者
TFTP协议详解
服务器
,
认证
,
用户
1. 目的
TFTP是一个传输文件的简单协议,通常使用UDP协议而实现,但tftp并没有要求实现的具体协议,在特殊需求的场合可以同tcp实现。此协议设计的时候是进行小文件传输的。因此它不具备通常的FTP的许多功能,它只能从文件服务器上获得或写入文件,不能列出目录,不进行认证,它传输8位数据。传输中有三种模式:netascii,这是8位的ASCII码形式,另一种是octet,这是8位源数据类型;最后一种mail已经不再支持,它将返回的数据直接返回给用户而不是保存为文件。
2. 概况
任何传输起自一个读取或写入文件的请求,这个请求也是连接请求。如果服务器批准此请求,则服务器打开连接,数据以定长512字节传输。每个数据包包括一块数据,服务器发出下一个数据包以前必须得到客户对上一个数据包的确认。如果一个数据包的大小小于512字节,则表示传输结构。如果数据包在传输过程中丢失,发出方会在超时后重新传输最后一个未被确认的数据包。通信的双方都是数据的发出者与接收者,一方传输数据接收应答,另一方发出应答接收数据。大部分的错误会导致连接中断,错误由一个错误的数据包引起。这个包不会被确认,也不会被重新发送,因此另一方无法接收到。如果错误包丢失,则使用超时机制。错误主要是由下面三种情况引起的:不能满足请求,收到的数据包内容错误,而这种错误不能由延时或重发解释,对需要资源的访问丢失(如硬盘满)。TFTP只在一种情况下不中断连接,这种情况是源端口不正确,在这种情况下,指示错误的包会被发送到源机。这个协议限制很多,这是都是为了实现起来比较方便而进行的。通过下边的图片来了解tftp协议的通信流程:
TFTP协议概述
1.简单文件传送协议(Trivial File Trhansfer Protocol)
2.最初用于引导无盘系统,被设计用来传输小文件
3.基于UDP协议实现,但也可以由其他协议实现
4.不具备FTP的许多功能
5.只能从服务器获取或写入文件,不能列出目录
6.不进行认证
数据传输模式
1.netascii:文本模式
2.octet:二进制模式
3.mail:已经不再支持
协议结构
基本 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报文的格式:
在看看tftp的简单超时处理机制:
好了,tftp的内容就这些了,下边是一个完整的tftp通信的报文:
收藏
分享
评分
继承事业,薪火相传
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议