FTP协议的两种工做模式简单解析!

感谢贡献者,简单易懂。
 
 
 
FTP协议有两种工做方式:PORT方式和PASV方式,中文意思为主动式和被动式。
相比于HTTP,FTP协议要复杂得多。复杂的缘由,是由于FTP协议要用到两个TCP链接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另外一个是 数据链路,用来上传或下载数据。
PORT(主动)方式的链接过程是:服务器开放一个端口,通知客户端链接,服务端接受链接,创建一条命令链路。
当须要传送数据时,客户端在命令链路上用 PORT命令告诉服务器:“我打开了一个1024+的随机端口,你过来链接我”。因而服务器从20端口向客户端的1024+随机端口发送链接请求,创建一条 数据链路来传送数据。
PASV(被动)方式的链接过程是:客户端向服务器的FTP端口(默认是21)发送链接请求,服务器接受链接,创建一条命令链路。
当须要传送数据时,服务器在命令链路上用 PASV命令告诉客户端:“我打开了一个1024+的随机端口,你过来链接我”。因而客户端向服务器的1024+端口发送链接请求,创建一条数据链路来传送数据。
从上面能够看出,两种方式的命令链路链接方法是同样的,而数据链路的创建方法就彻底不一样。而FTP的复杂性就在于此。

转载于:https://www.cnblogs.com/laobiao/p/5965718.htmlhtml