ftp传输原理
客户端通过某软件用某个端口(a端口)向服务端发起tcp连接请求,同时告诉服务端客户端另一个空闲端口号(b端口),服务端用21端口与客户端建立一条控制连接通道。
接着在默认情况下,服务端使用20端口和b端口建立数据传送通道。这样就用客户端的2个端口和服务端2个端口通道建立了两条通道,之后就可以传送数据了。
ps:客户端的两个通道是都是随机的,服务端的控制通道用21,服务端的数据传送通道默认是20也可以设置成其他端口号。
客户端<------------>服务端
a端口<------------->21端口 控制通道
b端口<------------->20端口 数据传送通道
控制连接通道,会在传送一个文件后会关闭通道,然后再开启通道传统另一个文件,每一个文件传输都需要建立和关闭Tcp连接
所以ftp传送多个小文件要比一个大文件时效率要低。
ftp协议规范
1:数据传送格式
文件类型:ASCII或者二进制
控制格式:只允许非打印
数据结构:只允许文件结构
传输方式:只允许流方式
2:控制命令种类
建立控制连接后,服务端保持监听状态,随时根据客户端发送的命令做相应的工作
3:答应格式
略
抓包工具
时间: 2024-10-13 21:15:10