TFTP协议

本文介绍了TFTP协议,一个基于UDP的应用层协议,主要用于无盘系统的文件传输。文章详细阐述了TFTP的相关概念,如其数据传输模式(octet和netascii),并解析了TFTP的通信过程,包括服务器的响应、数据包编号、确认机制等。此外,还列举了常见的错误码。作业部分要求实现TFTP客户端的下载和上传功能。
摘要由CSDN通过智能技术生成

1. 相关概念

TFTP协议:简单文件传输协议,是一个应用层协议,并且传输层必须是UDP协议

最初用于引导无盘系统,被设计用来传输小文件

特点:

基于UDP协议实现

不进行用户有效性认证

数据传输模式:

octet:二进制模式

netascii:文本模式

mail:已经不再支持

2. TFTP通信过程

TFTP通信过程总结(无选项)

1、服务器在69号端口等待客户端的请求

2、服务器若批准此请求,则使用临时端口与客户端进行通信

3、每个数据包的编号都有变化(从1开始)

4、每个数据包都要得到ACK的确认如果出现超时,则需要重新发送最后的包(数据或ACK)

5、数据的长度以512Byte传输

6、小于512Byte的数据意味着传输结束

3. TFTP协议分析

错误码:

0 未定义,参见错误信息

1 File not found.

2 Access violation.

3 Disk full or allocation exceeded.

4 illegal TFTP operation.

5 Unknown transfer ID.

6 File already exists.

7 No such user.

8 Unsupported option(s) requested.

//UDP网络编程之客户端

#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>         
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <string.h>

//__F
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小徐的记事本

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值