毕业设计论文基于socket的文件传输系统.doc
《毕业设计论文基于socket的文件传输系统.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于socket的文件传输系统.doc(36页珍藏版)》请在三一办公上搜索。
1、密 级 公 开 学 号 XX学院毕业论文(设计)基于socket的局域网文件传输系统 论文作者指导教师所属学院专业本科专科年级论文提交日期论文答辩日期xxxxxx数学与计算机学院计算机科学与技术本科2007级2011年5月20日2011年5月 28日 毕业论文(设计)学术承诺本人郑重承诺:所呈交的毕业论文是本人在导师指导下进行的研究工作及取得的研究成果.除了文中特别加以标注和致谢的地方外,论文中不存在抄袭情况,论文中不包含其他人已经发表的研究成果,也不包含他人或其他教学机构取得的研究成果.作者签名: 日 期: 毕业论文(设计)使用授权的说明本人了解并遵守衡水学院有关保留、使用毕业论文的规定。即
2、:学校有权保留或向有关部门送交毕业论文的原件或复印件,允许论文被查阅和借阅;学校可以公开论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文及相关资料。作者签名: 指导教师签名: 日 期: 日 期: 07级计算机科学与技术专业毕业论文基于socket的局域网文件传输系统摘 要:文件传输是通过一条网络连接从远地站点向本地主机复制文件。当前internet上有着各种文件传输文件,例如QQ等。但大多数是需要远地服务器控制的。因此对于一些仅需在局域网内部完成的传输工作存在着风险和资源浪费。基于socket的局域网文件传输系统是用java语言在myeclipse for spring 8.6环
3、境下开发完成的一种适用于局域网的内部文件传输系统。它具有聊天和文件传输两个功能,可满足校园网等小范围内的日常工作和学习。客户端双方及服务器在tcp协议基础上建立socket连接之后,客户端可以从服务器上获取其它登陆用户的用户名和ip地址等信息,在用户通讯前彼此的客户端还应该进行连接,它们之间的具体通讯过程是不需要通过服务器的点对点通讯。关键词:java;点对点;Socket连接 IIITitle: The Design and Implementation of File Transfer System Based on LANAbstract: File transfer copy file
4、s from the remote site to the local host through a network connection. The Internet has various file transfer documents, such as QQ, etc. But most remote server control is required. So for some internal completed only in the local area network transmission there is a risk and waste of resources. Bas
5、ed on the LAN socket with file transfer system is in myeclipse for Java language are completed under the environment of 8.6 development which is suitable for LAN internal documents transmitting system. It has a chat and file transfer two functions, can meet the campus network and other small range o
6、f daily work and study. The client and server in both parties based on TCP protocol after socket connection from the server, the client can obtain other landing users user name and IP address and other information, in user communication before each others client should also connects, the specific co
7、mmunications between them is not to need to process through the servers peer-to-peer communication.Keywords: Java; Peer-to-peer; Socket connection 目 录Abstract:II1 绪论11.1选题背景11.2选题意义11.3 前人的工作成果11.4 本文的主要工作22开发环境和相关技术简介32.1 MyEclipse及MyEclipse for spring32.2tcpip协议简介42.3基于Socket的java网络编程技术介绍42.3.1什么是
8、socket42.3.2socket的运行机制图52.3.3如何进行socket编程53 设计方案介绍73.1系统需求分析73.2服务器、客户器功能介绍83.2.1服务器功能介绍83.2.2客户端功能介绍94实现过程分析114.1系统通讯过程流程图114.2服务器、客户端通讯过程设计分析114.2.1服务器端分析114.2.2客户端分析145 软件运行测试图175.1服务器运行测试175.2客户端运行测试17结语22参考文献23致 谢24附录2配置及安装说明25附录2源代码26柳亚林:VLAN在校园网中的高效应用第 IX 页 共 5 页07级计算机科学与技术专业毕业论文1 绪论1.1选题背景当
9、今世界科学技术飞速发今天,借助于网络进行信息资源交流给人们带来了极大的方便。各种文件传输系统都已被广大用户接受。比如QQ、UC、Internet邮件等互联网上的文件传输。甚至需要花费大量的金钱购买各种移动磁盘或者其他局域网内连接主机的硬件设备。而达到的效果却总是因为传输效率以及安全威胁而受到很大的限制。在这种形势下,开发一个功能简单而实用,能在Windows操作系统中运行,并且具有可移植性的局域网内文件传输工具势在必行。1.2选题意义随着网络通信技术的发展与用户需求日益多样化,现代局域网络正处在变革与发展之中,本课题的主要目的之一是为了更清晰地培养学生掌握科学研究方法的能力和使学生迅速体会文件
10、传输系统的研发过程。基于局域网的文件传输系统能够让家庭网络以及各个企业等局域网对内部资料有一个快捷,准确,安全的共享。特别是对如今较大系统研发的模块分工合作得到了绝对保密性,从而使各项工作有计划、更科学的进行及顺利完成,使企业的办事效率得到显著提高。文件传输系统主要功能是自动获取局域网内用户的主机名,IP地址以及工作组名字,最终以C/S模式通过TCP/IP协议实现点到点文件传输功能。本系统既锻炼了我们的实际动手能力,使我们将大学四年所学的理论知识与实际开发相结合,又引导我们进行了一次模拟实际产品的开发,对于我们以后工作能力的培养具有重要的意义。1.3 前人的工作成果目前,国内外企业对局域网的文
11、件传输系实践上都还不够完善。文件传输系统由于比较复杂,可变因素较多,安全性低,因此发展还不成熟。但是随着科学技术的发展,各为中心的资源共享系统也即将进入高速发展期。在国内,随着企业资源管理的规范化和规模的不断扩大,企业的计算机资源管理将不仅仅停留在依靠硬件或者Internet网络获取,而且将会向着安全的内部网络化资源管理方式迈进。在此之前,人们已经在网络通信这个问题上做了许多的工作,开发了大量的文档、程序和应用软件,如Richard Stevens的Unix Network Programming介绍了在UNIX操作系统下通过Socket实现网络通信的基本原理及实现方式,Microsoft的W
12、indows Sockets API提供了一种快速编程实现Socket网络通信的机制。前人的这些工作无疑为我们提供了宝贵的经验和快速的开发方法以及现成的开发实例。然而,前人已有的工作成果已经无法完全满足我们的需求,即提供一种基于Socket的,易于使用具有高度可定制性的,面向中小企业内部通信需求的局域网通信软件。1.4 本文的主要工作论文主要针对公司或其他小范围内部局域网落设计出一种方便使用的、高性能的、并满足其基本通信需求的局域网文件传输系统(包含文件传输和聊天部分)。客户端与服务器端可以在多种硬件平台上运行,具有较好好的兼容性能。目前我们将通过在TCP/IP协议之上建立一个功能简单的文件传
13、输系统(包含文件传输和聊天部分), 日后程序功能将可以继续扩展, 逐步发展成一个功能比较完整的大型文件传输系统,例如加上文件续传功能,客户端连接发展成多对多连接,服务器增加为客户深一步服务(如发布一些消息)的功能等。2开发环境和相关技术简介2.1 MyEclipse及MyEclipse for springMyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了
14、完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。在结构上,MyEclipse的特征可以被分为7类:1. J2EE模型2. WEB开发工具3. EJB开发工具4. 应用程序服务器的连接器5. J2EE项目部署服务6. 数据库服务7. MyEclipse整合帮助对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse
15、的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。而myeclipse for spring是在myeclipse的基础上,加强了对spring的支持。MyEclipse for Spring 是MyEclipse家族的成员之一,其最大的特点就是提 供了更强悍的针对Spring框架的支持。其实在MyEclipse 中已经提供了针对Spring框架的一些支持,集成了Spring IDE,但是这些对于那些针对Spring开发的开发者来说或许还不足够,他们需要的是更强大,更有针对性的开发工具。由于Spring的广泛使用以及 Spring开发者的呼声高涨,MyEclip
16、se for Spring 随之出现。MyEclipse for Spring 提供对Spring MVC的强大支持功能,针对Spring的更专业的编辑器,以及针对Spring项目的项目创建向导等功能,让Spring开发者可以更轻松的通过 MyEclipse for Spring 快速创建一个基于Spring的应用。除此之外MyEclipse for Spring 8.5也提供了MyEclipse 8.5几乎全部特性支持,这让MyEclipse for Spring 比MyEclipse几乎是有过之而无不及。整合SSH有手动的有自动的,要想彻底掌握,建议一个框架一个框架的学习,学习完三个框架自
17、然就会整合了。2.2tcpip协议简介TCP/IP(传输控制协议/网际协议)是网络中使用的基本通信协议。虽然从名字上看TCP/IP包括两种协议,即传输控制协议(TCP)和网际协议(IP),但是TCP/IP实际上是一组协议4。它是异构网络互连的通信协议,通过它可以实现各种异构网络或异种机之间的互联通信。 TCP/IP已成为当今计算机网络最成熟、应用最广的互联协议。Internet采用的就是TCP/IP协议,网络上各种各样的计算机上只要安装了TCP/IP协议,它们之间就能相互通信。运行TCP/IP协议的网络是一种采用包(分组)交换网络。基于TCP/IP的参考模型将协议分成四个层次,它们分别是:网络
18、访问层、网际互连层、传输层(主机到主机)、和应用层。应用层对应于OSI参考模型的高层,为用户提供所需要的各种服务,例如:FTP、Telnet、DNS、SMTP等。传输层对应于OSI参考模型的传输层,为应用层实体提供端到端的通信功能。该层定义了两个主要的协议:传输控制协议(TCP)和用户数据报协议(UDP)。 TCP协议提供的是一种可靠的、面向连接的数据传输服务;而UDP协议供的是不可靠的、无连接的数据传输服务。网际互联层主要解决主机到主机的通信问题。该层有四个主要协议:网际协议(IP)、地址解析协议(ARP)、互联网组管理协议(IGMP)和互联网控制报文协议(ICMP)。 IP协议是网际互联层
19、最重要的协议,它提供的是一个不可靠、无连接的数据报传递服务。网络访问层与OSI参考模型中的物理层和数据链路层相对应。事实上,TCP/IP本身并未定义该层的协议,而由参与互连的各网络使用自己的物理层和数据链路层协议,然后与TCP/IP的网络访问层进行连接1。2.3基于Socket的java网络编程技术介绍2.3.1什么是socket网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket通常用来实现客户方和服务方的连接。Socket是TCP/IP协议的一个十分流行的编程界面,一个Socket由一个IP地址和一个端口号唯一确定。但是,Socket所
20、支持的协议种类也不光TCP/IP一种,因此两者之间是没有必然联系的。在Java环境下,Socket编程主要是指基于TCP/IP协议的网络编程2。2.3.2socket的运行机制图一般而言,socket大部分应用于服务器与客户端的连接与通信,本系统虽然有服务器,但并不实际参与用户间的交流和文件传输,只起到辅助作用,所以在文件传输时客户端与客户端之间其实是互为服务器的,图2- 1是从服务器与客户端之间的关系来描述socket通信机制。图2- 2socket通讯机制2.3.3如何进行socket编程java在包中提供了两个类Socket和ServerSocket,分别用来表示双向连接的客户端和服务端
21、。这是两个封装得非常好的类。 首先是socket类,其表示TCP连接的客户方,代表了通信的一方,常用的构造方法有:public Socket(InerAddress address,int port) throw IOException3public Socket(String host,int port) throws UnknownHostException,IOException从上述定义克制,在引用Socket构造方法是,需要指定两个参数,即“服务器”程序所在的IP地址和其监听的端口号。创建对象是若发生I/O错误,则构造方法需抛出IOException异常。上述近视通信的一方即客户端,
22、若要真正完成通信,还需要相应的、能更客户的请求作出响应的服务器程序.SerVerSocket类是加吧网络API中提供的服务器功能的类,常用构造方法为:public ServerSocket(int port) throws IOException3该构造方法是常见一个ServerSocket对象,并绑定到所指定的端口上。有了该对象,就可以完成旗舰厅端口和等待连接的功能。3 设计方案介绍3.1系统需求分析现行业务系统描述:目前各种文件资源交流的主要方式可以分为三种:(1)通过局域网内主机之间以文件共享后再经过复制,粘贴方式实现。(2)依靠可移动磁盘的两次信息转移实现。(3)通过Internet邮
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 socket 文件传输 系统
链接地址:https://www.31ppt.com/p-4862421.html