浅谈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端口发送连接请求,建立一条数据链路来传送数据。

相关推荐:
使用Webview时需要关闭webview的自动保存密码功能,防止用户密码被webview明文存储。 设置webView.getSettings().setSavePassword(false)即可。
现在的第三方远程数据库管理可视化工具比较多,如:Navicat、SQLyog、MySQL workbench 等,但发现正确的账户信息连接时报 2059 错误,怎么了?这是因为 MySql8.0 版本 和 5.0 的加密规则不一样,而现在的可 …
微软安全研究人员通过官方博客发出警告,为俄罗斯政府工作的黑客正利用各种物联网设备如打印机和视频解码器作为立足点渗透到目标的网络中。 一旦进入到网络,攻击者只需要简单执行网络扫描去寻找其它不安全 …
想搞明白Office的VOL(批量授权)版和RETAIL(零售)版有什么区别? RETAIL版不可选择安装路径、不可自定义安装组件,可在office内进行更新。(似乎这一功能是office2016才有的,区别于之前的office更新只 …
其实就是换行符的系统默认常量。 unix系列用 \n windows系列用 \r\n mac用 \r PHP中可以用PHP_EOL来替代,以提高代码的源代码级可移植性。 如: <?php echo PHP_EOL; //windows平台相当于 echo "\r\n"; …
拿起手机扫一扫即可带走我!