当前位置:首页 » 文件管理 » ftp基本原理

ftp基本原理

发布时间: 2024-06-21 10:25:52

‘壹’ 简述ftp的工作原理

FTP的工作原理:FTP 采用 Internet 标郑肢准文件传输协议 FTP 的用户界面, 向用户提供了一组用来管理计算机之间文件传输的应用程序。

开发任何基于 FTP 的客户端软件都必须遵循 FTP 的工作原理,FTP 的独特的优势同时也是与其它客户服务器程序最大的不同点就在于它在两台通信的主机之间使用了两条 TCP 连接,一条是数据连接,用于数据传送;

另一条是控制连接,用于传送控制信息(命令和响应),这种将命令和数据分开传送的思想大大提高了 FTP 的效率,而其它客户服务器应用程序只有一条 TCP 连接。

(1)ftp基本原理扩展阅读:

FTP 的目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据。它能操作任何类型的文件而不需要进一步处理,就像MIME或Unicode一样。

但是,FTP有着极高的延备旁时,这意味着,从开始请求到第一次接收需求数据之间的时间,会非常长;并且不时的必须执行一些冗长的仿丛橡登录进程。

FTP 在因特网网络上历史是最悠久的网络工具,从 1971 年由 A KBHUSHAN 提出第一个 FTP 的RFC(RFC114),FTP 凭借其独特的优势一直都是因特网中最重要、最广泛的服务之一。

‘贰’ 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

‘叁’ ftp原理是什么

FTP的工作原理是在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用TCP传输而不是 UDP, 客户在和销念服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的。

在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。

默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。

但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定。

(3)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无法和内部网络亏凯困的客户端建立一个新的连接,造成无法工作。

‘肆’ 简述FTP的工作原理

FTP有两个过程:控制连接数据连接

控制连接用于传送请求;而数据连接用于传输文件

  • FTP的工作原理:

    FTP协议不像HTTP协议一样需要一个端口作为连接(默认时HTTP端口是80,FTP端口是21)。FTP协议需要两个端口:

    一个端口是作为控制连接端口,也就是FTP的21端口,用于发送传送请求给服务器的控制进程以及等待服务器响应(控制连接并不用来传送文件)

    另外一个端口用于数据传输端口,端口号为20(仅用PORT模式),是用建立数据传输通道的,主要作用是从客户向服务器发送一个文件,从服务器向客户发送一个文件,从服务器向客户发送文件或目录列表,用来连接客户端和服务器端的数据传送进程。

    数据传送进程实际完成文件的传送,在传送完毕后关闭“数据传送连接”并结束运行。

‘伍’ 璇烽梾FTP鏄浠涔埚伐浣滃师鐞嗭纻

宸ヤ綔铡熺悊锛氢互Internet镙囧嗳鏂囦欢浼犺緭FTP鐢ㄦ埛鐣岄溃锛 钖戠敤鎴锋彁渚涚$悊璁$畻链虹殑鏂囦欢浼犺緭锛孎TP鍦ㄤ袱鍙伴氢俊涓绘満闂村皢涓ゆ浔TCP杩炴帴锛屽垎鍒涓虹敤浜庢暟鎹浼犻佺殑鏁版嵁杩炴帴锛岀敤浜庝紶阃佹带鍒朵俊鎭镄勬带鍒惰繛鎺ャ傚湪浜や簰FTP浼氲瘽涓锛屾带鍒惰繛鎺ュ勪簬杩炴帴鐘舵侊纴鏁版嵁杩炴帴鍦ㄦ枃浠朵紶阃佸厛镓揿紑钖庡叧闂銆

FTP鍏佽哥敤鎴蜂互鏂囦欢镎崭綔镄勬柟寮忎笌鍙︿竴涓绘満鐩镐簰阃氢俊銆傜劧钥岋纴 鐢ㄦ埛骞朵笉鐪熸g橱褰曞埌镊宸辨兂瑕佸瓨鍙栫殑璁$畻链轰笂闱㈣屾垚涓哄畬鍏ㄧ敤鎴凤纴 鍙鐢‵TP绋嫔簭璁块梾杩灭▼璧勬簮锛 瀹炵幇鐢ㄦ埛寰杩斾紶杈撴枃浠躲佺洰褰旷$悊浠ュ强璁块梾鐢靛瓙闾浠剁瓑绛夛纴 鍗充娇鍙屾柟璁$畻链哄彲鑳介厤链変笉钖岀殑镎崭綔绯荤粺鍜屾枃浠跺瓨鍌ㄦ柟寮忋

镓╁𪾢璧勬枡锛

FTP鏀鎸佷袱绉嶆ā寮忥纴涓绉嶆柟寮忓彨锅PORT鏂瑰纺锛屼富锷ㄦ柟寮忥纴涓绉嶆槸 Passive锛岃锷ㄦ柟寮忋侾assive妯″纺FTP镄勫㈡埛绔鍙戦 PASV锻戒护鍒 FTP Server銆

1銆丳ort

瀹㈡埛绔浠庝竴涓浠绘剰镄勯潪鐗规潈绔鍙N锛圢>1024锛夎繛鎺ュ埌FTP链嶅姟鍣ㄧ殑锻戒护绔鍙o纴涔熷氨鏄21绔鍙c傜劧钖庡㈡埛绔寮濮嬬洃钖绔鍙N+1锛屽苟鍙戦丗TP锻戒护钬减ort N+1钬濆埌FTP链嶅姟鍣ㄣ傛帴镌链嶅姟鍣ㄤ细浠庡畠镊宸辩殑鏁版嵁绔鍙o纸20锛夎繛鎺ュ埌瀹㈡埛绔鎸囧畾镄勬暟鎹绔鍙o纸N+1锛夈

2銆丳assive

锻戒护杩炴帴鍜屾暟鎹杩炴帴閮界敱瀹㈡埛绔鍙戣捣锛屽彲浠ヨВ鍐充粠链嶅姟鍣ㄥ埌瀹㈡埛绔镄勬暟鎹绔鍙g殑鍏ユ柟钖戣繛鎺ヨ阒茬伀澧栾繃婊ょ殑闂棰樸傚綋寮钖涓涓 FTP杩炴帴镞讹纴瀹㈡埛绔镓揿紑涓や釜浠绘剰镄勯潪鐗规潈链鍦扮鍙o纸N > 1024鍜孨+1锛夈傜涓涓绔鍙h繛鎺ユ湇锷″櫒镄21绔鍙o纴瀹㈡埛绔鎻愪氦 PASV锻戒护銆

鍙傝冭祫鏂欐潵婧愶细锏惧害锏剧-FTP

热点内容
怎样在我的世界重建服务器 发布:2024-10-22 23:37:10 浏览:355
安卓手机如何使用手写功能 发布:2024-10-22 23:19:16 浏览:351
手机壁纸上传 发布:2024-10-22 23:13:51 浏览:772
oracle数据库迁移方案 发布:2024-10-22 23:10:53 浏览:384
七牛云存储java上传 发布:2024-10-22 23:10:49 浏览:236
kvm编译原理 发布:2024-10-22 22:57:41 浏览:441
qq密码情侣改成什么最好 发布:2024-10-22 22:55:48 浏览:809
linux安装cuda 发布:2024-10-22 22:32:07 浏览:487
编译和链接的键 发布:2024-10-22 22:21:01 浏览:115
java数组的实现 发布:2024-10-22 22:18:15 浏览:331