tftp下载及协议

本文介绍了TFTP协议的下载流程,包括上传文件、服务器响应新开端口、数据包结构(包含块序号和数据内容)以及传输大文件时块序号的重置规则。此外,还提到了错误包和确认包(ACK)的构成,并指出数据包小于516字节时代表下载结束。最后,提及使用struct模块来处理字节操作。
摘要由CSDN通过智能技术生成
读写请求
1下载

2上传 文件名(test.jpg,长度8) 0 octet 0  


将上述请求发送至69端口,tftp服务器新开一个端口用于发送数据包


数据包

3数据包(2个字节) 块序号(包编号,2个字节) 数据(512个字节)

**传输大文件时块序号超过65535时重新从0开始,即if num==65536:num=0

5错误(2字节) 差错码(错误类型,2字节) 差错内容(string)

回应ACK

4确认包 块序号

ps:当数据包小于516(2+2+512)字节时,表示下载结束!



ps:如何让1、2、3、4或5占两个字节?

import struct

pack,unpack
!:按大端序(大端(网络字节序)和小端(家用笔记本))
ps:大端:高位数据放在低位地址;小端相反。


*struct 类型表*
Format C Type Python type Standard s
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值