网络协议分析课设.docx

上传人:b****5 文档编号:29235630 上传时间:2023-07-21 格式:DOCX 页数:13 大小:158.24KB
下载 相关 举报
网络协议分析课设.docx_第1页
第1页 / 共13页
网络协议分析课设.docx_第2页
第2页 / 共13页
网络协议分析课设.docx_第3页
第3页 / 共13页
网络协议分析课设.docx_第4页
第4页 / 共13页
网络协议分析课设.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

网络协议分析课设.docx

《网络协议分析课设.docx》由会员分享,可在线阅读,更多相关《网络协议分析课设.docx(13页珍藏版)》请在冰豆网上搜索。

网络协议分析课设.docx

网络协议分析课设

郑州轻工业学院

课程设计报告

题目:

网络协议分析课程设计

 

姓名:

院(系):

国际教育学院

专业班级:

互联网12级2班

学号:

指导教师:

尹毅峰张俊松杨杰

 

成绩:

时间:

2016年1月4日至2016年1月8日

 

目录

1.序言1

1.1研究背景1

1.2开发工具1

2.系统需求分析1

2.1功能需求1

2.2系统模型设计2

2.3系统工作流程设计2

3.系统设计3

3.1实现功能3

3.2函数说明3

3.2.1功能实现函数3

4.系统实现6

4.1界面设计的实现7

4.1.1连接服务器7

4.1.2获取文件列表7

4.1.3断开服务器7

4.1.4上传文件8

4.1.5下载8

4.1.6删除9

5.总结11

参考文献12

 

1.序言

摘要

FTP是Internet上用来传送文件的协议。

它是为了我们能够在Internet上互相传送文件而制定的文件传送标准,规定了Internet上文件如何传送。

通过FTP协议,我们就可以跟Internet上的FTP服务器进行文件的上传或下载。

本文以实现一个简单易用的FTP客户端为目标,通过分析FTP协议的基本工作原理和FTP的数据传输原理,研究如何使用Java工具对FTP客户端进行设计,选择Java类库中的ftpclient类来实现FTP客户端程序的上传下载等主要功能,并用Jbuilder2006软件提供的一个支持可视化编程的开发环境,从而实现了对FTP客户端的开发.

关键词:

FTP协议、工作原理、ftpclient、上传下载

1.1研究背景

FTP是Internet上最早也是最广的应用,直到今天它仍是最重要和最基本的应用之一。

用FTP将信息下载到本地是一件十分普遍的事。

也随之出现了许多下载软件。

尽管远程登录(Telnet)提供了访问远程文件的极好方法,但怎么也比不上使用自己计算机中的文件方便。

如果用户想使用其它计算机上的文件,最理想的方法就是把它COPY到自己的计算机中,以便在本地计算机上操作。

FTP正是完成这项工作的工具,你可以在任意一个经过文件传输协议(FTP)访问的公共有效的联机数据库或文档中找到你想要的任何东西。

传统的数据库应用系统采用的是客户机/服务器(Client/Server)模式,有高度的交互性,高效的用户界面等优点.

1.2开发工具

Java编程语言,Java编程语言的主要特性是个简单、面向对象、分布式解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。

2.系统需求分析

2.1功能需求

1.实现一个图形用户界面的FTP客户端,保证文件的安全传输和存储。

2.通过输入服务器地址、用户名和密码、可以实现远程FTP主机的登录。

3.提供本地文件的上传功能,可对FTP主机文件进行下载、上传、删除、重命名等文件操作。

2.2系统模型设计

 

图2-1系统模型图

2.3系统工作流程设计

 

图2-2系统工作流程图

 

3.系统设计

3.1实现功能

用户登陆用户退出文件上传文件下载

文件删除上翻文件目录下翻文件目录

界面实现部分:

设计为一个用户界面,上面包括各种用户按钮、文本输入栏、状态栏等等。

具体如下:

服务器地址信息输入栏、端口信息输入栏、用户名、密码输入栏、用户登陆(连接)按钮、用户退出(断开连接)按钮、服务器文件显示列表框、下载文件按钮、上传文件按钮、重命名文件按钮、删除文件按钮、上一级目录按钮,下一级目录按钮,状态栏。

3.2函数说明

3.2.1功能实现函数

使用SUN公司提供的FTP客户端类库。

主要包括4个类:

.TelnetInputStream

.TelnetOutputStream

.ftp.FtpClient

.ftp.FtpLoginException

编写FtpBean类实现业务逻辑,包含一个FtpClient类的对象ftpClient。

包含的方法如下:

(1)建立连接

Stringconnect(Stringdir,Stringhostname,intport,Stringusername,Stringpasswd)

使用ftpClient=newFtpClient(hostname,port);

ftpClient.login(username,passwd);

(2)获取文件名列表

ListgetFileNameList()

使用InputStreamReaderisr=null;

BufferedReaderbr=null;

isr=newInputStreamReader(this.ftpClient.nameList(this.getDir()));

br=newBufferedReader(isr);

获取输入流来得到目录中的文件信息

(3)判断路径

