设为首页 加入收藏

TOP

3.1.2 工作原理
2013-10-07 15:54:30 来源: 作者: 【 】 浏览:84
Tags:3.1.2 工作 原理

3.1.2  工作原理

FTP服务是一种有连接的文件传输服务,采用的传输层协议是TCP协议。FTP服务的基本过程是:建立连接、传输数据与释放连接。由于FTP服务的特点是数据量大、控制信息相对较少,因此在设计时采用分别对控制信息与数据进行处理的方式,这样用于通信的TCP连接也相应地分为两种类型--控制连接与数据连接。其中,控制连接用于在通信双方之间传输FTP命令与响应信息,完成连接建立、身份认证与异常处理等控制操作;数据连接用于在通信双方之间传输文件或目录信息。

图3-2给出了FTP服务的工作原理。FTP客户机向FTP服务器发送服务请求,FTP服务器接收与响应FTP客户机的请求,并向FTP客户机提供所需的文件传输服务。根据TCP协议的规定,FTP服务器使用熟知端口号来提供服务,FTP客户机使用临时端口号来发送请求。FTP协议为控制连接与数据连接规定不同的熟知端口号,为控制连接规定的熟知端口号是21,为数据连接规定的熟知端口号为20。FTP协议采用的是持续连接的通信方式,它所建立的控制连接的维持时间通常较长。

 
图3-2  FTP工作原理

FTP协议规定了两种连接建立与释放的顺序。控制连接要在数据连接建立之前建立,在数据连接释放之后释放。只有建立数据连接之后才能传输数据,并在数据传输过程中要保持控制连接不中断。控制连接与数据连接的建立与释放有规定的发起者。控制连接与数据连接建立的发起者只能是FTP客户机;控制连接释放的发起者只能是FTP客户机,数据连接释放的发起者可以是FTP客户机或服务器。如果在数据连接保持的情况下控制连接中断,则可以由FTP服务器要求释放数据连接。

在FTP服务的工作过程中,FTP客户机向服务器请求建立控制连接,FTP客户机与服务器之间建立控制连接;FTP客户机请求登录到服务器,FTP服务器要求客户机提供用户名与密码;当FTP客户机成功登录到服务器后,FTP客户机通过控制连接向服务器发出命令,FTP服务器通过控制连接向客户机返回响应信息;当FTP客户机向服务器发出目录命令后,FTP服务器会通过控制连接返回响应信息,并通过新建立的数据连接返回目录信息。

如果用户想改变在FTP服务器的当前目录,FTP客户机通过控制连接向服务器发出改变目录命令,FTP服务器通过数据连接返回改变后的目录列表;如果用户想下载当前目录中的某个文件,FTP客户机通过控制连接向服务器发出下载命令,FTP服务器通过数据连接将文件传输到客户机。数据连接有两种常用的工作模式--ASCII模式和BINARY模式。其中,ASCII模式适合传输文本文件,BINARY模式适合传输二进制文件。数据连接在目录列表或文件下载后关闭,而控制连接在程序关闭时才会关闭。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇3.1.1 FTP概述 下一篇3.1.3 使用模式

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C++中智能指针的性能 (2025-12-25 03:49:29)
·如何用智能指针实现c (2025-12-25 03:49:27)
·如何在 C 语言中管理 (2025-12-25 03:20:14)
·C语言和内存管理有什 (2025-12-25 03:20:11)
·为什么C语言从不被淘 (2025-12-25 03:20:08)