设计与实现FTP客户端.docx

上传人:王** 文档编号:969839 上传时间:2024-03-04 格式:DOCX 页数:29 大小:509.78KB
下载 相关 举报
设计与实现FTP客户端.docx_第1页
第1页 / 共29页
设计与实现FTP客户端.docx_第2页
第2页 / 共29页
设计与实现FTP客户端.docx_第3页
第3页 / 共29页
设计与实现FTP客户端.docx_第4页
第4页 / 共29页
设计与实现FTP客户端.docx_第5页
第5页 / 共29页
设计与实现FTP客户端.docx_第6页
第6页 / 共29页
设计与实现FTP客户端.docx_第7页
第7页 / 共29页
设计与实现FTP客户端.docx_第8页
第8页 / 共29页
设计与实现FTP客户端.docx_第9页
第9页 / 共29页
设计与实现FTP客户端.docx_第10页
第10页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《设计与实现FTP客户端.docx》由会员分享,可在线阅读,更多相关《设计与实现FTP客户端.docx(29页珍藏版)》请在优知文库上搜索。

1、FTP客户端的设计与实现摘要FTP是Imernel上用来传送文献的协议。它是为了我们可以在InterneI上互相传送文献而制定的文献传送原则,规定了Imernel上文献怎样传送。通过FTP协议,我们就可以跟InIemel上的FTP服务器进行文献的上传或下载。本设计以实现一种简朴易用的FTP客户端为目的,通过度析FTP协议的基本工作原理和FTP於J数据传播原理,研究怎样使用VC+语言对FTP客户端进行设计,用VisualStudio2023设计和实现了FTP客户端时开发。关键词FTP的工作原理;VC+;FTP客户端1绪论1.1 课题背景FTP是互联网上使用最广泛的文献传播协议。在互联网初期曾占据

2、整个互联网通信的三分之一,它处理了在不一样操作系统下处理文献格式的不兼容性。老式方式需要在DOS下输入命令,对于一般顾客是件极困难的事。但有了FTP客户端软件后,只要轻点几下鼠标就可以完毕所有操作。FTP客户端应当包括如下功能:登录,浏览目录,上传和下载。它已成为人们不可缺乏的软件之一。1.2 研究现实状况FTP服务是Internel上最早应用于主机之间进行数据传播的基本服务之一。起初,FTP并不是应用于IP网络上的协议,而是20世纪60-80年代美国国防部组建的ARPANET网络中,用于计算机间的文献传播的协议。FTP服务的一种非常重要B特点是其实现可以独立于平台,也就是说在UNIX、DOS

3、、WindOWS等操作系统中都可以实现FTP0客户端和服务器。尽管目前已经普遍采用方式传送文献,但FTP仍然是跨平台直接传送文献0重要方式。目前市面上可通过正规渠道获得B成熟0FTP软件如SerVer-U、CUteftp、Transmit.FlaShfXP等都是国外开发的,需要注册、付费使用。从其他渠道获取的FTP软件,则存在安全面的问题。国内也很难找到免费、安全的FTP软件。虽然操作系统有自带的FTP软件,但它是基于命令行的,没有友好的顾客操作界面,对顾客的计算机技能规定较高,一般0顾客也不会用,并且不支持断点续传和文献夹的上传、下载等功能。因此,设计与实现一种开源的、适合大众需求0FTP客

4、户端和服务器软件是有必要B,是符合社会发展需要叽1.3 研究措施本设计重要用VC+语言开发FTP客户端软件。根据此前所学的有关知识:包括计算机网络技术,TCP/IP详解等;查阅WindOWS应用程序开发资料,学习VC+语言,FTP通信过程,进而实现FTP软件的功能。2 FTP协议分析2.1 FTP内容简介文献传播协议(FileTranSferPrOtOe01,FTP)RC959是因特网上使用最为广泛B文献传播协议。FTP提供交互式的访问,容许文献具有存取权限(如访问文献必须通过授权和有效指令),并容许顾客指明文献的类型和格式(如指明与否使用ASCll码)。FTP屏蔽了各计算机系统的细节,因而适

