文件传输协议.ppt
《文件传输协议.ppt》由会员分享,可在线阅读,更多相关《文件传输协议.ppt(41页珍藏版)》请在三一办公上搜索。
1、1,第12章 文件传输协议,文件是计算机系统中信息存储、处理和传输的主要形式,大多数计算机系统都支持网络文件访问功能。对网络文件访问的需求来自四个方面:不同应用程序之间的数据共享;利用远程存储介质存储后备文件;无盘站点通过网络访问服务器上的文件信息;以文件形式进行的数据交换。,2,第12章 文件传输协议,12.1 TCP/IP文件传输协议(FTP)12.2 FTP 进程模型 12.3 FTP命令与响应12.4 匿名FTP 12.5 简单文件传送协议(TFTP)12.6 TFTP报文,3,12.1 TCP/IP文件传输协议(FTP),FTP工作在TCP/IP模型的应用层,基于的传输协议是TCP,
2、FTP客户在和服务器之间的连接是可靠的,面向连接为数据的传输提供了可靠的保证。1FTP的目标:1)主机之间共享计算机程序或数据;2)本地主机间接地使用远程计算机;3)向用户屏蔽不同主机中各种文件存储系统的细节;4)可靠和高效的传输数据。,4,2FTP主要特征:1)控制连接是建立在用户协议解释器和服务器协议解释器之间用于交换命令与应答的通信链路。2)数据连接是传输数据的全双工连接。传输数据可以发生在服务器数据传输过程DTP和用户DTP之间也可以发生在两个服务器DTP之间。,5,3)文件类型(1)ASCII码文件类型(默认选择),以NVT ASCII码形式通过数据连接传输。(2)EBCDIC文件类
3、型。该文本文件传输方式要求两端都是EBCDIC系统。(3)图像文件类型(也称为二进制文件类型)。数据发送形式呈现为一个连续的比特流。ASCII码文件类型和EBCDIC文件类型还要加上文件是否可打印的属性(Noprint/TELNET),6,4)数据结构文件结构(File structure)字节流,无结构。记录结构(Record structure)文件被划分为记录,用于文本文件。页结构(Page structure)文件被划分为页,每页有页号和页头。可以进行随机存取或顺序存取。,7,5)传输方式 FTP的传输模式有流模式、块模式和压缩模式:(1)流模式 数据以字节流的形式传送记录结构(EOR
4、,EOF)文件结构,接收到的所有数据就是文件内容。(EOF)(2)块模式 文件以块形式传送,块带有自己的头部分。头字节包括16位计数域和8位描述子代码。(3)压缩模式 压缩模式中,因为数据是压缩过的,对于增加带宽有很多好处。,8,块模式头字节的结构描述子代码由在描述子字节中的位标记说明,9,3FTP的客户服务器模型 下图表示 FTP客户服务器模型,客户和服务器之间利用TCP建立连接。FTP客户与服务器之间要建立双重连接,一个是控制连接,一个是数据连接。控制连接:NVT ASCII数据连接:文件类型、数据结构、传输方式,10,建立双重连接的原因:FTP是一个交互式会话系统,某客户每次调用FTP,
5、便与服务器建立一个会话,会话以控制连接来维持。客户每提出一个请求,服务器与客户建立一个数据连接,进行实际的数据(比如文件)传输。一旦数据传输结束,数据连接相继撤消,但控制连接依然存在,客户可以继续发出命令。客户可以撤消控制连接(close命令),也可以退出FTP会话(quit命令)。,返回,11,12.2 FTP 进程模型,FTP服务的实现是由一组FTP进程完成的。服务器FTP进程:由协议解释器PI和数据传输过程DTP组成。用户FTP进程:由PI、DTP和用户接口组成。传输与控制采用独立的连接方式具有以下三方面的优点:使FTP协议更加简单并且更容易实现,例如控制连接可以直接采用Telnet协议
6、实现,FTP数据连接不会与FTP命令混淆起来。在数据连接结束后,控制连接仍然保留着,它能够在新的传输连接时被使用。发送方与接收方在所有的数据都到达时可以在数据连接上用文件结束来通知另一方,从而达到命令传输的功能。,12,12.2.1 FTP控制连接控制连接是建立在用户协议解释器和服务器协议解释器之间用于交换命令与应答的通信链路。FTP仅仅在发送命令并接收应答时使用控制连接。用户在两台主机间建立控制连接,然后进行数据连接,客户与服务器为每个文件传输建立一个单独的数据连接。如果用户请求另一个传输,那么客户与服务器将建立一个新的数据连接。为了避免在控制与数据连接之间发生冲突,FTP对于两者使用不同的
7、协议端口号。,13,FTP协议要求数据传输在处理时打开控制连接。尽管数据连接频繁地出现并消失,但是控制连接却在整个会话中一直保持着。在完成FTP服务后由用户发出中止控制连接命令。控制连接用NVT ASCII传命令和响应。,14,图中,箭头方向表示连接是由哪一方发起的。客户向服务器发出请求命令,形成控制连接。数据连接按相反的方向形成。客户与服务器的角色反转了。注意FTP和Telnet的关系,FTP使用Telnet协议进行控制连接。,15,12.2.2 FTP数据连接数据连接是传输数据的全双工连接。1数据连接机制数据连接可以用文件结束来终止传输过程。这样做的好处可以改变所传输文件的大小。例如,当服
8、务器中应用程序正在写入文件时,如果FTP也同时在将这个文件的副本传输至客户。由于文件传输的连接是单独的,服务器不必利用控制连接告诉客户方所传输文件的大小,只需要用数据连接的文件结束来终止传输。,16,在建立数据连接时,客户数据传输进程成为连接的接收者,而服务器数据传输进程成了连接的请求者。客户在需要进行数据传输时,其数据传输进程在一个自由端口上发出被动打开,然后客户在控制连接上通过PORT命令将该自由端口告诉服务器控制进程,服务器数据传输进程在端口20上主动打开并与客户数据传输进程的自由端口建立连接。数据连接机制还包括建立连接选择数据参数。,17,2数据连接管理默认数据连接端口:所有FTP服务
9、器必须使用默认数据连接端口(20)。确定非默认数据端口:用户PI可以使用PORT命令指定客户的非默认端口。3数据连接的关闭关闭连接的条件:用户端发送ABORT命令服务器通过EOF终止要求,表示结束发送数据控制连接关闭发生不可恢复错误,18,被动打开,控制进程,60201,控制进程,21,数据传输进程,60261,被动打开,控制进程,60201,控制进程,21,数据传输进程,数据传输进程,60261,PORT 60261,控制进程,60201,控制进程,21,数据传输进程,数据传输进程,60261,20,客户,服务器,控制连接,数据连接,20,19,12.2.3 通信FTP使用客户/服务器模式。
10、涉及到五个进程和两个相关。服务器首先运行一个本地FTP主服务进程,当客户端用户输入open和ftp命令后,客户指定一个远程计算机时,建立一个客户控制进程,本地应用成为一个FTP客户,建立了自己的半相关。,20,然后,客户用TCP建立与指定计算机上的FTP服务器之间的控制连接。服务器接收到客户连接请求后,派生一个服务器控制进程,该进程与客户控制进程建立起控制连接,即相关,双方进入会话状态。客户要进行数据传输时,派生一个客户数据传输进程,并在一个非默认端口上被动打开,通过控制连接,客户用PORT将端口号发给服务器控制进程。服务器控制进程接收到后,派生一个服务器数据传输进程,该进程建立一个自己的半相
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文件传输 协议
链接地址:https://www.31ppt.com/p-5739052.html