利用VB实现FTP基本功能

课程设计任务书

题 目: FTP文件传输的实现 初始条件:

理论:学完“操作系统”和“计算机网络”课程,掌握一种高级程序设计语言(C++、

C#、Java、Delphi)及集成开发平台的使用。

实践:计算机学院科学系实验中心提供计算机、软件平台和网络环境。如果自己

有计算机可以在其上进行设计。

要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)

(1) 模仿应用FTP协议。

(2)主要功能: 1支持站点目录和文件结构浏览。

2支持断线自动重新连接并自动恢复传输。

3文件列表过滤,远程编辑,整个远端目录删除,目录上传下载。

(3)应用所学计算机网络课程中的知识,利用网络实用程序实现其协议。

(4)编制好网络实用程序后,设计若干用例,上机测试并分析所设计的程序。 (5)设计报告格式按附件要求书写。课程设计报告书正文的内容应包括:

设计题目;需求说明(要求、功能简述)或问题描述; 设计说明(简要的分析与概要设计);详细的算法描述; 源程序与执行结果(含测试方法和测试结果);使用说明; 设计心得(设计的特点、不足、收获与体会); 展望(该实用程序进一步改进扩展的设想)。

时间安排:

设计时间一周: 周1:查阅相关资料。

周2:系统分析,设计。 周3周4:编程并上机调试 周5:撰写课程设计报告。

设计验收安排:19周星期五8:00起到计算机学院科学系实验中心进行上机验收。 设计报告书收取时间:19周的星期五下午5:00之前。

指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日

武汉理工大学《计算机网络》课程设计说明书

FTP文件传输的实现

1设计题目

FTP文件传输的实现

2需求说明(要求、功能简述)或问题描述

2.1 FTP概念和传输原理

FTP是Internet上使用非常广泛的一种通讯协议。它是由支持Internet文件传输的各种规则所组成的集合,这些规则使 Internet用户可以把文件从一个主机拷贝到另一个主机上,因而为用户提供了极大的方便和收益。

FTP和其它Internet服务一样,也是采用客户机/服务器方式。使用方法很简单,启动FTP客户端程序先与远程主机建立连接,然后向远程主机发出传输命令,远程主机在收到命令后就给予响应,并执行正确的命令。FTP有一个根本的限制,那就是,如果用户未被某一FTP主机授权,就不能访问该主机,实际上是用户不能远程登录(Remote Login)进入该主机。也就是说,如果用户在某个主机上没有注册获得授权,没有用户名和口令,就不能与该主机进行文件的传输。而Anonymous FTP则取消了这种限制。

FTP支持两种模式,一种方式叫做Standard(也就是PORT方式,主动方式),一种是Passive (也就是PASV,被动方式)。Standard模式FTP的客户端发送PORT命令到FTP服务器。Passive模式FTP的客户端发送PASV命令到FTPServer。Port模式FTP客户端首先和FTP服务器的TCP21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP20端口连接至客户端的指定端口发送数据。FTP server必须和客户端建立一个新的连接用来传送数据。Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。FTP服务器收到Pasv命令后,随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。

FTP可用多种格式传输文件,通常由系统决定,大多数系统(包括UNIX系统)只有两种模式:文本模式(ASCII)和二进制模式(BIN/IMAGE)。

1

武汉理工大学《计算机网络》课程设计说明书

简单的说,FTP就是完成两台计算机之间的拷贝,从远程计算机拷贝文件至自己的计算机上,称之为下载文件。若将文件从自己计算机中拷贝至远程计算机上,则称之为上载文件。在TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。

FTP(非匿名)必须要有4要素:FTP主机地址,端口号,用户名,密码。

2.2 需求说明

完成两台计算机之间的拷贝,实现文件的上传和下载; 支持站点目录和文件结构浏览;

文件列表过滤,远程编辑,整个远端目录删除; 支持断线自动重新连接并自动恢复传输。

3设计说明(简要的分析与概要设计)

采用VB编程,通过建立一系列的窗体模块,程序模块,类模块编制一个小的应用软件。该软件的功能是当程序运行成功后,用户可以选择任意的FTP主机地址进行登陆。当选择是匿名的FTP主机地址时,选择anonymous复选框,这时只需要输入FTP主机地址就可以登陆,此时用户名为anonymous,密码为Emai1地址,以便更好地对用户访问进行跟综。如果不是匿名登陆,则取消选择anonymous复选框,这时要输入用户名和密码,一个用户名对应了一个访问的权限。

通过WINSOCK建立连接,将信息发送到远程的ftp服务器主机上,实现用户的登陆。 当用户成功登陆后,远程FTP主机的文件就全部列在frmMain窗体左侧的TreeView控件中,当点机TreeView控件中的文件夹时,相应的文件夹中的文件就列在右侧的ListView控件中,并且显示文件的图标,大小和最近的访问日期。显示的方式可以通过点击工具栏中的图标来设置,文件可以以大图标的形式显示,也可以以小图标的形式显示。

当用户选择了远程的某一个文件后,可以点击工具栏上的下载,删除,重命名图标来实现对远程文件的操作。但实际上大多数FTP主机为了安全采取了一些保护措施以保护自己的文件。除非你有特殊的权限,否则不能对文件进行修改和删除。但是大多数匿名FTP主机都允许用户从其下载文件。

用户也可以在本地选择文件上传到FTP服务器主机,大多数用户不能将自己机器上的任何一个文件拷贝至匿名FTP主机上。即使有些匿名FTP主机确实允许用户上载文件,用户也只能将文件上载至某一指定上载目录中。随后,系统管理员会去检查这些文件,他会将这些文件移至另一个公共下载目录中,供其他用户下载,利用这种方式,远程主机的用

2

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4