计算机网络课设-FTP客户端的实现 下载本文

内容发布更新时间 : 2024/12/22 23:49:47星期一 下面是文章的全部内容请认真阅读。

《计算机网络》 课 程 设 计 报 告

(2016—2017学年第 二 学期)

题 目 简单FTP客户端的实现 学生姓名 专业班级 学生学号 教师姓名 成 绩: 评 语:

教师签名:

日期:

目录

1.引言 .................................................................................................................... 3 2.实验要求 ............................................................................................................ 3 3.需求分析 ............................................................................................................ 3

3.1开发环境介绍 ......................................................................................... 3 3.2 FTP工作原理 ........................................................................................... 5 3.3数据传输模式 ......................................................................................... 6 4. 模块设计 .......................................................................................................... 7

4.1客户端功能模块 ..................................................................................... 7

4.1.1连接功能模块 .............................................................................. 7 4.1.2下载功能模块 .............................................................................. 8 4.1.3上传功能模块 .............................................................................. 8 4.2客户端界面设计 ..................................................................................... 8 4.3数据流程图 ............................................................................................. 9

4.3.1客户端连接流程图 ...................................................................... 9 4.3.2上传子模块流程图 ...................................................................... 9 4.3.3下载子模块流程图 .................................................................... 10

5.具体实现 .......................................................................................................... 10

5.1连接模块 ............................................................................................... 10 5.2上传模块 ............................................................................................... 12 5.3下载模块 ............................................................................................... 13 6. 总结体会 ........................................................................................................ 15 7. 参考文献 ........................................................................................................ 15

2

1.引言

文件传输协议(File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式,它属于网络传输协议的应用层。文件传输协议的原始规范于1971年4月16日发布为RFC 114。直到1980年,FTP运行在TCP/ IP的前身NCP上。该协议后来被TCP / IP版本,RFC 765(1980年6月)和RFC 959(1985年10月)(当前规范)所取代。RFC 959提出了若干标准修改,例如RFC 1579(1994年2月)启用防火墙FTP(被动模式),RFC 2228(1997年6月)提出安全扩展,RFC 2428(1998年9月)增加了对IPv6的支持,并定义了一种新型的被动模式。FTP服务一般运行在20和21两个端口。端口20用于在客户端和服务器之间传输数据流,而端口21用于传输控制流,并且是命令通向ftp服务器的进口。当数据通过数据流传输时,控制流处于空闲状态。而当控制流空闲很长时间后,客户端的防火墙会将其会话置为超时,这样当大量数据通过防火墙时,会产生一些问题。此时,虽然文件可以成功的传输,但因为控制会话,会被防火墙断开;传输会产生一些错误。

2.实验要求

本课程设计制作一个简单易用的 FTP 服务器和客户端程序,能够实现连接、查看文件列表、文件上传、下载等功能。

3.需求分析

3.1开发环境介绍

本系统开发环境主要用到eclipse编译环境和JAVA语言。Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。Eclipse 附带了一个标准的插件集,

3