FTP编程与资源访问

FTP编程与资源访问

ID:45038565

大小:2.02 MB

页数:70页

时间:2019-11-08

FTP编程与资源访问_第1页
FTP编程与资源访问_第2页
FTP编程与资源访问_第3页
FTP编程与资源访问_第4页
FTP编程与资源访问_第5页
资源描述:

《FTP编程与资源访问》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章FTP编程与资源访问6.16.2FTP应用基础制作FTP上传下载器6.3FTP服务器的实现6.4自制FTP客户端与服务器对接6.1FTP应用基础6.1.1FTP简介与大多数Internet应用一样,FTP也是基于客户端—服务器(C/S)模式工作的,如图6.1所示。6.1.2FTP的特性1.适应异构系统FTP可以使用的文件类型有以下四种。(1)ASCII码文件。这是FTP默认的文本文件格式,数据在传输过程中使用与Telnet相同的NVTASCII码。(2)EBCDIC码文件。它也是一种文本类型文件,只是利用8位代码表示一个字符,该文本文件

2、在传输时要求两端都使用EBCDIC码。(3)图像(Image)文件。图像文件也称为二进制文件类型,发送的数据为连续的比特流,实际传输时,发送方将数据打包成为8位,然后以字节为单位进行传输。(4)本地(local)文件。字节的大小由本地主机定义,即每一字节的比特数由发送方规定,用于在具有不同字节大小的主机间传输二进制文件。6.1.2FTP的特性FTP支持的文件数据结构有如下几种结构。(1)文件结构。这是FTP默认的方式,文件被认为是一个连续的字节流,不存在内部的结构。(2)记录结构。只适用于文本文件(ASCII或EBCDIC),是由连续的记录构

3、成的。(3)页结构。当文件是由非连续的多个部分组成时,使用页结构,这种文件称为随机访问文件。每页都带有页号发送,以便接收方能够随机地存储各页。6.1.2FTP的特性2.匿名FTP通常,使用FTP时必须首先登录,输入用户名和密码,从远程主机获得相应的权限后,方可下载或上传文件。但这违背了Internet的开放性,匿名FTP就是为解决这个问题而产生的一种机制:用户可通过它连接到远程主机并下载文件,而无须成为其注册用户。系统管理员建立一个特殊的用户名——anonymous,Internet上的任何人在任何地方都可使用该用户名。6.1.3FTP工作原

4、理下面以客户要从FTP服务器上下载一个文件为例,说明FTP的完整工作过程。其工作原理如图6.2所示。6.1.3FTP工作原理1.启动FTP用户通过GUI界面操作客户端软件,执行启动FTP的用户交互式命令。2.建立控制连接客户端TCP层根据用户命令中给出的服务器IP地址,向服务器提供FTP服务的21端口发出主动建立连接的请求。服务器收到请求后,通过三次握手,在进行FTP命令处理的用户协议解释器进程和服务器协议解释器进程之间建立一条TCP连接6.1.3FTP工作原理3.建立数据连接和进行文件传输(1)在客户端请求分配一个临时的TCP端口号。(2)

5、在客户端由客户协议解释器通过控制连接,向服务器协议解释器发送两条命令:一条命令(使用PORT命令)是将客户端的IP地址和申请到的临时端口号这两个参数,告诉给服务器协议解释器;另一条命令是将服务器上某文件传输到客户端的服务请求。(3)服务器协议解释器收到客户端的IP地址和临时端口号后,以该IP地址和端口号为目标,使用服务器的20端口(TCP层用于传输数据的端口)向客户发出主动建立连接的请求。(4)客户收到请求后,通过三次握手,在客户数据传输进程和服务器数据传输进程之间建立一条TCP连接,下面的传输文件就通过这个连接进行,由于它的建立是专用于传输

6、数据的,所以将它称为数据连接。(5)服务器的数据传输进程从它的文件系统中找到客户进程请求传输的文件。(6)服务器的数据传输进程通过数据连接将该文件发送到用户数据传输进程。(7)用户数据传输进程将该文件交给客户端文件系统进行存储。(8)文件传输完成后,由服务器主动关闭该数据连接。6.1.3FTP工作原理4.关闭FTP除了本例中介绍的客户从FTP服务器下载一个文件时要建立数据连接外,当客户要向服务器上传一个文件或客户要求查看服务器文件列表时,也要建立相应的数据连接。因此,在下列三种情况下都需要在客户和服务器之间自动建立数据连接。从客户向服务器发

7、送一个文件。从服务器向客户发送一个文件。从服务器向客户发送文件目录列表。6.1.3FTP工作原理其实客户端可以不对服务器通知数据连接的端口,在这种情况下,服务器同样可以与客户端建立一条数据连接,只不过在客户端,数据连接就使用与控制连接相同的端口号。这时,控制连接和数据连接可以分别表示如下。控制连接:<客户端IP地址,客户端控制连接端口,服务器IP地址,FTP服务器控制连接端口21>数据连接:<客户端IP地址,客户端控制连接端口,服务器IP地址,FTP服务器数据连接端口20>6.1.4FTP命令和应答1.FTP命令FTP命令都是由三个或

8、四个大写ASCII码字符组成的,表6.1列出了FTP命令,共分为三大类。2.FTP应答(1)服务器为了对数据传输的请求和过程进行同步,这是TCP所要求的,TCP要求

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。