浅谈Ftp中的两种传输模式

FTP是有两种传输的模式的,主动模式和被动模式,很多的朋友可能比较陌生或是多数是不清楚之间的差异。

一个完整的FTP文件传输需要建立两种类型的连接,一种为文件传输下命令,称为控制连接,另一种实现真正的文件传输,称为数据连接。

1)      控制连接
客户端希望与FTP服务器建立上传下载的数据传输时,它首先向服务器的TCP 21端口发起一个建立连接的请求,FTP服务器接受来自客户端的请求,完成连接的建立过程,这样的连接就称为FTP控制连接。

2)      数据连接
FTP控制连接建立之后,即可开始传输文件,传输文件的连接称为FTP数据连接。FTP数据连接就是FTP传输数据的过程,它有两种传输模式:

PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XX端口,你过来连接我”。于是服务器从20端口向客户端的XX端口发送连接请求,建立一条数据链路来传送数据。

PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XX端口,你过来连接我”。于是客户端向服务器的XX端口发送连接请求,建立一条数据链路来传送数据。

相关推荐:
安装完tomcat8.x后,进入其目录/usr/local/tomcat/bin/,运行startup.sh,出现错误: touch: cannot touch ‘/usr/local/tomcat8/logs/catalina.out’:No such file or directory 其解决办法如下: 1.自己建 …
有些时候我们会碰到此提示“该设备或资源(网站名称)未设置为接受端口“万维网服务(HTTP)”上的连接”。那么是什么样的情况导致的,分析结果如下: 1、对方的网站有请求的IP限制,非白名单中的就直接跳转到127. …
使用SecureRandom时不要使用SecureRandom (byte[] seed)这个构造函数,会造成生成的随机数不随机。 建议通过/dev/urandom或者/dev/random获取的熵值来初始化伪随机数生成器PRNG。
Mac截图基本方法 全屏截图:Command+Shift+3 使用快捷键后会马上截取当前的全屏 指定区域截图:Command+Shift+4 使用快捷键后会出来一个带有座标的瞄准器,用鼠标的拖放可以选择需要截图的区域。此方式有秘 …
1.错误ID:10005,错误信息:DCOM 遇到错误“无法启动服务,原因可能是它被禁用或与它相关联的设备没有启动。 ”,试图以参数“”启动服务 SENS 以运行服务器: {D3938AB0-5B9D-11D1-8DD2-00AA004ABD5E} 2.错误ID: …
拿起手机扫一扫即可带走我!