booleanisDir(Stringline)

使用line.startsWith("d")来判断

(4)设置路径

booleansetPath(Stringpath)

使用ftpClient.cd(path);实现

(5)上传文件

booleanuploadFile(StringlocalFile,StringtargetFileName)

使用ftpClient.cd(path);实现

(5)上传文件

booleanuploadFile(StringlocalFile,StringtargetFileName)

使用

TelnetOutputStreamtos=null;

RandomAccessFilesendFile=null;

DataOutputStreamdos=null;

try

{

Filefile=newFile(localFile);

sendFile=newRandomAccessFile(file,"r");

sendFile.seek(0);

tos=this.ftpClient.put(targetFileName);

dos=newDataOutputStream(tos);

intch=0;

while(sendFile.getFilePointer()

{

ch=sendFile.read();

dos.write(ch);

}

获取文件输出流,读取数据并写入文件

(6)下载文件

booleandownloadFile(StringsrcFileName,StringtargetFileName)

使用TelnetInputStreamtis=null;

RandomAccessFilegetFile=null;

booleanresult=true;

try

{

Filefile=newFile(targetFileName);

getFile=newRandomAccessFile(file,"rw");

getFile.seek(0);

tis=this.ftpClient.get(srcFileName);

DataInputStreamdis=newDataInputStream(tis);

intch=0;

while(true)

{

ch=dis.read();

if(ch<0)

{

break;

}

getFile.write(ch)

}

getFile.close();

}

获取文件输入流,读取数据并写入文件

(7)进入上一级文件目录

up()

使用ftpClient.cdUp();实现

(8)进入下一级文件目录

downDir()

使用上面的方法来实现下一级文件目录的访问

(9)给文件重命名

booleanrenameFile(StringoldName,StringnewName)

使用ftpClient.rename(oldName,newName);来实现

(10)删除文件

deleteFile(StringfileName)

使用Stringcmd="DELE"+fileName+"\r\n";

ftpClient.sendServer(cmd);

来实现

(11)获取当前路径

StringgetDir()

使用returnthis.ftpClient.pwd();实现

(12)关闭连接

Stringclose()

使用ftpClient.closeServer();实现

 

4.系统实现

4.1界面设计的实现

4.1.1连接服务器

单击连接若服务器名称、端口、用户名和密码对的前提下登录到指定的服务器上面,弹出“登录成功”对话框,并在下方状态栏中显示“登录成功

图4.1连接服务器

4.1.2获取文件列表

登录到服务器上面之后,获取在服务器用户的主文件及文件夹

并在下方状态栏显示

图4.2获取文件列表

4.1.3断开服务器

当用户需要关闭连接时,单机“断开连接”就可断开与服务器的连接,在状态栏上显示“连接已断开”,此时并不退出客户端。

图4.3断开服务器

4.1.4上传文件

选中FTP服务器上的文件夹,右击弹出快捷菜单单击上传显示上传对话框,选择需要传的文件,单击打开即可上传,上传成功显示“上传成功”对户框,并在状态栏显示当前状态。

4.1.5下载

选中FTP服务器上的文件夹右击弹出快捷菜单,单击下载.

图4.4下载

弹出下载主机路径,指定目录以及文件名称,单击打开

图4.5存储下载文件

下载成功会弹出对话框“下载文件+源文件具体目录+成功”

图4.6下载成功

4.1.6删除

选中需要删除的文件,右击弹出快捷菜单,单击删除

图4.7删除

弹出删除文件成功消息框

图4.7删除成功

此时的文件夹已经把选中的从列表中移除。

 

5.总结

通过为期一周的课程设计,我对FTP又有了重新的认识,加深了我对它的理解,虽然说在课程设计中遇到了很多问题和困难,但是在老师的指导下及我和其他小组成员的积极探讨和研究下,我终于完成了小组的课程设计——FTP客户端的设计及实现服务器的搭建。

虽然我们在该系统功能上还有许多不足,但通过这一段时间的设计,从拟定方案,设计模块,解决开发过程中遇到的各种困难,最终实现了该文件传输系统的基本功能。

使我们对FTP客户端有了更深的了解。

FTP的目标是提高文件的共享性和可靠高效地传送数据,而FTP客户端的作用是使用户方便的连接和访问FTP客户端。

该设计实现了简单的FTP客户端,选择java类库使客户通过FTP客户端能简单地连接和访问,上传、下载、删除、刷新、返回上级目录等基本的操作功能。

 

参考文献

[1]杨树林,胡洁萍Java语言最新实用案例教程。

北京:

科学出版社,2006。

[2]叶俊明软件工程。

北京:

清华大学出版社,2006:

第三章软件需求分析基础。

[3]W.RichardStevens.TCP/TP详解卷1:

协议。

北京:

机械工业出版社,2000。

[4]谢希仁计算机网络(第五版)。

北京:

电子工业出版社,2006。

[5]赵生慧等编译Java面向对象程序设计(第二版)。

北京:

中国水利水电出版社,2010。

 

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

当前位置:首页 > 考试认证 > 司法考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1