文章插图
2.TCP三次握手建立成功后,服务器也知道了客户端需要请求FTP服务,于是要求客户端提供相应的用户名(客户端在进行FTP连接时需要发送用户名和密码信息);
文章插图
3.客户端收到服务器的验证需求后,立即发送用户名 user = 1;
文章插图
4.服务器收到后,确认用户名OK,此时需要客户端提供password;
文章插图
5.客户端发送password=1;
文章插图
6.服务器端用户名密码验证成功允许用户登录;
文章插图
7. 客户端登录到服务器之后开始发送查询命令 “PWD”查询FTP文件路径;
文章插图
8.服务器回复客户端“PWD”查询,反馈文件路径信息;
文章插图
9.客户端开始请求查询服务器发送文件的方式 ASCII/二进制;
文章插图
10.服务器对客户端发送的文件类型查询进行响应,回复文件传输方式为ASCII;
文章插图
上述1-10步完成了FTP在进行控制连接操作前,基本用户登录认证以及文件列表获取等内容;
11. FTP被动方式,由客户端发送“PASV”命令;
文章插图
12.服务器收到PASV命令后,知道自己此时为被动方式,则开始生成随机的数据端口,以提供给客户端进行数据连接的时候使用;
文章插图
13.客户端开始发送LIST命令查询文件列表信息;
文章插图
14.在文件数据传输之前,先建立数据传输时的TCP三次握手;
文章插图
15.数据传输的三次握手成功后,服务器开始向客户端通知自己已经准备就绪,马上开始文件传输;
文章插图
16.文件开始传输,在传输过程中有TCP对文件传输进行确认;
文章插图
17.客户端文件接收完毕 通过控制链路告知服务器;
文章插图
18.服务器收到之后认为文件传输完成,此时关闭数据连接并告知客户端;
文章插图
19.客户端收到服务器发送来的关闭数据连接信息后,则向服务器在进行确认FTP控制连接断开过程;
文章插图
20.由客户端发起端开请求命令 QUIT;
文章插图
21.服务器收到请求后同意断开 向客户端发送goodbye;
文章插图
22.TCP会话也断开;
文章插图
FTP 主动模式
连接建立发起前,基本用户登录认证以及文件列表获取等内容与被动方式相同参考上述1-10步骤 。
文章插图
1.由客户端发送PORT命令,同时自己随机生成一个数据端口,并将该端口信息通过控制链路发送给服务器;
文章插图
2.服务器收到PORT命令之后,此时就知道自己是处于主动模式,并开始与客户端进行TCP连接;
推荐阅读
- 用户态协议栈设计实现udp,arp与icmp协议
- 露华浓达成避免破产协议-露华浓为申请破产作准备
- 离婚协议书怎么写才有法律效力?
- 手把手教你在netty中使用TCP协议请求DNS服务器
- 盲人入住酒店无人陪护遭拒-盲人入住酒店安全协议
- 阿塞拜疆指控亚美尼亚袭击平民-阿塞拜疆指控亚方违反停火协议
- 工程承包协议书要这样写,快来看看吧 工程承包协议书
- 品牌转让协议书范本 品牌转让协议
- 既然HTTP/3正式发布了,那么咱们来深入理解HTTP/3协议
- 浅谈远程教育学习心得 远程教育心得体会