浅谈FTP协议

FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。

FTP传输采用双重连接,控制连接和数据连接,控制连接作为客户端和服务端的认证交互信息以及数据面传输的协商信息;默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定。

FTP传输文件类型:

1.文本(ASCII)方式--- A(文本文件的传输采用ASCII方式,一般FTP默认为ASCll文件传输方式)

2.二进制(Binary)----- I (图象、声音文件、加密和压缩文件等非文本文件采用二进制方式传输)

3.EBCDIC文件类型------ E (该文本文件传输方式要求两端都是EBCDIC系统;未接触过)

FTP传输方式:

主动模式和被动模式 的主体为服务端,对服务端而言来说FTP数据面的syn由自己发起时为主动模式,syn由客户端发给自己时为被动模式

主动模式报文解析

图为主动模式的控制面报文                                                                                                                                                 

序列号1-10报文为登录验证交互,以及传输文件类型的协商;

序列号11报文为客户端发给服务端数据面交互传输方式为PORT(主动模式)交互IP及端口信息 ,数据面传输端口=112*256+205

序列号12报文为服务端针对序列号11报文的信息响应

序列号13报文为客户端需要下载b.txt文件(RETR和STOR命令是FTP协议中的下载和上传命令)

序列号14-38报文开始为数据面交互,完成文件下载以及数据面链接建立和释放(通过syn报文可以看出是服务端主动发起数据面链接,及为主动模式)

被动模式报文解析

序列号3-12报文为登录验证交互,以及传输文件类型的协商;

序列号13报文为客户端发给服务端数据面交互传输方式为PASV (被动模式)

序列号14报文为服务端发给客户端交互IP及端口信息 (数据面传输端口=14*256+35)

序列号15-17报文客户端发起数据面三次握手(通过syn报文可以看出是客户端主动发起数据面链接,及为主动模式)

序列号18-19报文为客户端需要下载a.txt文件以及服务端的响应(RETR和STOR命令是FTP协议中的下载和上传命令)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值