Ⅰ FTP是什么
FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。
其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。
(1)为什么ftp带外带传送扩展阅读:
同大多数Internet服务一样,FTP也是一个客户/服务器系统。用户通过一个客户机程序连接至在远程计算机上运行的服务器程序。依照 FTP 协议提供服务,进行文件传送的计算机就是 FTP服务器,而连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端。
用户要连上FTP 服务器,就要用到 FTP 的客户端软件,通常 Windows自带“ftp”命令,这是一个命令行的 FTP客户程序,另外常用的 FTP 客户程序还有FileZilla、 CuteFTP、Ws_FTP、Flashfxp、LeapFTP、流星雨-猫眼等。
Ⅱ 为什么说ftp在带外发送控制信息
我们
Ⅲ 为什么说ftp是带外传送控制信息
FTP 的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。
主进程的工作步骤:
1、打开熟知端口(端口号为 21),使客户进程能够连接上。
2、等待客户进程发出连接请求。
3、启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程。
4、回到等待状态,继续接受其他客户进程发来的请求。主进程与从属进程的处理是并发地进行。
FTP使用两个TCP连接。
控制连接在整个会话期间一直保持打开,FTP 客户发出的传送请求通过控制连接发送给服务器端的控制进程,但控制连接不用来传送文件。
实际用于传输文件的是“数据连接”。服务器端的控制进程在接收到 FTP 客户发送来的文件传输请求后就创建“数据传送进程”和“数据连接”,用来连接客户端和服务器端的数据传送进程。
数据传送进程实际完成文件的传送,在传送完毕后关闭“数据传送连接”并结束运行。
Ⅳ 为什么说ftp是带外传送控制信息
FTP
的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。
主进程的工作步骤:
1、打开熟知端口(端口号为
21),使客户进程能够连接上。
2、等待客户进程发出连接请求。
3、启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程。
4、回到等待状态,继续接受其他客户进程发来的请求。主进程与从属进程的处理是并发地进行。
FTP使用两个TCP连接。
控制连接在整个会话期间一直保持打开,FTP
客户发出的传送请求通过控制连接发送给服务器端的控制进程,但控制连接不用来传送文件。
实际用于传输文件的是“数据连接”。服务器端的控制进程在接收到
FTP
客户发送来的文件传输请求后就创建“数据传送进程”和“数据连接”,用来连接客户端和服务器端的数据传送进程。
数据传送进程实际完成文件的传送,在传送完毕后关闭“数据传送连接”并结束运行。
Ⅳ 为什么说ftp是带外传送控制信息
由于FTP使用了一个分离的控制连接,因此FTP的控制信息是带外传送的。
Ⅵ 简述FTP的工作原理
FTP的工作原理:FTP 采用 Internet 标准文件传输协议 FTP 的用户界面, 向用户提供了一组用来管理计算机之间文件传输的应用程序。
开发任何基于 FTP 的客户端软件都必须遵循 FTP 的工作原理,FTP 的独特的优势同时也是与其它客户服务器程序最大的不同点就在于它在两台通信的主机之间使用了两条 TCP 连接,一条是数据连接,用于数据传送;
另一条是控制连接,用于传送控制信息(命令和响应),这种将命令和数据分开传送的思想大大提高了 FTP 的效率,而其它客户服务器应用程序只有一条 TCP 连接。
(6)为什么ftp带外带传送扩展阅读:
FTP 的目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据。它能操作任何类型的文件而不需要进一步处理,就像MIME或Unicode一样。
但是,FTP有着极高的延时,这意味着,从开始请求到第一次接收需求数据之间的时间,会非常长;并且不时的必须执行一些冗长的登录进程。
FTP 在因特网网络上历史是最悠久的网络工具,从 1971 年由 A KBHUSHAN 提出第一个 FTP 的RFC(RFC114),FTP 凭借其独特的优势一直都是因特网中最重要、最广泛的服务之一。
Ⅶ 大家好 我问一个问题 就是什么是FTP 他们告诉我的话是‘FTP地址...........’ 这个FTP是什么意思
FTP文件传送协议(File Transfer Protocol,简称FTP),是一个用于从一台主机到另送文件的协议。该协议的历史可追溯到1971年(当时因特网尚处于实验之中),不过至今仍然极为流行。FTP在RFC 959中具体说明。下图是它提供的服务的概貌。
图1 FTP在本地和远程文件系统之间传输文件
在一个典型的FTP会话中,用户坐在本地主机前,想把文件传送到一台远程主机或把它们从一台远程主机传送来。该用户必须提供一个用户名—口令对才能访问远程账号。给出这些身份认证信息后,它就可以在本地文件系统和远程文件系统之间传送文件了。如图中所示,用户通过一个FTP用户代理与FTP交互。他首先提供一个远程主机的主机名,这使得本地主机中的FTP客户进程建立一个与远程主机中的FTP服务器进程之间的连接。用户接着提供用户名和口令,这些信息将作为FTP命令参数经由TCP连接传送到服务器。服务器批准之后,该用户就在本地文件系统和远程文件系统之间拷贝文件。
HTTP和FTP都是文件传送协议,它们有许多共同的特征,譬如说都运行在TCP之上。不过这两个应用层协议之间存在重要的差别。最重要的差别是FTP使用两个并行的TCP连接来传送文下一节件,一个是控制连接,一个是数据连接。控制连接用于在客户主机和服务器主机之间发送控制信息,例如用户名和口令、改变远程目录的命令、取来或放回文件的命令。数据连接用于真正发送文件。既然TCP使用一个独立的控制连接,我们说FTP在带外(out-of-band)发送控制信息的。另外,用于控制音频和视频等持续媒体数据之传送的RTSP协议也是在带外发送控制信息的。HTTP中,同一个TCP连接既用于承载请求和响应头部,也用于承裁所传送的文件,因此我们说HTTP在带内(in-band)发送控制信息。下一篇文章将讨论的用于电子邮件的主要协议SMTP也在带内发送控制信息。图2展示了FTP的控制连接和数据连接。
图2
当用户启动与远程主机间的一个FTP会话时,FTP客户首先发起建立一个与FTP服务器端口号21之间的控制TCP连接,然后经由该控制连接把用户名和口令发送给服务器。客户还经由该控制连接把本地临时分配的数据端口告知服务器,以便服务器发起建立一个从服务器端口号20到客户指定端口之间的数据TCP连接;为便于绕过防火墙,较新的FTP版本允许客户告知服务器改由客户来发起建立到服务器端口号20的数据TCP连接。用户执行的一些命令也由客户经由控制连接发送给服务器,例如改变远程目录的命令。当用户每次请求传送文件时(不论哪个方向),FTP将在服务器端口号20上打开一个数据TCP连接(其发起端既可能是服务器,也可能是客户)。在数据连接上传送完本次请求需传送的文件之后,有可能关闭数据连接,到再有文件传送请求时重新打开。因此在FTP中,控制连接在整个用户会话期间一直打开着,而数据连接则有可能为每次文件传送请求重新打开一次(即数据连接是非持久的)。
在整个会话期间,FTP服务器必须维护关于用户的状态。具体地说,服务器必须把控制连接与特定的用户关联起来,必须随用户在远程目录树中的游动跟踪其当前目录。为每个活跃的用户会话保持这些状态信息极大地限制了FTP能够同时维护的会话数。无状态的HTTP却不必维护任何用户状态信息。
FTP命令和应答
现在讨论几个较为常用的FTP命令。从客户到服务器的命令和从服务器到客户的应答都是以7位ASCII码格式经由控制连接传送的,因此跟HTTP请求消息一样.FTP命令也是直观可读的。用于分割相继的命令或应答的是一个回车符和一个换行符。每个命令由4个大写的ASCB字符构成,有些命令带有可选的参数。下面给出的是一些较为常见的命令;●USER username:用于向服务器发送用户名。
●PASS passwod:用于服务器发送口令。
●LIST:用于请求服务器发回当前远程目录下所有文件的一个清单。该清单是通过数据连接而不是控制连接发送过来的。
●RETR filename:用于获取远程主机当前目录下的一个文件,与用户代理中的get命令相对应。
●STOR filename:用于存放远程主机当前目录下的一个文件,与用户代理中的put命令相对应。
从客户经由控制连接发送到服务器的FTP命令和用户向用户代理发出的命令之间一般存在一一对应关系。每个命令之后跟随的是从服务器发送到客户的应答。FTP应答是一个3位数值,可能后跟一个可选的消息。这与HTTP响应消息中的状态码和原因短语在结构上是类似的;HTTP的发明者们有意在HTTP响应消息中引入了这个类似性。下面列出了一些典型的应答以及可能后跟的消息。
●331 Username OK,password required
●125 Data connection already open,tranfer starting
●425 Car't open data connection
●452 Error writing
有兴趣更多地了解FD命令和应答的读者可以阅读RFC 959。
下面是采用LEAPFTP客户端登录一个FTP服务器的对话实录,从中可以看到FTP客户端和服务器端的会话过程。
Connecting to xxx.xxx.xxx.xxx, Port 21 (#1)
Connected. Waiting for response.
220 Microsoft FTP Service
USER username
331 Password required for username.
PASS xxxxxx
230 User 9878cn logged in.
SYST
215 Windows_NT
PWD
257 "/mydir" is current directory.
TYPE A
200 Type set to A.
PORT 192,168,xxx,xx,9,198
200 PORT command successful.
LIST
150 Opening ASCII mode data connection for /bin/ls.
226 Transfer complete.
Transfer done: 125 bytes in 0.016 secs (7.81 k/sec)
QUIT
Ⅷ (FTP文件传送服务)是什么意思
文件传输协议FTP(File Transfer Protocol)是Internet传统的服务之一。FTP使用户能在两个联网的计算机之间传输文件,它是Internet传递文件最主要的方法。
ftp的功能包括上传和下载两部分:
下载:登录远程ftp服务器后,将服务器提供的文件通过网络传输到本地计算机的过程;
上传:登录远程ftp服务器后,将本地计算机上的文件通过网络传输到远程服务器进行存储的过程。
Ⅸ FTP的传输有两种方式
FTP的传输有两种方式:ASCII传输模式和二进制数据传输模式。
1.ASCII传输方式:假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。
但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件(尽管字处理文件包含的大部分是文本,其中也包含有指示页尺寸,字库等信息的非打印字符)。在拷贝任何非文本文件之前,用binary 命令告诉ftp逐字拷贝,不要对这些文件进行处理,这也是下面要讲的二进制传输。
2.二进制传输模式:在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。
如果你在ASCII方式下传输二进制文件,即使不需要也仍会转译。这会使传输稍微变慢 ,也会损坏数据,使文件变得不能用。(在大多数计算机上,ASCII方式一般假设每一字符的第一有效位无意义,因为ASCII字符组合不使用它。如果你传输二进制文件,所有的位都是重要的。)如果你知道这两台机器是同样的,则二进制方式对文本文件和数据文件都是有效的。
5. 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使用tcp的两个端口20/21分别跑数据和控制消息