5、合于在异构网络/主机间传播文献。当顾客(在Windows操作系统中有同名的!应用程序,可以使用Windows中0“运行”对话框或在DoS命令行状态下运行)启动FTP与TCP/IPB网络主机进行文献传播。实际上要用到两个程序:当地机上的FTP客户程序,它提出传播文献的祈求;运行在远程主机上0FTP服务器程序,它响应顾客祈求并把指定B文献传播到对应时主机上。从主线上说,FTP协议就是在网络中多种不一样的计算机之间按照TCP/IP协议来传播文献。FTP协议采用客户机/服务器(Client/Sever)模式,由FTP客户端程序和FTP服务器端程序构成。使用时,先启动FTP客户端程序与远程主机建立连接,

6、然后向远程主机发出传播命令,远程主机在收到命令后就予以响应,并执行对的的命令。FTP是基于TCP日勺文献传送协议,其传播0可靠性由TCP来保障。在TCP/IP协议族中尚有一种基于UDP0文献传送协议TFTP,它与FTP同属于文献共享协议,即在传播过程中复制整个文献,其特点是:若要传播一种文献,就必须先获得当地的文献副本。若要修改文献,就只能对文献的副本进行修改,然后再将修改后的文献副本传回到原主机网。一般说来,因特网上有两大类FTP文献服务器。一类是所谓的“匿名FTP服务器”,此类服务器的目的是向公众提供文献资源服务,不规定顾客事先在该服务器上进行注册。另一类是非匿名FTP服务器,要进入此类服

7、务之前,顾客必须先向服务器系统管理员申请顾客名和密码,非匿名FTP服务器一般供内部使用或提供征询服务。2.2 FTP工作原理FTP(FileTransferProtocol),是文献传播协议B简称。用于Intemet上B控制文献的双向传播。同步,它也是一种应用程序。顾客可以通过它把自己机器与世界各地所有运行FTP协议的J服务器相连,访问服务器上的资源和信息。FTP协议在TCP/IP协议栈中B位置如表21:表2-1TCP/IP协议栈FTPTELNSMTPDNSTFTPNMP应用层TCPUDP传播层IP互联网络层X25ISDNLANWLANFDDIATM网络接口层当启动FTP从远程计算机拷贝文献时

8、,实际上启动了两个程序:一种当地机器上由JFTP客户端程序,它向FTP服务器提出拷贝文献的祈求。另一种是启动在远程计算机的上0FTP服务器程序,它响应祈求把你指定日勺文献传送到你B计算机中。在经典日勺FTP会话过程中,顾客一般坐在当地主机前进行同远程主机之间的文献传播。为了可以访问远程账户,顾客必须提供顾客标识和密码。在通过了身份验证之后,顾客就可以在当地主机和远程主机之间传播文献了。顾客通过FTP的顾客代理与FTP进行交互。顾客首先需要远程提供主机名或IP地址,以便当地FTP的客户进程可以同远程主机上的JFTP服务器进程建立连接。然后,顾客提供其标识和密码。一旦验证通过,顾客即可在两个系统之

9、间传播文献。FTP使用两个并行BTCP协议来传播文献,一种称为控制连接,另一种称为数据连接。控制连接用来在两台主机之间传播控制信息,如顾客标识、密码、操作远程主机文献目录的命令、发送和取向文献的命令等。而数据连接则真正用来发送文献。FTP的控制和数Umi*juXA-/一mXiu、据连接如图2-1所示。图2-1FTP工作原理示意图当顾客启动一次与远程主机的IFTP会话时,FTP首先建立一种TCP连接到FTP服务器B21号端口。FTP日勺客户端则通过该连接发送顾客标识和密码等,客户端还可以通过该连接发送命令以变化远程系统B目前工作目录。当顾客规定传送文献时,FTP服务器则在其20号端口上建立一种数

10、据连接,FTP在该连接上传送完毕一种文献后会立即断开该连接。假如再一次FTP会话过程中需要传送另一种文献,FTP服务器则会建立另一种连接。在整个FrP会话过程中,控制连接是一直保持的,而数据连接则会伴随文献的传播不停时打开和关闭。2.3 FTP工作模式FTP采用C/S(客户端/服务器)模式进行通信,但与其他BC/S模式网络通信协议又有一种很大的区别。一般在进行通信或是TELNET通信的时候,只需要一种端口进行通信。即客户端只需要连接一种端口进行数据通信。如TELNET的默认端口是23,顾客从头到尾都只需使用这个端口。不过FTP通信除了有一种默认端口21之外,还需要其他的端口。其中默认端口(21

11、)重要进行控制连接,进行命令协议和服务器端B响应码H传播;此外一种非原则端口重要进行数据传递,如文献日勺上载、下载等UL至于非原则端口的产生则要根据顾客选择的连接模式而定:假如客户选择的是积极模式(PORT),则需要顾客端提供应服务器一种IP地址和一种非原则端口;而假如顾客采用被动模式(PASV),则服务器端需要提供应客户端一种IP地址和一种非原则端口。下表2-2是几种著名0TCP端口号:表2-2TCP端口号TCP端口号关键字描述20FTP-DATA文献传播协议数据21FTP文献传播协议控制23TELNET远程登录协议25SMTP简朴邮件传播协议53DOMAIN域名服务器80超文本传播协议11

