1. ftp服务器的工作原理
FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。
FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。
PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的XXXX端口发送连接请求,建立一条数据链路来传送数据。
PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。
2. FTP采用的是什么工作模式,可以实现的文件传输方式有哪两种
FTP可以采用2种工作模式,分别是Port模式、Passive模式;
FTP的传输有两种方式:ASCII、二进制:
1、ASCII传输方式:
假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式
2、二进制传输模式:
在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。
(2)ftp两种工作原理扩展阅读:
FTP文件传输协议的特点介绍:
FTP工作在TCP/IP模型的应用层,基于的传输协议是TCP,FTP客户端和服务器之间的连接是可靠的,面向连接的,为数据的传输提供了可靠的保证。
FTP的主要特征:
1、控制连接是建立在客户协议解释器和服务器协议解释器之间用于交换命令与应答的通信链路
2、数据连接是传输数据的全双工连接。传输数据可以发生在服务器数据传输过程DTP和客户DTP之间,也可以发生在两个服务器的DTP之间。
3. FTP服务器是什么
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
IIS7服务器管理工具可以批量管理、定时上传下载、同步操作、数据备份、到期提醒、自动更新。IIS7服务器管理工具适用于Windows操作系统和liunx操作系统;支持Ftp客户端批量操作。
4. ftp原理是什么
FTP的工作原理是在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用TCP传输而不是 UDP, 客户在和销念服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的。
在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。
默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。
但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定。
(4)ftp两种工作原理扩展阅读
FTP 客户端首先和FTP服务器的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。
在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。
在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。FTP服务器收到Pasv命令后,随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口。
很孙弯多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口。
而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP 20无法和内部网络亏凯困的客户端建立一个新的连接,造成无法工作。
5. FTP的工作原理是怎样的
FTP会话时包含了两个通道,一个叫控制通道,一个叫数据通道。控制通道:控制通道是和FTP服务器进行沟通的通道,连接FTP,发送FTP指令都是通过控制通道来完成的。数据通道:数据通道是和FTP服务器进行文件传输或者列表的通道。FTP协议中,控制连接均有客户端发起,而数据连接有两种工作方式:PORT方式和PASV方式PORT模式(主动方式) FTP 客户端首先和FTP Server的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口(一个大于1024的端口)接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。PASV模式(被动方式) 在建立控制通道的时候和PORT模式类似,当客户端通过这个通道发送PASV 命令的时候,FTP server打开一个位于1024和5000之间的随机端口并且通知客户端在这个端口上传送数据的请求,然后FTP server 将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接传送数据。如果从C/S模型这个角度来说,PORT对于服务器来说是OUTBOUND,而PASV模式对于服务器是INBOUND,这一点请特别注意,尤其是在使用防火墙的企业里,这一点非常关键,如果设置错了,那么客户将无法连接。参考: http://www.linuxdiyf.com/viewarticle.php?id=20118 →Nebula№☆ 2008-08-18 15:44 检举您觉得这个答案好不好?好(0)不好(0) 相关问题 FTP工作原理是怎样的? FTP工作原理是什么 ftp服务器的工作原理其他答案拿下传文件为例,当你启动FTP从远程计算机拷贝文件时,它向FTP服务器提出拷贝文件的请求。启动在远程计算机的上的FTP服务器程序,它响应你的请求把你指定的文件传送到你的计算机中。 网站: http://www.skyhosting.com.cn 总想。。。 2008-08-18 15:41 检举上下传 上页,下页. 2008-08-18 15:44 检举虽然我没用过它,但大多数的lonux发行版本中都选用的是Washington University FTP,它是一个着名的FTP服务器软件,一般简称为wu-ftp. 它是一个很好的服委务软件, 原理呀,网上有得查呀。下次我去看看有关那个的原理再告诉你吧。你自己也要去看看那方面有关的书呀, : 起做暧 2008-08-18 15:50 检举我来告诉你FTP服务器工作流程: 建立Socket 侦听 21 端口 收到连接请求后建立新端口与客户端连接 继续侦听 21 端口 负责与客户端连接的模块要解释处理大概10多条标准的FTP命令 根据不同命令为客户返回不同的信息或做不同的事 关于这些标准FTP命令如 USER PASS REST PWD CWD PASV SIZE TYPE LIST RETR 等等的我不全知道 你要自己去查资料。拿下传文件为例,当你启动FTP从远程计算机拷贝文件时,你事实上启动了两个程序:一个本地机上的FTP客户程序:它向FTP服务器提出拷贝文件的请求。另一个是启动在远程计算机的上的FTP服务器程序,它响应你的请求把你指定的文件传送到你的计算机中。FTP采用“客户机/服务器”方式,用户端要在自己的本地计算机上安装FTP客户程序。FTP客户程序有字符界面和图形界面两种。字符界面的FTP的命令复杂、繁多。图形界面的FTP客户程序,操作上要简洁方便的多。
6. 为什么ftp协议要采用主动和被动两种模式,有什么好处
FTP是一种文件传输协议,它支持两种模式, 一种方式叫做Standard(也就是Active, 主动方式),一种是Passive(也就是PASV, 被动方式)。Standard模式FTP的客户端发送 PORT命令到FTPserver。 Passive模式FTP的客户端发送PASV命令到 FTPServer。 下面介绍一个这两种方式的工作原理: Standard模式FTP客户端首先和FTP Server的TCP21端口建立连接, 通过这个通道发送命令, 客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。 在传送数据的时候,服务器端通过自己的TCP 20端口发送数据。FTP server必须和客户端建立一个新的连接用来传送数据。 Passive模式在建立控制通道的时候和Standard模式 类似,当客户端通过这个通道发送PASV命令的时候,FTP server打开一个位于1024和5000之间的随机端口并且 通知客户端在这个端口上传送数据的请求,然后FTP server将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。 现在的FTP软件里面包括在IE5以上的版本里面也已经支持这两 种模式了。一般一些FTP客户端的软件就比较好设置了, 一般都有一个PASV的选项,比如CuteFTP, 传输的方式都有Standard和PASV的选项, 可以自己进行选择; 另外在IE里面如果要设置成PASV模式的话可以选中工具- Internet选项-高级-为FTP站点启用文件夹视图, 否则就采用Standard模式。 很多防火墙在设置的时候都是不允许接受外部发起的连接的, 所以FTP的Standard模式在许多时候在内部网络的机器通 过防火墙出去的时候受到了限制,因为从服务器的TCP 20无法和内部网络的客户端建立一个新的连接,造成无法工作。 当然也可以设置成功, 首先要创建一条规则就是允许内部的IP连接外部的IP的21端口 ;第二条就是禁止外部IP的TCP20端口连接内部IP的< 1024的端口,这条是为了防止外部连接内部的常规端口; 第三条验证ACK是否等于1, 这个的原理就参见TCP建立连接的三次握手吧。 所以如果安全的配置的话非常困难, 这个时候就想起来了PASV模式,因为不用建立新的连接, 所以也就不会涉及到后面的问题了。 但是管理员可能不想使用PASV模式,因为这个时候FTP Server会开放一个随机的高端口, 尽管在IIS4和IIS5里面端口的范围是1024-5000, 但是许多FTPServer的端口范围达到了1024- 65535, 这个时候在这个主动开放的随机端口上是有完全的访问权限的, 如果IIS也要设置成开放的端口为1024-65535, 具体方法如下: 1.regedt32 2.找到HKEY_LOCAL_MACHINE\ SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters 3.编辑-添加-数值 ValueName:MaxUserPortData Type:REG_DWORDValue:65534< forexample> 所以如果遇到了有防火墙的话或者怕配置麻烦的话还是采用PASV 模式比较好些, 但是如果真的对安全的需求很高的话建议采用Standard模式 。
7. FTP工作原理是怎样的
ftp的传输有两种方式:ascii传输模式和二进制数据传输模式。 1.ascii传输方式:假定用户正在拷贝的文件包含的简单ascii码文本,如果在远程机器上运行的不是unix,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。 但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件(尽管字处理文件包含的大部分是文本,其中也包含有指示页尺寸,字库等信息的非打印字符)。在拷贝任何非文本文件之前,用binary 命令告诉ftp逐字拷贝,不要对这些文件进行处理,这也是下面要讲的二进制传输。 推荐阅读:FTP使用命令详解2.二进制传输模式:在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到windows系统,在对方系统上,此文件不能执行。 如果你在ascii方式下传输二进制文件,即使不需要也仍会转译。这会使传输稍微变慢 ,也会损坏数据,使文件变得不能用。(在大多数计算机上,ascii方式一般假设每一字符的第一有效位无意义,因为ascii字符组合不使用它。如果你传输二进制文件,所有的位都是重要的。)如果你知道这两台机器是同样的,则二进制方式对文本文件和数据文件都是有效的。 ftp的工作方式 ftp支持两种模式,一种方式叫做standard (也就是port方式,主动方式),一种是 passive (也就是pasv,被动方式)。 standard模式 ftp的客户端发送 port 命令到ftp服务器。passive模式ftp的客户端发送 pasv命令到ftp server。 下面介绍一个这两种方式的工作原理: port模式ftp 客户端首先和ftp服务器的tcp 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送port命令。 port命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的tcp 20端口连接至客户端的指定端口发送数据。 ftp server必须和客户端建立一个新的连接用来传送数据。 passive模式在建立控制通道的时候和standard模式类似,但建立连接后发送的不是port命令,而是pasv命令。ftp服务器收到pasv命令后,随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接ftp服务器此端口,然后ftp服务器将通过这个端口进行数据的传送,这个时候ftp server不再需要建立一个新的和客户端之间的连接。 很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的ftp服务器不支持pasv模式,因为客户端无法穿过防火墙打开ftp服务器的高端端口;而许多内网的客户端不能用port模式登陆ftp服务器,因为从服务器的tcp 20无法和内部网络的客户端建立一个新的连接,造成无法工作. 如果你要是不知道怎么用ftp下东西,那很好解决,只要是下一个ftp的软件,比如flashfxp,ultraftp等等软件,里面输入地址直接下载就是了。 如果你要是想建一个ftp的站点,你就要自己做软件配置用server-u或者其他的软件直接设置一下就可以。本文来自: 编程入门网 http://www.bianceng.cn/Servers/Ftp/200707/3229.htm
8. FTP工作原理是什么
当启动FTP从远程计算机拷贝文件时,你事实上启动了两个程序:一个本地机上的FTP客户程序:它向FTP服务器提出拷贝文件的请求。另一个是启动在远程计算机的上的FTP服务器程序,它响应你的请求把你指定的文件传送到你的计算机中。FTP采用“客户机/服备念务器”方式,用户端要在自己的本地计算型迹机上安装FTP客户程序。FTP客户程序有字符界面和图形界面两种。字符界面的FTP的命令复杂、繁多。仿租困图形界面的FTP客户程序,操作上要简洁方便的多。
FTP工作原理示意图
(1)FTP服务器运行FTPd守护进程,等待用户的FTP请求。
(2)用户运行FTP命令,请求FTP服务器为其服务。