解析Ftp协议的两种工作模式

FTP是一种数据传输协议,它的连接模式有两种:主动模式和被动模式。

 

以下说明FTP的连接是怎样建立的:

 

在 active模式下:

 

FTPclient开启一个随机选择的TCPport呼叫FTP的port21请求建立连接。当完成 Three-WayHandshake之后,连接就成功建立,但这仅是命令通道的建立。

当两端需要传送数据资料的时候,client透过命令通道用一个portcommand告诉server,client可以用另一个TCPport做数据通道。

然后server用 port20和刚才client所告知的TCPport建立数据连接。注意:连接方向是从server到client的,TCP分组中会有一个 SYNflag。

然后client会返回一个带ACKflag的确认分组,并完成另一次的Three-WayHandshake过程。这时候,数据连接才能成功建立。开始数据传送。

 

在passive模式下:

 

FTPclient开启一个随机选择的TCPport呼叫FTPserver的port21请求建立连接,完成命令通道的建立。

当两端需要传送数据的时候,client通过命令通道发送一个PASVcommand给server,要求进入passive传输模式。

然后server像上述的正常模式之第2步骤那样,挑一个TCPport,并用命令通道告诉client。

然后client用另一个TCPport呼叫刚才 server告知的TCPport来建立数据通道。此时分组中带有SYNflag。

server确认后回送一个ACK分组。并完成所有握手过程、成功建立数据通道。

开始数据传送。在实际使用中,activemode用来登入一些架设在主机上没有的FTPserver,或是架设在clientside的FTPserver!Passivemode(简称PASV)用来登陆一些架设于防火墙保护下而又是开设于主机上的 FTPserver!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值