12、0POP3邮局协议119NNTP新闻传送协议控制连接是建立在USER-PIT和SERVER-PI之间用于互换命令与应答日勺通信链路。数据连接是传播数据的全双工连接,传播数据可以发生在服务器DTP和顾客DTP之间也可以发生在两个服务器DTP之间,FrP可以传播非持续的文献,这些文献0一部分称为页。服务器DTP代表一种传播过程,它一般处在“积极”状态,它和侦听端口建立数据连接,它还可认为传播和存储设置参数,并根据PI的指令传播数据。详细工作模式如图22所示:人ALAqAr图2-2FTP工作模式在开始阶段,原则FTP命令由顾客Pl产生并通过控制连接传送到服务器进程。服务器PI向顾客PI返回原则应答。

13、FTP命令指定数据连接参数和文献系统操作。顾客DTP在特定数据端口侦听,服务器开始数据连接并以指定的参数开始数据传播。数据端口不必在开始FTP命令B机器上,但顾客或顾客FTP进程必须确定它在指定B数据端口上侦听.这个数据连接是全双工时。2.4 简朴文献传送协议TCP/IP协议族中尚有简朴文献传播协议,它是一种很小且易于实现的文献传送协议RFC783,RFC1350.虽然TFTP也使用客户机/服务器方式,但它的传播层使用UDP支持,因此TFTP要自己实现纠错功能。TFTP只支持文献传播,而不支持交互,且没有一种庞大的命令集。TFTP没有列目录功能,也不能对顾客进行身份验证。TFTP0重要长处有两

14、个。第一,TFTP可用于UDP环境。例如,当需要将程序或文献同步向许多计算机下载时往往就需要使用TFTP。第二,TFTP代码所占用的内存空间较小。这对存储容量较小日勺计算机或某些特殊用途日勺设备是很重要日勺。这些设备不需要硬盘,只需要固化了TFTP、UDP、和IP的小容量只读存储器即可。3 FTP客户端日勺设计3.1 设计目日勺FTP早已应用在网络日勺各个方面,例如我们在访问网络上0资源时,常常会碰到需要连接FTP服务器来下载,或者你制作了一种网站,想要将其上传至服务器,让大家可以访问它,这个时候就会用到FTP客户端。一般来说,系统需求分析从如下几种方面来简介:顾客需求。软件要简朴上手,可以匿

15、名或者使用帐号登录到顾客指定的服务器上,进行访问和数据的上传和下载。功能需求。该系统重要包括如下几种方面:登录和连接服务器模块;浏览服务器/当地目录和文献模块;上传和下载文献模块。由这三个模块构成该系统。性能需求。整个系统操作应当简便,界面友好,运行稳定,执行速度快。系统自身运行对计算机硬件平台和操作系统平台规定适中。因此本文所设计的IFTP客户端则适合大多数顾客使用,界面设计的很简朴,使顾客可以一目了然,并且具有FTP客户端的基本功能,可以作为下载、上传文献0工具来使用。3.2 开发语言程序中所用到B编程语言就是C+oC+是在C语言的基础上开发的一种通用编程语言,应用广泛。C+支持多种编程范式一一面向对象编程、泛型编程和过程化编程。最新正式原则C+14于2023年8月18日公布。其编程领域众广,常用于系统开发,引擎开发等应用领域,是至今为止最受广大受用的J最强大编程语言之一,支持类:类、封装、重载等口仙C+语言0重要特点表目前两个方面,一是尽量兼容C,二是支持面向对象的措施。它操持了C日勺简洁、高效B靠近汇编语言等特点,对C日勺类型系统进行了改革的扩充,因此C+比C更安全,C+的编译系统能检查出更多的类型错误。此外,由于C语言的广泛使用,因而极大的增进了C+0普及和推广。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 数据结构与算法

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!