Python实现TFTP文件传输

Python实现TFTP文件传输

一、TFTP文件传输协议

TFTP文件传输协议属于TCP/IP协议族,是一个用于在客户端和服务器之间进行简单文件传输的协议。

提供简单,开销不大的文件传输服务。

端口号69.

基于UDP协议实现。

进行小文件传输,只能上传文件到服务器,或从服务器下载文件。

二、TFTP文件传输协议操作码及数据包格式

2.1、操作码

1:下载请求(读取服务器文件)

2:上传请求(往服务器写入文件)

3:数据包

4:确认码 ACK

5:错误码

2.2、数据包格式

读写请求: 操作码(1/2)(2字节) + 文件名 + 0(1字节) + 模式 + 0(1字节)

数据包: 操作码(3)(2字节) + 块编号(2字节) + data(512字节)

ACK确认包: 操作码(4)(2字节) + 块编号(2字节)

error: 操作码(5)(2字节) + 差错码(2字节) + 差错信息 + 0(1字节)

三、TFTP文件上传下载流程

上传

下载

四、代码实现

客户端上传

客户端下载

服务端

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180622G1DT2M00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券