FTP的两种连接模式:Port模式和Pasv模式

FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用 到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。

FTP协议有两种工作方式:PORT模式和PASV模式,中文意思为主动式和被动式。

ORT(主动)模式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。

工作原理:当需要传送数据时,客户端在命令链路上用 PORT命令告诉服务器:“我打开了**端口,你过来连接我”。当服务端收到这个Port命令后就会向客户端打开的那个端口发送连接请求,建立一条数据链路来传送数据。

PASV(被动)模式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。

工作原理:需要传送数据时,服务器在命令链路上用 PASV命令告诉客户端:“我打开了**端口,你过来连接我”。当客户端收到这个信息后,就可以向服务端的端口发送连接请求,建立一条数据链路来传送数据。

从上面的解释中可以看出,两种模式的命令链路连接方法是一样的,而数据链路的建立方法就完全不同。对于Port模式,是客户端在本地打开一个端口等服务端去连接建立数据连接;而Pasv模式就是服务端打开一个端口等待客户端去建立一个数据连接。FTP的复杂性就在于此。

【本站遵守CC协议,转载本站文章请注明原文地址和原作者,谢谢】

Tags: , , | 4,146 views

One Response to “FTP的两种连接模式:Port模式和Pasv模式”


  1. [...] 二、FTP服务。说起FTP服务可能需要多说点,因为FTP的连接牵涉到的端口相对较多。可能有人说不就一个21端口嘛,是的,长期开放的就一个21端口,但是ftp还会开启一些临时端口来上传下载数据,具体的原理就不多说了,有兴趣的可以到这里去看。打开FTP服务的端口并不仅仅是在例外列表里面加入一个21端口就行了,这需要在防火墙的高级选择卡里面打开相关的服务(如下图),具体什么原因,请看FTP中的两种连接方式。 [...]

Leave a Reply

You must be logged in to post a comment.